O segundo problema consiste em determinar o estado y ∈ Cˆ1 e o controle u ∈Cˆ como solu¸c˜ao do seguinte problema de Bolza:
minimizar y2(2) +R2
0 y(t)2dt sujeito a y(t) =˙ u(t)
y(0) = 1
−1≤u(t)≤1,
(2.17)
0 20 40 60 80 100
Figura 2.7: Varia¸c˜ao do erro das vari´aveis y e u na escala logar´ıtmica em rela¸c˜ao a N.
cuja solu¸c˜ao exata apresentada em [31, pag 348] ´e y(t) =
( 1−t se t≤1,
0 se t >1, e u(t) =
( −1 se t≤1,
0 se t >1. (2.18)
2.3.1 Solu¸ c˜ ao aproximada pelo m´ etodo pseudoespectral
Inicialmente considera-se a mudan¸ca de vari´avel det∈[0,2] paraτ ∈[−1,1], ou seja, e a restri¸c˜ao do problema (2.17) se escreve como
dy
dτ =u(τ).
Calculam-se os N pontos de coloca¸c˜ao LGR, −1 = τ1 < τ2 < ... < τN < 1, o vetor de pesos w ∈ IRN e a matriz de diferencia¸c˜ao D ∈ IRN×N como discutidos nos exemplos anteriores. Como a fun¸c˜ao objetivo do problema (2.17) envolve o valory(2), considera-se, al´em das vari´aveis Y ∈IRN eU ∈IRN, uma vari´avel adicional denotada porYN+1. Assim o problema (2.17) se escreve na forma discretizada como
minimizar YN+12 +
Note que o problema acima consiste na minimiza¸c˜ao de uma fun¸c˜ao quadr´atica com restri¸c˜oes de igualdade lineares e condi¸c˜oes de contorno, na vari´avel ( ¯Y , U) ∈ IR2N+1, onde ¯Y = (Y, YN+1) ∈ IRN+1 e U ∈ IRN. Deste modo este problema pode ser resolvido pela rotina quadprog dispon´ıvel no Matlab.
A Figura 2.8 apresenta a solu¸c˜ao exata e a solu¸c˜ao num´erica, considerando-se 60 pontos de coloca¸c˜ao e solu¸c˜ao inicial arbitr´aria. A solu¸c˜ao exata (2.18) que se escreve na vari´avel τ como
y(τ) =
( −τ se τ ≤0,
0 se τ >0, e u(τ) =
( −1 se τ ≤0, 0 se τ > 0.
est´a representada por linhas cheias. O s´ımbolo triangular representa a solu¸c˜ao aproximada para a vari´avel de estado y e o s´ımbolo asterisco ´e usado para representar a vari´avel de controleu.
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1
−1
−0.8
−0.6
−0.4
−0.2 0 0.2 0.4 0.6 0.8 1
τ
yexato uexato yaprox uaprox
Figura 2.8: Solu¸c˜ao do problema 2.17.
Note que a vari´avel de controle u ´e uma fun¸c˜ao descont´ınua. A solu¸c˜ao aproxi-mada assume erros maiores no ponto de descontinuidade e no extremo direito do intervalo.
No Apˆendice B s˜ao apresentadas as listagens das rotinas em Matlab utilizadas.
An´alise de erros. Adotando-se solu¸c˜oes iniciais arbitr´arias, foram resolvidas 30 instˆancias do problema (2.19) para cada valor deN entre 10 e 100. Para cada uma destas instˆancias, foi calculada a norma infinito do vetor diferen¸ca entre a solu¸c˜ao exata e a solu¸c˜ao num´erica para a vari´avel de estado y e para a vari´avel de controleu. Ou seja, foram calculados os erros dados por
erroy =kyexata−yaproxk∞ e errou =kuexata −uaproxk∞.
onde (yexata, uexata) ´e dado em (2.18) e (yaprox, uaprox) ´e a solu¸c˜ao num´erica fornecida
pela rotina quadprog. Para cada um dos valores deN considerados, foi tomada a mediana dos erros obtidos nas 30 instˆancias. Como j´a ressaltado, tendo em vista a descontinuidade da vari´avel de controle u, o erro da solu¸c˜ao aproximada na regi˜ao de descontinuidade
´e grande e foi desconsiderado na an´alise de erro. Os gr´aficos da Figura 2.9 mostram a varia¸c˜ao do erro, na escala logar´ıtmica para a solu¸c˜ao aproximada do estado e de controle, respectivamente, em rela¸c˜ao ao n´umero de pontos de coloca¸c˜aoN entre 10 e 100. As linhas cheias representam as curvas de regress˜ao linear na escala logar´ıtmica cujos coeficientes foram fornecidos pelo comando polyfit do Matlab. Enquanto o erro na vari´avel de estado
´e da ordem de 10−3, o erro na vari´avel de controle ´e da ordem de 10−1.
10 20 30 40 50 60 70 80 90 100
10−3
N log(erroy)
erroy 0.048N−0.891
10 20 30 40 50 60 70 80 90 100
10−2 10−1
N log(errou)
errou 0.472N−0.648
Figura 2.9: Varia¸c˜ao do erro das vari´aveis y e u na escala logar´ıtmica em rela¸c˜ao a N.
Discutiu-se neste trabalho o m´etodo de discretiza¸c˜ao pseudoespectral com pontos de coloca¸c˜ao LGR. Esta t´ecnica ´e utilizada para encontrar solu¸c˜oes num´ericas de proble-mas de controle ´otimo sem restri¸c˜oes (problema de Bolza tipo LQR), como foi publicado em [22]. Apresenta¸c˜ao da t´ecnica segue a sequˆencia em que o m´etodo pseudoespectral LGR ´e mostrado em [22], mas as demonstra¸c˜oes s˜ao pr´oprias e est˜ao dadas em nota¸c˜ao tensorial. Para medir diretamente a precis˜ao do m´etodo pseudoespectral LGR, ´e ne-cess´ario ter a solu¸c˜ao exata do problema. A solu¸c˜ao exata do problema de Bolza LQR de controle ´otimo foi encontrada utilizando o Princ´ıpio de M´aximo de Pontryagin. Para comparar (positivamente) o desempenho do m´etodo pseudoespectral LGR, o problema LQR de Bolza ´e resolvido tamb´em aplicando uma discretiza¸c˜ao de Euler da equa¸c˜ao de estado ´e por uma quadratura tipo Euler do funcional. A discretiza¸c˜ao da equa¸c˜ao de estado fornece uma forma de exprimir as vari´aveis de estado em termos das vari´aveis de controle. A substitui¸c˜ao desta rela¸c˜ao na quadratura permite utilizar um m´etodo de otimiza¸c˜ao quadr´atica da vari´avel de controle. O m´etodo pseudoespectral LGR ´e tamb´em aplicado bem sucedidamente a problemas de controle ´otimo com restri¸c˜oes nas vari´aveis de estado e de controle (algo que n˜ao ´e tentado em [22]).
Todos os c´odigos MATLAB est˜ao inclu´ıdos no Apˆendice desta disserta¸c˜ao e ser˜ao postados no site do Programa de P´os-gradua¸c˜ao em Matem´atica Aplicada da Universidade Federal do Paran´a. Tamb´em no Apˆendice encontra-se uma revis˜ao de conceitos referentes a este trabalho.
Revis˜ ao de Conceitos
Neste cap´ıtulo apresentam-se algumas defini¸c˜oes, propriedades e ressaltam-se al-guns resultados que podem ser ´uteis para o entendimento deste trabalho. As principais referˆencias deste cap´ıtulo s˜ao [9, 10, 11, 12, 18, 25, 26, 27, 29].
A.1 Matriz
Nesta se¸c˜ao, que ´e baseada principalmente em [27], apresentam-se algumas de-fini¸c˜oes e resultados essenciais de matrizes que foram utilizados no trabalho. Inicialmente apresenta-se a defini¸c˜ao de um tipo de matriz que ´e muito comum em problemas de otimiza¸c˜ao.
Defini¸c˜ao A.1 [25, pag. 260] Seja A ∈ IRn×n uma matriz sim´etrica. Diz-se que A ´e definida positiva quando xTAx > 0, para todo x ∈ IRn\{0}. Tal propriedade ´e denotada por A > 0. Se xTAx ≥ 0, para todo x ∈ IRn, A ´e dita semidefinida positiva, fato este denotado por A≥0.