b659: principles of intelligent robot motion kris hauser ta: mark wilson
TRANSCRIPT
B659: Principles of B659: Principles of Intelligent Robot Intelligent Robot
MotionMotionKris HauserKris Hauser
TA: Mark WilsonTA: Mark Wilson
An intelligent robot must be able to An intelligent robot must be able to coordinate its own motionscoordinate its own motions in order to in order to achieve certain goalsachieve certain goals
Coordinating motion Coordinating motion demands intelligencedemands intelligence
How do cognition, learning, and reflex How do cognition, learning, and reflex interact to produce intelligent behavior?interact to produce intelligent behavior?
How do we encode this in a robot?How do we encode this in a robot?
Two (or Three) Core Two (or Three) Core ProblemsProblems
Planning: choosing present behavior Planning: choosing present behavior to attain future goalsto attain future goals
Sensing: making meaningful Sensing: making meaningful interpretations from raw datainterpretations from raw data
Models are the underlying Models are the underlying “knowledge” that are used for “knowledge” that are used for drawing conclusions about past, drawing conclusions about past, present, and futurepresent, and future
Intelligent Robot Intelligent Robot ArchitectureArchitecture
Percept (raw sensor data)
Action
?
Intelligent Robot Intelligent Robot ArchitectureArchitecture
Percept (raw sensor data)
Action
Sensing
Planning
Intelligent Robot Intelligent Robot ArchitectureArchitecture
Percept (raw sensor data)
Action
Sensing algorithms
Models
Planning
State estimationMappingTrackingCalibrationObject recognition…
Intelligent Robot Intelligent Robot ArchitectureArchitecture
Percept (raw sensor data)
Action
Sensing algorithms
Models
Real-Time Control
Task Planning Motion Planning
Goal
Planning TopicsPlanning Topics Motion planningMotion planning Compute Compute high-level strategieshigh-level strategies, e.g.:, e.g.:
• Geometric pathsGeometric paths• Time-parameterized trajectoriesTime-parameterized trajectories• Sequence of sensor-based motion commandsSequence of sensor-based motion commands
To To achieve high-level goalsachieve high-level goals, e.g.:, e.g.:• Go from A to B while avoiding obstaclesGo from A to B while avoiding obstacles• Assemble product PAssemble product P• Build a map of environment EBuild a map of environment E• Find object OFind object O
Planning Topics (cont.)Planning Topics (cont.)
Feedback ControlFeedback Control Compute (or verify) a real-time Compute (or verify) a real-time
strategy for responding to deviations strategy for responding to deviations from the desired pathfrom the desired path
Sensing TopicsSensing Topics
State estimationState estimation Calibrating the parameters of static Calibrating the parameters of static
models using motionmodels using motion• Cameras and motion captureCameras and motion capture• System identificationSystem identification
Filtering and estimating dynamic modelsFiltering and estimating dynamic models• State estimation and sensor fusionState estimation and sensor fusion• Localization and mappingLocalization and mapping
Learning from demonstrationLearning from demonstration
Modeling TopicsModeling Topics
Rigid transformationsRigid transformations Kinematics and inverse kinematicsKinematics and inverse kinematics Dynamics of articulated structuresDynamics of articulated structures Cameras and laser rangefindersCameras and laser rangefinders
Relationship to AIRelationship to AI
““Sub-symbolic” Sub-symbolic” intelligenceintelligence
Continuous domainsContinuous domains Computationally Computationally
complex: basic complex: basic problems are in problems are in PSPACEPSPACE
Goals of the ClassGoals of the Class
Present Present formal and practical formal and practical algorithmicalgorithmic and and mathematical toolsmathematical tools for interpreting and synthesizing for interpreting and synthesizing motionmotion
Components of a general frameworkComponents of a general framework for designing and studying complex for designing and studying complex robotic and biological agentsrobotic and biological agents
This class does NOT cover…This class does NOT cover…
Lagrangian mechanicsLagrangian mechanics Rigid body simulationRigid body simulation Control theoryControl theory Numerical optimizationNumerical optimization Computer visionComputer vision
… … but makes use of knowledge from but makes use of knowledge from these subjectsthese subjects
Fundamental question of Fundamental question of motion planningmotion planning
Are the two given points connected by a path?Are the two given points connected by a path?
Forbidden region
Feasible space
Fundamental question of Fundamental question of motion planningmotion planning
Are the two given points connected by a path?Are the two given points connected by a path?
Forbidden region
Feasible space
e.g.:collision with obstaclelack of stabilitylost visibility with target…
Basic ProblemBasic Problem
Statement:Statement: Compute a Compute a collision-free pathcollision-free path for a rigid or for a rigid or articulated object among static obstaclesarticulated object among static obstacles
Inputs:Inputs:• Geometry of moving object and obstaclesGeometry of moving object and obstacles• Kinematics of moving object (degrees of Kinematics of moving object (degrees of
freedom)freedom)• Initial and goal Initial and goal configurationsconfigurations (placements) (placements)
Output:Output:Continuous sequence of collision-free robot Continuous sequence of collision-free robot
configurations configurations connecting the initial and goal connecting the initial and goal configurationsconfigurations
Why is this hard?Why is this hard?
Tool: Configuration SpaceTool: Configuration Space
Problems:• Geometric complexity• Space dimensionality
Some VariantsSome Variants Moving obstaclesMoving obstacles Multiple robotsMultiple robots Movable objectsMovable objects Assembly planningAssembly planning Goal is to acquire Goal is to acquire
information by sensinginformation by sensing• Model buildingModel building• Object finding/trackingObject finding/tracking• InspectionInspection
Nonholonomic Nonholonomic constraintsconstraints
Dynamic constraintsDynamic constraints Stability constraintsStability constraints
Optimal planningOptimal planning Uncertainty in model, Uncertainty in model,
control and sensingcontrol and sensing Exploiting task Exploiting task
mechanics (sensorless mechanics (sensorless motions, under-motions, under-actuated systems)actuated systems)
Physical models and Physical models and deformable objectsdeformable objects
Integration of planning Integration of planning and controland control
Integration with Integration with higher-level planninghigher-level planning
ApplicationsApplications
HRP-2, AIST, Japan
Humanoid RobotsHumanoid Robots
Lunar Vehicle (ATHLETE, Lunar Vehicle (ATHLETE, NASA/JPL)NASA/JPL)
Climbing RobotClimbing Robot
Design for Manufacturing Design for Manufacturing and Servicingand Servicing
General Electric
General MotorsGeneral Motors
Manipulation of Deformable Manipulation of Deformable ObjectsObjects
Manipulation of Deformable Manipulation of Deformable ObjectsObjects
Assembly SequencingAssembly Sequencing
Assembly SeqencingAssembly Seqencing
Cable Harness/Pipe DesignCable Harness/Pipe Design
Where to move next?
Map BuildingMap Building
Navigation Through Virtual Navigation Through Virtual EnvironmentsEnvironments
Computer-Assisted Computer-Assisted Angiography/ Colonoscopy/ Angiography/ Colonoscopy/
BronchoscopyBronchoscopy
CyberKnife (Accuray)
Radiosurgical PlanningRadiosurgical Planning
Self-ParkingSelf-Parking
Kineo
Transportation of A380 Transportation of A380 Fuselage through Small Fuselage through Small
VillagesVillages
Inhibitor binding to HIV protease
Study of Motion of Bio-Study of Motion of Bio-MoleculesMolecules
PrerequisitesPrerequisites
Ability and willingness to complete a Ability and willingness to complete a significant programming project on a significant programming project on a simulation GUI or physical robotsimulation GUI or physical robot
Interest in reading and discussing research Interest in reading and discussing research papers each weekpapers each week
Subjects: linear algebra*, multivariable Subjects: linear algebra*, multivariable calculus, geometry, probabilitycalculus, geometry, probability
Basic knowledge and taste for geometry, Basic knowledge and taste for geometry, mathematical analysis, and algorithmsmathematical analysis, and algorithms
BookBook
Principles of Robot Motion Principles of Robot Motion (Choset, (Choset, Hutchinson, Kantor, Burgard, Kavraki, and Thrun)Hutchinson, Kantor, Burgard, Kavraki, and Thrun)
GradingGrading
Participation: read readings, attend Participation: read readings, attend class prepared to discuss readingsclass prepared to discuss readings
Presentation(s): read and understand Presentation(s): read and understand research paper, and make 20 min research paper, and make 20 min PPT presentation to classPPT presentation to class
Semester-long projectSemester-long project
Semester ProjectSemester Project
Topic of your choosing, advised and Topic of your choosing, advised and approved by instructorapproved by instructor
Groups of 1-3 studentsGroups of 1-3 students ScheduleSchedule
• Proposal (Feb.)Proposal (Feb.)• Mid term report / discussion (March)Mid term report / discussion (March)• Final presentation (end of April)Final presentation (end of April)
Project IdeasProject Ideas
Robot chessRobot chess Finding and tracking people indoorsFinding and tracking people indoors UI for assistive robot armsUI for assistive robot arms Analysis of human observation data Analysis of human observation data (Prof. Yu)(Prof. Yu)
Outdoor vehicle navigation Outdoor vehicle navigation (Prof. Johnson)(Prof. Johnson)
Motion in social contexts Motion in social contexts (Profs. Scheutz and (Profs. Scheutz and Sabanovic)Sabanovic)
Class WebsiteClass Website
Please visit website for course policies, Please visit website for course policies, important announcements, and detailed important announcements, and detailed schedule:schedule:http://www.cs.indiana.edu/classes/b659-hauserk/http://www.cs.indiana.edu/classes/b659-hauserk/
Or from Or from http://www.cs.indiana.edu/~hauserk/http://www.cs.indiana.edu/~hauserk/, click , click ‘Teaching’‘Teaching’