Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control:...

24
EE392m - Spring 2005 Gorinevsky Control Engineering 13-1 Lecture 13 – Programmed Control Optimal control: programmed, synthesis Rocket ascend Grade change in process control – Example QP optimization Flexible dynamics: input shaping, input trajectory – example Robotics path planning

Transcript of Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control:...

Page 1: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-1

Lecture 13 – Programmed Control

• Optimal control: programmed, synthesis• Rocket ascend • Grade change in process control

– Example

• QP optimization • Flexible dynamics: input shaping, input trajectory

– example

• Robotics path planning

Page 2: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-2

Open-loop (programmed) control• Control u(t) found by solving an

optimization problem. Constraints on control and state variables.

• Used in space, missiles, aircraft FMS – Mission planning – Complemented by feedback corrections

• Sophisticated mathematical methods were developed in the 60s-70s to overcome computing limitations.

UX ∈∈→

=

uxtuxJ

tuxfx

,min),,(),,(&

)(* tuu =Optimal control:

Page 3: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-3

Optimal Control Synthesis

• Example: Time optimal control – 2nd order system

• Toy problems, building blocks• MPC - will discuss in Lecture 14

1|| ≤=

uux&&

x

x&

1−=u

1=u

• Find optimal control program for any initial conditions• At any point in time apply control that is optimal for the

current state. This is feedback control!– Optimality principle: an optimal trajectory part is an optimal trajectory

• Example: LQ control – Linear system; Quadratic index– Analytically solvable problem

Page 4: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-4

Optimal Control• Formulate performance index and constraints • Programmed control

– compute optimal control as a time function for particular initial (and final) conditions

x

t

0)(0)(

min)(

≤=→

XgXhXJMinimize:

subject to:NLP:

• Modern practical approach– Discretize trajectory and control – Solve using a Nonlinear Programming

(NLP) software package– Use sparse matrix arithmetics

Page 5: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-5

Ascend trajectory optimization • Rocket launch vehicles

– fuel (payload) optimality– orbital insertion constraint– flight envelope constraints– booster drop constraint

Kourou, French Guiana

Page 6: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-6

Trajectory optimization

• Nonlinear constrained optimization problem• Nonlinear Programming (NLP): not QP, not LP

– Iterative optimization methods: Gradient, Newton, Levenberg-Marquardt, SQP, SSQP

– Need supervision by a human

• Recall: QP, LP are guaranteed to always produce a solution if the problem is feasible

- Can be possibly used on-line, inside a control loop

Page 7: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-7

Optimization of Process Transitions

• Process plants manufacture different product varieties (grades)• Need to optimize transitions from grade to grade

Page 8: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-8

Product Grade Change

• The requirement: to change from manufacturing grade A to grade B with minimum off-spec production.

• The implementation: using detailed models of process and operating procedures.

• The results: optimum setpointtrajectories for key process controls during the changeover, resulting in minimum lost revenue.

Polymerization process

Page 9: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-9

Grade change control example• Example process model: chemical reactor

0 20 400

0.02

0.04

0.06

0.08

0 20 40-0.2

-0.1

0

0.1

0.2

uy1

y2

internal temperature

quality variable

• The process is in an initial steady state: u = 0; y1= y2 = 0• Need to transition, as quickly as possible, to other steady state:

u = const; y1= const; y2 = yd

995.0001746.0

1 −=

zP

8187.003625.05

12 −−= −

zzPP

Page 10: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-10

Grade change control example

• Linear system model in the convolution formuhy *=

• Inequality constraints– Control

– Temperature

• Equality constraint (process transitioning to the new grade)fd TTtTytyty +≤≤≡≡ for ,)(,0)( 21&

• Quadratic-optimal controlmin)1()()( 22

2 →−−+−∑t

d tuturyty

*2

*

)(

)(

Tty

utu

T fT0

Page 11: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-11

Grade change control example• Sampled time: t = 1, …, N• Vector-matrix formulation of the problem

HUUHUH

YY

Y =⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡=

2

1

2

1

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

⎡=

)(

)1(,

)(

)1(,

)(

)1(

2

2

2

1

1

1

Ny

yY

Ny

yY

Nu

uU MMM

uhUH *11 =uhUH *22 =

• H is a block-Toeplitz matrix

⎥⎥⎥⎥

⎢⎢⎢⎢

−=

)1()2()(0)1()1(

00)1(

111

11

1

1

hhNhhNh

h

H

L

L

MOOM

L

Page 12: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-12

Grade change control example

• Inequality constraints– Control

– Temperature *1

**

0 TYuUu

≤≤≤≤−

• Quadratic-optimal control

min)()( 22 →+−−= DUDrUYYYYJ TTd

Td

⎥⎥⎥

⎢⎢⎢

⎡=

1

1Mdd yY

min...2 222 →+−+= YYYYDUDrUJ Td

TTT

⎥⎥⎥⎥

⎢⎢⎢⎢

=

000110

011

L

L

MOOM

L

D

• Dynamics as an equality constraint:

0=− YHU⎥⎦

⎤⎢⎣

⎡=

2

1

YY

Y

Notations

Page 13: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-13

Terminal constraint

⎥⎦

⎤⎢⎣

⎡=

f

T

YY

Y,1

,11

• Equality constraints (new grade steady state)

fdf YY ,,2 =

0,1 =fDY

⎥⎥⎥⎥

⎢⎢⎢⎢

=

000110

011

L

L

MOOM

L

D

⎥⎦

⎤⎢⎣

⎡=

f

T

YY

Y,2

,22

- transition - new steady state

- steady in the end

- at target in the end

t = 0 t = T t = Tf

Page 14: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-14

Quadratic Programming

• QP Problem:

min21 →+=

=≤

xfQxxJ

bxAbAx

TT

eqeq

• Matlab Optimization Toolbox: QUADPROG

⎥⎥⎥

⎢⎢⎢

⎡=

2

1

YYU

x......

...

=

==

eq

eq

bAA

...

...==

fQ

See previous slides

Page 15: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-15

SimQP Program for

the grade change, no terminal constraint; slow T=40

20205.01.0

75.0

*

*

==

==

=

uTr

yd

τ

0 5 10 15 20 25 30 35 400

5

10

15

20

CO

NTR

OL

INPU

T (M

V)

0 5 10 15 20 25 30 35 400

0.5

1

1.5

2TE

MPE

RAT

UR

E

0 5 10 15 20 25 30 35 40-2

-1

0

1

QU

ALIT

Y PA

RAM

ETE

R

TIME (HRS)

Page 16: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-16

SimQP Program for

the grade change with a terminal constraint at T = 8

20205.01.0

75.0

*

*

==

==

=

uTr

yd

τ

0 1 2 3 4 5 6 7 8 9 10-5

0

5

10

15

20

CO

NTR

OL

INPU

T (M

V)

0 1 2 3 4 5 6 7 8 9 10-0.5

0

0.5

1

1.5

2TE

MPE

RAT

UR

E

0 1 2 3 4 5 6 7 8 9 10-3

-2

-1

0

1

QU

ALI

TY P

ARAM

ETER

TIME (HRS)

Page 17: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-17

Flexible Satellite Slew Control

• Single flexible mode model• Franklin, Section 9.2

)()()()(

212122

212111

xxbxxkxJguxxbxxkxJ

&&&&

&&&&

−+−=+−−−−=

BusFirst

flexiblemode

gu

2x→1x→ k

breaction wheel

Page 18: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-18

Flexible Satellite Slew Control

• Linear system modelCxy

BuAxx=

+=&

BusFirst

flexiblemode

gu

2x→1x→ k

b

⎥⎥⎥⎥

⎢⎢⎢⎢

=

2

2

1

1

xxxx

x

&

&

⎥⎥⎥

⎢⎢⎢

⎡−=

1

12

1

xxx

xy

&

• slew angle

• deformation

• slew rate

⎥⎥⎥⎥

⎢⎢⎢⎢

−−

−−=

2222

1111

////1000////0010

JbJkJbJk

JbJkJbJkA

⎥⎥⎥⎥

⎢⎢⎢⎢

=

00/0

1JgB

Page 19: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-19

Flexible Satellite Slew Control

• Linear system model in the convolution formuhy *=

• Inequality constraints– Control

– Deformation

– Slew rate

• Equality constraint (system coming to the target slew angle)fd TTtTyty +≤≤≡ for ,)(

• Quadratic-optimal controlmin)( 2 →∑

t

tu

*3

*2

)(

)(

1)(

vty

dty

tu

Page 20: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-20

Flexible Satellite Slew Control• Sampled time: t = 1, …, N• Y is a 3N vector; H is a block-Toeplitz matrix

HUY =

• Inequality constraints– Control

– Deformation

– Slew rate

• Equality constraint (system coming to the target slew angle)dYYS =1

• Quadratic-optimal controlmin→UU T

*3*

*2*

11

vYSvdYSd

U

≤≤≤≤

≤≤− This is a QP problem

⎥⎥⎥

⎢⎢⎢

⎡−=

1

12

1

xxx

xy

&

Page 21: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-21

SimQP Program

for the flexible satellite slew

0 2 4 6 8 10 12 14 16 18 20-1

-0.5

0

0.5

1

CO

NTR

OL

0 2 4 6 8 10 12 14 16 18 200

0.5

1

1.5

2S

LEW

AN

GLE

0 2 4 6 8 10 12 14 16 18 20-0.05

0

0.05

DE

FOR

MA

TIO

N

0 2 4 6 8 10 12 14 16 18 20-0.05

0

0.05

0.1

0.15

SLE

W R

ATE

2.002.0

0036.0091.01.0

102.0

*

*

2

1

==

====

=

vdbkJJg

Page 22: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-22

Robust design approach

• Replace exact terminal constraint by a given residual error• Consider the system for several different values of

parameters and group the results together• As an optimality index, consider an average performance

index or the worst residual error

Page 23: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

EE392m - Spring 2005Gorinevsky

Control Engineering 13-23

Mobile Robot Path Planning→ min

(p,q)

Point mass model:

Constrained optimization problemof finding an optimal path

From V. Lumelsky, Univ. Wisconsin, Madison

Page 24: Lecture 13 – Programmed Control€¦ · Lecture 13 – Programmed Control • Optimal control: programmed, synthesis • Rocket ascend • Grade change in process control –Example

Future Combat Systems (FCS)

Follow-OnHeavy Forces(if Necessary)

Enem

y Fo

rce

Build

Up

• Technology-based transformation of military force • Ground and air robotics vehicles• Application of robotics research• Path planning and optimization are important