Maze Solving

Hi,

I am trying to build a maze solving robot using the PIC18F4520 microcontroller. The robot is required to solve a maze and detect a solid object (a small wooden box) placed somewhere within the maze. It has to memorise the path it takes and then optimise it so that when released a second time it can take the shortest route to the object.  I am using a IR proximity sensor (GP2Y0A21) to detect the object and optical sensors to follow a line. I am trying to implement the left hand on the wall rule and have been successful to some extend. But I am very confused about how to memorise and optimise the path it takes. I have no previous coding experience so I am very weak at it. I am using C language and the MCC18 compiler for the coding. Can anyone please help me?

You could always Google
You could always Google “robot maze solving”.

The basics of getting the shortest path is to remember where the robot went and make a map. Usually a maze can be seen as a collection of cells. If you get to a dead end, when backtracking you delete the backtracked cells from your map so you don’t take them. You continue doing this until you get to the end.

I’m assuming that you are doing this for a school project?

And learning C is important for robotics and any career involving the programming of computers.

The wall rule won’t explore

The wall rule won’t explore all the maze and it’s inefficient, even if it’s correct.Search A* .

Search this site for maze solving.

patrickmccabe has a few posts on solving and optimizing.