Acessibilidade / Reportar erro

Identificação determinística por subespaços

Resumos

Neste artigo é apresentada uma visão geral sobre o problema de identificação por subespaços em malha aberta. Existem diversos algoritmos que solucionam este problema (MOESP, DSR, N4SID, CVA). Baseado nos métodos MOESP e N4SID os autores apresentam um algoritmo alternativo para identificar sistemas determinísticos operando em malha aberta. Dois processos simulados, um SISO e um MIMO são usados para mostrar o desempenho deste algoritmo.

Identificação por subespaços; métodos de identificação; identificação determinística


This paper presents an overview of the subspa e identif ation problem in open loop. There are several algorithms that solve this problem (MOESP, DSR, N4SID, CVA). Based on the methods MOESP and N4SID the authors propose an alternative algorithm to identify deterministic systems operating in open loop. Two simulated process, one SISO and one MIMO are used to show the performance of this algorithm.

Subspace identification; identification methods; deterministic identification


Identificação determinística por subespaços

S.D.M. BorjasI; C. GarciaII

IDepartamento de Ciências Exatas e Naturais, Universidade Federal Rural do Semi-árido, UFERSA, Campus Mossoró, Av. Francisco Mota, 570, Bairro Costa e Silva, 59625-900 Mossoró, RN, Brasil. santos.borjas@ufersa.edu.br

IIEscola Politécnica, USP - Universidade de São Paulo, Av. Prof. Luciano Gualberto, trav. 3, 158, Cidade Universitária, Butantã, 05508-900 São Paulo, SP, Brasil. clgarcia@lac.usp.br

RESUMO

Neste artigo é apresentada uma visão geral sobre o problema de identificação por subespaços em malha aberta. Existem diversos algoritmos que solucionam este problema (MOESP, DSR, N4SID, CVA). Baseado nos métodos MOESP e N4SID os autores apresentam um algoritmo alternativo para identificar sistemas determinísticos operando em malha aberta. Dois processos simulados, um SISO e um MIMO são usados para mostrar o desempenho deste algoritmo.

Palavras-chave: Identificação por subespaços, métodos de identificação, identificação determinística.

ABSTRACT

This paper presents an overview of the subspa e identif ation problem in open loop. There are several algorithms that solve this problem (MOESP, DSR, N4SID, CVA). Based on the methods MOESP and N4SID the authors propose an alternative algorithm to identify deterministic systems operating in open loop. Two simulated process, one SISO and one MIMO are used to show the performance of this algorithm.

Keywords: Subspace identification, identification methods, deterministic identification.

1. Introdução

A teoria da realização de sistemas para o caso determinístico pretende, em primeira instância, resolver o seguinte problema: dada a função de transferência, como encontrar um ou mais modelos no espaço de estados, que representem tal sistema. Existem muitas técnicas que permitem solucionar tal problema, sobretudo para o caso SISO (Single Input,Single Output), porém a teoria da realização, utilizando a decomposição em valores singulares (SVD), tornou-se predominante por ser com-putacionalmente robusta [8]. Esta técnica é usada nos métodos de identificação por subespaços que lidam com sistemas lineares invariantes no tempo em espaço de estados operando em tempo discreto. Pelas restrições citadas, pode parecer uma classe altamente restrita de modelos (especialmente por serem lineares), no entanto é bastante surpreendente como muitos processos industriais podem ser descritos com precisão por este tipo de modelo [2], [5] e [7]. Por outro lado, existe um grande número de ferramentas disponíveis de projeto de controladores para tais sistemas e modelos. Para empregar tais métodos é necessário o uso de ferramentas de Teoria de Sistemas, Geometria e Algebra Linear [6] e [5]. Os métodos lineares de identificação por subespaços estão relacionados com modelos da forma:

onde e são, respectivamente, os valores medidos das entradas e das saídas no instante k dos processos com m entradas e l saídas, é o vetor de estados com valor inicial xo, ek é um sinal do tipo ruído branco com média zero e matriz de covariância são matrizes de dimensões apropriadas. Os algoritmos de identificação por subespaços calculam modelos em espaço de estados, a partir de dados de entrada e saída. É uma prática comum distinguir três casos distintos na identificação de sistemas por subespaços [8]: a) o caso puramente determinístico ek = 0, b) o caso puramente est ocástico uk = 0 e c) o caso combinado determinístico e estocástico. Neste trabalho será tratado o caso puramente determinístico. O problema determinístico é postulado como: dada uma seqüência de dados de entrada e saída determine a ordem n e as matrizes (A, B, C D ) do sistema desconhecido. Existem diversos métodos que solucionam esse problema. Entre os mais populares há o método MOESP (Multivariable Output-Error State sPace) [10] e N4SID (Numerical algorithms for Subspace State Space System IDentification) [8]. O objetivo deste trabalho é apresentar um algoritmo que usa a técnica do método MOESP para computar uma certa matriz da qual se recuperam as matrizes do sistema usando a técnica N4SID.

1.1. Equações matriciais por subespaços

Das equações (1.1) e (1.2) obtém-se:

onde a matriz Uf é definida de forma similar à matriz Yf. As matrizes Yf e Hi são definidas por:

O número de colunas em Yf e Uf é j = N -2i +1, onde N representa a quantidade de dados e i é o número de linhas definido pelo usuário (por exemplo i = 10). é a matriz de observabilidade estendida e é definida por:

onde (*)T denota a transposta da matriz (*). Xp = Xo = [ xo, · · · xj-i ] e Xf = Xi = [ xi, · · · xi+j-1 ] representam os estados passados e futuros, respectivamente, sendo que o símbolo p denota dados passados e f dados futuros.

1.2. Projeção ortogonal e projeção oblíqua

A projeção ortogonal do espaço linha de A sobre o espaço linha de B é [8]:

onde (*) denota a pseudo-inversa d a matriz (*). A projeção oblíqua do espaço de linhas de G no espaço de linhas de H sobre o espaço de linhas de J é [8]:

onde (*) denota o complemento ortogonal da matriz (*). Propriedades da projeção ortogonal e projeção oblíqua:

Para a prova, ver [8].

2. Métodos de identificação

2.1. Método MOESP

A seguir é apresentado o método MOESP básico, do qual um grande número de variações foi criado para diferentes tipos de problemas [10]. O objetivo deste método é computar Γi a partir da equação (1.3), então aplicando a projeção ortogonal da equação (1.3) sobre o espaço linha de resulta:

Pela propriedade (1.9) tem-se A equação (2.1) pode ser simplificada:

I

A equação 2.2 indica que o espaço coluna de Γi pode ser estimada pela SVD de Γi pode ser estimada da fatoração LQ a partir dos dados de entrada e saída, na forma:

A projeção ortogonal do lado esquerdo de (2.2) pode ser computada a partir da matriz RR = [R42R43]. A SVD da matriz RR é [10]:

A ordem n do sistema é igual ao número de valores singulares não nulos em S. O espaço coluna de U1 aproxima consistentemente a matriz Γi [10]:

As matrizes A e C são obtidas de C = Γi(1 : l, 1 : n) e Γi(1 : l(i - 1), 1 : n)A = Γi(l + 1 : il, 1 : n), respectivamente. Para obter as matrizes B e D ver [10].

2.2. Método N4SID

0 método N4SID soluciona o problema de identificação determinística recuperando os estados passados e futuros do sistema desconhecido. A sequência de estados Xf pode ser expressa por Xf = LpWp como combinação linear das entradas passadas e saídas passadas [8]. Logo, substituindo-se Xf = LpWp na equação (1.3) tem-se:

Aplicando-se a projeção ortogonal da equação (2.6) sobre o esapço linha de resulta:

Multiplicando-se a equação (2.7) por de ambos os lados,

Como e usando a equação (1.8) tem-se a projeção oblíqua Θi definida por [8]:

De forma similar é obtido Θi+1, ver [8]. Θi dado na equação (2.9) pode ser computado da fatoração LQ a partir dos dados de entrada e saída, colocados na forma A equação (2.9) indica que o espaço coluna de Γi pode ser estimado pela SVD de Θi, então resulta:

Usando a equação (2.10) computa-se , logo as matrizes do sistema são estimadas da equação (2.11) [8]:

2.3. Combinação dos métodos MOESP e N4SID

O algoritmo MON1 (modelo 1, combinação dos métodos MOESP e N4SID para o caso determinístico) é um método alternativo proposto pelos autores. Esse algoritmo estima a matriz de observabilidade estendida Γi no mesmo sentido do método MOESP e usa a técnica do método N4SID para estimar as matrizes do sistema A, B, C e D a partir da equação (2.11). Para isto é necessário conhecer as matrizes das sequências dos estados Xi e Xi+1, portanto o problema agora é computar as sequências de estado. A projeção oblíqua Θi dada pela equação (2.9) pode ser computada a partir da equação (2.3) [4]:

onde Uma estimativa da seqüência de estados totais é [4]:

e uma estimativa das matrizes Xi e Xi+1 é dada Xi = [xk · · · xk+N-2] e Xi+1 = [ xk+1 · · · xk+N-1 ]. Assim, as matrizes do sistema podem ser estimadas a partir da equação (2.11).

Este método pode ser resumido no seguinte algoritmo:

Algoritmo MON1

1) Construir as matrizes Uf, Up, Yf e Yp e a fatoração LQ dada em (2.3). 2) Calcular a SVD da matriz L32 = RR. 3) Determinar a ordem do sistema por inspeção dos valores singulares em S dada em (2.4). 4) Determinar Γi da equação (2.5), a seqüência de estados X de (2.13) e as seqüências Xi+1 e Xi. 5) Determinar as matrizes A, B, C, e D da equação (2.11).

3. Processo Simulado

3.1. Caso SISO

Em [9] e [11] é citado um exemplo para fazer a identificação em malha fechada de uma planta e seu controlador. Esta planta representa um sistema SISO e é usada neste artigo para fazer a identificação determinística em malha aberta. As matrizes do sistema que simulam a planta são: a = [4.40 1 0 0 0; -8.09 0 1 0 0; 7.83 0 0 1 0; -4 0 0 0 1; 0.86 0 0 0 0]; b = [0.00098 ; 0.01299 ; 0.01859 ; 0.0033 ; -0.00002]; c = [1 0 0 0 0] e d=[0]. Dadas as matrizes do sistema, o passo seguinte é coletar os dados de entrada e saída. Isto é feito pelo seguinte algoritmo: N = 1000; (número de dados a coletar); ny = 1; (número de saídas); u1 =idinput([N, ny],'prbs',[0 0.3]); ut = [u1-mean(u1)]; (dados das entradas coletadas); yt = dlsim(a,b,c,d,ut); (dados das saídas coletadas)

Para este modelo com sinal de entrada u1, foram coletados 1000 dados, dos quais 700 foram aplicados para identificação e o restante para validação. Os sinais usados na identificação são mostrados na figura 1. O sinal de excitação empregado foi o PRBS (Pseudo-Random Binary Sequence), que é amplamente usado na identificação de sistemas lineares.


Agora deve-se encontrar o melhor modelo que simule o processo. Neste trabalho são usados os algoritmos N4sid1, N4sid2 e MOESP, onde N4sid1 denota aqui o algoritmo determinístico 1 (empregando estados), N4sid2 corresponde ao algoritmo determinístico 2 (empregando matriz de observabilidade estendida) [8] e MOESP representa o algoritmo MOESP (caso determinístico). O algoritmo alternativo proposto para sistemas determinísticos é o MON1 (empregando estados). Todos eles foram implementados no Matlab 6.5. Foram ainda empregados os algoritmos N4SID, MPVerh e PEM (Prediction Error Methods). O N4SID e o PEM se encontram implementados no Toolbox do Matlab e o MPVerh denota aqui o método MOESP implementado por Michael Verhaegen. No total foram usados 7 algoritmos para fazer a identificação determinística. Comparar a simulação do modelo obtido com dados medidos é provavelmente a forma mais usual de se validar um modelo. Nesse caso, deseja-se saber se o modelo reproduz ao longo do tempo os dados observados. Os indicadores de desempenho aqui usados são média relativa do erro quadrático (MRSE), média da variância relativa (MVAF) e o FIT, os quais são definidos como:

onde y é a saída real e ŷ é a saída estimada pelo modelo obtido. O índice MRSE é muito usado na literatura e o índice MVAF é usado pelo SI (System Identification) Toolbox do Matlab. O índice FIT é usado pela função "compare" no Matlab.

Estes índices de desempenho são empregados para se avaliar a qualidade do modelo produzido por cada algoritmo, como mostra a tabela 1. A ordem n = 5 do sistema é dada pelos valores singulares mais significativos, como mostra a figura 2. Analisando-se os valores da tabela 1, todos os modelos tiveram um bom desempenho em termos de validação. Verifica-se que o tempo de processamento para a obtenção do modelo é menor para MON1, N4sid2 e MOESP. Com o objetivo de visualizar o desempenho do algoritmo proposto, optou-se pelo método MON1 para identificar o processo. A figura 3 mostra as saídas do processo real (linha contínua) e aquelas geradas pelo modelo determinístico identificado (linha tracejada). Pode-se observar que o modelo identificado reproduz muito bem as principais características do processo. Foram consideradas condições iniciais nulas.



3.2. Caso MIMO

Para avaliar o desempenho do algoritmo MON1 para o caso MIMO (Multiple-Input and Multiple Output), é usado um modelo em espaço de estados com matrizes aleatórias. A função dsr do Matlab 6.5 permite gerar um modelo em espaço de estados, com matrizes do sistema (A, B, C, D) na forma aleatória. A ordem escolhida do modelo é 4, que é igual ao posto de A. O seguinte algoritmo gerou um sistema MIMO de duas entradas e duas saídas: M=idss(dsr(4,2,2)); [A,B,C,D]=th2ss(M). As matrizes do sistema são dadas por:

Obtidas as matrizes do sistema, o passo seguinte é coletar os dados de entrada e saída do sistema determinístico. As amplitudes do sinal de entrada devem ser tão pequenas quando possível, sem comprometer o funcionamento adequado do sistema, nem levar o sistema a operar em outra faixa. O sinal de entrada para o sistema Μ é um PRBS, o qual é persistentemente excitante e o sinal de saída é gerado através da função sim do Matlab. Isto é dado pelo seguinte algoritmo: ut =idinput([1000, 2],'prbs',f0 0.3]); (sinal de entrada); yt = sim(M,ut); (sinal de saída). Para o modelo Μ com sinal de entrada ut, foram coletados 1000 dados, dos quais 700 foram aplicados para identificação e o restante para validação. O passo seguinte é encontrar o melhor modelo que simule o processo M, para os algoritmos citados acima. Isto é mostrado na tabela 2. A ordem η = 6 do sistema é dada pelos valores singulares mais significativos da matriz L32. Analisando-se os valores da tabela 2, todos os modelos tiveram um bom desempenho em termos de validação. Verifica-se que o tempo de processamento para a obtenção do modelo é menor para MOESP, MON1 e MPVerh. Com o objetivo de visualizar o desempenho do algoritmo proposto, optou-se pelo método MON1 para identificar o processo. A figura 4 mostra as saídas do processo real (linha contínua) e aquelas geradas pelo modelo determinístico identificado (linha tracejada). Pode-se observar que o modelo identificado reproduz muito bem as principais características do processo. Foram consideradas condições iniciais nulas. Da figura 4 pode-se observar que a resposta do modelo obtido é similar à do sistema real, mas se é conhecida a ordem do sistema real, esta não é necessariamente a mesma para o modelo obtido, portanto as matrizes do sistema real e do modelo obtido têm diferentes dimensões. As matrizes do modelo obtido pelo algoritmo MON1 são dadas por:


A coleta de dados do processo real está sempre afetada por ruído. Sistemas puramente determinísticos têm interesse apenas acadêmico. Então se agregou ruído aos dados de entrada e saída. Neste caso, deseja-se saber como funciona o método de identificação por subespaços para o modelo Μ na presença de ruído.

3.3. Identificação com ruído de baixa (3%) e alta (80%) intensidade para o modelo MIMO

A forma como foram coletados os dados com ruídos de baixa (3%), λ = 0,03 e alta intensidade (80%), λ = 0,8, para o modelo é dado pelo seguinte algoritmo:

Urt=[ut+λ*std(ut)*randn(1000,2).;

Yrt=[yt+λ*std(yt)*randn(1000,2)..

Observa-se que o ruído não afeta a planta, somente afeta os sinais coletados de entradas e saídas. Quando o sistema é perturbado por ruído, muitas vezes encontrar a ordem n do sistema a partir da decomposição de valores singulares não é fácil. Uma alternativa é dada pelo critério de Akaike, para maiores detalhes ver [1]. Neste este caso, n = 4 foi obtido pelo critério de Akaike. Os resultados da simulação são mostrados nas tabelas 3 e 4, para os casos de baixa e alta intensidade do ruído, respectivamente.

Analisando-se os valores da tabela 3, todos os modelos tiveram bom desempenho em termos de validação. Verifica-se que o tempo de processamento é menor para o algoritmo N4sid2. Analisando-se os valores da tabela 4, o modelo N4sid2 é melhor em termos de validação, verifica-se que o tempo de processamento para obtenção do modelo é menor para o algoritmo MPVerh. Dos resultados da tabelas 3 pode-se observar que os índices de desempenho para todos os algoritmos são quase iguais, o mesmo ocorrendo na tabela 4. A identificação determinística é um caso ideal, no entanto o algoritmo MON1 pode ser ampliado identificação de sistemas determinístico-estocásticos, para maiores detalhes ver [4] e [3].

4. Conclusão

O algoritmo MON1 não é um modelo novo, mas sim um modelo alternativo, pois usa as técnicas dos métodos MOESP e N4SID. No método alternativo MON1 a seqüência de estados passados e futuros é computada a partir da seqüência de estados totais, a qual tem unicamente um estado inicial, oposto ao método N4sid, pois para computar a seqüência de estados passados e futuros usa duas projeções oblíquas diferentes, levando a um maior esforço computacional. Para avaliar o desempenho do algoritmo alternativo, sete algoritmos de identificação foram aplicados a dois processos em estudo e seus resultados foram comparados via validação cruzada, usando três tipos de critério. O modelo PEM foi o mais lento nos sete casos de identificação.

Recebido em 08 Novembro 2011;

Aceito em 02 Setembro 2012.

  • [1] H. Akaike, Information theory and an extension of the maximum likelihood principle. In: Second International Symposium on Information Theory, Budapest, Hungary. B.N. Petrov, F. Csaki (Eds.), pp. 267-281, 1973.
  • [2] S.I).M. Borjas, C. Garcia, Modelagem de FCC usando métodos de identificação por predição de erro e por subespaços. IEEE América Latina, Revista virtual -na Internet, 2, No. 2 (2004), 108-113.
  • [3] S.D.M. Borjas, "Estudo da identificação por subespaços em malha aberta e fechada e proposta de novos algoritmos", Tese de Doutorado, POLI, USP, São Paulo, SP, 2009.
  • [4] S.D. Borjas, C. Garcia, Subspce identification using the integration of MOESP and N4SID methods applied to the Shell benchmark of a distillation column, TEMA -Tend. Mat. Apl. Comput., 12, No. 3 (2011), 183-194.
  • [5] W. Favoreel, B. De Moor, P. Van Overschee, Subspace state space system identification for industrial processes. Journal of Process Control, 10, No.3 (2000), 149-155.
  • [6] B. De Moor, P. Van Overschee, W. Favoreel, Algorithms for subspace state space system identification - an overview. In B. Datta (Ed.), Applied and computational control, signal and circuits, 1, pp. 247-311. Birkhauser: Boston (Chapter 6), 1999.
  • [7] P. Roberto, G. Kurka, H. Cambraia, Application of a multivariable input-output subspace identification technique in structural analysis, Journal of Sound and Vibration, No. 3 (2008), 461-47.
  • [8] P. Van Overschee B. De Moor, "Subspace Identification for Linear Systems: Theory, Implementation, Applications", Kluwer Academic Publishers, Dordrecht, 1996.
  • [9] P. Van Overschee, B. De Moor, Closed loop subspace systems identification,em "Proc. 36th IEEE Conference on Decision and Control", pp. 1848-1853, San Diego, 1997.
  • [10] M. Verhaegen, P. Dewilde, Subspace model identification, part i: the output-error state-space model identification class of algorithms,International Journal of Control, 56, No. 1 (1992), 1187-1210.
  • [11] M. Verhaegen, Application of a subspace model identification technique to identify LTI systems operating in closed loop, Automática, 29, No 4 (1993), 1027-1040.

Datas de Publicação

  • Publicação nesta coleção
    16 Jan 2013
  • Data do Fascículo
    Dez 2012

Histórico

  • Recebido
    08 Nov 2011
  • Aceito
    02 Set 2012
Sociedade Brasileira de Matemática Aplicada e Computacional Rua Maestro João Seppe, nº. 900, 16º. andar - Sala 163 , 13561-120 São Carlos - SP, Tel. / Fax: (55 16) 3412-9752 - São Carlos - SP - Brazil
E-mail: sbmac@sbmac.org.br