Bots-R-Us is a a modular framework designed for bot/anomoly detection. It was implemented using Super Mario Bros. is capable to predicting the likelihood a player is a bot or a human.
BotsRUs is a modular framework designed for bot/anomaly detection. The modules have default interfaces that we have made example implementations for. To make your own modules there are several components that need to be developed:
- Machine learning models for bot detection
- Memory processing module to read in data
- Data processing module to prepare data for a model
- Prediction module that takes data in order to output a prediction
- API to receive any necessary information from the other modules
- Example implementation assumes predictions are probabilities
Each module runs as its own process to keep up with the running process, or game in our implementation, to output predictions to the user quickly. We use multiprocessing to accomplish this. A config file is provided in order to easily modify the modules being used as well as certain settings each module may require.
All Module objects impleemnt the Module interface. All module plugins must implement their respective module's interface.
.
`-- Module
|-- Memory Module
| `-- Default Memory Module
|-- Data Module
| `-- Default Data Module
`-- Prediction Module
|-- RFC Predictior
| `-- RFC Data Preparation Submodule
`-- Autoencoder LSTM Predictor
`-- Autoencoder Data Preparation Submodule
All API objects implement the StandardAPI interface.
.
`-- Standard API
|-- Main API
|-- Memory API
|-- Data API
`-- Prediction API
- Operating System: Linux (recommended Kali)
- Games (one or more):
- Python 3.11.6
- Python Libraries:
- For easily installation:
pip3 install -r requirements.txt - numpy 1.24.2
- onnxruntime 1.17.3
- pandas 1.5.3
- psutil 5.9.5
- scikit_learn 1.4.1.post1
- torch 2.3.0
- For easily installation:
See BotsRUs/README.md for more information on how to run the program.
This project was developed for COM S 402C, Senior Design for Iowa State University in Spring 2024. Development began Jan 4, 2024, and concluded May 4, 2024. The project is no longer in development.
| Adam Riffel ajriffel@iastate.edu | Carlos Acuna acuna@iastate.edu | Corbin Graham cgraham1@iastate.edu | Jose Medina Mani jomedman@iastate.edu | Nhan Tran nhtran@iastate.edu |
|---|
TODO