Baixe o app para aproveitar ainda mais
Prévia do material em texto
LÓGICA PARA INTELIGÊNCIA ARTIFICIAL Luiz Fernando Calaça Silva Lógica Fuzzy Objetivos de aprendizagem Ao final deste texto, você deve apresentar os seguintes aprendizados: � Detalhar a definição e modelagem de variáveis linguísticas. � Descrever as operações sobre conjuntos Fuzzy. � Explicar o processo de inferência Fuzzy. Introdução Quando comparada com a conhecida lógica aristotélica booleana ou biva- lente, percebe-se uma grande importância na lógica Fuzzy, pois ela aponta que o mundo real não é definido apenas por verdadeiro ou falso e que há uma relação entre os conjuntos. Por exemplo, quando pensamos no ar atmosférico, a faixa de valores de temperatura se relaciona com a de umidade, e, entre tais interações, é possível inferir fenômenos físicos. Assim, originaram-se diversos estudos de estatística e probabilidade para o contexto. Quando alguém diz que está escuro em um determinado local, seria possível remodelar dizendo o quanto falta luz, realizar a chamada fuzzifi- cação e, então, criar graus de falta de luz, uma vez que é preciso modelar esse problema para que represente a realidade. Os conceitos iniciais da teoria Fuzzy foram estudados pelo lógico polonês Jan Łukasiewicz (1878–1956). Em 1920, ele introduziu conjuntos com graus de pertinência, os quais diferiam dos conjuntos clássicos, em que um elemento pertencia somente a um conjunto. Então, Łukasiewicz criou três graus — 0, ½ e 1 — e, mais tarde, os expandiu para um faixa de valores infinitos entre 0 e 1. A primeira publicação sobre lógica Fuzzy é datada de 1965, quando assim foi denominada. Seu autor foi Lotfi Asker Zadeh, professor em Berkeley, Universidade da California. Zadeh criou a lógica Fuzzy combi- nando os conceitos da lógica clássica com os conjuntos de Łukasiewicz, definindo graus de pertinência. Neste capítulo, você estudará sobre a definição e a modelagem de variáveis linguísticas. Além disso, conhecerá os conjuntos e os processos de inferência Fuzzy. 1 A modelagem dos termos Fuzzy Uma variável linguística v no universo de discurso U é definida em um con- junto de elementos E(u), com cada valor sendo um número Fuzzy definido em U. Por exemplo, se u for pressão, seu conjunto de termos E(v) poderia ser: E(pressão) = {muito baixa, baixa, média, alta, muito alta} onde muito baixa, baixa, média, alta, muito alta são as variáveis linguís- ticas da grandeza pressão. Essas variáveis podem ser representadas conforme a Figura 1, onde o eixo vertical (y) contém as faixas de valores de saída, após estas serem atribuídas às variáveis linguísticas, ao passo que o eixo horizontal (x) contém a variação dos valores da pressão. A propriedade fundamental da lógica Fuzzy está no contexto da função de pertinência µA(x), pois contém todos os valores dentro do intervalo [0,1], como pode ser observado no exemplo da Figura 1. Isso mostra que um dado elemento pode ser participante, parcialmente, de um conjunto, indicado por um valor fracionário dentro do intervalo numérico. Já a função substancial das variáveis linguísticas é prover uma forma sistemática para uma caracterização aproximada de fenômenos complexos ou mal definidos, descrevendo melhor a realidade, a fim de representar adequadamente um problema e uma solução. Observe que os conjuntos na Figura 1 se entrelaçam, demonstrando que um elemento pode pertencer a diversos conjuntos. Assim, há uma transição entre um e outro, como, por exemplo, entre o quente e o frio. Lógica Fuzzy2 Figura 1. Representação hipotética de uma variável linguística. Fonte: Adaptada de Caversan (2009). 1 0,5 0 0 10 20 30 40 50 60 70 80 90 x Muito perto Perto Médio Distante Muito distante Em suma, identificar uma variável linguística é observar se, ocultamente, ela repre- senta mais dados do que aponta. Por exemplo, se alguém disser que está chovendo, deveríamos perguntar: de que forma? Muito, pouco, demais. Desse modo, é preciso observar bem, por exemplo, os advérbios de intensidade: demais, mais, menos, muito, quanto, quão, quase, tanto, pouco; as locuções adverbiais: em excesso, de todo, de muito, por completo, por demais; os adjetivos: feio, bonito, grande, cheio; e os advérbios de modo: bem, mal, melhor, pior, devagar. 2 Operações sobre os conjuntos Fuzzy A lógica clássica (booleana) define os conjuntos clássicos, que abrangem uma coleção de objetos de qualquer tipo. Nesse conjunto, um determinado objeto pertence ou não a um conjunto. Além disso, existem operações que podem ser aplicadas a ele, como, por exemplo, a união, a interseção e a complemen- tação. Definir um conjunto clássico é definir uma função com uma regra de associação F(x), que retorna {0,1} para um x, o que significa que x pertence (1 — verdadeiro) ou não pertence (0 — falso) ao conjunto. 3Lógica Fuzzy No contexto da teoria dos conjuntos Fuzzy, existe um grau de pertença de cada elemento a um conjunto. Para melhor compreensão, considere o exemplo a seguir. 1. conjunto de elementos das pessoas com bem-estar social no Brasil. 2. conjunto das pessoas com dinheiro no Brasil. É possível verificar que não há um limite exato para concluir quando um elemento pertence ou não ao respectivo conjunto. Nos exemplos acima, uma pessoa pode ter pouco dinheiro, porém ter um alto ou baixo bem-estar social. Contudo, com a teoria Fuzzy, existem critérios e graus de pertinência para tais problemas. Ao organizar o pensamento, é possível perceber que os valores designados aos elementos do conjunto universo U também pertencem ao intervalo infinito de números reais de 0 a 1, isto é, o intervalo fechado [0,1]: µA: U ↦ [0, 1] Os valores infinitos entre 0 e 1 mostram o grau de pertinência dos elementos do conjunto U em relação ao conjunto A, tornando possível que um elemento possa pertencer a diversos conjuntos. Desse modo, a função é definida como de pertinência, ao passo que o conjunto A é definido como um conjunto Fuzzy. Vejamos um exemplo com leitura de acordo com a lógica Fuzzy e o grau de pertinência. Considere como exemplo o conjunto dos jogadores da seleção brasileira de futebol e o quão eles estão confirmados para a próxima Copa do Mundo, a fim de dizer, hipoteticamente, o quão eles pertencem ao grupo de jogadores que serão selecionados. O conjunto 1 é composto pelos números da camisa de cada jogador, ao passo que o conjunto 2 é composto pela relação de pertinência junto à seleção: 1. Conjunto de jogadores: {13, 11, 23, 5, 12, 20, 9, 6, 4, 7, 17} 2. Conjunto de pertinência junto à seleção brasileira = {(13,0.2), (11,0.2), (23,0.2), (5,0.2), (12,0.2), (20,0.2), (9,1.0), (6,0.1), (4,0.6), (7,0.5), (17,0.2)} O jogador cujo número da camisa é 9 tem pertença 1 no conjunto anterior, portanto, é considerado plenamente participante do grupo para a Copa do Mundo. Lógica Fuzzy4 Descrevendo os conjuntos Fuzzy Dentro dos conjuntos Fuzzy, tem-se as seguintes afirmações sobre as opera- ções em seus conjuntos, as quais possuem uma certa referência nos conjuntos clássicos. � A cardinalidade de um conjunto Fuzzy A sobre um conjunto universo finito U é a soma dos graus de pertinência de todos os elementos de U em A e indica-se: |A| = (x)x U ∑ ∈ � O conjunto Fuzzy A é um subconjunto de um conjunto Fuzzy B se o grau de pertinência de cada elemento do conjunto universo U no conjunto A é menor ou igual que seu grau de pertinência no conjunto B. � Os conjuntos Fuzzy A e B são iguais se µA (x) = µB (x) para todo elemento x ∈ U e indica-se A = B. � Os conjuntos Fuzzy A e B não são iguais se µA (x) ≠ µB (x) para no mínimo um x ∈ U e indica-se A ≠ B. � O conjunto Fuzzy A é um subconjunto próprio do conjunto Fuzzy B quando A é um subconjunto de B e A ≠ B, isto é, µA (x) £ µB (x) para todo x ∈ U e µA (x) ≤ µB (x) para, no mínimo, um x ∈ U e indica-se A ⊂ B se e somente se A ⊆ B e A ≠ B. � O complemento de um conjunto Fuzzy A em relação ao conjunto universo U é indicado por A¢, e a função de pertinência é definida como: µA (x) = 1 − µA (x) para todo x∈ U. 5Lógica Fuzzy A = {x ∈ R| 1 ≤ x ≤ 3} B = {x ∈ R| 2 ≤ x ≤ 4} A (x) = {x ∈ R| x < 1, x > 3} A Figura 2, a seguir, apresenta a representação da complementação dos conjuntos. Figura 2. Representação da complementação dos conjuntos. Fonte: Adaptada de Gomide (2009). A (x) = 1 – A (x) ∀x∈X Dado o conjunto H de homens altos e o conjunto M dos de média altura (esses conjuntos serão utilizados nos próximos exemplos): H = (0/1.80, 0.25/182.5, 0.5/185, 0.75/187.5, 1/190) M = (0/165, 1/175, 0.5/180, 0.25/182.5, 0.0/185, 0/190) Se um elemento x ∈ U tem grau de pertinência 0.7 no conjunto Fuzzy A, seu grau de pertinência em A¢ será 0.3. O complemento C de H é, justamente, o dos não altos: C = (1/1.80, 0.75/182.5, 0.5/185, 0.25/187.5, 0/190) Lógica Fuzzy6 � A união de dois conjuntos Fuzzy A e B é um conjunto Fuzzy A ⋃ B tal que para todo x ∈ U µA ⋃ B (x) = máx [µA (x), µB (x) ]. A união U dos dois conjuntos é justamente o contrário da intersecção e comporá os elementos em comum de maior pertinência. A partir dos conjuntos H e M, tem-se que: M = (0.5/180, 0.25/182.5, 0.5/185, 1/190) A = {x ∈ R| 1 ≤ x ≤ 3} B = {x ∈ R| 2 ≤ x ≤ 4} A ⋃ B: {x ∈ R| 1≤ x ≤ 4} A Figura 3, a seguir, apresenta a representação da união dos conjuntos. Figura 3. Representação da união dos conjuntos. Fonte: Adaptada de Gomide (2009). (A ⋃ B)(x) = máx [A(x), B(x)] ∀x∈X 7Lógica Fuzzy � A intersecção de dois conjuntos Fuzzy A e B é um conjunto Fuzzy A ∩ B tal que para todo x ∈ U µA∩B(x) = min [µA (x), µB (x)]. A intersecção I dos dois conjuntos é justamente o encontro dos elementos em comum de menor pertinência. A partir dos conjuntos H e M, tem-se que: I = (0/180, 0.25/182.5, 0/185, 0/190) A = {x∈R| 1 ≤ x ≤ 3} B = {x∈R| 2 ≤ x ≤ 4} A ⋂ B: {x∈R| 2 ≤ x ≤ 3} A Figura 4, a seguir, apresenta a representação da intersecção dos conjuntos. Figura 4. Representação da intersecção dos conjuntos. Fonte: Adaptada de Gomide (2009). (A ⋂ B)(x) = mín [A(x), B(x)] ∀x∈X Propriedades dos operadores de conjuntos Fuzzy De modo similar aos conjuntos clássicos, na teoria Fuzzy existem propriedades envolvidas na operação entre conjuntos, conforme o Quadro 1. Lógica Fuzzy8 Comutatividade A ∪ B = B ∪ A A ∩ B = B ∩ A Associatividade A ∪ (B ∪ C) = (A ∪ B) ∪ C A ∩ (B ∩ C) = (A ∩ B) ∩ C Distributivo A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C) A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C) Idempotência A ∪ A = A A ∩ A = A Condições de fronteira A ∪ φ = A e A ∪ X = X A ∩ φ = φ e A ∩ X = A Involução ═ A = A Transitividade Se A ⊂ B e B ⊂ C, então A ⊂ C Quadro 1. Propriedades envolvidas na operação entre conjuntos Fuzzy As inferências que serão realizadas dentro do contexto Fuzzy necessitam operar entre diversos conjuntos. Assim, é importante conhecer as operações envolvidas. Anteriormente, observou-se a semelhança com os conjuntos clássicos, porém, é preciso perceber que há diversas características peculiares nos conjuntos Fuzzy, como a pertença múltipla que um elemento pode ter entre diversos conjuntos. Probabilidade e possibilidade no contexto Fuzzy Há uma diferença notável entre probabilidade e possibilidade dentro dos conjuntos nebulosos. Por exemplo, dizer que há chance de 80% de chuva não infere a potencialidade do evento, isto é, se é fraca, média ou forte. Seria possível mapear a chuva indicado o seguinte: 9Lógica Fuzzy 1,0 = tempestade; 0,8 = chuva forte; 0,6 = chuva intermitente; 0,4 = garoa; 0,2 = garoa fina Cada elemento apontado representa o grau da variável chuva, porém a inferência no contexto da probabilidade é um outro caso. 3 As regras e o processo de inferência A inferência Fuzzy interpreta os valores do vetor de entrada após a fuzzificação e, a partir de uma base de um conjunto de regras, apresenta um resultado, que passará pelo processo de desfuzzificação. Vale salientar que tanto as entradas como as saídas (Figura 5) são valores reais, e apenas o processamento interno é baseado em regras de aritmética Fuzzy. Figura 5. Representação do fluxo do processo das etapas das regras de inferência. Fonte: Adaptada de Santos, Felix e Vieira (2012). Regras Entradas determinísticas Desfuzzi�caçãoFuzzi�cação Conjuntos Fuzzy de entrada Saídas determinísticas Inferência Conjuntos Fuzzy de saída Lógica Fuzzy10 � Fuzzificação: representa a transformação de entradas determinísticas em termos que façam sentido para a representação das diversas possibilidades em determi- nado problema. � Desfuzzificação: representa as saídas determinísticas após os processos de fuzzificação dos dados de entrada e a passagem pela inferência a partir das regras criadas para determinado contexto. Para entender melhor o processamento dos sistemas de inferência Fuzzy, observe o exemplo no Quadro 2, no qual é possível inferir, a partir de alguns dados, a classificação de uma pessoa por meio de sua altura. A variação de 0 a 1 nas colunas baixa, média e alta significa a pertença que a pessoa tem àquele conjunto. Deve-se considerar as regras a seguir. � Regra 1: se a altura for maior ou igual a 1,70, a pessoa será classificada como alta. � Regra 2: se a altura for menor que 1,70, a pessoa será classificada como média. Altura Baixa Média Alta 1,65 0 1 0 1,69 0 1 0 1,70 0 0,75 0,8 1,6 0 0,5 1 1,75 0 0,2 1 1,80 0 0,1 1 1,90 0 0 1 1,95 0 0 1 2,00 0 0 1 Quadro 2. Classificação de pessoas pela altura em metros 11Lógica Fuzzy Logo, formalmente, pode-se verificar a seguinte generalização sobre di- versas variáveis de entrada, uma regra K, inferência F e saída S: Regra K: se (variável l é z) e (variável 2 é y) ... e (variável j é w) Então: Saída S = f (z, y... w) Outro exemplo seria analisar o movimento do corpo humano como um caso de inúmeras variáveis e diversas regras envolvidas, com o objetivo de estudo para a simulação em robôs. Se o movimento da coluna ir tantos metros para a frente, com os ombros em certa posição, os cotovelos com a devida angulação e em perfeito equilíbrio, é possível flexionar uma perna levemente para a frente da outra e, assim, organizar cada passo de uma corrida. Façamos, hipoteticamente, os conjuntos citados: 1 — Movimento da coluna = {baixo, médio, longo} 2 — Postura do ombro = {atrás, unido ao corpo, frente} 3 — Angulação dos cotovelos = {pequena, média, alongada} 4 — Flexão da perna = {pequena, média, longa} É possível organizar a seguinte regra de acordo com os conjuntos numerados: Regra 1: SE (1 == médio) E (2 == frente) E (3 == alongado) Então: Saída 1: Realizar 4 – (pequeno) Contudo, existem, ainda, diversas outras regras, de modo que utilizar a lógica Fuzzy para o controle de um robô é um grande desafio. Dentro da lógica Fuzzy, é possível encontrar dois tipos de inferência interessantes: o Mandani e o Sugeno, oriundos de publicações científicas. No software Fuzzy Logic ToolBox, do grupo Matlab, os dois tipos podem ser implementados. Na internet, você pode buscar as vantagens de cada abordagem e exemplos de uso delas. Lógica Fuzzy12 É possível identificar, no contexto do diagnóstico médico, uma modelagem nas va- riáveis linguísticas ditas pelos pacientes, modelá-las e realizar as devidas inferências patológicas a partir de regras previamente organizadas pelo médico. Por exemplo, os sinais e sintomas de caxumba são: cefaleia, edema glandular, febre (baixa a moderada), anorexia e mal-estar. Para cada um desses elementos, seria possível perguntar o quão forte ou fraco se tem cada sintoma. Aqui, nos ateremos à febre (baixa a moderada), para a qual, quando combinada com os outros elementos, já se teria o diagnóstico. Considere o conjunto F da febre com elemento F(f), tal que F(f): {baixa, média e moderada}, e o conjunto do universo do termômetro, tal que T = [22,27,35]. A tem- peratura baixa é considerada próximo de 22ºC, a média, de 27ºC, e a moderada, de 35ºC. O médico, ao perceber todos os outros elementos e a febre de baixa a moderada, poderá realizar o devido diagnóstico de acordo com a modelagem e a inferência Fuzzy. CAVERSAN, F.L. Fuzzy Computing: Basic Concepts. AForge.net, [S. l.], 21 May 2009. Disponível em: http://www.aforgenet.com/articles/fuzzy_computing_basics/. Acesso em: 28 abr. 2020. GOMIDE, F. Operations and Aggregations of Fuzzy Sets. Campinas: Unicamp, 2009. 104 p. (Notas de aula). Disponível em: http://www.dca.fee.unicamp.br/~gomide/fse/Slides/ FSE_Chap5_OperationsAggregationsFuzzySets.pdf. Acesso em: 28 abr. 2020. SANTOS, A. V. N.; FELIX, L. B.; VIEIRA, J. G. V. Estudo da logística de distribuição fí- sica de um laticínio utilizando lógica Fuzzy. Production, São Paulo, v. 22, n. 3, p. 576– 583, maio/ago. 2012. Disponível em: http://www.scielo.br/scielo.php?script=sci_ abstract&pid=S0103-65132012000300016&lng=pt&nrm=iso&tlng=pt. Acesso em: 28 abr. 2020. Leituras recomendadas FERREIRA, A. F. G. et al. Sistema Fuzzy Como Ferramenta Auxiliar na Detecção da Murcha de Fusarium no Tomateiro. In: ESCOLA REGIONAL DE COMPUTAÇÃO APLICADA À SAÚDE, 7., 2019, Teresina. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2019. p. 193–198. Disponível em: https://sol.sbc.org.br/index.php/ercas/article/view/9058. Acesso em: 28 abr. 2020. 13Lógica Fuzzy Os links para sites da web fornecidos neste capítulo foram todos testados, e seu fun- cionamento foi comprovado no momento da publicação do material. No entanto, a rede é extremamente dinâmica; suas páginas estão constantemente mudando de local e conteúdo. Assim, os editores declaram não ter qualquer responsabilidade sobre qualidade, precisão ou integralidade das informações referidas em tais links. NICOLETTI, M. C.; CAMARGO, H. A. Fundamentos da teoria de conjuntos Fuzzy. São Carlos: UFSCar, 2006. 65 p. (Série Apontamentos). PEDRYCZ, W.; GOMIDE, F. Fuzzy systems engineering toward human-centric computing. Hoboken: Wiley, 2007. 526 p. SIMÕES, M. G.; SHAW, I. S. Controle e modelagem Fuzzy. 2. ed. São Paulo: Blucher, 2007. 200 p. Lógica Fuzzy14
Compartilhar