Option new_obstacle_avoidance_challenge

The root option of the New Obstacle Avoidance Challenge behavior

Parameters of that option:
ParameterTypeMeasureRangeDescription
new_obstacle_avoidance_challenge.tolerancedecimalmm
new_obstacle_avoidance_challenge.speeddecimalmm/swalking speed

State Machine

This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html

State _initial

If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  This enumerated output symbol is set:
    motion.type  = 
motion.type.stand
 >  This enumerated output symbol is set:
    leds.face1  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face2  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face3  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face4  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face5  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face6  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face9  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face10  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face11  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face12  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face13  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face14  = 
leds.blink.oooo
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state__initial.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
goto go_to_halfwayline_1;
}

State go_to_halfwayline_1

If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  The option go_to_point_avoid_obstacles is executed. Parameters:
    go_to_point_avoid_obstacles.x  =  2500 ;
    go_to_point_avoid_obstacles.y  =  2000 ;
    go_to_point_avoid_obstacles.speed  =  @new_obstacle_avoidance_challenge.speed ;
    go_to_point_avoid_obstacles.tolerance  =  @new_obstacle_avoidance_challenge.tolerance ;
 >  This enumerated output symbol is set:
    leds.face1  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face2  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face3  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face4  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face5  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face6  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face9  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face10  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face11  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face12  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face13  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face14  = 
leds.blink.oooo
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_go_to_halfwayline_1.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
/** reached halfway line */
if ( robot_pose.x() > -300)
{
  
goto wait_for_partner_1;
}
else
{
  
stay;
}
}

State wait_for_partner_1

If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  This enumerated output symbol is set:
    motion.type  = 
motion.type.stand
 >  This enumerated output symbol is set:
    leds.face1  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face2  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face3  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face4  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face5  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face6  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face9  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face10  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face11  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face12  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face13  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face14  = 
leds.blink.oooo
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_wait_for_partner_1.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
goto go_to_opponent_goal;
}

State go_to_opponent_goal

This state is synchronized. All cooperating agents that are executing this option will enter it at once.



If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  The option go_to_point_avoid_obstacles is executed. Parameters:
    go_to_point_avoid_obstacles.x  =  (field.opponent_ground_line.x() + 150) ;
    go_to_point_avoid_obstacles.y  =  0 ;
    go_to_point_avoid_obstacles.speed  =  @new_obstacle_avoidance_challenge.speed ;
    go_to_point_avoid_obstacles.tolerance  =  @new_obstacle_avoidance_challenge.tolerance ;
 >  This enumerated output symbol is set:
    leds.face1  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face2  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face3  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face4  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face5  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face6  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face9  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face10  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face11  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face12  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face13  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face14  = 
leds.blink.oooo
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_go_to_opponent_goal.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
/** */
if ( selfloc.distance_to( (field.opponent_ground_line.x() + 150) , 0 ) < 500)
{
  
goto near_to_opponent_goal;
}
else
{
  
stay;
}
}

State near_to_opponent_goal

If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  The option go_to_point is executed. Parameters:
    go_to_point.x  =  (field.opponent_ground_line.x() + 150) ;
    go_to_point.y  =  0 ;
    go_to_point.angle  =  0 ;
    go_to_point.speed  =  @new_obstacle_avoidance_challenge.speed ;
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_near_to_opponent_goal.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
/** reached goal */
if ( action_done)
{
  
goto wait_for_partner_2;
}
else
{
  
/** */
if ( state_time > 3000)
{
  
goto go_to_opponent_goal;
}
else
{
  
stay;
}
}
}

State wait_for_partner_2

If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  This enumerated output symbol is set:
    motion.type  = 
motion.type.stand
 >  This enumerated output symbol is set:
    leds.face1  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face2  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face3  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face4  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face5  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face6  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face9  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face10  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face11  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face12  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face13  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face14  = 
leds.blink.oooo
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_wait_for_partner_2.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
goto go_out_of_opponent_goal;
}

State go_out_of_opponent_goal

This state is synchronized. All cooperating agents that are executing this option will enter it at once.



If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  This enumerated output symbol is set:
    motion.type  = 
motion.type.walk
 >  This decimal output symbol is set:
    motion.walk_speed.x  = 
-200
 >  This decimal output symbol is set:
    motion.walk_speed.y  = 
0
 >  This decimal output symbol is set:
    motion.walk_speed.rot  = 
0
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_go_out_of_opponent_goal.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
/** */
if ( state_time > 1500)
{
  
goto go_to_halfwayline_2;
}
else
{
  
stay;
}
}

State go_to_halfwayline_2

If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  The option go_to_point_avoid_obstacles is executed. Parameters:
    go_to_point_avoid_obstacles.x  =  -2500 ;
    go_to_point_avoid_obstacles.y  =  -2000 ;
    go_to_point_avoid_obstacles.speed  =  @new_obstacle_avoidance_challenge.speed ;
    go_to_point_avoid_obstacles.tolerance  =  @new_obstacle_avoidance_challenge.tolerance ;
 >  This enumerated output symbol is set:
    leds.face1  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face2  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face3  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face4  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face5  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face6  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face9  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face10  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face11  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face12  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face13  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face14  = 
leds.blink.llll
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_go_to_halfwayline_2.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
/** */
if ( robot_pose.x() < 300)
{
  
goto wait_for_partner_3;
}
else
{
  
stay;
}
}

State wait_for_partner_3

If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  This enumerated output symbol is set:
    motion.type  = 
motion.type.stand
 >  This enumerated output symbol is set:
    leds.face1  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face2  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face3  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face4  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face5  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face6  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face9  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face10  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face11  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face12  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face13  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face14  = 
leds.blink.llll
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_wait_for_partner_3.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
goto go_to_own_goal;
}

State go_to_own_goal

This state is synchronized. All cooperating agents that are executing this option will enter it at once.



If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  The option go_to_point_avoid_obstacles is executed. Parameters:
    go_to_point_avoid_obstacles.x  =  (field.own_ground_line.x() - 80) ;
    go_to_point_avoid_obstacles.y  =  0 ;
    go_to_point_avoid_obstacles.speed  =  @new_obstacle_avoidance_challenge.speed ;
    go_to_point_avoid_obstacles.tolerance  =  @new_obstacle_avoidance_challenge.tolerance ;
 >  This enumerated output symbol is set:
    leds.face1  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face2  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face3  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face4  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face5  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face6  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face9  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face10  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face11  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face12  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face13  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face14  = 
leds.blink.llll
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_go_to_own_goal.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
/** */
if ( selfloc.distance_to( (field.own_ground_line.x() - 80) , 0 ) < 500)
{
  
goto near_to_own_goal;
}
else
{
  
stay;
}
}

State near_to_own_goal

If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  The option go_to_point is executed. Parameters:
    go_to_point.x  =  (field.own_ground_line.x() - 150) ;
    go_to_point.y  =  0 ;
    go_to_point.angle  =  180 ;
    go_to_point.speed  =  @new_obstacle_avoidance_challenge.speed ;
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_near_to_own_goal.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
/** */
if ( action_done)
{
  
goto wait_for_partner_4;
}
else
{
  
/** */
if ( state_time > 3000)
{
  
goto go_to_own_goal;
}
else
{
  
stay;
}
}
}

State wait_for_partner_4

If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  This enumerated output symbol is set:
    motion.type  = 
motion.type.stand
 >  This enumerated output symbol is set:
    leds.face1  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face2  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face3  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face4  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face5  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face6  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face9  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face10  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face11  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face12  = 
leds.blink.oooo
 >  This enumerated output symbol is set:
    leds.face13  = 
leds.blink.llll
 >  This enumerated output symbol is set:
    leds.face14  = 
leds.blink.llll
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_wait_for_partner_4.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
goto go_out_of_own_goal;
}

State go_out_of_own_goal

This state is synchronized. All cooperating agents that are executing this option will enter it at once.



If that state is active,
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_landmarks_obstacle_challenge
 >  This enumerated output symbol is set:
    motion.type  = 
motion.type.walk
 >  This decimal output symbol is set:
    motion.walk_speed.x  = 
-200
 >  This decimal output symbol is set:
    motion.walk_speed.y  = 
0
 >  This decimal output symbol is set:
    motion.walk_speed.rot  = 
0
 
The decision tree:
  This browser can't display the SVG file svg/option_new_obstacle_avoidance_challenge_state_go_out_of_own_goal.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** */
if (
!(game.state() == game.state.playing)
)
{
  
goto _initial;
}
else
{
  
/** */
if ( state_time > 1500)
{
  
goto go_to_halfwayline_1;
}
else
{
  
stay;
}
}