Skip to content
/ OhmWay Public

OhmWay is a physics/electrical based maze solver compared to conventional AI methods of solving mazes; was created for the 418 hackathon, a 24-hour hackathon hosted by MU Engima

License

Notifications You must be signed in to change notification settings

MarkVI2/OhmWay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Logo

⚡ OhmWay

Previously known as MazeSolver-418-24

Find the path of least resistance through any maze using the power of electrical circuits
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Features
  5. Roadmap
  6. Contributing
  7. License
  8. Contact
  9. Acknowledgments

About The Project

OhmWay Screen Shot

OhmWay is an innovative maze-solving application that transforms maze-solving into an electrical circuit problem. By representing maze paths as resistors and applying voltage, we find the optimal path through electrical current flow - proving that sometimes the most elegant solutions come from unexpected places.

The project was inspired by AlphaPhoenix's fascinating demonstration of solving mazes using real electrical circuits. We took that concept and brought it into the digital realm.

(back to top)

Built With

  • Python
  • Flask
  • PySpice
  • OpenCV

(back to top)

Getting Started

To get OhmWay running locally, follow these steps:

Prerequisites

  • Python 3.8+
  • ngspice
  • PySpice
    pip install PySpice

Installation

  1. Clone the repository
    git clone /~https://github.com/MarkVI2/OhmWay.git
  2. Install Python packages
    pip install -r requirements.txt
  3. Install ngspice (System dependent)
    # Ubuntu/Debian
    sudo apt-get install ngspice
    # macOS
    brew install ngspice
  4. Run the application
    python app.py

(back to top)

Usage

OhmWay converts maze images into electrical circuits using PySpice and ngspice. Each open path in the maze becomes a resistor, and by analyzing voltage drops across the network, we determine the optimal path from start to finish.

For more examples, please refer to the Documentation

(back to top)

Features

  • Real-time maze to circuit conversion
  • Interactive web interface
  • Path visualization with voltage mapping
  • Support for various maze formats
  • Optimal pathfinding using electrical principles

(back to top)

Roadmap

  • Initial maze to circuit conversion
  • Basic web interface
  • Performance optimization for larger mazes
  • Enhanced visualization of current flow
  • Support for multiple path finding criteria
    • Shortest path
    • Alternative paths
  • Pipeline optimization
  • API development

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Key Areas for Contribution

  • Algorithm optimization
  • UI/UX improvements
  • Documentation
  • Circuit simulation enhancements
  • Testing and validation

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Atharv Ashish Garg - @aviator_gator - mark.atharv@gmail.com Swastick Paliwal -

Project Link: /~https://github.com/MarkVI2/OhmWay

(back to top)

Acknowledgments

(back to top)

About

OhmWay is a physics/electrical based maze solver compared to conventional AI methods of solving mazes; was created for the 418 hackathon, a 24-hour hackathon hosted by MU Engima

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published