Skip to content

corbinmgraham/Senior-Design

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bots-R-Us

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.

Running Framework

Current Framework Version: 1.0

More about Bots-R-Us

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

Framework

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.

Modules

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

API

All API objects implement the StandardAPI interface.

.
`-- Standard API
    |-- Main API
    |-- Memory API
    |-- Data API
    `-- Prediction API

Requirements

  • 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

Usage

See BotsRUs/README.md for more information on how to run the program.

Project Status

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.

Authors and acknowledgment

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

License

TODO

About

COM S 402: Senior Design Project @ ISU

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published