Q: what guarantees are made about the world? What assumptions can we make in our planner? A: You're guaranteed that a path will exist that Does not require going between two obstacles or an obstacle and the edge w/ less than a 3 cell "gate" (i.e. a path exists through the C-Space). You are also guaranteed that obstacles will be be rectangular and grid aligned (i.e. the obstacles will fully occupy some number of marked squares on the world). Beyond that, you are on your own. For example: (you'll want to switch to a fixed-width font to appreciate the true glory of this diagram) X = obstacle . = open space R = 'bot's start location G = goal
<>v^ = movements along valid path This is a valid world & solution (tho by no means the only solution): .....X.......... .R>v.X.......... ...v.X.......... ...v.X.X...XXXXX ...v...X........ XX.>>v.......... .....>>>>>>>>>G. ................ This map, on the otherhand, is illegal because there is no possible path to the goal. ......X...X..... .R....X...X..... ......X...X..... ......X......... ..........X..... ..........X..... ......X...X...G. ......X...X..... A correct wavefront planner will "spill" around objects, and can lead you to move away from the goal, not to mention handle concave objects. The key word here is "complete"-- if a path exists, wavefront will always find it.