/space-odyssey

🚀 Genetic algorithm simulation which optimizes ship's movement to navigate through environment. Visualized in Ruby2D.

Primary LanguageRubyMIT LicenseMIT

📗 Table of Contents

🚀 Space Odyssey

This project is a simple implementation of genetic algorithm, simulated using Ruby2D graphic library.

Every ship has sensors to detect the surrounding and a randomized neural network. Network controls the ship's movement based on the sensor's reading. Each generation is generated from best performers of the previous generation.

demo_simulation

(back to top)

🎯 Features

  • Collision detection
  • Ray casting for sensors
  • Neural network layers
  • Network visualizer
  • Generation system

(back to top)

💻 Getting Started

To get a local copy up and running, follow these steps.

Prerequisites

In order to run this project you need Ruby installed on your machine.

Setup

Clone this repository to your desired folder:

  cd my-project
  git clone git@github.com:IndieCoderMM/space-odyssey.git .

Installation

Install this project with:

  bundle install

Usage

To run the simulation, execute the following command:

  ruby main.rb

(back to top)

👨‍🚀 Author

(back to top)

🔭 Future Features

  • Improve algorithm
  • Add shooting mechanic
  • Optimize code

(back to top)

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

(back to top)

💖 Show your support

If you like this project, please consider giving it a ⭐.

(back to top)

💎 Resources

(back to top)

📜 License

This project is MIT licensed.

(back to top)