1
João Inácio da Silva Filho & Jair Minoro Abe
São Paulo 1999
2
2000, by Editora Arte & Ciência Direção Geral Henrique Villibor Flory Editor e Projeto Gráfico Aroldo José Abreu Pinto / Karel H. Langermans Editoração Eletrônica Alain Ferreira do Nascimento Capa Karel H. Langermans Revisão Letizia Zini Antunes Dados Internacionais de Catalogação na Publicação (CIP) (Acácio José Santa Rosa, CRB-8/157) Silva Filho, João Inácio Fundamentos das redes neurais artificiais paraconsistente / João Inácio da Silva Filho e Jair Minoro Abe - São Paulo: Arte & Ciência, 2000. 188 p. il; 21 cm (Coleção Universidade Aberta) Inclui Apêndice A,B,C,D Exercícios no final do capítulos
R484s
Referência Bibliografica ISBN: 85.7473-042-4 1.Redes Neurais Artificiais (computação) 2. Sistemas neurais artificiais paraconsisitente . 3. Linguagem de programas de computador. 4.Inteligência artificial. 5. Lógica paraconsistete. 6. Neurocomputação. 7. Análise de sistemas. 8. Engenharia de análise de sistemas . I Abe, Jair Minoro. II Título CDD -
001.6 006.3
Índice para catálogo sistemático: 1. Redes Neurais: Computação
001.6
2.Computação: Informatica: Linguagem de Programação
006.3
3.
Editora Arte & Ciência Rua Treze de Maio, 71 – Bela Vista São Paulo – SP - CEP 01327-000 Tel/fax: (0XX11) 257-5871 Na internet: http://www.arteciencia.com.br 3
SUMÁRIO Prefácio, 10 Capítulo 1 – INTRODUÇÃO GERAL, .................................................15 1.1-Introdução...................................................................................................15 1.2-A Neurocomputação, ................................................................................16 1.3-Aplicando a Lógica Paraconsistente em Redes Neurais Artificiais, ..........................................................................................................17 1.4-Noções elementares de redes neurais artificiais paraconsistentes RNAP’s................................................................................18 1.5-O código do processamento de sinais, ..................................................20 1.6-Comparação entre as Redes Neurais Clássicas e a RNAP, ..................22 1.7-Apresentação do livro, .............................................................................23 Capítulo 2 - A LÓGICA PARACONSISTENTE, ........................................25 2.1-Introdução, ..................................................................................................26 2.2-A Lógica Clássica, ........................................................................................27 2.3- Lógica Paraconsistente,................................................................................30 2.4-A Lógica Paraconsistente Anotada, .............................................................32 2.4.1-Lógica proposicional paraconsistente anotada (LPA2v),...........................33 2.5-A Metodologia de Aplicação da Lógica Paraconsistente Anotada, ..............38 2.6-Representação do reticulado associado a Lógica Paraconsistente Anotada,..40 2.6.1-Reticulado associado á lógica paraconsistente anotada – LPA1v...............40 2.6.2-Lógica paraconsistente anotada de anotação com dois valores – LPA2v,...42
2.7-Aplicações da Lógica Paraconsistente Anotada de anotação com dois valores–LPA2v,...........................................................44 2.7.1 A Análise Paraconsistente com a LPA2v.....................................45 4
2.7.2 O grau de Contradição Gct, ...................................................................46 2.7.3 O grau de Certeza Gc,.............................................................................47 2.7.4 Reticulado associado a LPA2v constituído com valores de graus de Contradição e graus de Certeza, ....................................................................47 2.7.5 O algoritmo Para-Analisador, ...............................................................49 2.7.6 Os Operadores Lógicos da LPA2v, .....................................................55 2.7.7 O algoritmo Para-Analisador Simplificado, ........................................58 2.8 A célula artificial paraconsistente básica CAPb, .................................60 2.9 Considerações finais, ...............................................................................63 2.10 Exercícios,.................................................................................................64 Capítulo 3 – OS CONCEITOS FUNDAMENTAIS DAS CÉLULAS NEURAIS ARTIFICIAIS PARA CONSISTENTES,....................................67 3.1 Introdução, .................................................................................................67 3.2 Conceitos Básicos das Células Neurais Artificiais Paraconsistentes,..............................................................................................68 3.2.1 O grau de crença resultante mr, ..........................................................68 3.2.2 A Equação Estrutural Básica (EEB) ,..................................................70 3.2.3 Grau de indefinição, .............................................................................71 3.2.4 Fator de tolerância à contradição Ftct, ...............................................71 3.2.5 O sinal de resposta à contradição Sct,................................................73 3.2.6 Fator de tolerância à decisão Ftd,........................................................74 3.2.7 Fator de tolerância à certeza Ftc, ........................................................76 3.3 O fator de tolerância à certeza utilizado como controle da célula, ............................................................................................77 3.4 A influência conjunta do fator de tolerância à contradição e do fator de tolerância à certeza na análise da célula...................................................78 3.5 O Operador da Negação lógica (Operador Not),....................................80 3.6 O Operador da complementação lógica (Operador Complemento),...............................................................................81 3.6.1A transformação do grau de descrença em grau de crença,..............82 3.7 Considerações Finais,................................................................................83 3.8 Exercícios, ...................................................................................................83 Capítulo 4 – AS CÉLULAS NEURAIS ARTIFICIAIS PARACONSISTENTES, .................................................................................85 4.1 Introdução,.................................................................................................85 4.2 A família de Células Neurais Artificiais Paraconsistentes,...................87 4.3 Célula Neural Artificial Paraconsistente de conexão analítica – CNAPCa, ...........................................................................................................88 4.3.1 Representação simplificada, ...................................................................91 5
4.4 Célula Neural Artificial Paraconsistente de conexão lógica simples – CNAPCIs,.............................................................................91 4.4.1 Representações simplificadas, ..............................................................94 4.5 Célula Neural Artificial Paraconsistente de conexão lógica seletiva – CNAPCIse, ...........................................................................94 4.5.1 Representação simplificada, .................................................................96 4.5.2 Representação simplificada,...................................................................97 4.6 Célula Neural Artificial Paraconsistente de passagem – CNAPp, ...........................................................................................................98 4.6.1 Representação simplificada, ..................................................................99 4.7 Célula Neural Artificial Paraconsistente de complementação – CNAPco, .........................................................................................................100 4.7.1 Representação simplificada, ..........................................................102 4.8 Célula Neural Artificial Paraconsistente de decisão – CNAPd, .........102 4.8.1 Representação simplificada, ................................................................104 4.9 Célula Neural Artificial Paraconsistente de aprendizagem – CNAPa,.........................................................................................................105 4.9.1 O fator de aprendizagem FA, ................................................................106 4.9.2 Algoritmo de aprendizagem da CNAPa, ............................................106 4.9.3 Fator de desaprendizagem FDA, ...........................................................106 4.9.4 Representação simplificada, .................................................................106 4.10 Célula Neural Artificial Paraconsistente de memorização – CNAPm, ........................................................................................................107 4.10.1 Representações simplificadas, ..........................................................110 4.11 Considerações finais, ............................................................................111 4.12 Exercícios, ...............................................................................................112
Capítulo 5 – A CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE APRENDIZAGEM,.......................................114 5.1 Introdução,................................................................................................114 5.2 A Célula Neural Artificial Paraconsistente de aprendizagem CNAPa, .............................................................................................................116 5.2.1 Aprendizagem de uma Célula Neural Artificial Paraconsistente, ............................................................................................................................117 5.2.2 O fator de aprendizagem FA, .................................................................117 5.2.3 O algoritmo de aprendizagem, ............................................................... 5.3 Os processos de aprendizagem e de desaprendizagem de uma Célula Neural ArtificialParaconsistente – CNAP,..............................123 5.3 .1 Reconhecimento do padrão a ser aprendido, ................................. 123 5.3 .2 O fator de desaprendizagem FDA, .......................................................124 6
5.3.3 Confirmação da aprendizagem da proposição negada, ...................125 5.4 Estudos do Algoritmo de Aprendizagem e de Desaprendizagem Completo de uma Célula Neural Artificial Paraconsistente, .....................125 5.5 Os resultados práticos no treinamento de uma Célula Neural Artificial Paraconsistente de aprendizagem - CNAPa, ..............................128 5.5.1 Representação simplificada, ................................................................130 5.6 Ensaios da Célula Neural Artificial Paraconsistente de aprendizagem - CNAPa com variações nos valores dos fatores de aprendizagem FA e desaprendizagem FDA, .................................................131 5.7 Ensaio de uma Célula Neural Artificial Paraconsistente de aprendizagem - CNAPa com aplicações de diversos padrões com diferentes valores, ......................................................................................................133 5.8 Considerações finais, ..............................................................................135 5.9 Exercícios, .................................................................................................135
Capítulo 6 – PARA-PERCEPTRON - NEURÔNIO ARTIFICIAL PARACONSISTENTE, .......................................................137 6.1 Introdução,.................................................................................................137 6.2 O Neurônio Biológico, ............................................................................139 6.3 O Neurônio Artificial, ..............................................................................143 6.4 O Neurônio Artificial Paraconsistente Para-Perceptron, ...................145 6.5 Modelos de Para-Perceptrons, .............................................................155 6.6 Ensaio de um Para-Perceptron típico, ..................................................157 6.7 Considerações finais, ...............................................................................159 6.8 Exercícios, ................................................................................................. 159 Capítulo 7 – AS UNIDADES NEURAIS ARTIFICIAIS PARACONSISTENTES, .......................................................161 7.1 Introdução,.................................................................................................161 7.2 As células componentes, ........................................................................162 7.2.1 Célula Neural Artificial Paraconsistente de decisão,.........................163 7.2.2 Célula Neural Artificial Paraconsistente de conexão analítica, ...........................................................................................164 7.2.3 Célula Neural Artificial Paraconsistente de conexão lógica simples, ....................................................................................................165 7.2.4 Célula Neural Artificial Paraconsistente de conexão lógica seletiva, .....................................................................................................166 7.2.5 Célula Neural Artificial Paraconsistente de aprendizagem, .............167 7.2.6 Célula Neural Artificial Paraconsistente de memorização, ..............168 7
7.2.7 Célula Neural Artificial Paraconsistente de passagem, ...................169 7.2.8 Célula Neural Artificial Paraconsistente de complementação, .........170 7.3 As Unidades Neurais Artificiais Paraconsistentes – UNAP’s, ...........178 7.3.1 Unidade Neural Artificial Paraconsistente de aprendizagem e memorização de padrões UNAP-amp, ..........................................................171 7.3.2 Unidade Neural Artificial Paraconsistente de aprendizagem com ativação por maximização – UNAP-am, ...............................................171 7.3.3 Unidade Neural Artificial Paraconsistente de aprendizagem, controle e memorização de padrões – UNAP-acm, ...................................172 7.3.4 Unidade Neural Artificial Paraconsistente de aprendizagem com análise instantânea – UNAP-AI, ..........................................................173 7.3.5 Unidade Neural Artificial Paraconsistente de aprendizagem por igualdade de padrões – UNAPa-PIP, ....................................................174 7.3.6 Unidade Neural Artificial Paraconsistente de aprendizagem por repetição de pares de padrões – UNAPa-PRPP, .................................175 7.3.7 Unidade Neural Artificial Paraconsistente de extração de máximo – UNAP-Emax, ..................................................................................176 7.3.8 Unidade Neural Artificial Paraconsistente de extração de mínimo – UNAP-Emin, ...................................................................................177 7.3.9 Unidade Neural Artificial Paraconsistente de competição seletiva - UNAP-Cse, .....................................................................................178 7.3.10 Unidade Neural Artificial Paraconsistente de ativação de padrão – UNAP-AT, ......................................................................................179 7.4 Considerações finais, .............................................................................180 7.5 Exercícios, ..................................................................................................181
Capítulo 8 – OS SISTEMAS NEURAIS ARTIFICIAIS PARACONSISTENTES, ..............................................................................183 8.1 Introdução, ................................................................................................183 8. 2 Sistema Neural Artificial Paraconsistente de aprendizado condicionado – SNAPac, .......................................................................................................184 8. 3 O Aprendizado condicionado, ...............................................................185 8. 3.1 As experiências de Pavlov, .................................................................185 8. 3.2 As regras de aprendizagem de Hebb, ................................................186 8.4 As células componentes do SNAPac, ..................................................186 8.4 .1 A célula de aprendizagem,...................................................................187 8.4 .2 A célula de conexão analítica, ............................................................188 8.4 .3 Célula de decisão, ................................................................................188 8.4 .4 Célula de conexão lógica simples, .....................................................189 8. 5 A configuração básica do SNAPac, .....................................................189 8
8. 6 Ensaios com o SNAPac, ........................................................................196 8. 6 .1 A importância do SNAPac no processo evolutivo da Neurocomputação, ..................................................................197 8. 7 Sistema Neural Artificial Paraconsistente de tratamento de contradições – SNAPtc, ................................................................................198 8. 8 As células componentes do SNAPtc,...................................................199 8. 9 A configuração básica do SNAPtc, ......................................................199 8.10 Ensaios com o SNAPtc,..........................................................................201 8.10.1 A importância do SNAPac no processo evolutivo da Neurocomputação, ..................................................................203 8.11 Considerações finais,.............................................................................204 8.12 Exercícios, ...............................................................................................204
Capítulo 9 – A REDE NEURAL ARTIFICIAL PARACONSISTENTE, ..................................................................................207 9.1 Introdução,.................................................................................................208 9. 2 A Rede Neural Artificial Paraconsistente e as células neurais componentes, ................................................................................................209 9. 3 A arquitetura da Rede Neural Artificial Paraconsistente – RNAP, ..........................................................................................................212 9. 4 Descrição do funcionamento da RNAP, ...............................................214 9.4.1 Unidade Neural Artificial Paraconsistente de aprendizagem primária e memorização de padrões, ............................................................215 9.4.2 Unidade Neural Artificial Paraconsistente de ativação de padrões, ..........................................................................................................217 9.4.3 Unidade Neural Artificial Paraconsistente de competição seletiva, ...........................................................................................................218 9.4.4 O sistema Neural Artificial Paraconsistente de aquisição de conhecimento, ................................................................................................219 9.5 Considerações finais, ..............................................................................222 9.6 Exercícios, ...................................................................................................223
Capítulo 10- O SISTEMA DE RACIOCÍNIO LÓGICO PARACONSISTENTE,.................................................................225 10. 1 Introdução,..............................................................................................225 10. 2 Sistema Neural Artificial Paraconsistente de raciocínio lógico - SNAPrl, .............................................................................................228 10.3 Sistema Neural Artificial Paraconsistente de raciocínio 9
lógico de minimização – SNAPrlMin,...............................................................229 10. 4 Sistema Neural Artificial Paraconsistente de raciocínio lógico maximização – SNAPrlMax, ................................................................232 10. 5 Sistema Neural Artificial Paraconsistente de raciocínio lógico OU exclusivo – SNAPr-EXOR, ................................................................................234 10. 6 Sistema Neural Artificial Paraconsistente de raciocínio lógico completo - SNAPrlCOM, ............................................................................................236 10. 7 Considerações finais,............................................................................238 10. 8 Exercícios, ..............................................................................................239 Capítulo11 – CONCLUSÕES, ................................................................... ..241 11. 1 Introdução,..............................................................................................241 11. 2 A Lógica Paraconsistente aplicada em Redes Neurais, ...................242 11. 3 O código de comunicação na Rede de Neurônios Artificiais Paraconsistentes, ........................................................................243 11. 4 Considerações sobre as Redes Neurais Artificiais Paraconsistentes, ...........................................................................................................................244 11. 5 Considerações finais, ............................................................................245 Apêndice A,.....................................................................................................247 Apêndice B, .....................................................................................................258 Apêndice C, .....................................................................................................263 Apêndice D, .....................................................................................................268 Referências bibliográficas,.............................................................................284
10
Tecendo o Amanhã Um galo sozinho não tece o amanhã: ele precisará sempre de outros galos de um que apanhe esse grito que ele e o lance a outro; de um outro galo que apanhe o grito que um galo antes e o lance a outro; e de outros galos que com muitos outros se cruzem os fios do sol de seus gritos de galo, para que a manhã, desde uma teia tênue, se vá tecendo, entre todos os galos. E se encorpando em tela, entre todos, se erguendo em tenda, onde entrem todos, se entretendo para todos, no toldo (a manhã) que plana livre de armação. A manhã toldo de um tecido tão aéreo que, tecido, se eleva por si: luz balão. João Cabral de Melo Neto
Para fazer Ciência é preciso fazer da vida um sonho e de um sonho realidade. Pierre Curie
12
PREFÁCIO Neste livro apresentamos uma introdução aos fundamentos das Redes Neurais Artificiais Paraconsistentes RNAP, visando sua estruturação em linguagem de programação computacional. Os estudos das Redes Neurais Artificiais são, atualmente, muito difundidos em âmbito mundial sendo matéria de interesse inserida em currículos normais de cursos de graduação e pós-graduação. No Brasil, a partir dos anos 70, começaram a aparecer estudos significativos sobre Redes Neurais Artificiais RNA e, recentemente há uma grande demanda no setor de aplicações em Inteligência Artificial, mais especificamente nas áreas de Automação e Robótica. A teoria e a metodologia que apresentamos constitui novidade na área de Redes Neurais Artificiais, porquanto os conceitos fundamentais baseiam-se numa nova classe de lógicas recentemente pesquisadas: as Lógicas Paraconsistentes pertencentes ao grupo das Lógicas Não-Clássicas. As idéias desenvolvidas neste trabalho mostram a Lógica Paraconsistente como uma eficiente ferramenta na área de Neurocomputação, possibilitando a construção de novas Redes Neurais Artificiais extremamente eficazes, capacitando-as a dar respostas satisfatórias a muitas questões concernentes à “modelagem” do cérebro humano. Em conseqüência, a metodologia para a implementação dos componentes da rede, bem como o tratamento dos conceitos basilares envolvidos, apresentam-se de forma um pouco distinta das conhecidas em estudos e publicações referentes às Redes Neurais Artificiais Clássicas. Tendo isso em mente, procuramos apresentar o conteúdo de forma didática e sistemática, optando por uma apresentação informal com estilo coloquial. No entanto, todos os assuntos são abordados com profundidade suficiente para serem utilizados em cursos de graduação e de pós-graduação, nas áreas de engenharia, de análises de Sistemas e de programação computacional, proporcionando ao leitor capacidade para efetuar suas próprias investigações. Uma apresentação mais formal está sendo preparada 14
em outro volume que esperamos vir a lume em breve. O novo tratamento aqui apresentado contém as teorias clássicas das Redes Neurais Artificiais e proporciona ao leitor os sólidos fundamentos para, utilizando a Lógica Paraconsistente, modelar eficientemente diversas funções comportamentais do cérebro tais como: · · · · ·
Memória distribuída Funcionamento paralelo Característica de análises emergentes Aprendizado condicionado Capacidade de gerar plasticidade
O principal objetivo deste livro é servir de referência para aqueles que iniciam ou querem aperfeiçoar seus conhecimentos nas pesquisas e aplicações das Redes Neurais Artificiais e Lógicas Paraconsistentes. Devido ao seu caráter pioneiro, no que trata de aplicações das Lógicas Paraconsistentes em Neurocomputação, esta obra tem todas as condições para transformarse em um instrumento fundamental para divulgação das pesquisas em Lógica Aplicada. Esperamos que os assuntos aqui tratados e discutidos venham a dar uma real contribuição às futuras pesquisas nas aplicações da área de Inteligência Artificial e Neurocomputação. Nossas esperanças são reforçadas através dos ensaios apresentados em diversos capítulos deste livro, com os resultados que mostram, de modo muito claro, que as interpretações e os procedimentos com base em Lógicas Não-Clássicas possibilitam o uso de inovadoras estruturas conexionistas assentadas nas Lógicas Paraconsistentes para modelagens cada vez mais precisas das funções mentais do cérebro.
João Inácio da Silva Filho & Jair Minoro Abe
15
CAPÍTULO 1 INTRODUÇÃO GERAL
Neste capítulo, apresentamos uma descrição geral de alguns assuntos básicos específicos, como Neurocomputação, Lógica Paraconsistente e Redes Neurais Artificiais. Como os temas envolvidos são variados, dado o caráter multidisciplinar do tema, a finalidade é fornecer ao leitor uma visão geral das idéias discutidas.
1.1 - Introdução A célula fundamental do cérebro humano é o neurônio. As últimas pesquisas mostram que a quantidade de neurônios existentes no cérebro humano fica em torno de 1011. Cada um destes neurônios se comunica contínua e paralelamente com milhares de outros, processando sinais de informação e constituindo uma estrutura extremamente complexa. As pesquisas relacionadas à Inteligência Artificial buscam incessantemente modelar o comportamento do cérebro, isto porque a obtenção de um modelo matemático que determine o entendimento completo do seu funcionamento daria condições para que todo o processamento de sinais pudesse ser reproduzível por alguma máquina. No entanto, este número extraordinário de neurônios interconectados tem um grau de complexidade tamanha que dificulta o encontro de teorias lógico-matemáticas que represente modelos adequados da funcionalidade do cérebro. Esta forma de utilizar a matemática para descrever o funcionamento completo do cérebro é conhecida como descrição mecanicista e tem como característica seguir os procedimentos de uma abordagem top-down, ou 16
“de cima para baixo”. Na abordagem top-down, inicialmente, considera-se o funcionamento global e depois segue-se analisando em direção às partes. Este modo de descrição mecanicista resultou na máquina analítica de Charles Babbage e na máquina de Turing o que induziu a se fazer analogias e a considerar a forma computacional de raciocínio igual ao funcionamento do cérebro. Mas, diferentemente do que se pensava, descobriu-se que a comparação entre o funcionamento do cérebro e do computador traz muitas divergências. Verificou-se que o computador projetado com base na máquina de Turing tem os sinais tratados seqüencialmente, portanto, os estados presentes sempre dependem dos estados anteriores e o cérebro humano não funciona da mesma maneira. Uma análise mais detalhada demonstra que o cérebro humano possui um processamento de sinais mais complexo e muito mais rico nas formas e maneiras de se tomar decisões. Devido à complexidade do cérebro, vários fatores que determinam o seu funcionamento ainda estão obscuros, mas algumas características já são conhecidas e podem ser modeladas por Redes Neurais Artificiais RNA. As Redes Neurais Artificiais são modelos mecanicistas que foram criados utilizando uma abordagem diferente para modelar partes das funções mentais do cérebro. A abordagem utilizada pelas Redes Neurais Artificiais é denominada de bottom-up, isto é, “de baixo para cima”. Na abordagem bottom-up, a análise é feita seguindo das partes para o todo. Este tipo de abordagem Bottom-up foi iniciada com os trabalhos de Warrem McCulloch, em 1965, que culminou na criação do modelo do neurônio artificial. Na Literatura especializada, o ramo de pesquisa que considera modelos mecanicistas Bottom-up é conhecido por vários termos: · Teoria Conexionista ou Coneccionismo. · Teoria das Redes Neurais. · Processamento paralelo e distribuído. · Teoria dos Sistemas adaptativos.
1.2 – A Neurocomputação Com o advento de computadores com maior capacidade de memória e apresentando processamento de sinais com maior rapidez, abriu-se novas possibilidades para que as simulações dos modelos matemáticos dos neurônios e das atividades complexas do cérebro criassem uma nova linha de pesquisa chamada de Neurociência Computacional ou Neurocomputação. Na Neurocomputação, os modelos matemáticos das funções mentais do cérebro são transformados em programa computacionais e simulados por computadores. De uma maneira geral, podemos definir a Neurocomputação como sendo o estudo das propriedades computacionais 17
do cérebro humano. Os temas tratados na Neurocomputação envolvem, desde a modelagem para processamento de sinais de um único neurônio, até o estudo de modelos neurais complexos. Portanto, a Neurocomputação é uma forma de abordagem Bottom-up utilizando técnicas computacionais cuja finalidade é entender o funcionamento do cérebro, modelando-o em vários níveis estruturais diferentes. Os procedimentos computacionais da propagação de sinais entre os neurônios e as suas interconexões em redes neurais complexas, que envolvem a modelagem de grandes partes do sistema nervoso central do ser humano e de outros animais, são os principais temas abordados na Neurocomputação.
1.3 – Aplicando a Lógica Paraconsistente em Redes Neurais Artificiais As noções que apresentamos nesta obra constituem mais um fruto das pesquisas em aplicações dos sistemas paraconsistentes, mais exatamente, as Lógicas Paraconsistentes Anotadas aplicadas em Redes Neurais Artificiais. As primeiras aplicações dos sistemas paraconsistentes anotados em linguagem de programação foram efetuadas em [Subrahmanian 87]. Em [Abe 92] foram estabelecidos os fundamentos da Lógica Paraconsistente Anotada e, a partir destes trabalhos pioneiros, posteriormente, várias aplicações em áreas da Inteligência Artificial foram sendo obtidas como pode ser visto em [Prado 96] e [Ávila96]. Um dos aspectos interessantes que os sistemas anotados apresentados nestes trabalhos chamaram a atenção é o de poder manipular em seu interior contradições (ou inconsistências) de modo nãotrivial. Também, verificou-se que tais sistemas contêm a lógica fuzzy. Os sistemas anotados originados destes trabalhos serviram de base para a interpretação e criação de um algoritmo denominado de Para-Analisador [Da Silva Filho 99]. As idéias que apresentamos aqui baseiam-se no ParaAnalisador que serviu para edificarmos um analisador paraconsistente [Da Silva Filho & Abe] que obteve várias aplicações e também no Para-Control [Da Silva Filho & Abe], questões essas que estão ligadas à Robótica1 . Tais idéias inspiraram na confecção de um modelo de Célula Neural Artificial CNA que verificou-se possuir propriedades interessantes para aplicações em áreas para tratamento do conhecimento incerto de Inteligência Artificial, que são carentes de novas tecnologias. Por exemplo, a CNA é capaz de aceitar sinais contraditórios e combinando-se várias dessas células, podem-se armazenar dados em conflito e manipulá-los. Assim, esta nova célula difere das células estudadas até então, abrindo-se uma nova abordagem 18
do estudo e aplicações da Redes Neurais Artificiais através das Lógicas Paraconsistentes Anotadas. As Lógicas Paraconsistentes proporcionam um modelamento do neurônio humano que, em certos aspectos, tem características que o aproximam mais do raciocínio humano.
1.4 – Noções Elementares de Redes Neurais Artificiais Paraconsistentes – RNAP’s Uma Rede Neural Artificial RNA é um modelo mecanicista do cérebro que utiliza o procedimento de representação da análise do tipo bottom-up (parte para o todo). A Lógica Paraconsistente Anotada - LPA é uma classe de lógica NãoClássica cuja característica é tratar sinais, conceituando-os de forma diferente e livre das rígidas leis binárias da Lógica Clássica. Em uma definição mais geral, uma Rede Neural Artificial Paraconsistente (RNAP) é uma estrutura de características conexionista composta de uma extensa rede de componentes fundamentados na Lógica Paraconsistente Anotada - LPA. A figura 1.1 mostra como são desenvolvidos os projetos oferecendo uma idéia geral dos temas a serem apresentados.
Figura 1.1 – Desenvolvimento do projeto da Rede Neural Artificial paraconsistente. 19
Para chegarmos à arquitetura da Rede Neural Artificial ParaconsistenteRNAP foram construídas, inicialmente, as Células Neurais Artificiais Paraconsistentes CNAP’s, que são os componentes principais dos projetos aqui apresentados. A partir das CNAP’s são construídos os módulos compostos de células convenientemente interconectadas, até chegarmos à formação completa da arquitetura da RNAP. As CNAP’s são convenientemente conectadas formando Unidades Neurais Artificiais Paraconsistentes UNAP’s que, por sua vez, são agrupadas formando Sistemas com determinadas funções para o processamento 20
dos sinais. O resultado deste processo é a obtenção de pequenos módulos ou ilhas de tratamento de sinais que, de forma emergente, vão habilitar a construção de Redes Neurais Artificiais Paraconsistentes com características de funcionamento que são próprias do cérebro como, capacidade de aprendizagem, desaprendizagem, plasticidade, robustez e tolerância a falhas. Os Sistemas Neurais Artificiais Paraconsistentes SNAP’s a serem apresentados são projetados com as células tratando sinais de forma analógica, permitindo-se projetos de software aplicativos em linguagem de programação convencional, sem tornar as implementações demasiadamente complexas e inviáveis para as aplicações reais. Como todos os componentes da RNAP são compostos por células, o tratamento de sinais utilizando a Lógica Paraconsistente traz procedimentos matemáticos simples e passíveis de aplicações práticas e diretas. Para a implementação das RNAP’s cada célula é descrita por um algoritmo que vai facilitar implementações de projetos na forma de linguagem de programação convencional. Seguindo a forma de análise Bottom-up, que é característica das Redes Neurais Artificiais, estes componentes são projetados para que elaborem as funções que vão modelar comportamentos semelhantes aos apresentados pelo cérebro, quando em suas atividades mentais. As várias conexões entre os componentes vão dando forma a determinados blocos que, em conjunto, fazem processamento de sinais com funções bem definidas e, por fim, chegam a uma estrutura geral a qual denominamos de Rede Neural Artificial Paraconsistente RNAP. A nossa linha procedimental adotada é a apresentação dos fundamentos que vão possibilitar implementações de Redes Neurais, estruturadas na Lógica Paraconsistente. Os fundamentos apresentados e os conceitos básicos vão contribuir para que novas pesquisas no campo da criação de programas computacionais, simulando Redes Neurais Artificiais, venham a ser desenvolvidas. No decorrer dos capítulos, serão estudados e desenvolvidos projetos de vários componentes criados por meio de conceitos e interpretações da Lógica Paraconsistente.
1.5 – O Código do Processamento de Sinais Uma Rede Neural Artificial Paraconsistente, assim como as Redes Neurais Artificiais convencionais, une duas principais áreas de pesquisas: a biológica e a computacional. Encontrar um código que permita traduzir, de forma artificial a troca de 1
O programa do Para-Control elaborado em linguagem de programação C está apresentado no apêndice D.
21
informações entre os neurônios biológicos é o grande desafio da área da ciência computacional. Não se tem um código eficiente para troca de informações entre células e este é o ponto de maior dificuldade para a implementação de Redes Neurais Artificiais que possam raciocinar de forma parecida com o cérebro. A Rede Neural Artificial Paraconsistente RNAP utiliza para processar os sinais representativos de informações que trafegam entre as células, um código próprio que é originado da metodologia utilizada para interpretação da Lógica Paraconsistente Anotada. Os resultados dos estudos que permitiram o equacionamento de valores com base na estrutura teórica da Lógica Paraconsistente Anotada [Da Silva Filho 99] originaram uma equação que é utilizada como código para o tratamento de sinais de informações na Rede Neural Artificial Paraconsistente. Este código mostra um nível de eficiência muito alto e é representado por uma fórmula muito simples. Devido à importância desta fórmula, que equaciona e efetua o processamento de sinais na RNAP sempre dentro de um intervalo real fechado [0,1], a denominamos de Equação Estrutural Básica (EEB). A EEB é definida por
Na prática, na RNAP, todas as informações são recebidas através de sensores que trazem sinais de valores reais entre 0 e 1 para serem considerados na forma de graus de credibilidade. A ponderação dos valores e a troca de informações para processamento são feitas pelas inúmeras conexões da Rede através da Equação Estrutural Básica EEB. Na seqüência, veremos a utilização da EEB como a principal equação codificadora, e os sinais de graus de crença são computados e difundidos pelas inúmeras ramificações compostas apenas de Células Neurais Artificiais Paraconsistentes CNAP’s. Inicialmente, seguindo os procedimentos de uma abordagem Bottomup, as Células Neurais Artificiais Paraconsistentes são interconectadas para trocar informações entre si, formando Unidades Neurais Artificiais Paraconsistentes UNAP’s que podem ser comparadas aos blocos componentes estruturais da rede de neurônios biológicos do cérebro. 22
As Unidades Neurais Artificias Paraconsistentes vão compor Sistemas Neurais de Raciocínio Lógico -SNRL com várias finalidades, onde por meio de inferências são capazes de modelar as funções mentais do cérebro, inclusive fazendo tratamento de contradições. Finalmente, os blocos com diversas funções que fazem raciocínio lógico, tratamento de sinais e aquisição de conhecimento, são interligados para que possam trocar informações através da EEB e assim efetuar as análises em conjunto, apresentando um funcionamento do tipo paralelo e distribuído.
1.6 – Comparação entre as Redes Neurais Clássicas e a RNAP A implementação de Redes Neurais Artificiais Paraconsistentes traz muitas vantagens em relação às redes neurais clássicas. Enumeramos algumas: a) Uma maior simplicidade no tratamento de sinais. Todas as equações para computação e tratamento dos sinais são simples, sem nenhuma complexidade matemática que possa inviabilizar projetos práticos. b) Todos os valores analógicos estão inseridos num intervalo conhecido. Na Rede Neural Artificial Paraconsistente todos os valores representativos dos graus de crença são valores reais positivos e variáveis sempre entre 0 e 1. c) Todos os componentes têm fácil implementações por meio de software ou hardware. Todas as funções podem ser implementadas em linguagem computacional convencional (C, C++, Basic, etc.) ou por meio de projetos de circuitos eletrônicos simples. d) Todos os componentes trazem condições e facilidades de otimização e controle. As Células Neurais Artificiais Paraconsistentes permitem controle para otimização por meio de ajustes de fatores de tolerância e de aprendizagem. e) Utilização de baixa quantidade de memória. Quando a Rede é completamente treinada o grau de crença resultante é unitário, isto significa que não há necessidade de armazenar pesos e, 23
com isso economiza-se áreas de memórias.
1.7 – Apresentação do Livro Apresentaremos os fundamentos para construção de software aplicativos de Redes Neurais Artificias Paraconsistentes RNAP em onze capítulos, sendo o último deles reservado para conclusões. A seguir apresentamos a síntese dos assuntos tratados na seqüência dos capítulos: Capítulo 1 - Introdução Geral - Apresentação geral dos conceitos discutidos nesta obra. Capítulo 2 - A Lógica Paraconsistente - Noções fundamentais da estrutura teórica da Lógica Paraconsistente e método de representação e interpretação do reticulado associado à Lógica Paraconsistente Anotada. Todos os métodos apresentados neste capítulo são utilizados para implementação dos componentes da Rede Neural Artificial Paraconsistente tratada nos capítulos posteriores. Capítulo 3 – Os Conceitos Fundamentais das Células Neurais Artificiais Paraconsistentes - Fundamentos para a construção das Células Neurais Paraconsistentes CNAP’s. Discussões e estabelecimentos das regras e denominações dos fatores e sinais de controle que irão atuar na análise paraconsistente. Capítulo 4 – As Células Neurais Artificiais Paraconsistentes - Uma família de Células Neurais Paraconsistentes CNAP’s que irão constituir a base das Redes Neurais. Todas as Células Neurais Artificiais Paraconsistentes componentes da família são projetadas totalmente com a metodologia de aplicações da Lógica Paraconsistente apresentada nos capítulos 2 e 3. As CNAP’s são as unidades fundamentais que comporão as Redes Neurais Artificiais Paraconsistentes. Capítulo 5 – A Célula Neural Artificial Paraconsistente de Aprendizagem - Detalhes da Célula Neural de aprendizagem juntamente com os procedimentos e algoritmos de aprendizagem. Neste capítulo, são apresentados resultados de ensaios efetuados com os algoritmos onde realça a importância da célula de aprendizagem como componente da Rede Neural Artificial Paraconsistente. Capítulo 6 – O Neurônio Artificial Paraconsistente - Para-Perceptronconstrução de uma Unidade Neural Artificial Paraconsistente denominada 24
de Para-Perceptron. Neste capítulo, são apresentados detalhes do ParaPerceptron onde é feito uma comparação, discutindo minuciosamente o funcionamento do neurônio biológico e as características do Neurônio Artificial Paraconsistente. Capítulo 7 – As Unidades Neurais Artificiais Paraconsistentes - Projetos de Unidades Neurais Paraconsistentes. As Unidades Neurais Artificiais Paraconsistentes têm várias e diferentes caraterísticas que vão determinar o equacionamento, direcionamento, aprendizagem e memorização dos sinais que trafegam pela RNAP. Capítulo 8 – Os Sistemas Neurais Artificiais Paraconsistentes Sistemas Neurais Artificiais Paraconsistentes compostos por várias Unidades e com diversas finalidades na rede, como aprendizado condicionado e tratamento contínuo de contradições. Capítulo 9 – A Rede Neural Artificial Paraconsistente - Conceitos fundamentais para a implementação da Rede Neural Artificial Paraconsistente e Arquitetura de Redes Neurais Artificiais Paraconsistentes que modela o funcionamento do cérebro humano. Esta Arquitetura proporciona aplicações e implementações de Sistemas baseados no processamento de sinais feitos pelo cérebro. No Capítulo 10 – O Sistema de Raciocínio Lógico Paraconsistente apresentam-se o Sistema Neural Artificial Paraconsistente de raciocínio lógico que possui características para fazer inferências na rede. Neste capítulo são apresentados resultados de vários ensaios com o Sistema. Capítulo 11 – Conclusões - acolhemos as conclusões e os comentários sobre as várias possibilidades de implementações práticas dos componentes e configurações apresentados. Na Referência Bibliográfica, listamos as referências que baseamos nossos estudos. Grande parte delas refere-se às nossas perquirições em Lógicas Paraconsistentes, notadamente as Lógicas Paraconsistentes Anotadas LPA. Encontra-se também abundante material das aplicações que realizamos ao longo de todos esses anos, constituindo-se numa referência para essas investigações.
25
CAPÍTULO 2 A LÓGICA PARACONSISTENTE Apresentamos os conceitos básicos da Lógica Paraconsistente Anotada e a metodologia de aplicações práticas que permitirão os projetos de implementação em Neurocomputação. Os sistemas computacionais aplicados em engenharia são construídos com base na Lógica Convencional Clássica ou Lógica Booleana, onde a descrição do mundo é considerada por estados binários o que, às vezes, são insuficientes para retratar algumas situações do mundo real. A Lógica Paraconsistente é uma Lógica Não-Clássica que nasceu da necessidade de se criar análises mais eficientes, com capacidade de considerar situações reais que fogem às rígidas leis binárias da Lógica Clássica. Os estudos da Lógica Paraconsistente originaram outras classes de Lógicas Não-Clássicas denominadas de Lógicas Paraconsistentes Anotadas. A Lógica Paraconsistente Anotada de anotação com dois valores – LPA2v é uma classe de Lógica Paraconsistente que considera proposições sendo representadas por valores de anotações. Dos conceitos básicos da Lógica Paraconsistente Anotada de anotação com dois valores é criado um algoritmo denominado de Para-Analisador que permite aplicações práticas em sistemas de análises na forma de programas computacionais usando linguagem convencional. Neste capítulo, com a finalidade de criar sistemas de análises para Neurocomputação, o algoritmo Para-Analisador é representado através de uma configuração denominada de Célula Artificial 26
Paraconsistente básica - CAPb. A CAPb é o componente inicial que vai estruturar todos os nossos projetos, portanto devido à sua importância, é considerada a Célula matter que vai originar os projetos das Redes Neurais Artificiais Paraconsistentes.
2.1 - Introdução Uma das questões mais relevantes que a Inteligência Artificial e a Robótica vêm se deparando, especialmente no que tange a descrição da porção da realidade e na manipulação de dados obtidos de situações contraditórias ou inconsistentes. Para tentar responder a estas questões, neste capítulo, vamos destacar o uso de linguagens baseadas nas Lógicas alternativas da Clássica, especialmente as Lógicas Paraconsistentes que permitem trabalhar com informações contraditórias, tema este que tem despertado a atenção de muitos especialistas. Na descrição do mundo real, é comum o aparecimento de inconsistências e ambigüidades e a lógica clássica utilizando rígidas leis que excluem qualquer valor que não seja binário fica impossibilitada de ser diretamente aplicada frente a estas situações. A Lógica Clássica utiliza apenas dois estados lógicos: verdadeiro ou falso. Por exemplo, na proposição “A maçã é vermelha”, num resultado de análise de cromaticidade só vão existir duas únicas situações: ela é vermelha ou é não-vermelha. Mas sabemos que, na realidade, existem inúmeros casos em que uma maçã pode ter cor próxima da vermelha ou próxima da cor verde etc.. É por possuir as características binárias que a Lógica Clássica oferece facilidades em ser aplicada em sistemas de computação, mas por outro lado, quando queremos descrever o mundo real é justamente esta característica binária que a torna inadequada para ser aplicada. As estruturas binárias dos Sistemas de análise clássicos obrigam que a metodologia empregada para raciocinar deva ser feita com algumas simplificações que resultam em ineficiência devido às perdas de informações importantes que poderiam ser levadas em consideração ou ainda desperdiçando muito o tempo de processamento para se obter uma conclusão razoável. 27
Quando os sistemas que utilizam a Lógica Clássica se deparam com necessidade de descrever e raciocinar sobre algumas situações comuns que retratam a realidade, como as contradições, as ambigüidades, as vaguezas e as indeterminações, vão levar um tempo muito longo para efetuar uma descrição completa trabalhando com apenas dois estados. Em muitos casos, para contornar estas situações os sistemas fazem um resumo grosseiro das mesmas acumulando erros e trazendo ineficiência nos resultados. Em resumo, os sistemas clássicos quando são obrigados a descrever situações do mundo real, onde as informações são originadas de conhecimento incerto, vão deixar de considerar fatos ou situações de inconsistência que podem conter evidências que influem direta ou indiretamente no resultado da análise e por isso não podem ser desprezadas. Com a necessidade de se projetar Sistemas de Controle e Análise mais eficientes, com capacidade de considerar situações reais que fogem às formas binárias da Lógica Clássica, foram criadas as Lógicas alternativas da Clássica denominadas de Lógicas Não-Clássicas1 . As Lógicas Não-Clássicas entre outras coisas estudam formas para considerar nas análises as situações excluídas da Lógica Clássica, abrangendo todos os estados lógicos existentes que diferem do “Verdadeiro” e do “Falso”. As Lógicas Não-Clássicas quando utilizadas como base estrutural dos projetos de sistemas de controle permitem um melhor enquadramento dos conceitos lógicos que são excluídos da Lógica Clássica, mas que são de extrema importância para o controle e estão sempre presentes em situações reais, como as indefinições, as ambigüidades e as inconsistências.
2.2 - A Lógica Clássica Ao que tudo indica, a Lógica foi descoberta por Aristóteles (384322 a.C) e seus seguidores na Grécia antiga. A Lógica pode ser definida como a ciência que estuda as leis dos raciocínios válidos. 1
No apêndice A apresenta-se uma aspectos fundamentais da Lógica Clássica e da Lógica Não-Clássica.
28
Figura 2.1- Aristóteles. O raciocínio, portanto, é feito com os representantes lingüísticos de coisas e do pensamento. Numa visão mais ampla, a Lógica é uma teoria que estuda os mecanismos mediante os quais se pode legitimamente inferir certos enunciados a partir de outros. A Lógica criada por Aristóteles é denominada de Clássica e é estruturada em leis e conceitos rigidamente binários. Para o estudo das formas lógicas é necessária uma linguagem. Na linguagem humana, para exprimir os conceitos e a comunicação temos interrogações, exclamações e imperativos. As sentenças declarativas e que podem merecer o qualificativo de “falsas” ou “verdadeiras” são chamadas de proposições. As proposições podem ser verdadeiras ou falsas portanto, para o estudo das formas lógicas é importante saber as proposições envolvidas e as relações que entre si possam manter. A seguir, enumeramos três conceitos binários que regem a Lógica Clássica: 1- Princípio da Identidade Proposicional: p → p ⇒ Toda proposição é implicada por ela mesma. 2- Princípio do terceiro excluído: p ∨ ¬p ⇒ de duas proposições contraditórias (isto é, tais que uma é a negação da outra) uma delas é verdadeira. 3- Princípio da contradição (ou da não-contradição): ¬(p ∧ ¬p) ⇒ entre duas proposições contraditórias, uma é falsa. 29
Por muitos anos ficaram estabelecidos e aceitos os preceitos filosóficos da Lógica Clássica propostos por Aristóteles e por quase 2000 anos, não houve avanço e conquista neste campo que fossem considerados significativos. No século XIX, com os trabalhos iniciais de G. Boole (18151864) que empregou a álgebra no domínio da lógica, teve início um avanço significativo estabelecendo uma Lógica Simbólica. No início do século XX, muitos lógicos, matemáticos e filósofos trouxeram relevantes contribuições para transformar a lógica em uma ciência de extrema importância. Estes trabalhos culminaram em novas formas de considerações lógicas diferentes da clássica que culminaram na criação das Lógicas Não-Clássicas. Atualmente, a lógica apresenta alto grau de complexidade devido à sua evolução em várias ramificações de linhas de pesquisas o que dificulta uma exposição precisa de seu estado atual. A lógica, até bem pouco tempo, era uma ciência una, que progredia linearmente, mesmo após sua matematização por matemáticos, 1ógicos e fi1ósofos da envergadura de Boole, Peano, Frege, Russell e Whitehead. Os desenvolvimentos revolucionários efetuados na década de 30, como os devidos a Gödel e Tarski, ainda se situam dentro do que podemos denominar de lógica clássica ou tradicional. Não obstante todos os avanços da lógica tradicional, uma outra revolução paralela ocorreu no domínio da ciência criada por Aristóteles, de índole muito diversa. Referimo-nos à instituição das Lógicas NãoClássicas. Elas produziram, como no caso da geometria não-euclidiana, uma transformação de natureza profunda no âmbito científico, cujas conseqüências de caráter filosófico ainda não se investigaram de maneira sistemática e integral. Designamos por lógica clássica ou tradicional, essencialmente, o estudo do cálculo de predicados de primeira ordem, com ou sem igualdade, bem como de certos subsistemas, como o cálculo proposicional clássico e algumas de suas ampliações, por exemplo a lógica tradicional de ordem superior (teoria de tipos) e os sistemas comuns de teoria dos conjuntos (Zermelo-Fraenkel, van NeumannBernays-Gödel, Kelley-Morse, NF de Quine-Rosser, ML de QuineWang, ...). A lógica em apreço baseia-se em sintaxe e semântica bem estabelecidas; assim, a semântica usual do cálculo de predicados 30
funda-se no conceito de verdade de Tarski. As Lógicas Não-Clássicas caracterizam-se por amplificar, de algum modo, a lógica tradicional ou por infringir ou limitar seus princípios ou pressupostos fundamentais.
2.3 - A Lógica Paraconsistente Uma teoria (dedutiva) T, assentada na lógica L, diz-se consistente se entre seus teoremas não existem tais, que um seja a negação do outro; em hipótese contrária, T denomina-se inconsistente. A teoria T chama-se trivial se todas as sentenças (fórmulas fechadas) de sua linguagem forem teoremas; se isto não ocorrer, T é não-trivial. Se L for uma das lógicas comuns, como a clássica e a intuicionista de Brouwer-Heyting, T é trivial se e somente se for inconsistente. Em outras palavras, lógicas como essas não separam os conceitos de inconsistência e de trivialidade. L denomina-se paraconsistente se puder funcionar como fundamento de teorias inconsistentes e não triviais. Dito de outro modo, uma lógica paraconsistente mostra-se capaz de manipular sistemas inconsistentes de informações sem o perigo de trivialização. (Somente em certas circunstâncias específicas a presença de contradição implica em trivialização.) Os precursores da Lógica Paraconsistente foram o 1ógico polonês J. Lukasiewicz e o fi1ósofo russo N.A. Vasilév. Simultaneamente, por volta de 1910, embora de maneira independente, eles ventilaram a possibilidade de uma Lógica Paraconsistente que restringiria, por exemplo, o princípio de contradição, quando formulado da seguinte forma: dadas duas proposições contraditórias, isto é, uma das quais é a negação da outra, então uma das proposições é falsa. Vasilév chegou, mesmo a articular determinada Lógica Paraconsistente, que ele batizou de imaginária, modificando a silogística aristotó1ica. Nenhum deles tinha, na época, uma vista ampla da Lógica Clássica, tal como hoje a encaramos; eles a tratavam mais ou menos do prisma de Aristóteles, de conformidade com as tendências então dominantes na época. O primeiro 1ógico a estruturar um cálculo proposicional paraconsistente foi o polonês S. Jaskowski, discípulo de Lukasiewicz. Em 1948 ele publicou suas idéias sobre lógica e contradição, mos31
trando como se poderia construir um cálculo sentencial paraconsistente, possuindo motivação conveniente. O sistema de Jaskowiski, nomeado por ele de lógica discursiva, desenvolveu-se posteriormente (a partir de 1968) em virtude das obras de autores como J. Kotas, L. Furmanowski, L. Dubikajtis, N.C.A. da Costa e C. Pinter. Assim, chegou-se a edificar uma verdadeira lógica discursiva, englobando um cálculo de predicados de primeira ordem e uma lógica de ordem superior (há, inclusive, teorias discursivas de conjuntos, intrinsecamente ligadas à teoria de atributos, baseada no cálculo S5 de Lewis). Os sistemas iniciais de Lógica Paraconsistente, contendo todos os níveis1ógicos, envolvendo, pois, cálculos proposicionais, de predicados e de descrições, bem como lógicas de ordem superior, devem-se a N.C.A. da Costa (1954 em diante). Isto se realizou de maneira independente das perquirições dos autores já mencionados. Hoje em dia, existem, inclusive, sistemas paraconsistentes de teorias de conjuntos, estritamente mais fortes do que os clássicos, porquanto considerados como subsistemas estritos e matemáticas paraconsistentes. Aliás, estas matemáticas encontram-se aparentadas com a matemática difusa (fuzzy) que, sob certo ponto de vista, encaixa-se no rol daquelas. Ficou provado, em decorrência da elaboração da lógica paraconsistente, que se torna possível manipular sistemas informacionais inconsistentes e extraordinariamente fortes, sem ser preciso que se eliminem as contradições e sem se cair na trivialização. Semelhantemente, introduzimos o conceito de lógica paracompleta. Uma lógica é chamada paracompleta se pode funcionar como a lógica subjacente de teorias na qual há fórmulas tais que estas fórmulas e suas negações são ambas falsas. Uma teoria é chamada paracompleta se sua lógica subjacente é uma lógica paracompleta. Como uma conseqüência, teorias paraconsistentes não satisfazem o princípio da não-contradição que pode ser expressa como segue: de duas proposições contraditórias (i.e., uma delas é negação da outra); uma deve ser falsa. Além disso, teorias paracompletas não satisfazem o princípio do terceiro excluído, formulado como se segue: de duas proposições contraditórias, uma deve ser verdadeira. 32
Finalmente, lógicas que são simultaneamente paraconsistentes e paracompletas chamam-se lógicas não-aléticas.
2.4 - A Lógica Paraconsistente Anotada As lógicas paraconsistentes anotadas são uma classe de lógicas aléticas, em particular, paraconsistentes e que possuem um reticulado associado que desempenha um papel sumamente importante, como veremos adiante. Com a descoberta da lógica paraconsistente anotada (introduzidas pela primeira vez em programação lógica por [Subrahmanian 87]) encontrou-se uma forma fecunda de aplicar os conceitos teóricos da lógica paraconsistente nos mais variados campos. Devido as aplicações que as lógicas anotadas encontraram, tornou-se conveniente um estudo de seus fundamentos. Os primeiros trabalhos nesse sentido são [Da Costa, Subrahmanian & Vago 91] e [Da Costa, Abe & Subrahmanian 91]. Logo depois, [Abe 92] apresentou um estudo sistemático dessas lógicas, demonstrando teoremas de correção e de completeza para as lógicas de primeira ordem correspondentes. Esse autor também fez um estudo da teoria de modelos bem como uma teoria de conjuntos anotada, sistemas modais anotados e versões algébricas [Da Costa, Abe & Subrahmanian 91], [Abe 94b], [Abe 97e] e [Abe 99b]. Em [Da Costa, Abe & Subrahmanian 91] e [Abe 92] mostra-se que a teoria anotada geral de conjuntos é extraordinariamente forte, envolvendo como caso particular a teoria dos conjuntos difusos ([Negoita & Ralescu 75] e [Zadeh 87]). Mais recentemente Abe e seu grupo têm se esforçado nas diversas aplicações dos sistemas anotados, mostrando a fecundidade do conceito de paraconsistência e paracompleteza em IA e Robótica. Cremos que a Matemática Anotada, sendo desenvolvida, e envolvendo a Matemática Fuzzy, afigura-se da mais alta relevância, basta lembrar as aplicações obtidas em Ciência da Computação, Robótica, Engenharia de Produção, Inteligência Artificial e Informática em geral.
33
2.4.1 A Lógica Proposicional Paraconsistente Anotada (LPA2v) Fazemos um apanhado geral das Lógicas Paraconsistentes Anotadas de anotação com dois valores, que abreviamos por LPA2v, ao longo deste trabalho, bem como estabelecemos algumas terminologias novas e convenções. Seja τ = < |τ|, ≤ > um reticulado finito fixo, onde: 1. τ = [0, 1] ´ [0, 1] (onde [0, 1] indica o intervalo fechado unitário real) 2. ≤ = {((µ1, ρ1), (µ2, ρ2)) ∈ ([0, 1] × [0, 1])2µ1 ≤ µ2 e ρ1 ≤ ρ2} (onde £ indica a ordem usual dos números reais). Tal reticulado denomina-se reticulado de valores-verdade. A idéia epistemológica intuitiva da associação de uma anotação (µ1, µ2) a uma proposição p significa que o grau de crença em p é µ1, enquanto que o grau de descrença é µ2. Por exemplo, intuitivamente, em tal reticulado, (1.0, 0.0) indica ‘crença total’, (0.0, 1.0) indica ‘descrença total’, (1.0, 1.0) indica ‘crença totalmente inconsistente’ e (0.0, 0.0) indica ‘ausência total de crença’. Exemplo 1. Seja a proposição p≡ “O aluno passou no exame”. Temos: Se anotarmos com (1.0, 0.0), a leitura intuitiva será “O aluno passou no exame com crença total (= crê-se totalmente que o aluno passou no exame)”. Se anotarmos com (0.0, 1.0), a leitura intuitiva será “O aluno passou no exame com descrença total (= crê-se totalmente que o aluno foi reprovado no exame)”. Se anotarmos com (1.0, 1.0), a leitura intuitiva será “O aluno passou no exame com crença totalmente inconsistente”. Isto pode se suceder se o aluno não estudou o suficiente e ao mesmo tempo uma pessoa amiga diz tê-lo visto confiante após o exame. Se anotarmos com (0.0, 0.0), a leitura intuitiva será “O aluno passou no exame com ausência total de crença”. Exemplo 2. Seja a proposição p≡ “O paciente está acometido de pneumonia”. Temos: 34
Se anotarmos com (1.0, 0.0), a leitura intuitiva será “O paciente está acometido de pneumonia com crença total. Se anotarmos com (0.0, 1.0), a leitura intuitiva será “O paciente está acometido de pneumonia com descrença total (= crê-se totalmente que o paciente não está acometido de pneumonia)”. Se anotarmos com (1.0, 1.0), a leitura intuitiva será “O paciente está acometido de pneumonia com crença totalmente inconsistente”. Isto pode se suceder se, por exemplo, um médico é de opinião que o paciente está acometido de pneumonia, mas um outro especialista diz que não pode ser pneumonia por um outro tipo de exame. Se anotarmos com (0.0, 0.0), a leitura intuitiva será “O paciente está acometido de pneumonia com ausência total de crença”. Isto pode se suceder se não se pode diagnosticar se é pneumonia ou não. Fixamos também um operador~: |τ| → |τ|. O operador ~ constitui o “significado” do símbolo lógico de negação do sistema que será considerado. Outros valores do reticulado são: · ⊥ indica o mínimo de τ = (0.0, 0.0); · T indica o máximo de τ = (1.0, 1.0); · sup indica a operação de supremo2; · inf indica a operação de ínfimo2. A linguagem da LPA2v possui os seguintes símbolos primitivos: 1. Símbolos proposicionais: p, q, r, ... 2. Conectivos: ¬ (negação), ∧ (conjunção), ∨ (disjunção) e →(implicação). 3. Cada membro deτ é uma constante de anotação: (λ1, λ2), (µ1, µ2), ... 4. Símbolos auxiliares: parênteses. Muitas vezes, abreviamos uma constante de anotação (λ1, λ2) simplesmente por λ. Definição 1. [Expressão] Uma expressão é qualquer seqüência finita de símbolos de seu vocabulário. 2 Com respeito a subconjuntos de τ. Sobre estes conceitos e outros da Teoria Intuitiva dos Conjuntos recomendamos a obra [Abe & Papavero 92].
35
Exemplo 3. São expressões: Intuitivamente, as expressões em 1 e 2 são destituídas de sentido, ao passo que 3 “quer dizer algo”. Necessitamos, pois, caracterizar as expressões relevantes para o nosso discurso. Tais expressões compõem a gramática3 de LPA2v. Definição 2. [Fórmula] Fórmulas obtêm-se pela seguinte definição indutiva generalizada: 1. Se p é um símbolo proposicional e (λ1, λ2) é uma constante de anotação então (λ1, λ2) é uma fórmula (atômica). 2. Se A e B são fórmulas quaisquer, então (¬A), (A ∧ B), (A ∨ B), (A → B), são fórmulas. 3. Uma expressão constitui uma fórmula se e somente se foi obtida por aplicação de uma das regras anteriores. Intuitivamente lê-se a fórmula p(λ1, λ2)como crê-se em p com crença favorável até λ1 e crença desfavorável até λ2. A fórmula (¬A) é lida “a negação — ou negação fraca — de A”; (A ∧B), “a conjunção de A e B”; (A ∨ B), “disjunção de A e B”; (A →B), “a implicação de B por A”. Exemplo 4. Seja a proposição p ≡ “O aluno passou no exame”. Lê-se p(1.0, 0.0) como “creio que o aluno passou no exame com crença favorável total e crença desfavorável nula”. Lê-se p(1.0, 1.0) como “creio que o aluno passou no exame com crença favorável total e crença desfavorável total”, ou seja, neste caso estaria com crenças conflitantes. Lê-se p(0.0, 0.0) como “creio que o aluno passou no exame com crença favorável nula e crença desfavorável nula”, ou seja, neste caso é totalmente nula a informação sobre o aluno. Lê-se p(0.5, 0.5) como “creio que o aluno passou no exame com crença favorável até 50% e crença desfavorável até 50%”. Exemplo 5. Seja a proposição p ≡ “O paciente está acometido de pneumonia”. Temos: Lê-se p(0.9, 0.3) como “crê-se que o paciente está acometido de pneumonia com crença favorável até 90% e crença desfavorável até 30%”. 36
Lê-se p(0.0, 1.0) como “crê-se que o paciente está acometido de pneumonia com crença favorável nula e crença desfavorável 100%”. (= crê-se totalmente que o paciente não está acometido de pneumonia)”. Lê-se p(1.0, 1.0) como “crê-se que o paciente está acometido de pneumonia com crença favorável até 100% e crença desfavorável 100%”. Logo, neste caso temos uma crença totalmente conflitante (inconsistente). Isto pode se suceder se, por exemplo, um médico é de opinião que o paciente está acometido de pneumonia, mas um outro especialista diz que não pode ser pneumonia por um outro tipo de exame. Exemplo 6. Sejam p a proposição “A canção mais popular de Johnny Mathis é Misty” e q a proposição “Johnny Mathis ficará para a história da música popular”. Temos então: Lê-se p(1.0,0.0) ∧ q(0.9, 0.1) como “Crê-se que a canção mais popular de Johnny Mathis é Misty com crença favorável total e crença desfavorável nula” e “crê-se que Johnny Mathis ficará para a história da música popular com crença favorável de até 90% e crença desfavorável de até 10%”. (= É certo que a canção mais popular de Johnny Mathis é Misty e é praticamente certo que ele ficará para a história da música popular.) Lê-se p(1.0,0.0) ∨ q(0.9, 0.1) como “Crê-se que a canção mais popular de Johnny Mathis é Misty com crença favorável total e crença desfavorável nula” ou “crê-se que Johnny Mathis ficará para a história da música popular com crença favorável de até 90% e crença desfavorável de até 10%”. (= É certo que a canção mais popular de Johnny Mathis é Misty ou é praticamente certo que ele ficará para a história da música popular.) Exemplo 7. Seja p a proposição “A rota do robô é para a direita” Temos então: Lê-se p(0.7,0.6) → p(0.5, 0.4) como “Crê-se que a rota do robô é para a direita com crença favorável de até 70% e crença desfavorável de até 60%” acarreta “crê-se que a rota do robô é para a direita com crença favorável de até 50% e crença desfavorável de até 40%”.
37
Exemplo 8. Seja p a proposição “O paciente está acometido de gripe”. Temos então: Lê-se p(0.7, 0.2) ) ↔ ¬p(0.2, 0.7) como “Crê-se que o paciente está acometido de gripe com crença favorável de até 70% e crença desfavorável de até 20%” equivale a se dizer que não é o caso que “crêse que o paciente está acometido de gripe com crença favorável de até 20% e crença desfavorável de até 70%”. Pelos exemplos vistos, já se vislumbra que o poder de expressividade de proposições é modificado através das anotações. Este modo de tratar as proposições será de grande valia nas implementações e aplicações como será visto nos capítulos subseqüentes. Vejamos mais uma peculiaridade da LPA2v. Analisemos negações de proposições. Tomemos, por exemplo, a proposição p(1.0, 0.0) do Exemplo 1, “creio que o aluno passou no exame com crença favorável total e crença desfavorável nula”. Analisemos sua negação. O leitor imediatamente se apercebe que é equivalente a se dizer “creio que o aluno passou no exame com crença favorável nula e crença desfavorável total”, ou seja, ¬p(1.0, 0.0) ↔ p~(1.0, 0.0) ↔p(0.0, 1.0). Logo, é fácil perceber também que ¬p(λ1, λ2) equivale a p(λ1, λ2) , que por sua vez equivale a p~(λ1, λ2) . Logo, a negação de p(λ1, λ2) é a mesma proposição p com graus de crença invertidos; o grau de crença favorável de ¬p(λ1, λ2) é a crença desfavorável de p(λ1, λ2) e o grau de crença desfavorável de ¬p(λ1, λ2) constitui o grau de crença favorável de p(λ1, λ2) . Há, portanto, um operador natural definido sobre t que desempenha o papel da negação do conectivo da lógica anotada: ∼: τ → τ, ∼(λ1, λ2) = (λ2, λ1). Isso denuncia uma importante propriedade na lógica LPA2v: podemos considerar equivalentes as proposições ¬p(λ2, λ1)e p(λ2, λ1), ou seja, em outra terminologia, ¬p(λ2, λ1)« p~(λ2, λ1). Exemplo 9. Seja a proposição p ≡ “O aluno passou no exame”. Uma leitura intuitiva da negação da proposição p(1.0, 0.0) é “creio que o aluno passou no exame com crença favorável nula e crença desfavorável total”. Uma leitura intuitiva da negação da proposição p(1.0, 1.0) é “creio 3 Considerações sobre a linguagem da LPA2v estão expostos nos apêndices B e C.
38
que o aluno passou no exame com crença favorável total e crença desfavorável total”, ou seja, neste caso a negação de uma proposição inconsistente continua inconsistente. Uma leitura intuitiva da negação da proposição p(0.0, 0.0) é “creio que o aluno passou no exame com crença favorável nula e crença desfavorável nula”, ou seja, neste caso a negação de uma proposição desconhecida é ainda desconhecida. Uma leitura intuitiva da negação da proposição p(0.5, 0.5) é “creio que o aluno passou no exame com crença favorável de até 50% e crença desfavorável de até 50%”, ou seja, é a mesma proposição. Exemplo 10. Seja a proposição p ≡ “O paciente está acometido de pneumonia”. Temos: Uma leitura intuitiva da negação da proposição p(0.9, 0.3) é “crêse que o paciente está acometido de pneumonia com crença favorável de até 30% e crença desfavorável de até 90%”. Uma leitura intuitiva da negação da proposição p(0.0, 1.0) é “crêse que o paciente está acometido de pneumonia com crença favorável total e crença desfavorável nula. (= crê-se totalmente que o paciente está acometido de pneumonia)”. Uma leitura intuitiva da negação da proposição p(1.0, 1.0) é “crêse que o paciente está acometido de pneumonia com crença favorável de até 100% e crença desfavorável de até 100%”. Logo, neste caso temos uma crença totalmente conflitante (inconsistente) e sua negação é a mesma proposição inconsistente.
2.5 - A Metodologia de Aplicação Paraconsistente Anotada
da
Lógica
Quando sistemas de controle são obrigados a descrever situações do mundo real, todas as informações necessárias para análise, devido a vários fatores, vêm impregnadas de ruídos que conferem às mesmas um determinado grau de incerteza. Nas análises feitas baseadas em informações obtidas de condições não ideais dizemos que os sistemas tratam com conhecimento incerto. Na literatura especializada temos a seguinte definição: O conhecimento incerto é aquele que é discutível e ao qual, 39
normalmente associamos uma medida de incerteza que descreva, de algum modo, crenças para as quais existem certas evidências de apoio [Rich 94]. O método de aplicação da Lógica Paraconsistente tem como objetivo principal implementar Sistemas Lógicos de Controle por meio de programas de computação que permitam manipular e raciocinar com sinais representativos sobre informações de conhecimento incerto que podem ser inconsistentes. A metodologia que permite aplicações da Lógica Paraconsistente Anotada vai primeiramente explorar o fato da mesma apresentar as características de uma Lógica Evidencial. As anotações serão consideradas como graus de crença ou de descrença e as análises vão ser feitas considerando os valores de informações vindas de fontes reais e incertas. As características de uma lógica evidencial são adequadas para fazer tratamento do conhecimento incerto, principalmente, pelo fato de considerar que, numa análise, as argumentações se limitam a asseverar que as premissas constituem evidências apenas parciais para as suas conclusões. Para que possa ser feita a análise é considerado o grau de credibilidade ou crença que as premissas conferem à conclusão. Na prática, a determinação das premissas é tarefa de pesquisas científicas e a validade ou não validade da argumentação é determinada por estudo lógico. No mundo real, deve-se investigar fenômenos para fazer predição sobre comportamentos e a determinação da veracidade ou da falsidade das premissas é uma das questões principais que envolvem a estrutura da Lógica Clássica, dificultando a sua aplicação4 . Com o avanço tecnológico é impossível a resolução de problemas de inconsistências simplesmente ignorando-as, ou refutadas como falsas ou confirmadas como verdadeiras. Afirmações físicas, por exemplo, podem ser verdadeiras em uma situação e falsas em outra, por isso, considerando que toda verdade é incerta pode-se estabelecer conexões certas entre incertezas. Na pesquisa científica ao aban4
Estas investigações dos fenômenos são cada dia mais aprofundadas e com maior precisão, não obstante podendo gerar contradições. Por exemplo, os instrumentos de medição e os aparelhos utilizados em laboratório de Física Experimental, atualmente, são de tal precisão mas, mesmo assim podem gerar inconsistências, que de alguma forma devem receber um tratamento adequado.
40
donar as “verdades lógicas certas” que, quando trazidas à realidade mais precisa, não corresponde com os fatos, traz sempre a idéia de que a verdade é algo cumulativo, portanto, a sua verdade e sua falsidade podem ser marcadas mediante a graus de crença. Vão existir casos onde as proposições podem ser verdadeiras e as “inferências” serem ilegítimas, portanto argumentos válidos podem ter “conclusões” verdadeiras ou falsas e a validez de um argumento não garante a verdade da conclusão. Com estas considerações todo processo lógico racional seria precisamente concebido como um passar com certeza de uma incerteza a outra. Na Lógica Paraconsistente Anotada os sinais e informações vêm na forma de graus de crença relativos a uma dada proposição. Estes graus de crença podem ser obtidos por medições, por estatísticas, probabilidades, etc. Os valores dos graus de crença são analógicos ou multivalorados que variam entre o mínimo de 0 e o máximo de 1.
2.6 - Representação do Reticulado Associado àLógica Paraconsistente Anotada A Lógica Paraconsistente Anotada pode ser representada de modo particular, através de um reticulado de Hasse em que, intuitivamente, as constantes de anotação nos vértices do reticulado vão dar conotações de estados lógicos extremos às proposições. A anotação pode ser composta de por 1, 2 ou n valores, dependendo da classe de Lógica Paraconsistente utilizada.
2.6.1 – Reticulado Associado á Lógica Paraconsistente Anotada - LPA1v A Lógica Paraconsistente Anotada de anotação com valor único LPA1v considera, em cada vértice do reticulado, uma única anotação que representará, na análise paraconsistente, o grau de crença atribuído à proposição. Com estas considerações podemos estudar a LPA1v, através de um reticulado de quatro vértices apresentado na Figura 2.2.
41
Figura 2.2 Reticulado finito de Hasse. Através de uma análise intuitiva da Lógica Paraconsistente Anotada, a fórmula atômica pµ pode ser lida como: “creio na proposição p com grau de crença de no máximo µ, ou até µ ( ≤ µ)”. Isto leva-nos a considerar o grau de crença como sendo uma constante de anotação do reticulado. Na representação as proposições são acompanhadas de anotações, que por sua vez, atribuem o grau de crença correspondente a cada variável proposicional. As anotações, neste reticulado, são valoradas com um valor real no intervalo fechado [0, 1] 5. Podemos considerar que cada grau de crença atribuído à proposição é um valor que está contido no conjunto de valores composto pelas constantes de anotação do reticulado {T, V, F, ⊥ }. Cada sentença proposicional virá acompanhada de um grau de crença que atribuirá uma leitura intuitiva de “Verdade”, de “Falsidade”, de “Inconsistência” ou de “Indeterminação” à proposição. Portanto, uma sentença proposicional associada ao reticulado da Lógica Paraconsistente Anotada pode ser lida do seguinte modo: pT ⇒ A anotação ou grau de crença atribui uma leitura intuitiva de proposição inconsistente a p. p1 ⇒ A anotação ou grau de crença atribui uma leitura intuitiva de proposição verdadeira a p. 5
Para detalhes, consultar os apêndices B e C.
42
p0 ⇒ A anotação ou grau de crença atribui uma leitura intuitiva de proposição falsa a p. p⊥ ⇒ A anotação ou grau de crença atribui uma leitura intuitiva de proposição indeterminada a p.
2.6.2 - Lógica Paraconsistente Anotada de anotação com dois valores - LPA2v A Lógica Paraconsistente Anotada de anotação com dois valores-LPA2v traz a anotação composta por dois componentes, onde para cada proposição, associa-se dois valores de graus. O primeiro valor contido na anotação representa a evidência favorável à proposição p, e o segundo valor da anotação representa a evidência contrária à proposição p. É denominado de crença a evidência favorável à proposição p, isto é, primeiro valor da anotação, e de descrença a evidência contrária à proposição p, isto é, o segundo valor da anotação. O grau de crença é simbolizado pela letra µ1 e o grau de descrença pela letra µ2. Com estas considerações, cada constante de anotação do reticulado é agora representada pelo par (µ1, µ2), onde: µ1 = Grau de crença µ2 = Grau de descrença Consideramos, então, o reticulado de Hasse com anotação de dois valores, onde: τ = {(µ1, µ2 ) | µ1 , µ2 ∈ [0, 1] ⊂ ℜ}. Se p é uma fórmula básica, o operador ~ : |τ | → |τ | é definido agora como: ~ [(µ1, µ2)] = (µ1, µ2) onde, µ1, µ2 ∈ {x ∈ ℜ | 0 ≤ x ≤ 1}, considera-se (µ1, µ2 ) como 43
uma anotação de p. Para uma melhor representação, a LPA2v é associada ao reticulado de quatro vértices6 conforme o apresentado na figura 2.3.
Figura 2.3- Reticulado representativo da Lógica Paraconsistente Anotada de anotação com dois valores LPA2v. Em cada vértice deste, é representado um símbolo correspondente aos estados lógicos extremos, conforme foi estudado anteriormente. Considerando valores nos sinais que compõem as anotações pode-se, através de uma análise, chegar ao valor do estado lógico resultante que vai corresponder à saída do sistema. Podemos relacionar os estados lógicos extremos representados nos quatro vértices do reticulado com os valores dos graus de crença e de descrença da seguinte forma: pT = p (1, 1) ⇒ A anotação composta pelos graus de crença e de descrença atribui à proposição p uma leitura intuitiva que p é inconsistente. p1 = p (1, 0) ⇒ A anotação composta pelos graus de crença e de descrença atribui à proposição p uma leitura intuitiva que p é verdadeira. p0 = p (0, 1) ⇒A anotação composta pelos graus de crença 6
Para detalhes, consultar os apêndice B e C.
44
e de descrença atribui à proposição p uma leitura intuitiva que p é falsa. p1 = p (0, 0) ⇒ A anotação composta pelos graus de crença e de descrença atribui à proposição p uma leitura intuitiva que p é indeterminada. Podemos observar que há uma questão importante quanto à terminologia empregada ao termo “indeterminado” que se refere à anotação correspondente [0, 0]. Tal anotação corresponde intuitivamente “grau de crença favorável nulo e grau de descrença também nulo”. Se p simbolizar uma fórmula, então p(0, 0) significa, como vimos, uma proposição falsa e sua negação também falsa. Na terminologia das Lógicas Não-Clássicas está relativamente consagrado o termo “paracompleto” (e.g., [Da Costa, et al 99], Abe [92]) para uma proposição e sua negação ambas falsas simultaneamente. Porém, neste texto manteremos o termo “indeterminado” (ou “desconhecido”) por ser mais “sugestivo”. Convém salientarmos que anotações do tipo [x, x] em geral são denominadas de “indefinido” (com a exceção de [0, 0] e de [1.0, 1.0]), que ocorre, por exemplo, com [0.5, 0.5].6
2.7–Aplicações da Lógica Paraconsistente Anotada de anotação com dois valores - LPA2v A aplicação da Lógica Paraconsistente Anotada com este reticulado composto por anotação com dois valores permite novos recursos de controle, com mais possibilidades computacionais, acarretando com isso, uma melhora significativa no desempenho dos programas computacionais que vão ser desenvolvidos e aplicados nos Sistemas. Utilizando o raciocínio da Lógica Evidencial, para uma análise paraconsistente na LPA2v, as anotações podem ser interpretadas como evidências e, portanto, quando o sistema paraconsistente projetado com a LPA2v recebe informações contraditórias estas evidências em forma de graus de crença e de descrença possuem um papel importante na tomada de decisão. Na metodologia para aplicação da LPA2v, o estado lógico rec
Para detalhes, consultar os apêndices B e C.
45
sultante da saída, que vai permitir a emissão de uma conclusão, é encontrado através do equacionamento entre os dois valores evidenciais que compõem a anotação, isto é, o par (µ1, µ2) onde: µ1 significa o grau de crença atribuído à proposição e µ2 significa o grau de descrença atribuído à proposição. No procedimento prático da utilização da LPA2v, os graus de crença e de descrença são considerados como informações de entrada do sistema e os estados lógicos representados nos vértices do reticulado são as saídas resultantes da análise paraconsistente. A figura 2.4 apresenta esta configuração simples.
Figura 2.4- Sistema básico de análise paraconsistente
2.7.1 – A Análise Paraconsistente com a LPA2v. Nas aplicações da LPA2v em um sistema de análise, os graus de crença e de descrença são considerados como evidências que servirão para que o sistema equacione os valores e baseado nos resultados tome decisões. Á medida que vão chegando as novas evidências para a análise vão diminuindo as contradições, dando condições ao sistema de chegar a uma conclusão mais acertada. A análise paraconsistente dos graus de crença e de descrença é feita através da representação do reticulado em um Quadrado Unitário no Plano Cartesiano - QUPC. No QUPC os graus de crença ficam expostos no eixo x e os graus de descrença no eixo y. A figura 2.5 mostra esta forma de representação. 46
Figura 2.5 - Reticulado representado por um Quadrado unitário no Plano Cartesiano-QUPC.
2.7.2 - O grau de Contradição G ct No Quadrado Unitário do Plano Cartesiano-QUPC podemos calcular o grau de Contradição Gct pela equação: Gct = µ1 + µ2-1. O grau de Contradição varia de –1 a +1 e pode ser visto por uma simples verificação no QUPC cujo valor é correspondente à distância do ponto de interpolação entre os graus de crença e de descrença e à reta que liga o ponto D = (1, 0) - Verdadeiro ao ponto B = (0, 1) Falso. O valor Gct = –1 que acontece no ponto A = (0, 0) representa uma contradição máxima negativa e o valor Gct = +1 que acontece no ponto C = (1, 1) significa que temos uma contradição máxima positiva. Na prática, os sensores que retratam as situações reais de conhecimento incerto quando chegam com valores que resultam nestes graus de Contradição estão trazendo informações completamente contraditórias. Num Sistema de Análise Paraconsistente quanto mais a interpolação entre os graus de crença e de descrença se aproximarem do segmento de reta BD, representado no QUPC, mais o resultado da soma dos graus de crença e de descrença (µ1 + µ2) se aproxima de 1 diminuindo assim o valor de Gct. Esta diminuição de Gct representa uma menor contradição entre as informações na entrada. Quando a soma dos graus de crença e de descrença (µ1 + µ2) for 47
igual a 1 o grau de Contradição é zero e o ponto de interpolação estará sobre a reta BD, neste caso Gct=0 e não há contradição entre os sinais.
2.7.3 - O grau de Certeza G c No Quadrado Unitário do Plano Cartesiano (QUPC) podemos calcular o grau de Certeza Gc pela equação: Gc = µ1 + µ2 . O valor do grau de Certeza Gc pode variar –1 a +1. Uma simples verificação no QUPC mostra que o seu valor corresponde a distância do ponto de interpolação entre os graus de crença e de descrença à reta que liga o ponto A = (0, 0) - Indeterminado ao ponto C = (1, 1) Inconsistente. O valor de Gc = –1 que corresponde ao ponto B = (0, 1) significa intuitivamente que temos uma certeza máxima na negação da Proposição. O valor Gc = +1 que corresponde ao ponto D = (1, 0) significa intuitivamente que temos uma certeza máxima na afirmação da proposição. Na prática, os sensores da análise paraconsistente, quando chegam com valores que resultam nestes graus de Certeza estão trazendo informações consistentes. Quanto mais a interpolação entre os graus de crença e de descrença se aproximarem do segmento de reta AC, representado no QUPC, mais o resultado da subtração dos graus de crença pelo grau de descrença (µ1 - µ2) se aproxima de 0 diminuindo assim o valor de Gc. Esta diminuição de Gc representa uma menor certeza entre as informações na entrada porque significa uma maior coincidência entre os Graus de crença e de descrença. Quando os graus de crença e de descrença forem de valores iguais (µ1 = µ2) o grau de certeza é zero e o ponto de interpolação estará sobre a reta AC, nestes casos somente há indefinição entre os sinais.
2.7.4 - O reticulado associado à LPA2v construído com valores de graus de Contradição e graus de Certeza Os valores dos Graus de Contradição Gct e os valores dos graus de certeza Gc originários das equações interpretadas no Quadrado 48
Unitário do Plano Cartesiano podem ser expostos em dois eixos que vão representar o reticulado da LPA2v com valores. Conforme apresenta-se na figura 2.6, os valores dos Graus de Certeza Gc são alocados horizontalmente no reticulado associado à Lógica Paraconsistente Anotada compondo o eixo denominado eixo dos graus de certeza e os valores dos Graus de Contradição Gct são alocados verticalmente no reticulado associado à Lógica Paraconsistente Anotada compondo o eixo denominado de eixo dos graus de contradição.
Figura 2.6 – Valores de Gc e Gct representado em um Reticulado da LPA2v com valores. Dois valores limites externos e arbitrários (Vscc = Valor superior de controle de certeza e Vicc = Valor inferior de controle de certeza) determinam quando o grau de Certeza resultante é alto o suficiente para que a Proposição analisada seja considerada de totalmente Verdadeira ou de totalmente Falsa. Da mesma forma, dois valores limites externos e arbitrários (Vscct = Valor superior de controle contradição e Vicct = Valor inferior de controle contradição) determinam quando o valor do grau de Contradição resultante da análise é tão alto que se pode considerar a Proposição totalmente inconsistente ou totalmente indeterminada.
49
Figura 2.7- Reticulado com os valores ajustáveis de controle limite indicados nos eixos. Este procedimento permite a interpretação da Lógica Paraconsistente Anotada por meio de equacionamento de valores, facilitando a implementação de Sistemas de Análises Paraconsistentes por meio de processamento computacional.
2.7.5 - O algoritmo Para-Analisador Com os valores dos graus de contradição Gct e os valores dos graus de Certeza Gc encontrados para(µ1, µ2) ∈ {x ∈ ℜ | 0 ≤ x ≤ 1}e alocados nos eixos forma o reticulado associado da LPA2v com valores. O reticulado com valores pode ser repartido ou delimitado em várias regiões de diversos formatos, obtendo assim uma discretização do reticulado. A partir das regiões delimitadas do reticulado podemos relacionar estados lógicos resultantes obtidos pelas interpolações dos graus de certeza Gc e de contradição Gct. Para cada ponto de interpolação entre os graus de certeza e de contradição, haverá uma única região delimitada no reticulado que é equivalente a um estado lógico resultante da análise. O número de regiões delimitadas em que o reticulado vai ser 50
separado depende de cada projeto. Como exemplo, a figura 2.8 mostra um reticulado construído com valores de graus de Certeza e de Contradição, repartido em 12 regiões, portanto, originando 12 estados lógicos resultantes.
Figura 2.8 - Representação do reticulado da LPA2v repartido em 12 regiões delimitadas originando 12 estados lógicos resultantes. A descrição do reticulado repartido em regiões delimitadas é feita através de valores de graus obtidos pelo equacionamento e comparados aos valores limites. Esta descrição forma o algoritmo da LPA2v denominado de “Para-Analisador. Os estados Lógicos que são representados pelas regiões que ocupam os vértices do reticulado são os: Verdadeiro, Falso, Inconsistente e Indeterminado. Estes são denominados de estados Lógicos Extremos. Os estados lógicos de saída representados por regiões internas no reticulado que não são os estados Lógicos Extremos, são denominados de estados Lógicos Não-Extremos. Cada estado Lógico Não-Extremos são nomeados conforme sua proximidade com os estados Lógicos Extremos. A seguir são apresentados os 4 estados Lógicos Extremos e os 8 Não-Extremos que compõem o reticulado da figura 2.8. Os estados Lógicos Extremos são: Os estados Lógicos Extremos são: T ⇒ Inconsistente 51
F ⇒ Falso ⊥ ⇒ Indeterminado V ⇒ Verdadeiro e os estados lógicos não-extremos: ⊥ → f ⇒ Indeterminado tendendo ao Falso ⊥ →v ⇒ Indeterminado tendendo ao Verdadeiro T→ f ⇒ Inconsistente tendendo ao Falso T→ v ⇒ Inconsistente tendendo ao Verdadeiro Q v →T ⇒ Q u a s e - v e r d a d e i r o t e n d e n d o a o Inconsistente Qf → T ⇒ Quase-falso tendendo ao Inconsistente Qf → ⊥ ⇒ Quase-falso tendendo ao Indeterminado Qv → ⊥ ⇒ Quase- verdadeiro tendendo ao Indeterminado Os valores das variáveis de entrada são representados por: µ 1 ⇒ Grau de crença µ 2 ⇒ Grau de descrença e os valores relacionais: G ct ⇒ grau de Contradição, onde : G ct = µ1 + µ2 - 1 onde : 0 ≤ µ1 ≤ 1 e 0 ≤ µ2 ≤ 1 G c ⇒ grau de Certeza, onde: G c = µ1 - µ2 onde: : 0 ≤ µ1 ≤ 1 e 0 ≤ µ2 ≤ 1 As variáveis de controle para recursos de otimização são: V scc ⇒ Valor superior de controle de certeza. V sci ⇒ Valor superior de controle de incerteza. V icc ⇒ Valor inferior de controle de certeza. V ici ⇒ Valor inferior de controle de incerteza. Com todas as variáveis e todos os valores relacionados ao reticulado associado à LPA2v é feita uma descrição entre as entradas e saídas envolvidas no processo. Como resultado das várias sentenças descritivas é apresentado o algoritmo para implementação em programa de computação convencional.
52
Algoritmo “Para-Analisador” da Lógica Paraconsistente Anotada de anotação com dois valores LPA2v */Definições do valores*/ V scc = C 1 */ Definição do valor superior de controle de certeza*/ */ Definição do valor inferior de controle de V icc = C 2 certeza*/ V sci = C 3 */ Definição do valor superior de controle de Contradição*/ V ici = C 4 */ Definição do valor inferior de controle de Contradição*/ */Variáveis de entrada */ µ1 µ2 */Variáveis de saída* Saída discreta = S 1 Saída analógica = S 2a Saída analógica = S 2b */Expressões matemáticas */ sendo : 0 ≤ µ1 ≤ 1 e 0 ≤ µ2 ≤ 1 G ct = µ1 + µ2 - 1 G c = µ1 - µ2 */determinação dos estados Lógicos Extremos */ Se G c ≥ C 1 então S1 = V Se G c ≤ C 2 então S1 = F Se G ct ≥ C 3 então S1 = T Se G ct ≤ C 4 então S1 = ⊥ */determinação dos estados Lógicos Não-Extremos/ Para 0 ≤ G c < C 1 e 0 ≤ G ct < C 3 se G c ≥ G ct então S 1 = Qv →T senão S 1 = T → v Para 0 ≤ G c < C 1 e C 4 < G ct ≤ 0 53
Para
Para
se G c ≥ | G ct | então S 1 = Qv → ⊥ senão S 1 = ⊥ → v C 2 < G c ≤ 0 e C 4 < G ct ≤ 0 se |G c | ≥ | G ct | então S 1 = Qf → ⊥ senão S 1 = ⊥ → f C 2 < G c ≤ 0 e 0 ≤ G ct < C 3 se |G c | ≥ G ct então S 1 = Qf →T senão S 1 = T → f G ct = S 2a G c = S 2b */ FIM*/
Como os valores dos graus de crença e de descrença variam entre 0 e 1, podemos obter como saída os valores dos graus de Contradição e de Certeza a qualquer instante. Através destes valores, saberemos se existe contradição e caso não exista, teremos o grau de Certeza com o qual podemos formular uma conclusão. Na prática, um Sistema paraconsistente funciona da seguinte forma: 1 O sistema recebe a informação. As informações vêm na forma de dois valores variáveis e independentes: a) O grau de crença, que é um valor real entre 0 e 1. b) O grau de descrença, que é um valor real entre 1 e 0. 2 O Sistema faz o processamento. Utilizando as equações: a) G ct = µ1 + µ2 - 1 para encontrar o grau de contradição b) G c = µ1 - µ2 para encontrar o grau de certeza 3- O Sistema conclui. Utiliza as condicionais: a) Se existir um alto grau de Contradição não existe certeza 54
ainda quanto à decisão, portanto deve-se buscar novas evidências. b) Se existir um baixo grau de Contradição pode-se formular a conclusão, desde que se tenha um alto grau de Certeza. Devemos ter em conta que este alto grau de Contradição e de Certeza pode ser negativo ou positivo, isto é, estes valores deverão ser considerados em módulo e os limites que definem o que é alto ou baixo é uma decisão que depende exclusivamente do projeto no qual o sistema vai ser utilizado. O algoritmo Para-Analisador traduz a análise paraconsistente, através da análise dos valores dos graus de crença e de descrença resultando nos valores dos graus de Contradição e de Certeza. Um Sistema que vai analisar sinais utilizando o reticulado da LPA2v de valores de graus de Certeza e Contradição, pode ser visualizado pelo diagrama de blocos da figura abaixo:
Figura 2.9 - Representação de um sistema típico de análise 55
paraconsistente utilizando o reticulado da LPA2v repartidoem 12 regiões delimitadas. Nesta descrição do Reticulado da LPA2v, os sinais de entrada são analisados pelo algoritmo Para-Analisador resultando em uma palavra binária de 12 dígitos, em que para cada análise apenas um bit estará ativo. Os valores dos graus d e c e r t e z a G c e d e c o n t r a d i ç ã o G c t ta mbé m se r ã o considerados saídas que podem ser utilizadas em um controle contínuo. Todo o Sistema pode ser otimizado através dos valores limites que determinam o formato das regiões do reticulado representativas dos estados lógicos.
2.7.6 - Os Operadores Lógicos da LPA2v A Lógica Paraconsistente Anotada de anotação com dois valores LPA2v considera em sua estrutura teórica a Negação Lógica NOT, os conectivos de Maximização OR e o de Minimização AND8. Na prática, para se obter estas funções lógicas, são utilizados os conectivos lógicos condicionais, que nos programas de Neurocomputação podem ser considerados como operadores lógicos. A descrições dos operadores lógicos são apresentados a seguir.
O Operador Lógico OR da Maximização Dado a proposição anotada A: P A ( µ1A , µ2A ) onde: µ1A = Grau de crença da proposição A. µ2A = Grau de descrença da proposição A. Veja neste capítulo, na seção 2.4.1, definição 2, a negação de A, ( ¬ A), a conjunção (A ∧ B) e a disjunção (A ∨ B) de A e B. Ás vezes referir-nos-emos a tais conectivos como NOT, AND e OR, respectivamente. 8
56
e a proposição anotada B: P B ( µ 1B , µ 2B ) onde: µ1B = grau de crença da proposição B. µ2B = grau de descrença da proposição B. e sendo: µ1R = grau de crença resultante da saída µ2R = grau de descrença resultante da saída a maximização (ou conjunção A ∧ B ) entre as proposições A e B é obtido pelas condicionais :
Se µ ≤µ então: µ =µ 1A
1B
1R
Caso contrário: µ1R = µ1A
1B
Se µ ≤µ então: µ =µ 2A
2B
2R
Caso contrário: µ2R = µ2B
2A
Figura 2.10 - Representação do Operador de Maximização da LPA2v.
O Operador Lógico AND da Minimização Dado a proposição anotada A: P A ( µ1A , µ2A ) onde: µ1A = grau de crença da proposição A. µ2A = grau de descrença da proposição A. e a proposição anotada B: P B ( µ1B , µ2B) onde: µ1B = grau de crença da proposição B. µ2B = grau de descrença da proposição B. e sendo: µ1R = grau de crença resultante da saída µ2R = grau de descrença resultante da saída a minimização (ou disjunção A ∨ B ) entre as proposições A e B é obtido pelas condicionais :
57
Se µ
1A
≥µ
1B
então: µ
1R
=µ
Caso contrário: µ 1R = µ 1A
Se µ
2A
≥µ
2B
então: µ
2R
=µ
Caso contrário: µ 2R = µ 2B
1B
2A
Figura 2.11 - Representação do Operador de Minimização da LPA2v.
O Operador Lógico NOT da Negação Dado a proposição anotada A: P A ( µ 1A , µ 2A ) onde: µ 1A = grau de crença da proposição A. µ 2A = grau de descrença da proposição A. e sendo: µ 1R = grau de crença resultante da saída µ 2R = grau de descrença resultante da saída a negação da proposição A é obtida pela ação de permuta entre o valor do grau de crença pelo de descrença:
Faça: µ Fim
1R
=µ
2A
e µ
2R
=µ
1A
Figura 2.12 - Representação do Operador de Maximização da LPA2v. 58
Nos projetos de Sistemas da LPA2v para tratamento de sinais de controle, quando os procedimentos lógicos exigem uma conexão ou negação lógica, os Operadores são incluídos antes da análise paraconsistente feita pelo Algoritmo Para-Analisador.8
2.7.7 - O algoritmo Para-Analisador simplificado O número de regiões depende do projeto a ser desenvolvido e os formatos podem ser variados através de ajustes dos valores dos controles-limites feitos externamente, possibilitando a otimização do sistema de análise paraconsistente da LPA2v. Um método de determinar as ações que o sistema pode tomar após a análise paraconsistente é feito discretizando o reticulado. A discretização é feita criando regiões delimitadas internas que são equivalentes a estados lógicos de saída. Para a finalidade de aplicações da LPA2v em Neurocomputação que é o objetivo deste livro, vamos utilizar o algoritmo para fazer a análise paraconsistente sem discretizar o reticulado, portanto quando a análise resultar em valores fora dos limites estipulados pelos valores de controle, a conclusão na saída é de uma indefinição. Com estas considerações vamos apresentar o algoritmo Para-Analisador simplificado conforme o exposto abaixo :
8
No apêndice D, é apresentado um programa elaborado em linguagem C no qual os Operadores Lógicos e o Algoritmo Para-Analisador de 12 estados lógicos resultantes são utilizados para as análises paraconsistentes.
59
O Algoritmo “Para-Analisador” simplificado 1- Entre com os valores limites de comparação V scc = C 1 */Valor superior de controle de certeza */ V icc = C 2 */ Valor inferior de controle de certeza */ V scct = C 3 */Valor superior de controle contradição */ V icct = C 4 */Valor inferior de controle contradição */ 2- Entre com os valores de entrada µ 1 */ Grau de crença 0 ≤ µ 1 ≤ 1 */ µ 2 */ Grau de descrença 0 ≤ µ 2 ≤ 1 */ 3- Calcule o grau de Contradição G ct = µ 1 + µ 2 - 1 4- Calcule o grau de Certeza Gc = µ1 - µ2 5- Determine os estados lógicos resultantes da saída Se G c ≥ C 1 então S 1 = V Se G c ≤ C 2 então S 1 = F Se G ct ≥ C 3 então S 1 = T Se G ct ≤ C 4 então S 1 = ⊥ Senão S 1 = I = Indefinição G ct = S 2a G c = S 2b 6 - Fim
Este algoritmo simplificado facilita a elaboração da Célula Artificial Paraconsistente Básica CNAPb que será 60
fundamental para implementação das Redes Neurais Artificiais Paraconsistentes RNAP’s. 2.8 - A Célula Artificial Paraconsistente Básica (CAPb) Uma descrição do reticulado utilizando os valores obtidos pelas equações dos graus de Certeza G c e de Contradição G ct originou o Algoritmo “Para-Analisador” simplificado. O algoritmo demonstra que, na obtenção de subsídios suficientes para tomada de decisão na análise paraconsistente, são necessárias apenas duas equações como ferramentas principais. O processamento de sinais com as duas equações permite sabermos com que medida ou “grau de Certeza” podemos afirmar que uma proposição é Falsa o u Verdadeira. Numa interpretação mais precisa do algoritmo é verificado que: 1- Como resultado da análise para tomada de decisão é considerado apenas o valor do grau de Certeza G c. 2 - Quanto ao valor do grau de contradição G ct é considerado um indicativo, cuja função é informar a medida da inconsistência existente entre as informações recebidas. Estas duas afirmações ficam claras quando verificamos no algoritmo Para-Analisador Simplificado que, na análise paraconsistente, ao término do equacionamento das informações obtidas pelos valores dos graus de crença e de descrença µ 1 e µ 2, se houver um baixo valor de certeza ou um alto grau de contradição que, obviamente representa muita inconsistência, o resultado da análise é uma indefinição I. Toda a referência na análise paraconsistente é feita pela comparação entre os valores limites ajustados externamente. São os valores limites que determinam se o 61
resultado é uma indefinição I, ou não. Analisando os dados envolvidos no Algoritmo Para-Analisador simplificado podemos descrever a análise paraconsistente utilizando apenas as equações. a) As variáveis de entrada são as informações de entrada para a análise: O grau de crença: µ 1, tal que: 0 ≤ µ 1 ≤ 1 O grau descrença µ 2, tal que: 0 ≤ µ 2 ≤ 1 a) Os valores de controle limite são as referências para decisão: V icc, tal que: -1 ≤ V icc ≤ 0 V scc, tal que: 0 ≤ V scc ≤ 1 V icct, tal que: -1 ≤ V icct ≤ 0 V scct, tal que: 0 ≤ V scct ≤ 1 a) A saída para tomada de decisão é: O grau de certeza calculado: G c = µ 1 - µ 2 a) O indicativo do grau de inconsistência é: O grau de contradição: G ct = µ 1 + µ 2 - 1 O grau de certeza resultante da análise G ct é obtido através das comparações feitas a seguir: Se: V icc ≤ G ct ≤ V scc ou V scct ≤ G ct ≤ V icct ⇒ G c = Indefinição I Para: V icct ≤ G ct ≤ V scct Se: G ct ≤ V icc ⇒ G c = Falso com grau G ct V scc ≤ G ct ⇒ G c = Verdadeiro com grau G ct Com base nestas verificações detalhadas do algoritmo Para-Analisador Simplificado podemos elaborar uma célula funcional que analisa e faz tratamento de sinais conforme os procedimentos da metodologia empregada nas aplicações da LPA2v. Na figura 2.10, apresentamos o fluxograma e o bloco de análise paraconsistente representativo de uma Célula Artificial Paraconsistente básica que apresenta características de análises da LPA2v.
62
CÉLULA ARTIFICIAL PARACONSISTENTE BÁSICA - CAPb
Figura 2.13 - Fluxograma e representação da Célula Artificial Paraconsistente básica CAPb. A Célula Artificial Paraconsistente Básica como é apresentada no fluxograma da figura anterior é de fácil implementação em qualquer linguagem de programação. 63
2.9 - Considerações Finais Os resultados obtidos com algoritmo Para-Analisador no tratamento de sinais contraditórios mostram uma certa semelhança com o macro funcionamento do cérebro humano. A decisão tomada a partir de informações adquiridas pelos sentidos é um processo mental biológico que pode ser modelado pela Lógica Paraconsistente Anotada de anotação com dois valores LPA2v através do algoritmo ParaAnalisador. Com base nestas verificações, o algoritmo ParaAnalisador é considerado como um bloco que pondera valores de informações recebidos através de sensores. A este bloco originado do Algoritmo denominamos de Célula Artificial Paraconsistente básica (CAPb). A Célula Artificial Paraconsistente básica é a célulamãe (celula matter) que origina a família de Células Neurais Artificiais Paraconsistentes que irão compor os projetos de Neurocomputação paraconsistente apresentados neste livro. Neste capítulo, foi visto que a Célula Artificial Paraconsistente Básica foi construída utilizando uma forma particular de interpretação da Lógica Paraconsistente Anotada, analisada e equacionada no quadrado unitário do plano cartesiano. Vamos utilizar a Célula Artificial paraconsistente Básica em projetos de Neurocomputação, no entanto, conforme ficou demonstrado na metodologia de aplicação da Lógica Paraconsistente Anotada, a CAPb pode ser utilizada em diversas áreas de Inteligência Artificial onde é necessário se fazer tratamento de conhecimento incerto. Nos próximos capítulos, novas considerações vão ser feitas para aperfeiçoar a CAPb procurando adaptá-la aos processos mentais do cérebro objetivando encontrar meios eficientes de modelagens que possam ser aplicados em Neurocomputação. Com estas novas considerações serão configuradas várias Células Neurais Artificiais 64
Paraconsistentes compondo uma família de células totalmente implementada utilizando a forma de análise paraconsistente apresentada neste capítulo. 2.10 - Exercícios 1 Descreva quais são as situações encontradas no mundo real que dificultam a interpretação de Sistema de controle e especialistas que utilizam a Lógica Clássica na tomada de decisão. 2
Descreva por que existem dificuldades para um Sistema Especialista fazer tratamento adequado de informações originadas do conhecimento incerto, quando utiliza a Lógica Clássica.
3
Comente sobre alguns dos princípios básicos da Lógica Clássica.
4 Dê uma definição de Lógica Paraconsistente. 5
O que é uma Lógica Paracompleta?
6
O que são Lógicas Não-aléticas?
7
Descreva as características fundamentais das Lógicas Paraconsistentes Anotadas de anotação com dois valores LPA2v.
8
Supondo que exames feitos em um paciente x pedidos pelo médico M1 o faz afirmar que “O paciente x está com 72% de probabilidade de estar acometido de uma patologia grave y”. Descreva a Proposição utilizando as simbologias da Lógica Paraconsistente Anotada de anotação única.
9
Supondo que um paciente recebe o diagnóstico do 65
médico M 1 da seguinte forma:__ “Os resultados dos exames solicitados me levam a afirmar que você tem 68% de probabilidade de estar acometido de uma pneumonia”. Não satisfeito com o diagnóstico o paciente procura o médico M 2, que analisando os exames faz a seguinte afirmação:__ “Os resultados dos exames me levam a afirmar que você tem 43% de probabilidade de estar acometido de uma pneumonia”. Descreva a Proposição utilizando as simbologias da Lógica Paraconsistente Anotada de anotação com dois valores. 10 Para os graus de crença e de descrença obtidos no item 9, calcule o grau de Certeza G c e de Contradição G ct. 11 Em um Sistema que utiliza a LPA2v para análise e tratamento de sinais para que servem os valores de Controle? 12 Enumere as diferenças entre um Sistema de Análise feito com a Lógica Clássica e um Sistema feito com a LPA2v. 13 No Algoritmo Para-Analisador quais são as saídas que podem ser utilizadas para a tomada de decisão. 14 O que são os Estados Lógicos Extremos? E o que são os Estados Lógicos Não-Extremos? Dê uma interpretação intuitiva para cada uma das situações. 15 Elabore em linguagem C e obtenha o programa executável que representa a Célula Artificial Paraconsistente Básica - CAPb da LPA2v.
66
CAPÍTULO 3 OS CONCEITOS FUNDAMENTAIS DA CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE Apresentamos as noções básicas para a implementação das Células Neurais Artificiais Paraconsistentes CNAP’s. Uma Célula Neural Artificial Paraconsistente - CNAP é o menor componente da Rede Neural Artificial Paraconsistente com função comportamental definida. A função desenvolvida por cada tipo de CNAP vai contribuir de modo emergente para capacitar a rede a desenvolver análises e definir comportamentos semelhantes ao funcionamento do cérebro humano. A partir das considerações originadas da Célula Artificial Paraconsistente básica CAPb, estudada no final do capítulo anterior, são estabelecidos os critérios e fundamentos que irão possibilitar a implementação das Células Neurais Artificiais Paraconsistentes CNAP’s. Serão estudados e apresentados os fatores e valores envolvidos nas análises paraconsistentes desenvolvidas pelas Células. Os procedimentos apresentados e as considerações feitas neste capítulo permitirão a implementação dos algoritmos que representarão cada uma das Células da Rede Neural Artificial Paraconsistente RNAP que vai ser proposta nos capítulos posteriores.
3.1 - Introdução No capítulo anterior foi apresentado um método que permite aplicações da Lógica Paraconsistente Anotada de anotação com dois valoresLPA2v através de um algoritmo denominado de “Para-Analisador”. Conforme foi visto, este algoritmo originou-se da descrição matemática do reticulado de quatro vértices associado à Lógica Paraconsistente Anotada. A partir da estrutura básica do algoritmo “Para-Analisador” simplifi68
cado vamos introduzir os conceitos básicos que permitirão a criação uma família de Células Neurais Artificiais Paraconsistentes CNAP’s composta de oito componentes.
3.2 – Conceitos Básicos das Artificiais Paraconsistentes
Células
Neurais
Com base na Célula Artificial Paraconsistente básica CAPb, descreveremos a seguir os elementos básicos para implementação dos vários tipos de Células Paraconsistentes. Inicialmente, vamos fazer algumas considerações formando conceitos elementares que vão contribuir para a elaboração das análises e comparações efetuadas com valores limites ajustados externamente e introduzidos nas Células Neurais Artificiais Paraconsistentes. Os conceitos básicos apresentados a seguir têm o objetivo de constituir fundamentos para a construção dos algoritmos representativos de cada Célula componente da família de Células Neurais Artificiais Paraconsistentes.
3.2.1 - O grau de Crença Resultante µ 1 r Na Célula Artificial Paraconsistente Básica CAPb, o resultado da análise vem em forma de valor analógico do grau de Certeza Gc e do grau de Contradição Gct e também em uma palavra binária composta por cinco dígitos representativos dos estados Lógicos Resultantes: Verdadeiro, Falso, Inconsistente, Indeterminado e Indefinido. Após uma análise paraconsistente, o valor do grau de Certeza Gc obtido na saída de uma CAPb deve ser a informação mais importante. Em uma Rede composta por várias Células, esta informação deverá ser passada aos outros componentes para que seja comparada e analisada gerando uma tomada de decisão. Conforme as características de análise da LPA2v, o valor do grau de Certeza Gc obtido na saída de uma Célula C1 deve ser considerado como grau de crença na entrada da outra Célula C2. Portanto, o grau de Certeza Gc da saída de uma análise, deve ser considerado como um valor de crença que vai expressar a certeza a respeito da Proposição analisada. Este valor de crença que será a informação transmitida na rede é o valor normalizado do grau de Certeza Gc obtido na saída da primeira Célula e receberá a denominação de grau de crença resultante µr.
69
A figura abaixo mostra esta conexão através de duas Células, onde a Célula C2 utiliza a saída da Célula C1 como uma de suas entradas.
Figura 3.1– Diagrama simplificado mostrando a conexão entre duas CAPb utilizando o grau de Certeza da primeira como grau de crença da segunda. O valor relativo ao grau de crença resultante µr é originado do grau de Certeza calculado pela equação: Gc = µ1 - µ2, onde Gc varia entre +1 e – 1. Para a obtenção do grau de crença, resultante da análise na qual, conforme as características da metodologia da LPA2v, o valor é analógico e só pode variar em um intervalo real fechado [0, 1] é feita uma normalização na equação. Seja: Gc = µ1 - µ2 Onde: µ1, tal que 0 ≤ µ1 ≤ 1 e µ2, tal que: 0 ≤ µ2 ≤ 1, o grau de crença resultante é obtido pela equação normalizada: µr = Gc + 1 2 A figura 3.2 mostra a relação dos valores entre o grau de Certeza obtido pela CAPb e o grau de crença resultante obtido pela equação normalizada.
70
Figura 3.2 – Gráfico de valores de graus de certeza relacionados aos graus de crença resultante. Em uma rede composta por várias Células Artificiais Paraconsistentes, podemos definir o grau de crença resultante µr como o valor da análise paraconsistente obtido pela equação normalizada. Os outros valores, o grau de Contradição e a palavra binária de 5 dígitos obtidos da análise serão considerados a seguir.
3.2.2 - A Equação Estrutural Básica (EEB) Várias interligações de Células Neurais Artificiais Paraconsistentes, originadas da CAPb, irão compor a Rede Neural Artificial Paraconsistente RNAP. Fazendo a normalização dos valores de saída todos os sinais que vão trafegar pela rede serão considerados em valores que variam dentro do intervalo real fechado [0, 1]. Portanto, as Células Neurais Artificiais Paraconsistentes são projetadas para fazerem tratamento de sinais na forma de graus de crença e não admitem valores que não estejam entre o intervalo real fechado [0, 1]. A forma de tratar os sinais dentro deste intervalo é pela utilização da normalização efetuada no item anterior, portanto fazendo uma pequena modificação na Fórmula anterior, podemos considerar que nas CNAP’s os sinais serão equacionados por:
onde: µr = grau de crença resultante. µ1 = grau de crença de entrada. µ2 = grau de descrença de entrada Esta equação originada da normalização para obtenção do grau de crença resultante será utilizada para fazer a conexão das informações e pela sua importância é denominada de Equação Estrutural Básica EEB. A Equação Estrutural Básica EEB é extremamente importante para troca de informações entre as células e, em algumas análises, pode sofrer pequenas modificações, como a complementação em relação à unidade de suas variáveis, sem no entanto perder a sua função básica. A EEB é a equação fundamental das Redes Neurais Artificiais
71
Paraconsistentes porque será o código para a troca de informações entre os componentes. É através da EEB que vão ser conectadas todas as células componentes que estruturam as Redes Neurais Artificiais Paraconsistentes. Sua principal função é ponderar os valores na modelagem do neurônio biológico conforme vai ser descrito nos próximos capítulos. 3.2.3 - O grau de Indefinição Verifica-se pela Equação Estrutural Básica (EEB) que, quando os graus de crença e de descrença utilizados como entradas para a análise paraconsistente forem de valores iguais, o grau de crença resultante na saída µr será igual a 1/2. Uma análise gráfica no Quadrado Unitário do plano cartesiano, conforme foi visto no capítulo 2, nos indica que este resultado é uma reta denominada de perfeitamente indefinida porque é uma ocorrência de variações de valores entre o ponto A(0, 0) cujo estado é o Indeterminado e o ponto C(1, 1) cujo estado é o Inconsistente. A figura 3.3 mostra a reta perfeitamente indefinida, no quadrado unitário do plano cartesiano e no reticulado associado à Lógica Paraconsistente Anotada, construída por valores constantes de indefinição µr = 1/2.
Figura 3.3 - Reta de valores indefinidos demonstrando que µ1= µ2, resulta na indefinição com µr=1/2. Na reta perfeitamente indefinida há uma ocorrência de Indefinição máxima que provoca como resultado da análise paraconsistente uma saída com grau de crença resultante de valor 1/2, como é comprovada através da EEB.
3.2.4 - O Fator de tolerância à Contradição Ft ct Na análise paraconsistente, se entre os dois sinais de entrada houver um alto grau de inconsistência representado por um alto valor do grau de 72
Contradição Gct, não se pode tirar nenhuma conclusão a respeito da Proposição analisada. Na Célula Artificial Paraconsistente básica CAPb, todas as vezes que o grau de contradição ultrapassar os valores limites de contradição previamente ajustados, conclui-se que o estado lógico resultante de saída é Inconsistente ou Indeterminado, portanto, a saída terá como valor o grau de crença de indefinição que é igual a 1/2. Para facilitar a implementação dos algoritmos que vão representar as Células Neurais Artificiais Paraconsistentes CNAP’s em Neurocomputação, vamos utilizar para fazer a comparação com o grau de contradição Gc, um valor único ao qual denominamos de fator de tolerância à contradiçãoFtct. O Ftct é um valor ajustado externamente e sua finalidade é determinar os limites de contradição suportáveis entre os dois sinais aplicados nas entradas da célula. Seguindo as propostas de uma Rede Neural Artificial Paraconsistente o Fator de tolerância à contradição deve ser ajustado entre valores contidos no intervalo real fechado [0,1], portanto: 0 ≤ Ftct ≤ 1 A partir do valor de Ftct estabelecido externamente são obtidos dois valores limites de contradição Valor superior de controle de contradiçãoVscct e Valor inferior de controle de contradição-Vicct . Utilizando as mesmas notações da Célula Artificial Paraconsistente básica temos: Sendo o Grau de contradição em módulo calculado por: Gct = µ1+µ2-1 Os valores limites para comparação são calculados por: Vscct = 1 + Ftct e Vicct = 1 - Ftct 2 2 onde: Vscct = Valor superior de controle de contradição. Vicct = Valor inferior de controle de contradição. Estes dois valores entrarão no algoritmo representativo da CNAP para a comparação e elaboração da conclusão na saída da Célula. A decisão sobre o sinal de saída, representado pelo valor do grau de crença resultante mr relacionado à análise do valor da contradição, é tomada à partir das condições:
73
Se: Vicct > |Gct| > Vscct
então: µr = µ1 -µ1 +1 (EEB) 2 Senão µr = 1/2 (Indefinição)
Estabelecidos os fatores podemos tecer algumas considerações conforme a exposição a seguir: O fator de tolerância à contradição-Ftct é aplicado na Célula de Análise Paraconsistente como um valor arbitrário que pode ser ajustado externamente, portanto, numa Rede Neural Artificial Paraconsistente, pode ser recebido como um sinal de controle cuja finalidade é especificar o grau de tolerância entre sinais contraditórios a determinadas análises de certas regiões da rede. Pela equação é facilmente verificado que, quando o valor de Ft ct é ajustado em 0 os valores limites Vicct e Vscct estarão em 1/2. Isto significa que há uma inexistência de tolerância à contradição, portanto, se existir grau de contradição, a conclusão é que a saída será 1/2 resultando numa indefinição. Com o valor de Ftct ajustado no máximo, portanto Ftct=1, o Vicct estará com valor mínimo 0, e Vscct estará com valor máximo 1. Isto significa que a contradição é irrelevante e a saída será avaliada apenas pelo valor do grau de crença resultante mr calculado pela EEB. Na Família de Células Neurais Artificiais Paraconsistentes o Fator de tolerância à contradição é utilizado apenas em um tipo de célula, denominada de Célula de conexão analítica-CNAPca.
3.2.5 - O sinal de resposta à contradição ( S ct ) Quando o grau de contradição Gct for maior que o Fator de tolerância à contradição Ftct, a Célula Neural Artificial Paraconsistente fica com saída indefinida e tem como resultado da análise o grau de crença resultante µr=1/ 2. Esta condição é diferente de uma Indefinição ocasionada por insuficiência de informações que acontece quando os valores dos graus de crença e de descrença aplicados nas entradas estão baixos. Para distinguir estas duas situações, isto é a indefinição por insuficiência de valores, de uma indefinição por sinais contraditórios, que a grosso modo, é um excesso e não falta de informações, é gerado um sinal pela Célula que denominamos de Stc-Sinal de resposta à contradição. Deste modo, a condição de Indefinição originada por contradição é sinalizada e reconhecida pelos outros componentes da Rede. O sinal de sinalização de contradição Sct é obtido através de uma segunda saída da Célula. Fica estabelecido que, quando não há ocorrência de Indefinição por 74
contradição o sinal Sct tem valor nulo Sct=0. Quando ocorre a Indefinição por contradição o sinal Sct passa a ter o valor do grau de Contradição em módulo Sct = | Gct | . Portanto, as condições para o sinal de saída da Célula Sct ficam: Se: Vicct > |Gct| > Vscct não há indefinição por contradição, portanto: Sct = 0 Senão: Sct = |Gct| Em uma rede Neural Paraconsistente, o sinal Sct ativo vai indicar para os módulos de controle que, apesar da indefinição conclusiva na análise paraconsistente, existem evidências, representadas por sinais altos contraditórios, que devem ser levadas em consideração. Na Família de Células Neurais Artificiais Paraconsistentes o sinal de resposta à contradição é utilizado apenas na Célula de conexão analítica CNAPca. 3.2.6- O Fator de tolerância à Decisão FtD Na Célula Neural Artificial Paraconsistente, um valor de sinal limite aplicado externamente, denominado de fator de tolerância à decisão-FtD, vai comparar e definir um estado lógico na saída. A definição do estado lógico da saída e feito através do valor do FtD comparado ao valor do grau de crença resultante µr encontrado pela EEB. Na análise efetuada pela Célula Neural Artificial Paraconsistente, se o grau de crença resultante µr é um valor próximo ao da indefinição, isto é perto de 1/2, significa que os valores aplicados nas entradas são insuficientes, portanto conclui-se que a Célula não tem condições de expressar uma conclusão final sobre a análise. Para facilitar a implementação das Células em Algoritmos próprios para aplicações em Neurocomputação, as condições para a Célula produzir uma resposta final são conseguidas a partir de dois valores gerados pelo fator de tolerância à decisão FtD aplicado externamente. O Fator de tolerância à decisão gera dois valores limites denominados de: Valor Limite da Falsidade VlF e Valor Limite da Verdade VlV, que serão comparados com o resultado que é o grau de crença resultante µr. Como a indefinição tem valor 1/2, os valores que limitam Verdade e Falsidade são simétricos com referência à Indefinição, portanto, o Fator de tolerância à decisão FtD é ajustado no intervalo real fechado entre 0 e 1, Este prosedimento está dentro das características de uma analise paraconsistente que utiliza a LPA2v. Estabelecidos estes critérios os valores limites da Falsidade e da 75
Verdade são obtidos através das equações a seguir: VlF = 1 - FtD 2 onde: 0
VlV = 1 + FtD 2
≤ FtD ≤ 1
Os resultados da análise serão estabelecidos frente a três condições: Se o grau de crença resultante µr encontrado através da EEB, for igual ou menor que o Valor Limite da Falsidade VlF a decisão final é o estado lógico “Falso”. Se o grau de crença resultante µr for igual ou maior que o Valor Limite da Verdade VlV a decisão final é o estado lógico “Verdadeiro”. E se o grau de crença resultante µr ficar entre os valores limites, então a decisão é de “Indefinição”. De outra forma podemos escrever: Se: µr ≤ VlV então: estado lógico de saída é “Verdadeiro” e µr =1 Se: µr ≤ VlF então: estado lógico de saída é “Falso” e µr =0 Senão: o estado lógico é “Indefinido” e o grau de crença resultante é µr =1/2 Com estas considerações, é verificado que de acordo com as equações, quando um fator de tolerância à decisão é ajustado externamente nulo FtD = 0, ambos os limites valem 1/2. Isto significa que para qualquer valor do grau de crença resultante µr acima de 1/2 a célula decide-se pela conclusão de estado lógico “Verdadeiro” e para qualquer valor do grau de crença resultante µr abaixo de 1/2 a decisão é o estado lógico “Falso”. Quando o ajuste de um fator de tolerância é máximo, portanto FtD = 1, o valor do limite da Falsidade VLF é igual a zero e o limite da Verdade VlV tem o valor igual a 1. Isto significa que uma conclusão final a respeito da proposição analisada só será obtida se o grau de crença resultante µr, calculado pela EEB, estiver no seu valor máximo igual a 1, ou no seu valor mínimo, igual a zero. Caso contrário, isto é, o resultado de µr não chegar a estes extremos, a Célula se acha incapacitada para emitir uma conclusão, portanto, vai emitir uma saída de mr igual a 1/2 sinalizando uma Indefinição na análise. Na Família de Células Neurais Artificiais Paraconsistentes o Fator de
76
tolerância à contradição é utilizado apenas em um tipo de célula, denominada de Célula de Decisão CNAPd.
3.2.7 - O Fator de tolerância à Certeza Ft c Nas Células Neurais Artificiais Paraconsistentes devemos determinar o limite mínimo do valor de grau de crença resultante µr que deve ser considerado como relevante para análises posteriores. Para definir este limite é introduzido externamente, na Célula, um valor denominado de fator de tolerância à certeza-Ftc. Na Análise Paraconsistente entre os dois sinais quando resultado é um baixo valor de grau de crença resultante µr, isto é, µr está muito próximo de 1/2, significa que os dados das informações vindas a respeito da Proposição analisada estão muito perto da indefinição e portanto, não é necessário se levar em consideração nas análises posteriores. O Fator de tolerância à Certeza Ftc é um valor ajustado externamente que comparando com o resultado da análise definirá se as informações são suficientes ou insuficientes para serem consideradas em análises posteriores. Portanto, na Célula Neural Artificial Paraconsistente, o Fator de tolerância à certeza-Ftc é um valor externo previamente ajustado, que é introduzido para ser comparado com o grau de crença resultante µr obtido pela EEB. Para utilizar o Fator de tolerância à Certeza Ftc calculamos os limites por: Vscc = 1 + Ftc 2
e
Vicc = 1 - Ftc 2
onde: Vscc = Valor superior de controle de certeza. Vicc = Valor inferior de controle de certeza. O Fator de tolerância à certeza-Ftc é aplicado na Célula de Análise Paraconsistente como um valor arbitrário que pode ser ajustado externamente. O valor do Ftc deve ser equacionado conforme as regras estabelecidas para a LPA2v, portanto: 0 ≤ Ftc ≤ 1 Estabelecidas estas condições, a decisão sobre o sinal de saída, representado pelo grau de crença resultante µr que é relacionado à certeza da 77
análise efetuada pela célula, é obtida a partir das seguintes condições: Se: Vicc
≤ µr ≤ Vscc
então: µr = µ1 -µ1 +1 (EEB) 2 Senão: µr = 1/2 (Indefinição)
É visto pelas condições apresentadas que, se o grau de crença resultante µr estiver abaixo do valor limite estipulado pelo fator de tolerância à certeza-Ftc, o estado lógico de saída é o Indefinido. Com isso, a saída terá como resultado uma Indefinição representada pelo valor do grau de crença resultante µr igual à 1/2.
3.3- O Fator de Tolerância à Certeza Ft c utilizado como Controle da Célula O Fator de tolerância à Certeza Ftc pode ser utilizado como um sinal controlador que vai habilitar e desabilitar o funcionamento da Célula. Utilizando as equações que determinam o Fator de tolerância à Certeza podemos afirmar que: Quando o Fator de tolerância à Certeza Ftc estiver ajustado com um valor baixo significa que a célula tem baixa tolerância aos graus de crença resultante µr calculados pela EEB e, portanto só vai admitir como saída valores de graus de crença altos sendo os valores baixos rejeitados e a saída levada à Indefinição. Quando o Fator de tolerância à Certeza Ftc estiver ajustado com um valor alto a Célula Neural Artificial Paraconsistente tem alta tolerância aos valores de graus de crença resultantes e, portanto vai admitir, como saída, valores de graus de crença baixos. A figura 3.4 mostra a região habilitada e desabilitada no reticulado quando o fator de tolerância à certeza é variado entre 0 e 1. A parte escura representa a região de pontos interpolados com valores de graus de Certeza Gc e de Contradição Gct que são habilitados a serem apresentados na saída.
78
Figura 3.4 - (a) A Célula é desabilitada com saída µr =1/2. (b) A Célula é habilitada com saída µr =µ r.
3.4-A Influência Conjunta do Fator de Tolerância à Contradição Ft ct e do Fator de Tolerância à Certeza Ft c na Análise da Célula. Estabelecidas as condições para a implementação das Células Neurais Artificiais Paraconsistentes é verificado que os dois valores introduzidos externamente, denominados de fator de tolerância à Certeza Ftc e de fator de tolerância à Contradição Ftct, controlam e modificam as características de funcionamento da Célula Neural Artificial Paraconsistente. O fator de tolerância à Contradição Ftct vai definir os limites suportáveis de informações contraditórias. Portanto, se o grau de Contradição Gct estiver alto e ultrapassar o Ftct, a saída vai para uma indefinição e um sinal de existência de contradição Sct é gerado para alertar a ocorrência de sinais de informações com valores que podem ser considerados na análise. O Fator de tolerância à Certeza Ftc vai definir o limite mínimo do valor do grau de crença resultante mr da análise, que pode ser considerado relevante. Numa rede constituída de interligações entre várias células o Fator de tolerância à Certeza Ftc tem a função de regular a passagem de graus de crença pelas células conectadas, habilitando, ou desabilitando o seu funcionamento. Os dois fatores Ftc e Ftct, introduzidos em uma única Célula, vão controlar o fluxo de sinais através de seus ajustes, restringindo ou liberando os valores resultantes de saída considerando, ou não, níveis de contradição entre os sinais analisados. Para ilustrar como os ajustes dos Fatores de tolerância à Contradição Ftct e tolerância à Certeza Ftc influenciam nos valores obtidos através da análise efetuada pela Célula, as figuras a seguir mostram alguns exemplos, onde temos vários ajustes destes fatores. É visto na figura 3.5 que, quando os dois valores dos fatores estão ajustados em 1/ 2, na saída, serão liberados apenas os valores de graus de crença resultantes, calculados pela EEB, maiores que 1/2, o que corresponde aos pontos de interpolação da área cinza.
Figura 3.5 - Reticulado com Ftc = 1/2 e Ftct = 1/2 79
Figura 3.6 - Reticulado com Ftc = 1 e Ftct = 1/2 Na figura 3.6, é visto que, quando o Fator de tolerância à Certeza é ajustado a um valor máximo, é liberado totalmente na saída o valor do grau de crença resultante obtido pela EEB, ficando o mesmo apenas limitado pelo Fator de tolerância à Contradição. Neste ajuste, qualquer valor obtido, desde que não seja contraditório a ponto de ultrapassar o limite de contradição de 1/2, é considerado como resultado válido na saída, correspondente à área cinza da figura.
Figura 3.7 – Reticulado com Ftc = 0 e Ftct = 1/2 Na figura 3.7 o Fator de tolerância à Certeza está ajustado no seu valor mínimo, igual a zero e como conseqüência restringe totalmente a saída, não liberando qualquer grau de crença resultante calculado. A célula nestas condições estará sempre com a saída indefinida de valor µr = 1/2, portanto, está inabilitada para funcionamento. Este fato demonstra que o valor do Fator de tolerância ao grau de Certeza pode ser utilizado como controle da célula.
80
Figura 3.8 – Reticulado com Ftc = 1 e Ftct = 0 Na figura 3.8, é apresentada a condição para o caso particular quando, a saída é uma Indefinição condicionada pela contradição e o valor do Fator de tolerância à Certeza tem predominância sobre o ajuste do Fator de tolerância à Contradição. Neste caso, pelo ajuste do Fator de tolerância à Contradição só há a liberação dos valores de graus de crença resultante que estão sobre a linha perfeitamente definida. Este ajuste não suporta a existência de graus de Contradição, mas, nas áreas laterais é visto que o Fator de tolerância à Certeza predomina, aceitando os valores nas regiões aonde o grau de Certeza são maiores que os graus de Contradição. Quando uma célula, ocasionada pelos ajustes dos fatores, está inoperante apresenta um sinal de grau de crença resultante indefinido igual a 1/2 na saída. Em uma Rede Neural que utiliza várias células interligadas, os dois fatores, devidamente ajustados vão otimizar o funcionamento das células controlando-as para que as mesmas apresentem eficiência máxima no processo de análise.
3.5- O Operador da Negação Lógica (Operador NOT ) Qualquer Sistema que trabalha com equacionamento lógico tem necessidade de acionar a função de negação NOT para satisfazer as equações envolvidas nos processos de controle. As células Neurais Artificiais Paraconsistentes CNAP’s utilizando as implicações fundamentais da LPA2v são capazes de apresentar esta função. Uma negação lógica no resultado da análise efetuada pela CNAP é obtido da mesma forma apresentada nos estudos da LPA2v, visto no capítulo 2, isto é fazendo uma permuta entre os valores dos graus de crença µ1 81
e de descrença µ2. Na CNAP, o valor do grau de crença µ1 de entrada é trocado pelo valor do grau de descrença µ2 na Equação Estrutural Básica - EEB. Considere os valores de µ1 e µ2 como graus de crença e de descrença aplicados para análise em uma Célula Neural Artificial Paraconsistente: A obtenção do grau de crença resultante é através da EEB em que:
µr = µ1 - µ2 + 1 2 Para exemplificar, vamos considerar sendo: µ1 = 1 e µ2= 0. Com estes valores obtemos o valor do grau de crença resultante mr:
µr = 1 - 0 + 1 2
µr =1 que equivale a um estado lógico “verdadeiro”. Trocando os valores dos graus de crença e de descrença, teremos: µ1 = 0 e µ2= 1. Pela EEB obteremos:
µr = 0 - 1 + 1 2
µr = 0, o que equivale a um estado lógico “Falso”. Para valores contraditórios onde: µ1 = 0 e µ2= 0, ou então, µ1 = 1 e µ2= 1 o resultado da negação lógica pela EEB é uma Indefinição de valor µr=1/2. Este valor está de acordo com o resultado esperado pelos estudos apresentados na teoria da LPA2v do capítulo 2.
3.6- O Operador da Complementação Lógica (Operador Complemento) As Células Neurais Artificiais Paraconsistentes funcionam fazendo 82
tratamento de sinais com valores no intervalo real fechado entre 0 e 1, portanto, dependendo da Análise a ser efetuada qualquer sinal pode ser complementado da unidade. O Operador Complemento, quando aplicado, transforma o sinal no seu complemento da unidade através da equação: µ1c = 1 - µ1 A figura 3.8 apresenta o Operador Complemento da Lógica Paraconsistente Anotada que será utilizado fazendo o complemento nos sinais de entrada das Células.
Figura 3.8 - Operador Complemento da Lógica Paraconsistente Anotada.
3.6.1 - A transformação do grau de descrença µ 1 em grau de crença µ 1 Em uma Rede Neural Artificial Paraconsistente, cada uma das células componentes vai receber, nas suas respectivas entradas sinais de informações na forma de valores representativos dos graus de crença resultantes, provenientes de análises efetuadas por outras células. As análises entre graus de crença, significa que o equacionamento será feito somente com valores positivos reais entre 0 e 1. Equação Estrutural Básica (EEB), conforme foi visto, faz análises equacionando graus de crença µ1 e graus de descrença µ2. Para possibilitar as análises considerando apenas graus de crença é utilizado o Operador Complemento instalado na entrada do grau de descrença µ2 da Célula. Portanto, para que a Célula só trabalhe com grau de crença o sinal aplicado na entrada do grau de descrença é complementado. 83
Para a obtenção do grau de crença resultante é feito o Complemento e aplicado como entrada na EEB. Portanto a EEB fica da seguinte forma:
µr = µ1 - µ2c + 1 2 onde: µ2c = 1- µ2
3.7 - Considerações Finais Foram apresentados os fundamentos e os conceitos importantes para a implementação das Células Neurais Artificiais Paraconsistentes CNAP’s. Todos os fatores e valores de controle foram estabelecidos com base na estruturação teórica da LPA2v, estudadas no capítulo 2, e serão utilizados na construção de vários tipos de células que comporão a Rede Neural Artificial Paraconsistente. Os valores dos fatores especificados neste capítulo foram estabelecidos para que possam ser ajustados sempre dentro de um intervalo real [0, 1]. Isto possibilita a aplicação em Células de Análises Paraconsistentes estruturadas na LPA2v e também como sinais de controle para habilitar e desabilitar determinadas regiões da rede. Cada conceito apresentado vai ser aplicado em determinadas Células componentes da família de Células Neurais Artificiais Paraconsistentes num total de 8, que serão estudadas no próximo capítulo. 3.8 - Exercícios 1Defina o que é o grau de crença resultante µr da análise efetuada pela Célula Neural Artificial Paraconsistente. 2 Como é conseguido na CNAP o grau de crença resultante µr? 3 Defina o que é a EEB - Equação Estrutural Básica. 4 Qual é a importância da EEB na Rede Neural Artificial Paraconsistente? 5 Quais as conseqüências na saída de uma CNAP quando os valores de entrada, graus de crença e de descrença forem iguais?
84
6Defina o Fator de tolerância à Contradição Ftc. 7 Qual é a finalidade principal do Ftct numa RNAP? 8 Defina o sinal de resposta à contradição Sct. 9 Qual é a finalidade do Sct em uma RNAP? 10 Defina o Fator de Tolerância à Certeza Ftc. 11 Qual é a finalidade principal do Ftc numa RNAP ? 12 Como atuam na saída da Célula Neural Artificial Paraconsistente as variações feitas nos valores dos fatores Ftc e Ftct conjuntamente? 13 Como é obtida a Negação Lógica na CNAP? 14 Como é obtida a complementação dos sinais da RNAP ? 15 Explique como é transformado o grau de descrença em grau de crença para ser utilizado nas entradas da CNAP.
85
CAPÍTULO 4 AS CÉLULAS NEURAIS ARTIFICIAIS PARACONSISTENTE Apresentaremos uma família de Células Neurais Artificiais Paraconsistentes CNAP’s que possui oito células componentes com funções distintas, todas originadas da Célula Artificial Paraconsistente básica CAPb, estudada no final do capítulo 2 e no anterior. Uma Célula Neural Artificial Paraconsistente-CNAP é o menor componente da Rede Neural Artificial Paraconsistente com função comportamental definida. A função desenvolvida por cada tipo de CNAP vai contribuir de modo emergente para capacitar a rede a desenvolver análises e definir comportamentos semelhantes ao funcionamento do cérebro humano. Demonstraremos, através de ensaios utilizando algoritmos de aprendizagem, que uma CNAP num processo de treinamento pode aprender, desaprender e guardar padrões, com características similares às apresentadas por algumas partes do neurônio biológico. Estas características de funcionamento apresentadas pelas CNAP‘s são comparáveis às dos neurônios artificiais propostos por Rosenblatt [Rosenblatt 62] cujos fundamentos são aplicados atualmente em Redes Neurais Artificiais Clássicas. Da mesma forma, as CNAP’s são as partes funcionais que constituirão o Neurônio Artificial Paraconsistente, assunto que será abordado nos próximos capítulos.
4.1 - Introdução Já foram apresentados métodos e conceitos que vão possibilitar a implementação de algoritmos representativos de Células Neurais Artificiais Paraconsistentes CNAP’s. A partir da estrutura básica do algoritmo “Para-Analisador” simplifi86
cado vamos introduzir uma família de Células Neurais Artificiais Paraconsistentes CNAP’s contendo oito componentes. Cada uma das células componentes é originada do aperfeiçoamento do algoritmo ParaAnalisador simplificado, estudado no capítulo 2 e dos conceitos e fundamentos apresentados no capítulo 3. Cada uma das células componentes da família CNAP’s vai ter diferentes funções, todas baseadas nas equações da Lógica Paraconsistente Anotada. Cada Célula é representada por um algoritmo que vai permitir sua programação em linguagem de programação convencional possibilitando fácil implementação em aplicações de Neurocomputação. As Células Neurais Artificiais Paraconsistentes que serão estudadas neste capítulo são as seguintes: 1) Célula Neural Artificial Paraconsistente de Conexão analíticaCNAPCa. Esta Célula tem a função de fazer a análise analógica dos sinais e conectar todas as células componentes da rede. 2) Célula Neural Artificial Paraconsistente de Conexão lógica simplesCNAPCls. Esta Célula tem a função de fazer a análise lógica dos sinais utilizando conectivos lógicos como o de maximização e o de minimização. 3) Célula Neural Artificial Paraconsistente de Conexão lógica seletivaCNAPClse. Esta célula tem duas entradas e duas saídas distintas. Sua função é fazer a análise lógica dos sinais utilizando conectivos lógicos como o de maximização e o de minimização e, simultaneamente, ir selecionando quais das duas saída deve ficar ativa. 4) Célula Neural Artificial Paraconsistente de passagem-CNAPp. Esta Célula tem a função de direcionar o fluxo de informações para determinada região da rede. 5) Célula Neural Artificial Paraconsistente de ComplementaçãoCNAPco. Esta Célula tem a função de fazer a complementação do valor em relação à unidade a qualquer sinal aplicado na sua entrada. 6) Célula Neural Artificial Paraconsistente de decisão- CNAPd. Esta célula tem a função de fazer a análise paraconsistente e determinar uma decisão baseada nos resultados da análise. A decisão vem na forma de três estados lógicos: Verdadeiro, Falso e Indefinido. 87
7) Célula Neural Artificial Paraconsistente de aprendizagem - CNAPa. Esta Célula tem a função de aprender e desaprender padrões que sejam aplicados repetitivamente na sua entrada. 8) Célula Neural Artificial Paraconsistente de memorização -CNAPm. Esta Célula tem a função de guardar os padrões aprendidos pela célula de aprendizagem num processo de funcionamento de aprendizagem/ memorização. Todas as Células Neurais Artificiais Paraconsistentes componentes da família são fundamentadas em equações matemáticas simples o que, na prática, facilita a sua estruturação e possibilita a implementação em hardware ou em software. Para aplicações em Neurocomputação, cada tipo de Célula Paraconsistente é descrita por um modelo matemático inserido em um algoritmo de fácil implementação em linguagem de programação convencional. As CNAP’s foram projetadas para apresentar características capazes de modelar certas funções do neurônio biológico. Assim, em cada célula vamos obter uma resposta funcional distinta que, quando convenientemente interligadas, vão compor Unidades 1 Neurais Artificiais Paraconsistentes UNAP’s com funções mais específicas na rede.
4.2 - A Família de Células Paraconsistentes
Neurais
Artificiais
Com base na Célula Artificial Paraconsistente básica CAPb descreveremos a seguir a implementação dos vários tipos de Células Paraconsistentes. Serão utilizados todos os conceitos elementares estudados nos capítulos anteriores, que vão contribuir para a elaboração das análises paraconsistentes efetuadas pelas Células. Definidos os conceitos básicos para implementação das Células Neurais Artificiais Paraconsistentes apresentaremos os oito tipos de células que compõem a família. Todos os componentes vêm acompanhados de uma descrição na forma de algoritmo para facilitar a implementação em projetos de Neurocomputação.
1
As Unidades Neurais Artificiais Para consistentes UNAP’s são unidades neurais constituídas de Células Neurais Artificiais Paraconsistentes que apresentaremos no próximo capitulo.
88
4.3 - A Célula Neural Artificial Paraconsistente de conexão analítica - CNAPCa A Célula Neural Artificial Paraconsistente de conexão analíticaCNAPCa tem a função de fazer a interligação entre células da Rede Neural Artificial Paraconsistente, associando graus de crença conforme os objetivos da análise. Cada Célula de conexão analisa dois valores de graus de crença µ1a e µ1b aplicados em suas entradas. O resultado desta análise é um valor de grau de crença único µr obtido pela Equação Estrutural Básica EEB. Este valor único de saída, por sua vez, é um novo grau de crença que vai ser analisado em outras Células. A célula de conexão é o elo de ligação que permite diferentes regiões da Rede Neural Paraconsistente efetuar o processamento de sinais de forma distribuída por meio de inúmeras conexões paralelas. A Célula Neural Artificial Paraconsistente de conexão é criada a partir da Célula Artificial Paraconsistente básica representada pelo algoritmo ParaAnalisador, portanto, utiliza os conceitos e as considerações estudadas incluindo na sua construção alguns fatores de uso exclusivo como: o Fator de tolerância à Contradição e o Fator de tolerância à Certeza. Na Rede Neural Artificial Paraconsistente RNAP as regiões compostas de várias células de conexão podem ser controladas pelo Fator de tolerância à Certeza. Conforme foi visto, quando um valor de Fator de tolerância à Certeza igual a zero é recebido pelas células de conexão analítica ocorre um processo de Inibição. Na Célula de conexão quando o Fator de tolerância à Certeza é ajustado no seu valor máximo, Ft ct,=1, o grau de crença resultante na saída da célula é obtido pela Equação Estrutural Básica (EEB):
µri = µ1 - µ2c + 1 2 Quando o Fator de tolerância à Certeza é ajustado em um valor baixo; isto é, igual ou próximo a 0, o valor do grau de crença obtido pela EEB passa a sofrer maiores restrições para ser considerado como saída. Com o fator de tolerância à certeza Ftc ajustado em zero, qualquer resultado da análise efetuada pela célula é considerado indefinido. Na Rede Neural Artificial Paraconsistente, os valores de Fator de tolerância à Certeza diferentes vão agir nas células de conexão inibindo ou liberando diversas regiões conforme as características e os objetivos das análises que forem desenvolvidos. Com os conceitos apresentados, podemos obter o modelo matemáti89
co para a construção do algoritmo da Célula Neural Artificial Paraconsistente de conexão analítica através das equações a seguir: Sendo as variáveis de entrada:
µ1B, tal que: 0 ≤ µ1b ≤1 Os valores limites: Ftct - Fator de tolerância à Contradição, tal que: 0 ≤ Ftct ≤ 1 Ftc - Fator de tolerância à Certeza, tal que: 0 ≤ Ftc ≤ 1 O complemento da segunda variável: µ1 bc = 1 - µ1b O grau de crença calculado pela EEB:
µri = µ1a - µ1bc + 1 2 O grau de Contradição: Gct = µ1a + µ1b - 1 Os valores limites de certeza: Vicc = 1 - FtC 2 Vscc = 1 + FtDC 2 Considerando duas saídas: S1 = saída dos grau de crença resultante µri. S2 = Saída do sinal de resposta à contradição Sct . Os valores da saídas S1 e S2 são obtidos através das comparações com as condições feitas a seguir: Se: Vicc ≤ µri ≤ Vscc ⇒ S1 = µri e S2 = 0 Se: |Gct| ≤ Ftct e |Gct| > |Gc| ⇒ S1 = 1/2 = Indefinição e S2 = |Gc | Indefinição e S2 = |Gc | Senão: S1 = 1/2 e S2 = 0 Utilizando as equações, na figura 4.1, é apresentado o algoritmo que descreve o funcionamento de uma Célula Neural Artificial Paraconsistente de conexão analítica-CNAPca com todas as variáveis das entradas e saídas.
90
CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE CONEXÃO ANALÍTICA - CNAPCa
Algoritmo da Célula de Conexão Analítica 1- Entre com os valores de tolerâncias: Ftc = C1 */Fator de tolerância à certeza 0 ≤ C1 ≤ 1 */ Ftct =C2 */Fator de tolerância à contradição 0 ≤ C2 ≤ 1 */ 2- Entre com os valores de entrada: µ1A */ Grau de crença de entrada 0 ≤ µ1 ≤ 1 */ µ1B */ Grau de descrença de entrada 0 ≤ µ2 ≤ 1 */ 3- Calcule: µ1BC= 1- µ1B */ Complemento do grau de descrença */ |Gct| = | µ1 + µ2c - 1| */Valor do Grau de contradição */ |Gc | = |µ1 - µ2c| */Valor do Grau de certeza */ Vicc = 1 - C1 */Valor do Limite inferior de certeza */ 2 Vscc = 1 + C1 */Valor do Limite superior de certeza */ 2 µ1r = µ1A - µ1BC + 1 */ (EEB) Valor do Grau de crença resultante */ 2 4- Determine os valores das saídas: Se: Vicc ≤ µ1r ≤ Vscc ⇒ S1 = µ1r e S2 = 0 Se: |Gct| ≥ C2 e |Gct| > |Gc| ⇒ S1 = 1/2 e S2 = |Gct| Senão: S1 = 1/2 = Indefinição e S2 = 0 */ FIM*/
Figura 4.1 - Algoritmo representativo da Célula Neural Artificial Paraconsistente de Conexão analítica -CNAPCa.
91
4.2.2 - Representação simplificada A Célula Neural Artificial Paraconsistente de conexão analítica é representada nas interligações das Redes Neurais Paraconsistentes pelo símbolo apresentado na figura 4.2.
Figura 4.2 - Representação simplificada da Célula Neural Artificial Paraconsistente de conexão analítica CNAPCa.
4.4- A Célula Neural Artificial Paraconsistente de Conexão lógica simples - CNAPCls A Célula Neural Artificial Paraconsistente de Conexão lógica simples tem a função de estabelecer conectivos lógicos entre sinais representativos de graus de crença. As principais células de conexão lógica são as que fazem os conectivos de maximização OR e de minimização AND. Para uma maximização, inicialmente é feita uma simples análise, através da Equação Estrutural Básica (EEB) que, assim vai informar qual dos dois sinais de entrada é de maior valor. Com esta informação, o algoritmo representativo da célula estabelece o sinal de saída. A equação utilizada e as condições que determinam a saída para um processo de maximização são expostas a seguir. Sendo as variáveis de entrada: µ1a, tal que: 0 ≤ µ1a ≤ 1, e µ1b, tal que: 0 ≤ µ1b ≤ 1 O grau de crença resultante calculado pela EEB: µri = µ1A - µ1B + 1 2 92
Determinação da entrada de maior valor: Se: µri ≤ 1/2 Se: µri < 1/2
⇒ µ1A ≤ µ1Bi ⇒ Saída é
µ1A
⇒ µ1A < µ1Bi ⇒ Saída é µ1Bi
A figura 4.3 mostra o algoritmo e o símbolo de uma CNAPCls que faz a maximização entre dois sinais de graus de crença µ1A e µ1Bi. CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE CONEXÃO LÓGICA SIMPLES - CNAPCls PARA MAXIMIZAÇÃO
Algoritmo da Célula de Conexão Lógica Simples ( Maximização ) 1- Entre com os valores de entrada: µ1A */ Grau de crença de entrada 0 ≤ µ1 ≤ 1 */ µ1B */ Grau de descrença de entrada 0 ≤ µ2 ≤ 1 */ 2- Calcule o grau de crença resultante: µr = µ1A - µ1B + 1 E.E.B 2 3- Determine o valor de saída: Se: µr ≥ 1/2 Então: S1 = µ1A Senão: S1 = µ1B */ FIM*/
Figura 4.3 - Algoritmo e símbolo da Célula Neural Artificial Paraconsistente de Conexão Lógica simples num processo de maximização (OR) . Para uma minimização, o procedimento é parecido com o de maximização, com a diferença de, agora, a escolha recair sobre a entrada de 93
menor valor. Inicialmente, é feita uma simples análise através da Equação Estrutural Básica (EEB) que assim vai informar qual dos dois sinais de entrada é o de menor valor. Com esta informação, o algoritmo representativo da Célula estabelece o sinal de saída. A equação utilizada e as condições que determinam a saída para um processo de minimização são expostas a seguir. Sendo as variáveis de entrada: µ1a, tal que: 0 < µ1a < 1, e µ1b, tal que: 0 < µ1b < 1 O grau de crença resultante calculado pela EEB: µri = µ1A - µ1B + 1 2 Determinação da entrada de menor valor: Se: µri ³ 1/2 ⇒ µ1A ³ µ1Bi Se: µri < 1/2
⇒ Saída é
⇒ µ1A < µ1Bi
µ1Bi
⇒ Saída é
µ1A
Na figura 4.4, é apresentado o algoritmo e o símbolo de uma CNAPCls de minimização. Esta CNAPCls faz a análise entre dois sinais de graus de crença µ1A e µ1B, e estabelece como saída o de menor valor. CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE CONEXÃO LÓGICA SIMPLES - CNAPCls PARA MINIMIZAÇÃO
Algoritmo da Célula de Conexão Lógica Simples ( Minimização ) 1- Entre com os valores de entrada: µ1A */ Grau de crença de entrada 0 ≤ µ1 ≤ 1 */ µ1B */ Grau de descrença de entrada 0 ≤ µ2 ≤ 1 */ 2- Calcule o grau de crença resultante: µr = µ1A - µ1B + 1 E.E.B 2 3- Determine o valor de saída: Se: µr ≥ 1/2 Então: S1 = µ1B Senão: S1 = µ1A */ FIM*/
94
Figura 4.4 - Algoritmo e símbolo da Célula Neural Artificial Paraconsistente de Conexão Lógica simples num processo de minimização (AND) . 4.4.1 - Representações simplificadas As Células Neurais Artificiais Paraconsistentes de conexão lógica simples para maximização e para minimização são representadas nas interligações das Redes Neurais Paraconsistentes pelos símbolos apresentados na figura 4.5.
Figura 4.5 - Representação simplificada das Células Neurais Artificiais Paraconsistentes de conexão lógica simples para um processo de Maximização e de Minimização.
4.5 - A Célula Neural Artificial Paraconsistente de Conexão Lógica seletiva - CNAPClse A Célula Neural Artificial Paraconsistente de Conexão seletiva é uma Célula de conexão lógica especial que faz as funções lógicas de maximização ou de minimização selecionando um dos sinais para ser conectado à saída e neutralizando o outro. Ao sinal neutralizado é imposta uma saída indefinida de valor 1/2. A CNAPClse tem duas entradas e duas saídas, de forma que cada saída corresponde ao seu respectivo sinal de entrada. Quando os dois sinais são aplicados numa CNAPClse de maximização OR, o sinal de maior valor tem a sua passagem livre e aparece na sua respectiva saída. O sinal de menor valor é retido e, na sua saída, aparece um valor de indefinição 1/2. Quando a célula tem a função de minimização AND, o sinal de maior valor é retido com a sua correspondente saída apresentando indefinição 95
1/2 e o sinal de menor valor tem passagem livre pela célula. Por convenção, se os dois sinais tiverem valores iguais, o sinal aplicado à direita da célula prevalece sobre o sinal aplicado à esquerda. O resultado da Equação Estrutural Básica EEB define, através de condições, qual o sinal de grau de crença que terá a passagem livre pela célula e qual é o sinal que será retido. Sendo as variáveis de entrada: µ1A, tal que: 0 > µ1A > 1, e µ1B, tal que: 0 > µ1B > 1 O grau de crença resultante calculado pela EEB: µri = µ1A - µ1B + 1 2 Na maximização: Se: µri > 1/2 ⇒ µ1A > µ1Bi Resulta na saída em: µrmax= µ1A e µ1B =1/2 Senão: µrmax= µ1B e µ1A =1/2 Na minimização: Se: µri > 1/2 ⇒ µ1A > µ1Bi Resulta na saída em: µrmin= µ1B e µ1A =1/2 Senão: µrmin= µ1A e µ1B =1/2 Veja que, nos dois casos, se: µri = 1/2 significa que µ1A = µ1B Resulta na saída em: µrmax= µ1B e µ1A =1/2 A figura 4.6 apresenta o símbolo e o algoritmo da Célula Neural Artificial Paraconsistente de Conexão lógica seletiva CNAPClse numa função de maximização. CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE CONEXÃO LÓGICA SELETIVA - CNAPClse PARA MAXIMIZAÇÃO
Algoritmo da Célula de Conexão Lógica Seletiva ( Maximização ) 1- Entre com os valores de entrada: µ1A */ Grau de crença de entrada 0 ≤ µ1 ≤ 1 */ µ1B */ Grau de descrença de entrada 0 ≤ µ2 ≤ 1 */ 2- Calcule o grau de crença resultante: µr = µ1A - µ1B + 1 E.E.B 2 96
3- Determine o valor de saída: Se: µr > 1/2 Então: S1 = µ1A e S2 = 1/2 Senão: S1 = 1/2 e S2 = µ1B */ FIM*/
Figura 4.6 - Algoritmo e representação da Célula Neural Artificial Paraconsistente de Lógica seletiva de maximização (OR) .
4.5.1 - Representação simplificada A Célula Neural Artificial Paraconsistente de conexão lógica seletiva para maximização é representada nas interligações das Redes Neurais Paraconsistentes pelo símbolo apresentado na figura 4.7.
Figura 4.7 - Representação simplificada da Célula Neural Artificial Paraconsistente de conexão lógica seletiva para um processo de Maximização. A figura 4.8 apresenta o símbolo e o algoritmo da Célula Neural Artifi97
cial Paraconsistente de Conexão lógica seletiva numa função de minimização. CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE CONEXÃO LÓGICA SELETIVA - CNAPClse PARA MINIMIZAÇÃO
Algoritmo da Célula de Conexão Lógica Seletiva ( Minimização ) 1- Entre com os valores de entrada: µ1A */ Grau de crença de entrada 0 ≤ µ1 ≤ 1 */ µ1B */ Grau de descrença de entrada 0 ≤ µ2 ≤ 1 */ 2- Calcule o grau de crença resultante: µr = µ1A - µ1B + 1 E.E.B 2 3- Determine o valor de saída: Se: µr > 1/2 Então: S1 = 1/2 e S2 = µ1B Senão: S1 = µ1A e S2 = 1/2 */ FIM*/
Figura 4.8 - Algoritmo da Célula Neural Artificial Paraconsistente de Conexão Lógica seletiva de Minimização (AND).
4.5.2 - Representação simplificada A Célula Neural Artificial Paraconsistente de conexão lógica seletiva para minimização é representada nas interligações das Redes Neurais Paraconsistentes pelo símbolo apresentado na figura 4.9.
98
Figura 4.9 - Representação simplificada da Célula Neural Artificial Paraconsistente de conexão lógica seletiva para um processo de Minimização.
4.6 - A Célula Neural Artificial Paraconsistente de passagem - CNAPp A Célula Neural Artificial Paraconsistente de passagem tem a função de canalizar sinais para determinadas regiões da Rede. A princípio, o sinal que passa pela célula não sofre qualquer alteração mas é comparado ao Fator de tolerância à Certeza Ftc que, dependendo do ajuste pode alterar a saída. Uma Célula Neural Artificial Paraconsistente de passagem é basicamente uma célula de conexão com as suas entradas interligadas, portanto é uma célula de conexão analítica com saída única onde o sinal pode sofrer interferência do Fator de tolerância à Certeza. Para conseguir uma única entrada o grau de descrença e complementários. Considere uma Célula Neural Artificial Paraconsistente em que: O complemento da variável de entrada é: µ1c = 1 - µ1 O grau de crença é calculado pela EEB: µrp = µ1 - µ1c + 1 2 Sendo o valor limite: Ftc - Fator de tolerância à Certeza, tal que: 0 > Ftc > 1 O grau de certeza é calculado por: Gc =µ1 - µ1c O grau de crença resultante µ1r que vai aparecer na saída é obtido a partir da comparação: Se: µR ≥ Ftc ⇒ µ1rp = µr Caso contrário ⇒ µ1rp = 1/2 Na figura 4.10 apresentamos o algoritmo da célula de passagem juntamente com seu símbolo característico.
99
CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE PASSAGEM - CNAPp
Algoritmo da Célula Neural Artificial Paraconsistente de passagem CNAPp 1- Início: µr = 1/2 */Célula virgem */ · 2- Entre com o fator de certeza: · C1=Ftc · 3- Complemente o valor da entrada do grau grau de descrença: µ1c =1 - µ2 4- Conecte a entrada do grau de crença da célula na entrada do grau de descrença complementado: µ1 = µ1c 5- Encontre grau de crença resultante da saída pela EEB: µR = (µ1 - µ1c +1) ÷ 2 6- Determine a saída pelas condições: Se µR ≥ C1 então: µ1rp = µR Senão µ11rp= ½ 7- */ Fim */
figura 4.10 - Algoritmo e representação da Célula Neural Artificial Paraconsistente de passagem CNAPp.
4.6.1 - Representação Simplificada A Célula Neural Artificial Paraconsistente de passagem CNAPp é representada nas interligações das Redes Neurais Paraconsistentes pelo sím100
bolo apresentado na figura 4.11.
Figura 4.11 - Representação simplificada da Célula Neural Artificial Paraconsistente de passagem.
4.7 - A Célula Neural Artificial Paraconsistente de complementação - CNAPco A Célula Neural Artificial Paraconsistente de complementaçãoCNAPco consiste de uma célula capaz de fazer o complemento em relação à unidade do sinal aplicado na entrada. Uma Célula Neural Artificial Paraconsistente de complementação é basicamente uma célula de conexão analítica com uma única entrada e com um Fator de tolerância à Certeza. Para se obter uma única entrada é complementado o grau de crença. Considere uma Célula Neural Artificial Paraconsistente na qual: O complemento da variável aplicado no grau de crença é: µ1c = 1 - µ1 O grau de crença é calculado pela EEB:
≤ 1.
µ1r = µ1c - µ1 + 1
2 Sendo o valor limite: Ftc - Fator de tolerância à Certeza, tal que: 0≤ Ftc
· O grau de crença resultante µ1rc que vai aparecer na saída é obtido a partir da comparação: Se: µ1r ³ Ftc ⇒ µ1rc = µ1r , Caso contrário ⇒ µ1rc = 1/2 · Na figura 4.12, apresentamos o algoritmo da célula de complementação juntamente com seu símbolo característico.
101
CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE COMPLEMENTAÇÃO - CNAPCO
Algoritmo da Célula Neural Artificial Paraconsistente de complementação - CNAPco 1- Início: µr = 1/2 */Célula virgem */ · 2- Entre com o fator de certeza: · C1=Ftc · 3- Complemente o valor da entrada do grau grau de crença: µ1c =1 - µ1 4- Conecte a entrada do grau de crença complementado da célula na entrada do grau de descrença: µ1 = µ2 5- Encontre o grau de crença resultante da saída pela EEB: µR = (µ1c - µ1 +1) ÷ 2 6- Determine a saída pelas condições: Se µR ≥ C1 então µ1rc = µr Senão: µ1rc = 1/2 7- */ Fim */
Figura 4.12 - Algoritmo e símbolo da Célula Neural Artificial Paraconsistente de Complementação - CNAPco.
102
4.7.1- Representação Simplificada A Célula Neural Artificial Paraconsistente de complementação é representada nas interligações das Redes Neurais Paraconsistentes pelo símbolo apresentado na figura 4.13.
Figura 4.13 - Símbolo simplificado da Célula Neural Artificial Paraconsistente de Complementação CNAPco.
4.8 - A Célula Neural Artificial Paraconsistente de decisão - CNAPd A Célula Neural Artificial Paraconsistente de decisão CNAPd consiste de um aperfeiçoamento da Célula Artificial Paraconsistente básica e sua função principal é trabalhar como nó de decisão em redes Neurais Artificiais de Análises Paraconsistentes. Esta célula recebe, em suas entradas, dois sinais resultantes de análises efetuadas por outras células que compõem a Rede e apresenta na saída um resultado que vai estabelecer uma conclusão total da análise. A CNAPd só vai apresentar como resultado da análise um dos três valores: o valor 1, representando a conclusão “Verdadeira”, o valor 0, representando a conclusão “Falsa” ou o valor 1/2 representando a conclusão “Indefinição”. Assim como na Célula Artificial Paraconsistente básica representada pelo Algoritmo Para-Analisador, a Célula de decisão tem ajustes externos e pode ser também descrita por meio de um algoritmo. Com os conceitos apresentados é elaborado um modelo matemático de uma Célula Neural Artificial Paraconsistente de decisão. Veja as equações: 103
Sendo as variáveis de entrada: µ1, tal que: 0 ≤ µ1
≤
1 e
µ2,
tal que: 0 ≤ µ2
≤1
Os valores limites: Ftct - Fator de tolerância à Contradição, tal que: 0 ≤ Ftct ≤1 FtD - Fator de tolerância à Decisão, tal que: 0 ≤ FtD ≤ 1 O grau de crença calculado pela EEB:
µri = µ1 - µ2 + 1
2 Os valores limites de falsidade e de verdade: VlF = 1- FtD VlV = 1 + FtD 2 2 O grau de Contradição: Gct = µ1 + µ2 - 1 O grau de Certeza: Gc = µ1 - µ2 O estados da saídas S1 e S2 são obtidos através das comparações feitas a seguir: Se: VlF < µri < Vlv ⇒ S1 = 1/2 = Indefinição e S2 = 0 Se µri ≥ Vlv ⇒ S1 = 1 = Verdade e S2 = 0 Se µri≤ Vlf ⇒ S1 = 0 = Falso e S2 = 0 Se: |Gct| ≥ Ftct e |Gct| > |Gc| ⇒ S1 = 1/2 = Indefinição e
S2 = Sct =
| Gct | Com estas observações, descreveremos uma Célula Neural Artificial Paraconsistente de decisão utilizando as variáveis de entrada e de saída juntamente com os sinais de ajustes. O algoritmo e a Representação de uma Célula Neural Artificial Paraconsistente de decisão CNAPd estão expostos na figura 4.14. CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE DECISÃO - CNAPd
Algoritmo da Célula Neural Artificial Paraconsistente de decisão 1- Entre com o valor do Fator de tolerância à Decisão: FtD = C1 */ 0 ≤ C1 ≤ 1 */ 2- Entre com os valores de entrada: µ1 */ grau de crença de entrada 0 ≤ µ1 ≤ 1 */ µ2 */ grau de descrença de entrada 0 ≤ µ2 ≤ 1 */ 3- Calcule o grau de certeza: Gc = µ1 - µ2 4- Calcule o grau de crença resultante pela EEB: 104
µR = µ1 - µ2 + 1 2 5- Calcule o valor limite de falsidade: VLF = 1 - C1 2 6- Calcule o valor limite de Verdade: VLV = 1 + C1 2 7- Determine o valor de saída pelas condições: Se: VLF ≤ µR ≤ VLV Então S1 = 1/2 Se: µR ≥ VLV Então: S1 = 1 Se: µr ≤ VLF Então: S1 = 0 8- */ Fim */
Figura 4.14 - Algoritmo e representação da Célula Neural Artificial Paraconsistente de decisão.
4.8.1 - Representação simplificada A Célula Neural Artificial Paraconsistente de decisão é representada nas interligações das Redes Neurais Paraconsistentes pela representação apresentada na figura 4.15.
b
a 105
Figura 4.15 - Representação da Célula Neural Artificial Paraconsistente de decisão CNAPd.
4.9 - A Célula Neural Artificial Paraconsistente de aprendizagem - CNAPa Uma Célula Neural Artificial Paraconsistente de aprendizagem-CNAPa é criada a partir da Célula Artificial Paraconsistente Básica CAPb. As células de aprendizagem são treinadas para aprender um padrão utilizando o método de análise paraconsistente aplicado através de um algoritmo. Apresentaremos neste capítulo apenas as equações básicas e o símbolo que representam a CNAPa, os detalhes de aprendizagem e o algoritmo serão estudados a seguir. Observe a representação da célula de aprendizagem CNAPa Figura 4.16. CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE
APRENDIZAGEM - CNAPa
Figura 4.16 - Representação de uma célula nerval artificial paraconsistente de aprendizagem CNAPa.
106
4.9.1 - O fator de aprendizagem FA No processo de aprendizagem da CNAPa é introduzido um fator de aprendizado (FA) que é ajustado externamente. Dependendo do valor de FA será proporcionado uma aprendizagem mais rápida ou mais lenta à CNAPa. O fator de aprendizagem FA é um valor real, dentro do intervalo fechado [0,1] atribuído arbitrariamente por ajustes externos.
4.9.2 - O algoritmo de aprendizagem da CNAPa O algoritmo de aprendizagem consiste em fazer a Célula Neural Artifi cial Paraconsistente ser condicionada para que, no final do treinamento, reconheça o padrão apresentado como grau de crença na entrada. No próximo capítulo, os algoritmos de aprendizagem serão implementados e estudados através de ensaios.
4.9.3 - O fator de desaprendizagem F DA O Fator de desaprendizagem FDA é um valor que, dependendo do resultado do algoritmo, pode ser utilizado no lugar do fator de aprendizagem FA. Veremos também a obtenção e a influência do fator de desaprendizagem no funcionamento da CNAPa no próximo capítulo.
4.9.4 - Representação simplificada As Células Neurais Artificiais Paraconsistentes de aprendizagem são representadas nas interligações das Redes Neurais Paraconsistentes pelo símbolo da figura 4.17.
Figura 4.17 - Representação simplificada e gráfico característico de saída da Célula Neural Artificial Paraconsistente de aprendizagem CNAPa. 107
Na figura anterior o gráfico mostra o comportamento característico do sinal de saída na aplicação de um padrão repetitivo na entrada. Estudaremos os detalhes e a forma da obtenção do sinal exposto no gráfico no próximo capítulo.
4.10 - A Célula Neural Artificial Paraconsistente de memorização - CNAPm Uma Célula Neural Artificial Paraconsistente de memorização - CNAPm é criada a partir da Célula Artificial Paraconsistente básica. Esta Célula tem a capacidade de memorizar padrões considerados como valores reais entre 0 e 1. A Célula que memoriza o padrão 1 é denominada de Célula de memorização do padrão de verdade e a Célula que memoriza o padrão 0 é denominada de Célula de memorização do padrão de falsidade. Veja as figuras 4.18 e 4.19. O padrão memorizado aparece na saída da Célula quando na sua entrada é aplicado o sinal de ativação a =1. O processo de memorização de uma CNAPm é dependente de um fator de memorização m que varia entre um intervalo real fechado [0,1]. Quando o fator de memorização é igual a zero (m = 0) a saída da célula é uma indefinição para qualquer valor aplicado na sua entrada. Com o aumento do fator de memorização m a célula vai adquirindo capacidade de apresentar o padrão memorizado na saída. Quando o fator de memorização m estiver no seu valor máximo, isto é, m=1 a célula está completamente preparada para apresentar o padrão armazenado quando é aplicado o sinal de ativação a=1 na entrada. A Célula de memorização pode ser expressa através das equações a seguir. Considere a Equação Estrutural Básica EEB onde a entrada do grau de crença µ1 é ligada á entrada do grau de descrença cujo sinal é complementado, ficando: O complemento da variável de entrada é: µ1 c = 1 - µ1 O grau de crença é calculado pela EEB:
µirm
= µ1 - µ1c + 1 2
O grau de Certeza é: Gc = µ1 - µ1c Sendo m = fator de memorização com: 0 ≤ m ≤ 1 fator de ativação a = µ1 O grau de crença memorizado é obtido por: µ1rm= (a - ac)m + 1 (EEB) 2 Pela equação temos: Sendo: a=1, Se: m = 1
108
⇒ µ1rm = 1
Se: m = 0
⇒ µ1rm = 1/2
Quando na entrada for aplicado o sinal 1, a saída responderá com um sinal 1, indicando que esta é uma célula de memorização do padrão de verdade. Considere, agora, a Equação Estrutural Básica (EEB) em que apenas a entrada do grau de crença m1 é complementado. O complemento da variável de entrada é: µ1 c = 1 - µ1 O grau de crença resultante é calculado pela EEB: µ1rm = (ac - a)m + 1 2 O grau de crença resultante memorizado µ1rm é obtido a partir do valor do fator de ativação a=1 aplicado na entrada: Pela equação temos: com a=1, Se: m = 1 ⇒µ1rm = 0 Se: m = 0 ⇒ µ1rm = 1/2 Quando na entrada for aplicado o sinal 1, a saída responde com um sinal 0, indicando que esta é uma célula de memorização de padrão de falsidade. Nos dois casos, quando na entrada for aplicado um sinal de indefinição 1/2 a célula de memorização vai responder com um sinal de indefinição 1/2 na saída, independente do valor de m. Como o grau de crença está ligado ao grau de descrença, o grau de contradição sempre será nulo, portanto esta célula não tem fatores de ajustes externos. A partir das equações, podemos elaborar o algoritmo representativo das Células Neurais Paraconsistentes de memorização. Nas figuras 4.18 e 4.19, são apresentados os dois tipos de células de memorização com seus respectivos algoritmos. CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE MEMORIZAÇÃO - CNAPm PARA MEMORIZAÇÃO DE PADRÕES DE VERDADE
Algoritmo de Memorização da Célula Neural Artificial Paraconsistente CNAPm ( Padrão de Verdade ) 1- Início: µr = 1/2 */Célula virgem */ 2- Defina o fator de ativação: a=1 3- Defina o fator de memorização: m =C1 109
4- Considere o grau de crença da entrada como fator de ativação: a = µ1 5- Complemente o valor da entrada do grau de descrença: µ2c =1 - µ2 6- Conecte a entrada do grau de crença da célula, na entrada do grau de descrença complementado: µ1 = µ2c 7- Determine o grau de crença resultante da saída pela EEB: µrm = {(µ1 - µ2c )C1 +1} ÷ 2 8- Fim
CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE MEMORIZAÇÃO - CNAPm PARA MEMORIZAÇÃO DE PADRÕES DE FALSIDADE
Figura 4.18 - Algoritmo para memorização do padrão de verdade e símbolo da CNAPm. Algoritmo de Memorização da Célula Neural Artificial Paraconsistente - CNAPm ( Padrão de Falsidade ) 1- Início: µr = 1/2 */Célula virgem */ 2- Defina o fator de ativação: a=1 3- Defina o fator de memorização: m =C1 4- Considere o grau de crença da entrada como fator de ativação: a = µ1 5- Complemente o valor da entrada do grau de crença: µ1c =1 - µ1 110
6- Conecte a entrada do grau de crença complementado da célula, na entrada do grau de descrença: µ1c = µ2 7- Determine o grau de crença resultante da saída pela EEB: µrm = {(µ1c - µ2 )C1 +1} ÷ 2 8- Fim
Figura 4.19 - Algoritmo para memorização do padrão de falsidade e símbolo da CNAPm.
4.10.1 - Representações Simplificadas As Células Neurais Artificiais Paraconsistentes de memorização para padrões de verdade e de falsidade são representadas nas interligações das Redes Neurais Paraconsistentes pelos símbolos apresentados na figura 4.20.
(a) memorização de padrão de verdade
(b) memorização de padrão de falsidade
Figura 4.20 - Representações simplificadas das células de memorização de padrões. 111
4.11 - Considerações Finais Apresentamos uma família de Células Neurais Artificiais Paraconsistentes criada a partir do aperfeiçoamento da Célula Artificial Paraconsistente básica representada pelo algoritmo da Lógica Paraconsistente Anotada denominado de “Para-Analisador”. Para compor a família, foram originados da Célula básica, oito tipos de Células Neurais Artificiais Paraconsistentes. A primeira Célula apresentada foi a Célula Neural Paraconsistente de conexão analítica que tem a função de interconectar várias unidades neurais efetuando a análise paraconsistente e promovendo um funcionamento paralelo no processamento de dados efetuado pela rede. Quando as informações processadas pelas células de conexão estão vindas com um grau de contradição alto, um sinal Sct detectado por um Fator de tolerância à Contradição indica a característica contraditória da análise. Este sinal permite que o sistema tome providências para diluir estas contradições. A célula de conexão também recebe um valor que indica o Fator de tolerância à Certeza que vai servir como controle das células de conexão inibindo-a ou liberando-a para pleno funcionamento. A segunda Célula apresentada foi a Célula Neural Paraconsistente de conexão lógica simples. Esta célula tem a função de promover as conexões lógicas de maximização (conectivo OR) e minimização (conectivo AND) entre dois sinais aplicados na entrada. A terceira Célula apresentada foi denominada de Célula Neural Artificial Paraconsistente de conexão seletiva. Esta célula além de efetuar os conectivos lógicos de maximização e de minimização seleciona qual dos dois sinais aplicados na entrada tem passagem livre pela célula. A quarta célula apresentada é denominada de Célula Neural Artificial Paraconsistente de passagem. Esta célula tem a função de canalizar sinais para determinadas regiões da rede com possibilidade de aplicação dos conectivos selecionando o sinal de menor ou de maior valor. Um ajuste de Fator de tolerância à Certeza é comparado ao sinal de passagem para determinar se o mesmo é um valor indefinido. A quinta célula denominada de Célula Neural Artificial Paraconsistente de complementação tem a função de fazer o complemento, em relação à unidade, do sinal aplicado na entrada. Um ajuste de Fator de tolerância à Certeza é comparado ao sinal de passagem, para detectar se o mesmo se encontra ou não numa faixa de indefinição. A sexta Célula, denominada de Célula Neural Artificial Paraconsistente de decisão, processa dois sinais fazendo análise paraconsistente entre eles e dependendo do resultado, determinando uma conclusão final. A resposta de uma Célula de decisão vem na forma 112
de uma conclusão representada por um dos três estados lógicos resultantes: Falso=0, Verdadeiro =1 ou Indefinido =1/2. Esta Célula é indicada para tomar uma decisão final e indiscutível baseada em informações vindas em forma de sinais de graus de crença. Esta decisão final em uma Rede Neural Paraconsistente pode ser local, isto é, a decisão é relativa a uma particular região da Rede ou ainda, total, abrangendo todas as análises efetuadas. A sétima Célula apresentada foi denominada de Célula Neural Artificial Paraconsistente de aprendizagem CNAPa. Esta Célula é das mais importantes da família porque tem a capacidade de reconhecer padrões mesmo que os sinais venham impregnados com ruídos. A oitava Célula denominada de Célula Neural Paraconsistente de memorização tem a função de guardar tipos de padrões controlada por um sinal externo de memorização m. Esta célula é ativada por um sinal a aplicado na entrada que, quando alto, libera o valor que foi memorizado. O padrão memorizado é captado de outros componentes, por exemplo, da célula de aprendizagem que quando passa por um processo de treinamento fornece o sinal m para a célula de memorização. As Células que compõem a família apresentada neste trabalho foram derivadas da Equação Estrutural Básica (EEB): µr=(µ1 - µ2 + 1) : 2, e, portanto, são baseadas em modelos matemáticos simples, facilitando sua implementação prática. Todas as células componentes da família, estudadas até aqui, serão integrantes de Unidades Neurais Artificiais Paraconsistentes UNAP’s. As Unidades Neurais Artificiais Paraconsistentes apresentam funcionamentos diversos que, dependendo da composição e interligações das suas células internas, podem apresentar características semelhantes ao funcionamento do neurônio biológico. O funcionamento e a construção de vários tipos de VNAPs será estudado no capítulo7.
4.12 - Exercícios 1 - Qual é a função da Célula Neural Artificial Paraconsistente de conexão analítica- CNAPCa ? 2- Descreva o funcionamento básico da Célula Neural Artificial Paraconsistente de conexão analítica- CNAPCa. 3- Com base no algoritmo, projete em linguagem C o programa executável da CNAPCa. 4- Dê a representação simplificada de uma CNAPCa. 5- Qual é a função da Célula Neural Artificial Paraconsistente de 113
Conexão lógica simples CNAPCls ? 6- Com base nos algoritmos, projete em linguagem C ( ou em outra linguagem que você domina) o programa executável das Células Neurais Artificiais Paraconsistentes de Conexão lógica simples para maximização e para minimização. 7- Descreva a função da Célula Neural Artificial Paraconsistente de Conexão seletiva CNAPClse de maximização e de minimização. 8- Com base nos algoritmos, projete em linguagem C ( ou em outra linguagem que você domina) o programa executável das Células Neurais Artificiais Paraconsistentes de Conexão lógica seletiva para um processo de maximização e de minimização. 9Explique o funcionamento da Célula Neural Artificial Paraconsistente de passagem CNAPp. 10- Com base no algoritmo, projete em linguagem C ( ou em outra linguagem que você domina) o programa executável da Célula Neural Artificial Paraconsistente de passagem. 11-Explique como é o funcionamento de uma Célula Neural Artificial Paraconsistente de complementação CNAPco. 12- Com base no algoritmo, projete em linguagem C ( ou em outra linguagem que você domina) o programa executável da Célula Neural Artificial Paraconsistente de complementação CNAPco. 13 - Descreva o funcionamento de uma Célula Neural Artificial Paraconsistente de decisão CNAPd. 14 - Com base no algoritmo, projete em linguagem C ( ou em outra linguagem que você domina) o programa executável da Célula Neural Artificial Paraconsistente de decisão CNAPd. 15 - Explique para que servem as Células Neurais Artificiais Paraconsistentes de aprendizagem-CNAPa. 16 - Descreva o que é fator de aprendizagem FDA. 17 - Represente a simbologia simplificada e o gráfico comportamental de uma CNAPa típica. 114
18 - Explique qual é a finalidade de uma Célula Neural Artificial Paraconsistente de memorização - CNAPm. 19- Descreva como é feito o processo de memorização em uma CNAPm. 20 - Com base nos algoritmos, projete em linguagem C ( ou em outra linguagem que você domina) o programa executável das Células Neurais Artificiais Paraconsistentes de memorização para memorizar padrões de verdade e padrões de falsidade.
115
CAPÍTULO 5 AS CÉLULAS NEURAIS ARTIFICIAIS PARACONSISTENTE DE APRENDIZAGEM Neste capítulo, faremos um estudo detalhado da Célula Neural Artificial Paraconsistente de aprendizagem-CNAPa. Devido à importância desta célula, pelas suas características de aprendizagem e desaprendizagem em um processo de treinamento, estudaremos seu funcionamento e comportamento frente a determinadas condições. Demonstraremos por um processo simples, sem envolver complexas equações matemáticas, que é possível desenvolver configurações de células para modelar o comportamento dos neurônios biológicos. As demonstrações são comprovadas pelos resultados obtidos em vários ensaios, onde são aplicados padrões de vários valores. Os resultados dos ensaios, utilizando o algoritmo de aprendizagem, estão apresentados por meio de tabelas de valores na forma de gráficos mostrando com maior clareza as características funcionais das CNAPa.
5.1 - Introdução Uma Célula Neural Artificial Paraconsistente de aprendizagem-CNAPa é criada a partir da Célula Artificial Paraconsistente básica. As células de aprendizagem são projetadas para serem utilizadas em Redes Neurais Paraconsistentes como partes de unidades de memórias ou como sensores de padrões em camadas primárias. Por exemplo, uma CNAPa pode ser treinada para aprender um padrão utilizando o método de análise paraconsistente aplicado através de um algoritmo. As células podem ser treinadas para reconhecer apenas valores 0 ou 1, no entanto, no treinamento de uma Célula Neural Artificial Paraconsistente, 116
podem ser utilizadas como padrões, os valores reais entre 0 e 1. Células deste tipo podem ser utilizada em sistemas sensores primários, isto é, sensores que têm a finalidade de receber as primeiras informações e transformar estes estímulos primários em sinais elétricos que serão tratados pela rede. Em um modelo das funções neurais do cérebro, pode-se fazer uma analogia destas células primárias com neurônios foto-receptores da visão humana denominados de cones e bastonetes.
5.2 - A Célula Neural Artificial Paraconsistente de aprendizagem - CNAPa Uma Célula de aprendizagem é basicamente uma Célula Neural Artificial Paraconsistente de conexão analítica CNAPCa com sua saída interligada à entrada do grau de descrença. Para um processo de treinamento, inicialmente, considera-se uma Célula Neural Artificial Paraconsistente de conexão analítica sem os Fatores de tolerância e que não sofreu nenhum processo de aprendizagem. Uma célula nestas condições iniciais tem as duas entradas ( µ1A e ( µ1b com um valor Indefinido igual a 1/2 e, através da Equação Estrutural Básica (EEB), se determina o valor da saída, que também é uma indefinição com valor (µ = 1/2. A figura 5.1 mostra uma Célula Neural Artificial Paraconsistente de conexão analítica nas condições propostas, com os valores de entrada e saída e também sem os fatores de tolerância para não influírem na saída. Uma CNAPca nestas condições está pronta para aprender padrões.
Figura 5.1 - Uma Célula Neural Artificial Paraconsistente básica sem
117
padrão de aprendizagem. A partir desta Célula, é iniciado um processo de aprendizagem que é definido através de um algoritmo. A função do Operador NOT na Lógica Paraconsistente é fazer a negação lógica no sinal resultante de saída da Célula. O processo da negação lógica pode ser considerado como uma inversão no sinal do valor do grau de crença resultante da saída de uma CNAP. Na Célula Neural Artificial Paraconsistente de aprendizagem vão ocorrer as ações do Operador NOT no processo de treinamento.
5.2.1 - Aprendizagem de uma Célula Neural Artificial Paraconsistente As Células de aprendizagem podem aprender qualquer valor real no intervalo fechado [0,1]. Inicialmente, para facilitar o entendimento, vamos demonstrar a aprendizagem das células com valores extremos 0 ou 1, compondo assim, o que podemos chamar de células sensoriais primárias. Fica definido portanto, que em uma Rede Neural Paraconsistente, as células sensoriais primárias consideram como padrão um dígito binário no qual, o valor 1 é equivalente ao estado lógico “Verdadeiro” e o valor 0 é equivalente ao estado lógico “Falso”. As células sensoriais primárias são aquelas que vão captar informações diretamente dos sensores. Em um sistema de captação de imagem, por exemplo, se no processo de aprendizagem for aplicado na entrada um sinal considerado como o grau de crença de valor 0, a célula vai aprender que o padrão naquele pixel é representado por um valor de Falsidade. Aparecendo, na entrada, o valor 0 repetidas vezes, o grau de crença resultante da análise vai aumentando gradativamente na saída até chegar ao valor 1. Nestas condições, dizemos que a Célula aprendeu o padrão de falsidade. O mesmo procedimento é adotado se for aplicado repetidas vezes na entrada da célula o valor 1. Quando o grau de crença resultante na saída da célula chegar ao valor 1 dizemos que a Célula aprendeu o padrão de verdade. Portanto, uma Célula Neural Artificial Paraconsistente pode aprender dois tipos de padrões: o padrão de Verdade ou o padrão de Falsidade.
5.2.2- O Fator de Aprendizagem FA Conforme foi visto na apresentação da célula (capítulo anterior), ainda neste processo de aprendizagem da CNAPa, é introduzido um fator de aprendizado (FA) que é ajustado externamente. Será visto que dependendo do valor de FA será proporcionada uma aprendizagem mais rápida
118
ou mais lenta à CNAPa. Considera-se também uma equação para cálculos de valores de graus de crença resultantes sucessivos (µ (k) até chegar ao valor 1. Portanto, para um valor de grau de crença (µ (k) inicial são obtidos valores (µ (k+1) até que µ(k+1) =1 Considerando um processo de aprendizagem do padrão de verdade, a equação de aprendizagem é obtida através da EEB ficando: µr (k+1) = µ1 - (µr (k)C) FA + 1 2 onde: µr (k)C = 1- µr (k) sendo: 0 FA 1 Para um processo de aprendizagem do padrão de Falsidade a EEB fica: µr (k+1) = µ1c - (µr(k)C) FA +
1
2 onde: µ1c = 1- (µ1 , sendo: 0 ≤ FA ≤ 1 Considera-se a Célula completamente treinada quando: (µ (k+1) = 1. O fator de aprendizagem FA é um valor real, dentro do intervalo fechado [0,1] atribuído arbitrariamente por ajustes externos. Pela análise da EEB, quanto maior é o valor de FA, menor é a rapidez de aprendizado da Célula.
5.2.3 - O algoritmo de aprendizagem A aprendizagem de uma CNAPa é feita através de um treinamento que consiste em aplicar um padrão na entrada do sinal de grau de crença sucessivamente até que as contradições diminuam e seja obtido, na saída, um grau de crença resultante igual a 1. O algoritmo de aprendizagem consiste em fazer a Célula Neural Artificial Paraconsistente ser condicionada para que ao final do treinamento reconheça o padrão apresentado como grau de crença na entrada. A figura 5.2 apresenta o fluxograma para aprendizagem do padrão de verdade.
119
Figura 5.2 - Fluxograma para aprendizagem do padrão de Verdade da CNAPa. No processo de aprendizagem do padrão de verdade o padrão aplicado é o valor 1 que, sendo aplicado sucessivamente na entrada permite que a Equação Estrutural Básica vá diluindo as diferenças entre a entrada e a saída até que o grau de crença resultante na saída chegue ao seu valor máximo 1. A figura 5.3 apresenta o algoritmo que elabora a aprendizagem do padrão de verdade juntamente com o símbolo da Célula e os valores finais nas entradas e saída. CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE APRENDIZAGEM-CNAPa PARA
PADRÃO DE VERDADE
Algoritmo de Aprendizagem da Célula Neural Artificial Paraconsistente -CNAPa ( Padrão de Verdade ) 1- Início: µr = 1/2 2- Entre com o valor do Fator de aprendizagem: FA= C1 onde 0 C1 1 120
3 4 4 4 4 4
Complemente o valor aplicado na entrada do grau de descrença: µ2c =1 - µ2 Conecte a saída da célula na entrada do grau de descrença: µ2c = µr Aplique o padrão de verdade: µ1 = 1 Calcule o grau de crença resultante µR = {µ1 - (µ2c)C1+ 1} ÷ 2 Considere as condições: Se µr ≠ 1 retorne ao passo 3 Pare
Figura 5.3 - Algoritmo para aprendizagem do padrão de Verdade e símbolo da CNAPa.. No processo de aprendizagem do padrão de falsidade, o padrão aplicado é o valor 0 que, sendo aplicado sucessivamente na entrada, permite que a Equação Estrutural Básica vá diluindo as diferenças entre a entrada e a saída até que o grau de crença resultante na saída chegue ao seu valor máximo 1. Para que este processo fosse possível a entrada do grau de crença 121
sofreu a ação do operador complemento. A figura 5.4 apresenta o algoritmo que elabora a aprendizagem do padrão de falsidade juntamente com o símbolo da Célula e os valores finais nas entradas e saída.
Figura 5.4 - Fluxograma para aprendizagem do padrão de falsidade da Célula Neural Artificial Paraconsistente de aprendizagem CNAPa. Na figura 5.5, apresentamos o algoritmo que elabora a aprendizagem do padrão de Falsidade juntamente com o símbolo da Célula onde aparecem os sinais de entradas para a análise e para os limites que vão definir e saída.
122
CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE DE APRENDIZAGEM-CNAPa PARA PADRÃO DE VERDADE
123 4 4 4 4 4
Algoritmo de Aprendizagem da Célula Neural Artificial Paraconsistente -CNAPa ( Padrão de Verdade ) Início: µr = 1/2 Entre com o valor do Fator de aprendizagem: FA= C1 onde 0 C1 1 Complemente o valor aplicado na entrada do grau de descrença: µ2c =1 - µ2 Conecte a saída da célula na entrada do grau de descrença: µ2c = µr Aplique o padrão de verdade: µ1 = 1 Calcule o grau de crença resultante µR = {µ1 - (µ2c)C1+ 1} ÷ 2 Considere as condições: Se µr ≠ 1 retorne ao passo 3 Pare
Figura 5.5 - Algoritmo para aprendizagem do padrão de Falsidade e símbolo da CNAPa. A característica da análise paraconsistente permite que, depois do aprendizado, a célula reconheça o padrão que foi lhe ensinado, mesmo que os sinais venham impregnados com ruídos. Estas características de aprendizagem e tolerância possibilitam a Célula Neural Artificial Paraconsistente 123
ser utilizada como uma ótima ferramenta para reconhecimento de padrões.
5.3 -Os Processos de Aprendizagem e de desaprendizagem de uma Célula Neural Artificial Paraconsistente - CNAP Mesmo depois que uma CNAPa é treinada para reconhecer certo padrão se, insistentemente, for levado à sua entrada um valor totalmente diferente e de forma repetitiva, o grau de Contradição muito elevado faz a Célula esquecer gradativamente o padrão aprendido. Aplicando-se valores e utilizando os algoritmos nota-se que, a repetição do novo valor aplicado na entrada, tem como primeira conseqüência o decaimento do grau de crença resultante. Nestas condições, significa que a análise chegou ao patamar de uma Indefinição. Se este novo valor ainda continuar a ser repetidamente aplicado na entrada, o grau de crença resultante, na saída, vai decaindo até chegar ao valor mínimo 0. Isto significa que a análise paraconsistente está atribuindo um grau de crença nulo àquela Proposição que foi inicialmente aprendida. Consequentemente, a Célula está atribuindo um valor máximo à Negação Lógica desta Proposição inicial, portanto, o novo padrão contrário ao aprendido deve ser confirmado. No algoritmo de treinamento da CNAPa, a situação de descrença total à Proposição inicial é sinalizada quando o grau de Certeza Gc chegar ao valor -1. Dessa forma, no algoritmo é feito o monitoramento do grau de Certeza Gc, e quando seu valor chegar a -1, é confirmada a crença na negação lógica da proposição. O procedimento para a confirmação é a aplicação do Operador NOT na Célula. O Operador inverte o grau de crença resultante de saída da célula que estava em zero para o valor 1. A partir deste instante, a CNAPa considera como novo padrão o valor que apareceu de forma repetitiva, esquecendo o padrão aprendido anteriormente. Em um processo de início de aprendizagem, a Célula não sabe previamente qual será o padrão a ser aprendido, portanto uma CNAPa deve ter capacidade de reconhecer qualquer padrão inicial e se preparar para aprendêlo. Por exemplo, uma célula sensorial primária deve ter capacidade de, primeiro, reconhecer e, depois, aprender o padrão aplicado na sua entrada.
5.3.1 - Reconhecimento do padrão a ser aprendido Nas Células primárias, apenas dois tipos de padrão podem se apresentar nas entradas: o padrão de Verdade ou o padrão de Falsidade. O processo de reconhecimento do padrão a ser aprendido, é feito através de 124
uma primeira análise no grau de Certeza Gc. Se, no primeiro cálculo do grau de Certeza Gc, o resultado for negativo, significa que a tendência do mesmo é decair até um valor mínimo -1, portanto, conclui-se que a célula não está preparada para aprender, mas para desaprender. Neste caso, a célula deve sofrer um processo de inversão com a aplicação do Operador NOT e também proceder a aplicação do Operador Complemento na entrada do grau de crença. Considere uma Célula Neural Artificial Paraconsistente de aprendizagem CNAPa preparada para receber padrões, que podem ser de Verdade ou de Falsidade. Primeiramente, é calculado um grau de Certeza inicial: Gci = µ1a - µr(k) = µ1a - 1/2 Se Gci < 0, então é um padrão de Falsidade. Calcule através da EEB : µr (k+1) = µ1c - (µr (k)C) FA
+ 1
2 onde: µ1c = 1- µ1 e µr (k)C = 1- µr (k) Se Gci > 0, então é padrão de verdade. Calcule através da EEB :
sendo: 0 FA 1
µr (k+1) = µ1 - (µr (k)C) FA + 1
2 onde: µr (k)C = 1- µr (k)
sendo: 0
≤ FA ≤ 1
5.3.2 - O fator de desaprendizagem F Da Conhecendo se a Célula está em processo de aprendizagem ou de desaprendizagem, sabemos que haverá a possibilidade da introdução de um Fator de desaprendizagem FDA no algoritmo. Por exemplo, se no processo de aprendizagem do padrão de falsidade o grau de crença resultante de saída chegar ao valor máximo, isto é quando (µ (k+1) = 1, significa que a célula está completamente treinada e qualquer variação que possa acontecer no valor da saída é uma desaprendizagem. Como no processo de aprendizagem foi utilizado o fator FA, no processo de desaprendizagem a Equação Estrutural Básica (EEB) para cálculo do grau de crença resultante passa a ser:
125
µr(k+1) = µ1c - (µr(k))C) FDA
+1 2 onde: µ1c = 1- µ1 e (µ (k)C = 1- (µ (k) sendo: 0 FDA 1 Para o processo de aprendizagem do padrão de Verdade é feito o mesmo procedimento, isto é, quando (µ(k+1) = 1, a EEB utiliza o Fator de desaprendizagem e fica: µr (k+1) = µ1 - (µr(k))C) FDA
+ 1
2 onde: µr (k)C = 1- µr (k) sendo: 0 ≤ FDA ≤ 1 Como no algoritmo, o fator de desaprendizagem F DA , pode corresponder a um valor real inserido no intervalo fechado [0,1], fica claro que uma Célula Neural Artificial Paraconsistente de aprendizagem pode ser ajustada externamente para ter rapidez ou lentidão no seu processo de desaprendizagem.
5.3.3 - Confirmação da aprendizagem da proposição negada. Quando no processo de desaprendizagem, tanto do padrão de Falsidade como do padrão de Verdade, o grau de crença resultar em (µ (k+1) = 0, significa que a célula desaprendeu totalmente o padrão aprendido inicialmente, portanto é aplicado o Operador NOT fazendo: (µ(k+1) = 1. Para confirmar o novo padrão é feito a seguir, o complemento de (µ1A)
5.4 - Estudos do Algoritmo de Aprendizagem e de Desaprendizagem Completo Utilizando todas as condições de ajustes nesta seção é construído um algoritmo completo que elabora a aprendizagem e a desaprendizagem da CNAPa. O algoritmo completo deixa a análise de forma mais abrangente com maior eficiência e controlabilidade. Observe o fluxograma do algoritmo completo seguir:
126
Figura 5.6 - Fluxograma do processo de aprendizagem e desaprendizagem da CNAPa. O fluxograma da figura 5.6 demonstra, com clareza, todo o processo que abrange o reconhecimento do padrão a ser aprendido, envolvendo as condições de aprendizagem e a desaprendizagem da CNAPa. Através de ajustes nos dois valores, F A -Fator de aprendizagem e F DA -Fator de desaprendizagem, a Célula Neural Artificial Paraconsistente pode adquirir rapidez na aprendizagem e lentidão no processo de desaprendizagem ou vice-versa. Estas condições de ajustes proporcionadas pelas CNAP são muito importantes porque através delas se obtém maior dinamismo em modelagens das Redes Neurais Artificiais Paraconsistentes. O algoritmo de aprendizagem completo de uma CNAPa origina uma Célula Neural Artificial Paraconsistente capaz de aprender e desaprender 127
ALGORITMO COMPLETO DE APRENDIZAGEM DA CÉLULA NEURAL ARTIFICIAL PARACONSISTENTE - CNAPa
qualquer um dos padrões ou valores no intervalo real fechado [0,1]. O algoritmo completo juntamente com o símbolo da célula com estas características estão apresentados na próxima figura. 1- Início: µR = 1/2 */Célula virgem */ 2 Entre com o Padrão de entrada inicial: µr = Pi */ 0 ≤ P ≤ 1 */ 3 - Calcule o Grau de certeza inicial Gci= µr -1/2 4 Determine o padrão a ser aprendido pelas condições: Se Gci= 0 então vá para item 1 (Início) Se Gci < 0 então vá para o item 6 5 Complemente a entrada do grau de crença: µr = 1 - Pi 6 Entre com o fator de aprendizagem FA: C1 = FA */ 0 ≤ FA ≤ 1 */ 7- Conecte a saída da célula na entrada do grau de descrença µ2 = µR
8 - Aplique o Operador Complemento na entrada do grau de descrença µrc =1 - µr */preparando a célula de aprendizagem */ 9 Calcule o Grau de crença pela EEB µR = {µ1 - (µrc)C1} ÷ 2
10 Determine o próximo passo pelas condições: Se µR = 1 então vá para o item 14 Se µR = 0 então vá para o item 12 Se 0 < µR < 1 então vá para o item 15 11- Faça o complemento na entrada do grau de crença: µ1 = 1 - C2
12 Faça a negação lógica na saída: µR = 1 13 Troque FA pelo fator de desaprendizagem FDA : C1= FDA 14 Entre com novo padrão de entrada: C2 = Pn */ 0 Pn 1 */ 15- Retorne ao passo 7
Figura 5.7 - Algoritmo de aprendizagem completo e símbolo da CNAPa. 128
A grande vantagem de usar o algoritmo completo é a possibilidade de ajustes externos para otimização, proporcionando modelos de redes neurais paraconsistentes com funcionamento semelhante ao do cérebro humano. No algoritmo completo da figura 5.7, nota-se que até o item 4, a célula faz uma análise inicial e detecta qual é o padrão a ser aprendido. Conforme o resultado desta análise inicial a célula se prepara para o aprendizado ou de um padrão de Falsidade ou de um padrão de Verdade. Nos itens 6, 7 e 8, a célula é preparada para uma aprendizagem utilizando o fator de aprendizagem FA. Nos itens 9 e 10, ocorre o processo de aprendizagem. No item 10, as condições determinam se a célula aprendeu, se está num processo de aprendizagem/desaprendizagem ou se desaprendeu completamente o padrão aprendido. Para cada situação, as condições direcionam o processo para obtenção de novo padrão de entrada com mudança ou não do fator de aprendizagem FA pelo fator de desaprendizagem FDA. Se o desaprendizado total é confirmado pelo grau de crença resultante da saída nulo, no item 11 é iniciada a confirmação do desaprendizado, mudando a análise e transformando de uma descrença total para uma crença total à negação lógica do padrão inicial aprendido. Este processo de análise é continuado funcionando de modo cíclico pelas ações de retorno do algoritmo.
5.5 - Os Resultados Práticos no Treinamento de uma Célula Neural Artificial Paraconsistente de aprendizagem - CNAPa. Utilizando padrões com valores binários na entrada e com os fatores de aprendizagem e desaprendizagem unitários, foi aplicado o algoritmo de aprendizagem e desaprendizagem completo em uma Célula Neural Artificial Paraconsistente de aprendizagem obtendo-se os valores da tabela da figura 5.8. Inicialmente, foram aplicados sucessivamente o valor 1 representando o padrão de Verdade na entrada da Célula, até que na saída, o grau de crença resultante chegou ao valor 1 significando que o aprendizado do padrão de Verdade foi completado. A seguir, foi aplicado o padrão de Falsidade representado pelo valor 0 repetidas vezes, até que a saída da célula apresentou grau de crença zero, indicando que a célula desaprendeu o padrão de Verdade e, ao mesmo tempo, considera como novo padrão a negação lógica da verdade, portanto, o padrão de Falsidade. O próximo passo do algoritmo é a aplicação dos Operadores NOT e 129
Complemento através do qual é, então, confirmado o aprendizado do padrão de falsidade. Os valores dos graus de crença obtidos da análise paraconsistente efetuada pelo algoritmo de aprendizagem completo podem ser visualizados em forma de gráfico na figura 5.9.
Figura 5.8-Tabela resultante da aplicação do algoritmo completo da CNAPa. Figura 5.9 - Gráfico representando os valores num processo de apren130
dizagem e de desaprendizagem da CNAPa. O gráfico dos resultados da aprendizagem e desaprendizagem da Célula Neural Artificial Paraconsistente mostrado na figura anterior, apresenta monotonicidade nos valores do grau de crença resultante durante um certo trecho, para depois entrar em saturação. Os resultados gráficos têm as características da função de ativação de Neurônios Artificiais utilizados em Redes Neurais artificiais clássicas. As funções de ativação servem para modelar o potencial de ação, que é o processo de troca de informações na forma de um pulso de voltagem dos neurônios biológicos. Nota-se que, a aplicação da equação da análise paraconsistente resulta naturalmente em valores similares aos obtidos pela função de ativação do Perceptron [Rosenblatt 62] comprovando que uma rede neural paraconsistente pode apresentar bons resultados, de uma forma simples e prática.
5.5.1- Representação Simplificada As Células Neurais Artificiais Paraconsistentes de aprendizagem são representadas nas interligações das Redes Neurais Paraconsistentes pela simbologia simplificada apresentada na figura 5.10.
Figura 5.10 - Símbolo simplificado e gráfico característico de saída da Célula Neural Artificial Paraconsistente de aprendizagem CNAPa. O gráfico acima mostra o comportamento do sinal de saída na aplicação de um padrão repetitivo na entrada. No instante T0a saída é uma indefinição com grau de crença resultante valendo 1/2. Do instanteT0até o instante Ti acontece na saída um comportamento monotônico, para então, o grau de crença resultante ficar constante no instante T2. Do instante T3 até o instante T4 ocorreu a aplicação do 131
padrão inverso na entrada e, como conseqüência, o sinal de saída sofreu um decréscimo até zero para, então, no instante t4 acontecer a confirmação do novo padrão aprendido.
5.6- Ensaios da Célula Neural Artificial Paraconsistente de aprendizagem - CNAPa com Variações nos Valores dos Fatores de aprendizagem FA e desaprendizagem FDA Uma célula de aprendizagem é treinada para aprender padrões de Verdade ou de Falsidade pelas equações: µr(k+1) = µ1c - (µr (k)C) FA + 1 2 onde: µ1c = 1- µ1 e µr (k)C = 1- µr (k) , sendo: 0 ≤ FA ≤ 1 para o aprendizado do padrão de Falsidade. E para a aprendizagem do padrão de Verdade.: µr (k+1) = µ1 - (µr (k)C) FA+ 1 2 onde: µr (k)C = 1-µr (k) sendo 0 ≤ FA ≤ 1 Quando a célula entra num processo de desaprendizagem a diminuição do valor do sinal do grau de crença resultante sinaliza esta condição. Esta diminuição é detectada e é utilizado na equação um fator de desaprendizado FDA. Nesta condição de desaprendizagem as equações ficam da seguinte forma: µr (k+1) = µ1c – (µr (k)C) FA + 1
2 onde: µ1c = 1- µ1 e µr (k)C = 1-µr (k) ,
sendo: 0 ≤ FDA ≤ 1
para o desaprendizado do padrão de Falsidade, e: µr (k+1) = µ1 – (µr (k)C) FA + 1
2
onde: µr (k)C = 1- µr (k) sendo 0 ≤ FDA ≤ 1 132
para aprendizagem do padrão de Verdade. A inclusão de fatores distintos na aprendizagem e na desaprendizagem dá condições para que uma Célula Neural Artificial Paraconsistente-CNAP possa aprender com rapidez e esquecer com lentidão o padrão em treinamento. Quando os fatores estão ajustados em FA=1 e FDA=1 dizemos que a CNAP tem uma capacidade natural de aprendizagem e desaprendizagem. Esta capacidade natural vai aumentando à medida que os ajustes de FA e de FDA se aproximam de 0. Vamos apresentar um estudo do comportamento da célula quando ocorrem variações no fator de aprendizagem FA. Os resultados deste ensaio podem ser estendidos para uma variação no ajuste do Fator de desaprendizagem FDA. O ensaio foi feito com valores significativos que apresentarão o comportamento da CNAP quando ocorre variação do fator de aprendizado F A. Com o objetivo de verificação da influência do fator de aprendizagem numa CNAP foram calculados os resultados para várias aplicações de padrões. Os resultados do ensaio são apresentados na tabela e no gráfico da figura 5.11.
Figura 5.11 - Tabela e gráfico dos resultados do ensaio com variações do fator de aprendizagem FA. Quando o valor do Fator de aprendizagem é mínimo FA= 0 (ou quando F DA =0) a célula tem a máxima capacidade de aprendizagem (ou 133
desaprendizagem). Nestas condições de ajustes, na primeira aplicação do padrão, o grau de crença resultante chega ao seu valor máximo 1, em um processo de aprendizagem e ao seu valor mínimo 0, quando em processo de desaprendizagem. Conforme ficou definido nas condições de sinais para uma Rede Neural Artificial Paraconsistente, não são admitidos valores acima de 1 para quaisquer ajustes nas Células Neurais Artificiais paraconsistentes, no entanto pela equação de aprendizagem verifica-se que, se um valor do fator de aprendizagem fosse FA=2 provocaria a perda da capacidade de aprendizagem da célula e o valor do grau de crença resultante sempre teria o valor da Indefinição 1/2.
5.7 - Ensaio de uma Célula Neural Artificial Paraconsistente de aprendizagem - CNAPa com aplicações de diversos Padrões com diferentes Valores. Uma CNAPa, no processo de treinamento, reconhece, aprende e desaprende padrões que podem ser de dois tipos: padrão de Falsidade e padrão de Verdade. Quando uma CNAPa é treinada com padrão de Verdade, responde à Equação Estrutural Básica: µ r = µ 1a - (µ1bc) FA + 1 2 onde:
µ 1bc =
1- µ 1B sendo: 0
≤ FA ≤ 1.
Depois que a CNAPa é treinada, ao ser aplicado o padrão (µ1A=1, a condição obtida no treinamento considera o valor de (µ1B como sendo o mesmo da saída (µr=1. Se aplicarmos valor diferente de 1, a medida que este valor vai de forma repetitiva se apresentando na entrada a CNAPa vai computando valores através da EEB e respondendo com um sinal na saída que, gradativamente vai se igualar ao valor aplicado. Quando uma CNAPa é treinada com padrão de Falsidade, está apta a responder à Equação Estrutural Básica EEB: µr = µ1AC - ( µ1BC) FA+ 1 2 onde:
µ1AC
= 1-
µ1A
sendo: 0 ≤ FA
≤ 1.
Na CNAPa treinada para detectar padrão de Falsidade, quando na 134
aplicação de valores diferentes de 0, devido ao complemento que o sinal de entrada (µ1A recebe na equação o resultado na saída depois de várias aplicações será o complemento do sinal aplicado na entrada. A tabela da figura 5.12 mostra os valores obtidos em duas CNAPa, uma treinada para reconhecer, aprender e desaprender padrão de Falsidade e a outra para padrão de Verdade, com aplicações de valores significativos entre 0 e 1 inclusive.
Figura 5.12 - Tabela com os valores resultantes da aplicação de padrões diferentes na Célula de aprendizagem. Nos cálculos para obtenção dos valores expostos na tabela da figura 5.12 foi considerado um fator de aprendizagem FA igual a 1. Os valores da tabela demonstram que a Célula Neural Artificial Paraconsistente de aprendizagem CNAPa tem a capacidade de reconhecer padrões mesmo que os sinais venha impregnados com ruídos. 135
5.8 - CONSIDERAÇÕES FINAIS Foi visto que, através de um algoritmo que utiliza um processo repetivo nas aplicações de padrões, uma CNAPa, pode ser treinada para aprender e desaprender o padrão aprendido. Nos ensaios utilizando valores significativos ficou demonstrado que as Células Neurais Paraconsistentes de aprendizagem podem aprender e desaprender o reconhecimento de padrões estabelecidos por qualquer valor real entre 0 e 1. A capacidade de aprender, desaprender e guardar padrões são características muito importantes das Células paraconsistentes e ficaram bem definidas com os resultados apresentados no ensaio com o algoritmo de aprendizagem. Os valores encontrados comprovam a eficiência das Células Neurais Paraconsistentes e as indicam para compor Redes Neurais Paraconsistentes em aplicações concretas e reais. Os resultados obtidos pelos ensaios foram expostos em gráficos e tabelas onde comprovam que a Célula Neural Artificial Paraconsistente tem o seu funcionamento muito parecido com o comportamento dos Neurônios biológicos, portanto, se mostra uma boa ferramenta para modelagem do cérebro humano através de Redes Neurais Artificiais Paraconsistentes. A característica de saída da CNAPa apresenta uma forte semelhança com os modelos de neurônio artificial apresentados nos estudos das Redes Neurais Artificiais clássicas com a vantagem de não utilizar equações matemáticas complexas que possam inviabilizar sua aplicação. Esta característica de saída permite que sejam criadas Unidades Neurais Paraconsistentes inspiradas nos modelos de Neurônios artificiais clássicos [Rosenblatt 62].
5.9 - Exercícios 1- Para que servem as Células Neurais Artificiais Paraconsistentes de aprendizagem? 2- Descreva a configuração fundamental da Célula Neural Artificial Paraconsistente de Aprendizagem CNAPa. 3- Quais são os procedimentos para uma CNAP de aprendizagem aprender um padrão de Falsidade? 4- Descreva os procedimentos para uma CNAP de aprendizagem aprender um padrão de Verdade. 5- Elabore em linguagem C ( ou em outra linguagem que você domi136
na) o programa executável para aprendizagem do padrão de Verdade. 6- Elabore em linguagem C ( ou em outra linguagem que você domina) o programa executável para aprendizagem do padrão de Falsidade. 7- A partir do Algoritmo de aprendizagem completo da CNAPa elabore em linguagem C ( ou em outra linguagem que você domina) programa executável para aprendizagem e desaprendizagem da Célula. 8- Comente sobre os resultados obtidos pelos ensaios do algoritmo de aprendizagem completo da CNAPa.
137
CAPÍTULO 6 PARA - PERCEPTRON: NEURÔNIO ARTIFICIAL PARACONSISTENTE Apresentaremos uma Unidade Neural Artificial Paraconsistente UNAP considerada, o Neurônio Artificial Paraconsistente que, inspirados no Perceptron de Rosenblatt [Rosenblatt 62] a denominamos de ParaPerceptron. O Neurônio Artificial Paraconsistente (Para-Perceptron) é uma configuração de Células Neurais Artificiais Paraconsistentes de vários tipos, convenientemente interligadas que, funcionando conjuntamente, apresenta as características das funções conhecidas do neurônio biológico. Portanto, o Para-Perceptron é uma Unidade Neural totalmente composta por Células Neurais Artificiais Paraconsistentes CNAP’s com funcionamento semelhante ao neurônio biológico. No Estudo do Para-Perceptron típico haverá comparação de cada função conhecida do neurônio biológico à sua correspondente função artificialmente produzida pelo Neurônio Artificial Paraconsistente. Com as considerações feitas no estudo comparativo do Neurônio biológico com o ParaPerceptron, são dadas algumas sugestões para outras configurações utilizando as interligações entre as Células Neurais Artificiais Paraconsistentes. No final deste capítulo, é apresentado um ensaio com um ParaPerceptron típico onde fica demonstrado a sua capacidade de processar e acessar padrões, com valores reais em um intervalo fechado [0,1].
6.1 – Introdução No capítulo 4, foi apresentada uma família de Células Neurais Artificiais Paraconsistentes composta de oito tipos de células distintas que fazem análises entre valores de graus de crenças com base na Equação Estrutural Básica: µr = (µ1 - µ2 + 1) :¸ 2, originada da Lógica Paraconsistente Anotada. As Células Neurais Paraconsistentes utilizam para análise equações sim138
ples, sendo de fácil implementação e se mostram eficientes nos processos de treinamento, reconhecimento e memorização de padrões. Em capítulos anteriores, os resultados de ensaios com as células demonstraram a possibilidade de sua utilização para modelar o comportamento funcional de partes do Neurônio biológico. O Neurônio Artificial Paraconsistente ou Para-Perceptron é um conjunto composto por várias células que compõem o que chamamos de uma Unidade Neural Artificial Paraconsistente UNAP. A UNAP é uma configuração de vários tipos de Células Neurais Artificiais Paraconsistentes conectadas entre si que apresenta um funcionamento global com características semelhantes às das funções conhecidas do neurônio do cérebro humano. Para compor o Para-Perceptron são utilizados cinco tipos de Células Neurais Artificiais Paraconsistentes. 1) As Células Neurais Artificiais de Conexão analítica – CNAPCa: No Para-Perceptron, estas células vão promover a função da sinapse do neurônio biológico. 2) As Células Neurais Artificiais de aprendizagem – CNAPa: Por suas características intrínsecas, no Para-Perceptron estas células vão promover a função de modelar os princípios espacial e temporal dos estímulos, caracterizados como sendo fenômenos internos que ocorrem no corpo celular do neurônio biológico. 3) As Células Neurais Artificiais de memorização – CNAPm: Estas células vão guardar os padrões a partir de treinamento efetuados pelo Para-Perceptron. A função da célula de memorização é similar ao processo genético de memorização que ocorre no corpo celular do neurônio biológico. 4) As Células Neurais Artificiais de conexão lógica simples-CNAPls: Terão a função de controlar o Para-Perceptron, determinando as condições para aprendizagem e comparação de padrões. 5) As Células Neurais Artificiais de conexão lógica seletiva – CNAPlse: Estas células terão a função de controlar a saída do Para-Perceptron, possibilitando a extração do padrão aprendido pela célula de aprendizagem. A função básica das células de conexão lógica simples e seletiva é representar o processo ainda não totalmente conhecido de como o neurônio biológico acessa e controla o fluxo de informações armazenadas. Todas estas Células Neurais Artificiais Paraconsistentes, interliga139
das, com estas características, vão compor o Para-Perceptron que é uma Unidade Neural Artificial Paraconsistente que trabalha com equações simples e estruturadas na Lógica Paraconsistente Anotada com capacidade de obter um comportamento funcional muito próximo ao do neurônio biológico.
6.2 – O Neurônio Biológico O cérebro humano é um emaranhado de conexões entre prolongamentos de células nervosas chamadas neurônios. Estima-se que o cérebro humano, com seus aproximadamente 1,35 kg tenham por volta de 100 bilhões de neurônios.
Figura 6.1- O cérebro humano e neurônios. Esta extensa e intricada rede de células existente no cérebro é tão complexa que ainda não é bem entendida mas, de uma maneira simplificada, pode-se afirmar que o cérebro humano é formado, basicamente de conjuntos de células que manipulam e processam informações. As células nervosas que existem no cérebro, além da sua função biológica normal, possuem propriedades que as capacitam a processar e transmitir informações. Para estas funções mentais existem neurônios de vários tipos, no entanto um neurônio típico pode ser estudado dividido em três partes principais: a A árvore dendrital formada por dendritos que são prolongamentos 140
filamentares cuja finalidade é fazer a recepção dos sinais de informações para as células; b) O corpo celular ou soma onde estão situados o núcleo celular e o citoplasma cuja função é reunir informações recebidas pelos dendritos; c) O axônio, que é uma projeção filamentar de diâmetro relativamente uniforme, e pode se apresentar com diversos comprimentos. A figura 6.2 mostra o esquemático de um neurônio biológico típico.
Figura 6.2- Representação esquemática do neurônio biológico típico. No cérebro humano há uma complexa rede composta de bilhões de neurônios interconectados. As informações passam de um neurônio para outro de modo que cada um interage com dez mil outros. Entre os neurônios, as informações são transmitidas de axônios para os dendritos, portanto, os axônios são os agentes transmissores e os dendritos são os receptores. O contato para a passagem de informação entre os axônios e os dendritos é devido às estruturas chamadas de Sinapses, regiões com atividades eletroquímicas capazes de fazer a conexão para transmissão das informações. A grosso modo, a Sinapse pode ser dividida em duas partes separadas por uma região chamada fenda sináptica. A parte anterior é composta pela membrana do axônio pelo qual chega o sinal de informação (présináptica), na forma de um pulso elétrico e uma parte posterior que é composta pela membrana do dendrito (pós-sináptica) que receberá a informação. A informação chegando na forma de um impulso elétrico na membrana 141
pré-sináptica faz com que apareçam vesículas com mediadores químicos chamados de neurotransmissores. Os neurotransmissores, alterando os seus formatos tridimensional, difundem-se através da fenda sináptica e agem nos canais químicos receptores da membrana pós-sináptica iniciando uma série de eventos para a ocorrência da conexão. A figura 6.3 mostra o esquemático de uma Sinapse no qual, através da fenda sináptica, os neurotransmissores alcançam a membrana dendrital póssináptica ocorrendo uma alteração na sua polarização elétrica.
Figura 6.3 – Representação esquemática da sinapse de conexão para transmissão e recepção de informações na forma de impulso elétrico entre dois neurônios biológicos. O neurônio biológico recebe e envia informações através de conexões sinápticas que ligam a árvore dendrital aos axônios que trazem informações de outras células. A Sinapse propaga as informações em uma única direção que, dependendo do tipo de neurotransmissores pode facilitar (sinapse excitatória) ou inibir (sinapse inibitória) a formação de um potencial de ação no axônio do neurônio receptor. O potencial de ação é o responsável pelo envio de informação entre os neurônios na forma de um impulso elétrico. Para gerar o chamado potencial de ação na membrana axonal os neurônios possuem propriedades físicas e eletroquímicas que criam a depolarização ou a hiperpolarização impostas pelos potenciais présinápticos em cada Sinapse. Os potenciais de ação, trazidos por cada Sinapse, têm magnitudes diferentes porque são influenciados pelo tamanho da Sinapse e pela quantidade de neurotransmissores liberados por cada Sinapse. O potencial de ação gerado no neurônio também depende do tipo de 142
Sinapse recebida, que pode ser excitatória no caso da depolarização ou inibitória no caso da hiperpolarização. Quando a membrana sofre uma depolarização suficiente acentuada para cruzar um certo limiar de disparo é gerado o impulso elétrico. A figura 6.4 mostra a forma de onda de um potencial de ação, que é um pulso gerado no axônio de um neurônio típico, onde a duração varia de micro a um milesegundo.
Figura 6.4- Forma de onda do potencial de ação gerado no axônio de um neurônio típico. No estudo do neurônio biológico são considerados dois princípios básicos: 1 - O princípio da integração espacial dos estímulos, onde a resposta do neurônio depende da totalidade dos estímulos excitatórios e inibitórios que a ele chegam através dos dendritos. 2 - O princípio da integração temporal dos estímulos, que é o efeito das membranas na região de cada Sinapse resultante no fenômeno de armazenamento de carga. O armazenamento ocorre pela existência da capacitância C da membrana pós-sináptica. A capacitância dá a esta região, as características de um capacitor que armazena cargas elétricas sempre que a Sinapse é ativada por um impulso elétrico. No complexo processo eletroquímico que ocorre no interior do neurônio sabe-se que, quando os neurotransmissores se ligam aos receptores, provocam condições para que haja troca de cargas elétricas, assim ativando no núcleo celular partes dos genes. Os genes que são estruturas celulares que comandam a produção de proteínas no corpo celular, ao serem ativados melhoram a recepção dos sinais de informação. Dependendo do processo eletroquímico que influencia os genes, a 143
absorção das informações pode variar, reforçando ou enfraquecendo a recepção. Este processo eletroquímico de variação na recepção de informações que ocorre no núcleo celular ainda não é completamente entendido, mas por seus efeitos, é considerado como uma memorização do neurônio. As características funcionais que modelam os dois princípios e outros efeitos, como o de memorização, são determinadas pelas propriedades físico-químicas de cada célula, portanto, cada neurônio apresentando distinção em suas membranas, Sinapses e neurotransmissores também vai apresentar características próprias e particulares. Estes processos distintos e particulares de cada célula dificultam a obtenção de um modelo funcional completo que possa determinar as características computacionais de um neurônio.
6.3 - O Neurônio Artificial Os primeiros modelos de neurônios artificiais surgiram em 1943 e comparavam as atividades eletroquímicas do neurônio biológico semelhantes a funções booleanas que tratam sinais binários. O primeiro modelo de neurônio artificial é conhecido como Threshold Logic Unit (TLU) e foi originalmente proposto por McCulloch e Pitts [McCulloch 43]. A figura 6.5 mostra o TLU proposto onde vários sinais binários representando os potenciais de ação (action-potentials) aparecem nas unidades de entrada (Sinapses).
Um peso diferenciado Wi, que indica a força da sinapse, é multiplicado pelo sinal binário em cada entrada. Os resultados das multiplicações são então somados para produzir um valor de ativação. Se o valor de ativação a ultrapassar um certo limiar q é produzida uma resposta Y na saída. n
Sendo: a = W1 X1 + W2 X2 + ... + Wn Xn ou: a= å Wi Xi i=1 O TLU pode ser utilizado como um discriminador linear de padrões e o seu modelo binário permitia que se tratasse o funcionamento do cérebro semelhante ao de um computador, que é estruturado na lógica clássica ou binária. Baseados nesta idéia muitos modelos foram desenvolvidos, no 144
entanto, devido aos baixos resultados computacionais, as pesquisas utilizando o modelo do neurônio artificial binário TLU foram interrompidas. De um aperfeiçoamento do TLU, foi introduzido por Rosenblatt um modelo de rede neural denominado de Perceptron[Rosenblatt 62]. O Perceptron se apresentava como uma rede de múltiplos neurônios do tipo discriminador linear TLU, que recebiam sinais de unidades de entrada. As Unidades de entrada faziam um pré-processamento nos sinais utilizando funções booleanas. A figura 6.6 mostra uma representação típica do Perceptron.
Figura 6.6 –Representação de um Perceptron. Devido às dificuldades apresentadas por esse modelo inicial para processar certas funções, o Perceptron foi aperfeiçoado, transformando-se em rede de múltiplas camadas. O Perceptron passou a ser configurado utilizando os neurônios dispostos em várias camadas onde os sinais têm um único fluxo, sendo direcionados das camadas de entrada para as camadas de saída. As camadas de entrada, que se constituem de neurônios que recebem os primeiros sinais, são ligadas as camadas intermediárias ou camadas ocultas. As camadas ocultas recebem os sinais das camadas de entrada, analisa-os e direciona-os para as camadas de saída. As redes em múltiplas camadas inovaram o modelo anterior porque trouxeram a possibilidade de serem treinadas através de um algoritmo. As variáveis de entrada podem assumir qualquer valor real e a saída foi aproximada ao modelo do neurônio biológico por uma função denominada de 145
função de ativação g(s). Nos modelos de Neurônio Artificial, utilizados atualmente em Redes Neurais Artificiais [Siebert 68], geralmente são utilizadas como função de ativação a função degrau ou as sigmóides: positiva e simétrica. Esta última preserva a monotonicidade numa região denominada de faixa dinâmica, ocorrendo a saturação fora desta faixa. A figura 6.7 mostra a representação de uma rede de múltiplas camadas com as saídas dos neurônios controladas pela função de ativação g(s).
Figura 6.7 – Configuração típica de um Perceptron de multicamadas. As entradas X1, X2, ..., e Xn e os pesos das conexões Wi1, Wi2, ..., e Win são valores reais, tanto positivos como negativos. Quando as entradas trazem características de disparar o neurônio o seu respectivo peso é positivo. Se a característica for para inibir o disparo, então o peso será negativo. O processo de treinamento da rede para o reconhecimento de padrões é obtido pela variação dos valores dos pesos das conexões e dos limites. Existem vários algoritmos para o aprendizado de redes de Perceptron, inclusive utilizando o processo de aprendizado condicionado hebbiano. Apesar de tudo, as dificuldades que apresentam as Redes Neurais Clássicas para aprender e classificar padrões num processo simples e funcional que possa ser aplicado em sistemas reais são muitas. Entre elas, podemos citar a impossibilidade de controle dos pesos nas camadas ocultas, a quantidade de interações que são necessárias para se encontrar os pontos de otimização da aprendizagem e a grande quantidade de memória para armazenagem dos diferentes valores dos pesos das conexões.
6.4 - O Neurônio Artificial Paraconsistente ParaPerceptron. Para compor o Para-Perceptron são utilizados cinco tipos diferentes 146
de CNAP’s. A primeira CNAP é a Célula de Conexão analítica que faz a conexão dos sinais de entrada, equacionando-os através da EEB. No Para-Perceptron a Célula de conexão analítica pode ser considerada como promotora da função da sinapse do neurônio biológico. A figura 6.8 mostra o símbolo simplificado da CNAP de conexão analítica e o resumo da sua função por meio do seu algoritmo.
Figura 6.8 - Símbolo simplificado da CNAP de conexão analítica e algoritmo. O segundo tipo de CNAP utilizada no Para-Perceptron é a Célula de aprendizagem que, por suas características intrínsecas, vai promover a função de modelar os princípios espacial e temporal dos estímulos. Estes dois princípios foram caracterizados como sendo fenômenos eletroquímicos internos que ocorrem no corpo celular do neurônio biológico. Esta célula recebe o grau de crença resultante da análise feita pela célula de conexão analítica e estabelece um processo de integração, partindo de uma indefinição de valor 1/2. Na ocorrência do processo integrativo, o resultado pode ser crescen147
te até um valor máximo 1 quando então considera-se a célula completamente treinada, significando que aprendeu um padrão. O resultado pode partir de 1/2 e diminuir até um valor mínimo 0. Nesta condição de decréscimo do valor da saída considera-se que a célula está sendo destreinada, portanto quando o resultado é 0 a célula desaprendeu totalmente o padrão. O resultado do valor de saída chegando a 0, após um processo de aprendizagem, significa que a célula além de desaprender o padrão, está logicamente negando-o. Para confirmar a negação lógica, a saída da célula é levada ao valor 1. Nestas condições, internamente, são feitas modificações para que a mesma se adapte as novas situações de aprendizagem. A figura 6.9 mostra a célula de aprendizagem e o seu algoritmo de aprendizagem completo, onde a célula pode aprender e desaprender num processo de análise com amostragem discreta do valor aplicado na entrada.
Figura 6.9 - Símbolo simplificado da CNAP de conexão analítica e algoritmo. 148
O terceiro tipo de célula utilizada no Para-Perceptron é a Célula de memorização que tem a função de guardar padrões a partir do treinamento. Esta célula tem função similar ao processo genético de memorização que ocorre no corpo celular do neurônio biológico. Na figura 6.10 é apresentado o símbolo da célula de memorização com o seu algoritmo representativo.
Figura 6.10 – Símbolos e algoritmos das células de memorização de padrões. As células de memorização são criadas dependentes do valor do fator de memorização m que varia positivamente de 0 a 1. Quando o valor do fator de memorização m for máximo, isto é m=1, a célula memorizou um dos padrões, que pode ser de falsidade ou de verdade. O Padrão memorizado pode ser ativado através da aplicação de valor m 1 =1 na entrada da célula. O quarto tipo de célula utilizado no Para-Perceptron é a Célula de conexão lógica simples. Esta Célula tem a função de controlar o ParaPerceptron, determinando várias condições de funcionamento. A Célula de conexão lógica simples direciona sinais possibilitando o Para-Perceptron ficar em estado de aprendizado, ou de comparação de 149
padrões; ou então, inativo com saídas indefinidas possibilitando a consulta nas suas células de memorização. A Célula de conexão lógica simples representa o processo ainda não totalmente conhecido de como o neurônio biológico acesa e controla o fluxo de informações armazenadas. A figura 6.11 mostra a célula de conexão lógica com seu algoritmo representativo.
Figura 6.11 - Símbolos e algoritmos das Célula Neurais Artificiais Paraconsistentes de conexão lógica simples. A Célula Neural Artificial Paraconsistente de Conexão seletiva tem duas entradas e duas saídas. Faz as funções lógicas de maximização ou de minimização selecionando um dos sinais para ser conectado à sua respectiva saída e impondo um valor 1/2 ao outro. Em uma célula de maximização, quando os dois sinais são aplicados, o sinal de maior valor tem a sua passagem livre e aparece na sua respectiva saída o sinal de menor valor fica indefinido.
150
Quando a célula tem a função de minimização, o sinal de menor valor tem passagem livre pela célula e o sinal de maior valor fica com a sua correspondente saída apresentando indefinição 1/2. Na igualdade dos valores de sinais aplicados nas entradas, o sinal aplicado à direita da célula prevalece sobre o da esquerda. A figura 6.12 mostra o algoritmo e o símbolo da Célula de conexão lógica seletiva.
Figura 6.12 - Símbolos e algoritmos das Célula Neurais Artificiais Paraconsistentes de conexão lógica seletiva.
As células com os seus respectivos símbolos e algoritmos apresentam, cada uma, determinada função que vão representar partes funcionais do neurônio biológico. Para modelar o Neurônio biológico, os cinco tipos de células serão interligadas onde desenvolverão, de forma emergente, funções distintas, que, analisadas de modo global concretizam artificialmente as funções do neurônio. Para criar o Para-Perceptron cada uma das células vai representar determinadas partes funcionais do neurônio. 151
Inicialmente, para uma comparação de maneira simplificada com o neurônio biológico, é feita a ligação entre uma célula de conexão analítica e uma célula de aprendizagem, conforme mostra a figura 6.13.
Figura 6.13 – Célula de conexão analítica interligada a uma célula de aprendizagem em comparação a um neurônio biológico. Primeiramente célula C1 recebe os dois sinais de graus de crença que são analisados pela EEB equacionando-os e determinando um grau de crença resultante. A célula C2 de aprendizagem capta o grau de crença resultante da saída da célula C1 e o considera como padrão inicial para aplicar o algoritmo de aprendizagem. Aplicando o algoritmo de aprendizagem, a saída da célula C2 só vai apresentar grau de crença máximo se houver coincidências nos graus de crenças aplicados nas entradas da célula de conexão analítica C1. Quando os valores aplicados nas entradas são diferentes, estas diferenças são computadas pela EEB da célula de conexão analítica e transmitidas para a célula de aprendizagem C2, onde os valores são ponderados conforme o algoritmo de aprendizagem. O modelo apresentado na figura 6.13 é aperfeiçoado pela inclusão da célula de memorização de padrões conforme mostra a figura 6.14. À medida que o processo de aplicação de padrões iguais nas entradas da célula de conexão analítica é iniciado, a célula de aprendizagem vai recebendo valores iguais e, em seqüência, vai entrando num processo de aprendizagem. Quando o processo de aprendizagem vai se desenrolando, ocorre o acréscimo gradativo no grau de crença resultante da saída. Este valor de saída é 152
utilizado como fator de memorização m para uma célula de memorização que é criada, automaticamente, no início do processo quando a célula de aprendizagem detecta o padrão a ser aprendido. Portanto, novas funções são acrescentadas quando ao neurônio artificial é acrescentada uma célula de memorização permitindo memorizar e extrair o valor aprendido.
Figura 6.14 – Aperfeiçoamento do neurônio artificial com a inclusão da célula de memorização de padrões.
Vários procedimentos podem ser acrescentados na configuração anterior para seu aperfeiçoamento. O padrão armazenado na célula de memorização de padrões pode ser extraído pela aplicação do sinal de ativação a=1. Quando a célula de aprendizagem, sendo preparada para aprender um padrão de verdade ou de falsidade, detecta qual é o padrão a ser aprendido é definido qual tipo de célula de memorização será criado para compor o par aprendizagem/memorização do neurônio artificial. Isto estabelece duas saídas de valores sempre iguais; uma para o grau de crença resultante, que é o valor aprendido, e outra, que é o grau de crença memorizado. As células de conexão lógica simples e seletiva são incluídas na configuração com a função de controlar os sinais analisados. Várias configurações podem ser obtidas para obtenção de um neurônio artificial capaz de modelar o neurônio biológico. Com a inclusão de apenas uma Célula de conexão seletiva, podemos 153
compor uma Unidade Neural Artificial Paraconsistente denominada de ParaPerceptron. O Para-Perceptron com uma célula de conexão lógica seletiva para controle dos valores dos sinais na saída é mostrada na figura 6.15.
Figura 6.15 –Neurônio Artificial Paraconsistente: Para-Perceptron, com controle nos sinais de saída. O sinal Cons permite uma consulta ao valor do padrão armazenado no Para-Perceptron. Quando o sinal Cons é igual a 1, a saída do padrão armazenado é levado obrigatoriamente pela célula de conexão lógica seletiva C4 para a Indefinição apresentando valor 1/2. O sinal de saída do lado direito da célula de conexão lógica seletiva C4, que nestas condições tem valor 1, é utilizado para ativar a célula de memorização C3 e o valor do padrão memorizado é extraído do Para-Perceptron. Nesta configuração, quando o sinal Cons for igual a 1, será guardado o valor do sinal de memorização m para que, ao término da consulta, o ParaPerceptron volte às condições anteriores. A partir da configuração anterior, o Para-Perceptron pode ser modificado para ter dois sinais de controle independentes. Um dos controles é o 154
sinal Cons que, ao fazer a consulta, extrai o padrão armazenado e indefine a unidade para análises posteriores, inibindo a saída do padrão aprendido. O outro sinal de controle é o Contr que, quando ativo ( Contr =1), obriga a apresentação na saída do valor do padrão armazenado na célula de memorização. A figura 6.16 mostra esta configuração, onde é incluída uma célula de conexão lógica simples que faz a maximização.
Figura 6.16 – Para-Perceptron com duas saídas e dois sinais de controle. Considerando que, em uma Rede Neural Artificial Paraconsistente RNAP, vários Para-perceptrons serão interligados em camadas de diferentes configurações, o sinal Contr pode ser utilizado, por exemplo, para informar ao neurônio instalado no início da rede que todas as células, isto é, toda a rede aprendeu o padrão. Esta informação é obtida considerando o sinal Contr como uma realimentação da saída, na forma do valor do grau de crença resultante. Quando o grau de crença resultante do final da rede estiver com valor 1, o sinal de controle Contr será igual a 1, e como conseqüência, o padrão que está sendo aplicado na entrada do neurônio estará aparecendo em sua plenitude 155
na saída do padrão armazenado.
6.5 - Modelos de Para-Perceptrons As interligações entre Células Neurais Artificiais Paraconsistentes permitem a construção de vários modelos de Para-Perceptrons com características próprias que procuram um funcionamento aproximado ao do neurônio biológico. Uma configuração que traz características físicas e funções mais aproximadas do Para-Perceptron com as de um neurônio biológico é quando considera-se uma única saída de valores. Este modelo é obtido com a inclusão na configuração anterior, de duas células de conexão lógica simples, uma que faz maximização e a outra que faz a minimização. A inclusão destas duas células possibilita um único direcionamento no sinal de saída, conforme mostra a figura 6.17.
156
Figura 6.17 – Para-Perceptron com uma única saída de valores. A possibilidade de uma única saída é interessante para o projeto de uma Rede Neural Artificial Paraconsistente RNAP, na qual o sinal Cons tem a função de permitir que apenas os valores de sinais que foram memorizados possam ser utilizados para análises posteriores, inibindo qualquer sinal que esteja sendo aprendido. Esta análise pode ser extrapolada para um modelo em que é feita a comparação de funcionamento entre um neurônio biológico com vários dendritos receptores de informações. Neste aperfeiçoamento várias células de conexão analítica interligadas aumentam o número de sinais de graus de crença aplicados, para serem analisados e aprendidos. A figura 6.18 mostra uma sugestão de um modelo expandido, possibilitando oito valores de entrada.
Figura 6.18 - Modelo de um Para-Perceptron com expansão de entradas para aplicação de oito valores de sinais para análise. Para expandir o número de entradas, são interligadas células de conexão analítica que vão equacionando pares de valores de graus de crença até 157
a análise chegar a entrada da célula de aprendizagem. Números pares ou ímpares de entradas podem ser facilmente configurados, modificando ligeiramente as ligações entre as células de conexão analíticas.
6.6 - Ensaio de um Para-Perceptron típico Utilizando valores significativos apresentaremos um ensaio baseado em uma configuração de um Para-Perceptron típico. A configuração consiste em uma célula de conexão analítica interligada a uma célula de aprendizagem que constituem o núcleo dos diferentes modelos apresentados. A figura 6.19 apresenta o modelo de Para-Perceptron típico utilizado no ensaio.
158
Figura 6.19 – Para-Perceptron típico utilizado no ensaio. Por facilidade, foram considerados como valores de entrada sinais de valores discretos de 0, 0.25, 0.5, 0.75 e 1. Estes valores foram escolhidos por serem significativos para este tipo de ensaio. Os resultados encontrados, utilizando estes valores e esta configuração simples, podem ser facilmente extrapolados para considerações conclusivas quando se deseja construir configurações de Para-Perceptrons de maior complexidade. A tabela da figura 6.20 mostra os valores aplicados nas entradas e os resultados obtidos no ensaio.
Figura 6.20 - Tabela com resultados do ensaio em um Para-Perceptron típico. Na primeira linha da tabela, os valores tendem à unidade. Isto acontece porque, inicialmente, a célula de aprendizagem captou o padrão de Falsidade como o padrão a ser aprendido. Verifica-se na última coluna, que os resultados finais são os valores de saída da célula de conexão analítica, obtidos através da aplicação da EEB nos sinais de entrada.
6.7 - Considerações Finais As Células Neurais Artificiais Paraconsistentes possuem características de funcionamento distintas e, quando convenientemente configuradas, permitem a construção de vários diferentes tipos de Unidades Neurais 159
Artificiais Paraconsistentes que denominamos de Para-Perceptrons. O Para-Perceptron é um conjunto de células interligadas que apresenta funcionamento e características inspiradas no neurônio biológico, sendo considerado um Neurônio Artificial Paraconsistente. Com diversas configurações das células, o Neurônio Artificial Paraconsistente (Para-Perceptron) pode ser aperfeiçoado de várias formas e adiquirir características funcionais próximas às apresentadas pelo neurônio biológico. O Para-Perceptron é projetado exclusivamente com Células Neurais Artificiais Paraconsistentes e tem capacidade de receber n sinais analógicos de valores reais positivos entre 0 e 1, analisá-los através da EEB e proporcionar resultados com valores sempre dentro do intervalo real fechado [0,1]. O Para-Perceptron possui também a capacidade de aprender, memorizar e desaprender padrões. Neste processo, a rapidez de aprendizagem e desaprendizagem pode ser ajustada, portanto o procedimento de aprendizado/memorização pode ser feito de forma lenta ou rápida controlada por valores externos representados por fatores de aprendizagem F A e desaprendizagem FDA. O modelo do Para-Perceptron apresentado neste capítulo permite a memorização dos padrões aprendidos e oferece possibilidades de consultas a estes padrões armazenados por fontes externas. Os resultados do ensaio apresentados e as sugestões de várias configurações viabilizam implementações de projetos dos modelos do neurônio biológico completos que irão compor Redes Neurais Artificiais Paraconsistentes (RNAP) para aplicações diversas em Robótica e Inteligência Artificial. Neste capítulo apenas apresentamos o modelo do Para-Perceptron típico e algumas variações da configuração que vão permitir projetos para aplicações práticas e diretas. As aplicações do Para-Perceptron como componente principal de Redes Neurais serão estudadas nos próximos capítulos. 6.8- Exercícios 1- Descreva em que consiste o Neurônio Artificial Paraconsistente Para-Perceptron. 2- Explique quais são as funções de cada CNAP’s que compõem o Para-Perceptron. 3- Quais são as três partes principais do Neurônio Biológico? 4- O que é Sinapse ? 160
5- Como são transmitidas as informações no cérebro humano? 6- O que significa potencial de ação ? 7- Explique os significados dos princípios da integração espacial e temporal dos estímulos em um neurônio biológico. 8- Descreva o funcionamento básico do Threshold Logic Unit (TLU). 9- Descreva o funcionamento básico do Perceptron. 10- Explique a finalidade da função de ativação g(s) em um Perceptron. 11- No Para-Perceptron, qual é a CNAP que tem a função considerada promotora da Sinapse do neurônio biológico? 12- Descreva o funcionamento de um Para-Perceptron típico. Compare as funções de cada CNAP utilizada no Para-Perceptron com as funções do neurônio biológico. 13- Faça o esquema e descreva o funcionamento do modelo de um Para-Perceptron com duas saídas e dois sinais de controle. 14- Faça o esquema e descreva o funcionamento do modelo de um Para-Perceptron com uma única saída de valores. 15- Faça o esquema e descreva o funcionamento do modelo de um Para-Perceptron com expansão de entradas para aplicação de oito valores de sinais para análise. 15- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável de um ParaPerceptron típico. 16 - Elabore em linguagem de programação C ( ou em outra linguagem que você domine) o programa executável de um ParaPerceptron com expansão de entradas para aplicação de oito valores de sinais para análise.
161
CAPÍTULO 7 AS UNIDADES NEURAIS ARTIFICIAIS PARACONSISTENTES
As Unidades Neurais Artificiais Paraconsistentes UNAP’s, assim como o Para-Perceptron, são aglomerados de Células Neurais Artificiais Paraconsistentes devidamente interligadas formando blocos com configurações distintas e com funções definidas. Há vários tipos de UNAP’s, de forma que cada um tem as suas células componentes conectadas com condições de tratar e equacionar sinais de informações por meio de análises baseadas nos conceitos estruturais da Lógica Paraconsistente Anotada. Com as interligações das células serão configuradas diferentes tipos de UNAP’s que têm funções distintas, como conexão, aprendizado, memorização, competição e seleção, sempre fazendo o tratamento dos sinais representativos de graus de crenças, através da análise paraconsistente com base na Equação Estrutural Básica (EEB). As Unidades Neurais Artificiais Paraconsistentes apresentadas neste capítulo juntamente com o Para-Perceptron serão os componentes básicos utilizados para construção da Rede Neural Artificial Paraconsistente RNAP. Na Rede Neural Artificial Paraconsistente, as UNAP’s serão conectadas para formar diversos sistemas de análises com capacidade de efetuar processamento de sinais semelhante a determinadas funções mentais do cérebro.
7.1 - Introdução Os procedimentos para se fazer análises entre valores de graus de crenças baseados na Lógica Paraconsistente Anotada mostram que as Células Neurais Artificiais Paraconsistentes têm um comportamento funcional 162
similar aos modelos clássicos de Neurônios biológicos, como os utilizados em Redes Neurais Artificiais. Podemos definir uma UNAP como pequenos aglomerados de Células Neurais Artificiais Paraconsistentes que analisam e modelam sinais elétricos ou valores lógico inspirados no comportamento dos neurônios biológicos. Estas unidades básicas interligadas entre si vão estruturar e dar a sustentação aos projetos das Redes Neurais Artificiais Paraconsistentes. Portanto, a Rede Neural Artificial Paraconsistente será elaborada exclusivamente com Células construídas a partir dos conceitos teóricos estruturais da Lógica Paraconsistente Anotada de anotação com dois valores LPA2v estudada no capítulo2 . Uma Rede Neural Artificial Paraconsistente, exatamente como as redes neurais artificiais tradicionais, é modelada para ser capaz de processar sinais, inspirada no funcionamento do cérebro humano. A Célula Neural Artificial Paraconsistente CNAP quando ativada através de um algoritmo de aprendizagem apresenta como resposta, sinais de características idênticas às funções sigmóides positiva e simétrica, utilizadas no Neurônio Artificial Perceptron. As CNAP’s, além de serem mais simples, têm a vantagem de proporcionar condições de ajustes externos através de variação dos fatores de aprendizagem FA e de desaprendizagem FDA. A possibilidade da variação destes ajustes capacita a célula a dar respostas diferentes com mudança das suas características funcionais, como velocidade de resposta e variação da forma de onda, desde uma função degrau, até uma função monotônica, com ou sem simetria.
7.2 - As Células Componentes As interligações entre as células componentes da família de Células Neurais Artificiais Paraconsistentes vão criar módulos de análises paraconsistentes denominados de Unidades Neurais Artificiais Paraconsistentes UNAP. As Células Neurais Artificiais Paraconsistentes de diferentes tipos, configurando as Unidades Neurais Artificiais Paraconsistentes (UNAP), definem uma função específica e particular a cada módulo. Portanto, as UNAP’s são representadas como blocos de funções Neurais Paraconsistentes básicas que, convenientemente interligados, vão constituir Redes Neurais Paraconsistentes que têm como objetivo principal o modelamento do processo do tratamento de sinais que acontece no funcionamento do cérebro. Será apresentado um resumo da função para cada célula componente da família de Células Neurais Artificiais Paraconsistentes, juntamente com a 163
apresentação do seus símbolos simplificados. Neste resumo, as suas principais características de resposta com todas as informações são suficientes para o entendimento funcional das Unidades Neurais Artificiais Paraconsistentes que serão construídas. Conforme foi visto, a família de Células Neurais Artificiais Paraconsistentes é composta basicamente de oito tipos de células que são descritos a seguir:
7.2.1 - Célula Neural Artificial Paraconsistente de decisão
Figura 7.1 - Símbolo e equações da célula de decisão. A Célula Neural Artificial Paraconsistente de decisão é geralmente utilizada para dar uma definição final à análise paraconsistente. Esta Célula faz a análise paraconsistente encontrando, através da Equação Estrutural Básica (EEB), qual é o valor do grau de crença resultante atribuído à Proposição. A Proposição vem representada pelo par ordenado (µ1, µ2), grau de crença e grau de descrença, respectivamente. Um grau de crença resultante de valor 1/2 significa que a análise result0ou em uma indefinição. A indefinição é ocasionada por um grau de Certeza de valor baixo, calculado pela EEB. O fator de tolerância à decisão FTD é ajustado externamente para determinar os limites: máximo e mínimo para a análise ser considerada indefinida. As células de decisão podem sofrer variações na sua forma básica como as apresentadas a seguir:
164
Figura 7.2 - Célula de decisão com entrada do grau de descrença complementada. Na Lógica Paraconsistente Anotada, um grau de crença pode ser considerado como um complemento à unidade de um grau de descrença. Portanto, a Célula de decisão com entrada do grau de descrença complementada, possibilita que toda a análise paraconsistente seja feita apenas com valores de graus de crença.
7.2.2 - Célula Neural Artificial Paraconsistente de conexão analítica
Figura 7.3 - Símbolo e equações da célula de conexão analítica. A Célula Neural Artificial Paraconsistente de Conexão analítica tem a função de associar células à Rede Neural possibilitando o processamento de informações de modo paralelo e distribuído. As interligações entre as Células de conexão são feitas de acordo com a finalidade específica de cada região da Rede. Por exemplo: as células se conectam formando Unidades Neurais Paraconsistentes para que certa região da rede tenha uma função analítica definida. 165
As Células de conexão têm o seu funcionamento otimizado através de ajustes dos valores dos fatores de tolerância à Certeza e à Contradição.
7.2.3 - Célula Neural Artificial Paraconsistente de conexão lógica simples. Esta célula tem a função de estabelecer conectivos lógicos entre sinais representativos de graus de crença. As principais células de conexão lógica são as que fazem os conectivos OR de maximização e AND de minimização. A figura 7.4 apresenta o símbolo e as equações de uma célula de maximização.
Figura 7.4 - Símbolo e equações da célula de conexão lógica simples para um processo de maximização. A próxima figura apresenta o símbolo e as equações da Célula de conexão lógica simples que faz o processo de minimização.
Figura 7.5 - Símbolo e equações da célula de conexão lógica simples para um processo de minimização. As duas células de conexão lógica simples têm suas saídas totalmente 166
dependentes da análise efetuada através da EEB.
7.2.4 - Célula Neural Artificial Paraconsistente de conexão lógica seletiva. Esta célula faz as funções de conexão lógica de maximização ou de minimização selecionando um dos sinais de entrada. A CNAPClse tem duas entradas e duas saídas onde cada saída corresponde ao seu respectivo sinal de entrada. Na sua ação o sinal selecionado é conectado à sua respectiva saída e saída correspondente ao sinal não conectado será neutralizada. No processo de maximização, o sinal de maior valor tem a sua passagem livre e aparece na sua respectiva saída e o sinal de menor valor é retido. Na saída do sinal retido aparece um valor de indefinição 1/2. No processo de minimização, o sinal de maior valor é retido com a sua correspondente saída apresentando indefinição de valor 1/2 e o sinal de menor valor tem passagem livre pela célula. As figuras 7.6 e 7.7 mostram os símbolos e as equações das células de maximização e de minimização, respectivamente. Convencionalmente, se os sinais forem iguais a saída conectada é a da direita, correspondente ao sinal de entrada µ1B.
Figura 7.6 - Símbolo e equações da célula de conexão lógica seletiva para um processo de maximização.
167
Figura 7.7 - Símbolo e equações da célula de conexão lógica seletiva para um processo de minimização.
7.2.5 - Célula Neural Artificial Paraconsistente de aprendizagem A Célula Neural Artificial Paraconsistente de aprendizagem é uma célula de conexão com a saída µ1R interligada à entrada do grau de descrença complementado µ2C. Sucessivos valores aplicados à entrada do grau de crença µ1 resultam no aumento gradativo do grau de crença resultante da saída m1r. Esta Célula pode funcionar de dois modos: para aprendizado do padrão de Verdade, onde são aplicados valores µ1=1, sucessivamente, até o grau de crença resultante na saída chegar a µ1r=1 e para o aprendizado do padrão de Falsidade onde são aplicados valores µ1=0 até o grau de crença resultante chegar a µ1r=1. Neste caso, a entrada do grau de crença é complementada µ1c. As figuras 7.8 e 7.9 mostram os símbolos, equações e os gráficos dos sinais de saída das células de aprendizagem de padrão de Verdade e de Falsidade, respectivamente.
Figura 7.8 - Símbolo e gráficos da saída da célula de aprendizagem padrão de Verdade.
168
Figura 7.9 - Símbolo e gráficos da saída da célula de aprendizagem padrão de Falsidade. Depois que a Célula aprendeu um determinado padrão, se forem aplicados, insistentemente, valores diferentes na entrada, vai ocorrer o decaimento gradativo do grau de crença resultante na saída, passando por um valor de indefinição 1/2 até chegar a zero. Neste caso, considera-se que a célula aprendeu o novo padrão. Para confirmação, é complementada a entrada do grau de crença e a saída é mudada para 1 (Operador NOT). Um fator de aprendizagem FA e outro de desaprendizagem FDA, são inseridos na Equação Estrutural Básica (EEB), possibilitando ajustes que provocam lentidão ou rapidez no processo. Através de um algoritmo completo, uma célula pode aprender e desaprender qualquer padrão aplicado na sua entrada. Em uma Rede Neural Paraconsistente, as células de aprendizagem são interligadas às unidades que servem para captar padrões nos sinais processados internamente. Também são utilizadas para captar sinais primários que, devidamente analisados pela rede paraconsistente, formão sinais de crença que serão processados por unidades internas.
7.2.6 - Célula Neural Artificial Paraconsistente de memorização A Célula Neural Artificial Paraconsistente de memorização serve para armazenar padrões aprendidos pelas células de aprendizagem. A célula de memorização tem as suas duas entradas conectadas e podem ser de dois tipos: a Célula memória de Verdade, que memoriza padrão de Verdade e a Célula memória de Falsidade, que memoriza padrão de Falsidade. Para ambas as células de memorização apresentarem o padrão memorizado na saída, um sinal de nível 1 é aplicado na entrada. Na Célula memória de Falsidade, a presença de um nível lógico 1 resulta em um nível 0 apresentado na sua saída. A figura 7.10 apresenta uma célula Memória de Falsidade com os gráficos das características de entrada e saída dos sinais.
Figura 7.10 - Célula de memória de Falsidade com gráficos de entrada e saída. 169
Na Célula memória de Verdade, aplicando um sinal de nível 1, o mesmo sinal será apresentado na saída. Na figura 7.11 apresentamos uma célula de memorização de Verdade com os gráficos das características de entrada e saída.
Figura 7.11 - Célula de memória de Verdade com gráficos de entrada e saída. Quando um valor real intermediário entre 0 e 1 é aplicado na entrada, um valor proporcional será obtido pela Equação Estrutural Básica, conforme é mostrado nos gráficos ao lado dos símbolos das células de memorização.
7.2.7 - Célula Neural Artificial Paraconsistente de passagem A Célula Neural Artificial Paraconsistente de passagem tem a função de canalizar sinais para determinadas regiões da rede com possibilidade de aplicações de conectivos que selecionam o sinal de menor ou de maior valor para a análise. Um fator de tolerância à Certeza Ftc é comparado ao sinal. Se o valor do sinal aplicado for maior que o fator de tolerância, o sinal de saída será o mesmo que está aplicado à entrada; caso contrario, a saída será uma indefinição de valor 1/2. O gráfico de entrada e saída, juntamente com o símbolo da célula, são mostrados na figura 7.12.
Figura 7.12 - Célula de passagem com conectivos e gráficos de entrada e saída. 170
7.2.8 - Célula Neural Artificial Paraconsistente de complementação A Célula Neural Artificial Paraconsistente de complementação é uma célula que faz o complemento em relação à unidade do sinal aplicado a sua entrada. É basicamente uma célula de memorização do padrão de Falsidade com um Fator de tolerância à Certeza. Se o valor do sinal que é aplicado for maior que o fator de tolerância, o sinal de saída será o mesmo que está aplicado à entrada; caso contrário, a saída será uma indefinição de valor 1/2. Na figura 7.13 apresentamos o símbolo da Célula Neural Artificial Paraconsistente de complementação.
Figura 7.13 - Célula de passagem com conectivos e gráficos de entrada e saída.
7.3- Unidades Neurais Artificiais Paraconsistentes UNAP’s As Unidades Neurais Artificiais Paraconsistentes constituem-se em aglomerados de Células Neurais Paraconsistentes convenientemente interligadas para apresentar uma determinada função. Estas unidades serão conectadas entre si para compor a estrutura básica funcional das Redes Neurais Artificiais Paraconsistentes RNAP que têm o objetivo de processar sinais elétricos com características de funcionamento inspirado no cérebro humano. Cada unidade neural é composta por pequeno número de Células Neurais Artificiais Paraconsistentes cujo funcionamento foi exposto através dos algoritmos e equações. A série de unidades neurais construída com interligações de células, é apresentada a seguir.
171
7.3.1 - A Unidade Neural Artificial Paraconsistente de aprendizagem e memorização de padrões UNAP-amp A Unidade Neural Artificial Paraconsistente de aprendizagem e memorização é composta por um par de células funcionando em conjunto. A célula de aprendizagem que tem a função básica de aprender o padrão aplicado à sua entrada induz à criação da célula de memorização do padrão aprendido. Logo que é definido pelo algoritmo da célula de aprendizado qual é o padrão a ser aprendido é criada uma célula de memorização de padrão idêntico constituindo a Unidade Neural Paraconsistente de aprendizado e memorização. A figura 7.14 mostra a UNAP-amp e o seu algoritmo simplificado.
Figura 7.14 - Unidade Neural Artificial Paraconsistente de aprendizado e memorização de padrões UNAP-amp. Na célula de aprendizagem, o sinal m é gerado logo após a análise inicial, para definir qual é o padrão a ser aprendido. O tipo da célula de memorização vai depender do sinal m enviado pela célula de aprendizagem.
7.3.2 - A Unidade Neural Artificial Paraconsistente de aprendizagem com ativação por maximização UNAP-am A Unidade Neural Artificial Paraconsistente de aprendizagem com ativação por maximização é composta por uma célula de aprendizagem e por uma célula de conexão lógica simples num processo de maximização. Um sinal externo ext aplicado na entrada da célula de maximização determina o funcionamento da unidade. Quando o sinal externo ext estiver com o valor 1, a entrada do grau de descrença complementado da célula de aprendizagem vai forçosamente ao valor 1. A célula de aprendizagem com o valor do grau de descrença 172
complementado igual a 1 fica com as características de uma célula treinada. Se a entrada do grau de crença for complementado, a célula aprendeu o padrão de Falsidade. Se a entrada do grau de crença não estiver complementado, a célula aprendeu o padrão de Verdade. Se o sinal externo ext estiver com valor 0 a célula de aprendizagem fica livre para proceder o aprendizado ou desaprendizado, dependendo do padrão aplicado na sua entrada µ1. A figura 7.15 mostra a UNAP-am.
Figura 7.15 - Unidade Neural Artificial Paraconsistente de aprendizagem com ativação por maximização.
7.3.3 - A Unidade Neural Artificial Paraconsistente de aprendizagem, controle e memorização de padrões - UNAP-acm A Unidade Neural Artificial Paraconsistente de aprendizagem, controle e memorização de padrões é uma composição das duas unidades anteriores. Os dois sinais ext1 e ext2 controlam o funcionamento da Unidade. A figura 7.16 apresenta a configuração da UNAP-acm. O sinal ext1 faz o controle da célula de aprendizagem que recebe o padrão aplicado na entrada. Quando o sinal ext1 estiver em 1, o funcionamento da célula será o de uma célula treinada com o padrão correspondente à sua configuração. Quando o sinal ext1 estiver em 0 a célula estará livre para aprender e desaprender padrões. O sinal ext2 tem a função de fazer o controle da célula de memorização que apresenta na saída o padrão aprendido.
173
Quando o sinal ext2 estiver em 1 obriga a célula de memorização a apresentar seu padrão memorizado. Quando o sinal ext2 estiver em 1/2 a saída da célula de memorização estará em indefinição, apresentando na saída o valor 1/2. O sinal ext2 igual a 0, obriga a célula de memorização a apresentar na saída o padrão memorizado negado.
Figura 7.16 - Unidade Neural Artificial Paraconsistente de aprendizagem, controle e memorização de padrões UNAP-acm.
7.3.4 - A Unidade Neural Artificial Paraconsistente de aprendizagem com análise instantânea UNAP-AI A Unidade Neural Artificial Paraconsistente de aprendizagem com análise instantânea UNAP-AI é composta por duas células de aprendizagem e uma célula de conexão analítica. Os padrões aprendidos pelas células de aprendizagem podem ser de qualquer tipo dependendo, do padrão inicial aplicado na entrada. Os sinais de saídas das células de aprendizagem são analisados instantaneamente pela célula de conexão que faz uma análise paraconsistente 174
através da EEB. A figura 7.17 mostra a UNAP-AI junto com o seu algoritmo simplificado.
Figura 7.17 - Unidade Neural Artificial Paraconsistente de aprendizagem com Análise instantânea.
7.3.5 - A Unidade Neural Artificial Paraconsistente de aprendizagem por igualdade de padrões UNAPa-PIP Esta Unidade é composta por duas Células Neurais Artificiais Paraconsistentes: uma célula de conexão analítica e uma célula de aprendizagem. A função básica da UNAPa-PIP consiste no aprendizado do padrão quando há igualdade repetitiva nos sinais aplicados nas entradas A e B. Nesta Unidade Neural Paraconsistente a similaridade detectada é somente com padrões do mesmo tipo, isto é, igualdade repetitiva de padrões de falsidade, 0 em A e 0 em B, ou igualdade repetitiva de padrões de verdade 1 em A e 1 em B. À medida que os valores dos graus de crença µ1A e µ1Bsão aplicados na entrada da célula de conexão analítica a célula de aprendizado vai totalizando os resultados da análise. Se houver coincidências repetitivas de padrões iguais a zero ou a 1 a saída da célula de aprendizagem tende a 1 detectando a igualdade de padrões entre os dois pontos. O aparecimento de padrões não similares na entrada resulta na queda gradativa no valor do sinal de crença na saída, portanto a igualdade só é confirmada quando o grau de crença resultante na saída chegar a 1.
175
A figura 7.18 mostra a UNAPa-PIP e o seu algoritmo simplificado.
Figura 7.18 - Unidade Neural Artificial Paraconsistente de aprendizado por similaridade de padrões.
7.3.6 - A Unidade Neural Artificial Paraconsistente de aprendizagem por repetitividade de pares de padrões - UNAPa-PRPP Esta Unidade é composta por quatro Células Neurais Artificiais Paraconsistentes: uma célula de conexão analítica e três células de aprendizagem. São instaladas duas células de aprendizagem nas entradas da Célula de conexão possibilitando a unidade a captar coincidências de repetição de sinais aplicados nas entradas. Os padrões coincidentes repetitivos que serão captados nesta unidade podem vir com padrões iguais PA=0 e PB = 0 ou PA =1 e PB = 1 ou podem vir com coincidências repetitivas de pares de padrões desiguais como: PA=0 e PB = 1 ou PA =1 e PB = 0. Em qualquer um dos casos, se houver coincidência repetitiva de pares de padrões, tem como conseqüência o aumento do grau de crença na saída. A figura 7.19 mostra a UNAPa- PRPP e o seu algoritmo simplificado.
176
Figura 7.19 - Unidade Neural Artificial Paraconsistente de aprendizado por similaridade de padrões.
7.3.7 - A Unidade Neural Artificial Paraconsistente de extração de máximo - UNAPEmax A Unidade Neural Artificial Paraconsistente de Extração de máximo é constituída de várias células de conexão lógica simples de maximização (OR) e por uma única célula de passagem. A Célula de passagem tem a função de canalizar para a saída o sinal do grau de crença de maior valor, sendo o mesmo comparado a um fator de tolerância à Certeza. O número de células de conexão lógica simples depende da quantidade de sinais recebidos para análise. A maximização entre os sinais é feita através das configurações das células de conexão lógica simples e o sinal de maior valor, que representa o grupo resultante, tem o grau de crença apresentado na saída da unidade. A figura 7.20 apresenta dois tipos de Unidade Neurais de extração de máximo; um, para número de sinais pares e, outro, para números ímpares. Para se obter a extração de máximo entre mais sinais aplicados nas entradas da unidade basta repetir as configurações das células de lógica simples 177
aumentando-se o número de entradas.
Figura 7.20 - Unidade Neural Artificial Paraconsistente de Extração de máximo para várias entradas.
7.3.8 - Unidade Neural Artificial Paraconsistente de extração de mínimo - UNAPEmim A Unidade Neural Artificial Paraconsistente de Extração de mínimo é constituída de várias células de conexão lógica simples de minimização (AND) e por uma única célula de passagem. A Célula de passagem tem a função de canalizar para a saída o sinal do grau de crença de menor valor sendo o mesmo comparado a um fator de tolerância à Certeza que vai definir se o valor mínimo é suficiente para prosseguir ou é considerado indefinido. O número de células de conexão lógica simples depende da quantidade de sinais recebidos para análise. O funcionamento é idêntico ao da unidade de extração de máximo com a diferença de que, agora, é feita a minimização nos sinais. A figura 7.21 apresenta dois tipos de Unidades 178
Neurais de extração de mínimo.
Figura 7.21 - Unidade Neural Artificial Paraconsistente de Extração de mínimo para várias entradas.
7.3.9 - A Unidade Neural Artificial Paraconsistente de competição seletiva - UNAP-CSe A Unidade Neural Artificial Paraconsistente de competição seletiva é composta por várias células de conexão lógica simples preparadas para um processo de maximização (OR) e por uma única célula de conexão lógica seletiva. O número de células de conexão lógica simples para a maximização vai depender da quantidade de sinais recebidos para análise. Na Rede Neural Paraconsistente, o processamento interno é feito com sinais de graus de crença, portanto, na Unidade Neural Artificial Paraconsistente de Competição seletiva o sinal de grau de crença de maior valor será apresentado na saída da unidade.
179
O sinal que apresenta o menor valor não vence a competição e terá a sua saída com valor 1/2 indicando uma indefinição. Devido à célula de saída ser uma célula de conexão lógica seletiva num processo de maximização, se os valores forem iguais, vence aquele aplicado à direita da célula, conforme ficou convencionado. A figura 7.22 mostra dois tipos de unidade Neurais de competição seletiva.
Figura 7.22 - Unidade Neural Artificial Paraconsistente de Competição com Seleção de sinais máximo para várias entradas. Para competição entre maior número de sinais nas entradas, basta repetir as configurações das células de lógica simples interligando-as à célula de conexão lógica seletiva.
7.3.10 - A Unidade Neural Artificial Paraconsistente de ativação de padrão - UNAP-AT A Unidade Neural Artificial Paraconsistente de ativação de padrão é composta por uma célula de conexão lógica simples num processo de maximização e de células de memorização de padrões. A quantidade de células de memorização de padrão depende da quantidade de padrões de180
sejada para ativação. A figura 7.23 mostra a Unidade de ativação para n padrões ativados.
Figura 7.23 - Unidade Neural Artificial Paraconsistente de ativação. Basta que um dos sinais aplicados na célula de conexão lógica simples de maximização seja de valor 1, que um valor 1 vai aparecer nas entradas das células de memorização e os padrões memorizados aparecerão em suas respectivas saídas. Se um dos sinais estiver em nível lógico 0, o aparecimento dos padrões nas saídas das células de memorização fica dependente do outro sinal de entrada. Se os dois sinais de entrada estiverem com níveis de indefinição as células de memorização apresentarão nas suas saídas níveis de indefinição 1/2.
7.4 - Considerações Finais Neste capítulo apresentamos interligações de Células Neurais Artificiais Paraconsistentes compondo Unidades Neurais Paraconsistentes com funções de detecção de padrões, direcionamento de sinais e controle. Estas Unidades, convenientemente interligadas, vão fazer processamento de sinais de graus de crença na Rede Neural Artificial Paraconsistente. 181
As funções das Unidades Neurais Paraconsistentes são essenciais ao processamento paralelo e conexionista de dados em Redes Neurais Artificiais Paraconsistentes. São as Unidades Neurais Paraconsistentes que vão compor as formas e dar o dimensionamento estrutural à Rede Neural Paraconsistente, cujo objetivo final é apresentar um funcionamento global semelhante ao processamento de sinais elaborado pelo cérebro humano. Todas as Unidades apresentadas efetuam análises através de equações muito simples o que facilita a sua implementação em Redes Neurais através de programas computacionais constituindo-se em uma ótima ferramenta para elaborações de projetos na área da Neurocomputação. Apresentamos dez configurações de UNAP’s, no entanto devido às diversidades de tipos das Células Neurais Artificiais paraconsistentes e facilidades de conexões, outras Unidades com funções diferentes das apresentadas podem ser facilmente implementadas. O importante é que resultados das configurações obtidas demonstram a possibilidade de aplicações reais das Células Neurais Artificiais Paraconsistentes em processamento de sinais de forma paralela e distribuída com características análogas ao processamento de sinais elétricos que ocorre no cérebro humano. As implementações de Redes Neurais utilizando as UNAP’s podem vir a ser concretizadas com muita facilidade, devido principalmente, à simplicidade matemática das equações envolvidas nas análises paraconsistentes e as possibilidades de ajustes que otimizam o processamento de sinais. Com estas características simples, as UNAP’s podem ser facilmente implementadas por hardware ou por software retirando as redes neurais de uma área estritamente acadêmica e proporcionando elaboração de projetos de aplicações reais e práticas.
7.5 - Exercícios 1-Dê a definição de uma Unidade Neural Artificial Paraconsistente UNAP. 2- Descreva o funcionamento de uma Unidade Neural Artificial Paraconsistente de aprendizagem e memorização de padrões UNAP-amp. 3- Descreva o funcionamento de uma Unidade Neural Artificial Paraconsistente de aprendizagem com ativação por maximização UNAPam. 4- Descreva o funcionamento de uma Unidade Neural Artificial 182
Paraconsistente de aprendizagem, controle e memorização de padrões UNAP-amp. 5- Esboce a configuração básica e descreva o funcionamento de uma Unidade Neural Artificial Paraconsistente de aprendizagem com análise instantânea UNAP-AI. 6- Como é composta a Unidade Neural Artificial Paraconsistente de aprendizagem por igualdade de padrões -UNAPa-PIP ? Explique seu funcionamento básico. 7- Descreva o funcionamento e esboce a configuração básica da Unidade Neural Artificial Paraconsistente de aprendizagem por repetitividade de pares de padrões - UNAPa-PRPP. 8- Explique o funcionamento e esboce a configuração da Unidade Neural Artificial Paraconsistente de extração de máximo - UNAPE-max. 9- Descreva o funcionamento da Unidade Neural Artificial Paraconsistente de extração de mínimo - UNAPE-mim. 10- Explique o funcionamento e esboce a configuração básica da Unidade Neural Artificial Paraconsistente de competição seletiva - UNAPCse. 11-Explique o funcionamento da Unidade Neural Artificial Paraconsistente de ativação de padrão - UNAP-AT. 12- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável de uma Unidade Neural Artificial Paraconsistente de competição seletiva - UNAP-Cse. 13- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável de uma Unidade Neural artificial Paraconsistente de ativação de padrão - UNAP-AT. 14- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável de uma Unidade Neural artificial Paraconsistente de aprendizagem por repetitividade de pares de padrões - UNAPa-PRPP.
183
CAPÍTULO 8 OS SISTEMAS NEURAIS ARTIFICIAIS PARACONSISTENTES As diversas configurações das UNAP’s vão formando blocos com características de funcionamento próprias que denominamos de Sistemas Neurais Artificiais Paraconsistentes A aplicação dos Sistemas Neurais Artificiais Paraconsistentes SNAP’s no tratamento de sinais, traz uma inovação na área de inteligência Artificial apresentando novas formas de processamento inspirado no comportamento do cérebro. Os SNAP’s são grupos de Unidades Neurais Artificiais Paraconsistentes devidamente interligadas, compondo diferentes configurações que fazem tratamento, análises e direcionamento de sinais. . Os SNAP’s serão partes integrantes da Rede Neural Artificial Paraconsistente RNAP. Neste capítulo apresentamos dois tipos de SNAP que serão utilizados nas RNAP. O primeiro tipo apresentado é o Sistema Neural Artificial Paraconsistente de aprendizado Condicionado SNAPac, que funciona fazendo um tratamento de sinais com base nas condições impostas pela lei do aprendizado de Hebb. O segundo tipo é o Sistema Neural Artificial Paraconsistente de tratamento de contradições SNAPtc que, de modo contínuo, analisa sinais aplicados nas suas entradas, decidindo sobre situações contraditórias. Todos os Sistemas Neurais Artificiais apresentados são acompanhados de ensaios o que demonstra a eficiência e aplicabilidade dos mesmos.
8.1 - Introdução Os Sistemas Neurais Artificiais Paraconsistentes são módulos configurados e construídos exclusivamente por Unidades Neurais Artificiais 184
Paraconsistentes. O conjunto de Unidades Neurais Paraconsistentes formam os Sistemas Neurais Artificiais Paraconsistentes, cuja função é proporcionar o tratamento de sinais de forma semelhante ao processamento que ocorre no cérebro humano. Dependendo das interligações e dos tipos das UNAP’s componentes, os Sistemas adquirem propriedades especiais para tratar e equacionar os sinais que vão ser processados pela rede. As várias UNAP’s de funções distintas são interligadas para formar dois tipos de Sistemas: Sistema Neural Artificial Paraconsistente de aprendizado Condicionado SNAPac. Este Sistema é configurado para processar sinais, conforme as leis de aprendizado de Hebb. As células são condicionadas a apresentarem certos padrões na saída obtidos através de repetitividade de coincidências. Sistema Neural Artificial Paraconsistente de tratamento de contradições SNAPtc. Este Sistema promove o tratamento de contradições, de modo contínuo, entre sinais de informações, com base na Lógica Paraconsistente Anotada.
8.2 - O Sistema Neural Artificial Paraconsistente de aprendizado condicionado - SNAPac O Sistema Neural Artificial Paraconsistente de aprendizado condicionado SNAPac apresentado neste livro é composto por sete tipos de Células Neurais Artificiais Paraconsistentes, sendo, três células de aprendizagem, uma célula de conexão analítica, uma célula de decisão e duas células de conexão lógica simples para um processo de maximização. As interligações entre estes diferentes tipos de células formam Unidades Neurais Artificiais de aprendizagem de padrões, cujo funcionamento, em conjunto com outras Unidades, fazem associações entre sinais aplicados simultaneamente nas suas entradas. Estas associações de sinais criam, nas células, um processo de aprendizado condicionado semelhante ao aprendizado hebbiano. Todas as Células neurais pertencentes ao Sistema são fundamentadas na Equação Estrutural Básica EEB: µr=(µ1 - µ2 + 1) : 2, originada da Lógica Paraconsistente Anotada. A simplicidade das equações envolvidas proporciona facilidades de implementação do Sistema Neural Artificial Paraconsistente em programas de Neurocomputação. 185
8.3 - O Aprendizado Condicionado Os estudos sobre o cérebro indicam que os neurônios biológicos têm capacidade de aprendizagem. Os Sistemas neurais biológicos funcionam num processo dinâmico que, de alguma forma, modificam suas estruturas para incorporar novas informações, e com isso vão adquirindo habilidades num processo de aprendizado constante. Os Sistemas Neurais Artificiais Paraconsistentes procuram processar dados de forma semelhante ao processamento de sinais elétricos que ocorre no cérebro humano. Seguindo esta linha de raciocínio, o Sistema Neural Artificial Paraconsistente de Aprendizado Condicionado SNAPac é projetado para apresentar um funcionamento que modela o aprendizado condicionado ou reforçado.
8.3.1 - As experiências de Pavlov O processo de aprendizado condicionado foi primeiramente demonstrado pelas experiências de Pavlov. O Aprendizado reforçado ou condicionado baseados nas experiências de Pavlov considera que associações entre padrões sensoriados, com ocorrência anterior, possam ser utilizados para modificação comportamental. A demonstração do clássico aprendizado pavloviano envolveram um cachorro, um prato de comida e uma campainha. Inicialmente era apresentado ao cachorro o prato de comida e, através de um processo operatório feito anteriormente no cachorro, media-se a saliva gerada no seu aparelho gástrico intestinal. Sem o prato de comida, tocava-se Ivan Pavlov (1849 - 1936)Pavslov uma campainha e verificava-se que o som foi fisiologista russo que da campainha não causava salivação no investigou reflexos condicionados cachorro. Procedia-se, então, por repeti- em animais Figura 8.1 – Ivan Pavlov das vezes, a apresentação do prato de cientista russo comida junto com o toque da campainha. Depois de certo tempo, verificava-se que apenas o som da campainha era suficiente para causar a salivação do cachorro. Com esta experiência Pavlov conseguiu condicionar um estímulo sonoro a uma ação de salivação que inicialmente não existia. 186
É chamado de estímulo não condicionado o processo natural do cachorro salivar ao enxergar o prato de comida. Durante o período em que tocou-se a campainha junto com a apresentação do prato de comida ocorreu o aprendizado com estímulo condicionado.
8.3.2 - As regras de aprendizado de Hebb Os resultados dos experimento de Pavlov foram aperfeiçoados para os estudos dos neurônios biológicos resultando nas regras do aprendizado de Hebb, que é uma das funções mais importantes modelada por uma Rede Neural Artificial clássica. O aprendizado Hebbiano é uma continuidade desta linha de pesquisa estendida ao funcionamento das células neurais ou neurônios biológicos. O aprendizado Hebbiano está estruturado na seguinte hipótese: Quando um axônio de uma célula A está próximo o suficiente para excitar uma célula B, e, repetitivamente ou persistentemente, toma parte no disparo desta, algum processo de crescimento ou mudança metabólica acontece em uma ou ambas as células, tal que a eficiência de A, como uma célula capaz de disparar B, é aumentada. Comprovada a existência do aprendizado condicionado é possível o seu modelamento por meio de Redes Neurais Artificiais. O funcionamento básico do SNAPac segue os princípios fundamentais da hipótese do aprendizado condicionado de Hebb. Com base nos experimentos de Pavlov e as regras de aprendizagem de Hebb, o Sistema Neural Artificial Paraconsistente de Aprendizado Condicionado funciona processando sinais sempre considerando associações de padrões que aparecem de forma repetitiva em partes da Rede Neural Artificial Paraconsistente.
8.4 - As Células Componentes do SNAPac Nesta seção vamos apresentar a título de recordação as principais características das Células que compõem o Sistema Neural Artificial Paraconsistente de aprendizado condicionado.
187
8.4.1 - A célula de aprendizagem
Uma célula preparada para aprender o padrão de Falsidade difere da preparada para aprender o padrão de Verdade, porque tem na sua entrada o grau de crença complementado. O funcionamento da célula é baseado na Equação Estrutural Básica EEB da Lógica Paraconsistente, onde para um processo de aprendizagem do padrão de Verdade a equação de aprendizagem é: µr r (k+1) = {µ1 - (µ r ( K )C) FA} + 1 2 onde: µr (k)C = 1- µr (k) sendo 0≤ FA≤1 E para um processo de aprendizagem do padrão de Falsidade a EEB fica: µr (K+1) = {µ1c - (µr(K)C) ) FA } +
1
2 onde: µ1c = 1- µ1 sendo 0≤FA ≤1 Considera-se a Célula completamente treinada quando µr(k+1) = 1. No processo de desaprendizagem é utilizado o fator de desaprendizagem FDA que pode ser de valor diferente do fator de aprendizagem.
188
8.4.2 - A célula de conexão analítica A Célula Neural Artificial de Conexão analítica tem a função de processar sinais conforme a Lógica Paraconsistente Anotada. A análise efetuada pela Célula é processada através da Equação Estrutural Básica EEB: µri = µ1a - µ1bc + 1
2
Dois fatores, um de tolerância à Contradição e o outro de tolerância à Certeza determina a característica da saída, portanto, nesta célula a saída depende das condições dos graus de Certeza e de Contradição.
Se o valor em módulo do grau de Contradição estiver acima do fator de tolerância à Contradição ou ainda, se o grau de Certeza estiver abaixo do valor de tolerância à Certeza, o valor resultante da saída é 1/2 representando uma indefinição. Se o valor do grau de Contradição estiver abaixo do fator de tolerância à Contradição e o grau de Certeza estiver acima do fator de tolerância à Certeza, o valor da saída é o calculado pela EEB. O sinal Sct apenas sinaliza uma indefinição por contradição.
8.4.3 - Célula de decisão A Célula Neural Artificial de decisão tem a função de definir um resultado de saída pela comparação do fator de tolerância à decisão com valor dos graus de crença resultante calculado pela EEB. O fator de decisão se divide em dois valores limites, inferior e superior. Se o grau de crença resultante calculado estiver acima do limite superior, a saída é verdadeira assumindo o grau de crença resultante 1. Se o grau de crença resultante calculado estiver abaixo do limite inferior a saída é falsa e o grau de crença resultante da saída assume o valor 0.
Quando o grau de crença resultante calculado estiver entre os limites superior e inferior a saída é uma indefinição de valor 1/2.
189
8.4.4 - Célula de conexão lógica simples A célula de conexão Lógica simples para um processo de maximização recebe dois sinais nas suas duas entradas e conecta à sua saída o sinal de maior valor. O valor resultante da Equação Estrutural Básica define qual entre os dois sinais é o de maior valor. O processo de maximização é feito pela comparação do grau de crença resultante obtido pela EEB com o valor da indefinição 1/2.
Se o grau de crença resultante for maior ou igual a 1/2 significa que o sinal do grau de crença A é igual ou maior que o sinal do grau de B e se o grau de crença resultante calculado for menor que 1/2, significa que o grau de crença do sinal A é menor que o grau de crença do sinal B.
8.5 - A Configuração Básica do SNAPac O Sistema Neural Artificial Paraconsistente de aprendizado condicionado SNAPac é composto de três células de aprendizagem, duas células de conexão analítica e duas células de conexão lógica de maximização. O SNAPac tem duas entradas onde serão aplicados padrões representados por valores entre 0 e 1. Para melhor detalhamento do funcionamento básico do SNAPac considera-se o valor 0 como representativo do padrão de Falsidade e o valor 1 como padrão de Verdade. O aprendizado condicionado do Sistema paraconsistente vai seguir etapas semelhantes às verificadas pelas experiências de Pavlov, cujos resultados foram importantes para o desenvolvimento do aprendizado condicionado dos neurônios biológicos proposto por Hebb. Considerando um Sistema Neural Artificial Paraconsistente de aprendizado condicionado como um módulo único onde são aplicados dois padrões e obtido uma saída, conforme a figura 8.2.
Figura 8.2 - Comparação entre o SNAPac e o experimento de Pavlov. Seguindo o aprendizado condicionado proposto por Hebb, o padrão 190
B (estímulo sonoro), inicialmente, está com valor de indefinição 1/2 e o padrão A (prato de comida) aparecendo repetitivamente na entrada, provoca um grau de crença resultante µr (salivação) igual a 1, representando um condicionamento natural do Sistema. Na segunda etapa, o padrão B (estímulo sonoro) fica ativo e o padrão A (prato de comida) inativo, como não houve ainda o condicionamento do Sistema o grau de crença resultante mr (salivação) é de valor baixo. Na terceira etapa o padrão B (estímulo sonoro) fica ativo e aparece repetidas vezes junto com o padrão A (prato de comida). O grau de crença resultante µr (salivação) permanece alto, simulando o aprendizado condicionado do sistema. A quarta etapa do treinamento deixa o padrão A (prato de comida) inativo com valor de indefinição 1/2 e o padrão B (estímulo sonoro) continua sendo aplicado na entrada. Nesta quarta etapa, o resultado do aprendizado condicionado aparece quando, mesmo com a desaparecimento do padrão A (prato de comida), o valor do grau de crença resultante da saída µr (salivação) permanece com valor alto. Na figura 8.3 é apresentado o diagrama completo do SNAPac composto por Células Neurais Artificiais Paraconsistentes interligadas.
191
Figura 8.3 - Diagrama do Sistema Neural Artificial Paraconsistente de condicionamento estimulado SNAPac. Para facilitar o entendimento do processo, vamos descrever o funcio192
namento considerando um ensaio onde são utilizados como padrões, sinais aplicados nas entradas do SNAPac representados por valores reais entre 0 e 1. Conforme a configuração da figura 8.3, as Células de aprendizagem C1 e C2 são as receptoras dos padrões aplicados nas entradas. Inicialmente, o Padrão PA aplicado insistentemente na célula de aprendizagem C 1 provoca um aumento na saída SA . Quando a célula C1 estiver totalmente treinada considera-se que ela aprendeu o padrão e a saída S A é igual a 1. Neste processo inicial o padrão P B aplicado na Célula de aprendizagem C 2 é indefinido de valor 1/2, portanto na saída SBo valor continua indefinido. O valor da saída da célula de conexão analítica C3 é calculado pela EEB. Considerando a condição da célula C3 totalmente treinada e a célula C2 indefinida a saída SC da célula C3 vale:
SC = 1 - 1/2 + 1 2
=
0,75
A saída da célula C3 é aplicada na entrada da célula de aprendizagem C4 que aprende o valor de SC aplicado na sua entrada. Como neste processo inicial, o máximo valor que irá aparecer em SC é 0,75 a célula C3 vai apresentar na saída o valor máximo SC=0,75. O valor 0.75 aparece nas entradas das duas células de conexão lógica de maximização C5 e C6. Na célula C5 temos o resultado da célula de aprendizagem C 1 que é SA=1 e o resultado da célula de conexão analítica C3 que vale SC= 0,75, portanto, como C5 trata-se de uma célula que faz a maximização, na sua saída SE teremos o valor 1. Na célula C6, que é outra célula que faz maximização, temos nas suas entradas SB=1/2 e SC= 0,75, portanto na saída S Fteremos o valor 0,75. Na célula C3 o valor do grau de crença resultante de saída e calculado pela EEB, portanto: µ 1R
=
1 - 0.25 + 1 2
=
0,875
A célula C7 é uma célula de decisão onde o Fator de tolerância à decisão define se a saída é Verdadeira, Falsa ou Indefinida. Considerando a título de exemplo que o Fator de decisão esteja ajustado para um limite superior de 0,85, e inferior de 0,15, nesta etapa a saída do Sistema Neural Artificial Paraconsistente é considerado alto, portanto, o grau de crença expressa uma situação verdadeira de valor 1. Consideramos agora a situação em que, apenas o padrão PB é aplicado e na entrada do padrão PA, fica um valor de indefinição 1/2. Como a célula C1 já foi anteriormente treinada, quando na primeira 193
aplicação do valor indefinido do padrão PA, vai existir uma realimentação na sua entrada do grau de descrença temos o valor 1, que é complementado e entra na EEB com valor 0. Portanto, a saída SA é calculada pela EEB sendo: SA
=
1/2 - 0 + 1 2
=
0,75
Da mesma forma é calculado o valor da saída SB da célula C2 com a diferença que ela não foi treinada, portanto, a saída que vai realimentar o grau de descrença é uma indefinição de valor 1/2 e o grau de crença aplicado que vai entrar na EEB é o padrão PB. Vamos considerar que a célula C2 é preparada para aprender padrão de Verdade, portando, sendo PB é de valor 1 o resultado da saída fica: SB
=
1 - 1/2 + 1 2
=
0,75
Com os valores de SA e SB o valor da saída SC da célula de conexão analítica é encontrado pela EEB, portanto: SC
=
0,75 - 0,25 + 1 2
=
0,75
Na primeira etapa, a célula de aprendizagem C4 só aprendeu até 0,75, portanto, não aprendeu o padrão de Verdade e podemos considerar que a sua saída sendo inicialmente 0,75 vai ser complementada aparecendo na EEB como 0,25. Podemos calcular a saída da célula C4 pela EEB, ficando: SD
=
0,75 - 0,25 + 1 2
=
0,75
Nas duas células de conexão lógica de maximização C5 e C6 teremos, respectivamente, como saída SE= 0,75 e SF = 0,75. Na saída da célula de decisão C7 o valor obtido é calculado pela EEB sendo: µ1R
=
0,75 - 0,25 + 1 2
=
0,75
Conforme o ajuste do grau de tolerância à contradição tomado como 194
exemplo, o valor 0,75 será considerado indefinido pela célula de decisão C7, portanto a análise expressa uma situação de indefinição de valor 1/2. Se estes mesmos valores são repetitivamente aplicados nas entradas, o valor da célula C1 vai chegar ao valor mínimo de indefinição igual a 1/2 e a saída SD da célula C4 decresce e, logo após, vai sofrendo um aumento gradativo até chegar ao valor máximo de 0,75. No final, os valores nas entradas da célula de decisão C 7 serão SE = 0,75 devido à maximização feita pela célula C5 e SF =1 devido ao aprendizado da célula C2, resultando portanto, num valor máximo de saída µ1R= 0,875 considerado uma situação Verdadeira. Quando os dois padrões P A e P B aparecerem simultâneo e repetitivamente, as células C1 e C2 aprendem seus respectivos padrões e como resultado deste aprendizado as saídas SA e SB ficam com valor alto 1. A célula C3 que é uma célula de conexão analítica recebe os valores de SA e SB nas entradas, portanto, utilizando a EEB é fácil verificar que, quando estes valores são altos o valor da sua saída SC também é alto. A célula C4 recebendo sinal de valor 1 em sua entrada aprende o padrão de Verdade e, gradativamente, à medida que ocorre coincidências dos dois padrões aplicados nas suas duas entradas vai aumentando o valor da sua saída SD até chegar ao valor alto 1. Sendo nas entradas das células de maximização todos os valores são 1, portanto, o valor do grau de crença resultante na saída da célula de decisão C7 é µ1RC=1 e a saída do Sistema é considerada Verdadeira. Nestas condições, criou-se um aprendizado condicionado onde, mesmo na falta de um dos padrões, a saída alta da célula C 4 que aprendeu o padrão de Verdade gerado pela detecção de repetitividade de padrões nas entradas, prevalece nas células de maximização C 5 e C6 mantendo a conclusão. Para exemplificar, vamos supor que, depois de estabelecido o aprendizado condicionado, ocorra a falta de um dos padrões. Para este cálculo escolheremos que o padrão PA ficou indefinido com valor 1/2. Na saída da célula C1 teremos: SA
=
1/2 - 0 + 1
=
2
Na saída da célula C2: SB
=
1 -0 + 1 2
Na saída da célula C3 :
195
=
1
0,75
SC
=
0,75 - 0 + 1 2
0,875
=
Na saída da célula C4: SD
=
0,75 - 1/2 + 1
=
2
0,625
Na saída da célula C5 temos o valor máximo entre SA e SD : SE
0,75
=
Na saída da célula C6 temos o valor máximo entre SB e SD : SE
=
1
Na saída da célula C7: µ 1R
=
0,75 - 0 + 1 2
=
0,875
Como o valor do grau de crença resultante está acima do limite superior de decisão, a conclusão final é o valor alto considerado como Verdade. Se esta situação de indefinição do padrão A persistir, o valor de saída da célula C4 vai decrescer até chegar ao mínimo SD= 0,75, e o valor mínimo na saída da célula de decisão será µ1R =0,75. O Sistema pode desaprender o aprendizado condicionado se o padrão PA aplicado na entrada da célula C1 mudar do estado de Indefinição para um estado de Falsidade. Conforme ficou definido, o padrão de Falsidade é aplicado com valor PA=0. A ocorrência da aplicação repetidas vezes do padrão P A com valor 0 faz o Sistema esquecer o aprendizado condicionado em que foi inicialmente treinado e ser novamente treinado com padrões diferentes daqueles aprendidos originalmente. Com a aplicação de P A=0 repetitivamente a saída S A diminui gradativamente até chegar em 0. Na saída da célula C4, o valor chega a SD=1/2 e na célula C5 de maximização teríamos o valor de saída SE= 1/2, provocando uma saída da célula de decisão de µ1R= 0,75, portanto uma situação de Indefinição. Nesta situação, conforme foi visto na descrição do funcionamento da 196
célula de aprendizagem, vai haver a ocorrência da confirmação do novo padrão aprendido pela célula CI e sua saída SA é mudada para o valor 1. Com este procedimento previsto no algoritmo de aprendizagem, a tendência do sinal do grau de crença resultante na saída do Sistema é crescer até chegar a 1constituindo-se o novo aprendizado condicionado.
8.6 - Ensaios com o SNAPac O funcionamento do Sistema Neural Artificial Paraconsistente de Aprendizado Condicionado pode ser projetado com modificações no funcionamento das células de aprendizagem de várias formas. As células podem funcionar livremente, isto é, ficam aprendendo ou desaprendendo, conforme os padrões detectados nas entradas. Com isto, o Sistema torna-se dinâmico e vai se modificando de acordo com os padrões aplicados nas entradas. As células podem também ter seus valores de saída memorizados de tal forma que, quando o aprendizado é completado considera-se a célula treinada e o valor 1 é mantido na sua saída como grau de descrença. O Sistema também pode ser projetado para um funcionamento híbrido de modo que possa trabalhar das duas formas. A figura 8.4 mostra uma tabela com os valores obtidos nas etapas do aprendizado condicionado do SNAPac, inclusive realçando a capacidade de aprendizado e desaprendizado do sistema.
Figura 8.4 - Tabela com valores dos ensaios com o SNAPac. A figura 8.5 mostra em forma de gráfico os resultados obtidos no 197
ensaio.
Figura 8.5- Resultados gráficos do ensaio efetuado pelo SNAPac.
8.6.1 - A importância do SNAPac no processo evolutivo da Neurocomputação O aprendizado condicionado é uma das funções mais importantes no processamento de sinais baseado no funcionamento do cérebro humano. O projeto do SNAPac vem demonstrar que o processo de associação de padrões com aprendizado condicionado pode ser facilmente implementado com resultados satisfatórios utilizando processos matemáticos simples e totalmente estruturados pela Lógica Paraconsistente Anotada. O aprendizado Hebbiano proporciona às Redes Neurais Artificiais Paraconsistentes condições de fazer associações entre partes da rede que tratam de proposições diferentes mas que trazem em suas informações semelhanças que podem ser relevantes para o processamento paralelo e conexionista O Sistema Neural Artificial Paraconsistente de aprendizado condicionado, é uma inovação, na área de Neurociência porque permite a implementação de projetos com tratamento de sinais muito parecidos com o 198
processamento efetuado pelo cérebro.
8.7 - Sistema Neural Artificial Paraconsistente de tratamento de Contradições - SNAPtc O Sistema Neural Artificial Paraconsistente de tratamento de contradições (SNAPtc) é um módulo composto de Células Neurais Artificiais Paraconsistentes interligadas convenientemente cuja finalidade é fazer análise instantânea entre três sinais utilizando os conceitos da Lógica Paraconsistente Anotada. O SNAPtc é composto de 8 células interligadas, sendo quatro células de conexão analítica e quatro células de conexão lógica simples. Das células de conexão lógica simples duas são de maximização e duas são de minimização. O SNAPtc tem três entradas para receber os sinais PA, PB e PC de valores reais que variam entre 0 a 1 e uma única saída que apresenta o resultado da análise na forma do grau de crença resultante µ1r. A figura 8.6 mostra o bloco representativo de um SNAPtc.
Figura 8.6 - Bloco representativo de um SNAPtc. Utilizando os conceitos definidos nos capítulos anteriores um sinal de entrada de valor 1 é considerado a expressão de uma proposição Verdadeira e um sinal de valor de 0 considera-se uma proposição Falsa. A Indefinição é representada por um sinal de valor 1/2. Os três sinais aplicados nas entradas do SNAPtc são instantaneamente analisados pelas células neurais onde fazem a verificação e detecção de contradições entre eles. Se os três sinais apresentarem valores iguais, obviamente não há a existência de contradição, no entanto como variam entre 0 e 1 com indepen199
dência entre si, num processo de análise contínuo podem ocorrer contradições de vários níveis. Em qualquer situação, portanto, na ocorrência ou não de contradições, um sinal que representa o grau de crença resultante da análise paraconsistente dos três valores é obtido na saída. Na Rede Neural Artificial Paraconsistente, o sinal resultante do SNAPtc é enviado às outras regiões da rede para que outros sistemas possam efetuar novas análises que podem ser conclusivas para tomada de decisão.
8.8 - As Células Componentes do SNAPtc O Sistema Neural Artificial Paraconsistente de tratamento de contradições é composto por oito células. São utilizadas quatro células de conexão analítica: duas células de conexão lógica simples para um processo de maximização e duas células de conexão lógica simples para um processo de minimização.
Os tipos de Células Neurais do SNAPtc são praticamente os mesmos utilizados no SNAPac. Apenas as células de conexão lógica simples que sendo de minimização diferem das apresentadas anteriormente. Esta célula, apresenta na sua saída, o sinal de menor valor entre os dois aplicados nas suas entradas.
8.9 - A Configuração Básica do SNAPtc Sistemas clássicos baseados na lógica binária encontram dificuldades para processar dados ou informações provenientes de conhecimento incerto. Estes dados, que são informações captadas ou recebidas de vários especialistas, geralmente, vêm em forma de evidências que trazem muitas contradições. O Sistema Neural Artificial Paraconsistente de Análise contraditória recebe três sinais na entrada e através de uma análise paraconsistente apresenta como resultado um valor que representa o consenso entre as três informações. As contradições existentes entre dois valores são agregadas ao terceiro valor, de tal forma que, na saída, predomina o valor proposto pela maioria. A análise é feita pelas células de forma instantânea procedendo todo o processamento em tempo real, semelhante ao funcionamento dos neurônios biológicos. A figura 8.7 mostra a SNAPtc composto por oito células Neurais Arti200
ficiais Paraconsistentes.
Figura 8.7 - Sistema Neural Artificial Paraconsistente de tratamento de contradições. Os padrões PA, PB e PC são valores reais variáveis entre 0 e 1 que representam informações a respeito de uma mesma proposição. Quando o padrão apresentar o valor 1 significa que a informação é a representativa de uma proposição Verdadeira. Quando o padrão vem com o valor 0 significa que é um sinal representativo da proposição Falsa. Uma proposição Indefinida é representada por um padrão de valor 1/2. Quando os três sinais se apresentarem com valor 1, significa que as informações a respeito de uma proposição estão dando uma conotação de Verdade, sem existência de contradições. Se os três sinais se apresentarem com valor 0, as informações a respeito da proposição darão uma conotação de Falsidade à proposição. Na existência de diferença de valores entre dois sinais, significa que existe contradição, portanto deve-se consultar um terceiro especialista, cuja informação ajudará na tomada de decisão. No Sistema Neural Artificial Paraconsistente de tratamento de contra201
dição a consulta ao terceiro especialista é instantânea e contínua. Neste modo de análise, todas as informações, tanto as contraditórias como a do terceiro especialista são relevantes e, portanto, consideradas no resultado. A primeira camada do Sistema é composta por três células de conexão analítica: C1, C2 e C3 cujos sinais são analisados através da Equação Estrutural Básica EEB resultando nos sinais de saída SA, SB e SC. SA
SB
SC
=
PA - PB C + 1
=
PB - PC C + 1
=
PC - PA C + 1
2
2
2
Onde: PB C =1 - PB
Onde: PCC =1 PC
Onde: PAC =1 PA
Nas camadas internas, as células C4 e C6 constituem uma Unidade Neural de maximização de três entradas e as células C5 e C7 uma Unidade Neural de minimização. Na Unidade neural de maximização, o maior valor entre as saídas SA, SB e SC, obtido pelas análises efetuadas nas células da primeira camada, vai aparecer na saída SG. Na unidade Neural de minimização o valor resultante na saída SE será o menor que aparecer nas saídas SA, SB e SC. A célula C8 utiliza a EEB para fazer a última análise entre os sinais apresentados nas saídas SF e SG. Portanto a equação utilizada pela célula C 8 é:
µ1R = SF - SG C + 1 2
Onde: SG C =1 SG
8.10 - Ensaios com o SNAPtc Como demonstração de funcionamento foi feito um ensaio com o SNAPtc, no qual são aplicados valores considerados relevantes para análise. A tabela da figura 8.9 apresenta os resultados obtidos quando são aplicados nas entradas PA, PB e PC os valores 1.0, 0.75, 0.5, 0.25 e 0. A tabela apresenta os valores obtidos na saída µ1R com fator de tolerância à Contradição Ftct=0 e fator de tolerância à Certeza Ftc=1. Portanto, estes valores estão ajustados para não influenciarem nos resultados da análise. 202
Figura 8.8 - Tabela de resultados do ensaio com o SNAPtc aplicando valores nas entradas PA, PB e PC . A figura 8.9 apresenta os resultados da tabela em forma de gráficos para uma melhor visualização.
203
Figura 8.9 - Resultados gráficos do ensaio com o SNAPtc.
8.10.1 - A importância do SNAPtc no processo evolutivo da Neurocomputação O Sistema Neural Paraconsistente de tratamento de contradições SNAPtc é uma efetiva contribuição aos estudos das redes neurais porque apresenta um método inovador no tratamento de sinais contraditórios. O Sistema Neural Paraconsistente de tratamento de contradições demonstra que as Células Neurais Artificiais Paraconsistentes oferecem possibilidades para elaboração de projetos de sistemas que fazem o processamento de sinais de maneira similar ao processamento dos sinais elétricos feito pelo cérebro. 204
O SNAPtc traz, de maneira objetiva e prática, novas formas de aplicações em Redes Neurais em que o tratamento de sinais contraditórios pode ser efetuado em tempo real utilizando componentes de fácil implementação. Os resultados obtidos com o ensaio do SNAPtc demonstram que o mesmo tem capacidade de processar sinais em tempo real, diluindo contradições de forma rápida e instantânea. Em Redes Neurais Paraconsistentes é possível interligar sistemas deste tipo para processar sinais de forma semelhante ao processamento do cérebro humano.
8.11 - Considerações Finais Os Sistemas apresentados neste capítulo vêm demonstrar que as Células Neurais Artificiais Paraconsistentes quando convenientemente interligadas vão compor configurações que proporcionam tratamento de sinais, mesmo sendo contraditórios. O Sistema de aprendizado condicionado baseado nos conceitos dos experimentos de Pavlov e as regras do aprendizado Hebbiano são de extrema importância para modelamento do funcionamento do cérebro. Estes Sistemas foram totalmente projetados com Células Neurais Artificiais Paraconsistentes que são descritas por equações matemáticas simples, facilitando a sua implementação por software ou por hardware. Acreditamos que este inédito método de tratamento de sinais baseado na teoria da Lógica Paraconsistente Anotada, devido à sua maior simplicidade quando comparada com redes neurais clássicas, permita que as funções biológicas neurais sejam melhor compreendidas e interpretadas. Devido à facilidade de implementação das células em projetos de Neurocomputação, as possibilidades de aplicações são enormes, abrindo campo para novas e promissoras pesquisas nesta área.
8.12 - Exercícios 1- Explique como são constituídos os Sistemas Neurais Artificiais Paraconsistentes SNAP’s. 2- Descreva o processo conhecido como “Aprendizado condicionado”. 3- Descreva a regra do aprendizado Hebbiano. 4- Como é o processo conhecido como “Aprendizado não condicionado”? 5- Dê as principais características das CNAP’s componentes do Siste205
ma Neural Artificial Paraconsistente de aprendizado condicionado - SNAPac. 6- Esboce a configuração e descreva o funcionamento do Sistema Neural Artificial Paraconsistente de aprendizado condicionado - SNAPac. 7- Destaque a importância do Sistema Neural Artificial Paraconsistente de aprendizado condicionado - SNAPac na Neurocomputação. 8- Explique o que é um Sistema Neural Artificial Paraconsistente de tratamento de contradições SNAPtc. 9- Esboce a configuração e descreva o funcionamento do Sistema Neural Artificial Paraconsistente de tratamento de contradições SNAPtc. 10- Destaque a importância do Sistema Neural Artificial Paraconsistente de tratamento de contradições SNAPtc na Neurocomputação. 11- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável do Sistema Neural Artificial Paraconsistente de aprendizado condicionado - SNAPac. 12- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável do Sistema Neural Artificial Paraconsistente de tratamento de contradições SNAPtc.
206
CAPÍTULO 9 AS REDES NEURAIS ARTIFICIAIS PARACONSISTENTES Estudaremos a Arquitetura de uma Rede Neural Artificial Paraconsistente RNAP que processa sinais com procedimentos inspirados no funcionamento do cérebro humano. A Rede Neural Artificial Paraconsistente é totalmente construída com as Células Neurais Artificiais Paraconsistentes formando Unidades (UNAP’s) e Sistemas (SNAP’s) que direcionam, tratam e analisam sinais de informações conseguindo-se um modelo muito próximo das funções mentais que caracterizam o comportamento do cérebro humano. Na Arquitetura da RNAP as Unidades Neurais Artificiais Paraconsistentes são interligadas formando fatias (waffers) denominadas de Sistema Neural Artificial de aquisição de conhecimento SNAP’s. Vários Sistemas com configurações distintas são ligados paralelamente recebendo e analisando padrões aplicados nas entradas da RNAP, simultaneamente, permitindo que o tratamento de sinais seja feito de modo paralelo e distribuído. Na Arquitetura da Rede Neural Artificial Paraconsistente, um sistema de direcionamento de sinais permite três estados de funcionamento da Rede: Aprendizagem, Comparação e Lembrança. Neste trabalho, é mostrado um exemplo simplificado de reconhecimento de padrões utilizando uma RNAP que pode ser extensivo a outras funções mais complexas desenvolvidas pelo cérebro. A RNAP traz inovação nos projetos de redes neurais na área da Neurocomputação porque, sendo baseada em uma Lógica Não-Clássica, tem características similares aos processos neurológicos e utiliza componentes traduzidos em equações matemáticas muito simples, sendo de fácil implementação por meio de programação em linguagem computacional simples. 208
9.1 - Introdução As Redes Neurais Artificiais RNA são sistemas de processamento de dados inspirados na organização física do cérebro humano. Quando comparados com os circuitos digitais que funcionam nos computadores, os neurônios biológicos são lentos, mas formam uma rede imensa de células intensamente interconectadas de maneira que todas operam ao mesmo tempo. Este funcionamento paralelo proporciona condições ao cérebro de executar tarefas extremamente complexas, como interpretação de imagens e compreensão de sons, em pequena fração de segundo. Este curto tempo que o cérebro leva para executar estas tarefas é devido ao processamento paralelo que, ao contrário do funcionamento seqüencial do computador, exige pequeno número de etapas para fazer a interpretação e execução. O computador, apesar de ser mais rápido, não consegue tratar informações com ruídos, do tipo difusa, contraditórias e ambígua. Quando é obrigado a tratar estas situações, aumenta considerávelmente o número de etapas para finalizar uma análise e definir uma conclusão. Diferentemente do computador que, por utilizar lógica clássica com características binárias, não suporta a perda de um único bit de informação, o cérebro humano distribui informações entre os neurônios e como resultado todo o sistema de processamento é tolerante a falhas. A tolerância a falhas é uma das características mais importantes do cérebro humano, porque se os neurônios, em uma parte do cérebro forem destruídos os neurônios de outra parte fazem o processamento da parte destruída o que denota a existência de uma memória distribuída. O cérebro humano trabalha de modo paralelo, sempre comparando e encontrando casamento de padrões que, de alguma forma, foram anteriormente adquiridos. No encontro de casamentos, a comparação não é feita utilizando os conceitos da lógica clássica onde apenas duas situações são admitidas, mas sempre de maneira aproximada. Para cada análise comparativa, é procurado sempre o casamento mais aproximado para solução do problema que se apresenta. Outra característica do funcionamento do cérebro é que os neurônios biológicos têm um comportamento próprio baseado na situação local e sua ação particular vai contribuir para formar uma ação ampla ou total. Esta característica é chamada de comportamento emergente onde cada elemento ou célula do processamento vai tomar decisões com base na situação local e cada decisão local tomada por cada célula é agrupada para formar uma decisão global. Quando se deseja modelos que simulem os procedimentos do cérebro deve-se levar em consideração que os circuitos que compõem o computa209
dor foram projetados com base na lógica clássica e vão processar os sinais seguindo os conceitos de uma lógica binária onde bits binários representam apenas dois estados: Falso e Verdadeiro. Quanto ao cérebro, sabe-se que funciona diferentemente do computador e, por este motivo, é grande a dificuldade para a obtenção de um modelo satisfatório do cérebro humano. A solução para encontrar modelos mais adequados é utilizando as Lógicas Não-Clássicas que não estão sob as inflexíveis regras binárias da clássica. Portanto, vamos utilizar os conceito da Lógica Paraconsistente Anotada de anotação com dois valores LPA2v que é uma lógica Não-Clássica que aceita e trata situações de inconsistências. Ficou demonstrado pelos resultados obtidos anteriormente que a Lógica Paraconsistente Anotada tem características mais próximas do ser humano, portanto pode ser uma ótima ferramenta para modelagem do cérebro. A capacidade da LPA de se mostrar mais eficiente é porque, na sua estrutura, são aceitos e considerados outros estados lógicos não permitidos pela Lógica Clássica, mas que são representativos de situações reais como a contradição e indefinição, situações estas que o ser humano, ao contrário do computador, resolve em um tempo muito curto e sem mostrar nenhuma dificuldade.
9.2 - A Rede Neural Artificial Paraconsistente e as Células Neurais Componentes Na análise paraconsistente, o objetivo principal é saber com que medida ou grau de Certeza Gc podemos afirmar que uma proposição é Falsa ou Verdadeira. É considerado como resultado da análise apenas o valor do grau de Certeza Gc. O valor do grau de Contradição Gct é um indicativo que informa a medida da inconsistência. Se houver um baixo valor de certeza ou muita inconsistência o resultado é uma indefinição. Os valores de controle ajustados externamente são limites que vão servir como referência na análise. No capítulo 2, foi considerado num quadrado unitário do plano cartesiano QUPC o reticulado associado à Lógica Paraconsistente Anotada LPA2v onde foram obtidas as equações dos Graus de Certeza Gc e dos graus de Contradição Gct. Para esclarecimentos a figura 9.1 mostra o resumo do processo.
210
Figura 9.1- (a) Reticulado associado à LPA2v (b) Estudo do Reticulado no QUPC (c) Reticulado da LPA com valores dos graus de certeza e de contradição. Podemos descrever a análise paraconsistente utilizando apenas as equações originadas no Quadrado Unitário do Plano Cartesiano: Sendo as variáveis de entrada: µ1, tal que: 0 ≤ µ1 ≤1 e µ2, tal que:
0
≤ µ2 ≤ 1
Os valores limites: Vicc, tal que: -1 ≤ Vicc ≤ 0 Vscc, tal que: 0 ≤ Vscc ≤1 Vicct, tal que: -1 ≤ Vicct ≤ 0 Vscct, tal que: 0 ≤Vscct ≤ 1 O grau de Certeza calculado: Gci = µ1 - µ2 O grau de Contradição: G ct= µ1 + µ2 - 1 O grau de Certeza Gc resultante da análise é obtido através das comparações feitas a seguir: Se: Vicc ≤ Gci ≤Vscc ou Vscct ≤ Gct ≤Vicct ⇒ Gc = Indefinição Para:Vicct ≤Gct ≤ Vscct. Se: Gci ≤ Vicc ⇒ Gc = Falso com grau Gci Vscc ≤ Gci ⇒ Gc = Verdadeiro com grau Gci Uma análise mais sutil do processo que envolve as equações da Lógica Paraconsistente Anotada levam à conclusão contundente que, os resultados com algoritmo Para-Analisador no tratamento de sinais de informações obtidos de situações reais que podem chegar com contradições, mostram forte semelhança com os modos de processamento conhecidos no funcionamento do cérebro humano. A decisão tomada a partir de informações adquiridas pelos sentidos é um processo mental biológico próprio do ser humano. 211
Com base nas funções análogas da análise paraconsistente e do cérebro, foi criado o algoritmo Para-Analisador que representa uma Célula Artificial Paraconsistente básica CAPb. A CAPb é a Célula-Matter que originou a família de Células Neurais Artificiais Paraconsistentes. A partir da célula básica foram criados oito tipos de células todas funcionando com a Equação Estrutural Básica EEB: µr = µ1A- µ1Bc + 1
2
Onde: µr = grau de crença resultante µ1A = grau de crença da entrada A. µ1B c= grau de crença da entrada B complementado. Sendo: µ1B c= 1 - µ1B e µ1, tal que: 0 ≤ µ1 ≤1 e µ2, tal que: 0 ≤ µ2 ≤ 1. A figura 9.2 apresenta as células componentes da família de Células Neurais Artificiais Paraconsistentes.
Figura 9.2- Família de Células Neurais Artificiais Paraconsistentes CNAP’s.
212
9.3 - A Arquitetura da Rede Paraconsistente - RNAP
Neural
Artificial
A Arquitetura de uma Rede Neural Artificial Paraconsistente procura seguir o modelo do funcionamento do cérebro e faz o tratamento de sinais e a manipulação de dados de forma paralela e distribuída. As interligações entre as Células Neurais Artificiais Paraconsistentes formam Unidades UNAP’s com funções bem definidas. Na Arquitetura da RNAP, algumas Unidades Neurais Artificiais Paraconsistentes UNAP’s vão funcionar como componentes periféricos, cujo procedimento é direcionar sinais para controlar fluxo de dados no processamento. Outras Unidades são interligadas compondo Sistemas Neurais Artificias Paraconsistentes SNAP’s de processamento internos que vão manipular dados fazendo análises, aprendendo, associando e memorizando padrões. Todos os procedimentos feitos pelas UNAP’s, tanto para o direcionamento de sinais como para a análise dos valores, são baseados nos cálculos feitos através da Equação Estrutural Básica (EEB) originada da Lógica Paraconsistente Anotada. A Arquitetura é basicamente composta de três tipos de módulos dispostos paralelamente: a) Módulos de aprendizagem primária e memorização de padrões. Os módulos de aprendizagem primária e memorização de padrões são compostos de unidades neurais de células primárias que têm a função de reconhecer, aprender e criar uma célula de memorização do padrão aprendido. b) Módulos de direcionamento de sinais para efetuação da análise. Os módulos de direcionamento de sinais são compostos por Unidades Neurais cujas funções são de comparar e direcionar o fluxo de sinais em determinadas partes da rede. c) Módulos de análise e aquisição de conhecimento. Os módulos de análise e aquisição de conhecimento são compostos de Unidades neurais que analisam os valores dos sinais conforme a Lógica Paraconsistente e por meio de interligações internas e treinamento detectam similaridades de padrões e adquirem conhecimento. Os três tipos de módulos são interligados formando as fatias (Waffers) da RNAP ligadas paralelamente entre si. Portanto, na RNAP as fatias diferem uma das outras, mais precisamente pelos seus respectivos SNAP que, no aprendizado, fazem a aquisição de conhecimento para uma particular análise. A figura 8.3 mostra o fluxo e o direcionamento de sinais representan213
do padrões aplicados em uma fatia da RNAP que será interligada com as outras componentes da rede que, obviamente, têm sistemas de tratamento e aquisição de conhecimento distintos. Os fatores de tolerância à Certeza e à Contradição, assim como os fatores de aprendizagem e desaprendizagem das células que aparecem na arquitetura não serão considerados neste estudo. Estes fatores serão controlados externamente pelo Sistema Neural Artificial de raciocínio lógico - SNAPrl, onde vão possibilitar ajustes de características importantes para a Rede.
Figura 9.3 - Esquemático de uma fatia (waffer) da Rede Neural Artificial Paraconsistente. De forma resumida, no processamento de sinais da RNAP todas as fatias recebem os mesmos padrões nas entradas e, simultaneamente, fazem a síntese e a análise necessária para elaboração de uma conclusão. Um grau de crença resultante, representado por um valor obtido conforme a análise paraconsistente, é a conclusão de cada fatia da RNAP. A conclusão particular oferecida por cada fatia é analisada por um sistema de 214
competição que seleciona qual a mais viável, representada pelo grau de crença resultante maior, para ser considerada. A figura 9.4 apresenta a arquitetura da Rede Neural Artificial Paraconsistente representada pelas fatias compostas de blocos de Unidades Neurais que terão a descrição de funcionamento detalhada a seguir.
Figura 9.4 - Arquitetura da Rede Neural Artificial Paraconsistente (RNAP).
9.4 - Descrição do Funcionamento da RNAP A Rede Neural Artificial Paraconsistente RNAP tem três estados de funcionamento: 1- Aprendizagem. No estado funcional de Aprendizagem, cada fatia da RNAP aprende separadamente os padrões aplicados de forma repetidamente na entrada. 2- Comparação. No estado funcional de Comparação, a RNAP faz o reconhecimento de padrões. O reconhecimento é feito comparando os padrões que estão 215
aplicados na entrada a padrões que foram aprendidos e armazenados anteriormente nas fatias da rede. 3- Lembrança. No estado funcional de Lembrança, a RNAP isola uma particular fatia e permite que os seus padrões sejam ativados apenas por um sinal de controle interno. Os valores dos sinais de controle 1 e 2 decidem o estado funcional da rede.
9.4.1 - A Unidade Neural Artificial Paraconsistente de aprendizagem, primária e memorização de padrões. Na Arquitetura da Rede Neural Artificial Paraconsistente, a UNAP de aprendizagem primária e memorização recebe os padrões aplicados na entrada, portanto representa a área cerebral de recepção sensorial. Os padrões são informações captadas por sensores, que no ser humano representam os sentidos: visão, audição, paladar, olfato e tato. Os sentidos transformam as grandezas físicas do ambiente em sinais elétricos para serem processados no cérebro. Na RNAP os padrões são representados por sinais que chegam na forma de uma valoração, portanto podem ser tratados conforme a Lógica Paraconsistente Anotada onde as informações são os graus de crença de valores reais entre 0 e 1. Para um melhor entendimento do processo, vamos considerar que os padrões são sinais primários onde a existência de um valor 1 é o equivalente ao padrão de Verdade e a existência de um valor 0 significa um padrão de Falsidade. As Células Neurais Artificiais Paraconsistentes por um processo de treinamento podem aprender e desaprender padrões. Este procedimento é obtido através de um algoritmo baseado na Lógica Paraconsistente Anotada que, primeiramente proporciona à célula o reconhecimento do padrão a ser aprendido e depois processa de modo sistemático o aprendizado do padrão de Verdade e de Falsidade quando os mesmos são insistentemente aplicados na entrada. Na UNAP de aprendizagem primária e memorização de padrões, ao reconhecer qual o padrão a ser aprendido a célula de aprendizagem induz a formação de outra célula de memorização. O par de células aprendizagem/memorização é controlado por uma célula de conexão lógica de maximização. Estas três Células Neurais Artificiais Paraconsistentes, compõem a
216
UNAP de aprendizagem primária e memorização de padrões. A figura 9.5 mostra a Unidade com as células interligadas.
Figura 9.5 - Unidade de Aprendizagem primária e memorização de um padrão A. Os dois sinais ctr1 e µr controlam o funcionamento da Unidade. O sinal ctr1 faz o controle definindo o estado funcional da Rede. Quando o sinal ctr1 estiver em 1 a célula de aprendizagem C1 recebe através da célula de maximização C2 o valor 1. O valor 1 recebido da célula C2 é complementado na entrada do grau de descrença de C1 e dando a esta a característica de uma célula treinada. Se a entrada do grau de crença de C1 estiver complementado ela é uma célula de aprendizagem de padrão de Falsidade onde um valor 0 na entrada resulta em uma grau de crença resultante 1 na saída. Se a entrada do grau de crença de C1 não estiver complementado, então ela é uma célula treinada para reconhecer padrão de Verdade, portanto quando um valor 1 é aplicado na entrada, é obtido um grau de crença resultante 1 na saída. Quando o sinal ctr1 estiver em 0 a célula está livre para entrar num processo de aprendizagem normal, portanto vai fazer o reconhecimento do padrão a ser aprendido e, dependendo do seu estado atual, pode aprender e desaprender padrões. No processo de aprendizagem da célula C1 foi gerada, através do sinal m, a célula de memorização C3que é controlada pelo sinal µR. O sinal µR tem a função de fazer a extração do padrão aprendido e memorizado de dois modos: normal e forçado. No modo normal, temos 217
como entrada µR e a extração é feita através do próprio resultado do processamento da rede, que acontece nos estado funcionais de Aprendizagem e Comparação. No modo forçado temos como entrada o sinal mRF que é enviado quando o estado funcional é o de Lembrança. O controle para a extração dos padrões memorizados é feito pela Unidade Neural Artificial Paraconsistente de ativação de padrões UNAP-ap que controla as entradas µR e µRF.
9.4.2 - A Unidade Neural Artificial Paraconsistente de ativação de padrões A Unidade Neural Artificial Paraconsistente de ativação de Padrões é composta de duas células: uma de conexão lógica seletiva e uma de conexão lógica simples, ambas preparadas para um processo de maximização. A figura 8.6 apresenta a Unidade Neural Artificial de ativação de padrões da RNAP. Na figura, é visto que uma das entradas da Unidade é o valor µ1, que é a saída do Sistema Neural Artificial Paraconsistente que compõem o módulo de aquisição de conhecimento e tratamento de sinais. No estado funcional de Aprendizagem ou no estado de Comparação, o sinal cntr2 tem valor 0, portanto, o grau de crença resultante µ1 não sofre nenhuma intervenção que possa modificar o seu valor. Neste modo, o sinal resultante da análise efetuada pelo sistema é comparado na Unidade de Competição e segue o processo normal de processamento. Quando o sinal cntr2 tem valor 1 força um grau de crença máximo na unidade de competição provocando uma saída máxima nesta fatia e uma indefinição de valor 1/2 em todas as outras fatias componentes da RNAP. Este procedimento faz a fatia da RNAP entrar no estado funcional de Lembrança, cujo valor de µ1RF=1 obriga os padrões memorizados na Unidade Neural de aprendizagem primária e memorização a serem apresentados na saída.
218
Figura 9.6 - Unidade NeuralArtificial Paracon-sistente de ativação de padrões. No estado funcional de Lembrança, o sinal ctr2 tem valor 1 e esta condição provoca uma indefinição de valor 1/2 na saída SA da célula C1 e um valor máximo na saída SB. Enquanto o sinal ctr2 permanecer em 1, na saída da célula de maximização C2 vai prevalecer o valor máximo 1, que será aplicado diretamente na Unidade de competição seletiva.
9.4.3 - A Unidade Neural Artificial Paraconsistente de competição seletiva a) A Unidade Neural Artificial Paraconsistente de Competição Seletiva tem duas funções básicas: b) encontrar o maior valor dos graus de crença resultante nas saídas das fatias. selecionar a fatia do grau de crença vencedor. A UNAP de Competição seletiva para exercer esta função envia e recebe valores de graus de crença para comparação, portanto é uma unidade interligada à todas as fatias da RNAP. Por simplicidade vamos considerar uma RNAP de 4 fatias onde os resultados das análises vão ser comparadas na Unidade de Competição seletiva. A figura 9.6 mostra a unidade composta de quatro grupos, onde cada grupo tem duas células de conexão lógica simples e uma célula de conexão lógica seletiva.
Figura 9.6 - Unidade de Competição seletiva composta de quatro gru219
pos para análise dos graus de crença resultantes de quatro sistemas neurais. A unidade mostrada na figura anterior, faz a competição entre quatro sinais de graus de crença resultantes de quatro fatias. Os sinais dos graus de crença resultantes que entram na unidade são os resultados das análises paraconsistentes efetuadas por fatias da rede que envolve quatro Sistemas Neurais com aquisição de conhecimentos distintos. Quando os padrões são apresentados na entrada da RNAP a análise é feita instantaneamente, nas quatro fatias interligadas em paralelo resultando nos quatro sinais de graus de crença µ R1, µ R2, µR3 e µ R4. Na Unidade de Competição, cada grupo é ligado a uma fatia da rede e recebe os graus resultantes das outras, através das duas células de conexão lógica simples de maximização. O resultado da análise feita nas duas primeiras células sempre é o maior valor entre os graus de crença resultantes das análises efetuadas pelas fatias. A última célula é de conexão lógica seletiva que faz a comparação entre o máximo grau de crença resultante da fatia ligada ao grupo com o grau de crença resultante das outras fatias da RNAP. As células de maximização seletiva analisam, simultaneamente, os quatro graus de crença resultantes, inclusive o resultado da sua própria fatia e direciona o valor do grau de crença máximo para a ativação dos padrões memorizados. Como o grau de crença máximo também está aplicados nas outras células de maximização da Unidade de competição, automaticamente é inibida a saída das outras fatias selecionando sempre a de maior grau de crença resultante.
9.4.4 - O Sistema Neural Artificial Paraconsistente de aquisição de conhecimento Na Arquitetura da RNAP o Sistema Neural Artificial Paraconsistente de Aquisição de conhecimento é o módulo que difere uma fatia da outra. É um conjunto de células Neurais que apresentam uma análise própria e distinta. Neste módulo, estão interligadas células treinadas para fazerem reconhecimento de determinado padrão com todas as características de uma Rede Neural Artificial Paraconsistente, como: tolerância a ruídos, associações de padrões, condicionamento, plasticidade, memorização e tratamento de inconsistências. No processo de Aprendizagem, cada fatia é treinada separadamente de forma que o Sistema de aquisição de conhecimento adquire sua particu-
220
lar função. Como exemplo, vamos considerar uma RNAP para reconhecimento de padrões, onde por facilidade serão representados por duas entradas. Os padrões aplicados nas entradas podem ser valorados num intervalo real fechado entre 0 e 1. Por facilidade vamos considerar que, nas duas entradas da rede, serão aplicados padrões de Falsidade de valor 0 ou padrões de Verdade de valor 1. Para as duas entradas com padrões deste tipo, apenas quatro condições são necessárias para cobrir todas as possibilidades: PA=0, PB=0, ou PA=0, PB=1 ou PA=1, PB=0 ou PA=1, PB=1. Para início do treinamento, é separada uma fatia da RNAP e aplicados nas entradas os padrões PA= 0 e PB = 0 repetidas vezes. A figura 9.7 mostra as células de um Sistema Neural Paraconsistente para um simples processo de reconhecimento de padrões. Para ficar mais claro o processo, foram omitidas as células de controle que agem na realimentação das células de aprendizagem conforme foi estudado na Unidade de aprendizagem primária e memorização de padrões. Na figura 9.7 as células C1 e C2 são células de aprendizagem que devido à aplicação dos padrões PA=0 e PB=0, repetidas vezes, nas entradas aprendem padrão de Falsidade e como conseqüência criam duas células de memorização através do sinal m=1. Quando o processo de aprendizagem nas células primárias C1 e C2 é completado, na saída da célula de conexão analítica C3, é apresentado o grau de crença µ1=1 que, por sua vez, foi aprendido pela célula de aprendizagem C4 resultando no grau de crença µ1R=1.
221
Figura 9.7 - Treinamento da primeira fatia para os padrões PA=0 e PB=0 em uma RNAP. O valor do grau de crença resultante da aprendizagem µ1R é enviado para a Unidade de competição seletiva passando antes pela Unidade de ativação de padrões. Neste processo de aprendizagem, o sinal µ1R não sofre a influência da Unidade de ativação de padrões, portanto, quando os padrões PA=0 e PB=0 aparecerem na saída, significa que a fatia da rede foi treinada e adquiriu conhecimento e o processo é finalizado. As células de aprendizagem primárias C1 e C2 guardam as suas características de padrão de Falsidade aprendidas no treinamento, portanto todas as vezes que os valores PA=0 e PB=0 aparecerem nas entradas da RNAP, o Sistema Neural desta fatia responde com um grau de crença resultante µ1R= 1. Valores aplicados próximos a este são captados e analisados pelo Sistema resultando num grau de crença na saída de valor real entre 0 e 1, que vai sofrer uma comparação com os resultados das outras fatias que serão treinadas e instaladas na RNAP. Os mesmos procedimentos são feitos para padrões diferentes aplicados na RNAP. Portanto o treinamento segue o mesmo processo descrito abaixo: a) Isolar a fatia que se deseja treinar. b) Aplicar os padrões nas entradas até o aparecimento dos mesmos na saída. c) Ligar todas as fatias treinadas em paralelo. Deve-se levar em consideração que no processo de treinamento as células de aprendizagem primárias só têm necessidade de criarem células de memorização de padrões uma única vez, visto que na saída os padrões apresentados terão no máximo dois dígitos. Para este exemplo, vimos que serão conseguidos um total de quatro fatias treinadas que, no final, estarão interligadas conforme a figura 9.8. Na figura 9.8 há quatro fatias da RNAP treinadas para reconhecer quatro pares de padrões. Quando um destes pares de padrões se apresentar na entrada uma das fatias treinadas apresentará o grau de crença resultante maior. Como todos os sinais resultantes são comparados na Unidade de Competição esta fatia que reconheceu o padrão é que ativará o padrão das células de memorização criadas pelas células primárias no processo de aprendizagem.
222
Figura 9.8- Fatias da Rede Neural Artificial paraconsistente para reconhecimento de padrões.
9.5 - Considerações Finais Apresentamos uma inovadora forma de modelar o processamento de dados efetuado pelo cérebro humano. A Lógica Paraconsistente Anotada, por ser uma Lógica Não-Clássica já traz intrínseco um modelo que se ajusta, de maneira adequada, às características principais do funcionamento do cérebro. As RNAP’s abrem grandes possibilidades de diversidade de funções com análises e aquisição de conhecimento de um modo inovador e muito eficiente. A fatias da RNAP podem ser treinadas com configurações diferentes, com características de aprendizado condicionado, detecção de similaridades de padrões e funções outras de conexão características do funcionamento do cérebro humano. Os resultados de uma Rede Neural Artificial Paraconsistente também podem ser conectados com resultados de outras RNAP, através de Siste223
mas Neurais Paraconsistentes que apresentam funções dos conectivos lógicos de ligação como: AND, OR, EXOR, etc. Através destes Sistemas de conexão são formadas extensas Redes com capacidade de fazer inferência e raciocínio sobre proposições do mundo real. A nova arquitetura para processamento de sinais, além de se mostrar eficiente é muito fácil de ser implementada porque as equações são simples e podem ser projetadas por circuitos elétricos ou por programas aplicativos de Software. Na Arquitetura da RNAP, os fatores de tolerância à Certeza Ftc e tolerância à Contradição Ftct que ajusta cada célula pode modificar as características da rede fazendo com que assuntos de maior responsabilidade possam ser analisados com maior rigor. Os fatores de aprendizagem FA e de desaprendizagem FDA que permitem às células de aprendizagem aprender e desaprender com maior ou menor rapidez, introduz a possibilidade para simulação de memórias de curto e de longo prazo, de forma distribuída na rede. Foi demonstrado que a aplicação da Lógica Paraconsistente Anotada para modelagem do cérebro se mostra mais eficiente porque, na sua estrutura, são aceitos e considerados outros estados lógicos não permitidos pela Lógica Clássica, mas que são representativos de situações reais como a contradição e indefinição. A estrutura não-clássica da Lógica Paraconsistente Anotada é compatível com o comportamento dos neurônios e, portanto mais propícia para modelar todo o processo de tratamento do conhecimento incerto que o cérebro executa com extrema habilidade.
9.6- Exercícios 1- Dê a definição de Redes Neurais Artificiais RNA. 2- Descreva as diferenças de processamento entre os computadores e o cérebro humano. 3- Comente quais são as semelhanças encontradas entre o processamento do cérebro humano e a análise da LPA2v. 4- Como é constituída a Arquitetura das Redes Neurais Artificiais Paraconsistentes ? 5- Faça uma descrição resumida de uma RNAP. 6- Esboce a configuração e descreva o funcionamento de uma Unidade de Competição seletiva composta de quatro grupos para análise dos graus de crença resultantes de quatro sistemas neurais. 224
7- Descreva o funcionamento e esboce a configuração de um Sistema Neural Artificial Paraconsistente de Aquisição de conhecimento SNAP-Ac 8- Descreva o funcionamento das Fatias da Rede Neural Artificial paraconsistente para reconhecimento de padrões. 9- Elabore em linguagem de programação C (ou em outra linguagem de programação que você domine) o programa executável do Sistema Neural Artificial Paraconsistente de Aquisição de conhecimento SNAP-Ac. 10- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável do Sistema de fatias da Rede Neural Artificial Paraconsistente para reconhecimento de padrões. 11- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável de uma RNAP, com base na Arquitetura da Rede Neural Artificial Paraconsistente apresentada neste capítulo.
225
CAPÍTULO 10 O SISTEMA DE RACIOCÍNIO LÓGICO PARACONSISTENTE O Sistema de Raciocínio lógico tem a função de inferir e conectar os módulos de Análise e Aquisição de Conhecimento da Rede Neural Artificial Paraconsistente RNAP. O Sistema de raciocínio lógico é um Sistema Neural Artificial Paraconsistente SNAP construído com Unidades Neurais Artificiais Paraconsistentes UNAP’s. Conforme foi visto, as UNAP’s são agrupamentos de Células Neurais Artificiais Paraconsistentes interligadas convenientemente para efetuar determinadas funções na rede. Apresentamos os SNAP’s de raciocínio lógico que efetuam as conexões lógicas mais utilizadas por uma Rede Neural, que são as dos tipos: “E” (AND), “OU” (OR) e “OU-Exclusivo” (EXOR). Os procedimentos para obtenção de Sistemas que executam outras conexões podem ser elaborados fazendo-se pequenas modificações nas interligações das células. Para efeito de demonstração, nos Sistemas de raciocínio que efetuam as funções apresentadas foram feitos ensaios com valores significativos aplicados como padrões de entrada. Os resultados obtidos demonstram que os Sistemas Neurais Artificiais Paraconsistentes de raciocínio são eficientes, tolerantes às falhas e simples de serem implementados por meio de linguagem de computação convencional.
10.1 - Introdução A Rede Neural Artificial Paraconsistente RNAP é composta de módulos de representação e memorização de conhecimento interconectados que elaboram análises e obtém valores de graus de crença que possibilitam gerar conclusões. Para fazer as interconexões entre os módulos são utilizados os 226
Sistemas Neurais Artificiais Paraconsistentes SNAP’s preparados para estas funções. A Rede Neural Artificial Paraconsistente RNAP é construída com Células originadas da Lógica Paraconsistente Anotada, cuja função é fazer análises baseadas na Equação Estrutural Básica EEB: µ r = (µ1 - µ2 + 1) : 2. As UNAP’s são agrupamentos de Células Neurais Artificiais Paraconsistentes CNAP interligadas convenientemente para efetuar funções de aprendizado, memorização, direcionamento e tratamento de sinais. As UNAP’s interligadas vão constituindo Sistemas Neurais Artificiais Paraconsistentes SNAP’s que apresentam várias características funcionais, como Representação, Aquisição de conhecimento, Conexão lógica, etc. Os Sistemas Neurais Artificiais Paraconsistentes de raciocínio lógico SNAPrl são interligados em módulos separados que analisam e controlam módulos de vários tipos instalados na Rede Neural Artificial Paraconsistente. Na figura 10.1 para dar uma idéia mais geral, é mostrada a formação dos Sistemas com a criação dos Sistemas de conexão em separado.
Figura 10.1- Composição dos Sistemas Neurais Artificiais Paraconsistentes. A Rede Neural Artificial Paraconsistente RNAP recebe padrões de informações que são analisados por um sistema de raciocínio capaz de inferir conectando blocos para tratamento dos Sinais. Estes blocos tem as funções distintas, como análises, memorização e aquisição de conhecimento, com tratamento de sinais feitos de modo paralelo e distribuído, conforme o funcionamento do cérebro. 227
Os Sistemas Neurais Artificiais Paraconsistentes de raciocínio são os componentes dos módulos que elaboram as conexões lógicas na rede e, portanto, os responsáveis pelo processo de inferências. Os módulos de Conexão Lógica interconectam os módulos de conhecimento para fazer a inferência e o raciocínio lógico da rede. A figura 10.2 mostra estas interconexões entre os módulos de uma RNAP típica.
Figura 10.2- Interconexões entre módulos de uma RNAP típica Seguindo os procedimentos teóricos da LPA2v do capítulo 2, a interconexão entre os módulos da rede é feita através do grau de crença resultante µr, que é o valor da saída do Sistema Neural Paraconsistente componente do módulo de raciocínio lógico. O valor do grau de crença resultante mr controla qual é o módulo que estará ativo e qual estará inativo. Isto é feito através do ajuste do Fator de Tolerância à Certeza Ftc que age em cada célula de conexão analítica. Um grau de crença resultante µr de valor alto na saída de um SNAP do Sistema de raciocínio lógico, libera para análise o módulo em que a sua saída está ligada ao seu Fator de tolerância à Certeza Ftc. Um grau de crença resultante µr baixo na saída do Sistema de raciocínio lógico vai impor restrições à análise efetuada pelo seu correspondente módulo em que está interligado à sua saída. Se o grau de crença resultante mr é zero, o módulo interligado estará 228
completamente inoperante apresentando um sinal de indefinição de valor 1/ 2.
10.2 - O Sistema Neural Artificial Paraconsistente de Raciocínio Lógico - SNAPrl Os Sistemas de Raciocínios Lógicos construídos com Células Neurais Artificiais Paraconsistentes elaboram as funções lógicas primitivas da rede como AND, OR e EXOR, etc. O funcionamento dos SNAP’s de raciocínio lógico segue os procedimentos da LPA2v e consiste no tratamento de sinais de graus de crença, através da análise paraconsistente na forma da equação: µr = (µ1 - µ2 + 1) : 2, denominada de Equação Estrutural Básica (EEB). A configuração básica dos SNAP’s de raciocínio lógico é composta por um conjunto de células de aprendizagem e de conexão analítica. As células de aprendizagem sofrem um processo de treinamento separadamente para sensibilizar-se a apenas certas seqüências de padrões nas entradas e as células de conexão analítica analisam os valores detectados através da EEB. Depois do devido treinamento, as células estarão capacitadas para distinguir seqüências de padrões diferentes para serem comparados por uma célula de decisão que, por sua vez, determinará o valor correspondente na saída conforme a função lógica do SNAPrl. A figura 10.3 mostra a estrutura básica para formar um SNAP de duas entradas composta de quatro células de aprendizagem e quatro células de conexão analítica. As células componentes de C1 à C4 são células de aprendizagem que recebendo padrões repetitivos nas entradas têm as suas saídas com valor máximo igual a 1. As células C1 e C3 são preparadas para aprender padrões de Verdade e as células C2 e C4 são preparadas para aprender padrões de Falsidade. As Células componentes, C5 a C8 são células de conexão analítica que, na configuração da figura, já estão convenientemente interligadas para responder a determinadas combinações de padrões aplicados nas duas entradas, de forma que, o valor das suas saídas somente serão máximos se nas entradas se encontrem as combinações de padrões correspondentes.
229
Figura 10.3- Estrutura básica dos SNAP de raciocínio lógico para duas entradas.
10.3 - Sistema Neural Artificial Paraconsistente de Raciocínio Lógico de Minimização SNAPrl Min O Sistema Neural Artificial Paraconsistente de raciocínio lógico de minimização utiliza a estrutura básica apresentada na figura anterior aonde são acrescentadas duas células de conexão lógica de maximização (OR) e uma célula de decisão sem o complemento no grau de descrença. A figura 10.4 mostra uma configuração do SNAPrlMin
230
Figura 10.4- Estrutura básica dos SNAP de raciocínio lógico de minimização SNAPrlMin. O Sistema Neural Artificial Paraconsistente de raciocínio lógico de minimização SNAPrlMin tem a função de, depois de treinado, apresentar na saída o sinal de menor valor entre aqueles apresentados na suas entradas. As Células Neurais Artificiais Paraconsistentes de aprendizagem, de conexão analítica e de decisão, inseridas na unidade, vão fazer o processamento dos sinais utilizando a Equação Estrutural Básica da Lógica Paraconsistente Anotada: µr = µ1 - µ2 + 1 2 O processo de treinamento é feito individualmente em cada configuração do Sistema. 231
Inicialmente, as células de aprendizagem C1 e C3 detectam os padrões de Verdade aplicados repetidamente nas entrada. Neste processo são treinadas para apresentarem o grau de crença 1 na saída quando os padrões µ1A = 1e µ1B = 1 estiverem aplicados nas entradas. O procedimento a seguir é fazer o treinamento para que as células de aprendizagem C2 e C4 reconheçam os padrões de falsidade m1A = 0 e m1B = 0 nas entradas e apresentem na saída o grau de crença 1. O treinamento será completado quando as células reconhecerem também os padrões µ1A=1 e µ1B=0 e µ1A=0 e µ1B=1 aplicados nas entradas. Depois do treinamento separadamente, as entradas das células são interligadas, conforme a figura e as suas saídas conectadas às células de conexão analítica. As células de conexão analítica transferem via células de maximização C9 e C8, o sinal de maior valor para ser analisado na célula de decisão C11. As células de conexão lógica simples de maximização C8 e C9 deixam passar somente os graus de crença de maior valor, portanto, o grau de crença de maior valor é aplicado na entrada da célula de decisão C11 como grau de descrença. Na célula C11 os sinais são analisados pela EEB e comparados ao Fator de decisão FD que determinará o valor conclusivo na saída. O valor de FD é ajustado externamente e pode ser a saída de análises feitas por outros dispositivos da rede. Como exemplo, vamos considerar que o Fator de decisão esteja ajustado em 1/2, portanto valores de µr obtidos pela EEB acima de 1/2 estabelece uma saída “Verdadeira” com µ1Riµ = 1 e os valores obtidos abaixo de 1/2 estabelece uma saída “Falsa” µ1Riµ = 0. Para valores de mr obtidos na saída de C11 iguais a 1/2 o SNAP estabelece uma “Indefinição” de valor µ1Riµ = 1/2. A figura 10.5 mostra uma tabela de valores obtidos na aplicação de padrões de diferentes valores nas entradas do SNAPrlMin. As letras correspondem aos valores encontrados nos pontos determinados na configuração do SNAPrlMin mostrada na figura anterior. Nos resultados apresentados na tabela, considera-se que todas as células de aprendizagem da configuração tenham sido previamente treinadas para o reconhecimento dos seus padrões correspondentes. O Fator de decisão FtD da Célula C11 é considerado como sendo fixado em 1/2, portanto, nos resultados da tabela verifica-se que, todas as vezes que um dos padrões aplicados nas entradas tem valor indefinido, provoca uma indefinição na saída.
232
Figura 10.5 - Resultados do ensaio efetuado com valores aplicados como padrões nas entradas do SNAPrlMin Os valores da tabela indicam que o SNAPrlMin elabora a função de minimização da RNAP, portanto, vai fazer inferências utilizando o conectivo AND.
10.4 - Sistema Neural Artificial Paraconsistente de Raciocínio Lógico de Maximização - SNAPrlMAX O Sistema Neural Artificial Paraconsistente de raciocínio lógico de maximização SNAPrlMax utiliza a mesma estrutura básica dos sistemas de raciocínio mostrada na figura 10.6. A diferença da configuração anterior utilizada no SNAPrlMin é que agora é feito o processamento de maximização dos sinais obtidos pelas células de conexão analítica. Portanto, são utilizadas células de conexão lógica simples para um processo de maximização para tratar os sinais de saída da estrutura básica do Sistema de raciocínio lógico. A figura 10.6 mostra o Sistema Neural Artificial Paraconsistente de raciocínio lógico de maximização SNAPrlMax composto de dez células com capacidade de analisar seqüências de padrões em duas entradas.
233
Figura 10.6- Estrutura básica dos SNAP de raciocínio lógico de maximização SNAPr1Max. O funcionamento e a análise efetuados pela célula de decisão C11 são os mesmos expostos para o SNAP de raciocínio lógico de minimização da configuração anterior. A tabela da figura 10.7 mostra os resultados obtidos com a aplicação de valores significativos nas entrada do SNAPrlMax.
234
Figura 10.7 - Resultados do ensaio efetuado com valores aplicados como padrões nas entradas do SNAPrlMax. Os valores da tabela indicam que o SNAPrlMin elabora a função de maximização da RNAP, portanto vai fazer inferências utilizando o conectivo OR.
10.5 - Sistema Neural Artificial Paraconsistente de Raciocínio Lógico Ou Exclusivo - SNAPrl Exor O Sistema Neural Artificial Paraconsistente de raciocínio lógico OU Exclusivo- SNAPrlExor é composto pela estrutura básica dos SNAP de raciocínio, onde são acrescentadas duas células de conexão lógica simples para um processo de maximização e uma célula de decisão. A figura 10.8 mostra a configuração do SNAP de raciocínio lógico OU Exclusivo com as onze células componentes.
235
As seqüências dos padrões aplicados nas entradas, que num processo de OU exclusivo irão resultar em 0, são: µ1A = 1 e µ1B = 1 µ1A = 0 e µ1B = 0 Estas combinações estão maximizadas na célula C 10 e serão analisadas como graus de descrença na célula de decisão C11 As combinações de seqüências que irão resultar em 1 são: µ1A = 1 e µ1B = 0 µ1A = 1 e µ1B = 0 Estas combinações também têm os seus valores maximizados pela célula C9 e na célula de decisão C 11 serão analisadas como graus de crença. O SNAPrlExorf, assim como os outros Sistemas Neurais Artificiais Paraconsistentes apresentados, pode receber nas suas entradas quaisquer valores reais contidos no intervalo fechado [0, 1]. A tabela da figura 10.9 236
mostra os valores encontrados quando é feito um ensaio aplicando valores significativos nas entradas do Sistema Neural Artificial Paraconsistente de raciocínio lógico OU Exclusivo - SNAPrlExorf. As letras correspondem aos pontos da configuração apresentada no desenho da figura 10.8.
Figura 10.9 - Resultados do ensaio efetuado com valores aplicados como padrões.
10.6 - Sistema Neural Artificial Paraconsistente de Raciocínio Lógico Completo - SNAPrl COM Nos Sistemas apresentados, a configuração inicial é a mesma, portanto as análises iniciais podem ser aproveitadas para a obtenção de várias funções por um mesmo SNAP que vamos denominar de Sistema Neural Artificial Paraconsistente de raciocínio completo SNAPrl COM O SNAPrlCOM é apresentado na figura 10.10.
237
Figura 10.10 - Sistema Neural Artificial Paraconsistente de raciocínio Lógico completo. Na figura 10.10 foi apresentado um único Sistema que produz, simultaneamente, as três funções lógicas; E, OU e EXOR apresentadas anteriormente. O SNAPrlCOM foi obtido pela aglutinação de várias funções utilizando a mesma estrutura, sendo configurado com 16 células devidamente interconectadas para que cada célula de decisão da saída apresente um sinal conforme a função projetada. O SNAPrlCOM apresentado na figura anterior responde a três funções: AND, OR e EXOR, no entanto outras funções podem ser adaptadas utilizando a mesma análise estrutural básica, ou ainda, instalando vários módulos semelhantes em paralelo para que toda a análise lógica possa ser feita simultaneamente. 238
10.7 - Considerações Finais Mostramos como são construídos os Sistemas de raciocínio lógico SNAPrl, utilizando interligações entre as Células Neurais Artificiais Paraconsistentes CNAP’s. As interligações entre células com configurações devidamente projetadas demonstraram a possibilidade de elaboração de sistemas que fazem inferências na Rede Neural Artificial Paraconsistente RNAP. Os projetos apresentados mostram que, na RNAP, o processo de inferência entre vários blocos é elaborado por Sistemas Neurais Artificiais Paraconsistentes que compõem o Sistema de raciocínio. Os procedimentos para obtenção dos Sistemas de Raciocínio mostrados neste capítulo podem ser extendidos para obtenção de outros blocos capazes de elaborar várias outras funções lógicas. Os módulos de raciocínio lógico podem ser interligados e interconectados compondo um Sistema global capaz de proceder tratamentos de sinais de forma semelhante ao funcionamento apresentado pelo cérebro humano. Os resultados dos ensaios demonstram a alta eficiência dos SNAPrl que elaboram as principais funções como: “E”, “OU” e “OU EXCLUSIVO”. Todas as configurações apresentadas trazem possibilidades de adaptações para a efetuação de outras funções fazendo-se pequenas modificações. Com os resultados encontrados nos ensaios foi proposto um Sistema Neural Artificial Paraconsistente Completo SNAPrlCOM em que várias funções lógicas podem ser agrupadas em um único módulo com economia de células componentes. Em uma Rede Neural Artificial Paraconsistente, os módulos de aquisição de conhecimento são compostos por Sistemas Neurais de diversas funções, como Análise, memorização e tratamento de sinais. Todos estes Sistemas estão inseridos e instalados em paralelo no Módulo de aquisição de conhecimento que, controlados por módulos de raciocínio lógico, vão formando uma ampla rede, capaz de modelar eficientemente várias funções biológicas do cérebro. Os procedimentos para projetos das Redes neurais Paraconsistentes são dinâmicos e facilitam a modelagem de diversas áreas de Conhecimento da Neurocomputação. Com base nos projetos apresentados, pode-se elaborar a implementação de Sistemas Neurais Artificiais Paraconsistentes complexos em que as inferências lógicas são feitas entre os módulos de raciocínio interligando os Módulos de aquisição de conhecimento.
239
10.8 - Exercícios 1 -Explique qual é a função principal do Sistema Neural Artificial Paraconsistente de raciocínio lógico SNAPrl. 2- Esboce a configuração e descreva o funcionamento básico do Sistema Neural Artificial Paraconsistente de raciocínio lógico SNAPrl. 3- Esboce a configuração e descreva o funcionamento básico do Sistema Neural Artificial Paraconsistente de raciocínio lógico de minimização SNAPrlMin. 4- Esboce a configuração e descreva o funcionamento básico do Sistema Neural Artificial Paraconsistente de raciocínio lógico de maximização SNAPrlMAX. 5- Esboce a configuração e descreva o funcionamento básico do Sistema Neural Artificial Paraconsistente de raciocínio lógico OU ExclusivoSNAPrlEXOR. 6- Esboce a configuração e descreva o funcionamento básico do Sistema Neural Artificial Paraconsistente de raciocínio completo SNAPrlCOM. 7- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável do Sistema Neural Artificial Paraconsistente de raciocínio lógico SNAPrl. 8- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável do Sistema Neural Artificial Paraconsistente de raciocínio lógico de minimização SNAPrl Min. 9- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável do Sistema Neural Artificial Paraconsistente de raciocínio lógico de maximização SNAPrlMax. 10- Elabore em linguagem de programação C ( ou em outra linguagem de programação que você domine) o programa executável do Sistema Neural Artificial Paraconsistente de raciocínio completo SNAPrlCOM.
240
CAPÍTULO 11 CONCLUSÕES
Neste capítulo são tecidas algumas conclusões sobre os assuntos tratados neste livro que, longe de serem definitivas, pelo menos procuram situar o leitor dentro do contexto atual das pesquisas em Redes Neurais. As considerações apresentadas nos levam a crer que a aplicação das Redes Neurais Artificiais Paraconsistentes são, sem dúvida, uma ótima ferramenta neste complexo e extenso campo de pesquisas em Neurocomputação. De forma alguma, fechamos o assunto com considerações exclusivamente conclusivas, mas, apenas apresentamos propostas e sugestões de aplicações futuras das RNAP’s em várias áreas do conhecimento.
11.1- Introdução As Redes Neurais Artificiais têm se constituído em um vasto campo de pesquisa baseado na teoria conexionista dos processos funcionais do cérebro. Além da Robótica e da Inteligência Artificial, o interesse em pesquisas de Redes Neurais se estende a vários outros campos do conhecimento, como Engenharia Genética, Neurologia, Psicologia e Biologia. A criação de modelos computacionais do cérebro animal é interessante em qualquer destas áreas porque permite, por abstrações, se estudar as propriedades reais do sistema nervoso e as funções mentais. Na área da Medicina, mais especificamente na Bio-engenharia, os modelos do processo de visão com implementações de retinas ou próteses para serem adaptadas em diversas partes do corpo são atrativos para utilização das Redes Neurais. Na área de Engenharia e Neurocomputação, a Rede Neural tem carac242
terísticas de processamento paralelo que serão úteis para solucionar complexos problemas em reconhecimento de padrões, memórias associativas e otimização de sistemas dinâmicos na área de automação e controle. Os estudos das Redes Neurais Artificiais, baseados em comportamento de Neurônios biológicos, resultaram em classes de modelos matemáticos para classificação e reconhecimento de padrões, no entanto as aplicações concretas destas teorias em Inteligência Artificial são poucas, ficando o conhecimento restrito à área acadêmica. Aplicações diretas das teorias das Redes Neurais Artificiais são dificultosas por vários motivos, entre eles, o mais crucial é a necessidade técnica dos processos mentais obrigarem o tratamento de extensas massas de dados que trazem informações incertas. Quando as analises são feitas baseadas apenas em evidências, ou em conhecimento incerto, os Sistemas que utilizam a Lógica Clássica ou binária, se mostram ineficazes ou mesmo impossibilitados de serem aplicados. A Lógica Paraconsistente Anotada, sendo classificada como NãoClássica é uma boa solução para fazer tratamento de situações incertas e inconsistentes de modo não-trivial. Portanto, os sistemas de análises que utilizam a Lógica Paraconsistente Anotada, pela sua origem Não-Clássica, sempre vão trazer maior semelhança à forma do ser humano resolver questões que trazem incerteza.
11.2 - A Lógica Paraconsistente Aplicada em Redes Neurais Artificiais Recentemente, com o aparecimento de computadores digitais mais rápidos, onde foi possível se processar simulações de Redes Neurais com maior número de neurônios interconectados, foram obtidos melhores resultados gerando interesse em novas pesquisas. Atualmente, nos principais centros de pesquisa estão sendo desenvolvidas novas formas de configurações de neurônios com as chamadas arquiteturas conexionistas. As novas arquiteturas conexionistas são direcionadas para aprimorar fatores relevantes no estudo das Redes Neurais dando ênfase às características que diferem o cérebro do computador. Por exemplo, o cérebro funciona com neurônios que, apesar de lentos quando comparados aos dispositivos do computador, executam tarefas extremamente complexas. A interpretação de uma cena visual ou a compreensão de uma frase são tarefas executadas pelo cérebro em um tempo muito curto. Em acidentes com pessoas que sofreram danos cerebrais ou por um processo natural sabe-se que o cérebro pode perder neurônios sem prejuízo na memória; por outro lado, os computadores são capazes de armazenar grandes quantidades de informações, mas na sua memória, se houver perda 243
de um único bit, estas informações são quase sempre irremediavelmente perdidas. O cérebro humano contém um número enorme de neurônios que, trabalhando em paralelo, realizam tarefas complexas, como resolução de situações com informações difusas, ambíguas e inconsistentes, que o computador funcionando de modo digital e seqüencial é incapaz de fazer. Propusemos um novo modelo de um neurônio artificial estruturado na Lógica Paraconsistente com a finalidade de possibilitar a construção de sistemas artificiais utilizando modelos mais próximos do neurônio biológico e com isso implementar Redes Neurais onde se consiga resultados semelhantes às análises efetuadas pelo cérebro humano.
11.3 - O Código de Comunicação na Rede de Neurônios Artificiais Paraconsistentes Os sinais de informação que trafegam pela rede de neurônios no cérebro estão em forma de pulsos de potenciais de ação. Os neurônios biológicos se comunicam por meio destes pulsos elétricos que são assíncronos com freqüências diferentes que variam de alguns, a aproximadamente, quinhentos pulsos por segundo. Atualmente, estão sendo feitos grandes esforços em pesquisas para se encontrar o código de comunicação utilizado pelos neurônios biológicos. Portanto, não se sabe ao certo como os neurônios podem representar e tratar, nas complexas funções mentais do cérebro, as informações vindas do mundo real através dos sentidos. No Perceptron, as Redes Neurais Clássicas utilizam os sistemas de pesos de valores diversos que, atribuídos às entradas, são multiplicados pelos valores dos sinais. Como quase sempre os valores dos pesos nas camadas internas não são controláveis, o código não é eficiente trazendo grandes dificuldades de computação. Na Rede Neural Paraconsistente RNAP é utilizada a Equação Estrutural Básica da Lógica Paraconsistente EEB para computar sinais de graus de crença valorados no intervalo real fechado [0,1]. Os códigos são transmitidos por valores equacionados pela EEB através de Células implementadas com base na Lógica Paraconsistente. Em resumo, na Rede Neural Artificial Paraconsistente (RNAP) os sinais de informações são caracterizados por: Valores reais positivos entre 0 e 1 são aplicados na entrada como padrões. Valores reais positivos de graus de crença entre 0 e 1 são equacionados internamente pelas células utilizando a EEB. Quando o equacionamento resultar em grau de crença de valor 1 é 244
considerado uma confirmação da proposição ou do padrão aplicado na entrada. Quando o equacionamento resultar em grau de crença de valor 0 é considerado uma negação lógica da proposição ou do padrão aplicado na entrada. Quando o equacionamento resultar em grau de crença de valor 1/2 é considerado uma indefinição lógica da proposição ou do padrão aplicado na entrada. As equações matemáticas da RNAP são muito simples porque as Células Neurais Artificiais Paraconsistentes utilizam a EEB como código para equacionar os sinais e, a partir do resultado obtido, tomam decisões e as transmitem em forma dos valores resultantes obtidos. Utilizando células com estas características são implementadas as Unidades Neurais que apresentam diversos tipos de funcionamento inclusive semelhantes aos dos neurônios biológicos. A simplicidade matemática promove a interligações entre várias células compondo Unidades Neurais Artificiais Paraconsistentes UNAP’s que recebem, equacionam e comparam os valores dos sinais com informações codificadas pela EEB. As Unidades Neurais Artificiais Paraconsistentes interconectadas formam uma complexa rede onde trafegam sinais representativos de proposições ou padrões que após as análises serão convertidos em ação.
11.4 - Considerações sobre Artificiais Paraconsistentes
as
Redes
Neurais
A implementação da Rede Neural Artificial Paraconsistente seguiu basicamente todos os conceitos de uma Rede Neural clássica e traz algumas características próprias que vão permitir outras configurações expandindo-se em novas implementações. Conforme foi visto, podemos ressaltar as principais características da RNAP como: a) É Composta de Partes Elementares. Os menores componentes de uma Rede Neural Artificial Paraconsistente RNAP são as Células Neurais Artificiais Paraconsistentes construídas com base na Equação Estrutural Básica EEB da Lógica Paraconsistente Anotada. Na RNAP, existem oito tipos de células que são interconectadas formando Unidades Neurais Artificiais Paraconsistentes UNAP’s com funções bem definidas. b) Componentes com capacidade de Aprendizagem. A capacidade de aprender (lembrar) e desaprender (esquecer) que demonstrou possuir as Células Neurais Artificiais Paraconsistentes de apren245
dizagem é uma característica adequada para fazer uma correlação do funcionamento de uma Rede Neural Artificial Paraconsistente com o funcionamento dos neurônios biológicos no cérebro humano. c) Capacidade de Conectar-se em Ilhas de Conhecimento. Os componentes elementares vão interconectando-se formando as Unidades Neurais Artificiais Paraconsistentes UNAP’s. As UNAP’s são os primeiros blocos que vão compor a estrutura básica da rede. d) Capacidade de Implementar diversas Funções. As Unidades Neurais Artificiais Paraconsistentes têm funções especiais de processamento e tratamento de sinais seguindo modelos comportamentais do cérebro humano, como aprendizado condicionado, tratamento de contradições, conexão analítica e conexão lógica. O ParaPerceptron é um modelo que representa as principais funções conhecidas do neurônio. As UNAP’s analisam, tomam decisão e agem conforme as informações recebidas. As ações locais de cada célula reunidas em UNAP’s vão contribuir para uma ação global da rede, proporcionando à RNAP um comportamento bottom-up. Os mesmos procedimentos bottom-up, interconexões de UNAP’s formaram Sistemas Neurais Artificiais paraconsistentes SNAP’s com funções diversas. e) Capacidade de Modelar Inferências Lógicas. Os resultados obtidos dos ensaios com os SNAP’s possibilitam a implementação de Redes Neurais Artificiais Paraconsistentes que consideram as inconsistências em sua estrutura, de um modo não trivial e por isso é mais propícia que as Redes Neurais clássicas quando utilizadas no enquadramento de problemas ocasionados por situações de contradições que aparecem quando lidamos com o mundo real. f) Capacidade de tráfego de Informações Codificado. A Rede Neural Artificial Paraconsistente utiliza o código para troca de informação equacionando valores entre o intervalo real fechado [0,1] através da Equação Estrutural Básica EEB: µr=(µ1 - µ2 + 1) ¸2, onde as letras µ são graus de crença de valores reais entre 0 e 1.
11.5 - Considerações Finais No cérebro humano, os neurônios levaram milhões de anos para fazerem conexões e se adaptarem para trocas de informações que possibilitam 246
formar conceitos e tomadas de decisão. As Redes Neurais construídas de Para-Perceptrons serão capazes de reproduzirem, através de programas computacionais, atividades mentais, como o processo de reconhecimento de padrões, inferências, análises e tomadas de decisão, partindo de múltiplas alternativas. É fato concreto que, frente aos fundamentos e conceitos estudados, os quais trazem características relevantes frente aos resultados de ensaios, abre-se um leque muito grande no campo de pesquisa e futuras aplicações das Redes Neurais Artificiais Paraconsistentes. A criação da RNAP vem demonstrar que a Lógica Paraconsistente, quando usada para implementações de sistemas de processamento de sinais liberta e desbloqueia o processo criativo que, por mais de dois milênios permaneceu preso nas rígidas leis da Lógica Clássica.
247
APÊNDICE A Considerações sobre a Lógica Aplicada em IA 1 - Introdução Enfatizamos sobre as aplicações das Lógicas Paraconsistentes em questões de Inteligência Artificial que vem tomando grande impulso, sobretudo nos últimos anos. Um dos conceitos mais significativos que tem chamado a atenção de especialistas em Inteligência Artificial são os da incerteza e da contradição. O grande desenvolvimento da Inteligência Artificial vem propiciando o estreitamento com diversas áreas do saber de forma imperativa tais como Matemática, Ciência da Computação, Psicologia, Teoria da Comunicação, Direito, Biologia, Ciências Cognitivas, entre outros, gerando indagações extremamente fecundas e originais. Com efeito, um dos problemas centrais da Inteligência Artificial é o da descrição da porção da realidade que se quer estudar. Além de uma conveniente descrição, necessitamos processar os dados a fim de obtermos uma razoável reprodução “artificial” do que queremos com relação à realidade. Por conseguinte, torna-se imperativo que tais considerações se façam numa linguagem bem estruturada, as linguagens formais. Mais que isso, necessitamos de uma linguagem e uma lógica subjacente para podermos trabalhar com os dados. Esta situação pode ser esquematizada como abaixo: Linguagens Artificiais Realidade
«
Modelos (abstratos)
«
Porção da
Pelo menos três dimensões relevantes estão em análise: a porção da realidade que se quer estudar, os modelos abstratos de tais realidades e a linguagem que se refere às diversas estruturas.
2 - Razão, Ciência e Lógica As Lógicas Não-Clássicas caracterizam-se por amplificar, de algum modo, a lógica tradicional ou por infringir ou limitar seus princípios ou pressupostos fundamentais. Dentre as primeiras, ditas Lógicas complementares da Clássica, lembraremos as Lógicas tradicionais das modalidades a1óticas, das modalidades deônticas, dos operadores epistêmicos e dos 248
operadores temporais. Dentre as segundas, chamadas de heterodoxas ou rivais da clássica, citaremos as Lógicas Paraconsistentes, as Paracompletas e as intuicionistas sem negação (Griss, Gilmore, ...). A Lógica, devemos salientar, é muito mais do que a disciplina das formas válidas de inferência. Seria difícil enquadrarmos, v.g., a teoria dos modelos, em sua forma atual, e a teoria da recursão em uma Lógica assim definida. No entanto, para os fins do escopo deste livro, podemos identificar a Lógica (dedutiva) como a disciplina que se ocupa especialmente das formas válidas de inferência (ou de raciocínio) . Em conexão com a exposição precedente, eis alguns problemas filosoficamente significativos: a) As Lógicas Não-Clássicas são realmente Lógicas ? b) Pode, mesmo existir Lógicas rivais da Clássica ? c) Em última instância, não seriam as Lógicas chamadas de rivais apenas complementares da Clássica? d) Que relação há entre racionalidade e logicidade ? e) A razão pode se expressar por meio de lógicas distintas, incompatíveis entre si? Obviamente, nos limites do presente parágrafo não podemos tratar de todas essas indagações, nem mesmo de forma resumida. Porém, adotandose posição ‘operacional’, se sistema 1ógico denotar uma espécie de organon de inferência, a IA contribui para nos conduzir, inescapavelmente, a conclusão de que há várias Lógicas, Clássicas e Não-Clássicas, e entre as últimas, complementares e rivais da Clássica. Ademais, a IA corrobora a possibilidade e a relevância prática de Lógicas da categoria das Paraconsistentes, tão afastadas dos padrões até há pouco tempo fixados para a logicidade. Isto constitui, sem dúvida, algo surpreendente para aqueles que não estão acostumado com os ú1timos avanços da informática. Convém lembrar aqui que existem numerosos argumentos enfraquecedores da posição dos que defendem a tese do caráter absoluto da Lógica Clássica. Arrolamos, a seguir, quatro desses argumentos: 1) Quaisquer contexto racional dado é compatível com infinitas Lógicas capazes de figurarem como Lógicas a ele subjacentes. 2) Os conceitos 1ógicos fundamentais, como o de negação, têm que ser vistas como a ‘family resemblance’ no sentido de Wittgenstein. Não há nenhum motivo especial para se recusar, digamos, á negação paraconsistente a dignidade de negação; se alguém assim proceder, deveria, também, sustentar que as retas das geometrias não euclidianas não são, efetivamente, retas ... 3) A semântica comum, por exemplo do cálculo restrito de predicados, baseia-se na teoria de conjuntos. Como há diversas teorias de conjuntos (clássicas), há numerosas interpretações possíveis, não equivalentes entre si, de tão semântica. Por conseguinte, o referido cálculo não se mostra também determinado, como parece á primeira vista. 4) Para a Lógica tradicional de segunda ordem (e de ordem superior) não existe axiomatização correta e completa. Esta escapa, pois, a 249
axiomatização (recursiva). Assim, as contestações às indagações a) e b) são afirmativas. Uma resposta simples da questão parece difícil: no fundo, trata-se, em grande porte, de um problema termino1ógico. Todavia, em principio, em virtude da discussão anterior, nada impede que se aceite que há Lógicas rivais, que não se incluem no rol das complementares da tradicional. Finalmente, sobre ele, frisaremos que se possui excelentes argumentos para se demonstrar que a razão permanece razão mesmo quando se manifesta por meio de Lógicas Não-Clássicas. (A própria Lógica Clássica não constitui um sistema bem definido.) Do exposto, pensamos que as conclusões que se impõem são suscetíveis de resumo, como se segue: “De fato, como insiste [Enriques & Santillana 32], [Enriques & Santillana 36] e [Enriques 22], a ciência aparece a todo momento como imperfeita, em qualquer de suas partes, desenvolvendo-se por auto-correção e auto-integração. Não constitui aquisição hirta, á qual se via juntando pouco a pouco outras; há permanente vaivém, desde os fundamentos até as teorias mais complexas, corrigindo-se erros aqui, eliminando-se inconsistências acolá. Mas a história comprova que toda teoria cientifica encerra algo de verdadeiro: a mecânica newtoniana, embora superada pela de Einstein, evidentemente contém traços de verdade. Restringindo-se de maneira conveniente ao seu campo de aplicação, ela funciona, prevê, e, portanto, tem que conter uma parcela de verdade. Mas a verdadeira verdade é um caminhar constante para a verdade - eis o ensinamento da história, fora de qualquer dúvida séria. A ciência é mais luta, avanço, do que etapa adquirida, conquistada, e as categorias cientificas fundamentais modificam-se no decorrer do tempo.” ([Da Costa 80], p.231). Mais ainda: “A Lógica se vai constituindo através da história e não parece possível prever-se as vicissitudes de sua evolução. Um especialista do inicio do século, ainda que familiar com as obras de Frege, Russell e Peano, dificilmente poderia prever as transformações que se processariam na Lógica nos ú1timos quarenta anos. Não se trata somente de progresso em extensão; o próprio conceito de logicidade se modificou. Hoje, as Lógicas heterodoxas entraram em cena com grande ímpeto: ninguém conseguiria predizer onde nos levarão as Lógicas polivalente, relevante e paraconsistente. Talvez, nos próximos anos, nos esteja reservada uma nova alteração da idéia de logicidade, impossível de se imaginar no momento.” ([Da Costa 80], p. 232.) “Razão, como se definiu ..., é a faculdade de conceber, julgar e raciocinar. Conceber e raciocinar constituem patrimônio exclusivo da razão; mas julgar, no sentido preciso da palavra, também é atividade racional. Mesmo quando a inspiração, a sensibilidade ou alguma forma primitiva de intuição não racional fornecem a base para o juízo, é a razão que julga, dada que somente ela manipula e combina conceitos. Aliás, a maioria dos usos comuns da palavra ‘razão’ derivam-se de razão conceituada, como a faculdade de conceber, julgar e raciocinar; 250
assim, para discernir bem e adotar normas racionais de vida, há de se ter em conta a razão na acepção definida. A1ém disso, existe um conjunto de regras e de princípios regulando o uso da razão, especialmente como ela se manifesta nos contextos racionais. Também é licito chamar de razão a esse conjunto de regras e de princípios. Pois bem, quando se indaga se a razão se transforma ou mantém-se invariante, torna-se mais conveniente, sem dúvida, interpretar a questão como se referindo a razão qual conjunto de regras e de princípios, e não como faculdade. Assim formulado, o problema tem resposta imediata: a razão modificou-se no decurso do tempo. Por exemplo, as categorias racionais subjacentes à física aristoté1ica, à newtoniana e à hodierna, divergem profundamente; ipso facto, os princípios que regem essas categorias variam, donde se conclui que a própria razão se transformou.” ([Da Costa 80], p. 233). Exprimindo-se por intermédio de Lógicas as mais variadas, a razão não deixa de ser razão. A IA é, atualmente, um dos pilares nos quais se apoiam as ponderações que acabam de ser feitas. Então, ela não possui apenas valor prático, de aplicação tecnológica, como também valor teórico, contribuindo para o melhor equacionamento dos problemas da Lógica, da razão e, portanto, da própria cultura. Digno de menção é o fato de que a Lógica Paraconsistente nasceu de considerações puramente teóricas, tanto 1ógico-matemáticas, como filosóficas. As primeiras se referem, para exemplificar, a problemas relativos ao conceito de verdade, aos paradoxos da teoria dos conjuntos e à vaguidade inerente não somente na linguagem natural, como na cientifica. As segundas, por seu turno, encontram-se correlacionadas com temas tais como os fundamentos da dia1ética, as noções de racionalidade e de logicidade, e a aceitação de teorias cientificas. Algumas das conseqüências da estruturação da Lógica Paraconsistente, que podemos classificar em duas categorias, as ‘positivas’ e as ‘negativas’, são as seguintes: Positivas: 1) Melhor elucidação de alguns conceitos centrais da Lógica, tais como os de negação e de contradição, bem como o papel do esquema da abstração em teoria dos conjuntos (antinomias conjuntistas); 2) Compreensão mais profunda de determinadas teorias filosóficas, especialmente a dia1ética e a teoria dos objetos de Meinong; 3) Comprovação da possibilidade de teorias fortes e inconsistentes, embora não triviais (os paradoxos comuns podem ser tratados de uma nova perspectiva); 4) Organização de esquemas onto1ógicos diferentes dos da ontologia tradicional. Negativas: 1) Demonstração de que certas criticas a dia1ética afiguram-se infundados (por exemplo, os conhecidos reparos de Popper); 2) Prova de que as exigências metodológicas impostas às teorias cientificas se mostram demasiadamente restritivas e mereceriam ser liberalizadas; 3) Evidência de que a concepção usual da verdade como correspondência, a Tarski, não acarreta as leis da Lógica Clássica, sem suposições extras, geral251
mente mantidas implícitas. Hodiernamente, em IA, precisamos manipular sistemas inconsistentes de informação; mais ainda, necessitamos processar semelhantes sistemas, via uma programação paraconsistente. Tentar transformar esses sistemas em outros consistentes seria não apenas impraticável, mas, sobretudo, teoricamente fora de propósito. Logo, a IA constitui um campo onde a Lógica Paraconsistente topa naturalmente com aplicações de suma importância. Assim, a informática em geral estão intimamente unida á paraconsistência. Sob certo ângulo, as próprias Lógicas não monotônicas e do ‘default’ incluem-se na classe das paraconsistentes (em acepção ampla) (ver, e.g. [Nakamatsu, Abe & Suzuki 99c]). else printf(“Valor inferior de controle de Contradição.........Vici=[ %4.3f]”, c4); } void entraSinais(void){ int i, letra, y, k; /***********Entrada de apenas um sinal**********/ if(and==0 && or==0){ gotoxy(33,10); printf(“SINAL ANOTADO”); gotoxy(3,12); printf(“SINAL ANOTADO A: Grau de Cren%ca %c1a=[ ], Grau de Descren%ca %c2a=[ ]”,135,230,135,230); gotoxy(4,22); printf(“ENTRE COM OS VALORES: Grau de cren%ca, Grau de descren%ca [ 0.0 … 1.0]”,135,135,130); gotoxy(44,12); n1r = inputRL(4, 0, 1); gotoxy(76,12); n2r = inputRL(4, 0, 1); } /***********Entrada de varios sinais************/ else{ /**Inicializacao**/ if(and==1){ /* minimizar */ for(i=0; i<12; i++){ n1[i]=1.0; n2[i]=1.0; } } if(or==1){ /* maximizar */ for(i=0; i<12; i++){ n1[i]=0.0; n2[i]=0.0; } } 252
gotoxy(33,10); printf(“SINAIS ANOTADOS”); gotoxy(4,22); printf(“ENTRE COM OS VALORES: Grau de cren%ca, Grau de descren%ca [ 0.0 a 1.0] “,135,135,130); /*****Entra com os dois primeiros sinais*****/ gotoxy(3,12); printf(“SINAL ANOTADO A: Grau de Cren%ca %c1a=[ ], Grau de Descren%ca %c2a=[ ]”,135,230,135,230); gotoxy(44,12); n1[0] = inputRL(4, 0, 1); gotoxy(76,12); n2[0] = inputRL(4, 0, 1); gotoxy(3,13); printf(“SINAL ANOTADO B: Grau de Cren%ca %c1b=[ ], Grau de Descren%ca %c2b=[ ]”,135,230,135,230); gotoxy(44,13); n1[1] = inputRL(4, 0, 1); gotoxy(76,13); n2[1] = inputRL(4, 0, 1); /*****Entra com mais sinais*****/ letra=’c’; y=14; k=2; do{ gotoxy(5,23); printf(“Deseja entrar com mais sinais anotados? ”); gotoxy(51,23); i=getche(); if(i==’n’ || i==’N’) break; /***para de entrar sinais***/ if(letra==’j’){ /* ultima letra */ gotoxy(5,23); printf(“Este %c o %cltimo sinal permitido a ser digitado “,130,163); } else{ /* nao e’ a ultima vez */ gotoxy(5,23); printf(“ “); } gotoxy(3,y); printf(“SINAL ANOTADO %c: Grau de Cren%ca %c1%c=[ ] Grau de Descren%ca %c2%c=[ ]”,(letra32),135,230,letra,135,230,letra); gotoxy(44,y); n1[k] = inputRL(4, 0, 1); gotoxy(76,y); n2[k] = inputRL(4, 0, 1); letra++; y++; /*posicao vertical*/ k++; }while( letra <= ‘j’ ); } /* else maximizar ou minimizar */ gotoxy(1,22); printf(“ “); gotoxy(5,23); printf(“Digite ENTER para iniciar an%clise “,160); do {} while(getch() != 13); 253
} /******** calculos ***********/ void calcula(void){ float tmp; for(i=0;i<13;i++) sd[i] = 0; if(and==1){ /*minimizar*/ for(i=0, n1r=1, n2r=1;i<10;i++){ if(n1r>n1[i]) n1r = n1[i]; if(n2r>n2[i]) n2r = n2[i]; } } if(or==1){ /*maximizar*/ for(i=0,n1r=0,n2r=0;i<10;i++){ if(n1r= c1){ /* verdadeiro */ sd[1] = 1; printf(“Totalmente VERDADEIRO\n”); } else{ 254
if(gc <= c2){ /* falso */ sd[2] = 1; printf(“Totalmente FALSO\n”); } else{ if(gi >= c3){ /* inconsistente */ sd[0] = 1; printf(“Totalmente INCONSISTENTE\n”); } else{ if(gi <= c4){ /* indeterminado */ sd[3] = 1; printf(“Totalmente INDETERMINADO\n”); } else{ /******** analise para casos não extremos *******/ if(gc >= 0.0){ /* direita */ if(gi >= 0.0){ /* acima */ if(gi >= gc){ sd[4]=1; printf(“INCONSISTENTE tendendo ao VERDADEIRO”); } else{ sd[6]=1; printf(“Quase-VERDADEIRO tendendo ao INCONSISTENTE”); } } else{ /* abaixo */ if(modulo(gi) >= gc){ sd[10]=1; printf(“INDETERMINADO tendendo ao VERDADEIRO”); } else{ sd[7]=1; printf(“Quase-VERDADEIRO tendendo ao INDETERMINADO”); } } } 255
else{ /* esquerda */ if(gi >= 0.0){ /* acima */ if(gi >= modulo(gc)){ sd[5]=1; printf(“INCONSISTENTE tendendo ao FALSO”); } else{ sd[8]=1; printf(“Quase-FALSO tendendo ao INCONSISTENTE”); } } else{ /* abaixo */ if(modulo(gi) >= modulo(gc)){ sd[11]=1; printf(“INDETERMINADO tendendo ao FALSO”); } else{ sd[9]=1; printf(“Quase FALSO tendendo ao INDETERMINADO”); } } } } } } } gotoxy(5,18); printf(“* Saídas discretas: “, 161); gotoxy(9,19); printf(“T V F %c T-v T-f Qv-T Qv-%c Qf-T Qf%c %c -v %c -f “\ ,193, 193, 193, 193, 193); gotoxy(9,20); printf(“%d %d %d %d %d %d %d %d %d %d %d %d”\ , sd[0], sd[1], sd[2], sd[3], sd[4], sd[5], sd[6], sd[7], sd[8], sd[9], sd[10], sd[11]); } float inputRL(int size, float limiteInferior, float limiteSuperior){ int x, y, i, ponto; char str[10], ch; float saida; x = wherex(); 256
y = wherey(); do{ ponto=0; /* 0 = nenhuma ocorrencia de ponto decimal, 1 = uma ocorrencia*/ strcpy(str,” “); gotoxy((x - size),y); for(i=0; i<=size; i++) printf(“ “);/*limpa area de entrada*/ for(i=1; i<(size+1); i++){ gotoxy(x,y); ch =(char) getch(); if(ch==13) /* [ENTER] */{ str[i]=’\0'; break; } if(isdigit(ch))/*algarismo de 0 a 9 */{ if( (ch==’0')&&(i==2)&&(str[1]==’0') )/*algarismo zero*/{ i—; }/*nao deixa escrever mais de um zero ‘a esquerda*/ str[i]=ch; str[i+1]=’\0'; displayRL(str,size); continue; } if(ch==’+’){ str[0]=’ ‘; /* numero positivo */ i—;/*nao anda*/ displayRL(str,size); continue; } if(ch==’-’){ str[0]=’-’; /* numero negativo */ i—;/*nao anda*/ displayRL(str,size); continue; } if( (ch==’.’)&&(ponto==0) )/*primeira ocorrência de ponto decimal*/{ ponto=1; /* para não deixar escrever outro ponto */ if(i==1) { strcat(str, “0.”); i++; } else{ 257
str[i]=’.’; str[i+1]=’\0'; } displayRL(str,size); continue; } if(ch==’\b’) /*backspace*/{ if(i==1) /*vai apagar o sinal*/{ str[0]=’ ‘; str[1]=’\0'; i= 0; displayRL(str,size); continue; } else /*(i>1)*/{ if(str[—i]==’.’)/*vai apagar o pto decimal*/{ ponto=0; /* permite que outro ponto seja digitado */ } /*vai apagar um algarismo ou um pto*/ str[i]=’\0'; i—; displayRL(str,size); continue; } }/*fim backspace*/ /* nao e’ um caractere valido */ i—; /* portanto ignorar caractere */ }/* fim laco for*/ saida = atof(str); }while(! ((saida >= limiteInferior) && (saida <= limiteSuperior)) ); return (saida); } void displayRL(char *s, int size){ int x, y; x=wherex(); y=wherey(); gotoxy((x - size),y); for(i=0; i
APENDICE B Lógica Proposicional Anotada de anotação com dois valores LPA2v Apresentamos alguns conceitos e definições que complementam os discutidos no capítulo 2 e no apêndice A. Seja τ = < |τ|, ≤ > um reticulado finito fixo, onde: 1. τ = [0, 1] × [0, 1] (onde [0, 1] indica o intervalo fechado unitário real) 2. ≤ = {((µ1, ρ1), (µ2, ρ2)) ∈ ([0, 1] × [0, 1])2µ1 ≤ µ2 e ρ1 ≤ ρ2} (onde ≤ indica a ordem usual dos números reais). Tal reticulado denomina-se reticulado de valores-verdade. Introduzimos alguns símbolos definidos: Definição 1. [Negação Forte e Equivalência] Sejam A e B fórmulas quaisquer. Define-se, então: A ↔ B =Def (A → B) ∧ (B → A) e ·A =Def A → ((A → A) ∧ ¬(A → A)). O símbolo · denomina-se negação forte; portando, ·A deve ser lido a negação forte de A. A fórmula A ↔ B é lida, como usualmente, a equivalência de A e B. Definição 2. Seja A uma fórmula. Então: ¬0A indica A; ¬1A indica ¬A e ¬kA indica ¬(¬k-1A), (k ∈ N, k > 0). N indica o conjunto 259
dos números naturais {0, 1, 2, ...} Também, se µ ∈ τ, tem-se que: ~0 µ indica µ; ~1 µ indica ~µ e ~k µ indica ~(~k-1µ), (k ∈ N, k > 0). Definição 3. [Literal] Se p é um símbolo proposicional e λ é uma constante de anotação, então a fórmula pλ (abreviado por ¬kpλ, k ≥ 0) chama-se hiper-literal (ou simplesmente literal) e as demais chamam-se fórmulas complexas. Introduzimos o conceito de interpretação para a lógica LPA2v. Definição 4 [Interpretação]. Seja P o conjunto dos símbolos proposicionais. Uma interpretação para LPA2v é uma função I: P → τ. Dada uma interpretação I podemos associar uma valoração VI: F → {0, 1} assim definida: 1. Se p ∈ P e µ ∈ τ, então VI(pµ) = 1 se e somente se I(p) ≥ µ e VI(pµ) = 0 se e somente se não é o caso que I(p) ≥ µ. 2. Se A é da forma ¬kpµ (k ≥ 1), então VI(¬k(pµ)) = VI(¬k-1(p∼µ)). Sejam A e B fórmulas quaisquer. Então, 3. VI(A ∧ B) = 1 se e somente se VI(A) = VI(B) = 1. 4. VI(A ∨ B) = 1 se e somente se VI(A) = 1 ou VI(B) = 1. 5. VI(A → B) = 1 se e somente se VI(A) = 0 ou VI(B) = 1. Se A é uma fórmula complexa, então 6. VI(¬A) = 1 - VI(A). Pela condição 1 temos que VI(pµ) = 1 se e somente se I(p) ≥ µ, ou seja, pµ é verdadeira segundo a interpretação I se a interpretação dada a p, I(p), for maior ou igual ao meu valor de crença µ com 260
respeito à proposição p. Ela é falsa, caso contrário. Pode-se mostrar que há interpretações I e proposições pµ tais que VI(pµ) = 1 e VI(¬pµ) = 1, ou seja, temos contradições verdadeiras nesta lógica. Isto é intuitivo se considerarmos proposições do tipo p(0.5, 0.5). A sua negação ¬p(0.5, 0.5) equivale a p∼(0.5, 0.5) que é também p(0.5, 0.5). Ora, se p(0.5, 0.5) for verdadeira, então é claro que sua negação também é verdadeira. Se ela for falsa, sua negação também é falsa. Os postulados (esquema de axiomas e regras de inferência) de LPA2A são as seguintes: A, B e C são fórmulas quaisquer, F e G são fórmulas complexas, p é um símbolo proposicional e λ, µ, µj são constantes de anotação (suponha-se que estamos trabalhando num sub-reticulado finito de τ). (→1) A → (B → A) (→2) (A → (B → C) → ((A → B) → (A → C)) (→3) ((A → B) → A → A) (→4) (Modus Ponens, que abrevia-se por MP) (∧1) A ∧ B → A (∧2) A ∧ B → B (∧3) A → (B → (A ∧ B)) (∨1) A → A ∨ B (∨2) B → A ∨ B (∨3) (A → C) → ((B → C) → ((A ∨ B) → C)) (¬1) (F → G) → ((F → ¬G) → ¬F) (¬2) F → (¬F → A) (¬3) F ∨ ¬F (ττ1) p ⊥ (ττ2) ¬kpλ → ¬k-1p~λ, k ≥ 1 (ττ3) pλ → pµ , λ ≥ µ (ττ4) pλ1 ∧ pλ2 ∧ ... ∧ pλn → pλ, onde λ = λi Definição 5 [Demonstração]. Uma seqüência finita de fórmulas (B1, B2, ... , Bn) (n ∈ N, n ≥ 1) chama-se demonstração 261
ou prova se para cada i, 1 ≤ i ≤ n temos que: 1. Ou Bi é um axioma; 2. Ou Bi foi obtida de duas fórmulas anteriores da seqüência pela aplicação da regra de Modus Ponens. Definição 7 [Teorema]. Uma fórmula A denomina-se teorema se existir uma demonstração (B1, B2, ... , Bn) tal que Bi = A, ou seja, A é a última fórmula da referida seqüência. A seqüência (B1, B2, ... , Bn) da definição acima denominase uma prova ou demonstração do teorema A. Neste caso, simbolizamos por + A. Teorema 1. Em LPA2v, · possui todas as propriedades da negação clássica. Por exemplo, temos: 1 Ã A ∨ ·A 2 Ã ·(A ∧ ·A) 3 Ã (A → B) → ((A → ·B) → ·A) 4 Ã A → ··A 5 Ã ·A → (A→ B) 6 Ã (A → ·A) → B Corolário 1.1. Em LPA2v, os conectivos ·, ∧, ∨, e → possuem todas as propriedades da negação, conjunção, disjunção e implicação clássicas, respectivamente. Corolário 1.2. O cálculo proposicional clássico está contido em LPA2v e este constitui um sub-cálculo estrito do primeiro. Teorema 2. LPA2v é não-trivial. Seja C o conjunto das fórmulas complexas de LPA2v. Facilmente se verifica que C é fechado com respeito à aplicação dos conectivos ¬, ∧, ∨, e →. Temos o seguinte importante resultado: 262
Teorema 3. Em LPA2v, o conjunto C juntamente com os conectivos ¬, ∧, ∨, e → possuem todas as propriedades da negação, conjunção, disjunção e implicação clássicas, respectivamente. Os resultados anteriores nos mostram uma característica muito importante da lógica LPA2v: observa-se que as contradições somente aparecem entre os literais (que equivalem às atômicas). Isto é uma característica interessante da lógica LPA2v, pois do ponto de vista das aplicações, a maioria das vezes, as contradições aparecem justamente entre os literais. Dificilmente temos contradições em nível complexo. Assim, temos, a modo de resumo, entre as fórmulas complexas valendo os postulados da lógica clássica com os conectivos primitivos e se considerarmos todas as fórmulas da linguagem de LPA2v, com a negação forte e demais conectivos (excetuando-se, obviamente, a negação original), temos também a lógica clássica. Além disso, pode-se provar o seguinte: se F for uma fórmula complexa, + ¬F ↔ +F, ou seja, a negação fraca de F é equivalente à negação forte de F. Isso faz com que a LPA2v torne assaz útil na sua manipulação, sendo paraconsistente nos literais e clássico nas fórmulas complexas, ou clássico com a negação forte com respeito a todas as fórmulas da linguagem. Teorema 4 (Correção). A lógica LPA2v é correta com respeito à semântica discutida, isto é, se A é um teorema, então A constitui uma fórmula logicamente válida de LPA2v. Teorema 5 (Completeza). A lógica LPA2v é completa com respeito à semântica discutida, isto é, se A é uma fórmula logicamente válida, então A constitui um teorema de LPA2v.
263
APÊNDICE C A Linguagem da Lógica de Primeira Ordem Paraconsistente Anotada Descrevemos, a seguir, a linguagem de primeira ordem de LPA2v. Fixa-se o reticulado τ = < |τ|, ≤ > como no caso proposicional, τ = [0, 1] × [0, 1] e ≤ = {((µ1, ρ1), (µ2, ρ2)) ∈ ([0, 1] × [0, 1])2µ1 ≤ µ2 e ρ1 ≤ ρ2} (onde ≤ indica a ordem usual dos números reais). Empregamos, também, as demais terminologias e simbologias do apêndice anterior. O vocabulário é constituído dos seguintes símbolos: 1. Variáveis individuais: x, y, z, w, x1, x2, ...; 2. Para cada n (n ∈ N), símbolos funcionais n-ários. Os símbolos funcionais 0-ários chamam-se, também, constantes individuais; 3. Para cada n (n ∈ N), símbolos de predicados n-ários; 4. Símbolos de igualdade =; 5. Cada membro de τ é uma constante de anotação; 6. Os símbolos ¬, ∧, ∨, →, ∃ e . 7. Símbolos auxiliares (, ), : e ,. Os termos da linguagem são definidos de maneira usual. Utiliza-se a, b, c e d - com ou sem índices - como meta-variáveis para os termos. Definição 1. [Fórmula] Uma fórmula atômica é uma expressão do tipo p(a1,
, an), onde p é um símbolo predicativo nário e a1,
, an, são termos de LPA2v. Se p(a1,
, an) é uma fórmula básica e µ ∈ τ é uma constante de anotação, então pµ(a1,
, an) e a = b - onde a e b são termos - chamadas fórmulas 264
atômicas. Definimos as fórmulas seguintes de definição indutiva generalizada: 1. Uma fórmula atômica é uma fórmula; 2. Se A é uma fórmula, então (¬A) é uma fórmula; 3. Se A e B são fórmulas, então (A ∧ B), (A ∨ B) e (A → B) são fórmulas; 4. Se A é uma fórmula e x é uma variável individual, então (∃x)A e ( x)A são fórmulas; 5. Uma expressão de LPA2v constitui uma fórmula se e somente se foi obtida aplicando-se uma das regras, 1 a 4, anteriores. A fórmula ¬A é lida a negação - ou negação fraca - de A; A ∧ B, a conjunção de A e B; A ∨ B, disjunção de A e B; A → B, a implicação de B por A; (∃x)A, a instanciação de A por x; e ( x)A, a generalização de A por x. Definição 2. [Negação Forte e Equivalência] Sejam A e B fórmulas quaisquer. Define-se, então: A ↔ B =Def (A → B) ∧ (B → A) e ·A =Def A → ((A → A) ∧ ¬(A → A)). O símbolo · denomina-se negação forte; portando, ·A deve ser lido a negação forte de A. A fórmula A ↔ B é lida, como usualmente, a equivalência de A e B. Seja A uma fórmula. Como no caso proposicional, ¬0A indica A; ¬1A indica ¬A e ¬kA indica ¬(¬k-1A), (k ∈ N, k > 0). N indica o conjunto dos números naturais {0, 1, 2, ...} Também, se µ ∈ τ, ~0 µ indica µ; ~1 µ indica ~µ e ~k µ indica ~(~k1 µ), (k ∈ N, k > 0). Definição 3 [Literal]. Seja pµ(a1,
, an) uma fórmula atômica. Qualquer fórmula do tipo ¬kpµ(a1,
, an) (k ≥ 0) denomina-se uma fórmula hiper-literal ou, simplesmente, literal. As demais fórmulas denominam-se fórmulas complexas. 265
Fornece-se, agora, uma descrição da semântica para as linguagens de LPA2v. Definição 4 [Estrutura]. Uma estrutura υ para uma linguagem LPA2v consiste dos seguintes objetos: 1. Um conjunto não-vazio |υ| denominado o universo de U. Os elementos de |υ| chamam-se indivíduos de υ; 2. Para cada símbolo funcional n-ário f de LPA2v, uma operação n-ária fυ de |υ| em |υ| - em particular, para cada constante individual e de LPA2v, eυ é um indivíduo de υ. 3. Para cada símbolo predicativo p de peso n de LPA2v, uma função pυ: |υ|n → |ττ|. Seja υ uma estrutura para LPA2v. A linguagem-diagrama Lτ(υ) é obtida de modo habitual. Dado um termo livre de variável a de Lτ(υ), define-se, também, de modo comum, o indivíduo υ(a) de υ. Utiliza-se i e j como meta-variáveis para denotar os nomes. Define-se o valor verdade υ(A) para cada fórmula fechada A de Lτ(υ). A definição é obtida por indução sobre o comprimento de A. Definição 5. Seja A uma fórmula fechada e υ uma interpretação para LPA2v. 1. Se A é atômica da forma pµ(a1,
, an), então υ(A) = 1 se e somente se pυ(υ(a1),
, (an)) ≥ µ. 2. Se A é atômica da forma a = b, então υ(A) = 1 se e somente se υ(a) = υ(b). 3. Se A é da forma ¬k(pµ(a1,
, an)) (k ≥ 1), então υ(A) = υ(¬k-1(pµ(a1,
, an)). 4. Sejam A e B fórmulas fechadas quaisquer. Então, 5. υ(A ∧ B) = 1 se e somente se υ(A) = υ(B) = 1. 6. υ(A ∨ B) = 1 se e somente se υ(A) = 1 ou υ(B) = 1. 7. υ(A → B) = 1 se e somente se υ(A) = 0 ou υ(B) = 1. 8. Se A é uma fórmula fechada complexa, então υ(¬A) = 1 266
υ(A). 9. Se A é da forma (∃x)B, então υ(A) = 1 se e somente se υ(Bx[i]) = 1 para algum i em Lτ(υ). 10. Se A é da forma ( x)B, então υ(A) = 1 se e somente se υ(Bx[i]) = 1 para todo i em Lτ(υ). Teorema 1. Sejam A, B e C fórmulas quaisquer de Qττ. Os conectivos →, ∨, ∧, · junto com os quantificadores e ∃, possuem todas as propriedades da implicação, conjunção, disjunção e negação clássica, bem como dos quantificadores e ∃ clássicos, respectivamente. Por exemplo, tem-se que: 1. ÃÄ · xA ↔ ∃x ·A 2. ÃÄ ·∃xB ∨ C ↔ ∃x(B ∨ C) 3. ÃÄ ·∃xB ∨ ∃xC ↔ ∃x(B ∨ C) 4. ÃÄ · xA ↔ ·∃x·A 5. ÃÄ ·∃xA ↔ · x·A No que segue é considerado um estudo axiomático do sistema Qττ. O sistema de postulados - axiomas e regras de inferência - de LPA2A são as seguintes: A, B e C são fórmulas quaisquer, F e G são fórmulas complexas, p é um símbolo proposicional e λ, µ, µj são constantes de anotação. (→1) A → (B → A) (→2) (A → (B → C) → ((A → B) → (A → C)) (→3) ((A → B) → A → A) (→4) (Modus Ponens, que abrevia-se por MP) (∧1) A ∧ B → A (∧2) A ∧ B → B (∧3) A → (B → (A ∧ B)) (∨1) A → A ∨ B (∨2) B → A ∨ B (∨3) (A → C) → ((B → C) → ((A ∨ B) → C)) (¬1) (F → G) → ((F → ¬G) → ¬F) (¬2) F → (¬F → A) (¬3) F ∨ ¬F 267
(ττ1) p ⊥ (ττ2) ¬kpλ → ¬k-1p~λ, k ≥ 1 (ττ3) pλ → pµ , λ ≥ µ (ττ4) pλ1 ∧ pλ2 ∧ ... ∧ pλn → pλ, onde λ = λi ( 1) B → A(x) / B → xA(x) ( 2) xA(x) → A(t) (∃1) A(t) → ∃xA(x) (∃2) A(x) → B / ∃xA(x) → B (=1) x = x (=2) x1 = y1 →
→ xn = yn → f(x1,
, xn) = f(y1,
, yn) (=3) x1 = y1 →
→ xn = yn → pλ( x1,
, xn) → pλ( y1,
, yn) com as restrições usuais. Teorema 2. Qττ é paraconsistente se e somente se #ττ ≥ 2. Teorema 3. Se Qττ é paracompleto então #ττ ≥ 2. Se #ττ ≥ 2 existem sistemas Qττ que são paracompletos e existem Qττ que não são paracompletos. Teorema 4. Se Qττ é Não-Alética então #ττ ≥ 2. Se #ττ ≥ 2 e existem sistemas Qττ que são não-aléticos e sistemas Qττ que não são não-aléticas. Por conseguinte, vê-se que os sistemas Qττ são, em geral, paraconsistentes, paracompletos e não-aléticos. Teorema 5. O cálculo Qττ é não-trivial. Os teoremas acima nos mostram que os sistemas anotados são paraconsistentes e, em geral, paracompletos e não-aléticos. Em [Abe 92] foram demonstrados teoremas de correção e de completeza para os cálculos Qτ. Além disso, esse autor mostrou como a teoria padrão de modelos pode ser estendida para as lógicas anotadas de 1a ordem. 268
APÊNDICE D Programação em linguagem C do Controlador Lógico Paraconsistente Para-Control. 1 - Introdução Para facilitar as implementações das Células Neurais Artificiais Paraconsistentes CNAP’s em Sistemas de Neurocomputação, apresentamos o programa em linguagem C de um Controlador Lógico Paraconsistente denominado de Para-Control. Este programa utiliza as considerações e os conceitos relacionados com a interpretação da LPA2v. Para elaboração do programa foi utilizado o reticulado associado da LPA2v com 12 regiões delimitadas, que gerou o Algoritmo Para-Analisador estudado no cap. 2. Neste programa, a ferramenta principal que vai fazer a análise paraconsistente é o Algoritmo Para-Analisador e no processo, dependendo da escolha do usuário, os sinais aplicados nas entradas podem sofrer atuação de Operadores Lógicos de Maximização OR, de Minimização AND e de Negação NOT. Na execução do programa é inicialmente aberto uma tela que possibilita a escolha do tipo de análise paraconsistente desejada. O programa pergunta se vai ser efetuado uma análise paraconsistente simples, com negação lógica ou com conectivos lógicos de Minimização ou Minimização. A figura abaixo mostra a primeira tela.
Figura D.1 - Tela inicial do programa Para-Control. 269
Definida a escolha do tipo de análise uma segunda tela é aberta, onde é permitido introduzir na análise paraconsistente os ajustes dos valores de controles limites para a otimização do Sistema. Conforme foi visto no capítulo 2, os valores para ajustes dos controles limites (Vici = limite da inconsistência, Vsci = limite da indeterminação, Vscc = limite da verdade e Vicc = limite da falsidade) determinam os limites máximos e mínimos em que a análise paraconsistente vai considerar as condições de Inconsistência, Indeterminação, Verdade e Falsidade. A figura abaixo mostra a segunda tela que permite a inclusão destes valores.
Figura D.2 - tela que permite a inclusão dos valores de ajustes limites do programa Para-Control. Na aplicação dos valores dos graus de crença e de descrença para análise, se a opção inicial foi por um processo de análise paraconsistente simples, a próxima tela vai pedir a aplicação dos valores. Veja a figura abaixo, onde foi aplicado os valores do grau de crença e de descrença.
Figura D.3 - tela que apresenta inclusão da anotação com os valores de graus de crença e de descrença para análise simples no programa ParaControl. 270
Se a opção foi por um processo também de maximização ou minimização entre sinais anotados é aberto uma tela para inclusão de todos os sinais que vão sofrer a ação dos Operadores. A tela da figura abaixo mostra a inclusão de vários sinais anotados, onde cada um é composto pela sua anotação com os valores dos graus de crença e de descrença correspondentes.
Figura D.4 - tela que apresenta inclusão da anotação com os valores de graus de crença e de descrença de vários sinais anotados para passar por um processo de maximização e análise no programa Para-Control. Com todos os sinais aplicados, o programa faz a análise paraconsistente conforme os procedimentos e equações da LPA2v. Após a análise paraconsistente uma tela de saída apresenta os valores dos graus de Certeza Gc, de Contradição Gct e uma palavra de 12 dígitos representantes dos 12 estados lógicos resultantes do reticulado. A tela da próxima figura apresenta o resultado da análise paraconsistente.
Figura D.5 - tela que apresenta o resultado de uma análise paraconsistente no programa Para-Control. 271
A seguir apresentamos a listagem completa do programa em linguagem C para análise paraconsistente.
2 - Programação em Linguagem C do Controlador Lógico Paraconsistente #include #include #include #include #include #include float inputRL(int size, float limiteInferior, float limiteSuperior); void displayRL(char *s, int size); float modulo(float d); int telaPrincipal(void); void entraLimites(void); void mostraLimites(void); void entraSinais(void); void calcula(void); void analise(void); float n1r; /* Grau de crenca */ float n2r; /* Grau de descrenca */ float c1; /* Valor superior de controle de certeza */ float c2; /* Valor inferior de controle de certeza */ float c3; /* Valor superior de controle de Contradição */ float c4; /* Valor inferior de controle de Contradição */ float n1[12], n2[12]; int sd[13], i; /* sd[13] = Saida discreta */ float gc; /* Grau de certeza */ float gi; /* Grau de Contradição */ int normal=1, and=0, or=0; void main(void){ int continuar, redefinir=’s’; while( telaPrincipal() ){ do{ if(redefinir==’s’ || redefinir==’S’){ entraLimites(); } 272
mostraLimites(); entraSinais(); calcula(); mostraLimites(); analise(); gotoxy(20,24); printf(“Deseja continuar? “); do{ gotoxy(44,24); continuar=getche(); }while(!( (continuar==’s’)||(continuar==’S’)||(continuar==’n’)||(continuar==’N’) )); if( (continuar==’s’)||(continuar==’S’) ){ gotoxy(20,24); printf(“Deseja modificar os valores de controle? “); do{ gotoxy(67,24); redefinir=getche(); }while(!( (redefinir==’s’)||(redefinir==’S’)||(redefinir==’n’)||(redefinir==’N’) )); } else{ redefinir=’s’; } }while(continuar==’s’ || continuar==’S’); } }/* main */ /******** tela Principal **********/ int telaPrincipal(void){ int ch, ok=0, opcao=1; clrscr(); gotoxy(1,2); printf(“*** CONTROLADOR LÓGICO PARACONSISTENTE PARA-CONTROL * “,162); gotoxy(10,4); printf(“**** ESCOLHA O TIPO DE ANÁLISE PARACONSISTENTE ***”,160); gotoxy(30,6); printf(“(X)* NORMAL”); gotoxy(30,7); printf(“( )* LÓGICAMENTE NEGADA”); gotoxy(30,8); printf(“( )* FUNÇÃO AND (Minimização)”,128,142,128,142); gotoxy(30,9); printf(“( )* FUNÇÃO OR (Maximização)”,128,142,128,142); gotoxy(30,11);printf(“( )* INICIAR”); gotoxy(8,20); printf(“** INSTRUÇÕES: 1- Movimente o cursor com as SETAS do teclado”,135); 273
gotoxy(8,21); printf(“ 2- Confirme as opções com a BARRA de espaço”); gotoxy(8,22); printf(“ 3- Movimente o cursor para INICIAR e tecle ENTER “); gotoxy(8,23); printf(“ 4- Tecle ESC para sair”); normal=1; and=0; or=0; gotoxy(31,6); do{ switch (opcao){ case 1: /* opcao 1 */ gotoxy(31,6); ch=getch(); switch (ch){ case 72: opcao=5; break; case 80: opcao=2; break; case ‘ ‘: printf(“X”); if(normal==0){ gotoxy(31,7); printf(“ “); } normal=1; opcao=3; break; case 27: clrscr(); return 0; } break; /* fim da opcao 1 */ case 2: /* opcao 2 */ gotoxy(31,7); ch=getch(); switch (ch){ case 72: opcao=1; break; case 80: opcao=3; break; case ‘ ‘: 274
printf(“X”); if(normal==1){ gotoxy(31,6); printf(“ “); } normal=0; opcao=3; break; case 27: clrscr(); return 0; } break; /* fim da opcao 2 */ case 3: /* opcao 3 */ gotoxy(31,8); ch=getch(); switch (ch){ case 72: opcao=2; break; case 80: opcao=4; break; case ‘ ‘: printf(“X”); if(or==1){ gotoxy(31,9); printf(“ “); or=0; } and=1; opcao=5; break; case 27: clrscr(); return 0; } break; /* fim da opcao 3 */ case 4: /* opcao 4 */ gotoxy(31,9); ch=getch(); switch (ch){ case 72: opcao=3; break; 275
case 80: opcao=5; break; case ‘ ‘: printf(“X”); if(and==1){ gotoxy(31,8); printf(“ “); and=0; } or=1; opcao=5; break; case 27: clrscr(); return 0; } break; /* fim da opcao 4 */ case 5: /* opcao 5 */ gotoxy(31,11); ch=getch(); switch (ch){ case 72: opcao=4; break; case 80: opcao=1; break; case ‘ ‘: case 13: printf(“X”); ok=1; break; case 27: clrscr(); return 0; } break; /* fim da opcao 5 */ } /* switch externo */ }while(ok==0); return 1; } /*********** entrada dos valores de limite **************/ 276
void entraLimites(void){ clrscr(); gotoxy(6,1); printf(“******* SOFTWARE PARA-ANALISADOR *********”); gotoxy(23,3); printf(“ANALISADOR LÓGICO PARACONSISTENTE”, 162); gotoxy(5,5); printf(“DIGITE O VALOR SUPERIOR DE CONTROLE DE CERTEZA Vscc=[ ]”); printf(“\n ( Valor positivo entre 0.0 e 1.0 ) “); gotoxy(72,5); c1=inputRL(4, 0.0, 1.0); gotoxy(5,7); printf(“DIGITE O VALOR INFERIOR DE CONTROLE DE CERTEZA Vicc=[ ]”); printf(“\n ( Valor negativo entre 0.0 e -1.0 ) “); gotoxy(72,7); c2=inputRL(4, -1.0, 0.0); gotoxy(5,9); printf(“DIGITE O VALOR SUPERIOR DE CONTROLE DE CONTRADIÇAO Vsci=[ ]”); printf(“\n ( Valor positivo entre 0.0 e 1.0 ) “); gotoxy(72,9); c3=inputRL(4, 0.0, 1.0); gotoxy(5,11); printf(“DIGITE O VALOR INFERIOR DE CONTROLE DE CONTRADIÇAO Vici=[ ]”); printf(“\n ( Valor negativo entre 0.0 e -1.0 ) “); gotoxy(72,11); c4=inputRL(4, -1.0, 0.0); } /********* mostra os valores de limite *************/ void mostraLimites(void){ clrscr(); gotoxy(2,1); printf(“************* SOFTWARE PARACONTROL ****************** “); gotoxy(8,3); printf(“********** ANALISADOR LÓGICO PARACONSISTENTE ***********”, 162); gotoxy(5,5); printf(“Valor superior de controle de certeza ..........Vscc=[ %4.3f]”, c1); gotoxy(5,6); if(c2<0.0) printf(“Valor inferior de controle de certeza ..........Vicc=[%4.3f]”, c2); else printf(“Valor inferior de controle de certeza ..........Vicc=[ %4.3f]”, c2); gotoxy(5,7); printf(“Valor superior de controle de Contradição.........Vsci=[ %4.3f]”, c3); gotoxy(5,8); if(c4<0.0) printf(“Valor inferior de controle de Contradição.........Vici=[%4.3f]”, c4); else printf(“Valor inferior de controle de Contradição.........Vici=[ 277
%4.3f]”, c4); } void entraSinais(void){ int i, letra, y, k; /***********Entrada de apenas um sinal**********/ if(and==0 && or==0){ gotoxy(33,10); printf(“SINAL ANOTADO”); gotoxy(3,12); printf(“SINAL ANOTADO A: Grau de Cren%ca %c1a=[ ], Grau de Descren%ca %c2a=[ ]”,135,230,135,230); gotoxy(4,22); printf(“ENTRE COM OS VALORES: Grau de cren%ca, Grau de descren%ca [ 0.0 … 1.0]”,135,135,130); gotoxy(44,12); n1r = inputRL(4, 0, 1); gotoxy(76,12); n2r = inputRL(4, 0, 1); } /***********Entrada de varios sinais************/ else{ /**Inicializacao**/ if(and==1){ /* minimizar */ for(i=0; i<12; i++){ n1[i]=1.0; n2[i]=1.0; } } if(or==1){ /* maximizar */ for(i=0; i<12; i++){ n1[i]=0.0; n2[i]=0.0; } } gotoxy(33,10); printf(“SINAIS ANOTADOS”); gotoxy(4,22); printf(“ENTRE COM OS VALORES: Grau de cren%ca, Grau de descren%ca [ 0.0 a 1.0] “,135,135,130); /*****Entra com os dois primeiros sinais*****/ gotoxy(3,12); printf(“SINAL ANOTADO A: Grau de Cren%ca %c1a=[ ], Grau de Descren%ca %c2a=[ ]”,135,230,135,230); gotoxy(44,12); n1[0] = inputRL(4, 0, 1); gotoxy(76,12); n2[0] = inputRL(4, 0, 1); gotoxy(3,13); printf(“SINAL ANOTADO B: Grau de Cren%ca %c1b=[ ], Grau de Descren%ca %c2b=[ ]”,135,230,135,230); gotoxy(44,13); n1[1] = inputRL(4, 0, 1); gotoxy(76,13); n2[1] = inputRL(4, 0, 1); /*****Entra com mais sinais*****/ letra=’c’; 278
y=14; k=2; do{ gotoxy(5,23); printf(“Deseja entrar com mais sinais anotados? ”); gotoxy(51,23); i=getche(); if(i==’n’ || i==’N’) break; /***para de entrar sinais***/ if(letra==’j’){ /* ultima letra */ gotoxy(5,23); printf(“Este %c o %cltimo sinal permitido a ser digitado “,130,163); } else{ /* nao e’ a ultima vez */ gotoxy(5,23); printf(“ “); } gotoxy(3,y); printf(“SINAL ANOTADO %c: Grau de Cren%ca %c1%c=[ ] Grau de Descren%ca %c2%c=[ ]”,(letra32),135,230,letra,135,230,letra); gotoxy(44,y); n1[k] = inputRL(4, 0, 1); gotoxy(76,y); n2[k] = inputRL(4, 0, 1); letra++; y++; /*posicao vertical*/ k++; }while( letra <= ‘j’ ); } /* else maximizar ou minimizar */ gotoxy(1,22); printf(“ “); gotoxy(5,23); printf(“Digite ENTER para iniciar an%clise “,160); do {} while(getch() != 13); } /******** calculos ***********/ void calcula(void){ float tmp; for(i=0;i<13;i++) sd[i] = 0; if(and==1){ /*minimizar*/ for(i=0, n1r=1, n2r=1;i<10;i++){ if(n1r>n1[i]) n1r = n1[i]; if(n2r>n2[i]) n2r = n2[i]; } } if(or==1){ /*maximizar*/ for(i=0,n1r=0,n2r=0;i<10;i++){ if(n1r
} } if(normal==0){ tmp=n1r; n1r=n2r; n2r=tmp; } gc = n1r-n2r; /* calcula grau de certeza */ gi = (n1r+n2r)-1; /* calcula grau de Contradição */ } /************* analise dos resultados ********************/ void analise(void){ gotoxy(15,10); printf(“ ******** RESULTADOS ********”); gotoxy(5,12); printf(“O VALOR DO GRAU DE Crença RESULTANTE: %c1R=[%4.3f]”,128,230,n1r); gotoxy(5,13); printf(“O VALOR DO GRAU DE Descrença RESULTANTE: %c2R=[%4.3f]”,128,230, n2r); gotoxy(14,15); printf(“ ** Grau de certeza Gc= %4.3f “, gc); gotoxy(14,16); printf(“ ** Grau de Contradição Gi= %4.3f “, gi); gotoxy(5,22); printf(“O ESTADO lógico RESULTANTE •: “, 162, 130); /************* determinação dos estados extremos **********/ if(gc >= c1){ /* verdadeiro */ sd[1] = 1; printf(“Totalmente VERDADEIRO\n”); } else{ if(gc <= c2){ /* falso */ sd[2] = 1; printf(“Totalmente FALSO\n”); } else{ if(gi >= c3){ /* inconsistente */ sd[0] = 1; printf(“Totalmente INCONSISTENTE\n”); } else{ if(gi <= c4){ /* indeterminado */ sd[3] = 1; printf(“Totalmente INDETERMINADO\n”); } else{ /******** analise para casos não extremos *******/ 280
if(gc >= 0.0){ /* direita */ if(gi >= 0.0){ /* acima */ if(gi >= gc){ sd[4]=1; printf(“INCONSISTENTE tendendo ao VERDADEIRO”); } else{ sd[6]=1; printf(“Quase-VERDADEIRO tendendo ao INCONSISTENTE”); } } else{ /* abaixo */ if(modulo(gi) >= gc){ sd[10]=1; printf(“INDETERMINADO tendendo ao VERDADEIRO”); } else{ sd[7]=1; printf(“Quase-VERDADEIRO tendendo ao INDETERMINADO”); } } } else{ /* esquerda */ if(gi >= 0.0){ /* acima */ if(gi >= modulo(gc)){ sd[5]=1; printf(“INCONSISTENTE tendendo ao FALSO”); } else{ sd[8]=1; printf(“Quase-FALSO tendendo ao INCONSISTENTE”); } } else{ /* abaixo */ if(modulo(gi) >= modulo(gc)){ sd[11]=1; printf(“INDETERMINADO tendendo ao FALSO”); } 281
else{ sd[9]=1; printf(“Quase FALSO tendendo ao INDETERMINADO”); } } } } } } } gotoxy(5,18); printf(“* Saídas discretas: “, 161); gotoxy(9,19); printf(“T V F %c T-v T-f Qv-T Qv-%c Qf-T Qf%c %c -v %c -f “\ ,193, 193, 193, 193, 193); gotoxy(9,20); printf(“%d %d %d %d %d %d %d %d %d %d %d %d”\ , sd[0], sd[1], sd[2], sd[3], sd[4], sd[5], sd[6], sd[7], sd[8], sd[9], sd[10], sd[11]); } float inputRL(int size, float limiteInferior, float limiteSuperior){ int x, y, i, ponto; char str[10], ch; float saida; x = wherex(); y = wherey(); do{ ponto=0; /* 0 = nenhuma ocorrencia de ponto decimal, 1 = uma ocorrencia*/ strcpy(str,” “); gotoxy((x - size),y); for(i=0; i<=size; i++) printf(“ “);/*limpa area de entrada*/ for(i=1; i<(size+1); i++){ gotoxy(x,y); ch =(char) getch(); if(ch==13) /* [ENTER] */{ str[i]=’\0'; break; } if(isdigit(ch))/*algarismo de 0 a 9 */{ if( (ch==’0')&&(i==2)&&(str[1]==’0') )/*algarismo zero*/{ i—; }/*nao deixa escrever mais de um zero ‘a esquerda*/ str[i]=ch; 282
str[i+1]=’\0'; displayRL(str,size); continue; } if(ch==’+’){ str[0]=’ ‘; /* numero positivo */ i—;/*nao anda*/ displayRL(str,size); continue; } if(ch==’-’){ str[0]=’-’; /* numero negativo */ i—;/*nao anda*/ displayRL(str,size); continue; } if( (ch==’.’)&&(ponto==0) )/*primeira ocorrência de ponto decimal*/{ ponto=1; /* para não deixar escrever outro ponto */ if(i==1) { strcat(str, “0.”); i++; } else{ str[i]=’.’; str[i+1]=’\0'; } displayRL(str,size); continue; } if(ch==’\b’) /*backspace*/{ if(i==1) /*vai apagar o sinal*/{ str[0]=’ ‘; str[1]=’\0'; i= 0; displayRL(str,size); continue; } else /*(i>1)*/{ if(str[—i]==’.’)/*vai apagar o pto decimal*/{ ponto=0; /* permite que outro ponto seja digitado */ } /*vai apagar um algarismo ou um pto*/ 283
str[i]=’\0'; i—; displayRL(str,size); continue; } }/*fim backspace*/ /* nao e’ um caractere valido */ i—; /* portanto ignorar caractere */ }/* fim laco for*/ saida = atof(str); }while(! ((saida >= limiteInferior) && (saida <= limiteSuperior)) ); return (saida); } void displayRL(char *s, int size){ int x, y; x=wherex(); y=wherey(); gotoxy((x - size),y); for(i=0; i
284
BIBLIOGRAFIA Referências bibliográficas. [Abe 92] ABE, J.M., Fundamentos da Lógica Anotada, Tese de Doutorado, FFLCH - USP, 135 pp, 1992. [Abe 93a] ABE, J. M., On Annotated Model Theory, Coleção Documentos IEA-USP, série Lógica e Teoria da Ciência, n° 11, 29 pp, 1993. [Abe 93b] ABE, J.M., On Annotated Modal Logic, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 13, 19 p., 1993. [Abe 94a] ABE, J.M., Annotated Logics Qt and ultraproducts, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 16, 1-10, 1994. [Abe 94b] ABE, J.M., On Annotated Modal Logic, Mathematica Japonica, 40, n. 3, pp. 553-560, 1994. [Abe 96] ABE, J.M., Curry Algebras N1, Atti Acc. Lincei Rend. Fis., s.9, vol. 7, 125-128, 1996. [Abe 97a] ABE, J.M., A note on Curry Algebras Pt, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 25, 7 p., 1997. [Abe 97b] ABE, J.M., Filters and ideals of a Pt-Algebra, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 26, 7 p., 1997. [Abe 97c] ABE, J.M., A logical system for reasoning with inconsistency, Anais da 5a Reunião Anual da SBPN’97, Ciência e Cultura na Globalização - Novos Paradigmas, 08 - 10 de agosto de 1997, Águas de Lindóia, SP, 196-201, 1997. [Abe 97d] ABE, J.M., Lógica Paraconsistente e Inteligência Artificial, Coleção Cadernos de Estudos e Pesquisas - UNIP, Série: Estudos e Pesquisas, no 1-004/97, Universidade Paulista, 28p, 1997. [Abe 97e] ABE, J.M., Some Aspects of Paraconsistent Systems and Applications, Logique et Analyse, 157(1997), 83-96. 285
[Abe 98] ABE, J.M., Uma algebrização dos sistemas anotados, Atas da 6a Reunião Anual da Sociedade Brasileira de Pesquisadores Nikkeis SBPN, 254-260, 1998. [Abe 99a] ABE, J.M., Incorporando Tempo em Raciocínio Paraconsistente, atas do VI Congresso Brasileiro de Filosofia, 5 a 10 de setembro de 1999, Instituto Brasileiro de Filosofia, Faculdade de Direito da Universidade de São Paulo, 1999. [Abe 99b] ABE, J.M., Curry algebras Pt, a aparecer em Logique et Analyse, 1999. [Abe 00a] ABE, J.M., Um panorama da Lógica Atual, Coleção Cadernos de Estudos e Pesquisas - UNIP, Série: Estudos e Pesquisas, no 1-004/00, ISSN 1517-9230, Universidade Paulista, 28p, 2000. [Abe 00b] ABE, J.M., Atas do I Congresso de Lógica Aplicada à Tecnologia - LAPTEC’2000, São Paulo, SP - Brasil, Editor, ISBN 85-8579529-8, Editôra Plêiade, 2000. [Abe 00c] ABE, J.M., An Algebraic Version of the Annotated Logics Pt (Preliminary version), Coleção Cadernos de Estudos e Pesquisas - UNIP, Série: Estudos e Pesquisas, no 1-011/00, ISSN 1517-9230, Universidade Paulista, 10p, 2000. [Abe & Akama 98a] ABE, J.M. & S. AKAMA, Incorporating time in paraconsistent reasoning, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 37, 11p., 1998. [Abe & Akama 98b] ABE, J.M. & S. AKAMA, Paraconsistent annotated deontic logics, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 42, 13p., 1998. [Abe & Akama 98c] ABE, J.M. & S. AKAMA, Paraconsistent knowledge and multi-agents, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 41, 14p., 1998. [Abe & Akama 98d] ABE, J.M. & S. AKAMA, On some aspects of decidability of annotated systems, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 51, 14p., 1998. [Abe & Akama 99a] ABE, J.M. & S. AKAMA, A Logical System for Reasoning with Fuzziness and Inconsistencies, Proceedings of the IASTED International Conference on Artitficial Intelligence and Soft Computing (ASC’99), August 9-12, Honolulu, Hawaii, USA, 221-225, 1999. [Abe & Akama 99b] ABE, J.M. & S. AKAMA, Annotated temporal logics D*t, Coleção Documentos, Série Lógica e Teoria da Ciência, IEAUSP, no 53, 15p., 1999. [Abe & Akama 99c] ABE, J.M. & S. AKAMA, Discussive Logics Mt, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 54, 15p., 1999. [Abe & Akama 99d] ABE, J.M. & S. AKAMA, Raciocínio Inconsistente e Multi-agentes, atas do VI Congresso Brasileiro de Filosofia, 5 a 10 286
de setembro de 1999, Instituto Brasileiro de Filosofia, Faculdade de Direito da Universidade de São Paulo, 1999. [Abe & Akama 99e] ABE, J.M. & S. AKAMA, Annotated logics Qt and ultraproducts, a aparecer em Logique et Analyse, 1999. [Abe & Akama 00a] ABE, J.M. & S. AKAMA, On Jáskowski’s Annotated Discursive Logic, Atas do I Congresso de Lógica Aplicada à Tecnologia - LAPTEC’2000, Editôra Plêiade, São Paulo, SP - Brasil, Editor: J.M. Abe, ISBN 85-85795-29-8, 445-458, 2000. [Abe & Akama 00b] ABE, J.M. & S. AKAMA, Paraconsistent annotated temporal logics D*t, aceito no International Joint Conference 7th IBERAMIA (the Ibero-American AI Conference) and 15th SBIA2000 (the Braziliam AI Symposium) Supported by SBC - Sociedade Brasileira de Computação, Brazil; AAIA - Associacion Argentina de Inteligencia Artificial; AEPIA - Associacion Espanola para Inteligencia Artificial; APPIA Associacao Portuguesa para Inteligencia Artificial; AVINTA - Associacion Venezuelana de Inteligencia Artificial; SCCC - Sociedad Chilena de Ciencia de la Computacion; SMCC - Sociedad de Matematica y Computacion de Cuba; SMIA - Sociedad Mexicana de Inteligencia Artificial. Publication in the conference proceedings by Springer-Verlag in the Lecture Notes in Artificial Intelligence series [Abe, Akama & Da Silva Filho 00] ABE, J.M., S. AKAMA & J.I. DA SILVA FILHO, Modalities, paraconsistency, paracompleteness, and AI, Atas do I Congresso de Lógica Aplicada à Tecnologia - LAPTEC’2000, Editôra Plêiade, São Paulo, SP - Brasil, Editor: J.M. Abe, ISBN 85-85795-29-8, 459470, 2000 [Abe, Akama & Sylvan 98] ABE, J.M., S. AKAMA & R. SYLVAN, General annotated logics, with an introduction to full accounting logic, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 39, 17p., 1998. [Abe, Attie, Scalzitti, Tiharu & Yamamoto 99] ABE, J.M., J.P. ATTIE, A. SCALZITTI, E. TIHARU & F.S. YAMAMOTO, Introdução à Lógica Clássica, Editora Plêiade, 1999, 176 págs. [Abe, Ávila & Prado 98] ABE, J.M., B.C. ÁVILA & J.P.A. PRADO, Multi-agents and inconsistency, International Conference on Computational Intelligence and Multimedia Applications 1998, ISBN 981023352-3, H. Selvaraj & B. Verma Editors, World Scientific, (ICCIMA’ 98, Proceedings of the 2nd International Conference), 137-142, 1998. [Abe & Da Silva Filho 96] ABE, J.M. & J.I. DA SILVA FILHO, Implementação de circuitos eletrônicos de funções lógicas paraconsistentes Radix N, Coleção Documentos, Série Lógica e Teoria da Ciência, IEAUSP, no 22, 37 p., 1996. [Abe & Da Silva Filho 98] ABE, J.M. & J.I. DA SILVA FILHO, Inconsistency and Electronic Circuits, Proceedings of The International 287
ICSC Symposium on Engineering of Intelligent Systems (EIS’98), Volume 3, Artificial Intelligence, Editor: E. Alpaydin, ICSC Academic Press International Computer Science Conventions Canada/Switzerland, ISBN 3-906454-12-6, 191-197, 1998. [Abe, Da Silva Filho & Nakamatsu 00] ABE, J.M., J.I. DA SILVA FILHO & K. NAKAMATSU, A Logical System for Reasoning with Inconsistent Deontic Modalities, submetido no Fifth International Conference on Computing Anticipatory Systems, CASYS’2001, Organized by the non-profit association CHAOS, Centre for Hyperincursion and Anticipation in Ordered Systems CHAOS asbl, Institut de Mathématique, Université de Liège, LIEGE, Belgium, Bélgica, 2000. [Abe & Nakamatsu 99] ABE, J.M. & K. NAKAMATSU, Programação Lógica Paraconsistente e Raciocínio Não-monotônico, Defeasible e DefaultFuzzy, atas do VI Congresso Brasileiro de Filosofia, 5 a 10 de setembro de 1999, Instituto Brasileiro de Filosofia, Faculdade de Direito da Universidade de São Paulo, 1999. [Abe, Nakamatsu & Ávila 99] ABE, J.M., K. NAKAMATSU & B.C. ÁVILA, Paraconsistent Annotated Logic Programming, a aparecer no International Journal of Computing Anticipatory Systems, 1999. [Abe & Papavero 91] ABE, J. M. & N. PAPAVERO, Teoria Intuitiva dos Conjuntos, McGraw-Hill, Makron Books, São Paulo, 266 pp, 1991. [Abe, Prado & Ávila 97] ABE, J.M., J.P.A. PRADO & B.C. ÁVILA, On a class of paraconsistent multimodal systems for reasoning, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 24, 12 p., 1997. [Akama & Abe 98a] AKAMA, S. & J.M. ABE, Many-valued and annotated modal logics, IEEE 1998 International Symposium on MultipleValued Logic (ISMVL’98), Proceedings, pp. 114-119, Fukuoka, Japão, 1998. [Akama & Abe 98b] AKAMA, S. & J.M. ABE, Constructive logics as annotated logics, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 40, 9p., 1998. [Akama & Abe 98c] AKAMA, S. & J.M. ABE, Natural Deduction And General Annotated Logics, atas do The First International Workshop on Labelled Deduction (LD’98), Freiburg, Alemanha, 1-14, 1998. Também publicado na Coleção Documentos, Série Lógica e Teoria da Ciência, IEAUSP, no 49, 14p., 1998. [Akama & Abe 98d] AKAMA, S. & J.M. ABE, Many-valued and annotated modal logics (Extended version), Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 38, 10p., 1998. [Akama & Abe 99a] AKAMA, S. & J.M. ABE, Many-valued and annotated modal logics II, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 52, 14p., 1999. [Akama & Abe 99b] AKAMA, S. & J.M. ABE, Epistemic States In Paraconsistent Logic Programming, submetido no Workshop on Multi288
Agent Systems in Logic Programming (ICLP’99), realizado conjuntamente com o International Conference on Logic Programming 1999, 29/11 a 04/12/ 1999, Las Cruces, Novo México, USA, 1999. [Akama & Abe 99c] AKAMA, S. & J.M. ABE, Fuzzy annotated logics, aceito no IPMU’2000. [Akama & Abe 99d] AKAMA, S. & J.M. ABE, Annotated Rules with Uncertainty in Expert Systems, aceito no Eighteenth IASTED International Conference on Applied Informatics (AI 2000) held February 14-17, 2000, Innsbruck, Austria. [Akama & Abe 00a] AKAMA, S. & J.M. ABE, Annotated logics and uncertainty, Atas do I Congresso de Lógica Aplicada à Tecnologia LAPTEC’2000, Editôra Plêiade, São Paulo, SP - Brasil, Editor: J.M. Abe, ISBN 85-85795-29-8, 449-507, 2000. [Akama & Abe 00b] AKAMA, S. & J.M. ABE, Fuzzy annotated logics, Anais do 8th International Conference on Information Processing and Management of Uncertainty in Knowledge Based Systems, IPMU’2000, Organized by: Universidad Politécnica de Madrid (Spain), July 3-7, 2000, Madri, Espanha, Vol. 1, 504-508, 2000. [Ávila 96] ÁVILA, B.C., Uma Abordagem Paraconsistente Baseada em Lógica Evidencial para Tratar Exceções em Sistemas de Frames com Múltipla Herança, tese de Doutoramento, Universidade de São Paulo, São Paulo, 1996. [Ávila & Abe 99a] ÁVILA, B.C. & J.M. ABE, Inconsistencies, Exceptions, and Frame Systems, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 57, 25p., 1999. [Ávila & Abe 99b] ÁVILA, B.C. & J.M. ABE, Handling Inconsistencies in Logic Programming, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 56, 22p., 1999. [Ávila, Abe & Prado 97a] ÁVILA, B.C., J.M. ABE & J.P.A PRADO, Um sistema de frames utilizando programação lógica evidencial, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 27, 43p., 1997. [Ávila, Abe & Prado 97b] ÁVILA, B.C., J.M. ABE & J.P.A PRADO, A utilização de redes de herança em representação de conhecimento, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 28, 18p., 1997. [Ávila, Abe & Prado 97c] ÁVILA, B.C., J.M. ABE & J.P.A PRADO, Uma extensão da linguagem Prolog para suportar programação lógica evidencial, Coleção Documentos, Série Lógica e Teoria da Ciência, IEAUSP, no 29, 43p., 1997. [Ávila, Abe & Prado 97d] ÁVILA, B.C., J.M. ABE & J.P.A. PRADO, Reasoning in Paraconsistent Frame Systems, The Second International Workshop on CSCW in Design, P. Siriruchatapong Z. Lin & J. P. Barthes (Eds), International Academic Publishers, ISBN: 7-80003-412-7/TP.19, Bangkok, Thailand, pp. 239-244, 1997. 289
[Ávila, Abe & Prado 97e] ÁVILA, B.C., J.M. ABE & J.P.A. PRADO, ParaLog-e: A Paraconsistent Evidential Logic Programming Language, XVII International Conference of the Chilean Computer Science Society, IEEE Computer Society Press, pp 2-8, Valparaíso, Chile, Novembro, 1997. [Ávila, Abe & Prado 98a] ÁVILA, B.C., J.M. ABE & J.P.A. PRADO, ParaLog-e: A Paraconsistent Logic Programming Language, International Conference on Computational Intelligence and Multimedia Applications 1998, ISBN 981-023352-3, H. Selvaraj & B. Verma Editors, World Scientific, (ICCIMA’ 98, Proceedings of the 2nd International Conference), 143-148, 1998. [Ávila, Abe & Prado 98b] ÁVILA, B.C., J.M. ABE & J.P.A. PRADO, A Paraconsistent Logic Programming Language, Proceedings of The International ICSC Symposium on Engineering of Intelligent Systems (EIS’98), Volume 3, Artificial Intelligence, Editor: E. Alpaydin, ICSC Academic Press International Computer Science Conventions Canada/Switzerland, ISBN 3-906454-12-6, 281-287, 1998. [Barros, Da Costa & Abe 95] BARROS, C.M., N.C.A. DA COSTA & J.M. ABE, Tópico de Teoria dos Sistemas Ordenados, Vol II: Sistemas de Curry, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 20, 132 p., 1995. [Borestein 88] BORESTEIN, J & Y. KOREN, “Obstacle avoidance with ultrasonic sensors” IEEE Journal of Robotics and automation, N.Y, 1988 . [Da Costa 80] DA COSTA, N.C.A., Ensaio sobre os Fundamentos da Lógica, Hucitec, São Paulo, 1980. [Da Costa & Abe 99a] DA COSTA, N.C.A. & J.M. ABE, Inteligência Artificial Paraconsistente, atas do VI Congresso Brasileiro de Filosofia, 5 a 10 de setembro de 1999, Instituto Brasileiro de Filosofia, Faculdade de Direito da Universidade de São Paulo, 1999. [Da Costa & Abe 99b] DA COSTA, N.C.A. & J.M. ABE, Algumas Aplicações Recentes dos Sistemas Paraconsistentes à Inteligência Artificial e Robótica, a aparecer, 2000. [Da Costa & Abe 00a] DA COSTA, N.C.A. & J.M. ABE, Aspectos Sobre Aplicações dos Sistemas Paraconsistentes, Atas do I Congresso de Lógica Aplicada à Tecnologia - LAPTEC’2000, Editôra Plêiade, São Paulo, SP - Brasil, Editor: J.M. Abe, ISBN 85-85795-29-8, 559-571, 2000. [Da Costa, Abe, Da Silva Filho, Murolo & Leite 99] DA COSTA, N.C.A., J.M. ABE, J.I. DA SILVA FILHO, A.C. MUROLO & C.F.S. LEITE, Lógica Paraconsistente Aplicada, ISBN 85-224-2218-4, Editôra Atlas, 214 págs., 1999. [Da Costa, Abe & Subrahamanian 91] DA COSTA, N.C.A., J.M. ABE & V.S. SUBRAHMANIAN, Remarks on annotated logic, Zeitschrift f. math. Logik und Grundlagen d. Math. 37, pp 561-570, 1991. 290
[Da Silva Filho 97] DA SILVA FILHO, J.I., Implementação de circuitos lógicos fundamentados em uma classe de Lógicas Paraconsistentes Anotadas, Dissertação de Mestrado-EPUSP, São Paulo, 1997. [Da Silva Filho 99] DA SILVA FILHO, J.I., Métodos de interpretação da Lógica Paraconsistente Anotada com anotação com dois valores LPA2v com construção de Algoritmo e implementação de Circuitos Eletrônicos, EPUSP, Tese de Doutoramento, São Paulo, 1999. [Da Silva Filho & Abe 97a] DA SILVA FILHO, J.I. & J.M. ABE, Lógica paraconsistente anotada e circuitos de portas lógicas, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 23, 41p., 1997. [Da Silva Filho & Abe 97b] DA SILVA FILHO, J.I. & J.M. ABE, Módulo analisador paraconsistente: uma proposta de circuito lógico paraconsistente, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 30, 18p., 1997. [Da Silva Filho & Abe 97c] DA SILVA FILHO, J.I. & J.M. ABE, Parasensor: um sensor paraconsistente projetado para uso em sistema eletrônico embasado em lógica paraconsistente anotada, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 31, 18p., 1997. [Da Silva Filho & Abe 98a] DA SILVA FILHO, J.I. & J.M. ABE, Algoritmo Para-analisador - Parte I: um algoritmo para tratamento de inconsistências em sistemas de controle, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 43, 18p., 1998. [Da Silva Filho & Abe 98b] DA SILVA FILHO, J.I. & J.M. ABE, Algoritmo Para-analisador - Parte II: aplicação do operador negação (NOT) e dos conectivos da conjunção (AND) e da disjunção (OR) da lógica paraconsistente anotada de anotação com dois valores Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 44, 15p., 1998. [Da Silva Filho & Abe 98c] DA SILVA FILHO, J.I. & J.M. ABE, Algoritmo Para-analisador - Parte III: propostas de aplicações do algoritmo da lógica paraconsistente anotada de anotação com dois valores - LPA2v em sistemas especialistas de Inteligência Artificial, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 45, 15p., 1998. [Da Silva Filho & Abe 98d] DA SILVA FILHO, J.I. & J.M. ABE, Algoritmo Para-analisador - Parte IV: propostas de aplicações do algoritmo da lógica paraconsistente anotada de anotação com dois valores - LPA2v em sistemas de controle de Robôs, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 46, 22p., 1998. [Da Silva Filho & Abe 98e] DA SILVA FILHO, J.I. & J.M. ABE, Controlador lógico Para-Fuzzy - Parte I: Um novo método de controle híbrido utilizando lógica paraconsistente e lógica fuzzy, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 47, 20p., 1998. [Da Silva Filho & Abe 98f] DA SILVA FILHO, J.I. & J.M. ABE, Controlador lógico Para-Fuzzy - Parte II: Um controlador híbrido indicado 291
para tratamento de inconsistências utilizando lógica paraconsistente e lógica fuzzy, Coleção Documentos, Série Lógica e Teoria da Ciência, IEAUSP, no 48, 22p., 1998. [Da Silva Filho & Abe 99a] DA SILVA FILHO, J.I. & J.M. ABE, ParaAnalyser and Inconsistencies in Control Systems, Proceedings of the IASTED International Conference on Artitficial Intelligence and Soft Computing (ASC’99), August 9-12, Honolulu, Hawaii, USA, 78-85, 1999. [Da Silva Filho & Abe 99b] DA SILVA FILHO, J.I. & J.M. ABE, ParaFuzzy Logic Controller - Part I: A New Method of Hybrid Control Indicated for Treatment of Inconsistencies Designed with the Junction of the Paraconsistent Logic and Fuzzy Logic, Proceedings of the International ICSC Congress on Computational Intelligence Methods and Applications CIMA’99, Rochester Institute of Technology, RIT, Rochester, N.Y., USA, ISBN 3-906454-18-5, Editors: H. Bothe, E. Oja, E. Massad & C. Haefke, ICSC Academic Press, International Computer Science Conventions, Canada/ Switzerland, 113-120, 1999. [Da Silva Filho & Abe 99c] DA SILVA FILHO, J.I. & J.M. ABE, ParaFuzzy Logic Controller - Part II: A Hybrid Logical Controlller Indicated for Treatment of Fuzziness and Inconsistencies, Proceedings of the International ICSC Congress on Computational Intelligence Methods and Applications CIMA’99, Rochester Institute of Technology, RIT, Rochester, N.Y., USA, ISBN 3-906454-18-5, Editors: H. Bothe, E. Oja, E. Massad & C. Haefke, ICSC Academic Press, International Computer Science Conventions, Canada/Switzerland, 106-112, 1999. [Da Silva Filho & Abe 99d] DA SILVA FILHO, J.I. & J.M. ABE, Lógica Paraconsistente Aplicada à Robótica”, atas do VI Congresso Brasileiro de Filosofia, 5 a 10 de setembro de 1999, Instituto Brasileiro de Filosofia, Faculdade de Direito da Universidade de São Paulo, 1999. [Da Silva Filho & Abe 99e] DA SILVA FILHO, J.I. & J.M. ABE, Contribuição da Lógica Paraconsistente ao Campo da Engenharia”, atas do VI Congresso Brasileiro de Filosofia, 5 a 10 de setembro de 1999, Instituto Brasileiro de Filosofia, Faculdade de Direito da Universidade de São Paulo, 1999. [Da Silva Filho & Abe 99f] DA SILVA FILHO, J.I. & J.M. ABE, Métodos de Aplicações da Lógica Paraconsistente Anotada, aceito na 7a Reunião Anual da Sociedade Brasileira de Pesquisadores Nikkeis - SBPN, 29-31/07/1999, Londrina, PR, 1999. [Da Silva Filho & Abe 00a] DA SILVA FILHO, J.I. & J.M. ABE, Paraconsistent Electronic Circuits, trabalho convidado, Fourth International Conference on Computing Anticipatory Systems, CASYS’2000, Fourth International Conference on Computing Anticipatory Systems, CASYS’2000, Organized by the non-profit association CHAOS, Centre for Hyperincursion and Anticipation in Ordered Systems CHAOS asbl, Institut de 292
Mathématique, Université de Liège, LIEGE, Belgium, Bélgica, 7-12 de agosto de 2000, 2000. [Da Silva Filho & Abe 00b] DA SILVA FILHO, J.I. & J.M. ABE, Paraconsistent Analyser Module, trabalho convidado, Fourth International Conference on Computing Anticipatory Systems, CASYS’2000, Fourth International Conference on Computing Anticipatory Systems, CASYS’2000, Organized by the non-profit association CHAOS, Centre for Hyperincursion and Anticipation in Ordered Systems CHAOS asbl, Institut de Mathématique, Université de Liège, LIEGE, Belgium, Bélgica, 7-12 de agosto de 2000, 2000. [Da Silva Filho & Abe 00c] DA SILVA FILHO, J.I. & J.M. ABE, Emmy: an autonomous mobile robot, submetido para publicação nos anais do WCP’2000, Editora Marcel Dekker. [Da Silva Filho, Abe & Bonesso 00] DA SILVA FILHO, J.I., J.M. ABE & G.A. BONESSO, Simulating Inconsistencies in a Paraconsistent Logic Controller, submetido no Fifth International Conference on Computing Anticipatory Systems, CASYS’2001, Organized by the non-profit association CHAOS, Centre for Hyperincursion and Anticipation in Ordered Systems CHAOS asbl, Institut de Mathématique, Université de Liège, LIEGE, Belgium, Bélgica, 2000. [Da Silva Filho, Abe & Sanches 97a] DA SILVA FILHO, J.I., J.M. ABE & P.L. SANCHES, Circuitos de portas lógicas primitivas fundamentados em lógica paraconsistente anotada, III WORKSHOP DE IBERSHIP, 19-21 de fevereiro 1997, Departamento de Ingeniería Elétrica, CINVESTAV - IPN, México D.F., México, 227-237, 1997 [Da Silva Filho, Abe & Sanches 97b] DA SILVA FILHO, J.I., J.M. ABE & P.L. SANCHES, Circuitos de portas lógicas primitivas implementados a partir de uma classe de lógicas paraconsistentes anotadas, Boletim Técnico da Escola Politécnica da USP, Departamento de Engenharia Eletrônica, ISSN 1413-2206, BT/PEE/9723, 13p.,1997. [Da Silva Filho, Abe, Torresa, César, Mário, Santos, Cancino & Salles 99] DA SILVA FILHO, J.I., J.M. ABE, C.R. TORRES, A.M. CÉSAR, M.C. MÁRIO, A.M. SANTOS, I.J. CANCINO Jr. & D.M. SALLES, Emmy: Robô Móvel Autônomo Paraconsistente - Protótipo 1, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 59, 17 págs, 1999. [Da Silva Filho, Bonesso, & Abe 00] DA SILVA FILHO, J.I., G.A. BONESSO & J.M. ABE, Para-Sim: Simulador de Controle Lógico Paraconsistente, Atas do I Congresso de Lógica Aplicada à Tecnologia LAPTEC’2000, Editôra Plêiade, São Paulo, SP - Brasil, Editor: J.M. Abe, ISBN 85-85795-29-8, 603-611, 2000. [Enembreck, Ávila & Abe 99] ENEMBRECK, F., B.C. ÁVILA & J.M. ABE, Um editor de conhecimento genérico em sistema de Frames paraconsistentes, Coleção Documentos, Série Lógica e Teoria da Ciên293
cia, IEA-USP, no 55, 77p., 1999. [Enriques 22] ENRIQUES, F., Per la Storia della Logica, Zanichelli, Bolonha, 1922. [Enriques & Santillana 32] ENRIQUES, F. & G. SANTILLANA, Storia del Pensiero Scientifico, vol. 1, Zanichelli, Bolonha, 1932. [Enriques & Santillana 36] ENRIQUES, F. & G. SANTILLANA, Compedio di Storia del Storia del Pensiero Scientifico, Zanichelli, Bolonha, 1936. [Fischler & Frschein 87] FISCHLER, M.A. & O. FIRSCHEIN, “Intelligence The Eye, The Brain and The Computer” Addison-Wesley Publishing Company, USA, 1987. [Iséki & Abe 98] ISÉKI, K. & J.M. ABE, A survey on BCK and BCI algebras, Atas do I Congresso de Lógica Aplicada à Tecnologia LAPTEC’2000, Editôra Plêiade, São Paulo, SP - Brasil, Editor: J.M. Abe, ISBN 85-85795-29-8, 430-444, 2000. [Iséki & Abe 00] ISÉKI, K. & J.M. ABE, Lógica Matemática e Aplicações, a aparecer, 2000. [Hebb 49] HEBB, D. “The Organization of Behavior ” Wiley, New York, 1949. [McCulloch 43] McCULLOCH, W & W. PITTS, “A Logical Calculus of the Ideas Immanent in Nervous Activity”, Bulletin of Mathematical Biophysics, 1943. [Nakamatsu & Abe 99] NAKAMATSU, K. & J.M. ABE, Reasonings Based On Vector Annotated Logic Programs, atas do CIMCA’99, International Conference on Computational Intelligence for Modelling Control and Automation, Edited by M. Mohammadian, IOS Press - Ohmsha, ISBN 90 5199 474 5 (IOS Press), Netherlands, 396-403, 1999. [Nakamatsu, Abe & Suzuki 98] NAKAMATSU, K., J.M. ABE & A. SUZUKI, An approximate reasoning in a framework of vector annotated logic programming, The Vietnam-Japan Bilateral Symposium on Fuzzy Systems And Applications, VJFUZZY’ 98, Nguyen H. Phuong & Ario Ohsato (Eds), HaLong Bay, Vietnam, 521-528, 1998. [Nakamatsu, Abe & Suzuki 99a] NAKAMATSU, K., J.M. ABE & A. SUZUKI, Nonmonotonic, Defesiable, Default-Fuzzy & Paraconsistent Reasonings, em Aplicações de Programação Anotada, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 60, 13-22, 1999. [Nakamatsu, Abe & Suzuki 99b] NAKAMATSU, K., J.M. ABE & A. SUZUKI, Defesiable Reasoning Between Conflicting Agents Based on VALPSN, em Aplicações de Programação Anotada, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 60, 5-12, 1999. [Nakamatsu, Abe & Suzuki 99c] NAKAMATSU, K., J.M. ABE & A. SUZUKI, “Defeasible Reasoning Between Conflicting Agents Based on VALPSN”, American Association for Artificial Intelligence - AAAI’99 294
Workshop on Agents’ Conflicts, ISBN 1-57735-092-8, TR WS-99-08, AAAI Press - American Association for Artificial Intelligence, Menlo Park, California, USA, 20-27, 1999. [Nakamatsu, Abe & Suzuki 99d] NAKAMATSU, K., J.M. ABE & A. SUZUKI, Defesiable Reasoning Based on VALPSN and applications, anais do 3rd Australian Commonsense Reasoning Workshop, 12th Australian Joint Conference on Artificial Intelligence (AI’99), Sydney, Austrália, 114-130, 1999. [Nakamatsu, Abe & Suzuki 00a] NAKAMATSU, K., J.M. ABE & A. SUZUKI, Raciocínio automático em lógica deôntica “defeasible” paraconsistente, Atas do I Congresso de Lógica Aplicada à Tecnologia LAPTEC’2000, Editôra Plêiade, São Paulo, SP - Brasil, Editor: J.M. Abe, ISBN 85-85795-29-8, 471-480, 2000. [Nakamatsu, Abe & Suzuki 00b] NAKAMATSU, K., J.M. ABE & A. SUZUKI, trabalho convidado, Fourth International Conference on Computing Anticipatory Systems, CASYS’2000, Organized by the non-profit association CHAOS, Centre for Hyperincursion and Anticipation in Ordered Systems CHAOS asbl, Institut de Mathématique, Université de Liège, LIEGE, Belgium, Bélgica, 7-12 de agosto de 2000, 2000. [Nakamatsu, Abe & Suzuki 00c] NAKAMATSU, K., J.M. ABE & A. SUZUKI, Annotated Semantics for Defeasible Deontic Reasoning, aceito no The Second International Conference on Rough Sets and Current Trends in Computing - RSCTC’2000, October 16-19, 2000, Banff, Canada, Conference Organization Conference Chair: Wojciech Ziarko, University of Regina, Canada Publication in the conference proceedings by Springer-Verlag in the Lecture Notes in Artificial Intelligence series. [Nakamatsu, Hasegawa, Abe & Suzuki 99a] NAKAMATSU, K., Y. HASEGAWA, J.M. ABE & A. SUZUKI, A Framework for Intelligent Systems Based on Vector Annotated Logic Programs, IPMM’99 The Second International Conference on Intelligent Processing and Manufacturing of Materials, ISBN 0-7803-5489-3, Editors: J.A. Meech, M.M. Veiga, M.H. Smith & S.R. LeClair, IEEE Catalogue Number: 99EX296, Library of Congress Number: 99-61516, Honolulu, Hawaii, USA, 695-702, 1999. [Nakamatsu, Hasegawa, Abe & Suzuki 99b] NAKAMATSU, K., Y. HASEGAWA, J.M. ABE & A. SUZUKI, A Framework for Intelligent Systems, em Aplicações de Programação Anotada, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 60, 23-30, 1999. [Negoita & Ralescu 75] NEGOITA, C.V. & D.A. RALESCU, Applications of Fuzzy Sets to Systems Analysis, John Wiley & Sons, 1975. [Prado 96] PRADO, J.P.A., Uma Arquitetura em IA Baseada em Lógica Paraconsistente, tese de Doutoramento, Universidade de São Paulo, 1996. 295
[Prado & Abe 98] PRADO, J.P.A. & J.M. ABE, Uma arquitetura para Inteligência Artificial Distribuída baseada em lógica paraconsistente anotada, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 33, 19p., 1998. [Prado & Abe 95] PRADO, J.P.A. & J.M. ABE, Um Planejador Baseado em Lógica Paraconsistente. 2o Simpósio Brasileiro de Automação Inteligente, Curitiba, pp. 177-178, 1995. [Prado, Abe & Ávila 98a] PRADO, J.P.A., J.M. ABE & B.C. ÁVILA, Fundamentos da arquitetura Blackboard, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 35, 29p., 1998. [Prado, Abe & Ávila 98b] PRADO, J.P.A., J.M. ABE & B.C. ÁVILA, Inteligência Artificial Distribuída: aspectos, Coleção Documentos, Série Lógica e Teoria da Ciência, IEA-USP, no 36, 35p., 1998. [Prado, Abe & Rillo 95] PRADO, J.P.A., J.M. ABE & M. RILLO, A paraconsistent planning system, In: International Conference on CAD/ CAM, Robotics and Factories of the Future, 11, Pereira, 1995, 327-338. [Resconi & Abe 97] RESCONI, G. & J.M. ABE, Multilevel uncertainty logic, Quaderni Del Seminario Matematico Di Brescia, no 14/97, Università Cattolica del Sacro Cuore e Università degli Studi di Brescia, 28p, Itália, 1997. [Rosenblatt 62] ROSEMBLATT, “Principles of Neurodynamics”, Spartan Books, NY, 1962. [Siebert 68] SIEBERT, W. “Stimulus Transformation in Peripheral Auditory System in Recognizing Patterns” Ed. Murray Eden, MIT Press, Cambridge, 1968. [Shoenfield 67] SHOENFIELD, J.R., Mathematical Logic, AddisonWesley, 1967. [Sylvan & Abe 96] SYLVAN, R. & J.M. ABE, On general annotated logics, with an introduction to full accounting logics, Bulletin of Symbolic Logic, 2, 118-119, 1996. [Zadeh 73] ZADEH, L., Outline of a New Approach to the Analysis of Complex Systems and Decision Processes” - IEEE Transaction on Systems, Mam and Cybernectics, vol. SMC-3, No 1, p.p. 28-44, January, 1973.
296