d73-summerschool2

Upload: miguelfsr

Post on 02-Jun-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/10/2019 D73-SummerSchool2

    1/336

    Deliverable D 7.3

    Proceedings of the secondCO3AUVS Summer School

    Contract number: FP7- 231378 Co3 AUVs

    Cooperative Cognitive Control for Autonomous Underwater Vehicles

    The research leading to these results has received funding from the European Communitys SeventhFramework Programme (FP7/2007-2013) under grant agreement number 231378.

  • 8/10/2019 D73-SummerSchool2

    2/336

    Identification sheet

    Project ref. no. FP7-231378

    Project acronym Co3AUVs

    Status & version [Final] "1.0"Contractual date of delivery month 26

    Actual date of deliver y December 2011

    Deliverable number D 7.3

    Deliverable title Proceedings of the second CO3AUVS Summer School

    Nature Report

    Dissemination level PU

    WP contributing to the deliverable WP7

    WP / Task responsible Jacobs

    Editor Andreas Birk

    Editor address Jacobs UniversityRobotics, School of Engineering and Science

    Campus Ring 1, 28759 Bremen, Germany

    EC Project Officer Franco Mastroddi

    Keywords summer school

    Abstract (for dissemination): The second summer school on Cooperative Cognitive Control forAutonomous Underwater Vehicles (Co3-AUVs) was held from 11.07.2011 until 17.07.2011 at Ja-cobs University in Bremen, Germany. Just like the first Co3-AUVs summer school, it had a stronghands-on character in combination with lectures where the underlying foundations were taught.The lectures were given by different representatives from all project partners. The scope of thesummer school concentrated in its sessions on multi-robot aspects of higher level control includingcooperative 2D and 3D SLAM, navigation, and control.Participants received in addition the opportunity to work with state of the art marine robotics equip-

    ment and to engage in practical experiments. In addition, they were introduced to an Open Sourcemarine robotics simulator featuring among others 3D visualization and physics, which allowed themto continue work started in the summer school. The practical equipment used in the summer schoolincluded AUVs from the two partners Jacobs and GT in form of a Muddy Waters II and a Folagavehicle. The summer school also included a small workshop where the participants got the oppor-tunity to present their own research. This participant session was based on poster presentationsincluding discussions.

    List of annexes (if any)

    schedule and list of participants

    photo impressions of the event

    handout materials (slides and references)

    1

  • 8/10/2019 D73-SummerSchool2

    3/336

    Schedule

    and

    Participant List

  • 8/10/2019 D73-SummerSchool2

    4/336

  • 8/10/2019 D73-SummerSchool2

    5/336

    Participants

    NAME Affiliation1 Renato Caldas Porto University, Portugal

    2

    Enrique FernndezPerdomo

    University of Las Palmas de Gran Canaria,Spain

    3 Arun Ramakrishnan Katholieke Universiteit Leuven, Belgium

    4 Syed Riaz un Nabi Jafri Italian Institute of Technology , Genoa-Italy

    5 Gregory Skaltsas University of Plymouth

    6 Jorge Santos LAAS-CNRS

    7 Max Pfingsthorn Jacobs Univ.

    8 Heiko Blow Jacobs Univ.

    9 Ravi Rathnam Jacobs Univ.10 Sren Schwertfeger Jacobs Univ.

    11 Kaustubh Pathak Jacobs Univ.

    12 Narunas Vaskevicius Jacobs Univ.

    13 Andreas Birk Jacobs Univ.

    14 Giovanni Indiveri Uni Salento

    15 Pedro Aguiar IST / ISR

    16 Alessio Turetta Graaltech

    17 Enrico Clerici Graaltech

  • 8/10/2019 D73-SummerSchool2

    6/336

    Photo Impressions

  • 8/10/2019 D73-SummerSchool2

    7/336

  • 8/10/2019 D73-SummerSchool2

    8/336

  • 8/10/2019 D73-SummerSchool2

    9/336

  • 8/10/2019 D73-SummerSchool2

    10/336

    Slides

    from the Lecture Sessions

  • 8/10/2019 D73-SummerSchool2

    11/336

  • 8/10/2019 D73-SummerSchool2

    12/336

    Lecture layout

    1) Geometricaldescription ofelementary robot tasks

    2) Rotations and basicKinematics

    3) A Glimpse onUnderactuation andNonholonomy (kinematicscase)

    4) Dynamic Modeling ofMarine Vehicles

    5) Specific modelexamples for ControlDesign (both dynamicand kinematics)

    6) Discussion

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

    Main bibliography (books)[1] Richard M. Murray, Zexiang Liand S. Shankar Sastry, AMathematical Introduction toRobotic Manipulation, CRC Press,1994.

    [2] Jorge Angeles, Fundamentalsof Robotic Mechanical Systems:Theory, Methods and Algorithms,Third Edition, Springer, 2007.

    [4] Thor I. Fossen, Handbook of

    Marine Craft Hydrodynamics andMotion Control, ISBN9781119991496, John Wiley &Sons Ltd, UK, 2011

    [5] L. Sciavicco and B. Siciliano,Modelling and Control of RobotManipulators, Second Edition,Springer Verlag, 2000.

    [6] Gianluca Antonelli,"Underwater Robots - Motionand Force Control of Vehicle-Manipulator Systems", ISBN-13978-3-540-31752-4 SpringerBerlin Heidelberg New York,2006.

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    13/336

    Main bibliography (conferences)

    IEEE Oceans

    IEEE ICRA

    IEEE IROS

    IFAC MCMC

    IFAC CAMS

    IFAC NGCUV

    IFAC IAV

    ... many others

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    TC 7.2 Marine Systems

    http://www.wikicfp.com/cfp/

    TC 7.5 IntelligentAutonomous Vehicles

    marted 12 luglio 2011

    Main bibliography (journals)

    IEEE Oceanic

    Engineering

    IEEE TAC

    IEEE TRO

    Elsevier (IFAC) CEP

    Elsevier (IFAC)Automatica

    Elsevier Robotics and

    Autonomous Systems

    Sage IJRR

    Springer AutonomousRobots

    ... many (MANY) others

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    14/336

  • 8/10/2019 D73-SummerSchool2

    15/336

    Main motion tasks

    TrajectoryTracking

    Path Following

    Pose Regulation(parking)

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

    Basic Concepts

    x= f(x,u,t) State equation

    Output equationy=g(x,u,t)

    y=g(x, u)x

    =f

    (x, u

    ) Time invariant

    Dynamic System

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    16/336

    Basic Concepts

    f(x,u,t)

    +

    x0

    +u x g(x,u,t)y

    deterministic, nonlinear, time varying,non autonomous dynamical system

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

    Examples

    x=u

    y=x

    x=u

    y=x

    x1 = u cos

    x2 = u sin

    =

    y= (x1, x2)T

    x1

    x2

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    17/336

    Motion control problem

    x= f(x,u,t)

    e =xd x e= (x, xd,u ,t)

    xd =

    r(t) Trajectoryr0 Poser(s) Path

    Problem: find u such that e=0 is a stableequilibrium. The problem is different accordingto the knowledge of the state or output only.

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

    Modeling issues

    Motion control synthesis and system analysisrequires to have a proper mathematical model.

    f(x,u,t)

    +

    x0

    +u x g(x,u,t)y

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    18/336

  • 8/10/2019 D73-SummerSchool2

    19/336

    Fundamental notation

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    x

    z

    y

    x

    z

    y

    inertial

    body fixed

    r

    v = ddtr

    Free vectors are independent fromany reference frame, but...

    ... one has to be very careful aboutwhich frame is being used forcomputations.

    marted 12 luglio 2011

    A first sight at rotations

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    x

    z

    y

    x

    z

    y

    inertial

    body fixed

    r

    1

    R0 =1i0

    1

    j01

    k0IR

    33

    1r = 1R00r

    0r = 0R11r

    0r= 1r0 1

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    20/336

    Fundamental notation

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    x

    z

    y

    x

    z

    y

    inertial

    body fixed

    r v = ddtr

    0v = ddt 0r

    1v = 1R0d

    dt

    0r

    absolute velocity in theinertial frame

    absolute velocity in thebody frame

    marted 12 luglio 2011

    Rotations!

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    21/336

    A Glimpse on Underactuation andNonholonomy (kinematics case)

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    x= f(x,u,t) State equation

    Output equationy=g(x,u,t)

    dim x = dim u

    dim x > dim u

    dim x < dim u over actuated

    fully actuated

    under actuated

    marted 12 luglio 2011

    Holonomic == Integrable

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    Holonomic versus Nonholonomic constraints

    Holonomic constraint h(q) = 0 geometric constraint, i.e. reduc-tion of the degrees of freedom.

    Holonomic constraint h(q) = 0 hq (q)q = 0 a n integrable kine-matic constraint.

    x= vx

    y =vy

    q (x, y)

    T

    q2 =x2 + y2 =r2 hol. cons.

    2xx + 2yy = 0

    qTq = 0 integrable kin. cons.

    r

    x

    y

    v

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    22/336

    Nonholonomic vs holonomic

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    Example of integrability of a holonomic constraints

    2xx + 2yy = 0 = 2

    tt0

    xxd+ t

    t0yyd

    = 0 =

    xtx0

    xdx + yty0

    ydy =1

    2x2

    t + y2

    t (x2

    0+ y2

    0)= 0 =

    x(t)2 + y(t)2 = const. xx + yy = 0

    marted 12 luglio 2011

    Nonholonomic vs holonomic

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    Holonomic versus Nonholonomic constraints

    Nonholonomic constraint h(q, q) = 0 is a kinematic constraint thatcannot be integrated to yield a geometric constraint.

    A (first order) nonholonomic constraint does not reduce the geo-

    metrical degrees of freedom.

    x= u cos q(x , y , )T

    y =u sin v (u, )T

    =

    dydx

    = tan y cos x sin = 0

    h(q, q) =A(q)q =

    = (sin , cos , 0)(x, y, )T = 0

    x

    y u

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    23/336

    Nonholonomic vs holonomic

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    Pfaffian Kinematic Constraints

    A(q)q = 0

    integrable holonomic constraint

    nonintegrable nonholonomic constraint

    If the constraint is holonomic, q must satisfy some equation h(q) = 0

    and thus the degrees of freedom are reduced.

    If the constraint is nonholonomic, q is free and q must belong to

    Ker(A(q)), i.e. it is constrained.

    marted 12 luglio 2011

    Nonholonomic vs holonomic

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    Integrability of Kinematic Constraints

    Given the scalar constraint a(q)T q = 0 is it holonomic or nonholo-nomic? The answer is by no means trivial ...

    Holonomic means that there h(q) : Rn R : h(q) = 0 h(q) =ni=1

    hqi

    qi= 0 such that

    ni=1

    ai(q)qi = 0 n

    i=1

    h

    qiqi = 0

    In turn this requires that (q) : Rn

    R (integrating factor) suchthat

    h

    qj=(q)aj(q) j

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    24/336

    Nonholonomic vs holonomic

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    Integrability of Kinematic Constraints

    h

    qj=(q)aj(q) j

    Remembering that for aC2 function 2f

    xy=

    2fyx

    (Schwartz Theorem)

    2h

    qiqj

    = 2h

    qjqi

    = (q) ai(q)

    qj

    =(q) aj(q)

    qi

    i, j = 1, 2, . . . , n

    The test of integrability can be made checking the existence of the

    solution of a PDE (differential geometry tools).

    marted 12 luglio 2011

    Nonholonomic vs holonomic

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    Kinematic Models of Wheeled Mobile Robots

    v =J(q)q : qR n1

    A(q)q = 0 : A(q) R mn, m < n Rank(A) =m

    S(q) = [s1(q) s2(q) . . . snm(q)] Rn(nm) :

    {si(q) Rn1 i= 1, 2, . . . , n m} is a basis of ker(A)

    q =S(q)u is by construction a feasible velocity as

    A(q)S(q)u= 0 u R (nm)1 pseudovelocity

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    25/336

    Nonholonomic vs holonomic

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    Kinematic Models of Wheeled Mobile Robots

    As wheeled vehicles are affected by nonholonomic constraints, their

    kinematics can be always written as

    q =S(q)u

    with

    q R n1 : n# of degrees of freedom

    u Rp1 : p dimension of input vector

    p n : underactuated system

    marted 12 luglio 2011

    Nonholonomic vs holonomic

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    Ideal Unicycle

    q = (x , y , )T

    u= (v, )T

    x= v cos y =v sin =

    S(q) =

    cos 0sin 00 1

    q =S(q)u

    vt= 0 = y cos x sin = 0

    A(q) = ( sin , cos , 0) : A(q)S(q) = 0

    x

    yv

    vt

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    26/336

    Nonholonomic vs holonomic

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    Pioneer - Like Kinematics

    q = (x,y,)T

    u= (vR, vL)T

    q =

    cos /2 cos /2sin /2 sin /21

    2r 1

    2r

    u

    q =S(q)u

    vR =r R

    vL =r L

    L

    R

    v

    r

    marted 12 luglio 2011

    Dynamic Modeling of Marine Vehicles

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    http://www.itk.ntnu.no/ansatte/Fossen_Thor/

    Thor I. Fossen, Handbook of Marine

    Craft Hydrodynamics and MotionControl, ISBN 9781119991496, JohnWiley & Sons Ltd, UK, 2011

    Lecture Notes: TTK4190 Guidance and Controlhttp://www.itk.ntnu.no/fag/gnc/Wiley/slides.html

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    27/336

    Specific model examples for ControlDesign

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

    Specific model examples for ControlDesign

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    28/336

    Specific model examples for ControlDesign

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

    Specific model examples for ControlDesign

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    29/336

    Giovanni Indiveri,

    Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

    Giovanni Indiveri,Introduction to Marine Robot Modeling and Control

    marted 12 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    30/336

  • 8/10/2019 D73-SummerSchool2

    31/336

  • 8/10/2019 D73-SummerSchool2

    32/336

  • 8/10/2019 D73-SummerSchool2

    33/336

  • 8/10/2019 D73-SummerSchool2

    34/336

  • 8/10/2019 D73-SummerSchool2

    35/336

  • 8/10/2019 D73-SummerSchool2

    36/336

  • 8/10/2019 D73-SummerSchool2

    37/336

  • 8/10/2019 D73-SummerSchool2

    38/336

  • 8/10/2019 D73-SummerSchool2

    39/336

  • 8/10/2019 D73-SummerSchool2

    40/336

  • 8/10/2019 D73-SummerSchool2

    41/336

  • 8/10/2019 D73-SummerSchool2

    42/336

  • 8/10/2019 D73-SummerSchool2

    43/336

  • 8/10/2019 D73-SummerSchool2

    44/336

  • 8/10/2019 D73-SummerSchool2

    45/336

  • 8/10/2019 D73-SummerSchool2

    46/336

  • 8/10/2019 D73-SummerSchool2

    47/336

  • 8/10/2019 D73-SummerSchool2

    48/336

  • 8/10/2019 D73-SummerSchool2

    49/336

  • 8/10/2019 D73-SummerSchool2

    50/336

  • 8/10/2019 D73-SummerSchool2

    51/336

  • 8/10/2019 D73-SummerSchool2

    52/336

  • 8/10/2019 D73-SummerSchool2

    53/336

  • 8/10/2019 D73-SummerSchool2

    54/336

    Introduction to SLAM:Particle Filters and Pose Graph

    Max Pfingsthorn

    Jacobs University Bremenhttp://robotics.jacobs-university.de

    Tuesday, July 12, 2011

    Jacobs University 2

    SLAM problem definition

    Given an initially unknown environment, generate amapof the robots surroundings and localizethe robotin it at the same time.

    Simultaneous Localization and Mapping

    Probabilistically:Given sensor observations and control inputs, find themost likely pose and map at the same time.

    (xt ,m) = argmax

    xt,m

    p(xt,m|z1:t, u1:t)

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    55/336

    Jacobs University

    Potential SLAM Solutions

    (Extended/Unscented) Kalman Filter- Great if easily identifiable features are used in maps

    - Computationally infeasible with very large maps- Linearizes usually non-linear motion and measurement models

    Particle Filter- Generally applicable, even with occupancy grid maps

    - Suffers from particle starvation after long trajectories withoutloops, only remedy to use more memory

    Pose Graph

    - Conceptually simple, easy to implement- Locally linear, globally non-linear

    - Low memory requirement

    3

    Tuesday, July 12, 2011

    Jacobs University

    Potential SLAM Solutions

    (Extended/Unscented) Kalman Filter- Great if easily identifiable features are used in maps

    - Computationally infeasible with very large maps

    - Linearizes usually non-linear motion and measurement models Particle Filter

    - Generally applicable, even with occupancy grid maps

    - Suffers from particle starvation after long trajectorieswithout loops, only remedy to use more memory

    Pose Graph- Conceptually simple, easy to implement- Locally linear, globally non-linear

    - Low memory requirement

    4

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    56/336

    Jacobs University

    SLAM problem definition

    PDF can be factored into- Trajectory probability- Map Probability

    Map (and its parts, such as landmarks) conditionallyindependent given the robot path!

    Therefore, focus on estimating the robot path

    One particle m: (weight, pose, map)

    5

    p(x1:t,m|z1:t, u1:t) = p(x1:t|z1:t, u1:t)p(m|x1:t, z1:t)

    = p(x1:t|z1:t, u1:t)n

    p(mn|x1:t, z1:t)

    w

    [m]t , x

    [m]t , m

    [m]t

    Tuesday, July 12, 2011

    Jacobs University

    Particle Filter Algorithm

    6

    From: Probabilistic Robotics. S. Thrun, W. Burgard, and D. Fox. MIT Press 2005

    Input: Xt1, ut, ztXt= Xt= for m=1 to M do

    sample x

    [m]

    t p(xt|ut, x

    [m]

    t

    1)w

    [m]t

    =p(zt|x[m]t

    )

    Xt = Xt+x

    [m]t , w

    [m]t

    end

    for m=1 to M do

    draw index i with a probability w[i]t

    from Xt

    add x[i]t

    to Xtend

    return Xt

    Here, , , and are thecurrent pose, control input,

    and observation, respectively.

    utxt zt

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    57/336

    Jacobs University

    Particle Filter

    basic steps:- for each particle i

    sample normal distribution around registration result add sample to map in particle i

    - choose N particles from old particle set according to itsprobability

    Samples from posterior probability distribution withoutexplicitly computing it

    Many tradeoffs and improvements:- when to resample (second step) and when not to- particle representation (exploit common ancestry)- how many particles to use

    7

    Tuesday, July 12, 2011

    Jacobs University

    Map Representation

    Usually Occupancy Grid

    Each cell containsprobability of beingoccupied by something

    Corridors, doors vs walls,other objects, etc.

    Memory scales linearlywith covered area

    8

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    58/336

    Jacobs University

    Examples of 2D Occupancy Grids

    9

    http://radish.sourceforge.net

    Tuesday, July 12, 2011

    Jacobs University

    Examples of 3D Occupancy Grids

    10

    http://octomap.sourceforge.net

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    59/336

    Jacobs University

    Particle Filter

    Maintains estimateof probability

    density bycollection ofhypotheses

    Very easy to applyto occupancy grid

    One possible gridper particle(hypothesis)

    11

    An Efficient FastSLAM Algorithm for Generating Maps of Large-scale Cyclic Environments From Raw Laser RangeMeasurements. D. Haehnel, W. Burgard, D. Fox, and S. Thrun. IROS 2003

    Tuesday, July 12, 2011

    Jacobs University

    Potential SLAM Solutions

    (Extended/Unscented) Kalman Filter- Great if easily identifiable features are used in maps

    - Computationally infeasible with very large maps

    Particle Filter- Generally applicable, even with occupancy grid maps- Suffers from particle starvation after long trajectories without

    loops, only remedy to use more memory

    Pose Graph- Conceptually simple, easy to implement

    - Locally linear, globally non-linear- Low memory requirement

    12

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    60/336

    Jacobs University

    Pose Graph Intuition

    Robot moves through environment

    ... makes sensor observation and stores it

    ... compares it with previous observations

    ... relates new observation to previous ones

    ... stores graph of relations

    ... finds best fit of all observations given the relations

    Gives rise to a graph of pose relations

    13

    Tuesday, July 12, 2011

    Jacobs University

    Example

    14

    Example pose graph,local covariance matrices

    registrationresult = edge

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    61/336

    Jacobs University 15

    Pose Graph Data Structure

    Graph G = (E,V) where- Vertices: Places where sensor observations were recorded

    e.g. sonar scans, laser scans, camera frames, acoustic range readings 2D or 3D data leads to 2D or 3D maps

    - Edges: Relative pose estimates between vertices usually from registration, but also from odometry, DVL, IMU, GPS/Compass

    Can be 2D or 3D, does not change underlying data structure

    Primarily an alternative map representation

    More flexible than occupancy grid Occupancy grid / image mosaic easily obtainable by

    rendering sensor observations

    Tuesday, July 12, 2011

    Jacobs University

    Pose Graph Pros vs Cons

    No information loss

    Optimization can bedeferred

    Can be pruned easily

    Can contain diverse sensorobservations (evenincompatible ones)

    16

    May contain globallyinconsistent information

    Needs to be optimized

    May grow with time, notarea

    Occupancy grid or similar

    not readily available

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    62/336

    Jacobs University

    Pose Graph Optimization

    Full SLAM problem estimates trajectory and map.Map (and its parts, s.a. landmarks) conditionallyindependent given trajectory!

    Estimate trajectory only, map easily computed given

    17

    p(x1:t,m|z1:t, u1:t) = p(x1:t|z1:t, u1:t)p(m|x1:t, z1:t)

    = p(x1:t|z1:t, u1:t)n

    p(mn|x1:t, z1:t)

    x1:t

    x1:t = argmaxx1:t

    [p(x1:t|G)]

    p(x1:t|G) =

    (vi,vj ,ck)E

    p(xj xi|ck)

    x1:t

    Tuesday, July 12, 2011

    Jacobs University

    Pose Graph Optimization

    Constraint is a multivariate normal distribution:

    For numerical reasons, minimize negative log-probability

    18

    p(tj

    i

    |ck) = |2k|1/2 exp1

    2(tj

    i

    k)T1

    k

    (tj

    i

    k)ck

    lnp(x1:t|G) =

    (vi,vj ,ck)E

    ln|2k|

    1/2

    +

    1

    2

    (vi,vj ,ck)E(tji k)T1k (tji k)

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    63/336

    Jacobs University

    Pose Graph Optimization

    Dropping the normalizing constant, we get the sum ofsquared Mahalanobis distances

    All Pose Graph optimization methods use this costfunction

    Only difference is the specific non-linear optimizationmethod used, generally least-squares methods- e.g. Gauss-Seidel, Gauss-Newton,LevenbergMarquardt, etc.

    - also, more problem-specific Gradient Descent, or others

    19

    cost(x1:t|G) =

    (vi,vj ,ck)E

    (tji k)T1k (t

    ji k)

    Tuesday, July 12, 2011

    Jacobs University 20

    Lu & Milios Relaxation

    Minimizes the above squared Mahalanobis distanceincrementally, based on Newtons method

    where is the adjacency matrix of G, is theblock-diagonal matrix of all constraint covariances,and is the vector of residuals

    Big problem: Nonlinearity because of rotationalcomponents

    Therefore needs to be solved repeatedly Solves for global poses simultaneously

    x= (HTC1H)1HTC1rH C

    r

    Globally Consistent Range Scan Alignment for Environment Mapping. F. Lu and E. Milios. Autonomous Robots 4, 4.Springer, 1997

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    64/336

    Jacobs University

    Freses Multilevel Relaxation

    Very similar to Lu&Milios

    Solves it one vertex at a time, at different scales- Based on Gauss-Seidel relaxation

    21

    A multilevel relaxation algorithm for simultaneous localization and mapping. U. Frese, P. Larsson, and T. Duckett. IEEETransactions on Robotics 21, 2. IEEE Press, 2005

    Tuesday, July 12, 2011

    Jacobs University

    Olsons Relaxation with Grisettis Extensions

    Also computed one constraint at a time

    Parameterizes graph as a tree

    Does not involve inverting a matrix

    Modified Stochastic Gradient Descent- Stochastic: Randomly choose a constraint- Modified: All constraints will be chosen, in random order

    22

    A Tree Parameterization for Efficiently Computing Maximum Likelihood Maps using Gradient Descent. G. Grisetti, C.Stachniss, S. Grzonka, and W. Burgard. Proceedings of Robotics: Science and Systems 2007

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    65/336

    Jacobs University

    iSAM - Incremental Smoothing and Mapping

    Bayesian networkinterpretation of trajectory

    dependence on controlsand observations

    Variable reordering tomake global covariancematrix sparser

    Uses COLAMD/CSparselibrary as backend

    23

    iSAM: Incremental Smoothing and Mapping. M. Kaess, A. Ranganathan, F. Dellaert. IEEE Transactions on Robotics 24, 6.IEEE Press 2008

    Tuesday, July 12, 2011

    Jacobs University

    HogMan

    Uses a hierarchicalsubdivision of the graph,like Multilevel Relaxation

    before

    Errors and corrections areimplicitly linearized at theconstraint level

    Allows for better global

    convergence

    24

    Hierarchical Optimization on Manifolds for Online 2D and 3D Mapping. G. Grisetti, R. Kmmerle, C. Stachniss, U. Frese,and C. Hertzberg. ICRA 2010

    x[k1]i x

    [k1]j

    x[k]i x

    [k]je

    [k]ij

    G[k1]i G

    [k1]j

    Tuesday, July 12, 2011

  • 8/10/2019 D73-SummerSchool2

    66/336

  • 8/10/2019 D73-SummerSchool2

    67/336

    Cooperative Cognitive Control for Autonomous Underwater Vehicles (Co3AUVs)

    2nd Summer School, Bremen, Jul. 11-16, 2011

    Part I: Nonlinear Motion Controlof Marine Robotic Vehicles

    Antnio Pedro Aguiar

    http://users.isr.ist.utl.pt/[email protected]

    In collaboration with:

    Antnio M. Pascoal

    Institute for Systems and Robotics (ISR)

    Instituto Superior Tecnico (IST) Tech. Univ. of Lisbon, Portugal

    1. Practical motivation and mission scenarios

    Ocean Exploration: Scientific andTechnological Challenges.

    Brief Overview of Robotic Marine Vehicles

    GNC Architecture: basic building blocks

    Outline

  • 8/10/2019 D73-SummerSchool2

    68/336

    Outline

    2. Control: Linear versus Nonlinear

    (a brief review)

    When should we go nonlinear?

    Lyapunov theory of stability

    Input to State Stability (ISS)

    Lyapunov based analysis and design tools

    Outline

    3. Dynamic Positioning of Autonomous Vehicles

    Pose stabilization (position and attitude)

    4. Trajectory Tracking (TT) and Path Following (PF)

  • 8/10/2019 D73-SummerSchool2

    69/336

    Motivation:

    Ocean exploration: scientific challenges

    The need for marine robots: technicalchallenges

    Theory and Practice: single and multiplerobotic vehicle navigation and control (anoverview)

    Robots for Ocean Exploration

    Key Objectives:

    To better know planet Earth

    To promote the rationalexploitation of marine

    resources

    To ensure sustainable development

    Ocean Exploration and Exploitation

  • 8/10/2019 D73-SummerSchool2

    70/336

  • 8/10/2019 D73-SummerSchool2

    71/336

    A small surface terrestrial area: 2,400 km2A wide EEZ: 1,000,000 km2

    The Azores

    A chain of mountains at the bottom of the Atlantic ocean

    Azores

    The Middle Atlantic Ridge and the Azores

  • 8/10/2019 D73-SummerSchool2

    72/336

    The Azores Triple Junction (ATJ)

    Rainbow 2300 m

    Lucky Strike 1700 m

    Menez Gwen 850m

    ATJ: where three tectonic plates meet

    Hydrothermal fields

    The Azores Triple Junction (ATJ)

    The region harbours a great variety ofseamounts, active underwater volcanoes,chemosynthetic ecosystems, and extreme life forms (extremophyles)

    Black smoker

  • 8/10/2019 D73-SummerSchool2

    73/336

    Deep water hydrothermal vents

    Challenges:

    Accurate 3D-mapping,geological surveying, andmonitoring of biological andphysical-chemical activityat the vents andsurrounding areas

    High-resolution 3D mapping of ahydrothermal vent (Fuca Ridge[Yoerger et al., Woods Hole, USA. ] )using a Mesotech horizontal scanner.

    Perform data acquisition at

    the appropriate spatial

    and temporal scales!

    Acoustic image of hydrothermal vent

    Lucky Strike, August 2006

    ISR-IST / VICTOR ROV (IFREMER)

    Shallow-Water Hydrothermalism

    Hydrothermal activity at the D. Joo de Castro seamount, Azores

  • 8/10/2019 D73-SummerSchool2

    74/336

    Hydrothermal Activity

    Gas collection Detail of a gas bubble

    Collecting bacteria

    Depth: 35m

    Study the spatial extent of shallow water hydrothermalism.

    Determine the patterns of community diversity at the vents.

    Challenges

  • 8/10/2019 D73-SummerSchool2

    75/336

    Deep water hydrothermal vents

    In situ observations

    The need for technology

    Vents are very hard to study:

    Large depth (pressure is high)

    Highly corrosive environment

    Lack of optical visibility

    Navigation is a challenge (lack ofa GPS-like system)

    Submersibles: place human lifesat risk

  • 8/10/2019 D73-SummerSchool2

    76/336

    Monte da Guia,Faial Island, Azores

    Marine Reserves

    Algae Codium elisabethae. Algae Sargassum sp.

    Codium elisabethae(video image)

    Marine Reserves

  • 8/10/2019 D73-SummerSchool2

    77/336

    Inspection site(inside the crater)

    Mosaic

    Marine Habitat Mapping

    Challenges

    Afford scientistsadvanced instruments for automatic marine data

    acquisition over wide areas

    GIS (Geographical Information System) based habitat maps

    Science Technology

    Educated marine management

  • 8/10/2019 D73-SummerSchool2

    78/336

    Technological Challenges

    Afford marine scientistsINSTRUMENTS and METHODOLOGIES for

    Marine data acquisition(tri-dimensional world)

    Signal processing and datafusion

    Management andDissemination of Information

    Scientific and CommercialCommunities; Civilian

    Authorities

    Marine Board,European ScienceFoundation, Dec. 2000http://www.esf.org/marineboard

    Marine data acquisition

    Adequate 3-Dtemporal and spatial sampling

    Coastal areas

    Deep ocean

    Open sea

  • 8/10/2019 D73-SummerSchool2

    79/336

    Classical Methods

    Divers

    Divers - restricted coverage; dangerous.Hard to georeference data.

    Classical Methods

    Vessels (tool par excellence) -Poor maneuverability; poor 3-D + time coverage.

    High operation costs.

    ResearchVessels

  • 8/10/2019 D73-SummerSchool2

    80/336

    Semi-Classical Methods

    Manned Submersibles

    (direct observation ofthe deep sea)

    Nautile, IFREMER, FR

    LULA, Rebikoff Foundation,

    Azores, PT

    Limited ocean coverageJeopardize human lives

    High operation costs

    Glimpses of amazingundersea

    adventures

    Semi-Classical Methods

  • 8/10/2019 D73-SummerSchool2

    81/336

    Modern Methods

    ROVs Remotely Operated Vehicles

    TITANIC

    The small companion ROV

    (carrying an umbilical)

    Joint operation of ALVINand ROBIN

    Modern Methods

  • 8/10/2019 D73-SummerSchool2

    82/336

    ROVs Remotely Operated Vehicles

    Present trend:

    To free the end-user from thetedious task of direct vehicleoperation.

    Modern Methods

    Romeo (IT)

    Modern Methods

    AUVs - Autonomous UnderwaterVehicles (cut the umbilical!)

    High maneuverability

    Autonomy

    Automatic execution of tedious tasks

  • 8/10/2019 D73-SummerSchool2

    83/336

  • 8/10/2019 D73-SummerSchool2

    84/336

    GLIDER TECHNOLOGY

    Example of high resolution results obtainedFaial, Azores August 2008

    Seeing with acoustic eyes

    Multibeam sonar, Azores, PT

  • 8/10/2019 D73-SummerSchool2

    85/336

    Sampling networks fixed and movingunits (Divers, Floating devices, Moored

    equipment, Inhabited submersibles,Ocean vessels, ROVs, AUVs, ASCs,Benthic stations).

    Future Trends

    Sampling Networks

    Coriolis Initiative, FR

    Marthas Vineyard coastalobservatory, USA

    AUVs deployed to monitorepisodic events.

    Marine Board, ESC

    Marine Technoloy Frontiers forEurope, Brest, April 2001

    Key Issues: Communications, Information, Decision, Control.

  • 8/10/2019 D73-SummerSchool2

    86/336

    Lucky Strike1700 m

    Explore the Ocean

    Advanced technology is mandatory

    Future: Networked Mobile/Fixed

    Sensors (Moored systems, AUVs, ASCs,

    Gliders, Submersibles, Vessels, etc)

    Sea: the Ultimate Frontier

    Sampling Networks

    Key Issues: Communications, Information,

    Decision, Control.Stepping stones:

    Single and coordinated

    vehicle control

    The ASIMOV concept

    MAST-III, EC

    MONAZ, PT-USA

    Office of Naval Research

  • 8/10/2019 D73-SummerSchool2

    87/336

    RepresentativeAutonomous Underwater Vehicles (AUVs)

    AUTOSUB (SOC, UK)

    ARIES (NPS, USA)ODYSSEY, MIT

    Representative AUVs

    HUGIN (Norway)

    Ocean Explorer (FAU, USA)

    PTEROA (Japan)

    REMUS (WHole, USA)

  • 8/10/2019 D73-SummerSchool2

    88/336

  • 8/10/2019 D73-SummerSchool2

    89/336

    Tests with theMARIUS AUV

    SINES, Portugal

    The MARIUS AUV

    The INFANTE AUV

    2 back thrusters

    2 bow planes

    2 stern planes

    2 stern rudders

    Streamlined

    Designed to fly above the seabed

    No hovering capabilitiesTrajectory Tracking and Path

    Following required.

  • 8/10/2019 D73-SummerSchool2

    90/336

  • 8/10/2019 D73-SummerSchool2

    91/336

    2 back thrusters1 vertical thruster

    NO side thruster

    Bluff body Depth Control

    Point stabilization required

    The SIRENE ROV-LIKE AUV

    Tests with theSIRENEshuttle

    TOULON, France

    The SIRENE ROV-LIKE AUV

  • 8/10/2019 D73-SummerSchool2

    92/336

    Autonomous Surface Craft (ASC)

    2 back thrusters

    2 bow planes

    2 stern planes

    2 stern rudders

    AutoCat (AUV Lab, MIT)Protector (Israel)

    Atlantis

    (Stanford Univ. USA)

    ThrustersTypical configuration:

    2 Back Thrusters

    (underactuated)

    Streamlined

    . Course control in the presence of waves,

    currents, and wind

    . Trajectory Tracking and Path

    Following required.

    The DELFIM ASC

    Trajectory Tracking and Path

    Following required.

    2 back thrusters (common anddifferential modes)

  • 8/10/2019 D73-SummerSchool2

    93/336

    The DELFIMx ASC

    2 back thrusters (common and

    differential modes)

    Trajectory Tracking and Path

    Following required.

    The CARAVELA 2000 ocean vessel

    Designed to acquire ocean data autonomously.Large autonomy; operation over VERY large areas.

  • 8/10/2019 D73-SummerSchool2

    94/336

    CARAVELA 2000

    FCT / ADI Caravela Project (PT)

    Display model (scale 1/10)

    CARAVELA 2000

    The CARAVELA ASC

    Construction phase

  • 8/10/2019 D73-SummerSchool2

    95/336

    Technology Matured

    over the years

    New Challenges

    (Marine Science, Industry)

    The quest for mid-water columnhydrothermal vents, Azores, PT

    AUV Fleet Methane gradient descent

    Deep water hydrothermal vent

    Methane plume

  • 8/10/2019 D73-SummerSchool2

    96/336

  • 8/10/2019 D73-SummerSchool2

    97/336

    Very high-resolution / accurate bathymetric and visual maps

    are required

    ArchaeologicalData Fusion

    Multiple platforms (ASC, ROVs,ASVS)equipped with complementary sensors

    Preservation of cultural heritage /Virtual underwater trips (museums)

    ROMAN SHIPWRECK200 AD

    AMPHORAS

    Make data availableto

    a wide audience!

  • 8/10/2019 D73-SummerSchool2

    98/336

    Acoustic Positioning

    Underwater vehicle equipped with PINGER

    GIB System ACSA/ORCA(GPS Intelligent Buoys)

    re-engineered by IST

    surface buoys withAcoustic receivers(hydrophones)

    Multibeam Images

    High resolution15m

    Low resolution60 m

  • 8/10/2019 D73-SummerSchool2

    99/336

  • 8/10/2019 D73-SummerSchool2

    100/336

    Building blocks for a final demo

    Scouts

    DIVER

    Diver position estimation

    Optimal vehicleconfiguration

    Motion towardsdesired configuration

    Acoustics play a very important role

  • 8/10/2019 D73-SummerSchool2

    101/336

    The MEDUSA vehicles

    Robot companions

  • 8/10/2019 D73-SummerSchool2

    102/336

    Vehicle systems: basic building blocks

    Hull andEnergy

    Hull and Energy

    The INFANTEAUV

    (streamlined)

    The SIRENE underwater shuttle

    The CARAVELA

    and DELFIM ASCs

    (streamlined)

  • 8/10/2019 D73-SummerSchool2

    103/336

    Vehicle systems: a brief review

    Hull andEnergy

    Propulsion andActuators

    Propulsion and actuators

    Propellers(The MARIUS AUV)

    Speed ofRotation

    of the

    Propellers

    ThrustForce

  • 8/10/2019 D73-SummerSchool2

    104/336

    Propulsion and actuators

    Propellers(The SIRENEShuttle)

    Propulsion and actuators

    AUV Motion in the Vertical Plane

    LIFT (L1)

    Torque

    LIFT (L2)

    Speed - V

  • 8/10/2019 D73-SummerSchool2

    105/336

    Vehicle systems: a brief review

    Navigation

    Hull andEnergy

    Propulsion andActuators

    Navigation

    Where am I?

    Where am I going?

  • 8/10/2019 D73-SummerSchool2

    106/336

  • 8/10/2019 D73-SummerSchool2

    107/336

  • 8/10/2019 D73-SummerSchool2

    108/336

    {U}

    {B}

    Navigation

    Basic variables

    Position

    Orientation

    Linear Velocity

    Rotational Velocity

    SENSORS

    COMPUTER

    +NAVIGATION

    ALGORITHMS

    Linear Position, Linear Velocity

    Orientation, Rotational Velocity

    Navigation System

  • 8/10/2019 D73-SummerSchool2

    109/336

    THENAUTILE

    SUBMARINE :

    GUIDANCE and

    CONTROL

    AH! NOW IM ON THE

    RIGHT PATH!

    Guidance and Control

    Vehicle systems: a brief review

    Navigation

    Guidance andControl

    Hull andEnergy Propulsion andActuators

  • 8/10/2019 D73-SummerSchool2

    110/336

    Guidance andControl

    Simple controlobjective: drive the orientationerror (desired actual) to zero.

    desired orientation

    actual orientation

    Guidance andControl

    Computer +Control

    Algorithm

    Vehicle +HeadingSensor

    Desiredheading

    Measured heading(from navigation system)

    Heading error

    Stern

    rudder

  • 8/10/2019 D73-SummerSchool2

    111/336

    OTHER CONTROL SYSTEMS

    SpeedOrientation

    Depth

    Altitude above the seabed

    Key step in the design process:QUANTIFY THE VEHICLE BEHAVIOUR

    IN THE WATER (MODELING)

    HYDRODYNAMIC TESTS

    Guidance and Control

    SIRENE

    (scaled vehicle)

    CIRCULATING WATERTUNNEL

    VWS, BERLIM

    HYDRODYNAMIC TANK TESTS

  • 8/10/2019 D73-SummerSchool2

    112/336

    HYDRODYNAMIC TANK TESTS

    SIRENE

    coupled to aBENTHIC

    LABORATORY

    Present trend: Carry out tests with the REAL vehicle

    at sea; run identification experiments

    Guidanceand Control

    desired heading

    actual heading

    visibility distance

    GUIDANCE FOR PATH FOLLOWING

    Closest point

    on the Path

    Path

  • 8/10/2019 D73-SummerSchool2

    113/336

    Integrated Navigation, Guidanceand Control

    GUIDANCE

    NAVIGATION VEHICLE

    CONTROL

    Path to

    be followed

    Commanded

    heading

    Actual path

    Vehicle motion data

    Auxiliary data

    Vehicle systems: a brief review

    Navigation

    Guidance andControl

    Communications

    Hull andEnergy Propulsion andActuators

  • 8/10/2019 D73-SummerSchool2

    114/336

    Communications

    Underwater Communications very hard!

    Communications

    (multipath, failures, latency, asynchronous comms, reduced bandwidth...)

  • 8/10/2019 D73-SummerSchool2

    115/336

  • 8/10/2019 D73-SummerSchool2

    116/336

    Mission Sensors

    Sidescanunit

    Acoustic

    Profiler

    Major challenge: autonomous sensoroperation

    Echosounder data over the seamount

  • 8/10/2019 D73-SummerSchool2

    117/336

    Sidescan data / acoustic map building

    Mission Control

    Navigation

    MISSIONCONTROL

    Guidance andControl

    Communications

    Hull andEnergy Propulsion andActuators

    MissionSensors

  • 8/10/2019 D73-SummerSchool2

    118/336

    Mission Control

    Mission specifications

    Automatic CodeGeneration

    Real-Time VehicleSystem Control

    MissionPerformanceAssessment

    Mission Control

    Navigation

    MISSIONCONTROL

    Guidance andControl

    Communications

    Hull andEnergy Propulsion andActuators

    MissionSensors

    CONCERTED SYSTEM OPERATION

  • 8/10/2019 D73-SummerSchool2

    119/336

  • 8/10/2019 D73-SummerSchool2

    120/336

    Control Objectives

    Controller K

    Sensor

    Design a controller K that stabilizes the plantand such that r- is small in spite of external disturbances

    d, noise n,and plant parameter uncertainty (robuststability and performance)

    Linear versus Nonlinear control

    Controller K

    Sensor

    Modeling: Interactions with Control

    Linear or Nonlinear?

    Control Objectives

  • 8/10/2019 D73-SummerSchool2

    121/336

    The MARIUS AUV

    Vehicle is streamlined. Small angles of attack and

    sideslip: linearizations are justified

    Separate control systems (assuming lightinteraction between the horizontal and verticalplanes)

    Speed Control

    Horizontal Plane control (roll is left uncontrolled)

    Vertical Plane Control

    Motivating example

    AUV speed control

    Practical problem: design a control law so that the torpedo speed ufollows a desired speed envelope.

    First step: modeling

    External Thrust (generated by propeller)

    - Speed

    - Mass

    Hydrodynamic Damping:

    Linear + quadratic terms

    - Added mass

  • 8/10/2019 D73-SummerSchool2

    122/336

    Motivating example

    Newton Law

    - Sum of all external forces;

    External

    thrust force

    HydrodinamicDamping

    Added mass effectInertial term

    Nonlinear Control

    Control Objectives

    Controller K

    Sensor

    Design a controller K that stabilizes the plantand such that r-u is small in spite of external disturbancesd, noise n,and plant parameter uncertainty (robuststabilty and performance)

  • 8/10/2019 D73-SummerSchool2

    123/336

  • 8/10/2019 D73-SummerSchool2

    124/336

    A Linear Approximation

    Dependence on trimming condition

    LINEAR

    SYSTEM

    taking Laplace transforms (zero initial conditions)

    Linear Controller Design

    LINEAR

    SYSTEM

    Controller K

    Sensor

    Linear ControlLaw

  • 8/10/2019 D73-SummerSchool2

    125/336

    Loop Shaping golden rules for controlsystem design

    _

    Controller Plant

    r reference signal ( to be tracked by y)

    d external disturbance (referred to the output)

    n sensor noise

    e tracking error

    y output (controlled variable)

    u actuation signal

    _

    Controller Plant

    nominal model

    Bounded

    perturbations

    Goal: achieve robust stability and performance(by proper choice of K(s) a hard GAME)

    Loop Shaping golden rules for controlsystem design

  • 8/10/2019 D73-SummerSchool2

    126/336

    The SIRENE Shuttle

    Vehicle is a bluff body. May exhibit large angles ofattack and sideslip as well as considerable parameteruncertainy.

    No preferred motions for linearizations to be applied

    Nonlinear Design

    Non-preferred directions of motion(highly nonlinear models);

    underactuated vehicles

    Dealing with large hydrodynamicparameter uncertainty

    Globally attracting path followingcontrol laws; coordinated vehicle

    control

  • 8/10/2019 D73-SummerSchool2

    127/336

  • 8/10/2019 D73-SummerSchool2

    128/336

    Nonlinear Control: (a brief review)

    Lyapunov theory

    Input-to-State Stability (ISS)

    Lyapunov based design

    AUV speed control

    Dynamics

    NonlinearPlant

    Objective: generate T(t) so that track the reference speed

    Tracking error

    Error Dynamics

  • 8/10/2019 D73-SummerSchool2

    129/336

    Error Dynamics

    Nonlinear Control Law

    Tracking error tends to

    zero exponentially fast.

    Simple and elegant!

    Catch: the nonlinear dynamics are known EXACTLY.

    Key idea: i) use simple concepts, ii) deal withrobustness against parameter uncertainty.

    New tools are needed: LYAPUNOV theory

  • 8/10/2019 D73-SummerSchool2

    130/336

    (free mass, subjected to a simple motion resisting force)

    vfv

    v

    m/f

    0 v

    t

    v=0 is an equilibrium point; dv/dt=0 when v=0!

    v=0 is attractive

    (trajectoriesconverge to 0)

    0v

    How can one prove that the trajectories go to the equilibrium point

    WITHOUT SOLVINGthe differential equation?

    (energy function)

    V positive and bounded below by zero;

    dV/dt negative implies convergence

    of V to 0!

    dV((t))

    dt =

    V

    (t)

    .d(t)

    dt= m=f 2

  • 8/10/2019 D73-SummerSchool2

    131/336

    What are the BENEFITS of this seemingly strange approach to investigate

    convergence of the trajectories to an equilibrium point?

    V positive and bounded below by zero;

    dV/dt negative implies convergence of V to 0!

    vf(v)

    f a general dissipative force

    v0

    Q-I

    Q-III

    e.g. v|v|

    Very general form of nonlinear equation!

    State vector

    Q-positive definite

    2-D case

  • 8/10/2019 D73-SummerSchool2

    132/336

    1x2 2x11x1

    V positive and bounded below by zero;

    dV/dt negative implies convergence of V to 0!x tends do 0!

    2-D case

    ShiftingIs the origin always the TRUE origin?

    mg

    y

    y-measured from spring at rest

    Examine if yeq is attractive!

    Equilibrium point xeq: dx/dt=0

    Examine the

    ZERO eq. Point!

  • 8/10/2019 D73-SummerSchool2

    133/336

    Is the origin always the TRUE origin?

    Examine if xref(t) is attractive!

    xref(t) is a solution

    Examine the

    ZERO eq. Point!

    Shifting

    Control Action

    Nonlinear

    plant

    yu

    Static

    control law

    Investigate if 0is attractive!

  • 8/10/2019 D73-SummerSchool2

    134/336

  • 8/10/2019 D73-SummerSchool2

    135/336

  • 8/10/2019 D73-SummerSchool2

    136/336

    (the two conditions are required for

    Asymptotic Stability!)

    There are at least three ways of gaging the stability (of

    an equilibrium point of a system:

    Solve the differential equation (brute-force)

    Linearize the dynamics and examine the behaviour

    of the resulting linear system (local results for hyperbolic

    eq. points only)

    Use Lypaunovs direct method (elegant and powerful,

    may yield global results)

  • 8/10/2019 D73-SummerSchool2

    137/336

    then the origin is globallyasymptotically stable (GAS)

    dV(x)

    dt

  • 8/10/2019 D73-SummerSchool2

    138/336

    What happens when

    Is the situation hopeless? No!

    If the only trajectory of the system entirely

    contained in is the null trajectory. Then,the origin is asymptotically stable

    (Let M be the largest invariant setcontained in . Then all solutionsconverge to M. If M is the origin, theresults follows)

    Krazovskii-LaSalle

    y

  • 8/10/2019 D73-SummerSchool2

    139/336

    y

    f(.), k(.) 1st and 3rd quadrants

    f(0)=k(0)=0

    V(x)>0!

    y

    Examine dynamics here!

    Trajectory

    leaves

    unless x1=0!

    M is the origin.

    The origin is

    asymptotically

    stable!

  • 8/10/2019 D73-SummerSchool2

    140/336

    Similar results can be derived for the time-varying case

    However, K-LaSalle DOES NOT APPLY!

    and the equilibrium point

    Saved by Barbalats Lemma:

    Let: R+

    R be a uniformly continuous function and

    suppose that limtt0() dexists and is finite.

    Then, limt (t) = 0

    How can Barbalats Lemma be used?

    Uniform continuity of the derivate of V follows

    from boundedness of its second derivative.

    Explore in an intelligent manner to show that thetrajectories converge to the equilibrium point!

    Suppose there exists a uniformly continuous functionV

    :R

    R

    R

    satisfyingi) V(x, t) 0

    ii) dVdt

    0

    iii) dVdt

    is uniformly continuous

    Then, limtdV(x)dt

    = 0.

  • 8/10/2019 D73-SummerSchool2

    141/336

    (r) = tan1(r) (r) =r2

    Definition: A continuous function : [0, a) [0, ) is said to belong to class

    K if it is strictly increasing and (0) = 0. It is said to belong to class K ifa= and (r) as r .

    Comparison Functions

    (r, s) = r

    sr+ 1

    Definition: A continuous function : [0, a) [0, ) [0, ) is said to belongto class KL if, for each fixed s, the mapping (r, s) belongs to class K withrespect tor and, for each fixedr, the mapping (r, s) is decreasing with respect

    to s and (r, s) 0 as s .

    (r, s) =r2es

    Comparison Functions

  • 8/10/2019 D73-SummerSchool2

    142/336

  • 8/10/2019 D73-SummerSchool2

    143/336

    x= Ax+Bu, x(t0) =x0

    x(t) =eA(tt0)x(t0) +

    tt0

    eA(t)Bu() d

    x(t) ke(tt0)x(t0) +kB

    supt0t

    u()

    Linear time-invariant system

    Solution

    eA(tt0) ke(tt0)

    If A is Hurwitz

    Thus, it follows that

    x= Ax+Bu, x(t0) =x0

    x(t) =eA(tt0)x(t0) +

    tt0

    eA(t)Bu() d

    x(t) ke(tt0)x(t0) +kB

    supt0t

    u()

    Linear time-invariant system

    Solution

    eA(tt0) ke(tt0)

    If A is Hurwitz

    Thus, it follows that

    Converges to zero

  • 8/10/2019 D73-SummerSchool2

    144/336

    x= Ax+Bu, x(t0) =x0

    x(t) =eA(tt0)x(t0) +

    tt0

    eA(t)Bu() d

    x(t) ke(tt0)x(t0) +kB

    supt0t

    u()

    Linear time-invariant system

    Solution

    eA(tt0) ke(tt0)

    If A is Hurwitz

    Thus, it follows that

    Bounded andproportional to thebound of the input

    x

    x= 3x+ (1 + 2x2)u

    However, ifx(0) = 2 and u(t) = 1, the solution is

    x(t) =3 et

    3 2et

    whenu= 0, x= 0 is GES

    Does this hold for a general nonlinear system ?

    ux= f(t,x,u)

    In what conditions?

    Is it sufficient to have GUAS of the unforced system?

    NO!

    Unbouded (finite escape time)!

  • 8/10/2019 D73-SummerSchool2

    145/336

    x(t) (x(t0), t t0) +

    supt0t u()

    Definition [ISS] The system x = f(t,x,u) is said to be input-to-state stableif there exist functions KL and Ksuch that for any initial state x(t0)and any bounded input u(t), the solution x(t) exists for all t t0 and satisfies

    xu

    x= f(t,x,u)

    ISS

    x(t) (x(t0), t t0) +

    supt0t

    u()

    - For any bounded input u(t), the state x(t) is bounded

    - Ifu(t) 0 as t =x(t) 0 as t

    - As t increases, the state will be ultimately bounded by a class K functionof suptt0 u(t), that is, lim supt x(t) (suptt0 u(t))

    xux= f(t,x,u)

    Remarks:

    - For u(t) = 0 = x(t) (x(t0), t t0)

    The unforcedsystem is GUAS

  • 8/10/2019 D73-SummerSchool2

    146/336

    TheoremLet V : [0, ) Rn R be a continuously differentiable functionsuch that

    1(x) V(t, x) 2(x)

    V

    t +

    V

    xf(t,x,u) W3(x), x (u)> 0

    (t,x,u) [0, ) Rn Rm, where 1, 2 K, K, and W3(x) > 0.Then, the system is ISS with =1 2 .

    How can we prove ISS ?

    x(t) (x(t0), t t0) +

    supt0t

    u()

    xu

    x= f(t,x,u)

    x= d|x|x+u

    V =1

    2x2

    V =d|x|x2 +xu

    =(1 )d|x|x2 d|x|x2 +xu, 0<

  • 8/10/2019 D73-SummerSchool2

    147/336

    x1 =f1(x1, x2)

    x2 =f2(x2, u)

    x1(t) 1(x1(t0), t t0) +1

    supt0t x2()

    x1 is ISS with respect to input x2

    x2 is ISS with respect to input u

    x2(t) 2(x2(t0), t t0) +2

    supt0t

    u()

    Cascade system

    x1x2u

    x1 =f1(x1, x2)

    x2 =f2(x2, u)

    Cascade system

    x1x2u

    x=

    x1x2

    x1 ISS + x2 ISS = coupled system is ISS

    x(t) (x(t0), t t0) +

    supt0t

    u()

  • 8/10/2019 D73-SummerSchool2

    148/336

    w1

    w2

    x2 x1

    if1 2(r)< r, r >0, then the interconnected system is ISSwith respect to state x= (x1, x2) and input w= (w1, w2)

    x1(t) 1(x1(t0), t t0) +1

    supt0t

    x2()

    +w1

    supt0t

    w1()

    x2(t) 2(x2(t0), t t0) +2

    supt0t

    x1()

    +w2

    supt0t

    w2()

    ISS Small-Gain Theorem

    x2 x1

    x1 = f1(t,x1,x2,w1)

    x2 = f2(t,x1,x2,w2)

    w1

    w2

    x2 x1

    x1(t) 1(x1(t0), t t0) +1

    supt0t

    x2()

    x2(t) 2(x2(t0), t t0) +2

    supt0t

    u()

    if1 2(r)< r, r >0, then the interconnected system is ISSwith respect to state x= (x1, x2) and input w= (w1, w2)

    ISS Small-Gain Theorem

    x2 x1

    x1 = f1(t,x1,x2,w1)

    x2 = f2(t,x1,x2,w2)

    if1(r) =1r, 2(r) =2r

    Then 12

  • 8/10/2019 D73-SummerSchool2

    149/336

    x(t) max

    (x(t0), t t0),

    supt0t

    u()

    Restrict ISS to a neighborhood x(t) B(0) and to a restrictedset of perturbations supt0t u() R

    Variants of ISS

    Local ISS

    ISS can be viewed as an L L stability property

    How about a (weaker) L2 L stability property?

    x(t) (x(t0), t t0) +1 t

    t0 2(u())d

    K L, 1, 2K

    Variants of ISS:

    x(t) (x(t0), t t0) +

    supt0t

    u()

    integral ISS (iISS)

  • 8/10/2019 D73-SummerSchool2

    150/336

    y

    Definition [IOS]The system is said to be input-to-output-stable (IOS) if thereexist functions KL and K such that for any initial state x(t0) andany bounded input u(t), the solution y(t) exists for all t t0 and satisfies

    y(t) (x(t0), t t0) +

    supt0t u()

    u

    IOS

    x = f(x, u)

    y = h(x)

    The small-gain theorem can be easily generalized do IOS systems

    y

    Definition [IOSS] The system is said to be input-output-to-state-stable (IOSS)if there exist K L and 1, 2K such that for any initial state x(t0) andany bounded input u(t), the following inequality holds for all t t0

    x(t) (x(t0), t t0) +1

    supt0t

    u()

    +2

    supt0t

    y()

    u

    IOSS

    x = f(x, u)

    y = h(x)

    This is a nonlinear version of zero detectability

  • 8/10/2019 D73-SummerSchool2

    151/336

    How can we explore the Lyapunov tools forcontrol design?

    M+ C() + D() + g() =

    =J()

    = (u, v, w, p, q, r)

    = (u,v,w,p,q,r)

    = (x , y, z, , , )

    Goal: Design a state feedback control so that (t) converges to adesired position and attitude d (Pose stabilization)

    Fully actuated AUV/ROV

    Model:

  • 8/10/2019 D73-SummerSchool2

    152/336

    M+ C() + D() + g() =

    =J()

    e(t) = (t) d e = = J()

    V(, e) = 12

    T M + eT KPe

    Model:

    Error dynamics:

    Control Lyapunov function:

    V(, e) = 1

    2

    T M +eT KPe

    V = T M+ eT KPe

    V = T

    M+ JT() KPe

    V = T

    D() g() +JT() KPe

    T C()

    = JTKPe(t) KD+ g()

    Computing the time derivative with respect to the trajectory of the system...

    Assign a feedback law...

    V = T [D() +KD] 0

    We havestability

  • 8/10/2019 D73-SummerSchool2

    153/336

    E = {(, e) R12 := 0}

    Can we prove Asymptotic Stability ?

    Use LaSalles invariance principle...

    limt

    (t) =d

    The largest invariant set M in E is the origin, thus we have asymptotic stability!

    Therefore....

    0 = JT() KPe

    x1 = x21 x

    31+x2

    x2 = u

    V1 =1

    2x21

    V1 =x1(x21 x

    31+x2) =x

    41+x1(x

    21+ x2)

    x2 =(x1) =x21 x1

    V1 =x41 x

    21

    Backstepping

    Example

    Consider

    Choose

  • 8/10/2019 D73-SummerSchool2

    154/336

    z2 =x2 (x1) =x2+x21+x1

    V2 =V1+1

    2z22

    V2 = x1(x31 x1+z2) +z2(u+ (2x1+ 1)(x

    31 x1+z2))

    = x41 x21+z2((u+ (2x1+ 1)(x

    31 x1+z2) +x1)

    u= (2x1+ 1)(x31 x1+ z2) x1 z2

    V1 =x41 x

    21 z

    22

    x= 0 is GAS

    Backstepping

    Consider the augmented Lyapunov

    Choose

    x1 = x2+ f1(x1)

    x2 = x3+ f2(x1, x2)...

    xi = xi+1+fi(x1, x2, . . . , xi)

    xn = fn(x1, x2, . . . , xn) +u

    z1 = x1

    z2 = x2 (x1)

    V1 = 1

    2z21

    (x1) =x1 f1(x1)

    Recursive application of Backstepping

    Strict-feedback form

    Define

  • 8/10/2019 D73-SummerSchool2

    155/336

  • 8/10/2019 D73-SummerSchool2

    156/336

    zi+1 = xi+1 i(z1, , zi)

    Vi = 1

    2(z21 +z

    22+ +z

    2i)

    zi = zi+1+i(z1, , zi) + fi(z1, , zi)

    Vi = z21 z

    2i1+zi1zi+zi(zi+1+i

    z1, , zi) + fi(z1, , zi)

    i

    z1, , zi) =zi1 zi fi(z1, , zi)

    zi = zi1 zi+zi+1

    Vi = z21 z

    2i +zizi+1

    Recursive application of Backstepping

    i-th step:

    Set

    zn= fn(z1, , zn) +u

    u= n(z1, , zn) =zn1 zn fn(z1, , zn)

    Vn=1

    2(z21+ +z

    2n)

    zn = zn1 zn

    Vn = z21 z

    22 z

    2n

    Recursive application of Backstepping

    last step:

    Choose

  • 8/10/2019 D73-SummerSchool2

    157/336

    Consider the following system

    x1 =x2x2 =h(x) +g(x)u

    whereh, g are unknownnonlinear functions and g(x)g0 >0,x.Goal: Design a state-feedback control law to stabilize the origin.

    Idea: Design a control law that restrict the motion of the system to the

    manifold or surfaces= a1x1+x2 = 0, a1 >0

    Note that the motion on the manifold s= 0 satisfies

    x2 =a1x1 x1 =ax1 x= (x1, x2)0

    and furthermore the motion is independent ofh andg!

    Now the question is how can we bring the trajectory to the manifold?

    How can we deal with parametric uncertainty?

    Let

    V = 1

    2s2

    and therefore

    V =ss

    =s(a1x1+ x2)

    =s(a1x2+h(x)) +sg(x)u

    Suppose thata1x2+h(x)g(x)

    (x), x 2 and assume that (x) is known.Then,

    V |s|(x)g(x) +su

    =g(x)|s|[(x) + sgn(s)u]

    Letu= (x)sgn(s) with (x) (x) +0, 0 >0.

    V g(x)|s|0 g00|s|

  • 8/10/2019 D73-SummerSchool2

    158/336

    LetW =

    2V =|s| (Note thatu = u2

    u)

    The upper right-hand derivative is given by

    D+W = 2V

    2

    2V=

    V

    W g00 W

    W

    By the comparison lemma

    W(s(t))W(s(0)) g00t

    Thus, the trajectory reaches the manifold s= 0 in finite time.Moreover, once it reaches the manifold we have V

    g00

    |s

    |= 0, which means

    that it cannot leave from it.

    In summary, for the example above, the sliding mode control strategy is com-posed by two phases:

    1. reaching phase: the trajectory starting off the manifolds = 0 move toward

    it and reach it in finite time.2. sliding phase: the motion is confined to the manifold s = 0 and the

    dynamics of the system are represented by the reduced-order model x1=a1x1.

    Remark: The control lawu= (x)sgn(s) is called a sliding mode control law.Note that it is robust with respect to uncertainty on h and g. We only need toknow the upper form (x).

    Furthermore, ifa1x2+h(x)

    g(x)

    k1, x D then u = ksgn(s), k > k1 and if kcan be chosen arbitrarily large, it can achieve semi-global stability.

  • 8/10/2019 D73-SummerSchool2

    159/336

  • 8/10/2019 D73-SummerSchool2

    160/336

    x= f(x, ) +u, x R

    V =1

    2x2

    u= f(x, ) x V =x2

    Rp unknown parameter vector

    u= f(x,) x

    V =x

    f(x, ) +u

    Adaptive nonlinear control (a simple approach)

    Example:

    Consider

    If the parameter vector is known...

    If not, choose

    f(x, ) = (x)

    f(x, ) =a1x+a2x2

    f(x, ) =a1x+a2x2 = [a1a2]

    xx2

    V =x2 +xf(x, ) f(x,)

    Suppose that f(x, ) can be written in the form

    Adaptive nonlinear control (a simple approach)

    e.g.

  • 8/10/2019 D73-SummerSchool2

    161/336

  • 8/10/2019 D73-SummerSchool2

    162/336

  • 8/10/2019 D73-SummerSchool2

    163/336

    Speed, Heading, and Depth Control

    Bottom Following (Terrain Contouring)

    Point Stabilization, Hovering, Manipulation

    Trajectory tracking and Path Following

    Motion Control Problems

    Point Stabilization

    Objective: steer an underwater vehicle to a target point,with a desired orientation

  • 8/10/2019 D73-SummerSchool2

    164/336

  • 8/10/2019 D73-SummerSchool2

    165/336

  • 8/10/2019 D73-SummerSchool2

    166/336

    Point StabilizationRegulation of a nonholonomic dynamic wheeled mobile robot

    Step 5. Switching control law

    When e= 0 do

    Point StabilizationDynamic positioning of an underactuated AUV

    Objective

    Derive a feedback control law for u and r to regulate the AUV to a desired

    target point in the presence of a constant, unknown ocean current disturbance

    and parametric model uncertainty.

    In the presence of ocean currents, the problem

    of regulating an underactuated AUV to a

    desired point with a an arbitrary desired

    orientation does not have a solution.

    Possible behaviors:

    The vehicle will diverge from the desired target position.The controller will keep the vehicle moving around a neighborhood of the

    desired position, trying insistently to steer it to the given point, and

    consequently inducing an oscillatory behavior.

  • 8/10/2019 D73-SummerSchool2

    167/336

    e=

    (x xd)2 + (y yd)2

    x xd =e cos(+)

    y yd =e sin(+)

    += tan1

    (y yd)

    (x xd)

    Point StabilizationDynamic positioning of an underactuated AUV

    A. Pedro Aguiar and Antnio M. Pascoal,Dynamic Positioning and Way-Point Tracking ofUnderactuated AUVs in the Presence of Ocean Currents.

    International Journal of Control, Vol. 80, No 7, pp. 1092-1108, July 2007.

    Point Stabilization

    A. Pedro Aguiar and Antnio M. Pascoal,Dynamic Positioning and Way-Point Tracking ofUnderactuated AUVs in the Presence of Ocean Currents.

    International Journal of Control, Vol. 80, No 7, pp. 1092-1108, July 2007.

  • 8/10/2019 D73-SummerSchool2

    168/336

    Point Stabilization with currents

    Vc

    A. Pedro Aguiar and Antnio M. Pascoal,Dynamic Positioning and Way-Point Tracking ofUnderactuated AUVs in the Presence of Ocean Currents.

    International Journal of Control, Vol. 80, No 7, pp. 1092-1108, July 2007.

    Way-Point Tracking with Currents

    Vc

    A. Pedro Aguiar and Antnio M. Pascoal,Dynamic Positioning and Way-Point Tracking ofUnderactuated AUVs in the Presence of Ocean Currents.

    International Journal of Control, Vol. 80, No 7, pp. 1092-1108, July 2007.

  • 8/10/2019 D73-SummerSchool2

    169/336

  • 8/10/2019 D73-SummerSchool2

    170/336

    Reference-tracking versus path-following

    Additional design of freedom

    The reference-tracking problem is subjected to the limitations

    imposed by the unstable zero-dynamics.

    The path-following problem is not subjected to these limitations

    The freedom to design a timing law is a major advantage of path-

    following over reference tracking.

    A. Pedro Aguiar, Joo P. Hespanha, and Petar Kokotovi,Path-Following for Non-Minimum PhaseSystems Removes Performance Limitations.

    IEEE Transactions on Automatic Control, Vol. 50, No. 2, pp. 234-239, Feb. 2005.

    due to side-slip the velocity of the hovercraft is not tangent to the trajectory

    Goal: force the hovercraft to track acircular trajectory (black)

    Position tracking of an underactuated Hovercraft

  • 8/10/2019 D73-SummerSchool2

    171/336

    Problem statement

    Consider an underactuated vehicle modeled as a rigid body subject to external

    forces and torques

    Kinematics

    Dynamics

    Trajectory-tracking problem

    Given a trajectorypd:[0,)R3, we want the tracking errorp(t)-pd(t)

    to converge to a neighborhood of the origin that can be madearbitrarily small

    The solution should be robust with respect toparametric modeling uncertainty

    later extended to path following

    due to side-slip the velocity of the hovercraft is not tangent to the trajectory

    Goal: force the hovercraft to track a

    circular trajectory (black)

    Position tracking of an

    underactuated Hovercraft

  • 8/10/2019 D73-SummerSchool2

    172/336

    Step 1. Coordinate Transformation

    Controller design

    tracking error inbody frame

    Step 2. Convergence of eerror only in position!

  • 8/10/2019 D73-SummerSchool2

    173/336

    Step 4.Backstepping for z2

    Controller design

    2nd control signalhas been assigned

  • 8/10/2019 D73-SummerSchool2

    174/336

    What happens if there is parametric modeling uncertainty?

    Coefficient of viscous friction assumed used by the controller is 10% of the real value

    Closed-loop system still stable but considerable performance degradation

    Model parameter uncertainty

    Supervisory control

    supervisor

    process

    controller 1

    controller n

    yu

    w

    bank of candidatecontrollers

    measuredoutput

    controlsignal

    exogenousdisturbance/

    noiseswitching signal

    Key ideas:1. Build a bank of alternative controllers

    (one for each possible value/range of the unknown parameter)

    2. Supervisor places in the feedback loop the controller that seems

    more promising based on the available measurements

  • 8/10/2019 D73-SummerSchool2

    175/336

    Estimator-based supervisions setup

    Processis assumed to be in a family

    parametric uncertainty

    For each admissible process model Mp,

    there is one candidate controller Cpthat provides adequate performance.

    processucontrolsignal measuredoutput

    w exogenousdisturbance/noise

    How to determine which admissible model matches the real process?

    y

    Estimator-based supervisor

    epsmallprocess is

    likely to be Mp

    should

    use Cp

    Multi-estimator

    ypestimate of the process output ythat would be correct if the process was Mpepoutput estimation error that would be small if the process was Mp

    Processis assumed to be in family

    process is

    Mp,pPcontroller Cpprovides

    adequate performance

    Decision logic:

    multi-

    estimatoru

    measuredoutput

    control

    signal

    y

    y

    decision

    logic

    switchingsignal

    +

    +

    Certainty equivalence inspired

  • 8/10/2019 D73-SummerSchool2

    176/336

    Multi-estimator for the vehicle model

    Process model

    Family of estimator equations (pP)

    estimation errors

    scalar positive functions

    The correct estimation error ep*satisfies

    uncertainty in the dynamic equations through: M, J, fv, f

    convergence to zero

    small integral norm

    Multi-estimator

    ypestimate of the process outputythat would be correct if the process was Mpepoutput estimation error that would be small if the process was Mp

    Estimator-based supervisor

    Certainty equivalence inspired

    Processis assumed to be in family

    process is

    Mp,pPcontroller Cpprovides

    adequate performance

    Decision logic:

    multi-

    estimator

    measuredoutput

    controlsignal

    decision

    logic

    switchingsignal

    +

    +

    epsmallprocess is

    likely to be Mpuse Cp

    u

    y

    y

    A stability argument cannot be

    based on this because typically

    process is Mpepsmall

    but not the converse

  • 8/10/2019 D73-SummerSchool2

    177/336

    Estimator-based supervisor

    Multi-estimator

    ypestimate of the process outputythat would be correct if the process was Mpepoutput estimation error that would be small if the process was Mp

    Processis assumed to be in family

    process is

    Mp,pPcontroller Cpprovides

    adequate performance

    Decision logic:

    multi-

    estimator

    measuredoutput

    controlsignal

    decision

    logic

    switchingsignal

    +

    +

    overall state

    is small

    overall system

    is detectable

    through ep

    Certainty equivalence inspired, but formally justified by detectability

    detectable meanssmall epsmall state

    epsmall use Cpprocess is

    likely to be Mp

    u

    y

    y

    Detectability property

    Using the original Lyapunov function and

    in L1constantpositiveconstant

    overall state

    is small

    overall system

    is detectable

    through ep

    detectable meanssmall epsmall state

    epsmall use Cp

    in L1in L2

    When epis small, all signals remain bounded

    & e converges to ball of radius proportional to

    process is

    likely to be Mp

  • 8/10/2019 D73-SummerSchool2

    178/336

  • 8/10/2019 D73-SummerSchool2

    179/336

    Path Following

    Inspired by the work of Claude Samson et al. for wheeled robots

    A. Micaelli and C. Samson (1992). Path following and time-

    varying feedback stabilization of a wheeled robot. In Proc.International Conference ICARCV92, Singapore.

    . Useforward motionto make the robot track adesired speed profile.

    . Compute the closest pointon the path.

    . Compute theSerret-Frenet (SF)frame at that point.

    . Use rotational motionto align the body-axis with the SFframe and reduce the distance to closest point to zero.

    Path Following (control strategy)

    Rabbit movingalong the path

    path curvature at

    control signals

    exogenoussignal

    - Lyap. func.

    - approach angle

    - do back stepping to deal with the dynamics

  • 8/10/2019 D73-SummerSchool2

    180/336

    guide (rabbit) movingalong the path a mind

    of its own (control variable)

    This will makethe vehicle follow the path

    1. Drive the distance from Q to the rabbit to zero;2. Align the flow frame with the Serret-Frenet(align total velocity with the tangent to the path).

    Path Following (AUV)

    Path-following

    Consider an underactuated vehicle modeled as a rigid body subject to

    external forces and torques

    Kinematics

    Dynamics

    Path-following problem

    Given a geometric path {pd()R3 : [0,)} and speed assignment vr()

    R, we want

    the position to converge and remain inside a tube centered around thedesired path than can be made arbitrarily thin, and

    satisfy (asymptotically) the desired speed assignment, i.e., vras

    t

  • 8/10/2019 D73-SummerSchool2

    181/336

    The Sirene AUV developed

    for Deep Sea Intervention on

    Future Benthic Laboratories

    Goal: force the underactuated

    AUV to track a desired

    helix trajectory

    Tracking and path-following ofan underwater vehicle (3-D space)

    Path-following

    Goal Given a geometric path {pd()R

    3 : [0,)} and speed assignment vr() R, we want

    the position to converge and remain inside a tube centered around the desired path

    than can be made arbitrarily thin, and

    satisfy (asymptotically) the desired speed assignment, i.e., vras t

    Define

    speed error

    Choosing

    Same conclusions as before

  • 8/10/2019 D73-SummerSchool2

    182/336

    Simulation results

    0 50 100 150 200 250 300-5

    0

    5

    time [s]

    r

    oll[degree]

    0 50 100 150 200 250 300-20

    0

    20

    time [s]

    pitch[degree]

    0 50 100 150 200 250 300-200

    0

    200

    time [s]

    yaw[degree]

    0 50 100 150 200 250 300-5

    0

    5

    time [s]

    r

    oll[degree]

    0 50 100 150 200 250 300-20

    0

    20

    time [s]

    pitch[degree]

    0 50 100 150 200 250 300-200

    0

    200

    time [s]

    yaw[degree]

    Trajectory tracking Path-following

  • 8/10/2019 D73-SummerSchool2

    183/336

  • 8/10/2019 D73-SummerSchool2

    184/336

  • 8/10/2019 D73-SummerSchool2

    185/336

  • 8/10/2019 D73-SummerSchool2

    186/336

  • 8/10/2019 D73-SummerSchool2

    187/336

  • 8/10/2019 D73-SummerSchool2

    188/336

  • 8/10/2019 D73-SummerSchool2

    189/336

  • 8/10/2019 D73-SummerSchool2

    190/336

    Observability Issues for

    Cooperative Marine RobotsGiovanni Indiveri,

    Dipartimento Ingegneria Innovazione,Universit del Salento, Lecce, Italy

    [email protected]

    2nd Co3-AUVs Summer School, Bremen, 11.-17.07.2011

    mercoled 13 luglio 2011

    Lecture layout1) Introduction to the

    concept of Observability

    2) The LTI (Linear TimeInvariant) case

    3) Observability andLocalization forCooperative Marine

    Robots

    4) Some CO3AUVs

    results

    5) Discussion

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    191/336

    Main bibliography

    Wilson J. Rugh, "Linear System Theory", Prentice Hall,1993

    CO3AUVs results

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    mercoled 13 luglio 2011

    Lets start!

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    Stop me any timeQuestions are welcomeAlways remember that the devil isin the details

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    192/336

    Basic Concepts

    f(x,u,t)

    +

    x0

    +u x g(x,u,t)y

    deterministic, nonlinear, time varying,non autonomous dynamical system

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    mercoled 13 luglio 2011

    Basic Concepts

    f(x,u,t)

    +

    x0

    +u x g(x,u,t)y

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    x=f(x,u,t) State equation

    Output equationy=g(x,u,t) What preventsfrom being known?x

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    193/336

    Basic Concepts

    f(x,u,t)

    +

    x0

    +u x g(x,u,t)y

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    x(t) =x0+

    t

    0

    f(x(), u(), )d

    mercoled 13 luglio 2011

    Basic Concepts

    f(x,u,t)

    +

    x0

    +u x g(x,u,t)y

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    Two distinct (initial) states are said to be

    indistinguishable (i.e. non observable) if for thesame input they produce the same output.

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    194/336

    The Linear Case

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    x=Ax+Bu

    y=Cx+Du

    A IRnn B IRnp

    C IRmn D IRmp

    A IRnn B IRn1

    C IR1n D IR

    Single Input SingleOutput SISO case

    Usually m < n, i.e. the output is smaller than thestate.

    mercoled 13 luglio 2011

    The Linear Case

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    x=Ax+Bu

    y=Cx+Du

    x(t) =eA(tt0)x0+

    tt0

    eA(t)Bu()d

    y(t) =CeA(tt0)x0+ tt0

    CeA(t)B+D(t )

    u()d

    M IRnn

    eMt :=+l=0

    Ml tll!

    nn

    Mt

    l=0

    l

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    195/336

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    x=Ax+Bu

    y=Cx+Du

    x(t) =eA(tt0)x0+ tt0

    eA(t)Bu()d

    y(t) =CeA(tt0)x0+

    tt0

    CeA(t)B+D(t )

    u()d

    +

    x0

    +u xy

    A

    B +

    +

    C

    D

    +

    +

    mercoled 13 luglio 2011

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    Discrete time version

    x(k+ 1) =Ax(k) +Bu(k)

    y(k) =Cx(k) +Du(k)

    x=Ax+Bu

    y=Cx+Du

    x x((k+ 1)T) x(kT)

    T =Ax(kT) + Bu(kT)

    x((k+ 1)T) = (Inn+ AT) x(kT) + BT u(kT)

    (Inn+ AT) A

    BT B

    kT k

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    196/336

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    Discrete time versionx

    (k

    + 1) =Ax

    (k

    ) +Bu

    (k

    )y(k) =Cx(k) +Du(k)

    +

    x0

    +u x

    yA

    B

    +

    + C

    D

    +

    +1

    mercoled 13 luglio 2011

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    x(k+ 1) =Ax(k) +Bu(k)

    y(k) =Cx(k) +Du(k)

    x(1) =Ax(0) +Bu(0)

    x(2) =Ax(1) +Bu(1) =A2x(0) +ABu(0) +Bu(1)

    x(3) =Ax(2) +Bu(2) =A3x(0) +A2Bu(0) +ABu(1) +Bu(2)

    ...

    x(n 1) =An1x(0) +n2

    l=0

    AlBu(n 2 l)

    x(n) =Anx(0) +n1l=0

    AlBu(n 1 l)

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    197/336

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    x(n) =Anx(0) +n1l=0

    AlBu(n 1 l)

    Cayley - Hamilton Theorem

    A IRmm

    p() = det ( Imm A)

    then

    p(A) = 0mm

    p() =m +m1k=0

    ckk = 0:

    A IRnn = An = n1k=0

    ckAknn n

    1

    k=0

    kk

    mercoled 13 luglio 2011

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    x(k+ 1) =Ax(k) +Bu(k)

    y(k) =Cx(k) +Du(k)

    x(n 1) =An1

    x(0) +

    n2l=0

    Al

    Bu(n 2 l)

    y(0) =Cx(0) + Du(0)

    ...

    y(n 1) =CAn1x(0) +n

    2l=0

    CAlBu(n 2 l) + Du(n 1)

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    198/336

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    x(k+ 1) =Ax(k) +Bu(k)

    y(k) =Cx(k) +Du(k)

    y(0)

    Du(0) =Cx(0)...

    y(n 1) n2l=0

    CAlBu(n 2 l) Du(n 1) =CAn1x(0)

    y(0) =Cx(0)

    y(1) =CAx(0)

    ...

    y(n 1) =CAn1x(0)

    mercoled 13 luglio 2011

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    y(0) =Cx(0)

    y(1) =CAx(0)

    ...

    y(n 1) =CAn1

    x(0)

    Assume y to bea scalar (SI), i.e.

    Y = (y(0),y(1), . . . ,y(n 1))T IRn1

    O =

    C

    CA..

    .CAn1

    IRnn

    Y = O x00

    (Kalman) Observabilitymatrix

    C IR1n

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    199/336

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    Y = O x00O =

    C

    CA...

    CAn

    1

    IR

    nn

    If all pairs of (initial) states are distinguishablethe system is said to be completely observable.

    The system is completely observable iff theobservability matrix has full rank.

    mercoled 13 luglio 2011

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    Y = O x00O =

    C

    CA...

    CAn1

    IRnn

    The system is completely observable iff theobservability matrix has full rank.

    xo = O1 Y

    xo = (OT

    O)1 OTYFor multi-output systems:

    O IRmnn

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    200/336

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    Y = O x00O =

    C

    CA...

    CAn

    1

    IR

    nn

    The system is completely observable iff theobservability matrix has full rank.

    Assumex1 =x2 such that

    Y1= Ox1 and Y2= Ox2

    with Y1= Y2

    O (x1 x2) = 0

    Absurdmercoled 13 luglio 2011

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    Y = O x00O =

    C

    CA...

    CAn1

    IR

    nn

    kerO= unobservable states

    Unobservable states represent information thatcannot possibly be recovered based on the model,input and output only (structural obstruction).

    Its not a matter of how good your filter is ... itssimply an ill posed problem that does not admitany solution.

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    201/336

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    Canonical observability form

    xuo

    xo

    =

    Auo A12

    0 Ao

    xuo

    xo

    +

    B1B2

    u

    y =

    0Co

    xuo

    xo

    + Du

    mercoled 13 luglio 2011

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    xuo

    xo

    =

    Auo A12

    0 Ao

    xuo

    xo

    +

    B1B2

    u y=

    0Co

    xuo

    xo

    + Du

    +

    +u

    y

    +

    + +

    +B1

    Ao

    Co

    D

    xo(0)

    xo

    +

    ++

    +

    xuo(0)

    Auo

    B2

    12

    +

    xo

    xuo

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    202/336

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    xuo

    xo

    =

    Auo A12

    0 Ao

    xuo

    xo

    +

    B1B2

    u y=

    0Co

    xuo

    xo

    + Du

    +

    +u

    y

    +

    + +

    +

    B1

    Ao

    Co

    D

    xo(0)

    xo

    +

    ++

    +

    xuo(0)

    Auo

    B2

    12

    +

    xo

    xuo

    mercoled 13 luglio 2011

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    Example

    J+=ki+l

    L didt

    +Ri+k=V

    d

    dt

    i

    =

    0 1 00 /J k/J

    0 k/L R/L

    i

    +

    0 00 1

    1/L 0

    V

    l

    y=C xC= (1 0 0)

    DC motor

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    203/336

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    J+=ki+l

    Ldi

    dt+Ri+k=V

    d

    dt

    i

    =

    0 1 00 /J k/J

    0 k/L R/L

    i

    +

    0 00 1

    1/L 0

    V

    l

    y=C xC= (1 0 0) Absolute encoder ....

    O =

    C

    CA...

    CAn1

    = 1 0 00 1 0

    0 /J k/J

    in state space form:

    mercoled 13 luglio 2011

    Giovanni Indiveri,Observability Issues for Cooperative Marine Robots

    J+=ki+l

    Ldi

    dt+Ri+k=V

    Tachometric dynamo or relative encoder

    ddt

    i

    = 0 1 00 /J k/J 0 k/L R/L

    i

    + 0 00 1

    1/L 0

    Vl

    y=C xC= (0 1 0)

    O =

    C

    CA

    ...CAn1

    = 0 1 0

    0 /J k/J 0 [(/J)2 k2/(JL)] [(k)/J2 kR/(JL)]

    kerO= unobservable states unobservable

    mercoled 13 luglio 2011

  • 8/10/2019 D73-SummerSchool2

    204/336

    Giovanni Indiveri,

    Observability Issues for Cooperative Marine Robots

    J+=ki+l

    Ldi

    dt+Ri+k=V