A.Bemporad MATHMOD2009‐February13,2009
ModellingandOptimization‐basedControlofHybridDynamicalSystems
AlbertoBemporadhttp://www.dii.unisi.it/~bemporad
UniversityofSiena
Department of InformationEngineering
/48A.Bemporad MATHMOD2009‐February13,2009
Talkoutline
• Modelsofhybridsystems
• Modelpredictivecontrol(MPC)ofhybridsystems
• Automotiveapplications
• Newresearchdirections
2
/48A.Bemporad MATHMOD2009‐February13,2009
Hybriddynamicalsystems
3
Hybridsystems
ComputerScience
ControlTheory
Finitestate
machines
Continuousdynamicalsystems
systemu(t)
AB
C
C
A
B
B
C
y(t)1 2
35
4
/48A.Bemporad MATHMOD2009‐February13,2009
Embeddedsystems
4
continuousdynamicalsystem
discreteinputs
symbolssymbols
continuousstates
continuousinputs
automaton/logic
interface
Examples:automobiles,industrial
processes,consumerelectronics,
homeappliances,...
Anelectronic(control)deviceis“embedded”
inaphysicalprocessandinteractswithit
Sensor-based image stabilization
/48A.Bemporad MATHMOD2009‐February13,2009
“Intrinsicallyhybrid”systems
5
•Transmission
discretecommand(R,N,1,2,3,4,5)
•Four‐strokeengines
automaton,dependentoncrankshaftangle
continuousdynamicalvariables(velocities,torques)+
/48A.Bemporad MATHMOD2009‐February13,2009
Keyrequirementsforhybridmodels
6
•Descriptiveenoughtocapturethebehaviorofthesystem
–continuousdynamics(physicallaws)
–logiccomponents(switches,automata,softwarecode)
–interconnectionbetweenlogicanddynamics
•Simpleenoughforsolvinganalysisandsynthesisproblems
“Makeeverythingassimpleaspossible,butnotsimpler.”—AlbertEinstein
linearhybridsystems
/48A.Bemporad MATHMOD2009‐February13,2009 7
Piecewiseaffine(PWA)systems
Canapproximatenonlinearand/ordiscontinuousdynamicsarbitrarilywell
(Sontag1981)
state+inputspace
x(k+1)
x(k)C1C2C3C4C5C6
/48A.Bemporad MATHMOD2009‐February13,2009
DiscreteHybridAutomata(DHA)
8
(Torrisi,Bemporad,2004)
EventGenerator
FiniteStateMachine
ModeSelector
SwitchedAffineSystem
1
2
s
mode
timeoreventcounter
continuous
discrete
/48A.Bemporad MATHMOD2009‐February13,2009 9
Switchedaffinesystem
Theaffinedynamicsdependonthecurrentmodei(k):
continuous
discrete
/48A.Bemporad MATHMOD2009‐February13,2009 10
Eventgenerator
Eventvariablesaregeneratedbylinearthresholdconditionsovercontinuousstatesandinputs(timeeventscanbealsomodeled):
Example:[δ(k)=1]↔[xc(k)≤0]
continuous
discrete
/48A.Bemporad MATHMOD2009‐February13,2009 11
Finitestatemachine
ThebinarystateofthefinitestatemachineevolvesaccordingtoaBooleanstateupdatefunction:
Example:
continuous
discrete
/48A.Bemporad MATHMOD2009‐February13,2009 12
Theactivemodei(k)isselectedbyaBooleanfunctionofthecurrentbinarystates,binaryinputs,andeventvariables:
Modeselector
Example:0
1
0 1
thesystemhas3modes
continuous
discrete
/48A.Bemporad MATHMOD2009‐February13,2009
Logicandlinearinequalities
13
(Glover1975,Williams1977,Hooker2000)
FiniteStateMachine
ModeSelector
SwitchedAffineSystem
1
2
s
EventGenerator
AnylogicformulainvolvingBooleanvariablesandlinearcombinationsofcontinuousvariablescanbetranslatedintoasetof(mixed‐)integerlinear(in)equalities
AlltheDHAblockscanbetranslatedintoasetof(mixed‐)integerlinearequalitiesandinequalities
/48A.Bemporad MATHMOD2009‐February13,2009
Mixed‐logicaldynamicalsystems
14
(Bemporad,Morari1999)MixedLogicalDynamical(MLD)Systems
HYSDEL (Torrisi,Bemporad,2004)
DiscreteHybridAutomaton
Suitableforsolvingoptimizationproblems(mixed‐integerprogramming)
Continuousandbinaryvariables
/48A.Bemporad MATHMOD2009‐February13,2009
Mixed‐integermodelsinoperationsresearch
15
Translationoflogicalrelationsintolinearinequalitiesisheavilyusedinoperationsresearch(OR)forsolvingcomplexdecisionproblemsbyusingmixed‐integer(linear)programming(MIP)
Example:Timetablegeneration(fordemandingprofessors…)
CPUtime:0.2s
Effort:10%mathematicalproblemsetup(mixed‐integerlinearmodel)30%database&webinterfaces60%dealwithprofessors’complaints,complaints,complaints…
•Hybridmodels:design,simulation,verification
•Controldesignforlinearsystemsw/constraintsandhybridsystems(on‐lineoptimizationviaQP/MILP/MIQP)
•ExplicitMPCcontrol(viamulti‐parametricprogramming)
•C‐codegeneration
•Simulinklibrary
/48A.Bemporad MATHMOD2009‐February13,2009
HybridToolboxforMATLAB
16
Features: (Bemporad,2003‐2009)
Support:
http://www.dii.unisi.it/hybrid/toolbox
2200+downloadrequestssinceOctober2004
/48A.Bemporad MATHMOD2009‐February13,2009 17
Easilymodeledasdiscrete‐timelinearhybridsystems
bouncingball
magneticallyactuatedfuelinjector
Examples:systemswithimpacts
/48A.Bemporad MATHMOD2009‐February13,2009 18
T1 T2
Tamb
•#1turnstheheater(A/C)onwheneverheiscold(hot)
•If#2iscoldheturnstheheateron,unless#1ishot
•If#2ishotheturnsA/Con,unless#2iscold
•Otherwise,heaterandA/Careoff
Heater
ACsystem
uhotucold
Hybriddynamics
Example:roomtemperature
/48A.Bemporad MATHMOD2009‐February13,2009 19
HYSDELmodel
http://www.dii.unisi.it/hybrid/toolbox
HybridToolboxforMatlab
>>S=mld('heatcoolmodel',Ts)
>>[XX,TT]=sim(S,x0,U);
gettheMLDmodelinMatlab
simulatetheMLDmodel
/48A.Bemporad MATHMOD2009‐February13,2009 20
HybridMLDmodel•MLDmodel
•2continuousstates:
•1continuousinput:
•6auxiliarybinaryvars:
•2auxiliarycontinuousvars:
(roomtemperatureTamb)
(temperaturesT1,T2)
(powerflowsuhot,ucold)
(4thresholds+2forORcondition)
•20mixed‐integerinequalities
Possiblecombinationofintegervariables:26=64
/48A.Bemporad MATHMOD2009‐February13,2009 21
HybridPWAmodel•PWAmodel
•2continuousstates:
•1continuousinput:(roomtemperatureTamb)
(temperaturesT1,T2)
•5polyhedralregions(partitiondoesnotdependoninput)
>>P=pwa(S);
bothoff
heateron
A/Con
/48A.Bemporad MATHMOD2009‐February13,2009 22
1
2
3
e,p12e
e,p13e∼e(Bemporad,DiCairano,IEEETAC,submitted)
StochasticFiniteStateMachine(sFSM)
Discrete‐timeHybridStochasticAutomaton(DHSA)
Event‐basedContinuous‐timeHybridAutomaton(icHA)
Switchedintegraldynamics
(Bemporad,DiCairano,Julvez,2009)
k =eventcounter
AsynchronousFSM
k =discrete‐timecounter
Allcontrol/verificationtechniquesdevelopedforDHAcanbeextendedtoDHSAandicHA!
DHAextensions
ucconstantbetweeneventskandk+1
/48A.Bemporad MATHMOD2009‐February13,2009
Talkoutline
✓ Modelsofhybridsystems
• Modelpredictivecontrol(MPC)ofhybridsystems
• Automotiveapplications
• Newresearchdirections
23
/48A.Bemporad MATHMOD2009‐February13,2009
ModelPredictiveControl(MPC)
24
Amodeloftheprocessisusedtopredictthefutureevolutionoftheprocesstodecidethecontrolsignal
binaryinputs
continuousinputs
binarystates
continuousstates
modelpredictivecontroller
desiredbehavior
constraints
hybridprocess
/48A.Bemporad MATHMOD2009‐February13,2009
Recedinghorizonphilosophy
25
•Onlyapplythefirstoptimalmove
Predictedoutputs
ManipulatedInputs
t t+1 t+N
ut+k
r(t)
t+1 t+2 t+N+1
•Attimet+1:Getnewmeasurements,repeattheoptimization.Andsoon…
Advantageofrepeatedon‐lineoptimization:FEEDBACK!
yt+k•Attime t:solveanoptimalcontrolproblemoverafinitefuturehorizonof N steps:
/48A.Bemporad MATHMOD2009‐February13,2009
Recedinghorizonexample
26
‐predictionmodel
‐costfunction
‐constraints
‐recedinghorizonmechanism
howvehiclemovesonthemap
minimumtime,minimumdistance,etc.
driveonroads,respectone‐wayroads,etc.
event‐based(optimalroutere‐plannedwhenpathislost)
‐disturbances mainlydriver’sinattention!
‐setpoint desiredlocationx=GPSpositionu=navigationcommands
Fastest routeShortest routeAvoid motorwaysWalking routeBicycle routeLimited speed
/48A.Bemporad MATHMOD2009‐February13,2009
MPCofhybridsystems
27
MixedIntegerQuadraticProgram(MIQP)
(Bemporad,Morari,1999)
Alternative:Mixed‐integerlinear(MILP)formulations
(Bemporad,Morari1999)
Closed‐loopconvergenceresultsofhybridMPCavailable(Lazar,Heemels,Weiland,Bemporad,2006) (DiCairano,Lazar,Bemporad,Heemels,2008)
/48A.Bemporad MATHMOD2009‐February13,2009
HybridMPC–Roomtemperatureexample
>>[XX,UU,DD,ZZ,TT]=sim(C,S,r,x0,Tstop);
>>C=hybcon(S,Q,N,limits,refs);
>>refs.x=2; % just weight state #2>>Q.x=1;>>Q.rho=Inf; % hard constraints>>Q.norm=2; % quadratic costs>>N=2; % optimization horizon>>limits.xmin=[25;-Inf];
>> C
Hybrid controller based on MLD model S <heatcoolmodel.hys>
2 state measurement(s) 0 output reference(s) 0 input reference(s) 1 state reference(s) 0 reference(s) on auxiliary continuous z-variables 20 optimization variable(s) (8 continuous, 12 binary) 46 mixed-integer linear inequalitiessampling time = 0.5, MILP solver = 'glpk' Type "struct(C)" for more details.>>
28
/48A.Bemporad MATHMOD2009‐February13,2009
HybridMPC–Roomtemperatureexample
29
/48A.Bemporad MATHMOD2009‐February13,2009
Maindrawbacksofon‐lineimplementation
30
•Computationtimemaybetoolong:okforlargesamplingtimes(>0.1s)butnotforfast‐samplingapplications(<1ms).Worst‐caseCPUtimehardtoestimate
•Requiresrelativelyexpensivehardware(notsuitableoninexpensive8‐bitµ‐controllerswithfewkBRAM)
•Softwarecomplexity:controlprofileu(x)hardtounderstand,solvercodedifficulttocertify(badinsafetycriticalapps)
AnywaytouseMPCwithouton‐linesolvers?
•ExcellentLP/QP/MIP/NLPsolversexisttoday(“LPisatechnology”–S.Boyd)
but...
minU
1
2U ′HU + x′(t)F ′U +
1
2x′(t)Y x(t)
subj. to GU ≤ W + Sx(t)
/48A.Bemporad MATHMOD2009‐February13,2009
Explicitmodelpredictivecontrol
31
Idea:solvetheQPforallx(t)withinagivenrangeofRn off‐line
ThelinearMPCcontrollerisacontinuouspiecewiseaffinefunctionofthestatevector
multi‐parametricprogrammingproblem
(Bemporadetal.,2002)
/48A.Bemporad MATHMOD2009‐February13,2009 32
•ThehybridMPCcontrollerispiecewiseaffineinx,r(controllawmaybediscontinuous)
Note:Withquadraticcosts,partitionmaynotbefullypolyhedral.Thenbetterkeepoverlappingpolyhedra
(Borrelli,Baotic,Bemporad,Morari,Automatica,2005)(Mayne,ECC2001) (Alessio,Bemporad,ADHS2006)
Explicithybridmodelpredictivecontrol
/48A.Bemporad MATHMOD2009‐February13,2009
ExplicitHybridMPC–Roomtemperature
>>E=expcon(C,range,options);
>> E
Explicit controller (based on hybrid controller C) 3 parameter(s) 1 input(s) 12 partition(s)sampling time = 0.5 The controller is for hybrid systems (tracking)This is a state-feedback controller. Type "struct(E)" for more details.>>
Sectioninthe(T1,T2)‐spaceforTref=30
33
/48A.Bemporad MATHMOD2009‐February13,2009
ExplicitHybridMPC‐Example
generatedC‐code
utils/expcon.h
34
ExplicitHybridMPC–Roomtemperature
/48A.Bemporad MATHMOD2009‐February13,2009
Talkoutline
✓ Modelsofhybridsystems
✓ Modelpredictivecontrol(MPC)ofhybridsystems
• Automotiveapplications
• Newresearchdirections
35
/48A.Bemporad MATHMOD2009‐February13,2009
AutomotiveapplicationsofMPC
36
PhDstudents:Bernardini,Borrelli,DiCairano,Giorgetti,Ripaccioli,Trimboli(2001‐2009)&Hrovat,Kolmanovsky,Tseng(Ford)
tractioncontrol
Homogeneous Stratified
enginecontrol
semiactivesuspensions
tiredeflection
suspensiondeflection
idlespeedcontrol
/48A.Bemporad MATHMOD2009‐February13,2009
AutomotiveapplicationsofMPC
37
magneticactuators
activesteeringair‐to‐fuelratio
hybridelectricvehicles
robotizedgearbox
(Borodani,Mannelli,CRF)
(PhDstudents:Bernardini,Borrelli,DiCairano,Giorgetti,Ripaccioli,Trimboli‐2001‐2009)&Hrovat,Kolmanovsky,Tseng(Ford)
/48A.Bemporad MATHMOD2009‐February13,2009
EnergymanagementofHEVs
38
•risingfuelprices•tighteningemissionregulations•performanceimprovement
WhyHybridElectricVehicles(HEV)?
AdvancedPowerSystems•morecomponents•morecontrolledvariables•moreconstraints•severaloperatingmodes
UseMPCassystematicmodelingandmodel‐basedcontrolapproach
/48A.Bemporad MATHMOD2009‐February13,2009
HybridMPCforEnergymanagementofHEVs
39
High‐fidelityindustrialmodelofanadvanced4x4hybridelectriccarwith:
turbochargeddieselengine
highvoltageNiMHbattery
twoelectricmotorsacting(oneperaxle)
Objectives:•manageIC,ERAD,andCISGpowerrequests•minimizefuelconsumption•keepbatterypreferablywithin30‐70%offullcharge•fulfillvariousmechanical&electricalconstraints
dx(t)
dt= Ax(t) + Bu(t)
/48A.Bemporad MATHMOD2009‐February13,2009
HybridMPCforEnergymanagementofHEVs
40
HEVmodelforMPCcontrol:•3realinputs(torques)
•56aux.realvariables
•490mixedintegerineq.≈lineardynamics
MLDhybridmodel:
≈piecewiseaffinemaps
•1realoutput(fuel)
•9realstates(dynamics)
•7binarystates(gears)
•32binaryinputs(maps)
(Bemporadetal.,IEEETAC,2005)
minξ
J(ξ, x(t)) ! Qρρ2 +
N∑
k=1
(Γxxk − xref)TS(Γxxk − xref)+
+
N−1∑
k=0
(Γuuk − uref)TR(Γuuk − uref) + (yk − yref)
TQ(yk − yref)
subj. to
x0 = x(t)xk+1 = Axk + B1uk + B3zkyk = Cxk + D1uk + D3zkE3zk ≤ E1uk + E4xk + E50.3− ρ ≤ SoCk ≤ 0.7 + ρ
Q = qfuel, R =[
rτ,IC 0 00 rτ,CISG 00 0 rτ,ERAD
]S =
[sv,veh 0 0
0 sSoC 00 0 sv,int
], Qρ = 105
yref ! frate,ref
uref ! [τIC,req τERAD,req τCISG,req]′
xref ! [vveh,ref SoCref 0]′
/48A.Bemporad MATHMOD2009‐February13,2009
HybridMPCforEnergymanagementofHEVs
41
• HybridoptimalcontrolproblemforMPC:
• Setpoints:
• Weights:
hybridMLDmodel
constraintonSoC
/48A.Bemporad MATHMOD2009‐February13,2009
HybridMPCforEnergymanagementofHEVs• Simulations(MPC#1)
42
qfuel sSoC sv,int fuel cons (norm) max |vveh − vveh,ref | max |SoC − SoCref |0 ∗ ∗ ∗ 1 ∗ ∗1 1e-2 2e6 10 0.79 2.105 0.13642 1e1 1e6 1 0.76 2.789 0.2484
0 200 400 600 800 1000 1200−5
0
5
10
15
20
25
30
35Vehicle Speed
• Performanceanalysis
•CPUtime:average0.13spertimestep(worst:0.29s)onPC2GHz+CPLEX•Simulationsbasedonhigh‐fidelitynonlinearmodel+hybridMPC
conventionalvehicleMPC#1MPC#2
Note:drivingcyclenotknowninadvance!
vehiclespeed stateofcharge torques
(Ripaccioli,Bemporad,Assadian,Dextreit,DiCairano,Kolmanovsky,HSCC2009)
/48A.Bemporad MATHMOD2009‐February13,2009
Talkoutline
✓ Modelsofhybridsystems
✓ Modelpredictivecontrol(MPC)ofhybridsystems
✓ Automotiveapplications
• Newresearchdirections
43
/48A.Bemporad MATHMOD2009‐February13,2009
MPCinWirelessAutomation
44
MPC
MPC
MPC
Real‐timeoptimization
Large‐scalesystem
PID
PID
PID
•Characterizedbyspatialdistribution
•Needfordecentralizedcontrolcomputations
•Needforflexibleinformationgatheringsystem
•Wirelesscommunicationsintroducenewproblemsincontroldesigntotakecareof(packetdrops,delays&jitter,batteryenergyconsumption,etc.)
x1 x2 x3 x4
x5 x6 x7 x8
u4
u3
u1 u2
4
2
3
1
DecentralizedMPC
Wirelesssensornetworks
/48A.Bemporad MATHMOD2009‐February13,2009
MPCinWirelessAutomation
45
/48A.Bemporad MATHMOD2009‐February13,2009
Europeanproject“WIDE”
46
UNI
• ICT-FP7-Call 2 (2008-2011), total budget 2.7M€. Started Sept. 1, 2008
• Objective ICT-2007.3.7 “Networked Embedded and Control Systems”
DEcentralizedandWIrelessControlofLarge‐scaleSystems
http://ist-wide.dii.unisi.it
3rdWIDEPhDSchoolonNetworkedControlSystems,Siena,July7‐9,2009
/48A.Bemporad MATHMOD2009‐February13,2009
MPCinWirelessAutomation
47
Objective:trackpositionandtemperaturereferenceswhileenforcingsafetyconstraints
position
steady‐statetemperature
HybridMPCproblem:•2binaryinputs(lamps)•1continuousinput(speed)•PWLstatefunction(heating)•Outputs:temp,position•Sampling=4Hz
•Implementation:(1)on‐lineoptimization(QP,mixed‐integer),or(2)off‐linemulti‐parametricoptimizationandPWLcontrol
•Matlab/Simulinktoolsareavailabletoassistthewholedesignprocess
•Hybridsystemsasaframeworkfornewapplications,wherebothlogicandcontinuousdynamicsarerelevant
•Modelpredictivecontrol(MPC)isarathergeneralandsystematiccontroldesignmethodologyformulti‐variablesystemswithconstraints
/48A.Bemporad MATHMOD2009‐February13,2009
Conclusions
http://www.dii.unisi.it/hybrid/toolbox48