Considere a seguinte equação diferencial
x˙(t)=f(x(t),u(t))
que
x é o estado e
u a variável de controle. A solução é dado por
x(t)=x0+∫t0f(x(s),u(s))ds.
onde
x0:=x(0) é o estado inicial dado.
Agora considere o seguinte programa
s.t. V(x0):=maxu∫∞0e−ρtF(x(t),u(t))dtx˙(t)=f(x(t),u(t))x(0)=x0
ρ>0V(⋅)F(⋅)ρV(x)=maxu[F(x,u)+V′(x)f(x,u)],∀t∈[0,∞).
Digamos que eu tenha resolvido o HJB para V . O controle ideal é então dado por
u∗=argmaxu[F(x,u)+V′(x)f(x,u)].
obterei trajetórias ideais para o estado e o controle
{(x∗(t),u∗(t)):t∈[0,∞)} .
O artigo da wiki diz
... mas quando resolvida em todo o espaço de estados, a equação HJB é uma condição necessária e suficiente para um ótimo.
Em Bertsekas (2005) Dynamic Programming and Optimal Control , Vol. 1, 3ª ed., Na Proposição 3.2.1, ele afirma que resolver para V é a função de custo-a-go ideal e o u ^ * associado u∗é ideal. No entanto, ele o declara explicitamente como um teorema da suficiência.
Na verdade, só quero ter certeza de que, se eu resolvi o HJB e recuperei o estado associado e as trajetórias de controle, não preciso me preocupar com condições adicionais de otimização.
Solução
Eu tento
Eu acho que fui capaz de derivar as condições necessárias do princípio máximo pela própria equação de HJB.
Defina o hamiltoniano
H(x,u,V′(x)):=F(x,u)+V′(x)f(x,u)
então temos
ρV(x)=maxuH(x,u,V′(x))
que é
ρV(x)=H(x,u∗,V′(x)).
Defina uma função arbitrária q:[0,∞)→R com q(0)=limt→∞q(t)=0 . Agora corrija
x=x∗+εq
onde é um parâmetro. Ligue o termo ao hamiltoniano maximizado que fornece
ε∈R
ρV(x∗+εq)=H(x∗+εq,u∗,V′(x∗+εq)).
Em , temos a solução ideal. Assim, diferencie-se de para obter uma condição de primeira ordem
ε=0ε
ρV′q=Hxq+HV′V′′q.
Agora defina a variável adjunta com
λ=V′(x).
Diferencie ao longo do tempo
λ˙=V′′x˙.
e observe que
HV′=f(x,u)=x˙.
Conecte tudo no foco que fornece
ρλ=Hx+λ˙.
É isso mesmo. Portanto, resolver o HJB é realmente necessário e suficiente (omitido aqui) para otimizar. Alguém deve adicioná-lo ao wiki. Pode economizar tempo para as pessoas que pensam em tais problemas (não será muito que eu reconheço).
No entanto, a condição de transversalidade
está ausente.
limt→∞e−ρtλ(t)=0
II tentativa
Defina a recompensa funcional
J(u):=∫∞0e−ρtF(x,u)dt
Observe que
pela definição de . Adicione o Termo neutro ao resultado do pagamento
∫∞0e−ρtλ[f(x,u)−x˙]dt=0
x˙=f(x,u)J(u)=∫∞0e−ρt[F(x,u)+λf(x,u)]dt−∫∞0e−ρtλx˙dt=∫∞0e−ρtH(x,u,λ)−∫∞0e−ρtλx˙dt
A integração por partes do termo correto e os rhs produzem
∫∞0e−ρtλx˙dt=[e−ρtλ(t)x(t)]∞0−∫∞0e−ρtx(λ˙−ρλ)dt
Substitua esse termo
J(u)=∫∞0e−ρt[H(x,u,λ)+x(λ˙−ρλ)]dt−limt→∞e−ρtλ(t)x(t)+λ(0)x(0)
Defina
xu=x∗+εq=u∗+εp
que fornece
J(ε)=∫∞0e−ρt[H(x∗+εq,u∗+εp,λ)+(x∗+εq)(λ˙−ρλ)]dt−limt→∞e−ρtλ(t)[x∗(t)+εq(t)]+λ(0)x(0)
FOC para máximoJε=0
Jε=∫∞0e−ρt[Hxq+Hup+q(λ˙−ρλ)]dt−limt→∞e−ρtλ(t)q(t)=0
Como e são irrestritos, devemos ter
qp
HuHxlimt→∞e−ρtλ(t)=0=ρλ−λ˙=0