A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to...

73
Ioannis Rekleitis A brief intro to robots Spring 2018 Presentation: Marios Xanthidis

Transcript of A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to...

Page 1: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Ioannis Rekleitis

AbriefintrotorobotsSpring2018

Presentation: Marios Xanthidis

Page 2: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

RobotSensors

•  Sensorsaredevicesthatcansenseandmeasurephysicalpropertiesoftheenvironment,•  e.g.temperature,luminance,resistancetotouch,weight,size,etc.

•  Thekeyphenomenonistransduction•  Transduction(engineering)isaprocessthatconvertsonetypeofenergytoanother

•  Theydeliverlow-levelinformationabouttheenvironmenttherobotisworkingin.–  Returnanincompletedescriptionoftheworld.

CSCE 790 Machine Learning in Robotics 2

Page 3: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

RobotSensors

•  Thisinformationisnoisy(imprecise).•  Cannotbemodelledcompletely:–  Reading=f(env)wherefisthemodelofthesensor–  Findingtheinverse:

•  illposedproblem(solutionnotuniquelydeEined)•  collapsingofdimensionalityleadstoambiguity

CSCE 790 Machine Learning in Robotics 3

Page 4: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Typesofsensor

•  GeneralclassiEication:– activeversuspassive• Active:emitenergyinenvironment– Morerobust,lessefEicient

• Passive:passivelyreceiveenergyfromenv.– Lessintrusive,butdependsonenv.e.g.lightforcamera

• Example:stereovisionversusrangeEinder.– contactversusnon-contact

4 CSCE 790 Machine Learning in Robotics

Page 5: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Sensors

CSCE 790 Machine Learning in Robotics 5

•  ProprioceptiveSensors(monitorstateofrobot)–  IMU(accels&gyros)– Wheelencoders–  Dopplerradar…

•  ExteroceptiveSensors(monitorenvironment)–  Cameras(single,stereo,omni,FLIR…)

–  Laserscanner– MWradar–  Sonar–  Tactile…

Page 6: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

TypesofsensorSpeciEicexamples–  tactile–  close-rangeproximity–  angularposition–  infrared–  Sonar–  laser(varioustypes)–  radar–  compasses,gyroscopes–  Force–  GPS–  vision

6 CSCE 790 Machine Learning in Robotics

Page 7: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

AngularPosi6on:RotaryEncoder•  Potentiometer– UsedintheServoontheboebots

•  OpticalDisks(Relative)– Countingtheslots– Directionbyhavingparsofemitters/receiversoutofphase:Quadraturedecoding

– Canspinveryfast:500kHz

7 CSCE 790 Machine Learning in Robotics

Page 8: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Whatisanactuator?

•  Deviceformovingorcontrollingasystem.

•  “RobotMuscles”

CSCE 790 Machine Learning in Robotics 8

Page 9: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

HydraulicActuators

•  Pros:– Powerful– Fast– Stiff

•  Cons– Messy– Maintenance– ExternalPump

CSCE 790 Machine Learning in Robotics 9

Page 10: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Pneuma6cActuators

•  Pros:– Powerful– Cheap

•  Cons– Soft/Compliant– ExternalCompressor

CSCE 790 Machine Learning in Robotics 10

Page 11: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

ShapeMemoryAlloyActuators

•  WorksbywarmingandcoolingNitinolwires.

•  Pros:– Light– Powerful

•  Cons:– Slow(cooling)

CSCE 790 Machine Learning in Robotics 11

Page 12: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

ElectricActuators

•  Pros– Betterpositionprecision– Wellunderstood– Noseparatepowersource– Cheap

•  Cons– Heavy– Weaker/slowerthanhydraulics– Coolingissue

CSCE 790 Machine Learning in Robotics 12

Page 13: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

DCmotortorqueτ

I∝τ

torque=τcurrent =I

CSCE 790 Machine Learning in Robotics 13

Page 14: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

VehicleLocomo6on

•  Objective:convertdesiretomoveAàBintoanactualmotion:

– Howtoarrangeactuators(mechanicaldesign)

– actuatoroutputßàIncrementalmotion:Forwardkinematicsandinversekinematics

14 CSCE 790 Machine Learning in Robotics

Page 15: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

VehicleLocomo6on

•  ForwardKinematics:– (actuatorsactions)àpose

•  InverseKinematics(inverse-K):– poseà(actuatorsactions)

},,{ pose θyx=

15 CSCE 790 Machine Learning in Robotics

Page 16: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

WheeledVehicles

16 CSCE 790 Machine Learning in Robotics

Page 17: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Differen6aldrive

Basicdesign:•  2circularwheels•  inEinitelythin•  samediameter•  mountedalongacommonaxis•  vehiclebodyisirrelevant(intheory).

17 CSCE 790 Machine Learning in Robotics

Page 18: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Idealizeddifferen6aldrive

w1 w2

axle

w2w1

axle

top view

side view

18 CSCE 790 Machine Learning in Robotics

Page 19: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Differen6alDriveIntui6on

•  Drivestraightahead?

•  Turninplace?

•  (thesearequestionsofkinematics)

19 CSCE 790 Machine Learning in Robotics

Page 20: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Differen6alDriveObserva6on

•  Vehiclerotationcanbedescribedrelativetoanaxisrunningthoughthetwowheels.

Instantaneous Center of Curvature

20 CSCE 790 Machine Learning in Robotics

Page 21: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

ForwardKinema6csofDifferen6alDrive•  Wheelrotationbyangleφ1,φ2•  DistanceofwheelmotionDi=φir

21 CSCE 790 Machine Learning in Robotics

Page 22: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

WalkingRobots:RHex:TripodGait

22 CSCE 790 Machine Learning in Robotics

Page 23: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

•  Presentedactuatorsandsensors,e.g.:–  Electricalmotor–  Angularpositionencoder

•  Howtogetthebestprecision/performance?

Actuators+Sensors

Electric Motor

CSCE 790 Machine Learning in Robotics 23

Potentiometer Optical Encoder

Page 24: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Open-loop

Power Amplifier

Electric Motor

Computer

Volta

ge

Angular Velocity

CSCE 790 Machine Learning in Robotics 24

•  Goal:moveadifferentialdriverobot–  spinmotorsatagivenangularvelocity

•  How:applyaEixedvoltagetoit,–  andneverchecktoseeifitisrotatingproperly…

Page 25: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

•  Let’smeasuretheactualangularvelocities.•  Compensateforchangesinloadbyfeedingbacksomeinformation.

Closingtheloop

Power Amplifier

Electric Motor

Computer

Vol

tage

AngularVelocity

PositionEncoder

CSCE 790 Machine Learning in Robotics 25

Page 26: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

ComponentsofFeedbackSystems

•  PowerampliEication–  Neuralsignalpower(µW)vs.musclepoweroutput(tensofW)– Meansitisanactivesystem,asopposedtopassive.

•  Actuator•  Feedback– measurement(sensor)

•  Errorsignal•  Controller

26 CSCE 790 Machine Learning in Robotics

Page 27: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

EffectofControllerFunc6ons

•  ProportionalAction– SimplestControllerFunction

•  IntegralAction– Eliminatessteady-stateerror– Cancauseoscillations

•  DerivativeAction(“ratecontrol”)– Effectiveintransientperiods– Providesfasterresponse(highersensitivity)– Neverusedalone

27 CSCE 790 Machine Learning in Robotics

Page 28: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

LineFollowing

•  Considera2Drobotwithpose(x,y,θ)followingaline.Therobotismovingwithconstantspeedv,andwecontroltheangularvelocityω (turnrate).

CSCE 790 Machine Learning in Robotics 28

d

φ

Page 29: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Calcula6ngtheerror

•  Considertwoerrormeasures,– d– φ

•  Theorientationerrorisusedtoestimatewhenweareheadingtoomuchinthewrongdirection– 

•  Thedistanceerroriswhatwefeedtoourcontroller.

CSCE 790 Machine Learning in Robotics 29

bounded is 90 if ωφ °<

Page 30: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

P-Controller

CSCE 790 Machine Learning in Robotics 30

0 20 40 60 80 100 120 140 160 180 200

0

20

40

60

80

Casaded control kp=1 ki=0 kd=0

0 50 100 150-10

0

10

Time (s)Rot

atio

n C

omm

and

(deg

/s)

Gain too low

Page 31: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

P-Controller

CSCE 790 Machine Learning in Robotics 31

0 20 40 60 80 100 120 140 160 180 200

0

20

40

60

80

Casaded control kp=4 ki=0 kd=0

0 100 200 300 400 500 600-50

0

50

Time (s)Rot

atio

n C

omm

and

(deg

/s)

Gain high

Page 32: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

P-Controller

CSCE 790 Machine Learning in Robotics 32

0 20 40 60 80 100 120 140 160 180 200

0

20

40

60

80

Casaded control kp=10 ki=0 kd=0

0 100 200 300 400 500 600-100

-50

0

50

Time (s)Rot

atio

n C

omm

and

(deg

/s)

Gain too high

Page 33: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Pd-Controller

•  Weareusingalsothederivativeoftheerror:–  tocalculatetheturnrateω:

CSCE 790 Machine Learning in Robotics 33

dtdde tt 1−−

=!

ekdk dtp !⋅+⋅=ω

Page 34: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Pd-Controller

CSCE 790 Machine Learning in Robotics 34

0 20 40 60 80 100 120 140 160 180 2000

20

40

60

80

Casaded control kp=4 ki=0 kd=4

0 50 100 150 200 250 300 350 400-100

0

100

Time (s)Rot

atio

n C

omm

and

(deg

/s)

Page 35: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Pd-Controller

CSCE 790 Machine Learning in Robotics 35

0 20 40 60 80 100 120 140 160 180 2000

20

40

60

80

Casaded control kp=4 ki=0 kd=10

0 50 100 150 200 250 300 350-100

-50

0

50

Time (s)Rot

atio

n C

omm

and

(deg

/s)

Page 36: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Pd-Controller

CSCE 790 Machine Learning in Robotics 36

0 20 40 60 80 100 120 140 160 180 2000

20

40

60

80

Casaded control kp=4 ki=0 kd=20

0 50 100 150 200 250 300 350-100

-50

0

50

Time (s)Rot

atio

n C

omm

and

(deg

/s)

Page 37: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Pd-Controller

CSCE 790 Machine Learning in Robotics 37

0 20 40 60 80 100 120 140 160 180 200

0

20

40

60

80

Casaded control kp=20 ki=0 kd=50

0 50 100 150 200 250 300 350-100

0

100

Time (s)Rot

atio

n C

omm

and

(deg

/s)

Page 38: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Posi6onRepresenta6on

•  Positionrepresentationis:

CSCE 790 Machine Learning in Robotics 38

X

Y

Z

⎥⎥⎥

⎢⎢⎢

=

z

y

xA

ppp

PPA

Page 39: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Orienta6onRepresenta6ons

•  Describestherotationofonecoordinatesystemwithrespecttoanother

CSCE 790 Machine Learning in Robotics 39

XA

YA

ZA

XB

YB

ZB

A

B

Page 40: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Rota6onMatrix•  WritetheunitvectorsofBinthecoordinatesystemofA.

•  RotationMatrix:

CSCE 790 Machine Learning in Robotics 40

XA

YA

ZA

A

AXB

AYB

AZB

B [ ]

⎥⎥⎥

⎢⎢⎢

⋅⋅⋅

⋅⋅⋅

⋅⋅⋅

=

⎥⎥⎥

⎢⎢⎢

==

ABABAB

ABABAB

ABABAB

BA

BA

BAA

B

ZZZYZXYZYYYXXZXYXX

rrrrrrrrr

ZYXR

ˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆ

ˆˆˆ

333231

232221

131211

Page 41: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

EulerAngles

•  TraditionallythethreeanglesalongtheaxisarecalledRoll,Pitch,andYaw

CSCE 790 Machine Learning in Robotics 41

X

Y

Z

Page 42: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

EulerAngles

•  TraditionallythethreeanglesalongtheaxisarecalledRoll,Pitch,andYaw

Roll

CSCE 790 Machine Learning in Robotics 42

X

Y

Z

Page 43: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

EulerAngles

•  TraditionallythethreeanglesalongtheaxisarecalledRoll,Pitch,andYaw

Pitch

CSCE 790 Machine Learning in Robotics 43

X

Y

Z

Page 44: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

EulerAngles

•  TraditionallythethreeanglesalongtheaxisarecalledRoll,Pitch,andYaw

Yaw

CSCE 790 Machine Learning in Robotics 44

X

Y

Z

Page 45: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Axis-AngleRepresenta6on

•  Representanarbitraryrotationasacombinationofavectorandanangle

CSCE 790 Machine Learning in Robotics 45

X

Y

Z

V θ

Page 46: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Quaternions•  Aresimilartoaxis-anglerepresentation•  Twoformulations–  Classical– BasedonJPL’sstandardsW.G.Breckenridge,“Quaternions-ProposedStandardConventions,”JPL,Tech.Rep.INTEROFFICEMEMORANDUMIOM343-79-1199,1999.

•  AvoidsGimballock

•  Seealso:M.D.Shuster,“Asurveyofattituderepresentations,”JournaloftheAstronauticalSciences,vol.41,no.4,pp.439–517,Oct.–Dec.1993.

CSCE 790 Machine Learning in Robotics 46

Page 47: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

QuaternionsClassicnotation JPL-based

CSCE 790 Machine Learning in Robotics 47

kqjqiqqq 3214 +++=

jikkiikjjkkjiijkji

==−==−==−

−===

,,1222

jikkiikjjkkjiijijkkji

=−==−==−=

−====

, ,1222

kqjqiqqq 3214 +++=

( )( )( )

( )2cos ,

2sin2sin2sin

, 44

θ

θ

θ

θ

=

⎥⎥⎥⎥

⎢⎢⎢⎢

=⎥⎦

⎤⎢⎣

⎡= q

k

k

k

qq

z

y

x

qq

⎣ ⎦××⊗= qpq , , , ,1 Iqpqq

( )( ) ( )( ) ( )( ) ( )⎥

⎥⎥⎥

⎢⎢⎢⎢

=

⎥⎥⎥

⎢⎢⎢

=

⎥⎥⎥⎥

⎢⎢⎢⎢

=

z

y

x

qqq

q

qqqq

q

βθβθβθ

θ

cos2sin

cos2sin

cos2sin

,2cos ,

3

2

1

0

3

2

1

0

Vect

or

Not

atio

n

See also: N. Trawny and S. I. Roumeliotis, “Indirect Kalman Filter for 3D Attitude Estimation,” University of Minnesota, Dept. of Comp. Sci. & Eng., Tech. Rep. 2005-002, March 2005.

Page 48: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

ThreeMainChallengesinRobo6cs

1.  WhereamI?(Localization)2.  Whattheworldlookslike?(Mapping)– Together1and2formtheproblemofSimultaneousLocalizationandMapping(SLAM)

3.  HowdoIgofromAtoB?(PathPlanning)–  Moregeneral:WhichactionshouldIpicknext?

(Planning)

48 CSCE 790 Machine Learning in Robotics

Page 49: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Robot

Reason

ActSense

49 CSCE 790 Machine Learning in Robotics

Page 50: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Mo6onPlanning•  TheabilitytogofromAtoB–  Knownmap–Off-lineplanning–  UnknownEnvironment–Onlineplanning–  Static/DynamicEnvironment

CSCE 790 Machine Learning in Robotics 50

qgoalqinit

qgoal

qgoalqinit

qinit

Page 51: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

PathPlanning

Robot Map

World

• Topological • Metric • Feature Based • 1D,2D,2.5D,3D

• Mobile Ø Indoor/Outdoor Ø Walking/Flying/Swimming

• Manipulator • Humanoid • Abstract

• Indoor/Outdoor • 2D/2.5D/3D • Static/Dynamic • Known/Unknown • Abstract (web)

51 CSCE 790 Machine Learning in Robotics

Page 52: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

PathPlanning:Assump6ons•  KnownMap•  Roadmaps(Graphrepresentations)•  PolygonalRepresentation

qgoal

qinit

52 CSCE 790 Machine Learning in Robotics

Page 53: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Local techniques Potential Field methods

•  compute a repulsive force away from obstacles

•  compute an attractive force toward the goal

let the sum of the forces control the robot

key advantages?CSCE 790 Machine Learning in Robotics 53

Page 54: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Ioannis Rekleitis

Configuration Space

Page 55: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Ioannis Rekleitis

Configuration Space

Page 56: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Definition

 A robot configuration is a specification of the positions of all robot points relative to a fixed coordinate system  Usually a configuration is expressed as a “vector” of position/orientation parameters

CSCE 790 Machine Learning in Robotics 56

Page 57: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

What is a Path?

CSCE 790 Machine Learning in Robotics 57

Page 58: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Tool: Configuration Space (C-Space C)

q1

q1

q2

q2

CSCE 790 Machine Learning in Robotics 58

Page 59: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Probabilis6cRoadmapsPRMs

ThebasicideabehindPRMistotakerandomsamplesfromtheconfigura:onspaceoftherobot,tes:ngthemforwhethertheyareinthefreespace,andusealocalplannertoa>empttoconnecttheseconfigura:onstoothernearbyconfigura:ons.Thestar:ngandgoalconfigura:onsareaddedin,andagraphsearchalgorithmisappliedtotheresul:nggraphtodetermineapathbetweenthestar:ngandgoalconfigura:ons.Kavraki,L.E.;Svestka,P.;Latombe,J.-C.;Overmars,M.H.(1996),"Probabilis:croadmapsforpathplanninginhigh-dimensionalconfigura:onspaces",IEEETransac:onsonRobo:csandAutoma:on12(4):566–580.

CSCE 790 Machine Learning in Robotics 59

Page 60: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Rapidly-exploringRandomTrees

•  ApointPinCisrandomlychosen.•  ThenearestvertexintheRRTisselected.•  AnewedgeisaddedfromthisvertexinthedirectionofP,atdistanceε.

•  Thefurtherthealgorithmgoes,themorespaceiscovered.

CSCE 790 Machine Learning in Robotics 60

Page 61: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

FundamentalProblemsInRobo6cs

•  HowtoGoFromAtoB?(PathPlanning)•  Whatdoestheworldlookslike?(mapping)

–  sensefromvariouspositions–  integratemeasurementstoproducemap–  assumesperfectknowledgeofposition

•  WhereamIintheworld?(localization)–  Sense–  relatesensorreadingstoaworldmodel–  computelocationrelativetomodel–  assumesaperfectworldmodel

•  Together,theabovetwoarecalledSLAM (SimultaneousLocalizationandMapping)

61 CSCE 790 Machine Learning in Robotics

Page 62: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Introduc6ontoMapping

•  Whattheworldlookslike?•  Knowledgerepresentation–  Robotics,AI,Vision

•  Whoistheend-user?–  HumanorMachine

•  EaseofPathPlanning•  Uncertainty!

62 CSCE 790 Machine Learning in Robotics

Page 63: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

SimultaneousLocaliza6onAndMapping

SLAMistheprocessofbuildingamapofanenvironmentwhile,atthesametime,usingthatmaptomaintainthelocationoftherobot.

•  ProblemsforSLAMinlargescaleenvironments:–  Controllinggrowthofuncertaintyandcomplexity–  Achievingautonomousexploration

63 CSCE 790 Machine Learning in Robotics

Page 64: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Localiza6on

•  Tracking:Knowninitialposition•  GlobalLocalization:Unknowninitialposition•  Re-Localization:Incorrectknownposition–  (kidnappedrobotproblem)

64 CSCE 790 Machine Learning in Robotics

Page 65: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Uncertainty

Centraltoanyrealsystem!

65 CSCE 790 Machine Learning in Robotics

Page 66: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Localiza6on

Initial state detects nothing:

Moves and detects landmark:

Moves and detects nothing:

Moves and detects landmark:

66 CSCE 790 Machine Learning in Robotics

Page 67: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

BayesianFilter

•  EstimatestatexfromdataZ– Whatistheprobabilityoftherobotbeingatx?

•  xcouldberobotlocation,mapinformation,locationsoftargets,etc…

•  Zcouldbesensorreadingssuchasrange,actions,odometryfromencoders,etc…)

•  Thisisageneralformalismthatdoesnotdependontheparticularprobabilityrepresentation

•  BayesEilterrecursivelycomputestheposteriordistribution:

CSCE 790 Machine Learning in Robotics 67

)|()( TTT ZxPxBel =

Page 68: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Deriva6onoftheBayesianFilter

CSCE 790 Machine Learning in Robotics 68

)|()( Ttt ZxpxBel =

),...,,,,|()( 0211 oaoaoxpxBel tttttt −−−=

),...,|(),...,|(),...,,|()(

01

0101

oaopoaxpoaxopxBel

tt

tttttt

−−=

Estimation of the robot’s state given the data:

The robot’s data, Z, is expanded into two types: observations oi and actions ai

Invoking the Bayesian theorem

Page 69: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Deriva6onoftheBayesianFilter

CSCE 790 Machine Learning in Robotics 69

),...,|(/1 01 oaop tt −=η

),...,|(),...,,|()( 0101 oaxpoaxopxBel tttttt −−=η

),...,|()|()( 01 oaxpxopxBel ttttt −=η

1011011 ),...,|(),...,,|()|()( −−−−−∫= ttttttttt dxoaxpoaxxpxopxBel η

Denominator is constant relative to xt

First-order Markov assumption shortens first term:

Expanding the last term (theorem of total probability):

Page 70: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Deriva6onoftheBayesianFilter

CSCE 790 Machine Learning in Robotics 70

101111 ),...,|(),|()|()( −−−−−∫= ttttttttt dxoaxpaxxpxopxBel η

1111 )(),|()|()( −−−−∫= tttttttt dxxBelaxxpxopxBel η

First-order Markov assumption shortens middle term:

Finally, substituting the definition of Bel(xt-1):

The above is the probability distribution that must be estimated from the robot’s data

Page 71: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

Itera6ngtheBayesianFilter•  Propagatethemotionmodel:

•  Updatethesensormodel:

CSCE 790 Machine Learning in Robotics 71

∫ −−−−− = 1111 )(),|()( tttttt dxxBelxaxPxBel

)()|()( tttt xBelxoPxBel −=η

Compute the current state estimate before taking a sensor reading by integrating over all possible previous state estimates and applying the motion model

Compute the current state estimate by taking a sensor reading and multiplying by the current estimate based on the most recent motion history

Page 72: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

DifferentApproachesDiscreteapproaches(’95)•  Topologicalrepresentation(’95)•  Uncertaintyhandling(POMDPs)•  occas.globallocalization,recovery•  Grid-based,metricrepresentation(’96)•  globallocalization,recovery

ParticleEilters(’98)• Condensation(IsardandBlake’98)• Sample-basedrepresentation• Globallocalization,recovery• Rao-BlackwellizedParticleFilter

KalmanEilters(Early-60s?)• Gaussians• approximatelylinearmodels• positiontrackingExtendedKalmanFilterInformationFilterUnscentedKalmanFilter

Multi-hypothesis(’00)• MixtureofGaussians• MultipleKalmanEilters• Globallocalization,recovery

72 CSCE 790 Machine Learning in Robotics

Page 73: A brief intro to robots Spring 2018yiannisr/790/2018/Lectures/01-Robot.pdf · A brief intro to robots Spring 2018 Presentation: Marios Xanthidis . ... Walking Robots: RHex: Tripod

BayesianFilter:RequirementsforImplementa6on

•  Representationforthebelieffunction•  Updateequations•  Motionmodel•  Sensormodel•  Initialbeliefstate

73 CSCE 790 Machine Learning in Robotics