DARPA Urban Challenge, a C++ based platform for testing Path Planning Algorithms: An application of Game Theory and Neural Networks
The DARPA Grand Challenge in which the Cornell Racing Team participates requires the completion of a Simulator, which purports all errors in the artificial intelligence path planning down below and back up. The simulator comes as the last layer in the top down approach followed by the Cornell Racing Team. The Strategic layer is charged of global route planning, the tactical layer of collision avoidance and maneuver planning, while the operational layer controls lane tracking and safe following. The simulator is the last layer. Through a COBRA interface the C++ or C# version of the simulator will be receiving commands from the Artificial Intelligence Strategic Layer concerning maneuvers such as Turn Left, Turn Right, Change Lane, Increase Speed, and Stop. The simulator induces from its current situation, using controls such as bounding boxes and the World class, pointing to every object in the World, a set of more detailed commands. Apart from writing a simplified version of the simulator in C++, we also concentrated my efforts onto finding a solution aside from dynamic programming for Path Planning and the Behavioral Modeling of Visible and Neighboring Vehicles on the road network. We have built an efficient and self-correcting C++ GUI Interface including some random moving vehicles as well as a smart vehicle named Autosmart. The Path Planning algorithm is written and implemented although may be missing a more significant round of testing. To do so, we are using the approach of game theory and artificial intelligence’s neural networks. We represent the world as nature, resulting in decisions independent of the drivers (types: turn left or right at the next intersection); nature being in this case the DARPA Challenge organizers. Moreover the drivers chose their behaviors (aggressive, altruist) on the road and keep updating their anticipations about the other players behavior and types, as mentioned above. The end result is to train these neural networks to react to previously categorized behaviors and situations by storing necessary information about the ‘game’. Every player runs its own network, although in our case we limited the simulation to one smart vehicle, Autosmart and 2 random vehicles; therefore by nature the algorithm the algorithm would lead to biased results. It is meant for simplicity since if not for programming the set of commands which lead to adequate behavior at intersections and on segments, such as being done for the smart vehicle; sometimes the random vehicles get into trouble, being too much off the road network. In most cases, the simulator will self-correct their path however.
|Date of creation:||25 Aug 2007|
|Contact details of provider:|| Postal: Ludwigstraße 33, D-80539 Munich, Germany|
Web page: https://mpra.ub.uni-muenchen.de
More information through EDIRC
When requesting a correction, please mention this item's handle: RePEc:pra:mprapa:4603. See general information about how to correct material in RePEc.
For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: (Joachim Winter)
If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.
If references are entirely missing, you can add them using this form.
If the full references list an item that is present in RePEc, but the system did not link to it, you can help with this form.
If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your profile, as there may be some citations waiting for confirmation.
Please note that corrections may take a couple of weeks to filter through the various RePEc services.