Code Monkey home page Code Monkey logo

mdpalgorithm's Introduction

MDP Algorithm

This repository contains the algorithm(s) used to drive an autonomous ground vehicle through an unknown maze. It is part of a bigger project that involved a physical robot (Arduino Uno + Hardware), an Android tablet and a Raspberry Pi (communication server).

There are two main driving phases โ€” Exploration & Fastest Path. The exploration phase involves the robot exploring the unknown maze to detect the locations of obstacles, starting from the START zone and ending at the START zone. The fastest path phase involves the robot computing and executing the fastest path from the START zone to the GOAL zone.

Running MDPAlgorithm

In order to run this project independently (i.e. without the other components of the system, including the physical robot), the built-in simulator can be used.

Set realRun in Line 40 of Simulator.java to false:

private static final boolean realRun = false;

Run Simulator.java and load a map by clicking on the Load Map button and typing in the file name of the map (without the .txt extension) you wish to load. The current available maps are inside maps/. Once a map is loaded, use the Exploration button to start the exploration of the map and the Fastest Path button to compute and execute the fastest path from START to GOAL.

To make your own map, simply copy the contents of BlankMap.txt and encode obstacles in the map by replacing a 0 cell with a 1 cell. Note that the START and GOAL zones cannot have obstacles in them.

Demos

Exploration

Fastest Path


Disclaimer: This repo is no longer maintained and was submitted as part of the coursework for CE/CZ 3004 Multi-Disciplinary Project at NTU in AY 16/17 Semester 2.

mdpalgorithm's People

Contributors

suyashlakhotia avatar singhpriyanshu5 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.