next up previous contents index
Next: Searching a graph Up: Motion planning Previous: Existing motion planners

Expanding a graph

Once a graph has been built, the user can decide to expand it in order to improve its covering or its connectivity.

The function void p3d_expand_graph(p3d_graph *G, double frac)   searches G for all the connected componant whose nodes represents less than frac % of the number of nodes of G and expands all the nodes of thoses connected componants, according to the expansion strategy chosen, box expansion or random walk expansion.

Th function int p3d_expand_box(p3d_node *N, double *dq, int NB_NODE, p3d _graph *G)   creates NB_NODE extra nodes in the box centered in the configuration of the node N of amplitude dq and adds them to the graph G according to the planning strategy chosen.

The function p3d_expand_random_walk(p3d_node *N, double *delta, int nbstep, int NB_WALK, p3d_graph *G)   performs NB_WALK random walks of nbstep steps of amplitude delta from the node N and adds them to the graph if the path created is valid.



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