Proyecto 1 Teoría de Control

Transcripción

Proyecto 1 Teoría de Control
Proyecto 1
Teoría de Control
Mateo Díaz
Universidad de los Andes
Colombia
1 de octubre de 2015
Agenda
El problema
Teoría
Implementación
2/22
El problema
3/22
Introducción
En este proyecto atacamos el
problema de hacer que un vehículo viajando
en dos dimensiones evada obstáculos. Este
trabajo esta basado en la segunda aplicación
del paper: “Some Applications of Polynomial
Optimization in Operations Research
and Real-Time Decision Making” [AM15].
4/22
Introducción
El sistema dinámico que rige al avión es el siguiente:


−v sin(θ) + w
.
v cos(θ)
ẋ = fi = 
ui
(1)
Con los controles dados por
ui = −50(θ − θi ),
donde los posible ángulos están son: θ1 = 0, θ2 = 20π/180, θ3 =
−20π/180, θ4 = 45π/180, θ5 = −45π/180.
5/22
Introducción
Sumado a esto van a haber una serie de conjuntos (obstáculos) que
la ruta de nuestro avión debe evitar.
Si cada cierto tiempo se puede elegir cambiar de control, la gran
pregunta es: Cómo garantizar que la trayectoria escogida no va a
chocar con algún obstáculo?
6/22
Teoría
7/22
Funciones Barrera
Definition (Conjunto semialgebráico)
Un conjunto C ⊆ Rn se dice semialgebráico si y sólo si existe un
conjunto de polinomios multivariados g0 , . . . , gm tales que C =
{x ∈ Rn | ∀i pi (x) ≥ 0}.
Theorem
Defina un sistema dado por (1) con un ui fijo y x(0) = x0 , sea x
una solución. Entonces la trayectoria definida por x no pasa por
los conjuntos X1 , . . . , Xm si existe una función B : R3 → R tal
que,
B(x0 ) ≤ 0
B(z) > 0
Ḃ(x) = h∇B, f i ≤ 0
(2)
∀i y z ∈ Xi
(3)
(4)
8/22
No es tan fácil
Hay un pequeño inconveniente con el enunciado del teorema
anterior. Dado un polinomio en n variables p : Rn → R, certificar
que globalmente el polinomio es no negativo es un problema muy
difícil. Es decir, el problema de decidir si
p(x) ≥ 0
para todo x ∈ Rn es un problema NP-difícil [MK87]. Entonces sí es
difícil certificar que algo es no negativo, intentar buscar algo no
negativo es un problema muy complicado.
Si encontramos un algoritmo polinomial que hiciera esto nos
volveríamos millonarios y habríamos mostrado que P=NP!
9/22
Sumas de cuadrados y certificados de no negatividad
Afortunadamente, hay una forma de encontrar polinomios no
negativos de forma efectiva. En el año 2000, Pablo Parrilo
introdujo en su tesis doctoral [Par00] las relajaciones de sumas de
cuadrados, una alternativa tratable para resolver este problema.
Definition (Suma de cuadrados)
Se dice que un polinomio p es suma de cuadrados, si se puede
escribir de la forma
p(x) =
k
X
fi 2 (x),
i=0
dónde fi son polinomios.
Trivialmente si sabemos que p es suma de cuadrados o SOS, por
sus siglas en inglés, entonces p ≥ 0.
10/22
Sumas de cuadrados y certificados de no negatividad
Theorem (Ver [Par03])
Un p(x) un polinomio multivariado en m variables de grado 2n
es una suma de cuadrados si y sólo si existe una matriz simétrica
semidefinida positiva Q tal que
p(x) = z T Qz,
(5)
donde z es el vector de monomios de grado a lo sumo n. Es decir,
n
z = [1, x1 , x2 , . . . , xm , x1 x2 , . . . , xm
].
Para resolver este tipo de problemas existen métodos con
complejidad polinomial y que han demostrado ser alternativas
viables en la práctica [VB96].
11/22
DSOS y SDSOS: Alternativas a las sumas de cuadrados
Aunque los algoritmos para programación semidefinida tienen
complejidad polinomial, en la práctica no escalan muy bien cuando
la dimensión del tamaño crece. Amir Ali y Anirudha Majumdar
introdujeron nuevas alternativas en [AM15], basadas en conos de
matrices más tratables.
12/22
DSOS y SDSOS: Alternativas a las sumas de cuadrados
Definition (Matriz diagonalmente dominante)
Una matriz simétrica A se dice diagonalmente dominante si aii ≥
P
i6=j |aij | para todo i. Denotamos por DDn al cono de matrices
diagonalmente dominantes de tamaño n × n.
Lemma
Se puede optimizar sobre DDn usando programación lineal.
13/22
DSOS y SDSOS: Alternativas a las sumas de cuadrados
Definition (Matriz diagonalmente dominante escalada)
ij
Sea S n el conjunto de matrices simétricas. Sean M2×2
∈ Sn
matrices con todas sus entradas cero, excepto los elementos
Mii , Mij , Mji y Mjj . Entonces una matriz simétrica A se dice
diagonalmente dominante escalada (SDD) si se puede escribir de
la siguiente forma:
X ij
Mii Mij
A=
M2×2 ,
0.
Mji Mjj
i6=j
Denotamos por SDDn al cono de matrices diagonalmente dominantes escaladas de tamaño n × n.
Lemma
Se puede optimizar sobre SDDn usando programación de cono de
segundo orden.
14/22
DSOS y SDSOS: Alternativas a las sumas de cuadrados
Hecho importante:
DDn ⊆ SDDn ⊆ Sn+ .
Luego al optimizar sobre estos conos obtenemos matrices Q, que
también garantizan que el polinomio x T Qx es no negativo. Además
de ello, los algoritmos para LP y SOCP son mucho más rápidos.
15/22
El S-procedimiento
Si bien la relación de cuadrados garantiza la positividad de un
polinomio globalmente, esto no resuelve el problema para nuestro
caso particular de funciones barreras. Pues en este caso sólo se
exige localmente.
Suponga que tenemos conjuntos X1 , . . . , Xm semialgebráicos en los
que se quiere garantizar la no negativadad. Sin pérdida de
generalidad sean g1 , . . . , gm los polinomios con los que se definen
estos conjuntos. Sean L1 , . . . , Lm polinomios “variables” que
llamaremos multiplicadores. Definamos,
B̂i (z) := B(z) − Li (z)gi (z).
16/22
El S-procedimiento
El siguiente teorema nos ayuda a relacionar la no negatividad local
con la no negatividad global.
Theorem
Con el contexto dado, si se cumple que para todo i ∈ [m],
B̂i
Li
≥ 0
≥ 0.
Entonces B(z) ≥ 0 para cualquier z ∈ Xi .
17/22
Implementación
18/22
Como encontrar las barreras
Con todo lo visto hasta ahora podemos reescribir una relación de
nuestro problema original. Para que el algoritmo fuese funcional
usamos un campo de visión de 90 grados hacia arriba. Dentro de
este campo se escogían únicamente 2 obstáculos. Para modelar
estos obstáculos definimos gi (x) := (0.02)2 − (x − c1 )2 − (y − c2 )2 .
Buscamos la barrera para el control uk resolviendo,
B(x0 ) = 0,
B(x) − 1 − Li (x)gi (x) es SOS para i = 1, 2,
−h∇B, fk i − L3 (x)h(x) − L4 (x)(0.05 − w )(0.05 + w ) es SOS,
L1 , L2 , L3 y L4 son SOS.
Donde h(x) := 1 − (x − x0 )2 + (y − y0 )2 + θ2 .
19/22
Ejemplos
20/22
Gracias!
Preguntas?
21/22
References
Farid Alizadeh and Donald Goldfarb.
Second-order cone programming.
Mathematical programming, 95(1):3–51, 2003.
Amir Ali Ahmadi and Anirudha Majumdar.
Some applications of polynomial optimization in operations research
and real-time decision making.
arXiv preprint arXiv:1504.06002, 2015.
Ulf T Jönsson.
A lecture on the s-procedure.
2001.
Katta G Murty and Santosh N Kabadi.
Some np-complete problems in quadratic and nonlinear programming.
Mathematical programming, 39(2):117–129, 1987.
Pablo A Parrilo.
Structured semidefinite programs and semialgebraic geometry methods
in robustness and optimization.
PhD thesis, Citeseer, 2000.
Pablo A Parrilo.
22/22

Documentos relacionados