130 likes | 292 Views
Fast Walking and Modeling Kicks. Purpose: Team Robotics Spring 2005 By: Forest Marie. Walk Learning. CMU developed an autonomous approach for optimizing fast forward gaits based on genetic algorithms This approach allowed 20% improvement from CMPack’02
E N D
Fast Walking and Modeling Kicks Purpose: Team Robotics Spring 2005 By: Forest Marie
Walk Learning • CMU developed an autonomous approach for optimizing fast forward gaits based on genetic algorithms • This approach allowed 20% improvement from CMPack’02 • Using the technique, the ERS-7 reached speeds of up to 40 cm/sec
Walk Learning • Sample several different movement positions of an individual leg executing a movement • For each walk parameter motion, check with the kinematics system to assure you want stress out the motor or harm the robot • E.G. Stop a movement that is not physically capable by AIBO • Every walk parameter is represented by a vector • Cross-over uses two walk parameters to form two individuals from two parents • Not the most trivial algorithm unless you are familiar with genetic algorithms in detail. More details can be found at: • http://www.andrew.cmu.edu/course/15-491/lectures/iros2004.pdf
Modeling the Effects of Kicking Motion • Goal: Analyze a variety of kicks and select the best kick for a given state of the world • Algorithms used: • Trajectory Angle ( TRACKANGLE() ) • Modeling Kick Distance ( TRACKDISTANCE() ) • List of kicking motions
Trajectory Angle • Purpose: • To obtain the angle of trajectory after a kick • Background: • The robot’s vision module provides info about the ball’s location • This module stores the location for every vision frame assuming the ball is in range of the camera
TRACKANGLE() Code • Algorithm: • Set time of kick = 0 TRACKBALLWITHHEAD() if Ball is in kicking range KICK() Set time of kick to current time if current time – time of kick > delay angle = CALCANGLEUSINGBALLHISTORY()
TRACKANGLE (continued) • Notes: • Vision ball history is continuously updating • We want to store the trajectory accurately, so: • We must store the trajectory before it goes too far • But after enough time has passed to record at least one second of the ball’s trajectory • The value of delay is represented as : time of the kick + 1 second • Larger delays are used for kicks with lots of head motions that cause delay in tracking
TRACKANGLE (continued) • More notes • Linear regression algorithm is used in the history list to calculate trajectory • M is used to approximate the angle of the trajectory • AIBO records 25 vision frames per second • CMU requires that at least 20/25 frames contain info
Modeling Kick Distance • Purpose: • Calculate the distance the ball will travel after a given kick • Background: • AIBO is unable to track the entire trajectory of the ball because the ball will travel out of the robot’s field of view • Instead we can calculate where the ball will stop relative to its position before the kick • The next slide shows the algorithm on how to achieve this
TRACKDISTANCE() code While ( true ) APPROACHBALL() KICKBALL() STANDANDLOCALIZE() Set initial ball position = current AIBO position FINDBALL() APPROACHBALL() if ball distance < 50 centimeters STANDANDLOCALIZE() Set final ball position = current ball position Set ball display vector = final ball position – initial ball position
Kick Selection Algorithm • Purpose: • To choose an appropriate kicking motion out of a list based on a given state of the world • Background • Data gathered in the modeling stages can be organized into a motion library • Each kicking motion is classified by its effects on the ball, in terms of the mean angle and distance
Kick Selection Algorithm explained • The localization system gives info about AIBO’s position on the field relative to the location of the goal • The allows our code to calculate the trajectory of the ball • After, the motion library is referenced to select the best kick whose effects match the desired trajectory • If no kick motion provides a close match, then a series of behaviors can be put together to achieve the desired outcome • E.G. AIBO may turn the ball to achieve a better scoring position
Conclusion • Using modeling,13 second for scoring versus CMPack’02. • Their research is ongoing and they are looking to expand upon the modeling techniques we discussed • CMU is interested in constructing algorithms to improve kick selection in convoluted multi-AIBO scenarios • Questions?