PRE2016 1 Groep2: Difference between revisions
Line 130: | Line 130: | ||
From ''Main.java'', other source files will be uploaded later. | From ''Main.java'', other source files will be uploaded later. | ||
<pre>package use_trafficintersection.algorithm; | |||
[[File:frontend.png|thumb|400px|Current frontend view]] | [[File:frontend.png|thumb|400px|Current frontend view]] | ||
import java.awt.Color; | import java.awt.Color; | ||
import use_trafficintersection.*; | import use_trafficintersection.*; |
Revision as of 14:40, 17 September 2016
Updating the Current Intersection System to be Compatible with Autonomous Vehicles.
Group members
- Lisanne van Wincoop (0849855)
- Jeroen van Dongen (0889788)
- Sjoerd Westendorp (0864518)
- Rodger van der Heijden (0851985)
- Johan Hendriks (0824890)
Introduction
updated
On day 1 our idea for a project was to build a small robot that could teach itself to walk by using self learning AI. This idea was quickly abandoned when it was brought to our attention that these already exist. We were also unable to combine lots of USE aspects with the idea.
The next idea was investigate algorithms of intersections with only autonomous vehicles and to build a simulation of it. We could compare different algorithms and decide in which was best in certain situations. The problem was that it didn't contribute to real world scenarios because lots of algorithms used unrealistic assumptions, including: all traffic must be autonomous and there is no packet-loss in communication between car and intersection,
After receiving feedback on our second idea, we had a long discussion with Mr. Borghuis. To address all the points in the criticism received: unrealistic assumptions, no contribution, little USE, why 100% autonomous cars. We came up with an idea to update current intersection systems to encorporate autonomous vehicles. The project idea allows a realistic intermediate solution in the process only allowing autonomous cars in traffic.
Focus
updated
Our main focus area concerns: Automated traffic regulation (ATR).
Narrow that down is our specific focus: Updating the Current Intersection System to be Compatible with Autonomous Vehicles (Vehicle Intersection Control).
Restrictions on the focus area:
- Crossing has 4 directions.
- Traffic is randomly generated, the ratio between autonomous and normal cars will be changeable.
A multitude of traffic accidents happen at intersectionscitation needed. These are also the bottlenecks in terms of efficiency since human drivers have varying reaction times. Drivers can also get stressed behind the wheel and lose valuable time while commuting. Contemporary intersection could make traffic more efficient by utilizing data from sensors of autonomous cars and controlling autonomous cars passing the intersection. By making the intersections smarter, user comfort can be greatly increased. Also society will benefit from more efficient driving past intersections, since emissions can be greatly reduced, which benefits the environment. Enterprises will also be positively influenced, since people will be able to get to work quicker instead of being stuck at an intersection.
Objectives
updated
Main objective:
- Optimizing traffic flow at intersections by making them compatible with autonomous vehicles.
Objectives:
- Using sensor data from autonomous cars to make traffic light algorithms more aware of current traffic
- Choose a suitable communication protocol between autonomous cars and the intersection.
- Find existing efficient algorithms for autonomous cars at intersection in a literary review.
- Combine said algorithm with current traffic light algorithms to optimize traffic flow of both normal and autonomous cars.
- Make sure the traffic flow is optimal, which results in less waiting time and less emission.
- Create a transition solution that can combine the use of autonomous cars with human drivers by using the current intersection system.
- Keep in mind the perception of safety and the actual safety of passengers inside the autonomous cars.
- Decrease the number of traffic accidents involving cars on crossings.
Approach
updated
The approach that is chosen is research and simulation oriented. Most information on existing solutions must come from literature and ongoing research. By identifying the state of the art, we will try to combine traffic light algorithms with algorithms that only work with 100% autonomous cars at the intersection. When such combination has been made, a simulation will be created and tested, after which an evaluation will follow.
Literature review
Intersection algorithms now
Alles 100% normaal verkeer Kruispunten nu
Sensor and communicationsystems of autonomous cars
Sensoren en communicatiemogelijkheden van autonome auto's van nu
Existing communication systems in traffic
Communcatie systemen (bussen/ambulances) nu met kruispunten
Simulation
From Main.java, other source files will be uploaded later.
package use_trafficintersection.algorithm; [[File:frontend.png|thumb|400px|Current frontend view]] import java.awt.Color; import use_trafficintersection.*; /* From here the algorithm and the Renderer interface The renderer controls the program and calls three functions of Main - The constructor, allowing the algorithm the setitself up. - Loop, where the algorithm does its job. - Draw, where the renderer gets told where the cars are and what else to draw. BTW: The renderer loves uneven numbers. Almost everything gets displayed better if their size is uneven. */ public class Main { // Renderer public static Renderer renderer; // Debug value that get displayed by the renderer public int debugInt = Renderer.DEBUG_INT_NOSHOW; public String debug = ""; // ------------------------------------ public Main(Renderer r){ // Place a reference to renderer into main class. // We are going to need this to draw things on screen. renderer = r; /* Setup algorithm function Do not use renderer or anything graphical inside this function */ debug = "WORLD AND CAR RENDERING TEST"; debugInt = 0; } public void loop(){ /* Have the algorithm calculate and simulate the next step */ debugInt++; if(debugInt > Renderer.WORLD_SIZE/2 + 50) debugInt = - Renderer.WORLD_SIZE/2 - 50; } public void draw(){ /* Draw the vehicles - Drawing the world already has been done - Drawing the top bar will be done after this */ renderer.drawCar(-Renderer.LANE_OFFSET,0+debugInt,Renderer.CAR_MAX_WIDTH,30,Color.RED,0); renderer.drawCar(Renderer.LANE_OFFSET,0+debugInt,Renderer.CAR_MAX_WIDTH,30,Color.BLUE,0); renderer.drawCar(5*Renderer.LANE_OFFSET,0,Renderer.CAR_MAX_WIDTH,30,Color.GREEN,debugInt/27.0f); renderer.drawCar(10*Renderer.LANE_OFFSET,0,Renderer.CAR_MAX_WIDTH,30,Color.WHITE,debugInt/9.0f); } }
Sources and References
Sources
- A Multiagent Approach to Autonomous Intersection Management.[1]
- Decoupled Cooperative Trajectory Optimization for Connected Highly Automated Vehicles at Urban Intersections.[2]
- A review on agent-based technology for traffic and transportation.[3]
- Microsimulation analysis of automated vehicles on multiple merge junction highways[4]
- A Review of the Applications of Agent Technology in Traffic and Transportation Systems[5]
References
- ↑ Journal of Artificial Intelligence Research 31 (2008) 591-656. Submitted 11/07; published 3/08. A Multiagent Approach to. Autonomous Intersection Management.
- ↑ Krajewski, R., Themann, P., & Eckstein, L. (2016). Decoupled Cooperative Trajectory Optimization for Connected Highly Automated Vehicles at Urban Intersections. IEEE Intelligent Vehicles Symposium, (IV).
- ↑ Bazzan, A. L. ., & Klügl, F. (2013). A review on agent-based technology for traffic and transportation. The Knowledge Engineering Review, 29:3(May 2013), 375–403. http://doi.org/10.1017/S0269888913000118
- ↑ M. Antoniotti, A. Deshpande and A. Girault, "Microsimulation analysis of automated vehicles on multiple merge junction highways," Systems, Man, and Cybernetics, 1997. Computational Cybernetics and Simulation., 1997 IEEE International Conference on, Orlando, FL, 1997, pp. 839-844 vol.1.
- ↑ B. Chen and H. H. Cheng, "A Review of the Applications of Agent Technology in Traffic and Transportation Systems," in IEEE Transactions on Intelligent Transportation Systems, vol. 11, no. 2, pp. 485-497, June 2010. doi: 10.1109/TITS.2010.2048313
Collaboration
Milestones
- Literature review
- Kruispunten nu
- Sensoren en communicatiemogelijkheden van autonome auto's van nu
- Communcatie systemen (bussen/ambulances) nu met kruispunten
- Koppeling tussen kruispunt en autonome auto
- Algorithme / simulatie
- Algorithme (backend)
- Visualisatie (frontend)
- Test
- USE aspecten (doorlopend) Doen we dit in een enkel hoofdstukje of komt het terug in het gehele verslag?
- Evaluation of Simulation
- Wiki
- Presentatie
- Final simulation
Planning
Week 2
- Give presentation
- Dividing tasks
- Start frontend simulation
- Start literary review
Week 3
- Give presentation
- Literary review done
- Start creating algorithm
Week 4
- Think about link between autonomous cars and intersection
- Start backend simulation
Week 5
- End creating algorithm
Week 6
- Finalize simulation
Week 7
- Evaluate simulation results
Task division
- Sjoerd
- Mainly frontend and backend of simulation in Java Swift.
- Researching: sensors and communicationsystems of autonomous cars.
- Johan
- Frontend and mainly backend of simulation in Java Swift.
- Researching: Existing communication systems in traffic.
- Jeroen
- Managing wiki.
- Evaluation of Simulation.
- Rodger
- Giving presentation.
- Researching: Intersection algorithms now.
- Lisanne
- Giving presentation.
- USE aspects.