Once obstacles and goals have been mapped into configuration space, Harmonic potentials (computed over the configuration space) are used to compute obstacle-avoiding paths. Although there are many ways to compute harmonic potentials, you can imagine a resistive grid laid out over the configuration space. In the resistive grid, obstacle nodes are fixed at 1 volt, while goal nodes are fixed at 0. The remaining nodes drift to voltages which are the means of neighboring nodes' voltages (the Mean Value Property). These grid voltages comprise a discrete sampling of a harmonic potential.
One advantage of using a harmonic potential for path planning is that the potential is programmable. Obstacles and goals can be laid down in the robot's configuration space without incurring local minima. This follows directly from the Mean Value Property. Harmonic potentials (when normalized to a range of [0,1]) can also be interpreted as hitting probabilities for the corresponding Markov chain (Connolly 1997) .
The left half of this applet shows the robot in cartesian space. Obstacles are red, and goals are yellow. The right half of the applet shows the configuration space of the robot. In configuration space, the robot is mapped to a point. The X axis is the first joint angle, while the Y axis is the second joint angle. Configuration space obstacles are shown in blue.
Right mouse lays down obstacles. Left mouse causes a goal to be selected, and once the potential is computed, the arm is moved to the goal along an obstacle-avoiding path. While the potential is being computed, a red progress bar will be displayed.