next up previous contents index
Next: Building a graph Up: Motion planning Previous: Motion planning

Shooting a random configuration

Move3D is dedicated to PRM-like probabilistic motion planning ([Kavraki 95, Kavraki 96, Svestka 97]). The basic function of a probabilistic motion planner is shooting a free random configuration in the configuration space of the robot. Move3D proposes several function to generate free random configurations.

The function void p3d_init_random_seed(int seed)   initializes the C random function with the integer seed. This function allows the user to shoot the same sequence of random numbers several times. The function void p3d_init_random(void)   initializes the C random function with a value depending of the clock of the computer. This function allows the user to get random sequences ``really shot at random''.

The function double p3d_random(double a, double b)   returns a random value between a and b. The function void p3d_shoot(p3d_rob *r, double *q)   shoots a configuration in the configuration space of the robot r. The function double *p3d_shoot _graph(p3d_rob *r, p3d_graph *G)   does exactly the same but returns a free configuration for the robot r (and updates the configurations counter of the graph G).

The function double *p3d_shoot_walk(p3d_rob *r, double *q, double *delta)   shoots, for the robot r with n degrees of freedom, a configuration distant from a step dq of the configuration q : n values v equal to 1, 0 or -1 are shot and the new configuration is obtained by adding q[i]+ v*delta[i], for i from 1 to n.

The function void p3d_shoot_in_box(p3d_rob *r, double *q, double *qn, double *dq)   shoots a configuration in the box of the configuration space centered in qn and of amplitude dq. Th function double *p3d_shoot_box(p3d_rob *r, p3d_graph *G, double *qn, double *dq)   does exactly the same but returns a free configuration for the robot r (and updates the configurations counter of the graph G).


next up previous contents index
Next: Building a graph Up: Motion planning Previous: Motion planning

Nicola Simeon
Fri Oct 27 09:07:38 MET DST 2000