EDU.gatech.cc.is.clay
Class v_Attract_va

java.lang.Object
  |
  +--EDU.gatech.cc.is.clay.Node
        |
        +--EDU.gatech.cc.is.clay.NodeVec2
              |
              +--EDU.gatech.cc.is.clay.v_Attract_va

public class v_Attract_va
extends NodeVec2

This node (motor schema) generates a vector away from the items detected by its embedded perceptual schema. Magnitude varies from 0 to 1.

This version is slightly different from Arkin's original formulation. In the original, a repulsion vector is computed for each detected attractor with the result being the sum of these vectors. The result is that several hazards grouped closely are more repulsive than a single hazard. This causes problems when each sonar return is treated as a separate hazard --- walls for instance are more repulsive than a small hazard.

This version computes the direction of the repulsive vector as in the original, but the returned magnitude is the largest of the vectors, not the sum.

Arkin's original formulation is described in "Motor Schema Based Mobile Robot Navigation," International Journal of Robotics Research, vol. 8, no 4, pp 92-112.

The source code in this module is based on "first principles" (e.g. published papers) and is not derived from any previously existing software.

For detailed information on how to configure behaviors, see the Clay page.

Copyright (c)1997, 1998 Tucker Balch


Field Summary
static boolean DEBUG
           
 
Fields inherited from class EDU.gatech.cc.is.clay.Node
DEBUG, embedded_nodes
 
Constructor Summary
v_Attract_va(double soe, double s, NodeVec2Array im1)
          Instantiate a v_Attract_va schema.
 
Method Summary
 Vec2 Value(long timestamp)
          Return a Vec2 representing the direction to go away from the detected hazards.
 
Methods inherited from class EDU.gatech.cc.is.clay.Node
initTrial
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEBUG

public static final boolean DEBUG
Constructor Detail

v_Attract_va

public v_Attract_va(double soe,
                    double s,
                    NodeVec2Array im1)
Instantiate a v_Attract_va schema.
Parameters:
soe - double, the sphere of influence beyond which the hazards are not considered.
s - double, the safety zone, inside of which a maximum repulsion from the object is generated.
im1 - NodeVec2Array, the embedded node that generates a list of items to avoid.
Method Detail

Value

public Vec2 Value(long timestamp)
Return a Vec2 representing the direction to go away from the detected hazards.
Overrides:
Value in class NodeVec2
Parameters:
timestamp - long, only get new information if timestamp > than last call or timestamp == -1.
Returns:
the movement vector.