- Continued to work on merge function for 2 lane track
- After meeting with professor, decided to focus solely on optimizing figure-8 track for demo
- Updated timer so it would be consistent with global python time function (regardless of machine)
- Included other statistics in results file
- Average velocity through vehicles
- Average acceleration through vehicles
- Average deceleration through vehicles
- Total waiting time
- Continue testing other cases
Team status report 4/11/2020
- Fixed bugs and made minor improvements in preparation for demo
- Fixed problem with graphic simulation over counting the number of loops made by the cars
- Fixed problem where more cars were passing through the intersection than were allowed.
- Modified code to allow for cars to move with a smaller following distance in the cooperative case
- Improved interface between path planning and intelligent driver model code.
- Working on changing coop vs non-coop test method to account for program scheduling/timing variability across tests.
- Added GUI features
- Toggle button between cooperative and non-cooperative modes
- Toggle button for detection radius on each vehicle
- Labels on vehicles
- Implemented testing integration to compare throughput between approaches
- Creating input and output file functionality for writing test cases and viewing results
- Test cases are inputted through a txt, and results are outputted in a csv to use with Excel
- Integrated test feature with simulation code
- Filtered test cases to ensure there are no initial collisions between vehicles
- Simulated cases and analyzed initial results
- Creating input and output file functionality for writing test cases and viewing results
- Changed timing so it is more consistent throughout machines
- Used the universal time elapsed between function calls to determine distance traveled
- Began work on 2 Lane track
- Implemented vehicle to vehicle communication mechanism in 2 lane setup
- TODO:
- Integrate path planning code with lane changing model
Serris Status Update 4/11/20
- Added information detection radius feature
- Added mode button
- Can toggle between cooperative and non-cooperative approach
- Added labels on cars
- Fixed bugs on vehicle collision case
- Added test case to compare throughput between cooperative and non-cooperative approach
- Filtered test cases to ensure cars don’t overlap
- Started merge function for 2 lane track
- Changed timing so movement is consistent between machines
- TODO:
- Change timing of tests to be more consistent with machines
- Continue to work on implementing merge
Tito status report 4/11/2020
- Fixed bug with figure 8 environment whereby more cars than allowed passed through the intersection
- 2 Lane environment
- began working on planning for the 2 lane environment.
- Implemented vehicle to vehicle communication mechanism which also incorporates communication latency
- TODO:
- Figure out the design of lane changing model and integrate with path planning code.
- Decide on problem situations to account for e.g stopped vehicle, quickly accelerating vehicle etc.
Kylee Status Report 4/11/20
- Refine car following model for cooperative approach
- Implement input and output files to codebase for ease of testing
- Refactored the existing code to include running the inputted testbench and saving the outputs
- Created test cases and ran tests to analyze results
- Fixed some bugs in the planning and Intelligent Driver Model code
- Help to identify and fix timing with simulation graphics
- Use time elapsed between function calls to determine distance traveled by vehicles (distance = rate * time) to standardize the movement of cars
- Makes the movement independent of what other tasks the CPU is running or how fast the CPU can execute the code
Team Status Update 4/4/2020
- Integrated path planning code with Intelligent driver model.
- Decided on Non Cooperative decision making:- To allow the car closest to the intersection to pass through. Ties are broken by the car in the left lane
- Implemented Non Cooperative decision making
- Parameter tuned for Cooperative case
- Discussed metrics to display on GUI such as total number of cars looping through the intersection.
- Updated GUI with timer, total loops, vehicle ID and intersection line
- Added functionality to outer lane of 2 lane track
- TODO: still need to fix detection with 2 lanes
- TODO: Take measurements to compare the different approaches
- TODO: Add information constraints
Update: So far, we haven’t noticed a huge increase in throughput between the approaches. We will continue to fine tune our cooperative planning to get a better performance. However, we would like to experiment with a two-lane track to introduce lane changing to the demo. This is because with lane changing, vehicles can now change their speed and their path. This added component of path will be a lot more knowledge communicated in the cooperative case, which should yield a larger difference in performance.
Kylee Status Report 4/4/20
- Fine tuned real world parameters for Intelligent Driver Model
- Modified Intelligent Driver Model code to include the intersection as an “obstacle” if vehicle does not have the right of way
- Cleaned up codebase in all files
- Integrated with path planning code
- Refine graphics and planning to get the code demo-ready
- TODO: Work on lane changing model for two lane implementation
- Reason for implementing two lanes included in team status report
Serris Status Update 4/4/20
- GUI additions:
- Total loops counter: counts number of times each vehicle passes the intersection (better for visual representation)
- Timer: “s ” to pause/resume, “r” to reset
- Finish line for visual
- Added cars to outer lane of 2 lane track
- Continue to modularize code as changes to path planning algorithms are being made
- TODO:
- Show information detection radius
- Add toggle button for cooperative and non-cooperative case
- Give more information on decision making for each vehicle
Tito status update 4/4/2020
- Cooperative Case improvements
- updated cooperative decision making to allow multiple cars from one lane to pass through the intersection.
- Factors in the spacing between cars to determine if it will be beneficial to allow multiple cars passage.
- Fine-tuned parameters for decision making such as car separation, distance to intersection with which a car is considered to be approaching the intersection, etc.
- Refactored code to work better with intelligent driver model.
- Non Cooperative Case
- Added functionality for the non-cooperative case which simply gives right of way to the car closest to the intersection. If there’s a tie, the left car gets the right of way.
Team Status Update 3/28/20
- Connected graphics code to path planning code
- Redesign classes to be more modular and compatible
- Made adding vehicles on the track customizable
- User can click anywhere on the track and have a car oriented appropriately
- Added information at the bottom of the screen for future reference
- Implemented simple non-cooperative and cooperative path planning algorithm
- Discussed alternative track configurations to explore
Updated Risk Management Plan
Having completed simple graphics and path planning algorithms, our upcoming tasks will be primarily optimization, enhancing our graphics, and possibly implementing another track design. In terms of optimization, the potential risks are that the cooperative approach simply does not see a significant increase in throughput compared to the non-cooperative case. This might be explained by the simplicity of the one lane figure-8 track design. And therefore, we would need to experiment with other designs where the difference might be more noticeable, specifically a two-lane approach. In addition to another design, we were considering displaying each vehicle’s decision making data to highlight the differences between approaches. We thought this would be more informative than just the visual of the vehicles moving along the track. Because we have gotten a good head start on the figure-8 track, we should be able to determine results within the next week, giving us plenty of time to implement another design with added complexity. Furthermore, while Tito and Kylee will be experimenting with fine-tuning parameters, Serris will continue to update the graphics to provide a more informative and maybe interactive report of the system.