Eagle Eye is an innovative machine learning solution designed to streamline route planning for the US Air Force. This project leverages advanced predictive models and optimization techniques to enhance operational efficiency and decision-making.
- ๐ฎ Predictive Analysis: Utilizes SARIMA, LSTMs, and Neuralprophet models to generate accurate airfield utilization predictions.
- ๐ Optimization: Implements linear programming optimization for effective route planning.
- ๐ Clean, Minimalistic UI: Designed to allow a route planner of any background to use with as little confusion as possible.
- โ๏ธ Continuosly Integrated, Continuously Deployed: Docker container with every release lives in the Github. Security and Code analysis runs on every push to the main branch.
Follow these steps to set up the Eagle Eye environment on your machine:
- Python 3.10.8 (for backend setup)
- Node.js and npm (for frontend setup)
- Create a Conda Environment:
conda create --name eagle-eye python=3.10.8 conda activate eagle-eye
- Clone and navigate to github repository
git clone https://github.com/alavrouk/jic3119-eagleeye.git cd eagleeye
- Install Python Dependencies:
pip install -r requirements.txt
- Run the Backend Server:
python api_fastapi.py
- Open a New Shell and Set Up the Frontend:
npm install npm start
- Troubleshooting:
- In our development, the only source of error was dependencies.
- All dependencies are are listed in the requirements.txt.
- If there is an issue, we recommend you contact us, as these errors can be multitudinous and are tough to pin down.
- The front and backend should be running!
- Built full-functioning linear programming optimizer for airfield balancing.
- User ability to input their own supplies
- Time matrix for different airfields in order to make optimization factually correct.
- Fixed bug where the route planning map was zoomed into a weird place in California on startup.
- Arrow formatting is not pleasant to look at in route planning.
- Linked up 3 time-series utilization models to front end - now results are graphed through FastAPI
- Created a better map visualization using more modern tools
- Linked linear programming based route planning to a table at the bottom of the route planning page.
- Fixed SARIMA bug where the resultant distribution would just be completely random
- Models are not tuned and thus do not represent final performance (but better tuned than last time)
- neuralprophet model is trained on a different dataset and thus produces different results.
- Created three models for airfield utilization time series prediction
- Created synthetic data generator to use in airfield utilization
- Created linear programming instance for fleet route planning
- Fixed up bugs in the route planning visualization
- Models are not tuned and thus do not represent final performance
- Added business plot showing airfield ground clearance trends
- Added a file drop page for uploading new aifrield data
- Added flight route planning visualization in map component
- Modularized airfield and business data from their respective components
- Map view can be buggy rendering between frames
- Added Dropdown menu for Airfields
- Added Map component for route planning
- Created centralized dashboard for flight stats
- Refactored Artifact code to ensure variables were properly tracked across Dashboard tabs
- Hardcoded airfield data
In each sprint of the Eagle Eye project, we've captured key developments and features through demo videos. These videos provide a visual overview of our progress and the functionalities implemented in each phase.
Sprint 4: Further Machine Learning Implementation
Sprint 5: Finalization and Deployment
Click on the titles to expand and view each sprint's demo video.
Enjoy watching the journey of Eagle Eye from conception to completion!
Should the need arise, feel free to contact the developers of this project for any sort of support!
Due to the rise of spam-bots scraping github, we have obfuscated emails. [SCHOOL] = gatech.edu and [AT] = @. Thank you for your understanding!
- antonlavrouk[AT][SCHOOL]
- izapote3[AT][SCHOOL]
- azkhan[AT][SCHOOL]
- ehernandez83[AT][SCHOOL]
- dschmidt44[AT][SCHOOL]