170 likes | 198 Views
Simulation Of Traffic Jams. Technical Advisor - Mr. Roni Stern Academic Advisor - Dr. Meir Kelah Members: Shimrit Yacobi Yuval Binenboim Moran Lev Lehman Sharon Shabtai. Contents. Background Our Goal Use Case + Sequence Diagram Example Main Events User Interface Overview
E N D
Simulation Of Traffic Jams • Technical Advisor - Mr. Roni Stern • Academic Advisor - Dr. Meir Kelah • Members: • Shimrit Yacobi • Yuval Binenboim • Moran Lev Lehman • Sharon Shabtai
Contents • Background • Our Goal • Use Case + Sequence Diagram Example • Main Events • User Interface Overview • System Architecture • Class Diagram • Testing
Background • The new age of technology is upon us and it is also affecting our vehicles. • The next generation of cars will be controlled by AI computers inside our cars. • These computers will run different AI algorithms while driving our cars. • Our focus will be to help develop AI algorithms that will be able to drive in traffic jams.
Our Goal • The main goal of our project is to build a simulator that will enable testing of different AI algorithms. • These AI agents should control a car and drive it without making any car accidents in a traffic jam. • This will be done by running different experiments on our simulator and testing the effectiveness of each AI algorithm.
Use Case Example Use Case - Starting an experiment Name: Starting an experiment Primary Actor:Experiment manager Pre-Condition: An experiment exists at the server after it was created by the experiment manager. Post-Condition: The experiment begins. All the users are updated and can start driving their cars. Description: The experiment manager wants to start running the experiment he has just created. Trigger: The experiment manager presses the "start" button. Flow of events: The experiment manager presses the "start" button. A proper message will be sent to the server from the experiment manager's computer. A proper message will be sent from the server to all users' computers telling them that the experiment has started. All the users get the control of their cars and can now start driving in the experiment. The bird's eye view in the experiment manager station is initiated. The server starts recording all the relevant data about the current experiment. Alternative flows: One of the messages between the server and the clients didn't reach its destination, because of a communication problem. The message will be sent again. The connection between the server and the client is lost. A proper message will appear on the screen.
Sequence Diagram Example Sequence Diagram- Starting an experiment
The main events • Upon receiving start signal, the program should write a message to the system logger, the program would initialize the data related to the experience. • Upon receiving a shutdown signal, the program should write a message to the system logger, the program would finish analyzing the system data, and will update them to the Experience manager. • User clicking on "left" and "right" navigation buttons via keyboard should cause car movements on the map correspondingly to the direction of the navigation button pressed. • User clicking on the "up" navigation button via keyboard will accelerate the car speed. As long the user will press the "up" button the speed will accelerate. • User clicking on the "down" navigation button via keyboard will decelerate the car speed. As long the user will press the "up" button the speed will accelerate.
User interface –Overview : Experiment manager’s station -setup Experiment Setup Select Participants: Number of Junctions 5 User1 User2 User3 .. AI1 AI2 .. Time of experiment 10 minutes Apply Cancel
User interface –Overview : Experiment manager’s station – During the experiment Experiment management Stop and Analyze
User interface –Overview : Clients View – During the experiment Camera angles Car controls
System Architecture Experiment manager Agent Agent Internet Experiment manager -This module enables an admin user to create an experiment. It shows a bird's-eye view of the cars, and the experiment map, during the experiment. Agent Agent Agent Client - This module enables a real user or an AI Agent, to drive the car in the experiment while showing a first person view of the car. Server - This module enables the experiment manager to create and perform an experiment. It Connects between all the clients and controls all the data concerning the current experiment.
Testing Testing the functionality: An experiment will be run in a computer lab with several computers connected by a LAN network. All the users will connect to the experiment and the experiment manager will define several AI Agents. After the experiment is over, the experiment manager will view the results.
Testing (cont.) Testing of nonfunctional requirements (some examples) : • Capacity: We will run an experiment with 30 users of which 15 are AI Agents and check that the system doesn’t crash. • Speed & Throughput: We will run an experiment and print the time of the action that 1st user performs, we will also print the time in which every user receives data about the 1st users movement and make sure that it is inside the required time limit.
Task List • Single client, two computers -> 05/04/11 • A single Human client • Two human clients playing together Milestone: 15/4/11 • Build a single sample map • Build default AI client • Build custom startup menu Milestone: 15/5/11 • finish 1st working prototype 29/05/11
Questions? Good Luck!!