+ All Categories
Home > Documents > Lecture 19: Developing Autonomy for Robots in...

Lecture 19: Developing Autonomy for Robots in...

Date post: 28-Jul-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
30
Lecture 19: Developing Lecture 19: Developing Autonomy for Robots in Teams Autonomy for Robots in Teams Brett Browning Brett Browning Autonomous Robots 16 Autonomous Robots 16 - - 200 200 Carnegie Mellon University in Qatar Carnegie Mellon University in Qatar
Transcript
Page 1: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

Lecture 19: Developing Lecture 19: Developing Autonomy for Robots in TeamsAutonomy for Robots in Teams

Brett BrowningBrett BrowningAutonomous Robots 16Autonomous Robots 16--200200

Carnegie Mellon University in QatarCarnegie Mellon University in Qatar

Page 2: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

22 CS 16CS 16--200 Lecture 19200 Lecture 19

OverviewOverview

LogisticsLogisticsThe planThe planRoboCupRoboCup research environmentresearch environmentMy researchMy research

Page 3: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

33 CS 16CS 16--200 Lecture 19200 Lecture 19

LogisticsLogistics

Weekly project meetingsWeekly project meetingsYou give a 5 minute update on your progressYou give a 5 minute update on your progressTo be held in Thursday Lab slotTo be held in Thursday Lab slotAdditional help also available on ThursdayAdditional help also available on Thursday

Homework #4 is due Thursday at 10.30amHomework #4 is due Thursday at 10.30amChange to the syllabusChange to the syllabusPlease take care of the batteries!!!Please take care of the batteries!!!

Page 4: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

44 CS 16CS 16--200 Lecture 19200 Lecture 19

The PlanThe Plan

Today: Today: RoboCupRoboCup and Brettand Brett’’s researchs researchWednesday & Next week: ManipulationWednesday & Next week: ManipulationHomework #5Homework #5Research projectsResearch projects

Weekly meetings during lab sessionWeekly meetings during lab sessionDemonstration, paper, presentation, posterDemonstration, paper, presentation, poster(Remember, start now!)(Remember, start now!)

Page 5: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

55 CS 16CS 16--200 Lecture 19200 Lecture 19

RoboCupRoboCup Robot SoccerRobot Soccer

Page 6: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

66 CS 16CS 16--200 Lecture 19200 Lecture 19

RoboCupRoboCup Robot SoccerRobot Soccer

Challenge to researchers to improve robot Challenge to researchers to improve robot intelligence through friendly competitionintelligence through friendly competition

““By the year 2050, develop a team of fully By the year 2050, develop a team of fully autonomous humanoid robots that can win autonomous humanoid robots that can win against the human world soccer champion against the human world soccer champion teamteam””, , www.robocup.orgwww.robocup.org

First competition in 1997, Nagoya JapanFirst competition in 1997, Nagoya Japan

Page 7: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

77 CS 16CS 16--200 Lecture 19200 Lecture 19

Small Size Robot LeagueSmall Size Robot League

CMDragons [Browning, Bruce,Bowling, Veloso et al. 03]

Page 8: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

88 CS 16CS 16--200 Lecture 19200 Lecture 19

Legged LeagueLegged League

Page 9: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

99 CS 16CS 16--200 Lecture 19200 Lecture 19

MidMid--Size LeagueSize League

Page 10: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

1010 CS 16CS 16--200 Lecture 19200 Lecture 19

SegwaySegway SoccerSoccer

Segway Soccer [Browning et al. 04]

Page 11: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

1111 CS 16CS 16--200 Lecture 19200 Lecture 19

Humanoid LeagueHumanoid League

Page 12: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

1212 CS 16CS 16--200 Lecture 19200 Lecture 19

RoboCupRoboCup DetailsDetails

Annual international competitionsAnnual international competitionsNext one in Next one in RoboCupRoboCup 2006 in Bremen, Germany2006 in Bremen, GermanyLarge and growing larger (2,000 competitors in 2006)Large and growing larger (2,000 competitors in 2006)

Teams compete in games of soccerTeams compete in games of soccerHuman referee commands translated by computerHuman referee commands translated by computerFully autonomous during gameFully autonomous during game

Research communicated viaResearch communicated viaTechnical reports, papers, symposiumTechnical reports, papers, symposiumCode releasesCode releases

Page 13: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

1313 CS 16CS 16--200 Lecture 19200 Lecture 19

Common ChallengesCommon Challenges

Autonomous robots with realAutonomous robots with real--time perceptiontime perceptionOperating in a dynamic environmentOperating in a dynamic environmentOperating in a team with other robots, Operating in a team with other robots, humans, novel teammateshumans, novel teammatesOperating with adversariesOperating with adversaries

Creates highly dynamic environmentCreates highly dynamic environmentEncourages high performance solutionsEncourages high performance solutionsEncourages strategy adaptation and learningEncourages strategy adaptation and learning

Page 14: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

1414 CS 16CS 16--200 Lecture 19200 Lecture 19

My InterestsMy Interests

RealReal--time vision perceptiontime vision perceptionAutonomously robot controlAutonomously robot control

Individually, and within teamIndividually, and within team

Effective learning mechanismsEffective learning mechanismsAdapt to environment, changes, opponents, taskAdapt to environment, changes, opponents, task

Page 15: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

1515 CS 16CS 16--200 Lecture 19200 Lecture 19

Lets Focus on ControlLets Focus on Control

Robot must choose actions to perform its Robot must choose actions to perform its role within the teamrole within the team

Perception ActionSingle Robot Cognition

Team Cognition

World

Teammates

Page 16: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

1616 CS 16CS 16--200 Lecture 19200 Lecture 19

State Machines for ControlState Machines for Control

State machines have a long history in robotics, State machines have a long history in robotics, control and AIcontrol and AI

For behavioral control [Brooks 86, For behavioral control [Brooks 86, BalchBalch et al. et al. 95]95]Hybrid control [Lynch & Krogh,00]Hybrid control [Lynch & Krogh,00]State estimation [State estimation [ThrunThrun et al.et al. 05], many more05], many more

State abstraction provides a powerful State abstraction provides a powerful mechanism for describing (and implementing) mechanism for describing (and implementing) sequences with different modes of controlsequences with different modes of control

Page 17: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

1717 CS 16CS 16--200 Lecture 19200 Lecture 19

Definition of a State MachineDefinition of a State Machine

PS PS –– Perceptual statePerceptual stateCS CS –– Control statesControl statesCA CA –– Control actionsControl actions

T(PST(PS++) ) –– Transition Transition functionfunctionR R –– Termination resultTermination result

cs0

ca0

cs1

ca1

cs3

ca3

cs2

ca2

XT(.)

T(.)

Success

FailureInitial State

Page 18: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

1818 CS 16CS 16--200 Lecture 19200 Lecture 19

Hierarchies of State Machines for Hierarchies of State Machines for Individual ControlIndividual Control

Really equivalent to a larger Really equivalent to a larger state machinestate machineAllows for state machine Allows for state machine reuse (i.e. Macros)reuse (i.e. Macros)Allows for natural task Allows for natural task decomposition into subdecomposition into sub--taskstasks

X

X

Call a sub-skill

Page 19: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

1919 CS 16CS 16--200 Lecture 19200 Lecture 19

Soccer ExampleSoccer Example

1. Goto ball

2. Approach ball

3. Aim

4. Kick

Shoot 1

1. Goto ball

2. Steal

3. Dribble

4/5. Aim/Kick

Shoot 2

Page 20: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

2020 CS 16CS 16--200 Lecture 19200 Lecture 19

Parallel Execution of HierarchiesParallel Execution of HierarchiesOperate state machines in parallelOperate state machines in parallel

Independent or nonIndependent or non--conflicting tasksconflicting tasksRequires scheduling for conflicting tasksRequires scheduling for conflicting tasks

Event driven execution, sleeping statesEvent driven execution, sleeping states

XX

Event

Action

Page 21: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

2121 CS 16CS 16--200 Lecture 19200 Lecture 19

Skill KernelSkill KernelCall a state machine a skillCall a state machine a skillIdea: We can equate management of skills with Idea: We can equate management of skills with a multia multi--threaded operating systemthreaded operating system

??Scheduling

EventsSignals

??Synchronization

SleepingSleepingSleeping

Action managementResource management

SkillSkillThreadSkill TermsSkill TermsOS TermsOS Terms

Page 22: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

2222 CS 16CS 16--200 Lecture 19200 Lecture 19

Skill LearningSkill Learning

Key idea: Key idea: Skill structure and kernel creates natural basis Skill structure and kernel creates natural basis for applying learningfor applying learning

Learning applicable in three waysLearning applicable in three waysLearning control policy in a stateLearning control policy in a stateLearning state transitionsLearning state transitionsLearning hierarchy/which skills to callLearning hierarchy/which skills to call

Page 23: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

2323 CS 16CS 16--200 Lecture 19200 Lecture 19

Skill Selection LearningSkill Selection Learning

Key idea: Key idea: In a state a skill may call multiple subIn a state a skill may call multiple sub--skills to skills to do the same taskdo the same taskLearn which subLearn which sub--skill works bestskill works best

ApproachApproachUse success/failure history as reward signalUse success/failure history as reward signalApply an expert systems technique to learn Apply an expert systems technique to learn which which ‘‘expertexpert’’, or skill, is best, or skill, is best

Page 24: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

2424 CS 16CS 16--200 Lecture 19200 Lecture 19

Skill Selection ApproachSkill Selection Approach

Treat a skill as an Treat a skill as an ‘‘expertexpert’’

X

Call one of N sub-skills

X…

X

Tie success/failure to reward signal

Page 25: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

2525 CS 16CS 16--200 Lecture 19200 Lecture 19

Coordinating Robots: PlaysCoordinating Robots: Plays

Synchronized state machinesSynchronized state machines

X

Role 1 Role 2

Page 26: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

2626 CS 16CS 16--200 Lecture 19200 Lecture 19

Play ManagerPlay Manager

Manages selection, execution and Manages selection, execution and synchronization for each playsynchronization for each playBeyond synchronizationBeyond synchronization

Play selectionPlay selectionDynamic role assignmentDynamic role assignmentMonitoringMonitoringLearningLearning

Page 27: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

2727 CS 16CS 16--200 Lecture 19200 Lecture 19

An Example PlayAn Example Play

APPLICABLE offenseDONE aborted !offense

ROLE 1pass 3mark best_opponent

ROLE 2block

ROLE 3pos_for_pass R B 1000 0receive_passshoot A

ROLE 4defend_lane

Page 28: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

2828 CS 16CS 16--200 Lecture 19200 Lecture 19

Playbook StrategyPlaybook Strategy

Play Manager handles multiple plays, and Play Manager handles multiple plays, and select as appropriate for world stateselect as appropriate for world stateLearn which plays work betterLearn which plays work better

Play 1APP: offenseRole 1:

• dribble• pass

Role 2:…

Play 2APP: offenseRole 1:

• dribble• fake• pass

Role 2:

Play NAPP: defenseRole 1:

• blockRole 2:…

w1=0.7 w2=6.7 wN=0.07

Strategy

Page 29: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

2929 CS 16CS 16--200 Lecture 19200 Lecture 19

SummarySummary

State abstraction is a powerful technique State abstraction is a powerful technique that can be used at many levels from that can be used at many levels from single robot to team coordinationsingle robot to team coordination

Management of state machines equivalent to Management of state machines equivalent to multimulti--threaded OS managementthreaded OS managementProvides a natural basis to apply learningProvides a natural basis to apply learningProvides a natural mechanism for task Provides a natural mechanism for task decompositiondecomposition

Page 30: Lecture 19: Developing Autonomy for Robots in …web.cecs.pdx.edu/~mperkows/CLASS_479/S2006/Lecture19.pdf16 CS 16-200 Lecture 19 State Machines for Control State machines have a long

3030 CS 16CS 16--200 Lecture 19200 Lecture 19

End of LectureEnd of Lecture

See you on Wednesday


Recommended