¿Cómo resuelvo un problema de control óptimo donde la ley del movimiento depende de alguna función del vector de estado?


11

Un problema de control óptimo típico con el vector de estado x (t) y el vector de control y (t) se puede expresar como:

maxx(t),y(t)0t1f(t,x(t),y(t))dt

sujeto a y condiciones de contorno para x .x(t)=g(t,x(t),y(t))x

Quiero resolver un problema que se parece mucho, pero la ley de movimiento del control es:

x(t)=g(t,x(t),y(t),z(x(t)))

Aquí, Necesita ser elegido. Pero su argumento es el estado.z(.)

Ni siquiera sé por dónde empezar a buscar soluciones. ¿Cómo puedo abordar este problema?


1
Supongo que la forma correcta de escribirlo es . Corregiré la pregunta original.
x(t)=g(t,x(t),y(t),z(x(t))
Daniel Wills

Bienvenido a Engineering.SE, +1 para una excelente primera pregunta.
Chris Mueller

¿Está buscando una solución formal o de forma cerrada, o está preguntando sobre la optimización práctica? En el primer caso, debe preguntar esto en un sitio como math.stackexchange.com . En este último caso, existe una gama de disciplinas dedicadas a la optimización práctica. En cualquier caso, debe proporcionar más detalles para obtener una respuesta real.
pies mojados

Estoy buscando una optimización práctica. Más detalles: Un subconjunto de la variable de control depende de (que estoy llamando y ), y un subconjunto de las variables de control depende de x (que estoy llamando z ). Además, necesito elegir la función x ( t ) . La maximización está sujeta a una restricción h ( z ( x ( t ) ) , y ( t ) ) = 0 Entonces, una forma intuitiva de resolverlo es: - adivinar x ( t )tyxzx(t)
h(z(x(t)),y(t))=0
x(t)- resuelva el problema de control óptimo (ahora estándar) (dado ) - verifique si h ( z ( x ( t ) ) , y ( t ) ) = 0 , si no, adivine otra x ( t ) Pero verá No hay razón para que el algoritmo converja. ¿Cómo resuelve esto la gente? x(t)h(z(x(t)),y(t))=0x(t)
Daniel Wills

Respuestas:


3

¿Por qué necesitaría ser externo a g ?zg

g(t,x(t),y(t))=g(t,x(t),y(t),z(x(t)))

ahora usa como ggg

puede ser cualquier función arbitraria, por lo que cualquier función z podría incorporarse a g .gzg

h

fnew(t,x(t),y(t))=fold(t,x(t),y(t))Ch(x(t),y(t))2

Chhf


1

Nfg

h=t1N1,x=[x1,x2,,xN],y=[y1,y2,,yN],

maxx,yn=1N1f(h(n1),xn,yn)hs.t.xn+1=xn+g(h(n1),xn,yn)h,n=1,2,,N1

N

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.