Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Updated readme to add path planning section
  • Loading branch information
rjm11010 committed May 3, 2018
1 parent 74a3097 commit 6e3cf44
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions README.md
Expand Up @@ -45,3 +45,11 @@ What you currently see on the track is two cars, both assigned the same path, wh
We wanted to introduce some noise into the experiment. By that we mean to purposely move the cars off course of their path and see how well they respond to this disturbance. You'll find that the pure pursuit algorithm goes a good job of getting them back on track.

> Note: because we're not modeling all the kinematics and dynamics of the car, the car does not oscillate about the set point (i.e. the path). So you can think of it in the most ideal conditions without friction and other complex forces acting on the car
### Path Planning?

There is a branch called [`astar`](https://github.uconn.edu/CarSimClassProj/RaceCarSim/tree/astar) that has an implementation of the A-Star path planning. The code for this is incomplete (at least at the time of submitting the project May 2, 2018 11:59pm).

The idea for this branch is that the cars do path planning offline. They're given a map of the track, and using the A-Star algorithm they will find an optimal path through the track. Where optimal is defined in terms of time to get around the track. The decisions the A-Star algorithm makes are determined by the `g cost` , `h cost` , and `f cost`. We manipulate these costs to consider various things to make decisions on moving along the track.

To use A-Star on the track we needed to make a fine grained graph of the entire track. The track was split into layers that progressively make progress towards the finish line. Each layer has a number of nodes in it. Each node on the track had to calculate it's own `h cost` and `g cost`. The `h cost` is the distance of the node away from the finish line of the track (in number of node/edge hoops). The `g cost` could be determined by the distance of the car away from the given node. The cost functions were designed to discourage radical turns between layers.

0 comments on commit 6e3cf44

Please sign in to comment.