uzzy Logic O ser huano é inexato por natureza Hoje está ais ou enos quente O show é eio caro Aquele cara é baixinho Coloque u pouco de sal Picanha be passada Não há incerteza sobre o valor. O problea é coo definir liguisticaente esse valor Jogo de Golfe Se a bola está longe do buraco e o terreno está leveente inclinado da esquerda para direita, bata na bola forte e nua direção u pouco a esquerda da bandeira Se a bola está uito perto do buraco e o terreno é plano, bata na bola gentilente e diretaente na direção do buraco Jogo de Golfe Definição de Distância Muito Perto: < 1 Perto: 1 3 Médio: 3 5 Longe: 5 7 Muito Longe: >7 Coo classificar a distância 4.99? Intuitivaente, sabeos que 4.99 está ais para longe do que para édio 1965 Lotfi Zadeh uzzy logic is a eans of presenting probles to coputers in a way akin to the way huans solve the The essence of fuzzy logic is that everything is a atter of degree Muito perto, perto, édio, longe, uito longe 4.99 esta ais para longe do que para édio Lógica Booleana Quente Quente Tradicionalistas e lógica arguenta que lógica booleana pode ser utilizada para representar as esas coisas 27 o Gray Area 27 o Vários atributos: T21-24, T24-27, T27-3, T3-33 azer os intervalos ficar cada vez enores... ~Quente ~Quente perite diferentes graus de verdadeiro e falso Pense e u controle de Ar Condicionado... Co isso, o núero de regras e u Rule Based Syste é uito aior... % a % aior 1
Processo Básico - Inferência Conjuntos Claros (Crisp) Crisp Exeplo uzzification Universo (U): núeros inteiros entre 1 e 15 Pares = { 2, 4, 6, 8, 1, 12, 14} Ípares = { 1, 3, 5, 7, 9, 11, 13, 15} Regras Nebulosas 2 pertence aos pares, 3 pertence aos ípares Operações Defuzzification Crisp União Interseção Copleento Conjuntos Nebulosos Mebership unctions Conjuntos Crisp não são adequados e várias situações práticas Exeplo Teste de QI Burro = { 7, 71, 72,..., 89} Mediano = { 9, 91, 92,..., 19} = { 11, 111,..., 129} Coo coparar os QI s 89 co 9 e 91 co 19? Os conjuntos nebulosos perite que os eleentos pertença à diferentes conjuntos Partial Mebership Transfora ua entrada crisp e ua entrada nebulosa As funções vão indicar o grau daquela entrada para u deterinado conjunto nebuloso Define ua transição gradual Mapeia a entrada e valores..1 Virtualente qualquer função pode ser usada Esse processo é chaado de uzzification Mebership unctions unções Típicas Lógica Booleana Rapa Triângulo.5 x x 1 x x 1 x 2 27 24 27 3 Rapa Invertida Trapézio 26.9 graus é frio 27.1 graus é quente 27 graus é.5 quente (27 graus é eio quente) x x 1 x x 1 x 2 x 3 2
Mebership to uzzy Sets Dicas para ua boa escolha.75 De fora a fazer transições suaves a soa dos DOMs deve ser próxia de 1 Não colocar ais de dois conjuntos para cada valor de x.25 Contra Exeplo Degree of Mebership (DOM): 25% Mediano 75% Mediano () =.25 () =.75 Mediano AND Mediano OR.75.25 Mediano = in{, } Mediano Mediano = ax{, } Mediano NOT Hedge Very: estreita o conjunto airly: alarga o conjunto ( ( )) 2 VERY = x AIRLY = ( x).25 = 1 3
Regras Nebulosas If A then B A é chaado antecedente ou preissa B é chaado conseqüente ou conclusão Exeplos: If Perto and Te_Munição then Atira If Longe then az_nada Diferenteente da lógica booleana, A vai ter valores entre e 1. B vai receber o eso valor de A Regras Nebulosas As regras são disparadas co u certo grau! Após a aplicação de todas as regras, pode-se ter diferentes graus para as conclusões Inferência Nebulosa Para cada regra Para cada Antecedente, calcular o seu grau Calcular a Conclusão Cobinar os resultados para deterinar o conjunto nebuloso (uzzy Association Matrix AM) Se desejada ua saída crisp fazer a defuzzificação Exeplo Exeplo Teos u lançador de granadas, e quereos saber quando ele é útil, de fora a escolhê-lo e usá-lo na hora certa Variáveis (LVs uzzy Linguistic Variables) Antecedentes Distância para o alvo Quantidade de unição Conclusão idade Distância pixels Munição # granadas idade % Exeplo: Regras Exeplo: Inferência Lançador de granadas é ais útil a édia distância. Perto pode e atar If longe AND Carregada THEN serve If longe AND OK THEN inutil If longe AND Baixa THEN inutil If edio AND Carregada THEN util If edio AND OK THEN util If edio AND Baixa THEN serve If perto AND Carregada THEN inutil If perto AND OK THEN inutil If perto AND Baixa THEN inutil 2 pixels de distância co 8 granadas... Uso o lançador de granadas? Inferência Regra 1: If longe AND Carregada THEN serve Longe =.33, Carregada = : (.33 AND ) = Portanto, = Regra 2: If longe AND OK THEN inutil Longe =.33, Ok =.78 : (.33 AND.78) =.33 Portanto, Inutil =.33... 4
Exeplo: AM uzzy Association Matrix (AM) Baixo OK Carregada Perto Médio.2 Útil.67 Útil Longe.2.33 Exeplo: agregação Considera-se apenas as regras disparadas O valor obtido pode ser considerado coo u nível de confidência daquele resultado Útil =.67 =.2 =.33 Max das duas que disparara. Pode usar o ínio, a soa ou algua édia. Exeplo: resultados graficaente Exeplo: Cobinando Conclusões.33 + idade para distância 2 e Munição 8.2.67 + Exeplo: Defuzzificação Processo de obter u resultado crisp partir do conjunto nebuloso Vários Métodos: MOM Mea of Maxiu Centróide MaxAv (Mediana) Etc... Exeplo: Defuzzificação Centróide O étodo ais preciso as tabé o ais coplexo de calcular Coputa-se o centróide (centro de assa) do conjunto Valor = ax x= in ax x x= in f f No exeplo, centróide = 58.9 5
Exeplo: Resultado inal Aplicações e Jogos Controle de Moviento Para onde virar o NPC? Toada de Decisões / Inferência Qual decisão toar frente ao estado atual? Exército Iniigo: pequeno, édio, grande,... Distância: uito longe, longe, perto,... Conclusão: pouca aeaça, édia aeaça,... Ação: núero de exércitos enviar para defesa Classificação Ex. Deterinar u ranking para seus NPCs 6