Eduardo Luiz da Silva
Orientadora: Fabiana Lorenzi

Universidade Luterana do Brasil (ULBRA) – Curso de Sistemas de Informação
[email protected]

Resumo. Este artigo apresenta o Sistema para Solução de Panes em Aeronaves (SISPONAVE), que foi implementado utilizando um dos estudos abordados pela área da Inteligência Artificial (IA), a abordagem de Raciocínio Baseado em Casos (RBC). Após a sua conclusão, o sistema foi validado pela empresa VEM Engenharia e Manutenção (VEM), empresa esta atuante no mercado de manutenção aeronáutica, em sua instalação na cidade de Porto Alegre.

Introdução

Para manter as aeronaves em condições de vôo, as empresas da área de aviação devem obedecer a critérios preestabelecidos por órgãos nacionais e internacionais responsáveis pelo controle desta, de modo a possibilitar o máximo de segurança, organização e regularidade em suas atividades. Um dos critérios faz com que as companhias aéreas estabeleçam às suas aeronaves um Programa de Manutenção, cuja finalidade é definir as datas e os intervalos de tempo em que as mesmas devem realizar suas paradas de revisões, além de definir também as tarefas de manutenções obrigatórias a serem realizadas nestas.

Na empresa de manutenção aeronáutica VEM, os Programas de Manutenção são organizados tendo como referência o Sistema de Suporte de Manutenção de Aeronaves Orientado por Tarefas (AMTOSS), que faz com que cada tarefa de manutenção realizada nas aeronaves seja representada por um documento, as Task-Cards. As Task-Cards de uma aeronave podem ser geradas de duas maneiras, sendo estas através das tarefas de manutenções obrigatórias estabelecidas nos Programas de Manutenção ou quando são constatadas anormalidades em um dos sistemas de vôo presentes nas aeronaves.

Atualmente, o processo responsável pela abertura e fechamento das Task-Cards no sistema de controle dos Programas de Manutenção da empresa VEM, não disponibiliza para consulta as informações ressaltadas pelos especialistas (Técnicos de Manutenção de Aeronaves) após as conclusões das mesmas. Portanto, dessa forma é impossível o aproveitamento destas informações nas soluções de novas Task-Cards de pesquisas de panes, tornando assim estas mais complexas e demoradas, na medida em que uma série de informações sobre o sistema de vôo no qual está com problema se fazem necessárias, a fim de que o especialista possa chegar a uma conclusão e concluir tais Task-Cards.

Avaliando a sistemática do processo utilizado pela empresa VEM, este artigo apresenta um sistema de informação cujo tipo é Sistema de Apoio à Decisão (SAD). Para implementar um sistema de apoio à decisão que consiga alcançar os objetivos propostos, optou-se pelo uso da abordagem de RBC. Esta abordagem prevê a comparação entre o novo problema (nova Task-Card de pesquisa de pane) e uma base de casos preexistente (Task-Cards de pesquisa de pane com solução).

O desenvolvimento do sistema SISPONAVE se justifica na medida em que este consegue de maneira rápida e objetiva, resgatar as Task-Cards de pesquisas de panes iguais ou semelhantes, solucionadas anteriormente em outras aeronaves. Isto faz com que estas sirvam como parâmetros de apoio a serem tomados ou seguidos na pesquisa da pane atual, diminuindo o tempo e o esforço dos técnicos de manutenção de aeronaves ao realizarem estas tarefas.

Para uma melhor visualização e entendimento do artigo, este foi dividido em seções. A seção 2 apresenta uma revisão bibliográfica sobre a abordagem de RBC, a seção 3 a metodologia de desenvolvimento aplicada no sistema. A seção 4 apresenta as características do mesmo, a seção 5 o seu uso e por fim são apresentadas as conclusões.

Raciocínio Baseado em Casos

Raciocínio Baseado em Casos (RBC) (Kolodner, 1993) é uma das subáreas abordadas pela Inteligência Artificial (IA), que procura resolver novos problemas com base nas soluções utilizadas na resolução de problemas anteriores. A abordagem RBC caracteriza um caso como sendo todo o problema armazenado na base de casos. Os casos armazenados na base de casos são compostos de atributos e seus respectivos valores, a descrição do problema e a descrição da solução. Para uma melhor compreensão do que está sendo tratado, (Wangenheim, 2003) veja um exemplo utilizado diariamente pelos seres humanos na resolução de seus problemas:

· Ao atender um novo paciente e escutar seus problemas, o médico lembra-se do histórico da doença de um outro paciente devido ao conjunto similar de sintomas, e aplica-lhe um tratamento semelhante ao que administrou ao paciente que apresentou aqueles sintomas similares: «Os problemas apresentados nos ouvidos do paciente são parecidos com um caso típico de otite média. Assim vou administrar-lhe um tratamento para otite média.»

Esta situação demonstra o fato de que uma solução para um problema obtido no passado foi reutilizada para guiar a solução do problema na situação presente. RBC (Wangenheim, 2003) é a abordagem da IA inspirada neste modelo de cognição e comportamento humano. Utilizando-se do mesmo princípio usado pelo médico, a abordagem de RBC faz com que os problemas sejam armazenados em uma base de casos para uma futura reutilização.

Para resolver um novo problema é recuperado o caso mais parecido da base de casos. Se necessário, é adaptada a solução do caso recuperado para o novo problema. Se o problema foi resolvido com sucesso utilizando a adaptação da solução recuperada, este novo caso é retido na base de casos caracterizando assim, o aprendizado no sistema de RBC, uma de suas principais características.

Sistema para pane em aeronaves.

Figura 1: Modelo de funcionamento de RBC

O desenvolvimento de um sistema (Aamodt & Plaza, 1994) utilizando a RBC prevê a abordagem das quatro etapas mostradas na Figura 1, bem como outras três etapas que estão implícitas no modelo. As etapas abordadas pela RBC no desenvolvimento de um sistema são:

·Aquisição do conhecimento;

·Representação do conhecimento;

·Indexação dos casos;

·Recuperação dos casos;

·Reutilização dos casos;

·Adaptação dos casos;

·Retenção dos casos.

A etapa de aquisição do conhecimento é responsável por obter todas as informações pertinentes ao problema junto a um especialista. O especialista é a pessoa que detém um grande conhecimento e domínio destas informações. Os métodos que podem ser utilizados na obtenção destas informações são imersão na literatura, entrevistas abertas, entrevistas estruturadas e análise de informações.

A etapa de representação do conhecimento é responsável por apresentar um modelo de implementação, capaz de possuir as características ressaltadas pelo especialista durante a etapa de aquisição do conhecimento. O modelo de implementação é a forma computacional de se representar o problema na base de casos.

A etapa de indexação dos casos é responsável pela escolha dos índices que representarão diretamente o problema no momento do processo de recuperação dos casos. Um índice pode ser um atributo, um predicado, uma composição de atributos, etc. A indexação da base de casos permite a recuperação dos casos armazenados. A boa compreensão do problema auxilia na escolha dos índices.

A etapa de recuperação de casos é responsável pela busca dos casos similares existentes na base de casos. Para isto, é preciso escolher o cálculo a ser utilizado no sistema para a recuperação destes. O cálculo da distância utilizado na implementação do sistema SISPONAVE é o Nearest Neighbor normalizado, mais conhecido como algoritmo do vizinho mais próximo. Este cálculo se baseia na similaridade entre o novo problema e os casos armazenados na base de casos.

Os objetivos da etapa de recuperação dos casos são de encontrar os casos mais parecidos com o novo problema (Matching) e o de escolher o melhor caso em relação ao novo problema (Ranking). A recuperação dos casos (Lorenzi & Ricci, 2004) depende de como os mesmos foram indexados na base de casos.

A etapa de reutilização dos casos é responsável por verificar se o caso recuperado da base de casos poderá ou não resolver o novo problema sem sofrer nenhuma modificação. Caso não seja necessária nenhuma modificação, a solução do caso recuperado é aplicada ao novo problema conseguindo assim resolvê-lo.

A etapa de adaptação dos casos é responsável por modificar o caso recuperado para que este se adapte ao novo problema e assim o consiga resolvê-lo. O processo de adaptação dos casos (Wangenheim, 2003) é tratado atualmente pelas técnicas de adaptação nula, adaptação substitucional, adaptação estrutural e adaptação composicional.

A etapa de retenção dos casos é responsável por armazenar na base de casos, os casos que foram utilizados com sucesso na resolução de um novo problema. A retenção dos casos oferece aos sistemas RBC, a capacidade de estarem sempre aprendendo, ou seja, na medida em que novos casos são retidos na base de casos, a probabilidade de se conseguir resolver um novo problema, utilizando-se da solução dos casos armazenados na base de casos, também aumenta.

Projeto do Sistema

Fundada em 01/01/2002, a VEM Engenharia e Manutenção é uma empresa que atua no ramo de atividade da prestação de serviços, tendo como segmento de mercado a área da Manutenção de Aeronaves. A VEM possui instalações nas cidades de Porto Alegre, Rio de Janeiro e São Paulo, estando estas localizadas juntas aos aeroportos dessas cidades. Como principal serviço a VEM oferece a realização de Programas de Manutenções para diferentes fabricantes, tipos e modelos de aeronaves.

O ambiente organizacional da VEM é formado de uma diretoria executiva que possui como apoio quatro áreas de gestão coorporativa (controladoria, finanças e contabilidade, tecnologia de informação, administração e recursos-humanos) e de uma área de produção (manutenção de componentes e motores, manutenção de aeronaves em Porto Alegre, manutenção de aeronaves no Rio de Janeiro e coordenação técnica de suporte a linhas aéreas).

O sistema SISPONAVE foi desenvolvido para atuar junto à área de manutenção de aeronaves da VEM, a fim de tornar este uma ferramenta a mais de uso, disponível a qualquer momento, a todos da área de manutenção envolvidos com tarefas de pesquisa de panes nas aeronaves.

Cabe ressaltar que realizando uma pesquisa na Internet e até mesmo buscando informações junto à empresa, não foi encontrado nenhum tipo de sistema em uso na área, que auxiliasse os Técnicos de Manutenção de Aeronaves na solução de tais tarefas.

Aquisição do Conhecimento

Para que o sistema pudesse ser implementado se fez necessário à aquisição de uma série de informações sobre o processo de controle das Task-Cards. Sendo assim, foram realizadas reuniões e entrevistas junto a alguns funcionários da empresa, ligados à área da Manutenção de Aeronaves.

A primeira reunião ocorreu com o gerente de manutenção das áreas de elétrica e aviônica, mecânica geral e interiores das oficinas de Porto Alegre. Esta reunião teve como objetivo, a apresentação da proposta de desenvolvimento do sistema SISPONAVE. A segunda, logo após a primeira, ocorreu com o líder de grupo da área de elétrica e aviônica de uma das linhas de manutenção de Porto Alegre. Esta reunião teve como objetivo, levantar o nome da pessoa que pudesse fornecer informações detalhadas a respeito do processo de controle das Task-Cards.

O funcionário entrevistado foi o supervisor de manutenção da área de elétrica e aviônica das oficinas de Porto Alegre. Este foi o responsável por explicar o funcionamento atual do processo de controle das Task-Cards. A entrevista realizada foi do tipo aberta, sendo esta o método no qual o especialista explica livremente o problema e / ou explica como trabalha enquanto resolve o problema. Sendo assim, segue abaixo o andamento do processo de controle das Task-Cards, descrito por ele, durante a sua entrevista.

O apontador, sabendo da realização de um Programa de Manutenção em uma determinada aeronave, realiza o cadastro deste no sistema e este gera uma série de tarefas de manutenção obrigatórias a serem realizadas na aeronave. O inspetor, de posse de uma das Task-Card de inspeção, vai até a aeronave e inicia a realização de inúmeros testes, a fim de encontrar alguma anormalidade no sistema de vôo inspecionado. Ao encontrar um problema, o inspetor gera uma Task-Card de pesquisa de pane e a destina a um líder. O líder, de posse dessa Task-Card, analisa o problema e a atribui a um Técnico de Manutenção de Aeronaves.

O técnico, de posse da Task-Card de pesquisa de pane, realiza uma busca nos manuais de manutenções, levantando assim uma série de informações sobre o sistema de vôo em pane e os procedimentos de manutenção a serem seguidos, a fim de se corrigir o problema. Realizada a correção do problema, o técnico responde a Task-Card de pesquisa de pane, descrevendo na mesma a solução tomada. O inspetor, de posse da Task-Card solucionada, vai até a aeronave e inicia os testes novamente, a fim de verificar se o problema foi realmente corrigido. Não existindo mais o problema, o apontador, de posse da Task-Card de pesquisa de pane, encerra esta no sistema e após armazena a mesma no local pré-determinado pela empresa.

Representação do Conhecimento

Após concluir a etapa de aquisição do conhecimento foi dado início à etapa de representação do conhecimento. Nesta etapa foram definidos o novo andamento do processo de controle das Task-Cards e as informações que representam os casos na base de casos.

Para que não seja descrito novamente o processo de controle das Task-Cards, a Figura 2 apresenta o mesmo de forma ilustrada, porém sendo adicionadas a este processo duas novas atividades, a fim de serem adotadas a partir da utilização do sistema SISPONAVE pela empresa VEM. As duas novas atividades adicionadas ao processo de controle das Task-Cards são "Consulta o Software" e "Atualiza o Software".


Sistema para pane em aeronaves.

Figura 2: Processo de controle das Task-Cards

O processo de controle das Task-Cards mostrado na figura 2 é composto de quatro atores e treze atividades distintas. Os atores representam o papel de uma pessoa externa deste processo. As atividades representam as tarefas possíveis de serem realizadas por um ator, em um determinado domínio. O Quadro 1 apresenta os atores que compõe este processo juntamente com as suas descrições.

Quadro 1 – Atores do processo

Descrição

Apontador

Pessoa responsável pelo processo de controle das Task-Cards

Inspetor

Pessoa responsável pelas inspeções das aeronaves

Líder

Pessoa responsável pela supervisão dos técnicos

Técnico

Pessoa responsável pela realização das Task-Cards nas aeronaves

A atividade "Consulta o Software" tem como objetivo fazer com que o técnico, de posse da Task-Card de pesquisa de pane, realize uma consulta no sistema a fim de encontrar os casos mais parecidos com o problema atual. A atividade "Atualiza o Software" tem como objetivo fazer com que o apontador, de posse de uma Task-Card de pesquisa de pane, cadastre esta como um novo caso no sistema.

Cabe ressaltar que todas as Task-Card de pesquisa de pane devem ser cadastradas no sistema SISPONAVE.

Um caso (Kolodner, 1993) é um pedaço contextualizado de conhecimento representando uma experiência real, relacionada a alguma situação em um determinado momento. No sistema SISPONAVE, os casos representam as Task-Cards de pesquisas de panes solucionadas pelos Técnicos de Manutenção da empresa VEM. O Quadro 2 apresenta as informações que representam um caso na base de casos.

Quadro 2 – Informações dos casos

Descrição

Exemplo

Número da pane

Número que identifica o caso na base de casos

00000001

Descrição do prefixo

Descrição que identifica a aeronave em pane

AA-AAA

Descrição do setor

Descrição que identifica o setor responsável

EIA

Número do capítulo

Número que identifica o capítulo referente à pane

27

Número da seção

Número que identifica a seção referente à pane

50

Número da unidade

Número que identifica a unidade referente à pane

20

Descrição do problema

Descrição da pane

Flap não baixa

Descrição da solução

Descrição da solução

Substituído o Flap

Matrícula do emitente

Número que identifica o emitente do caso

85330-6

Data de criação

Data de criação

01/07/2006

Matrícula do técnico

Número que identifica o técnico

24550-2

Data de execução

Data da execução

02/07/2006

Matrícula do inspetor

Número que identifica o inspetor

20100-5

Data de inspeção

Data da inspeção

03/07/2006

Os números do capítulo, da seção e da unidade correspondem ao equipamento da aeronave implicitamente relacionado à descrição do problema, sendo esta relação de números definidas por um órgão internacional de controle da área, a ATA (Air Transport Association of America). Pelo exemplo, 27 é o capítulo que identifica o sistema da aeronave no qual o Flap faz parte, 50 é a seção definida pela ATA que faz referência ao Flap e 20 é a unidade que está especificamente relacionada com problema desta aeronave, os Flaps-Inboard.

Indexação dos Casos

Além de definir quais são os índices que representam os casos na base de casos, a etapa de indexação dos casos, prevê também a definição de um valor de peso a ser atribuído a cada um dos mesmos. Os pesos são atribuídos aos índices, para que o sistema consiga realizar a recuperação dos casos cadastrados na base de casos. A Tabela 1 apresenta os índices escolhidos para representarem os casos na base de casos e o valor dos seus respectivos pesos.

Tabela 1 – Índices e pesos

Peso

Descrição do fabricante

3

Descrição do tipo

2

Descrição do modelo

1

Descrição do setor

1

Número do capítulo

5

Número da seção

4

Número da unidade

3

Para que os usuários possam alterar o valor destes pesos, foi disponibilizado no sistema SISPONAVE, uma interface que permite a modificação destes valores no próprio sistema. Desta forma os mesmos, a qualquer momento, podem alterar o valor dos pesos aplicados aos índices e assim, de forma simples e rápida, realizarem testes no sistema até que estes alcancem uma situação de retorno dos casos que seja condizente com o esperado.

Recuperação dos Casos

Na maioria dos sistemas de RBC, a similaridade entre o novo problema e os casos armazenados na base de casos é dada através de um cálculo, cujo resultado é o valor da distância existente entre estes. A seguir, é apresentada a fórmula para calcular esta distância (Wangenheim, 2003).


Sistema para pane em aeronaves.

Onde:

c = caso armazenado;

q = novo problema;

f = atributo;

w= peso do atributo;

sim(cf, qf) = função de similaridade.

A função de similaridade, presente na fórmula do cálculo da distância, determina a similaridade entre duas entidades de informação (cf, qf). Para cada um dos índices foram definidas diferentes funções de similaridade. Como para alguns índices a definição desta função depende do valor das características de outros índices, o Quadro 3 apresenta as respectivas representações dadas a estes, para que assim se possa melhor identificá-los e entendê-los nas fórmulas definidas abaixo.

Quadro 3 – Representação dos índices

Representação

Descrição do fabricante

F_1

Descrição do tipo

F_2

Descrição do modelo

F_3

Descrição do setor

F_4

Número do capítulo

F_5

Número da seção

F_6

Número da unidade

F_7

A função de similaridade definida para o fabricante é dada através da atribuição direta dos valores 1 ou 0 a função. A função recebe o valor 1 quando as características f_1 do novo problema forem iguais às características do caso recuperado. Caso contrário, a função recebe o valor 0.

Sistema para pane em aeronaves.

A função de similaridade definida para o tipo é dada através da atribuição direta dos valores 1 ou 0 a função. A função recebe o valor 1 quando as características f_1 e f_2 do novo problema forem iguais às características do caso recuperado. Caso contrário, a função recebe o valor 0.


Sistema para pane em aeronaves.

A função de similaridade definida para o índice modelo é dada através da atribuição direta dos valores 1,0.5 ou 0 à função. A função recebe o valor 1 quando as características f_1, f_2 e f_3 do novo problema forem iguais às características do caso recuperado. Se as características f_1 e f_2 forem iguais e f_3 diferentes, a função recebe o valor de 0.5. Caso contrário, a função recebe o valor 0.

Sistema para pane em aeronaves.

A função de similaridade definida para o índice setor é dada através da atribuição direta dos valores 1 ou 0 a função. A função recebe o valor 1 quando as características f_4 do novo problema forem iguais às características do caso recuperado. Caso contrário, a função recebe o valor 0.

Sistema para pane em aeronaves.

A função de similaridade definida para o índice capítulo é dada através da atribuição direta dos valores 1 ou 0 a função. A função recebe o valor 1 quando as características f_5 do novo problema forem iguais às características do caso recuperado. Caso contrário, a função recebe o valor 0.

Sistema para pane em aeronaves.

A função de similaridade definida para o índice seção é dada através da atribuição direta dos valores 1 ou 0 a função. A função recebe o valor 1 quando as características f_5 e f_6 do novo problema forem iguais às características do caso recuperado. Caso contrário, a função recebe o valor 0.

Sistema para pane em aeronaves.

A função de similaridade definida para o índice unidade é dada através da atribuição direta dos valores 1,  0.5 ou 0 à função. A função recebe o valor 1 quando as características f_5, f_6 e f_7 do novo problema forem iguais às características do caso recuperado. Se as características f_5 e f_6 forem iguais e f_7 diferentes, a função recebe o valor de 0.5. Caso contrário, a função recebe o valor 0.


Sistema para pane em aeronaves.

Para que seja visualizada, a aplicação prática da fórmula do cálculo da distância na recuperação de um caso, será apresentado um exemplo que simulará a realização de uma pesquisa de pane no sistema SISPONAVE. Para a realização deste exemplo é preciso definir as características dos índices do problema atual e dos casos existentes na base de casos. Sendo assim, o Quadro 4 apresenta as informações contendo tais características.

Quadro 4 – Base de casos

 

Fabricante

Tipo

Modelo

Setor

Capítulo

Seção

Unidade

Caso 1

Boeing

737

200

EIA

27

50

30

Caso 2

Boeing

727

100

EIA

27

50

20

Caso 3

Boeing

737

300

MG

74

20

50

 

Definido que o problema atual é igual ao caso de número 1 é então realizada a aplicação da fórmula do cálculo da distância em cada um dos atributos dos casos. A Tabela 2 apresenta o resultado do cálculo da distância de cada um dos atributos do novo problema com relação aos atributos dos casos da base de casos.

Tabela 2 – Resultado dos cálculos

 

Fabricante

Tipo

Modelo

Setor

Capítulo

Seção

Unidade

Peso

3

2

1

1

5

4

3

Sim (cf, qf )

1 ou 0

1 ou 0

1 ou 0.5 ou 0

1 ou 0

1 ou 0

1 ou 0

1 ou 0.5 ou 0

Caso 1

3 x (1) = 3

2 x (1) = 2

1 x (1) = 1

1 x (1) = 1

5 x (1) = 5

4 x (1) = 4

3 x (1) = 3

Caso 2

3 x (1) = 3

2 x (0) = 0

1 x (0) = 0

1 x (1) = 1

5 x (1) = 5

4 x (1) = 4

3 x (0.5) = 1.5

Caso 3

3 x (1) = 3

2 x (1) = 2

1 x (0.5) = 0.5

1 x (0) = 0

5 x (0) = 0

4 x (0) = 0

3 x (0) = 0

 

Após obter o valor da distância de cada um dos atributos do caso, os mesmos devem ser então somados. Desta forma, se obtém a distância total do caso recuperado com relação ao novo problema. A similaridade entre o caso recuperado da base de casos e o novo problema é dada através de um percentual de similaridade, onde este é obtido através da divisão da distância total do caso sobre a soma total dos pesos. A Tabela 3 apresenta o percentual de similaridade de cada um dos casos usados neste exemplo.

Tabela 3 – Resultado da pesquisa

 

Similaridade

Caso 1

     19 / 19 = 100%

Caso 2

  14.5 / 19 =   76%

Caso 3

    5.5 / 19 =   29%

 

No sistema SISIPONAVE o caso recuperado da base de casos que obter o maior percentual de similaridade é considerado o caso mais similar em relação ao novo problema.