kalmar-nagy near-optimal dynamic trajectory generation and control of an omnidirectional vehicle

Upload: kalmarnagy

Post on 31-May-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    1/18

    Robotics and Autonomous Systems 46 (2004) 4764

    Near-optimal dynamic trajectory generation and controlof an omnidirectional vehicle

    Tams Kalmr-Nagy a,, Raffaello DAndrea b, Pritam Ganguly ba United Technologies Research Center, Systems and Controls Technology Group, 411 Silver Lane, MS 129-15,

    East Hartford, CT 06108, USAb

    Sibley School of Mechanical and Aerospace Engineering, Cornell University, Ithaca, NY 14853, USAReceived 17 January 2003; received in revised form 24 September 2003; accepted 22 October 2003

    Abstract

    This paper describes a computationally inexpensive, yet high performance trajectory generation algorithm for omnidi-rectional vehicles. It is shown that the associated non-linear control problem can be made tractable by restricting the set of admissible control functions. The resulting problem is linear with coupled control efforts anda near-optimal control strategy isshown to be piecewise constant (bangbang type). A very favorable trade-off between optimalityand computational efciencyis achieved. The proposed algorithm is based on a small number of evaluations of simple closed-form expressions and is thusextremely efcient. The low computational cost makes this method ideal for path planning in dynamic environments. 2003 Published by Elsevier B.V.

    Keywords: Trajectory generation; Path planning; Omnidirectional robot; Bangbang control

    1. Introduction

    Omnidirectional vehicles provide superior maneuvering capability compared to the more common car-like ve-hicles. The ability to move along any direction, irrespective of the orientation of the vehicle, makes it an attractiveoption in dynamic environments.TheannualRoboCup competition,where teams of fully autonomous robotsengagein soccer matches, is an example of where omnidirectional vehicles have been used in computationally intensive,dynamic environments [1,4,11,19] .

    Most papers on trajectory control of omnidirectional vehicles have dealt with relatively static environments[10,13] ; the trajectory control is essentially performed by rst building a geometric path and then by using feedback control to track the path. This strategy is effective when reaching the goal without collisions is much more importantthan time-optimality. In fast paced environments, however, the dynamic capabilities of the vehicles must be takeninto account. Muoz et al. [14] presented methods for planning mobile robot trajectories by considering kinematicand dynamic constraints on the motion of the vehicle. Fiorini and Shiller [8] reformulated the problem of obstacleavoidance subject to the robots dynamics and actuator constraints as an optimization problem, and solved it

    Corresponding author. E-mail address: [email protected] (T. Kalm ar-Nagy).URL: http://www.kalmarnagy.com.

    0921-8890/$ see front matter 2003 Published by Elsevier B.V.doi:10.1016/j.robot.2003.10.003

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    2/18

    48 T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764

    numerically using the steepest descent method. Faiz and Agrawal [6] recently proposed a trajectory planningscheme that takes the dynamics of the system into account, as well as inequality constraints. Watanabe et al. [20]demonstrated thatwitha resolved-acceleration typefeedbackfullomnidirectionalitycan be achievedwithdecoupledrotational and translational motion. A novel trajectory generation method based on a time-scaled articial potentialeld was put forth by Tanaka et al. [18] .

    The objective of this paper is to establish a real-time control strategy that will move the robot to a given location,with zero nal velocity, as quickly as possible, based on measurements of the vehicle position and orientation. Theresults of this paper can then be used as a basis for real-time trajectory generation in dynamic environments. Thesuccess of theCornellRoboCupteam is partlydue to theeffectiveness of theproposedalgorithm [4]. Theorganizationof the paper is as follows. Section 2 describes the kinematic and dynamic model of the omnidirectional vehicle.Section 3 shows that the translational and rotational degrees of freedom (DOF) of the vehicle can be independentlycontrolled by imposing constraints on the control efforts. Section 4 describes the construction of one-dimensionalminimum time and xed-time trajectories as well as the solution to the relaxed trajectory generation problem.Simulations are presented in Section 5 . The paper ends with some concluding remarks in Section 6 .

    2. Kinematic and dynamic modeling of the omnidirectional vehicle

    The omnidirectional drive consists of three sets of wheel assemblies equally spaced at 120 degrees from oneanother (see Fig. 1). Each of the wheel assembly consists of a pair of orthogonal wheels [16] with an active (thepropelling direction of the actuator) and a passive (free-wheeling) direction which are orthogonal to each other. Thepoint of symmetry is assumed to be co-incident with the center of mass (CM) of the robot.

    2.1. Vehicle kinematics

    The schematic arrangement of the wheel assemblies is shown in Fig. 2.

    The positions ( P 0i ) of these units are easily given (in the frame which is xed to the center of mass of the robot)with the help of the rotation matrix ( is the angle of counterclockwise rotation)

    R () =cos sin sin cos

    , (1)

    as

    P01 =L10

    , P02 =R23

    P 01 =L2

    1 3 , P03 =R43

    P01 = L2

    1 3 , (2)

    where L is the distance of the drive units from the CM. The unit vectors D i that specify the drive direction the ithmotor (also relative to the CM) are given by

    Di =1L

    R2

    P 0i , D1 =01

    , D2 = 12

    31

    , D3 =12

    31

    . (3)

    2.2. The motor characteristics

    In general, the optimal control problem for independent actuator driven wheels is treated with either boundedvelocity [10] or bounded acceleration [17] but not both. A reasonably accurate model that captures the torque T produced by a direct current (DC) motor is

    T = U , (4)

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    3/18

    T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764 49

    Fig. 1. Bottom view of the omnidirectional vehicle.

    Fig. 2. Geometry of the omnidirectional vehicle.

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    4/18

    50 T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764

    Fig. 3. Torque-speed characteristics of a DC motor.

    where U (V) is the voltage applied to the motor, and (1/s) is the angular velocity of the motor shaft. Inductance canbe neglected. The motor is characterized by the constants (N m/V) and (Nms). Fig. 3 shows typical torque-speedcharacteristics of a DC motor. These proles are also assumed to capture losses in the transfer of torques to thewheels. The salient feature of this model is that the amount of torque available for acceleration is a function of thespeed of the motor.

    With the no-slip condition, the force generated by a DC motor driven wheel is simply

    f =U v, (5)where f (N) is the magnitude of the force generated by a wheel attached to the motor, and v (m/s) is the velocity of the wheel. The constants (N/V) and (kg/s) can readily be determined from , , and the geometry of the vehicle.2.3. Equations of motion

    The vector P 0

    =x y T is the position of the CM in a Newtonian frame as shown in Fig. 2. The drive positions

    and velocities are given by

    r i =P 0 +R () P0i , (6)vi = P0 +R () P0i , (7)

    while the individual wheel velocities are

    vi =vTi (R () D i ). (8)Substituting Eq. (7) into Eq. (8) results in

    vi = P T0 R () D i +P T0iR T() R () D i . (9)The second term of the right hand side is just the tangential velocity

    P T0iRT() R () D i =L . (10)

    The drive velocities are thus linear functions of the velocity and the angular velocity of the robot

    v1v2v3

    =sin cos L

    sin3 cos

    3 L

    sin3 + cos

    3 + L

    xy

    . (11)

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    5/18

    T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764 51

    Linear and angular momentum balance can be written as3

    i=1f iR () Di =m P0 , (12)

    L3

    i=1f i =J , (13)

    where f i is the magnitude of the force produced by the ith motor, m is the mass of the robot and J is its moment of inertia.

    Using Eq. (5) together with the balance laws (12) and (13) and replacing the vi s from the kinematic relation (9)results

    3

    i

    =1

    (U i v i )R () D i =m P 0 , (14)

    L3

    i=1(U i v i ) =J . (15)

    This system of differential equations can be expressed as

    m xm yJ

    = P () U(t) 32

    xy

    2L 2(16)

    with

    P () = sin

    sin

    3 sin

    3 +

    cos cos3 cos

    3 +

    L L L

    , U(t) =U 1(t)U 2(t)

    U 3(t)

    . (17)

    We next introduce the new time and length scales

    T =2m3

    , =4mU max

    9 2, =

    4m 2 LU max9J 2

    , (18)

    and the new non-dimensional variables

    x

    =

    x

    ,

    y

    =

    x

    ,

    =

    ,

    t

    =

    t

    T ,

    U i (t)

    =

    U i (t)

    U max. (19)

    The non-dimensional equations of motion (after dropping the bars) become

    xy

    +xy

    2mL2

    J

    =q (, t), (20)

    where q (, t) is the control action

    q (, t) =P () U(t) (21)

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    6/18

    52 T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764

    with

    P () =sin sin

    3 sin

    3 +

    cos cos 3 cos 3 +1 1 1

    . (22)

    3. Restricting admissible controls

    Moving the robot from a point to another requires specifying the three voltages U i (t) . Clearly, real-time-optimalcontrol of the differential equation (20) is not feasible with modest computational resources. There have been severalattempts to overcome the complexity emerging from non-linearity and coupling. dAndra-Novel et al. [3] showedthat dynamic feedback linearization can lead to the simplication of the control problem of three-wheeled robots.

    Time-optimal trajectories were constructed by Balkcom and Mason [5] for differential drive robots. Faiz et al. [7]proposed a trajectory generation scheme for differentially at systems by replacing the non-linear constraints bylinear ones.

    The goal of this section is to nd a simplied, computationally tractable optimal control problem whose solutionyields feasible, albeit sub-optimal, trajectories. This will be achieved by restricting the set of admissible controls.

    The set of feasible voltages U is a cube given by

    U (t) = {U(t) ||U i (t) | 1}. (23)The set of admissible controls P () U (t) depends on the vehicle orientation . Since is responsible for the couplingof Eq. (20) , replacing this set with a set of -independent controls would greatly simplify the problem. The maximalsuch set is found by taking the intersection of all possible sets of allowable controls

    Q (t) = [0,2)P () U (t). (24)

    Obviously, any q (t)Q is a suitable replacement for the -dependent control action. In the following we give the

    explicit representation of Q .For a given , the linear transformation P () maps thecube U (t) into the tiltedcuboid(the set of allowable controls)

    P () U (t) . The matrix P () can be decomposed as a product of a rotation and a -independent linear transformation

    P () =R z () P (0), (25)where

    R z() =cos

    sin 0

    sin cos 0

    0 0 1

    , P (0) = 120

    3 3

    2 1 12 2 2

    . (26)

    The linear transformation P (0) maps cube U (t) into the tilted cuboid P (0) U (t) with a diagonal |q| 3 along theq axis (Fig. 4). Note that since the mapping P (0) is linear, the surface of the cube gets mapped onto that of thecuboid. The transformation R z() then rotates this cuboid about the q axis (or equivalently: about its diagonal).The problem is to nd the solid of revolution that is the intersection of all possible rotations R z() P (0) U (t) of thecuboid. This solid of revolution is characterized by (see Appendix A for details)

    q2x (t) +q2y (t) r 2(q (t)), (27)

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    7/18

    T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764 53

    Fig. 4. The mapping P (0) .

    Fig. 5. Restricted set for admissible controls.

    where the radius is

    r(q (t)) =3 |q(t) |

    2. (28)

    The solid of revolution is illustrated in Fig. 5, while its cross-section is shown in Fig. 6.With this result the equations of motion decouple

    x + x =qx(t), (29)y + y =qy (t), (30)

    +2mL2

    J =q(t). (31)

    While these equations are linear, the control efforts are coupled, i.e. the constraints

    q2x (t) +q2y (t) 3 |q(t) |

    2

    2

    , (32)

    Fig. 6. Cross-section of the admissible set.

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    8/18

    54 T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764

    |q(t) | 3 (33)have to be satised.

    In the remainder of the paper we focus our attention on controlling the translational DOFs. In particular, we willassume that the translational DOFs are controlled independently from the rotational DOF. The reasons for this aretwo-fold: (1) it substantially simplies the exposition and development of the results, and the results can readily beextended to encompass all three DOFs simultaneously; (2) we envision that the main use of the results in this paperwill be in applications where rotation control is independent of translation control.

    To decouple the -equation from those of the translational ones, we set

    |q(t) | 1. (34)Then the constraint for x and y becomes

    q2x (t) +q2y (t) 1. (35)Clearly other bounds on q could be chosen.

    4. Trajectory generation

    In this section we are concerned with nding a solution to the following system of linear equations:

    x + x =qx (t), (36)y + y =qy (t) (37)

    with the boundary conditions

    x( 0) =0, x(t f ) =xf , x( 0) =vx0 , x(t f ) =0, (38)y( 0) =0, y(t f ) =yf , y( 0) =vy0 , y(t f ) =0, (39)

    and the constraint on the control inputs

    q2x (t) +q2y (t) 1. (40)The nal time t f is the free variable that needs to be minimized. Note that the initial positions are assumed to be 0,since this can always be achieved with a translation. The nal velocities are specied to be zero. 1

    This system can also be written as

    z(t) =Az(t) +Bq (t), (41)where

    A =

    0 1 0 0

    0 1 0 00 0 0 1

    0 0 0 1, B =

    0 0 0 0

    1 0 0 0

    0 0 0 0

    0 1 0 0

    , z(t) =

    x(t)

    vx (t)

    y(t)

    vy (t)

    , q (t) =

    qx (t)

    qy (t)

    00

    (42)

    1 Note that specifying a non-zero nal velocity together with a nal position often leads to solutions that do not continuously depend on theboundary conditions, which is not a desirable property in most applications.

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    9/18

    T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764 55

    with the boundary conditions

    z(0) =

    0

    vx0

    0

    vy0

    , z(t f ) =

    xf

    0

    yf

    0

    (43)

    subject to

    q2x (t) +q2y (t) 1. (44)4.1. Minimum time trajectory

    It is shown by Athans and Falb [2] that the optimal control strategy is achieved when

    q2x (t) +q

    2y (t) =1, t [0, t f ]. (45)Further, the time-optimal control is given by ( denotes the Euclidean norm)

    q (t) = BTp (t)BTp (t)

    , (46)

    where p (t) is the solution to the adjoint problem

    p (t) = ATp(t). (47)The two components of the time-optimal control are thus

    qx (t)

    = 1 +et t f ( 2 1)

    ( 1 +et t f ( 2 1)) 2 +( 3 +et t f ( 4 3)) 2, (48)

    qy (t) = 3 +et t f ( 4 3)

    ( 1 +et t f ( 2 1)) 2 +( 3 +et t f ( 4 3)) 2, (49)

    where the parameters i , t f can be determined from the boundary conditions (38) and (39) . The solution to system(42) and (43) is

    z(t) =e At z(0) + t

    0eA(t ) Bq () d (50)

    with this, the boundary conditions are written as (note that the initial conditions are automatically satised)

    xf =vx0(1 et f ) + t f

    0(1 e t f )q x () d, (51)

    0 =et f vx0 + t f

    0e t f qx () d, (52)

    yf =vy0(1 et f ) + t f

    0(1 e t f )q y () d, (53)

    0 =et f vy0 + t f

    0e t f qy () d. (54)

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    10/18

    56 T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764

    An additional equation can be obtained from the fact that the Hamiltonian of the system (see [2]) is zero on [0 , t f ]

    H =1 +(A z(t) +Bq (t), p (t)) =1 2qx (t f ) 4qy (t f ) =0, (55)

    where (, ) denotes scalar product. This is equivalent to 22 + 24 =1. (56)

    Theintegrals in (51)(54) can be obtained in closed-form. Unfortunately, the resultingnon-linear equations (togetherwith (56)) have to be solved numerically for theve unknowns. Theauthors could notnda computationallyefcientmethod of solving this problem, both in the literature and using standard optimization packages.

    In order to gain numerical tractability, the problem is further relaxed by restricting the space of possible solutionsto

    |qx(t) | =constant , |qy (t) | =constant , (57)that is

    qz(t) =qz 0 < t t 1,qz t 1 < t t f ,

    (58)

    where z represents either x or y , and qz [1, 1] is a constant. It will be shown that these assumptions result inextremely computationally cheap solutions, and that the difference between the resulting t f and the optimal oneis small.

    The rest of the section is organized as follows: in Section 4.2 we construct optimal solutions separately for thetranslational degrees of freedom x and y without the coupling constraint (45). These separate solutions will ingeneral yield different nal times and so they must be synchronized. It will be shown in Section 4.3 that this canalways be achieved and that the solution will also satisfy the required constraint (45) .

    4.2. Bangbang trajectory

    We rst focus on solving the optimal control problem (36) and (38) with the constraint

    |qz(t) | =constant , (59)where z represents either x or y . This constant can always be taken as 1 by rescaling the equations. The minimumtime problem consists of nding a solution with as small a t f as possible. It can be shown (for example, [15] ),that this boundary value problem always has a solution, and that the control which minimizes the nal time t f consists of two piecewise constant segments of magnitude 1. This type of control strategy is commonly referred toas bangbang control. Koh and Cho [12] formulated a path tracking problem for a two-wheeled robot based on

    bangbang control. In our case, the following must be solved for q, t 1 and t 2:

    z + z =qz , 0 < t t 1, (60)z + z = qz , t 1 < t t 1 +t 2 = t f , (61)z(0) =0, z(t f ) =zf , z( 0) =v0 , z(t f ) =0. (62)

    Subject to the boundary conditions (62) , Eqs. (60) and (61) can be solved to yield

    z(t) =et (q z v0) +qz (t 1) +v0 , 0 t < t 1 ,

    qz(t f t et f t +1) +zf , t 1 t t f ,(63)

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    11/18

    T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764 57

    v(t) =(v 0 qz)et +qz , 0 t < t 1 ,

    (et f t 1)q z , t 1 t t f .(64)

    Position and velocity should be continuous at t

    =t 1, that is

    (q z v0)et 1 +qz (t 1 1) +v0 = et 2 qz +qz(1 +t 2) +zf , (65)(v 0 qz) et 1 +q =qz (et 2 1). (66)

    These conditions are equivalent to

    t 1 = t 2 cqz

    , (67)

    qz(et 2 )2 2qzet 2 +(v 0 qz)ec/q z =0, (68)where c

    =v0

    zf . The second equation can be solved as

    et 21,2 =1 sgn(q z) D, (69)where

    D =1 +ec/q zv0qz 1 . (70)

    We also require t 1 0, t 2 0 which will then providet 2 = ln(1 + D). (71)

    The following inequalities should hold:

    D 0, (72) D ec/q z 1. (73)If c/q z 0 then (72) has to be true, that is

    ec/q z 1 v0qz

    . (74)

    If c/q z 0 thenD (ec/q z 1)2 (75)

    should be satised, which is equivalent to

    ec/q z 1 v0qz

    . (76)

    Multiplying (74) and (76) by c/q z (and taking its sign into account) yields

    cqz

    (e|c/q z | 1) cqz

    v0qz

    , (77)

    which can be further simplied to

    sgncqz

    (e|c/q z | 1) v0qz

    . (78)

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    12/18

    58 T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764

    The sign of the rst segment ( 1) is thus given byqz =sgn(v 0 sgn(c)( e|c| 1)). (79)

    Once qz, t

    1and t

    2are determined, z(t) is given in (63) . The execution time for this trajectory (using (67) and (71) )

    is

    t f min := t 1 +t 2 =2 ln(1 + D) cqz

    . (80)

    4.3. Trajectory synchronization

    Generally, execution times for the minimum time problems for the different degrees of freedom will be different.To nd a solution to the boundary value problem (36)(39) , these solutions must be synchronized, that is t f x = t f yshould hold. If we could vary the execution time for the different degrees of freedom, this synchronization mightbe possible. The question naturally arises: does a bangbang trajectory exist for a xed-time t f > t f min? Since theboundary conditions are given, we only have control over the control effort. If the control effort

    q

    = |qz

    |is decreased

    one intuitively expects the execution time t f to increase. The following proposition is proved in Appendix B .

    Proposition 1. For all t f t f min there exists a q(0, 1] such that qz = q sgn

    v0

    q sgn(c)( e|c/ q| 1) , (81)

    satises (60) and (61) . Furthermore , the execution time is a continuous , strictly monotonously decreasing functionof q with lim q0 t f and t f (q =1) = t f min .

    This result means that reaching the desired nal position in the prescribed amount of time (provided that this timeis greater than the minimum time to reach this position with zero nal velocity) is always possible with a reduced

    effort bangbang control strategy. Note that the execution time depends on the boundary conditions, as well as onthe control effort, i.e.

    t f z (|qz|) = t f (z f , v z0 , q z). (82)With this notation, we want to nd the control efforts qx and qy for which

    t f x (|qx|) = t f y (|qy|). (83)Using the constraint (45) this is written as

    t f x (|qx|) = t f y (| 1 q2x |). (84)Since t f x (

    |qx

    |) is a strictly monotonously decreasing function on

    |qx

    | |(0, 1], t f y (

    |1

    q2x

    |) is strictly monoto-

    nously increasing there (and thus t f x (|qx|) t f y (| 1 q2x|) is strictly monotonously decreasing). Hence there existsa unique |qx| satisfying (84) . Furthermore, these control efforts satisfy the constraint (45) and thus yield the solutionof the boundary value problem (36)(39) and (45) . This solution will also depend continuously on the boundaryconditions (see Appendix B ) which ensures robustness to disturbances.

    5. Numerical solutions and simulations

    To demonstrate the computational efciency and robustness of the algorithm, simulations were performed (with = 1 N/V and = 1 kg/s). Position and velocity of the vehicle are assumed to be measured 60 times a second

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    13/18

    T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764 59

    (dt = 0.017 s). The inputs to the algorithm are initial and desired positions and velocities ( x0 , y 0 , v x0 , v y0 , x f , y f )and the outputs are the velocities ( vx , v y ) that should be reached in the next timestep. The inputs are rst translated(so that znew0 =0, z newf =zf z0) then non-dimensionalized (in (19) )). The control efforts are found by performingbisections on the qx axis to nd the zero of t f x (|qx|) t f y (| 1 q

    2x|) (this strictly monotonic quantity goes topositive innity for qx 0 and negative innity as qx 1, so care must be taken with the bounds). The bisectionalgorithm is stopped when the function value is less than d t . With qx , q y the positions and velocities after a timestep

    can be calculated as (see (63) and (64) ))

    z =edt (q z vz0) +qz (dt 1) +vz0 , (85)vz = (v z0 qz)edt +qz . (86)

    These non-dimensional quantities should then be scaled back to dimensional ones.A representative simulation is now discussed, where the following initial and nal conditions were used:

    x0 =y0 =0 m , x f =yf =1 m , (87)vx0 =0.2 m / s, v y0 = 0.5 m / s. (88)The position and velocity of the vehicle is calculated in (85) and (86) . To account for errors present in a real system

    (arising from slippage, measurement errors, etc.) noise was added to the actual position and velocity of the robot atthe end of every simulation step. The disturbances were modeled as white noise, with amplitude of 1 cm and 3 cm/sfrom a uniform distribution for positions and velocities, respectively. This was repeated until both coordinates werewithin 5 cm of the target position and the velocities were less than 5 cm/s in absolute value. The results are shown inFig. 7. This closed-loop trajectory is close to the trajectory generated at t =0 (the open-loop trajectory), showingthe robustness of the proposed method. Note that the most pronounced effect of the noise on the trajectory is in thevicinity of the destination. The position error coupled with the discretization effect gives rise to jerky motion. Thiscan be avoided for example by switching to open-loop control near the target, or by simply stopping.

    For this particular example, thedifference between theapproximate bangbangsolution andtheoptimal trajectory

    is very small. Fig. 8 shows the piecewise constant bangbang solution compared to the optimal one.To demonstrate how well the optimal solutions are approximated by our solutions, 1000 simulations were per-

    formed with randomly generated initial velocities ( 1 m/s in magnitude) and nal positions ( 3 m in magnitude)from uniform distributions. The difference between the optimal solution and the reduced effort bangbang solutionsis shown in Table 1 .

    For example, the optimal solution was 1% or more better than the bangbang solution in only 1.3% of the randomexamples; in none of the 1000 random examples did the optimal solution yield an improvement of more than 2.6%.The computational cost of the proposed algorithm is extremely low, approximately 300 FLOPS (oating pointoperations) for one timestep.

    Fig. 7. Simulation with noise.

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    14/18

    60 T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764

    Fig. 8. Comparison of optimal and approximate solution.

    Table 1Comparison of optimal and near-optimal solutions

    t f opt /t f is less than Percentage of problems

    99.9% 16.4

    99.5% 2.799% 1.397.4% 0

    6. Conclusions

    The main benet of the omnidirectional drive mechanism is a simplication of the resulting control problem,which greatly reduces the computation required for generating nearly optimal trajectories. The proposed algorithmsprovide an efcient, yet high performance, method of path planning. The algorithms are in general conservative;however, this is justied by theextremely reduced computational costs.The extremely low computational cost meansthat these nearly optimal trajectories can be used extensively as low overhead primitives by higher level decisionmaking strategies, allowing a large number of possible scenarios to be explored in real-time. For example, thesetrajectory primitives can readily be used as a basis for obstacle avoidance in randomized path planning algorithms(see for example, [9]).

    Appendix A

    Fig. 9 shows the cuboid. The radius of the largest contained solid of revolution at a xed q is simply the radius of the biggest circle that can be inscribed into the polygonal intersection of the cuboid and the plane q(t) =constant.(Fig. 9 also shows this circle at q(t) =1.) Because of the symmetry of the cuboid it is enough to study the plane

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    15/18

    T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764 61

    Fig. 9. Geometry of the cuboid.

    containing the line segment ab . It is easy to see that the radius sought is just the distance of this line from the qaxis at a given height. The segment ab connects point (0, 0, 3) and (0, 2, 1) so its equation is

    qy (t) = 12 (3 +q(t)), q x(t) =0, 3 q(t) 1. (A.1)The solid of revolution is thus characterized by

    q2x (t) +q2y (t) 3 |q(t) |

    2

    2

    = r 2(q (t)). (A.2)

    Appendix B

    To prove Proposition 1 we rst dene

    w = 12 q. (B.1)Then t 2 can be expressed as

    t 2 = 12 t f +cw. (B.2)With (67) and (B.2) , Eq. (66) can be recast as

    ecw =cosh ( 12 t f ) v0 et f / 2w. (B.3)Fig. 10 shows the left and right hand side of Eq. (B.4) as a function of w for the case of c > 0.

    Fig. 10. Solution to the xed-time problem.

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    16/18

    62 T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764

    Proposition 2. For all t f > t f min there exists a w that satises

    ecw =cosh ( 12 t f ) v0 et f / 2w, (B.4)

    and |w| > 1/ 2. Further , the execution time t f is a strictly monotonous function of q with lim t f as q 0.Proof. First we show that

    t f |c|, (B.5)or equivalently

    cosh ( 12 t f ) coshc2

    . (B.6)

    To see this, consider the inequalities

    t f = t 1 +t 2 t 2 , (B.7)t 1 = t 2 cq 0t 2 cq (B.8)

    if sgn(c/q) =1cq = |c| t 2 |c| t f |c| (B.9)

    if sgn(c/q) = 1t f = ln(1 + D) 2

    cq = ln(1 + D)

    2 + |c| |c| (B.10)since D 0.Using this we are able to show the existence of roots with

    |w

    |> 1/ 2.

    If v0 < 0 then the slope of the line

    cosh ( 12 t f ) v0 et f / 2w, t f > t f min (B.11)will decrease, so the w coordinate of its intersection with the exponential function will always be less than 1/ 2.If v0 > 0 then the line (B.11) will have one intersections with the exponential function e cw , for which

    w > w = 12 or w < w = 12 . (B.12)If ec/ 2 cosh (t f / 2) then the line (B.11) and ecw will have one intersection (since the positive slope of the line isdecreasing with increasing t f ) with

    w < 12 . (B.13)These arguments also shows that increasing |w| corresponds to increasing t f (that is |w| (|q|) is a monotonouslyincreasing (decreasing) function of t f ). The converse is also true: t f is a strictly monotonously increasing functionof q with lim t f as q 0. The c < 0 case can similarly be proved. This concludes the proof.

    References

    [1] M. Asada, H. Kitano (Eds.), RoboCup-98: Robot Soccer World Cup II, Lecture Notes in Computer Science, Springer, New York, 1999.[2] M. Athans, P.L. Falb, Optimal Control: An Introduction to the Theory and its Applications, McGraw-Hill, New York, 1966.[3] B. dAndra-Novel, G. Bastin, G. Campion, Dynamic feedback linearization of nonholonomic wheeled mobile robots, Proceedings of the

    IEEE International Conference on Robotics and Automation 3 (1992) 25272532.

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    17/18

    T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764 63

    [4] R. DAndrea, T. Kalmr-Nagy, P. Ganguly, M. Babish, The Cornell RoboCup Team, in: G. Kraetzschmar, P. Stone, T. Balch (Eds.), RobotSoccer World Cup IV, Lecture Notes in Articial Intelligence, Vol. 2019, Springer, Berlin, 2001, pp. 4151.

    [5] D. Balkcom, M. Mason, Time optimal trajectories for bounded velocity differential drive robots, Proceedings of the IEEE InternationalConference on Robotics and Automation 3 (2000) 24992504.

    [6] N. Faiz, S.K.Agrawal, Trajectory planningof robotswith dynamicsand inequalities,Proceedings of the2000 IEEEInternationalConferenceon Robotics and Automation 4 (2000) 39763982.[7] N. Faiz, S.K. Agrawal, R.M. Murray, Trajectory planning of differentially at systems with dynamics and inequalities, AIAA Journal of

    Guidance, Control, and Dynamics 24 (2) (2001) 219227.[8] P. Fiorini, Z. Shiller, Time optimal trajectory planning in dynamic environments, Journal of Applied Mathematics and Computer Science,

    Special Issue on Recent Development in Robotics 7 (2) (1997) 101126.[9] E. Frazzoli, M.A. Dahleh, E. Feron, Real-time motion planning for agile autonomous vehicles, AIAA Journal of Guidance, Control, and

    Dynamics 25 (1) (2002) 116129.[10] M. Jung, H. Shim, H. Kim, J. Kim, The miniature omni-directional mobile robot OmniKity-I (OK-I), Proceedings of the International

    Conference on Robotics and Automation 4 (1999) 26862691.[11] H. Kitano, J. Siekmann, J.G. Garbonell (Eds.), RoboCup-97: Robot Soccer World Cup I, Vol. 139, Lecture Notes in Computer Science

    #1395, Springer, New York, 1998.[12] K.C. Koh, H.S. Cho, A smooth path tracking algorithm for wheeled mobile robots with dynamic constraints, Journal of Intelligent and

    Robotic Systems 24 (1999) 367385.[13] K.L. Moore, N.S. Flann, Hierarchial task decomposition approach to path planning and control for an omni-directional autonomous mobile

    robot, Proceedings of the International Symposium on Intelligent Control/Intelligent Systems and Semiotics (1999) 302307.[14] V. Muoz, A. Ollero, M. Prado, A. Simn, Mobile robot trajectory planning with dynamics and kinematics constraints, Proceedings of the

    IEEE International Conference on Robotics and Automation 4 (1994) 28022807.[15] D.A. Pierre, Optimization Theory with Applications, 2nd Ed., Dover, New York, 1986.[16] F.G. Pin, S.M. Killough, A new family of omnidirectional and holonomic wheeled platforms for mobile robots, IEEE Transactions on

    Robotics and Automation 10 (4) (1994) 480489.[17] M. Renaud, J.Y. Fourquet, Minimum time motion of a mobile robot with two independent, acceleration-driven wheels, in: Proceedings of

    the 1997 IEEE International Conference on Robotics and Automation, 1997, pp. 26082613.[18] Y. Tanaka, T. Tsuji, M. Kaneko, P.G. Morasso, Trajectory generation using time-scaled articial potential eld, in: Proceedings of the 1998

    IEEE/RSJ International Conference on Intelligent Robots and Systems, vol. 1, 1998, pp. 223228.[19] M. Veloso, E. Pagello, H. Kitano (Eds.), RoboCup-99: Robot Soccer World Cup III, Lecture Notes in Computer Science, #1856 Springer,

    New York, 2000.[20] K. Watanabe, Y. Shiraishi, S.G. Tzafestas, J. Tang, T. Fukuda, Feedback control of an omnidirectional autonomous platform for mobile

    service robots, Journal of Intelligent and Robotic Systems 22 (3) (1998) 315330.

    Tams Kalmr-Nagy wasborn in Budapest,Hungary, in 1970.He received his M.S.degree in Engineering Mathematicsfrom the Technical University of Budapest and his Ph.D. degree in Theoretical and Applied Mechanics from CornellUniversity in 1995 and2002, respectively. Between 1994 and 2003 he held various research andteachingpositions at theUniversity of Newcastle-upon-Tyne (England), University of Trondheim (Norway), National Institute of Standards andTechnology, and Cornell University. Since October 2002, he is a Senior Research Engineer at the United TechnologiesResearch Center. He is an author or co-author of about 20 book chapters, journal and conference papers as well as arecipient of several awards. His research interests are in delay-differential equations, perturbation methods, non-linearvibrations, dynamics and control of uncertain and stochastic systems.

    Raffaello DAndrea was born in Pordenone, Italy, in 1967. He received the BASc. degree in Engineering Sciencefrom the University of Toronto in 1991, and the M.S. and Ph.D. degrees in Electrical Engineering from the CaliforniaInstitute of Technology in 1992 and 1997, respectively. Since then, he has been with the Department of Mechanicaland Aerospace Engineering at Cornell University, where he is an Associate Professor. He has been a recipient of theUniversity of Toronto W.S. Wilson Medal in Engineering Science, an IEEE Conference on Decision and Control beststudent paper award, an American Control Council O.Hugo Schuck Best Paper award, an NSF CAREER Award, and aDOD sponsored Presidential Early Career Award for Scientists and Engineers. He was the system architect and facultyadvisor of the RoboCup world champion Cornell Autonomous Robot Soccer team in 1999 (Stockholm, Sweden),2000 (Melbourne, Australia), and 2002 (Fukuoka, Japan), and third place winner in 2001 (Seattle, USA). His recentcollaborationwithCanadianartist Max Dean, TheTable, an interactive installation,appeared in theBiennaledi Veneziain 2001. It was on display at the National Gallery of Canada in Ottawa, Ontario, in 2002 and 2003, and is now part of its permanent collection.

  • 8/14/2019 Kalmar-Nagy Near-Optimal Dynamic Trajectory Generation and Control of an Omnidirectional Vehicle

    18/18

    64 T. Kalm ar-Nagy et al. / Robotics and Autonomous Systems 46 (2004) 4764

    Pritam Ganguly was born is Shillong, India in 1978. He received his B. Tech. from the Indian Institute of TechnologyChennai, in 1999. Currently he is a graduate student in the Department of Theoretical and Applied Mechanics at CornellUniversity.