120 likes | 151 Views
Join us in developing AI algorithms for simulating traffic jams using our innovative project layout and key events. Our goal is to create a user-friendly environment where individuals can connect, control cars, and analyze data in real time.
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
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 algorithms 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.
Project Layout Experiment manager Agent Agent 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. Internet Agent Agent Agent Client - This module enables a real user or an AI algorithm, 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.
Main Events • Start of experiment – This event indicates a start of a new experiment, which the experiment manager created and started. • End of experiment – This event indicates that the current experiment is terminated and analyzing of the data should commence. • Control events- The system will respond to GUI events from the user controlling the car. • View's updates – Something changed in the experiment environment. • Connection – An event of creating a connection between a client/ experiment manager to the server . • Disconnection – The end of the connection between a client/ experiment manager to the server .
Functional Requirements • Experiment environment initiation • Start running experiment • Stopping experiment • Connect • Disconnect • Controlling the car • Analyzing data • Updating the experiment environment
Non Functional Requirements • Reliability After a user performs an action, the server and all the views in the system will be updated according to that action. • Usability The system should be user friendly and easy to use, users can participate in the experiment without any advanced knowledge or instructions. • Speed & Throughput After a user performs an action it is updated in his view after at most 0.25 seconds, and after at most 0.5 seconds at 90% of all other views. • Capacity An experiment can have at most 30 users connected simultaneously, of which at most 15 of them are AI users. • Availability The user should be able to use all UI functionality at all times. • Portability The system will work on any computer running the operating system Windows XP or higher.
Use Case 1 – Controlling the car • Name: Controlling the car • Primary Actor: Regular user • Pre-Condition: • experiment is created. • the user already entered the system. • the experiment manager started the experiment. • Post-Condition: • The car starts moving according to the user operation: • The location of the car changes in the system. • The views of all the users and the exp manager, changes according to the action that occurred. • Description: The user controls the movement of the car by pressing the keyboard. • Trigger: User presses the navigation keys in the key board.
Flow of events: • Loop: • The user presses a navigation key in the keyboard. • A new location of the car is computed according to the user's command. • A message that specified the new location of the car is sent from the user's computer to the server. • The server updates the exp Manager and the rest of the users about the new location of the car. • The exp Manager's and the user's views are changed according to the movement of the car. • 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.