watonomous.github.io

  1. Software Division
  2. Software Division Home
  3. Path Planning Group

[ Software Division : W20 Path Planning EOT Retrospective ]

Created by [ Ben Zhang], last modified on May 10, 2020

What happened during W20? 

Plans for S20

Summary:

Tasks:

+—–+———-+————————-+————————–+ | Tas | Importan | Description/Possible | Plan for tackling this | | k | ce/Is | Blockers | problem | | For | it | | | | Nex | critical | | | | t | for | | | | Ter | competit | | | | m | ion | | | +=====+==========+=========================+==========================+ | Dev | Critical | People may get | (Proposal) Dockerized | | elo | - | overwhelmed by an | dev environment - | | pin | required | explosion of | everyone will have | | g | for dev | technologies | access to their own copy | | wit | | (developing on a remote | of workspace, Postgres, | | h | | server, understanding | Carla, and VNC. We | | Car | | how to set up the dev | should be able to handle | | la | | environment without | all users on a single | | (on | | affecting other users | machine and GPU (e.g. | | boa | | on the same machine) | 12-core CPU + one 1080Ti | | rdi | | | on WATO3). The | | ng) | | x11vnc only seems to | environment is | | | | work for a single user | WIP{.exte | | | | may result in conflicts | rnal-link} | | | | | but usable without too | | | | | much setup. Ray has | | | | | bravely volunteered to | | | | | be the guinea pig for | | | | | this experiment in the | | | | | few days prior to the | | | | | S20 kickoff. | | | | | | | | | | UPDATE May 10 2020 | | | | | (after the kickoff | | | | | meeting): it turns out | | | | | that the 12-core CPU on | | | | | WATO3 is the bottleneck, | | | | | not its 1080Ti. We | | | | | maxed-out the CPU with | | | | | 4-5 concurrent users | | | | | running Carla and the PP | | | | | stack | | | | | (planner_main.launch). | | | | | Might need extra | | | | | resources if development | | | | | is active enough. | +—–+———-+————————-+————————–+ | HD | Critical | Robustly (notify if no | Continue Charles's work | | map | - Needed | path exists) find a | on the HD map service | | tra | for | path between 2 points | and global/behavioural | | ver | Competit | on the map. Plan | planner. | | sal | ion | reasonable lane changes | | | + | | (change lanes well | | | beh | | before turning). | | | avi | | | | | our | | | | | al | | | | | pla | | | | | nne | | | | | r | | | | +—–+———-+————————-+————————–+ | Mul | Critical | During the competition | Continue John's work on | | tip | - Needed | we will be required to | the SD mapper. | | le | for | visit multiple | | | des | Competit | destinations in the | | | tin | ion | most efficient manner. | | | ati | | | | | ons | | | | | in | | | | | SD | | | | | map | | | | | per | | | | +—–+———-+————————-+————————–+ | Imp | Critical | Frenet planner handles | There are many choices: | | lem | - Needed | obstacle avoidance but | | | ent | for | conflicts with MPC. | - Integrate Frenet | | a | Competit | Find a way to control | with MPC (with | | con | ion | the vehicle while | Mohamed's new MPC | | tro | | avoiding obstacles. | architecture?) | | lle | | | - Replace MPC with | | r | | | simpler PID | | tha | | | controllers that | | t | | | make use of | | sup | | | information from | | por | | | Frenet's lateral | | ts | | | and longitudinal | | obs | | | planning | | tac | | | - Something else | | le | | | | | avo | | | | | ida | | | | | nce | | | | +—–+———-+————————-+————————–+ | Spe | Critical | Stopping at traffic | Try to fix these with | | cia | - Needed | lights and pedestrians. | the help of the | | l | for | We have these | simulator. | | Man | Competit | implemented but they | | | euv | ion | don't seem to behave | | | ers | | as expected during test | | |   | | track days. | | +—–+———-+————————-+————————–+ | Lan | Critical | Frenet acts reactively | Integrate this mechanism | | e | - Needed | when obstacles appear | into behaviour | | cha | for | in the path of the car | planner/global planner | | nge | Competit | and does not execute | (e.g. reroute when | | obs | ion | lane changes (there's | there's an obstacle in | | tac | | no concept of lanes in | the lane). | | le | | Frenet). Write a | | | avo | | mechanism that avoids | | | ida | | obstacles (e.g. parked | | | nce | | car) by changing lanes. | | +—–+———-+————————-+————————–+ | Bli | Critical | Turn on blinkers when | Check what the current | | nke | - Needed | changing lanes | state of this is and | | rs | for | | integrate with the new | | | Competit | | behavioural planner | | | ion | | changes. | +—–+———-+————————-+————————–+ | Dyn | Critical | We currently handle | Simulate dynamic | | ami | - Needed | static object avoidance | obstacles in Carla. | | c | for | in Frenet planner. | | | obs | Competit | Modify the code so that | | | tac | ion | we can handle dynamic | | | le | | obstacles as well. | | | avo | | | | | ida | | | | | nce | | | | +—–+———-+————————-+————————–+ | Set | Non-esse | Write consistent | E.g. when developing | | up | ntial, | scenarios that test | "stop before | | sce | but can | changes. | pedestrians", write a | | nar | be done | | script that spawns the | | ios | alongsid | | car at a point in map M | | tha | e | | and a pedestrian a bit | | t | developm | | in front of the car. | | ver | ent | | Using the global planner | | ify | | | set the destination of | | fea | | | the car past the | | tur | | | pedestrian and observe | | es | | | the behaviour of the | | on | | | car. | | Car | | | | | la | | | This not only speeds up | | | | | development, but can be | | | | | easily modified to run | | | | | integration tests on CI. | +—–+———-+————————-+————————–+ | Slo | Non-esse | Currently we don't | Come up with an | | win | ntial, | have a mechanism to | algorithm that handles | | g | but is | slows down before | this (perhaps based on | | dow | nice to | making turns/entering | the curvature of the | | n | have in | curved sections. This | road and distance to the | | bef | any car | would be a | beginning of the curved | | ore | | nice-to-have. | section). | | tur | | | | | nin | | | | | g | | | | +—–+———-+————————-+————————–+ | Mat | Non-esse | Simulation | A good starting point | | lab | ntial, | Challenge | simulator. | | tro | the | | | | ls | simulati | | | | alg | on | | | | ori | challeng | | | | thm | e | | | | s | | | | +—–+———-+————————-+————————–+

Effects of COVID in S20

We are assuming that we won't get to access to Bolty in S20. This incentivizes us to make heavy use of simulation, which should only make development (in path planning) more convenient because of the short dev-test cycle. We will need to keep in mind the boundaries of simulation so that we keep the vehicle interface intact.

Document generated by Confluence on Dec 10, 2021 04:01

Atlassian