This repository contains an implementation of the LightBot Artificial Intelligence Adaptive Traffic Control Solution. LightBot is a software engineering project proposed by Fifth Dimension Technologies (5DT) for the COS 301 final year module of the Computer Science curriculum at the University of Pretoria. All components and subsystems were created or compiled by the Gradient Team. The system is available at: http://lightbot.co.za
Purpose: LightBot's goal is to explore the possibility to minimize the delays that are caused by traffic congestions at various intersections. The LightBot system will attempt to prove a concept that the addition of a machine learning algorithm may develop a good policy for which to control the traffic lights at a given intersection and may benefit society through time-efficiency, monetarily and perhaps even reduce vehicular emissions and costs.
- Initial development setup
- Research phase
- Mock development and planning
- Development of components and sub-systems
- Unit Testing of components and sub-systems
- Integration of components and sub-systems
- Integration testing of Lightbot
- Deployment environment and Continuous Integration setup
- Deployment of Lightbot
- Evaluation and deployment testing
- Final documentation
Mohammed Gangat :
- GitHub Account
- Linkedin Account
- Email : u17058849@tuks.co.za
-
Contributions
- Demo 1: Set up the socket server, set up MongoDB database, set up Git repo, worked on the machine learning server, worked on the taffic flow simulation, worked on the web application (system interface) and worked on the demo video & recorded contribution video.
- Demo 2: Data modeling research, implemented server structure, did web server development, setup deployment, git management, worked on the updated SRS documentation and user manual and worked on the demo video & recorded contribution video.
- Demo 3: Worked on revamp on Web Application, added additional functionality to Web Server. Worked with other team members on all Documentation.
- Demo 4: Worked on Final Design and Implementation of Web Application, Integration of web application and api server, creation and integration of sub processes and services for running ai simulation, load handling, etc. Data handling and manipulation for data generated by ai controller. Web and server testing, Integration and Deployment of sub systems
Thiveshan Pillay :
- GitHub Account
- Linkedin Account
- Email : u15007911@tuks.co.za
-
Contributions
- Demo 1: Set up traffic flow simulation & created algorithm for simulation, worked on the SRS document and recorded contribution video.
- Demo 2: Installation of SUMO and SUMO-WEB3D on amazon virtual machine. Configuring virtual machine to properly interface with browser. Configuring and loading scenarios on virtual machine. Modeling a intersection using SUMO after Jan Shoba and South Street. Creating various scenarios based on different traffic flows at intersection. Worked on the updated SRS documentation and user manual & recorded contribution video.
- Demo 3: Worked on revamp on Web Application. Worked with other team members on all Documentation.
- Demo 4: Created vehicle generator program. Modelled multi-intersection road network. Worked on the development of the final web application. Web app and CI testing. Integration and Deployment of sub systems
Rahul Kapoor :
- GitHub Account
- Linkedin Account
- Email : u16034130@tuks.co.za
-
Contributions
- Demo 1: Set up machine learning server, worked on the SRS document and recorded contribution video.
- Demo 2: Assisted in development of machine learning server.
- Demo 3: Worked on Traffic Simulation. Partially implemented Reinforcement Learning component. Worked with other team members on all Documentation.
- Demo 4: Created vehicle generator program. Implemented Reinforcement Learning Agent for adaptive traffic light control.
Jared Gratz :
- GitHub Account
- Linkedin Account
- Email : u16054972@tuks.co.za
-
Contributions
- Demo 1: Set up machine learning server, worked on the SRS document and recorded contribution video.
- Demo 2: Updated the mock functions for serverRL.py in the reinforcement algorithm, mock reinforcement algorithm for mockRL.py, unit testing for serverRL.py, worked on the updated SRS documentation and user manual & recorded contribution video.
- Demo 3: Worked on Traffic Simulation. Partially implemented Reinforcement Learning component. Worked with other team members on all Documentation.
- Demo 4: Created vehicle generator program. Implemented Reinforcement Learning Agent for traffic light control.
For this repository each component/sub-system has a designated folder. All documentation is kept within the lightbot_doc folder and imagery and other assets within the lightbot_misc folder.
- Discord - Team communication and sharing method
- Slack - Client - Team communication
- ClickUp - Project Management
- Google Meet - Sprint meetings
- GitKraken / GitHub Desktop - Git control
*Please note that PDF versions of these documents are also available in the "lightbot_doc" folder.