You are on page 1of 239

Fuzzy Logic Toolbox 2 Users Guide

TRADUZIDO

How to Contact The MathWorks


www.mathworks.com Web comp.soft-sys.matlab Newsgroup www.mathworks.com/contact_TS.html Technical Support suggest@mathworks.com Product enhancement suggestions bugs@mathworks.com Bug reports doc@mathworks.com Documentation error reports service@mathworks.com Order status, license renewals, passcodes info@mathworks.com Sales, pricing, and general information 508-647-7000 (Phone) 508-647-7001 (Fax) The MathWorks, Inc. 3 Apple Hill Drive Natick, MA 01760-2098 For contact information about worldwide offices, see the MathWorks Web site. Fuzzy Logic Toolbox Users Guide COPYRIGHT 19952007 The MathWorks, Inc. The software described in this document is furnished under a license agreement. The software may be used or copied only under the terms of the license agreement. No part of this manual may be photocopied or reproduced in any form without prior written consent from The MathWorks, Inc. FEDERAL ACQUISITION: This provision applies to all acquisitions of the Program and Documentation by, for, or through the federal government of the United States. By accepting delivery of the Program or Documentation, the government hereby agrees that this software or documentation qualifies as commercial computer software or commercial computer software documentation as such terms are used or defined in FAR 12.212, DFARS Part 227.72, and DFARS 252.227-7014. Accordingly, the terms and conditions of this Agreement and only those rights specified in this Agreement, shall pertain to and govern the use, modification, reproduction, release, performance, display, and disclosure of the Program and Documentation by the federal government (or other entity acquiring for or through the federal government) and shall supersede any conflicting contractual terms or conditions. If this License fails to meet the governments needs or is inconsistent in any respect with federal procurement law, the government agrees to return the Program and Documentation, unused, to The MathWorks, Inc. Trademarks MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, and xPC TargetBox are registered trademarks, and SimBiology, SimEvents, and SimHydraulics are trademarks of The MathWorks, Inc. Other product or brand names are trademarks or registered trademarks of their respective holders. Patents

The MathWorks products are protected by one or more U.S. patents. Please see www.mathworks.com/patents for more information. Revision History January 1995 First printing April 1997 Second printing January 1998 Third printing September 2000 Fourth printing Revised for Version 2 (Release 12) June 2004 Online only Updated for Version 2.1.3 (Release 14) March 2005 Online only Updated for Version 2.2.1 (Release 14SP2) September 2005 Online only Updated for Version 2.2.2 (Release 14SP3) March 2006 Online only Updated for Version 2.2.3 (Release 2006a) September 2006 Online only Updated for Version 2.2.4 (Release 2006b) March 2007 Online only Updated for Version 2.2.5 (Release 2007a

SUMRIO
1 QUAL O TOOLBOX DA LGICA FUZZY A descrio do Toolbox da Lgica Fuzzy Instalao Usando este guia Qual a lgica difusa? Descrio da Lgica Fuzzy Por que utilizar a Lgica Fuzzy? Quando a no utilizar lgica fuzzy O que pode o Toolbox da Lgica Fuzzy fazer? Um exemplo introdutrio: Lgica Fuzzy X No Fuzzy O problema bsico basculamento A abordagem No fuzzy A abordagem lgica fuzzy Problema Soluo TUTORIAL Overview Fundamentos de Lgica Fuzzy Conjuntos Fuzzy Composio Funes Operaes lgicas Se-ento regras Inferncia Fuzzy Sistemas Quais so Interferncia Sistemas Fuzzy? Tipos de problema revisitado O diagrama inferncia fuzzy Personalizao Construo de Sistemas com Toolbox da Lgica Fuzzy Outro problema basculamento Comeando A FIS Editor A adeso funo Editor A regra Editor A regra Viewer A superfcie Viewer Importar e Exportar a partir de ferramentas GUI Personalizando seu sistema fuzzy Construo de Sistemas com Lgica Fuzzy Toolbox Outro problema basculamento Comeando A FIS Editor A adeso funo Editor A regra Editor A regra Viewer A superfcie Viewer Importar e Exportar a partir de ferramentas do GUIA Personalizando seu sistema fuzzy Trabalhando a partir do Comando Line O problema a partir do depsito da linha de comando Sistema de exibio funes Construir um sistema do 'nada' Avaliao FIS A estrutura FIS Trabalhando com Simulink Um exemplo: nvel da gua controle

4 5

Construindo sua prpria Fuzzy Simulink modelos - Tipo Sugeno Fuzzy Inferncia O que Sugeno-Fuzzy Tipo A interferncia? Um exemplo: duas linhas Comparao de Sugeno e Mtodos Mamdani anfis e do ANFIS GUI A modelagem cenrio Modelo de aprendizagem e de inferncia atravs ANFIS Conhea os seus dados Condicionalismos de anfis O ANFIS editor GUI ANFIS editor GUI Exemplo 1: controlo dos dados ajuda a modelo Validao ANFIS editor GUI Exemplo 2: controlo dos dados no Validar Modelo anfis a partir da Command Line VI Sumrio Mais informaes sobre o anfis e ANFIS GUI Fuzzy Aglomerao Fuzzy C-significa agregao Subtractive Aglomerao Stand-alone motor de inferncia fuzzy cdigo C FUNES - POR CATEGORIA GUIA de ferramentas e funes plotagem Composio Funes FIS dados estrutura de gesto Tcnicas avanadas Simulink FUNES - LISTA ALFABTICA BLOCOS - POR CATEGORIA Controladores Operadores Composio Funes EXEMPLOS Exemplos introdutrios Jantar para Dois, a partir do topo Exemplos Simulink Carrinho plo e simulao Sugeno Fuzzy exemplo inferncia ANFIS editor GUIA exemplos BIBLIOGRAFIA Glossrio ndice

Qual a lgica difusa Toolbox?


"Fuzzy Logic Toolbox Descrio" na pgina 1-2 "Instalao" na pgina 1-3 "Utilizar Este Guia" na pgina 1-3

Lgica Fuzzy Toolbox descrio

Lgica Fuzzy Toolbox uma coleo de funes construda sobre o MATLAB computao numrica ambiente. Ela fornece ferramentas para voc criar e editar sistemas de inferncia fuzzy, no mbito do MATLAB, ou se preferir, voc pode integrar seus sistemas difusos em simulaes com Simulink . Voc pode at mesmo construir stand-alone C programas que exigem a voc construir sistemas difusos com MATLAB. Esta ferramenta baseia-se fortemente na interface grfica (GUIA) ferramentas para ajudlo a realizar o seu trabalho, embora voc possa trabalhar exclusivamente a partir de a linha de comando se voc preferir.

A ferramenta oferece trs categorias de instrumentos: Comando funes de linha grfica de ferramentas interativas Simulink blocos e exemplos

A primeira categoria de ferramentas composta de funes que voc pode chamar a partir da linha de comando ou a partir de suas prprias aplicaes. Muitas destas funes so MATLAB M-arquivos, MATLAB srie de declaraes que implementar especializados lgica fuzzy algoritmos. Voc pode ver o cdigo para estas funes MATLAB usando a declarao tipo nome da funo Voc pode mudar a maneira nenhuma funo das ferramentas de trabalhos, copiando e renomeando o M-file e, em seguida, modificando a sua cpia. Voc tambm pode estender a "caixa de ferramentas adicionar seus prprios arquivos-M.

Em segundo lugar, as ferramentas fornece uma srie de ferramentas interativas que lhe permitem acesso a muitas das funes atravs de uma GUI. Em conjunto, as ferramentas baseadas no GUIA proporcionando um ambiente para a concepo sistema fuzzy inferncia, anlise e

implementao.

A terceira categoria de ferramentas um conjunto de blocos para uso com o Simulink simulao software. Estes so concebidos especificamente para a alta velocidade lgica fuzzy inferncia no Simulink ambiente. O que torna o Toolbox de Lgica fuzzy to poderoso o fato de a maioria dos humanos raciocnio e de formao noo est relacionada com a utilizao de regras fuzzy. Por fornecendo uma estrutura sistemtica para a computao com regras fuzzy, o Toolbox de Lgica Fuzzy grandemente amplifica o poder de raciocnio humano. Adicional amplificao resulta da utilizao do MATLAB e interfaces de utilizador grficas, As reas em que MathWorks tem conhecimentos inigualveis.

Instalao

Para instalar esta ferramenta em um posto de trabalho, grande mquina, ou um PC, consulte o instalao documentao para essa plataforma. Para determinar se Fuzzy Logic Toolbox j est instalado em seu sistema, verifique para um subdiretrio chamado fuzzy principais ferramentas dentro do diretrio ou pasta.

Usando este guia

Se voc novo a lgica fuzzy, comeam com "O que Lgica Fuzzy?" Na pgina 1-5. Isso introduz a motivao subjacente a lgica difusa e leva voc suavemente para o tutorial. Se voc um usurio experiente Lgica Fuzzy, voc pode querer iniciar a o incio do captulo 2, "Manipulao" ter a certeza que so confortveis

com a lgica fuzzy terminologia em Lgica Fuzzy Toolbox. Se voc deseja apenas um. Resumo de cada ferramenta grfica e exemplos de tarefas especficas sistema fuzzy, recorrer diretamente "Construir Sistemas com Lgica Fuzzy Toolbox" na pgina 2-30. Esta seco no inclui informaes sobre os dados modelagem adaptativa coberto pela aplicao das ferramentas de funo ANFIS. A funcionalidade bsica de esta ferramenta pode ser encontrada em "O ANFIS GUI" na pgina 2-90. Se voc s quer comear o mais rapidamente possvel e experincia, voc pode abrir uma Sistema de imediato exemplo, digitando fuzzy basculantes

Isso mostra a Inferncia Fuzzy System (FIS) editor de um exemplo de tomada de deciso problema que tem a ver com a forma de ponta em um restaurante. Todos os usurios devem utilizar ferramentas Captulo 4, "Funes - Lista Alfabtica" para a informaes sobre ferramentas especficas ou funes. Incluir uma referncia descries sinopse da funo da sintaxe, bem como uma explicao completa de opes e de operao. Muitos referncia descries tambm incluem exemplos teis, um descrio da funo do algoritmo, e referncias adicionais para a leitura material. Para a interface grfica baseada em ferramentas, as descries incluem opes para invocar a ferramenta.

Qual a lgica difusa? "Descrio de Lgica Fuzzy" "Por que usar Lgica Fuzzy?" "Quando no utilizar Lgica Fuzzy" "O que posso o Toolbox de Lgica Fuzzy pode fazer?" Descrio da Lgica Fuzzy Nos ltimos anos, o nmero ea variedade de aplicaes de lgica fuzzy ter

aumentado

significativamente.

As

aplicaes

vo

desde

produtos

consumidor tais como mquinas fotogrficas, filmadoras, mquinas de lavar, fornos microondas e aos controles de processos industriais, instrumentao mdica, sistemas de apoio deciso, de carteira e seleo. Para entender por que razo da utilizao de lgica fuzzy tem crescido, voc deve primeiro entender o que se entende por lgica fuzzy. Lgica Fuzzy tem dois significados diferentes. Em um sentido mais restrito, uma lgica fuzzy sistema lgico, que uma extenso lgica de multivalued. No entanto, em uma ampla senso lgica difusa (FL) quase sinnimo com a teoria dos conjuntos fuzzy, um teoria que diz respeito s classes de objetos com unsharp limites em que a adeso uma questo de grau. Nesta perspectiva, lgica fuzzy, no seu estreito bom senso um ramo da FL. At mesmo na sua definio mais restrita, lgica fuzzy difere tanto no conceito de substncia e de sistemas tradicionais multivalidao lgica. Em Fuzzy Logic Toolbox, lgica fuzzy deve ser interpretada como FL, isto , fuzzy lgica, no seu sentido amplo. As suas ideias fundamentais subjacentes so explicadas muito FL de forma clara e insightfully na Introduo. O que que poderia ser adicionado FL o conceito bsico subjacente a de uma varivel lingstica, isto , um varivel cujos valores so palavras, em vez de nmeros. Com efeito, grande parte FL pode ser encarada como uma metodologia para a computao em vez de palavras nmeros. Embora as palavras so intrinsecamente menos preciso do que nmeros, a sua utilizao aproximar a intuio humana. Por outro lado, explora a computao com palavras tolerncia para a impreciso e, assim, diminuir o custo da soluo. Outro conceito bsico na FL, que desempenha um papel central na maior parte das suas aplicaes, o fato de uma regra fuzzy se-ento, ou, simplesmente, fuzzy regra. Apesar de sistemas baseados em regra tem uma longa histria de utilizao em AI, o que est faltando em desses sistemas um mecanismo para lidar com conseqentes fuzzy e fuzzy

antecedentes. Na lgica fuzzy, estes mecanismos previstos pelo clculo de fuzzy regras. O clculo das regras fuzzy serve como base para aquilo que poder ser chamado Fuzzy Dependncia e Comando da Lngua (FDCL). Embora seja FDCL no utilizados de forma explcita nas Fuzzy Logic Toolbox, efetivamente uma das suas principais constituintes. Na maioria das aplicaes de lgica difusa, uma soluo lgica fuzzy , na realidade, uma traduo de uma soluo humana em FDCL. Uma tendncia que est crescendo em visibilidade diz respeito utilizao da lgica fuzzy em combinao com neurocomputao e algoritmos genticos. De modo mais geral, lgica fuzzy, neurocomputao e algoritmos genticos podem ser vistas como o principais constituintes dos quais podero ser chamados soft computao. Ao contrrio dos

tradicionais, hard computao, informtica macio acomoda a impreciso do mundo real. O princpio orientador da computao mole: o Exploit tolerncia para a impreciso, a incerteza, e a verdade parcial para conseguir

rastreabilidade, robustez, e de baixo custo soluo. No futuro, soft computao poderia desempenhar um papel cada vez mais importante na concepo e na concepo de sistemas cuja MIQ (IQ Machine) muito maior do que a dos sistemas concebidos pelos mtodos convencionais. Entre as vrias combinaes de metodologias de computao suave, o que tenha uma maior visibilidade neste momento o da lgica difusa e neurocomputing, levando a neuro-fuzzy systems. Dentro de lgica difusa, tais sistemas desempenham um papel particularmente importante na induo de regras de observaes. Um mtodo eficaz desenvolvido pelo Dr. Roger Jang para esta finalidade chamado ANFIS (Adaptive NeuroFuzzy Inferncia System). Este mtodo uma componente importante da Lgica Fuzzy Toolbox. Lgica Fuzzy tem tudo a ver com a importncia relativa de preciso: Qual a importncia da - direito de ser exatamente quando um esboo de resposta vai fazer?

Lgica Fuzzy Toolbox para uso com MATLAB uma ferramenta para resolver problemas com lgica difusa. Lgica Fuzzy uma fascinante rea de pesquisa, porque ele faz um bom emprego fora da negociao entre significado e preciso-algo que os seres humanos Foram gesto por um tempo muito longo. Neste sentido, a lgica difusa tanto antigos como novos, porque, embora a moderna metdico e cincia da lgica fuzzy ainda jovem, os conceitos de lgica difusa assenta nas antigas habilidades de raciocnio humano.

Lgica Fuzzy uma forma conveniente de um mapa de entrada espao para uma sada de espao. Mapeamento entrada a sada o ponto de partida para tudo. Considere o seguintes exemplos: Com informaes sobre a forma como foi bom o seu servio em um restaurante, uma fuzzy lgica sistema pode dizer-lhe aquilo que deveria ser a ponta.

Com a sua especificao de como voc deseja que a gua quente, um sistema de lgica fuzzy pode ajustar a torneira vlvula para a direita configurao. Com informaes sobre a forma como o assunto longe de sua fotografia , uma lgica fuzzy sistema pode se concentrar a lente da cmera para voc. Com as informaes sobre a velocidade que o carro est acontecendo e como dura o motor trabalho, um sistema de lgica difusa pode mudar de artes para voc. Um exemplo de um grfico de entrada/sada mapa mostrado na Figura 2.

Para determinar a quantidade adequada de ponta exige insumos para o mapeamento adequadas sadas. Entre a entrada ea sada, o valor anterior mostra uma caixa preta que pode conter qualquer nmero de coisas: fuzzy systems, sistemas lineares, sistemas especialistas, redes neurais, equaes diferenciais, interpolados multidimensional lookup tabelas, ou at mesmo um conselheiro espiritual, apenas para citar algumas das opes possveis. evidente que a lista poderia ir sobre e sobre. Das dezenas de maneiras para fazer a caixa negra trabalho, verifica-se que fuzzy muitas vezes o melhor caminho. Porque que deve ser?

Como Lotfi Zadeh, que considerada para ser o pai da lgica fuzzy, observou uma vez: "Em quase todos os casos voc pode construir o mesmo produto sem lgica difusa, mas fuzzy mais rpido e mais barato."

Por que utilizar a lgica difusa? Aqui est uma lista de observaes gerais sobre a lgica difusa: Lgica Fuzzy conceitualmente fcil de entender. Os conceitos matemticos raciocnio por trs fuzzy so muito simples. Fuzzy lgica uma abordagem mais intuitiva sem a complexidade de longo alcance. Lgica Fuzzy flexvel. Com todo o sistema, fcil a camada mais funcionalidade sem a comear do zero novamente. Lgica Fuzzy tolerante com a impreciso dos dados. Tudo imprecisa se voc olhar atentamente o suficiente, mas mais do que isso, a maioria as coisas so ainda imprecisas sobre inspeo cuidadosa. Fuzzy raciocnio constri esta compreenso do processo em vez de tacking-lo para o efeito. Lgica Fuzzy podem modelo no linear da arbitrria funes

complexidade. Voc pode criar um sistema fuzzy para corresponder qualquer

conjunto de dados de entrada / sada. Este processo particularmente fcil feita por tcnicas adaptativas como Adaptive Inferncia Neuro-Fuzzy Systems (ANFIS), que esto disponveis em Fuzzy Logic Toolbox. Lgica Fuzzy podem ser construdos em cima da experincia dos peritos.

Em contraste directo s redes neurais, que tm formao e de dados gerar opaco, impenetrveis modelos, lgica fuzzy lhe permite invocar as experincia das pessoas que j compreender o seu sistema. Lgica Fuzzy pode ser misturada com convencionais tcnicas de controle. Fuzzy sistemas convencionais no so necessariamente substituir os mtodos de controle. Em muitos casos, sistemas difusos e aumentar-lhes simplificar os seus implementao. Lgica Fuzzy baseada na linguagem natural. A base para a lgica fuzzy a base para a comunicao humana. Este observao est subjacente a muitas das outras declaraes sobre a lgica difusa. Porque a lgica difusa construda sobre as estruturas da descrio qualitativa utilizada na linguagem quotidiana, lgica fuzzy fcil de usar. A ltima afirmao talvez a mais importante e merece mais discusso. Linguagem natural, o que usado por pessoas comuns em um diariamente, tem sido moldada por milhares de anos da histria humana a ser convenientes e eficientes. Frases escritas em linguagem ordinria representam um triunfo de uma comunicao eficaz.

Quando a no utilizar a lgica fuzzy Lgica Fuzzy no uma panacia. Quando voc deve usar a lgica difusa no? O mais seguro o primeiro uma declarao feita nesta introduo: a lgica difusa uma conveniente forma de um mapa de entrada espao para uma sada espao. Se voc achar que no conveniente, tente algo diferente. Se j existe uma soluo mais simples, utiliz-lo. Lgica Fuzzy a codificao de senso comum - uso do senso comum quando voc execut-la e provavelmente voc vai tomar a deciso certa. Muitos controladores, por exemplo, se familiarizar com a lgica difusa, voc ver

que pode ser uma ferramenta muito poderosa para lidar rpida e eficientemente com impreciso e no-linearidade.

O que pode o Toolbox de Lgica Fuzzy pode fazer? Lgica Fuzzy Toolbox permite-lhe fazer vrias coisas, mas o mais importante coisa que lhe permite fazer criar e editar inferncia fuzzy sistemas. Voc pode criar estes sistemas utilizando ferramentas grficas ou de linha de comando funes, ou voc pode ger-los automaticamente por meio de agregao ou adaptativa neuro-fuzzy tcnicas. Se voc tem acesso a Simulink, voc pode facilmente testar seu sistema em um fuzzy diagrama de bloco simulao ambiente. A ferramenta tambm permite que voc execute o seu prprio standalone C programas diretamente, sem a necessidade de Simulink. Isto possvel graas a uma stand-alone Fuzzy Motor de inferncia que l os sistemas difusos salvou a partir de uma sesso MATLAB. Voc pode personalizar o stand-alone motor de inferncia fuzzy para construir em seu prprio cdigo. Todos os fornecidos cdigo ANSI conformes.

Devido natureza integrada do ambiente MATLAB, voc pode criar suas prprias ferramentas para personalizar Fuzzy Logic Toolbox ou

aproveit-lo com outro toolbox, tais como o sistema de controle Toolbox, Neural Network Toolbox, ou Otimizao do Toolbox, para referir apenas algumas das possibilidades.

Um exemplo introdutrio: Lgica Fuzzy versus Nonfuzzy "O Problema Tipping bsica" "O Nonfuzzy Abordagem" "A Fuzzy Logic Approach" "Problema Soluo"

O problema bsico basculamento Para ilustrar o valor da lgica fuzzy, examinar lineares e fuzzy abordagens para o seguinte problema: O que o direito ao montante waitperson sua dica? Em primeiro lugar, trabalho este problema atravs da convencional (nonfuzzy) caminho, escrevendo MATLAB comandos que enunciam linear e seccionalmente lineares relaes. Ento, olhar para o mesmo sistema utilizando a lgica difusa. O problema bsico gorjetas. Dado um nmero entre 0 e 10 que representa a qualidade de servio em um restaurante (onde 10 excelente), o que deve ser a gorjeta?

NOTA: Este problema baseado em gorjetas como normalmente praticado no Estados Unidos. Uma mdia de uma refeio na ponta para os E.U.A de 15%, embora o real montante pode variar em funo da qualidade do servio prestado.

A abordagem No fuzzy Comece com o mais simples possvel relacionamento. Suponha que a ponta sempre equivale a 15% do total da factura.

tipo = 0,15

Esta relao no leva em conta a qualidade do servio, de modo que voc necessidade de acrescentar um novo prazo para a equao. Porque servio classificado numa escala de 0 a 10, voc poder ter a ponta ir linear de 5%, se o servio ruim para 25% se o servio excelente. Agora, a relao pode ser parecido com o seguinte grfico: Tipo = 0.20/10*service + 0.05;

A frmula faz o que voc quer fazer, e simples. Contudo, voc pode querer a ponta de modo a refletir a qualidade da comida tambm. Esta extenso do problema definida como se segue. A Extenso basculamento problema. Dado dois conjuntos de nmeros entre 0 e 10 (onde 10 excelente), que representam respectivamente a qualidade do servio bem como a qualidade dos alimentos em um restaurante, qual deveria ser a ponta? Veja como a frmula afetada agora que voc adicionou uma outra varivel. Experimente a seguinte equao:

Tipo = 0.20/20*(service+food)+0.05;

Neste caso, analisar os resultados satisfatrios, mas quando se olha para eles de perto, eles no parecem muito bem. Suponha que voc queira que o servio a ser mais um fator importante do que a qualidade dos alimentos. Especificar que o servio representa 80% do total das gorjetas grau e torna-se a alimentar os outros 20%.

Tente este equao: servRatio=0.8; tip=servRatio*(0.20/10*service+0.05) + ... (1-servRatio)*(0.20/10*food+0.05); A resposta certa ainda demasiado uniforme linear. Suponha que voc queira que mais de uma resposta plana no meio, ou seja, que deseja dar uma gorjeta de 15%, em geral, mas queremos uma variao tambm especificar se o servio excepcionalmente bom ou mau. Este factor, por sua vez, significa que o anterior linear mapeamentos j no aplicvel. Voc ainda pode usar o clculo linear com uma seccionalmente linear construo. Agora, voltar para o problema de dimenses um pouco considerando o servio. Voc pode string em conjunto de uma simples declarao condicional usando interrupo como este. if service<3, tip=(0.10/3)*service+0.05; elseif service<7, tip=0.15; elseif service<=10, tip=(0.10/3)*(service-7)+0.15; end O enredo agora se parece com a figura abaixo.

Se voc ampliar esta a duas dimenses, onde se tomam em considerao alimentar novamente, algo como a seguinte sada resultados.

servRatio=0.8; if service<3, tip=((0.10/3)*service+0.05)*servRatio + ... (1-servRatio)*(0.20/10*food+0.05); elseif service<7, tip=(0.15)*servRatio + ... (1-servRatio)*(0.20/10*food+0.05); else, tip=((0.10/3)*(service-7)+0.15)*servRatio + ... (1-servRatio)*(0.20/10*food+0.05); End

O enredo parece boa, mas a funo surpreendentemente complicado. Foi uma pouco difcil para este cdigo corretamente, e definitivamente no fcil de alterar o presente cdigo no futuro. Alm disso, ainda menos evidente a forma como o algoritmo funciona a algum que no veja o desenho original processo.

A abordagem lgica fuzzy Voc precisa capturar a essncia do problema, deixando de lado todos os fatores que poderia ser arbitrrio. Se voc fizer uma lista do que realmente importa neste problema, voc pode acabar com a seguinte regra descries.

Tipping Problema

Tipping problema regras - servio factor

Se servio pobre, ento dica barato Se servio bom, ento gorjeta mdia Se servio excelente e, em seguida, gorjeta generosa

A ordem em que as regras so aqui apresentadas arbitrria. Ela no questo que as regras vm em primeiro lugar. Se voc quiser incluir o efeito sobre a alimentao da dica, adicione as seguintes duas regras. Tipping problema regras - alimentar fator Se alimento rano, ento dica barato Se comida deliciosa e, em seguida, gorjeta generosa Voc pode combinar as duas listas diferentes de regras em uma lista de trs apertado assim como as regras.

Tipping problema - tanto Servio Alimentar e factores Se o servio ruim ou alimento rano, ento dica barato Se servio bom, ento gorjeta mdia Se servio excelente ou comida deliciosa e, em seguida, gorjeta generosa Essas trs regras so o ncleo da sua soluo. Coincidentemente, que acaba definidas as regras para uma lgica fuzzy sistema. Quando voc d

matemticas significado para as variveis lingsticas (o que um ponta mdia, por exemplo?) voc tem um completo sistema de inferncia fuzzy.

A metodologia da lgica fuzzy tambm deve considerar:

Como so as regras combinadas todos? Como fao para definir matematicamente o que uma mdia dica? Os prximos captulos detalhados fornecer respostas a estas questes. O Detalhes do mtodo realmente no alterar muito a partir de problema para o problema - mecnica da lgica fuzzy no so terrivelmente complexo. O que importa que voc . Compreendo que a lgica fuzzy adaptvel, simples e de fcil aplicao. Problema Soluo O seguinte grfico representa a lgica fuzzy sistema que resolve o basculamento problema.

Essa parcela foi gerada pelas trs regras que representou tanto servio e de fatores alimentares. A mecnica de como funciona inferncia fuzzy

explicado em "Geral" na pgina 2-2, "Fundamentos de Lgica Fuzzy" na pgina 2-4, e em "Inferncia Fuzzy Systems" na pgina 2-20. Em "Building Systems com Fuzzy Logic Toolbox "na pgina 2-30, todo o problema trabalhado atravs de depsito usando as ferramentas grficas em Lgica Fuzzy Toolbox.

Observaes Considere algumas observaes sobre o caso at agora. Voc encontrou um seccionalmente relao linear que resolveu o problema. Funcionou, mas foi problemtico para derivar, e quando voc escreveu que estabelece como cdigo, no era muito fcil de interpretar. Inversamente, a lgica fuzzy sistema baseia-se em algumas declaraes de senso comum. Alm disso, voc foi capaz de acrescentar mais duas regras para a parte inferior da lista que influenciaram a forma da produo global sem a necessidade de desfazer o que tinha j foi feito, tornando a posterior modificao foi relativamente fcil. Alm disso, utilizando a lgica difusa atravs de regras, a manuteno da estrutura do o algoritmo de couples ao longo linhas bastante limpas. A noo de uma mdia Sugestes podem mudar de dia para dia, cidade a cidade, pas a pas, mas a lgica subjacente a mesma: se o servio bom, deve ser a ponta mdia.

Recalibrar o Mtodo Voc pode recalibrar themethod rapidamente por simplesmente transferir o conjunto fuzzy que define mdio sem reescrever a lgica fuzzy regras. Voc pode transferir listas de funes seccionalmente linear, mas h uma maior probabilidade de que recalibrao no ser to rpida e simples. No exemplo a seguir, o problema ligeiramente seccionalmente linear

basculamento reescrito para se tornar mais genrico. Ele tem a mesma funo que antes, S agora as constantes podem ser facilmente alterada.

% Establish constants lowTip=0.05; averTip=0.15; highTip=0.25; tipRange=highTip-lowTip; badService=0; okayService=3; goodService=7; greatService=10; serviceRange=greatService-badService; badFood=0; greatFood=10; foodRange=greatFood-badFood; % If service is poor or food is rancid, tip is cheap if service<okayService, tip=(((averTip-lowTip)/(okayService-badService)) ... *service+lowTip)*servRatio + ... (1-servRatio)*(tipRange/foodRange*food+lowTip); % If service is good, tip is average elseif service<goodService, tip=averTip*servRatio + (1-servRatio)* ... (tipRange/foodRange*food+lowTip); % If service is excellent or food is delicious, tip is generous else, tip=(((highTip-averTip)/ ... (greatService-goodService))* ... (service-goodService)+averTip)*servRatio + ... (1-servRatio)*(tipRange/foodRange*food+lowTip); End Tal como acontece com todos os cdigos, quanto mais generalidade que introduzida, a menos precisa do algoritmo torna-se. Enquanto voc pode melhorar a clareza, adicionando mais comentrios,ou talvez reescrevendo o algoritmo, em pouco mais de auto-evidentes as formas, mas o seccionalmente linear metodologia no o melhor caminho para resolver essa questo. Se voc remover tudo, desde o algoritmo excepo de trs observaes, o que remanescentes so exatamente a lgica fuzzy regras que voc escreveu anteriormente para baixo.

Se % servio ruim ou alimento rano, dica barato Se % de servio bom, ponta mdia Se % ou servio excelente comida deliciosa, gorjeta generosa

Se, como em um sistema fuzzy, o comentrio idntica, com o cdigo, pense quanto mais provvel o de ter seu cdigo comentrios. Lgica Fuzzy permite que as linguagens que mais claro para voc, elevado nvel comentrios, tambm tm significado para a mquina, por isso ele um grande xito tcnica para fazer a ponte fosso entre pessoas e mquinas. Ao tornar as equaes mais simples possvel (linear) que voc faz coisas simples para a mquina, mas mais complicado para voc. No entanto, o limitao realmente deixou o computador-que o seu modelo mental do que o computador est fazendo. Os computadores tm a capacidade de fazer coisas irremediavelmente complexa; lgica fuzzy usam o meio-e permite que a mquina possa funcionar com as suas preferncias, e no o contrrio.

Tutorial
Geral Fundamentos de Lgica Fuzzy Inferncia Fuzzy Systems Construo de Sistemas com Lgica Fuzzy Toolbox Trabalhando a partir da Command Line Trabalhando com Simulink Tipo Sugeno Fuzzy Inferncia anfis e do ANFIS GUI Fuzzy Aglomerao Stand-alone cdigo C inferncia fuzzy Motor Uma viso geral da inferncia fuzzy processo Fuzzy conjuntos, pertena funes, - se ento as regras, e operaes lgicas Mamdani-tipo e do tipo Sugeno sistemas de inferncia Utilizando a interface grfica do usurio (GUI) ferramentas Usando as ferramentas de funes MATLAB linha de comando Lgica Fuzzy Toolbox trabalhar com simulao de software Sada funes so pertena nem linear ou constante Ferramentas que se aplicam inferncia fuzzy tcnicas de modelagem de dados Identifica natural agrupamentos de dados que produz a representao concisa de um sistema de comportamento Fonte cdigos para um stand-alone fuzzy motor de inferncia

Viso geral
O ponto de lgica difusa o de um mapa de entrada espao para um espao de sada, e os principal mecanismo para fazer isso uma lista de declaraes se-ento denominada regras. Todas as regras so avaliadas em paralelo, e ao fim das regras no importante. As regras so teis porque se referem a variveis e as adjetivos que descrevem essas variveis. Antes que voc possa construir um sistema que interpreta as regras, voc deve definir todos os termos e voc est pensando em usar o adjetivos que descrevem-los. Dizer que a gua quente, necessrio definir o intervalo que a temperatura da gua pode ser esperada para variar, bem como o que significa para ns a palavra quente. O esquema a seguir fornece um roteiro para a a inferncia

fuzzy processo. Ela mostra a descrio geral de um sistema fuzzy esquerda e um sistema fuzzy especfico (o basculamento exemplo a partir do captulo 1, "Como comear") direita.

Para resumir o conceito de inferncia fuzzy ilustrado nesta figura, fuzzy inferncia um mtodo que interpreta os valores na entrada e vetor, baseado em algum conjunto de regras, atribui valores para o vetor de sada.

Esta seco destina-se a orient-lo atravs do processo passo a lgica fuzzy etapa, fornecendo uma introduo teoria e prtica da lgica difusa. O trs primeiros troos desta seo so os mais importantes-eles mudam de geral especfica para, em primeiro lugar introduzindo ideias subjacentes e, em seguida, discutir especfica para a implementao das ferramentas de detalhes.

Essas trs reas so as seguintes:

"Fundamentos de Lgica Fuzzy" na pgina 2-4, o que uma introduo aos conceitos gerais. Se voc j est familiarizado com a lgica difusa, possvel a pular esta seo. "Inferncia Fuzzy Systems" na pgina 2-20, o que explica a especficos mtodos de inferncia fuzzy utilizados em Lgica Fuzzy Toolbox. Devido ao campo de lgica fuzzy utiliza muitos termos que ainda no tm padro interpretaes, leia

esta seo para se familiarizar com o processo inferncia fuzzy como empregadas atravs de Lgica Fuzzy Toolbox. "Desenvolvimento de Sistemas com Lgica Fuzzy Toolbox" na pgina 2-30, que vai para detalhes sobre como voc criar e editar um sistema fuzzy usando esta ferramenta. Este tpico fornece uma breve orientao para comear a interface grfica do usurio ferramentas disponvel em Lgica Fuzzy Toolbox e guia-o atravs da construo de um completo sistema de inferncia fuzzy do incio ao fim. Aps esses trs temas, so tpicos adicionais, tais como a utilizao Simulink, Estado gerao automtica, e demonstraes.

Fundamentos de Lgica Fuzzy


As sees a seguir descreve os fundamentos da lgica fuzzy: "Fuzzy Sets" na pgina 2-4 "Composio Funes" na pgina 2-8 "operaes lgicas" na pgina 2-13 "Se-Ento Regras" na pgina 2-16 Conjuntos Fuzzy Lgica Fuzzy comea com o conceito de um conjunto fuzzy. Um conjunto fuzzy um conjunto sem uma fresco e bem definido fronteira. Pode conter elementos com apenas um parcial grau de adeso. Para compreender o que significa um conjunto fuzzy , em primeiro lugar considerar a definio de um clssico ajustar. Um clssico um recipiente que o conjunto total inclui ou exclui totalmente qualquer elemento. Por exemplo, o conjunto de dias da semana inquestionavelmente Inclui segunda-feira, quinta-feira e sbado. apenas como inquestionavelmente exclui manteiga, da liberdade, e barbatanas dorsal, e assim por diante.

Este tipo de conjunto chamado de um clssico, uma vez que foi estabelecido em torno de uma longa tempo. Foi Aristteles que primeiro formulou a lei da Excluso Mdio, X diz que devem ser estabelecidos em um ou em conjunto no-A. Outra verso da presente Direito : De qualquer assunto, uma coisa tem de ser afirmado ou negado. Para reafirmar esta lei com anotaes: "de qualquer assunto (dizer segunda-feira), uma coisa (um dia da semana) tem de ser afirmado ou negado (I afirmar que seg um dia da semana). "Essa lei exige que opostos, as duas categorias

Um e no-A, entre eles devem conter todo o universo. Tudo cai em um grupo ou a qualquer outro. No h qualquer coisa que tanto um dia de a semana, e no um dia da semana. Agora, considere o conjunto de dias que compreende uma semana. O diagrama a seguir tentativas de classificar o fim de semana dias.

A maioria concorda que pertencem sbado e domingo, mas o que dizer de sextafeira? Entende-se como uma parte do fim de semana, mas de certa forma, parece que ela deveria ser tecnicamente excludos. Assim, no esquema anterior, tenta o seu melhor para sexta "Straddle sobre o cerca." Clssica normal ou conjuntos que no toleram este tipo de classificao. Ou seja, ou algo que est fora. Sugere a experincia humana algo diferente, no entanto, as a vedao parte da vida.

Claros percepes individuais e cultural de fundo deve ser tomada em conta quando voc definir o que constitui o fim de semana. At mesmo o dicionrio imprecisa, definindo o fim de semana como o perodo nocturno a partir de sexta ou

sbado para segunda-feira de manh. Voc est entrando na rea onde acentuada virar contra elas, sim-no lgica deixa de ser til. Fuzzy raciocnio torna-se valiosa exatamente quando voc trabalhar com o modo como as pessoas realmente perceber o conceito em oposio a uma semana simples de esprito classificao til apenas para efeitos contabilsticos. Mais de tudo o resto, a seguinte declarao estabelece as bases de lgica difusa. Na lgica difusa, a verdade de qualquer afirmao se torna uma questo de grau. Qualquer declarao pode ser fuzzy. A maior vantagem que o raciocnio fuzzy oferece a capacidade de resposta a uma pergunta sim-no com um no-muitosim-ou-no resposta. Os seres humanos fazem este tipo de coisa o tempo todo (como raramente pensam que voc comea uma resposta a uma pergunta aparentemente simples), mas sim um novo truque para computadores. Como que funciona? Raciocnio em lgica fuzzy s uma questo de generalizar - Conhecer o sim no (booleanos) lgica. Se voc dar o verdadeiro valor numrico de 1 e falso o valor numrico de 0, este valor indica tambm que a lgica difusa permite-nos valores como entre 0,2 e 0,7453. Por exemplo: Q: Ser um fim de semana sabado dia? A: 1 (sim, ou true) Q: Ser que ter um fim de semana dia? A: 0 (no, ou falso) Q: um fim de semana sexta-feira dia? A: 0,8 (na sua maior parte, sim, mas no completamente) Q: Ser um fim de semana domingo dia? A: 0,95 (sim, mas no to grande como sbado). O seguinte grfico esquerda mostra a verdade valores para a semananess se voc so obrigados a responder com um sim ou no resposta absoluta. direita, um grfico que mostra a verdade valor de semana-ness se voc est autorizado a responder fuzzy-nos com valores entre.

Tecnicamente, a representao direita a partir do domnio de multivalued lgica (ou lgica polivalente). Se voc perguntar pergunta: "Ser que um membro do conjunto X Uma? "A resposta poderia ser sim, no, ou qualquer um de um milhar de intermediria entre em valores. Assim, X poderia ter adeso parcial em A. Multivalued lgica est em contraste direto para o mais familiar conceito de doisavaliada (ou bivalente sim-no) lgica. Para voltar ao exemplo, consideram agora uma escala contnua parcela de tempo Estoril-ness mostram as seguintes parcelas.

Ao tornar o enredo contnuo, voc a definio do grau em que nenhum dado instantneas pertence o fim de semana, em vez de um dia inteiro. No enredo sobre a esquerda, perceba que a meia-noite de sexta-feira, assim como a segunda mo varreduras passado 12, o fim de semana-ness verdade salta descontnuo valor de 0 a 1. Isto uma forma de definir o fim de semana, e ao mesmo tempo que podero ser teis para um revisor de contas, no pode realmente entrar em contato com a sua prpria experincia do mundo real-Estoril-ness.O grfico direita mostra uma curva suave variando o que representa a fato de que todos os de sexta-feira, e, em pequeno grau, de partes de Quinta-feira, participe das qualidade da semana-dade e, portanto, merecem adeso parcial no conjunto fuzzy momentos da semana. A curva que define o fim de semana-dade de qualquer instante no tempo uma funo que os mapas de entrada espao (altura da semana) para a sada espao (Estoril-ness). Especificamente, conhecido como um membro funo. Ver "Composio Funes" na pgina 3-3 para uma discusso mais detalhada. Como outro exemplo de conjuntos fuzzy, considerar a questo das estaes. Que poca que agora? No hemisfrio norte, vero comea oficialmente no momento exato em rbita da Terra, quando o Plo Norte apontado mais directamente para o sol. Ela ocorre exatamente uma vez por ano, no final de junho.

Usando os astronmicos definies para a temporada, voc obtm fronteiras ntidas como mostrado esquerda na figura que se segue. Mas o que voc experincia como as estaes variar mais ou menos continuamente como mostrado direita na figura a seguir (no hemisfrio norte climas temperados).

Composio Funes A adeso funo (MF) uma curva que define quanto cada ponto na input espao mapeado para uma adeso valor (ou grau de adeso) entre 0 e 1. A entrada espao por vezes referida como o universo de discurso, um nome fantasia para um conceito simples. Um dos exemplos mais comumente usado de um conjunto fuzzy o conjunto de tall pessoas. Neste caso, o universo de discurso que todos os potenciais alturas, de dizer 3 ps a 9 ps, ea palavra de altura que corresponderia a uma curva que define o grau em que qualquer pessoa de altura. Se o conjunto de pessoas dada a alta bem definidos (fresco) fronteira de um conjunto clssico, voc poderia dizer todas as pessoas que mais alto que no so oficialmente considerados 6 ps de altura. No entanto, essa distino claramente absurda. Ela pode fazer sentido de considerar o conjunto de todos os nmeros reais maiores at 6 nmeros porque pertencem a um resumo avio, mas quando ns queremos falar de pessoas reais, no razovel que uma pessoa chamada curto e outro um alto quando eles diferem em altura com a espessura de um cabelo.

Se o tipo de distino acima indicada impraticvel, ento qual o direito maneira de definir o conjunto de pessoas altas? Por muito que com a parcela de semana dias, a figura seguinte mostra uma curva suave que passa variando de no-tall a altura. O eixo de sada- um nmero conhecido como a filiao valor entre 0 e 1. A curva conhecido como um membro funo e muitas vezes dada a denominao de . Esta curva define a transio entre a no tall tall. Ambos as pessoas so altas, em certa medida, mas um significativamente menor do que a outra altura.

Interpretaes subjectivas e adequado unidades so construdas em razo fuzzy conjuntos. Se voc diz "Ela alta," a adeso funo de altura j deveria ter em considerao se voc estiver fazendo referncia a um perodo de seis anos de idade ou uma mulher cultivada. Do mesmo modo, as unidades esto includos na curva. Certamente, no faz sentido dizem "Ser que ela altura em polegadas ou em metros?" Composio funes em Lgica Fuzzy Toolbox A nica condio de membro dever funcionar realmente que ela deve satisfazer variar entre 0 e 1. A prpria funo pode ser arbitrria uma curva cujo forma que podemos definir como uma funo que se adequa-nos do ponto de vista da simplicidade, comodidade, rapidez e eficincia.

Um clssico pode ser expressa em conjunto A = (x | x> 6)

Um conjunto fuzzy uma extenso de um conjunto clssico. Se X o universo de discurso e os seus elementos so indicadas por x e, em seguida, um conjunto fuzzy A em X definido como um conjunto de pares ordenados. A = (x, A (x) | x X) A (x) chamada funo da filiao (ou MF) de x em A. A adeso funo mapeia cada elemento de X para uma adeso valor entre 0 e 1. Lgica Fuzzy Toolbox inclui 11 alto-adeso funo tipos. Estes 11 funes so, por sua vez, construdo a partir de vrias funes bsicas: funes seccionalmente linear a funo distribuio gaussiana a curva sigmide quadrtica e cbica curvas polinomiais

Para obter informaes detalhadas acerca de qualquer uma das funes mencionadas adeso a seguir, vire para o Captulo 4, "Funes - Lista Alfabtica". Por conveno, todas as filiao funes tm as letras mf no final de seus nomes. O mais simples adeso funes so formadas usando linhas retas. Destes, o mais simples a funo triangular adeso, e que tem a funo Nome trimf. Esta funo nada mais do que uma coleo de trs pontos formando um tringulo. A adeso funo trapezoidal, trapmf, tem uma top plana e realmente apenas um tringulo truncado curva. Estes linha recta filiao funes tm a vantagem da simplicidade.

Dois membros funes so construdas sobre a distribuio gaussiana curva: uma Gauss simples e uma curva em frente e verso composta de duas diferentes Gaussiano curvas. As duas funes so gaussmf e gauss2mf. A adeso generalizada sino funo especificada por trs parmetros e tem o nome da funo gbellmf. A funo tem um sino adeso parmetro mais do que a funo Gaussiana adeso, de forma que ele possa abordagem um no-fuzzy definir se o parmetro livre sintonizado. Devido sua lisuranotao e concisa, Gauss e funes so pertena campainha populares mtodos para especificao conjuntos fuzzy. Ambas as curvas tm a vantagem de ser lisas e no zero em todos os pontos.

Apesar de a adeso Gaussian funes e campainha adeso funes atingir suavidade, eles so incapazes de especificar assimtricas adeso funes, que so importantes em determinadas aplicaes. Em seguida, voc define o sigmoidal adeso funo, que aberta, quer esquerda ou direita. Assimtricas e fechada (ou seja, no est aberta esquerda ou direita) filiao funes podem ser sintetizado utilizando sigmoidal duas funes, por isso, para alm do bsico sigmf, voc tambm tem a diferena entre as duas funes sigmoidal, dsigmf, e os produto de duas funes sigmoidal psigmf.

Polinomial com base em curvas para a adeso de vrias funes na "caixa de ferramentas. Trs so as funes relacionadas adeso Z, S, Pi e curvas, todas as chamado por causa da sua forma. A funo a zmf assimtrico polinmio aberto curva para a esquerda, SMF o espelho de imagem de funo que abre direita, e pimf zero em ambos os extremos em um lugar no meio.

Existe uma vasta seleco de escolher a partir de quando voc estiver selecionando seus favoritas adeso funo. Lgica Fuzzy Toolbox tambm permite que voc crie a sua prpria inscrio funciona se voc encontrar a lista demasiado restritiva. Contudo, se uma lista baseada em funes alargadas adeso parece demasiado complicada, basta lembrar que voc poderia provavelmente obter do muito bem com apenas uma ou dois tipos de filiao funes, por exemplo, o tringulo e trapezoidais funes. A seleo grande para aqueles que querem explorar as possibilidades, mas expansivo adeso funes no so necessrias para a boa fuzzy inferncia sistemas. Por fim, lembre-se que mais informaes estejam disponveis em todos os estas funes na seco de referncia. Resumo das funes adeso

Fuzzy conjuntos descrever conceitos vagos (por exemplo, fast runner, clima quente, semana dias). Um conjunto fuzzy admite a possibilidade de uma adeso a ele. (e.g. e

sexta-feira. uma espcie de semana dia, o clima bastante quente). O grau de um objecto que pertence a um conjunto fuzzy indicado por um membro valor entre 0 e 1. (por exemplo, um fim de semana sexta-feira dia para o grau 0.8). Uma funo membro associado com um dado conjunto fuzzy mapas um input valor adequado para a sua adeso valor.

Operaes lgicas Agora que voc compreende a inferncia fuzzy, voc precisa ver como fuzzy inferncia conecta com operaes lgicas. A coisa mais importante para perceber sobre fuzzy raciocnio lgico o fato que um superconjunto do padro lgica booleana. Em outras palavras, se voc manter o fuzzy em seus valores extremos de 1 (completamente verdade), e de 0 (completamente falso), norma ir realizar operaes lgicas. Como um exemplo, considere os seguintes norma verdade tabelas.

Agora, porque na lgica fuzzy a verdade de qualquer afirmao uma questo de grau, estes quadros podem ser alterados verdade? Os valores de entrada podem ser nmeros reais entre 0 e 1. O que preserva funo dos resultados da mesa e verdade (por exemplo) e tambm estender a todos os nmeros reais entre 0 e 1? Uma das respostas a operao min. Ou seja, resolver a afirmao de A e B, onde A e B esto limitados ao intervalo (0,1), usando a funo min (A, B). Usando o mesmo raciocnio, voc pode substituir a operao OR com o max funo, de modo que A ou B se torna equivalente ao max (A, B). Por ltimo, o Nem uma operao a operao se torna equivalente a 1 - A. Aviso howthe anterior tabela verdade completamente inalterada por esta substituio.

Por outro lado, porque existe uma funo por trs da tabela verdade em vez de apenas a verdade quadro prprio, agora voc pode considerar que no sejam valores 1 e 0.A prxima figura usa um grfico para mostrar a mesma informao. esta figura, otabela verdade convertido para um lote de dois conjuntos fuzzy aplicadas em conjunto para criar um conjunto fuzzy. A parte superior do valor

correspondente s parcelas displays duas mesas-valorizada verdade acima, enquanto a parte inferior da figura mostra como as operaes ao longo de um trabalho continuamente varivel Uma srie de valores e de verdade B, de acordo com as operaes fuzzy voc tiver definido.

Dadas estas trs funes, pode resolver qualquer construo utilizando conjuntos fuzzy e da lgica fuzzy operao AND, OR e NOT. Adicional operadores fuzzy Nesse caso, definido apenas uma correspondncia entre particulares - valorizadas e multivalued duas operaes lgicas para AND, OR e NOT. Este correspondncia no de forma nica. Em termos mais gerais, -lhe definir o que so conhecidos como o fuzzy interseco ou conjuno (AND), fuzzy unio ou disjuno (OR), e fuzzy complementar (NO). Os operadores clssicos para estas funes so as seguintes: E = in, max = OU, e NO = aditivo complementar. Normalmente, mais lgica fuzzy aplicaes fazem uso destas operaes e ficar por aqui. Em geral,No entanto, estas funes so arbitrrios para um grau surpreendente. Lgica Fuzzy Toolbox usa o clssico para o operador fuzzy complementar, conforme indicado na figura anterior, mas tambm permite personalizar os operadores E e OU. A interseo de dois conjuntos fuzzy A e B especificado, em geral, por um binrio T mapeamento, que agrega duas funes filiao como se segue: A B (x) = T ( A (x), B (x) Por exemplo, o operador binrio T pode representar a multiplicao de A (x) e B (x). Estes operadores fuzzy interseco, que so

geralmente referidos como T-norma (norma Triangular) operadores, satisfazer os seguintes bsicas. Requisitos: Uma T-norma um operador binrio mapeamento T (.,.) satisfazendo fronteira: T (0, 0) = 0, T (a, 1) = T (1, a) = a monotonicity: T (a, b) <= T (c, d) se a <= c e b <= d Comutatividade: T (a, b) = T (b, a) associatividade: T (a, T (b, c)) = T (T (a, b), c) A primeira exigncia impe a generalizao para corrigir cristalino conjuntos. O segundo requisito implica que uma reduo na adeso valores em A ou B no pode produzir um aumento no valor da filiao em A interseo B.O terceiro requisito indica que o operador indiferente para a ordem de os conjuntos fuzzy a ser combinado. Por ltimo, a quarta condio permite-nos assumir a interseco de qualquer nmero de conjuntos, de qualquer forma de pairwise agrupamentos.

Tal como interseo fuzzy, o operador fuzzy unio especificado, em geral, por um binrio de mapeamento S: A B (x) = S ( A (x), B (x)) Por exemplo, o operador binrio S pode representar a adio de A (x) e B (x). Estes operadores fuzzy unio, os quais so muitas vezes referido como T-conorm (ou S-norma) operadores, deve preencher os seguintes requisitos bsicos: A Tconorm (ou S-norma) um operador binrio mapeamento S (.,.) satisfazendo fronteira: S (1, 1) = 1, S (a, 0) = S (0, a) = a monotonicity: S (a, b) <= S (c, d) se a <= c e b <= d Comutatividade: S (a, b) = S (b, a) associatividade: S (a, S (b, c)) = S (S (a, b), c) Vrios parametrizados T-normas e T-conorms dupla tm sido propostas em o passado, tais como as do Yager [19], Dubois e Prade [3], e Schweizer Sklar [14], e Sugeno [15], encontrado no Apndice B, "Bibliografia". Cada destes fornece uma maneira de variar o ganho com a funo para que possa ser muito restritiva ou muito permissiva. Se-ento regras Fuzzy conjuntos fuzzy e os operadores so os temas e verbos de lgica difusa. Estes - se ento regra declaraes so utilizados para formular as declaraes que

condicional compreender a lgica difusa. Um nico fuzzy-se ento Estado assume a forma. Se x uma ento y B onde A e B so definidos pelos valores lingsticos fuzzy conjuntos sobre as gamas (universos de discurso) X e Y, respectivamente. A parte-se da regra "x um" chamado de antecedente ou premissa, enquanto que o ento-parte do Estado "y B" chamado a conseqente ou concluso. Um exemplo de uma tal regra poderia ser.Se servio bom, ento ponta mdia O conceito representado como um bom nmero entre 0 e 1, e assim o antecedente uma interpretao que retorna um nico nmero entre 0 e 1. Inversamente, a mdia representado como um conjunto fuzzy, e assim a conseqente. uma tarefa que atribui a todo o conjunto fuzzy B para a sada varivel Y. Na regra se-ento, recebe a palavra usada em dois completamente diferentes maneiras dependendo se ele aparece na antecedente ou o conseqente. Em MATLAB termos, este uso a distino entre um teste usando relacional "==" E uma varivel usando a atribuio "=" smbolo. Uma maneira menos confusa de escrever a regra seria. Se == bom servio, ento ponta mdia = Em geral, a entrada para uma regra se-ento o valor atual para o input varivel (neste caso, servio) e da produo todo um conjunto fuzzy (neste caso, mdia). Este conjunto vai ser mais tarde defuzzified, atribuindo um valor para a sada. O conceito de defuzzification descrito na prxima seo. Interpretando-se em seguida uma regra envolve partes distintas: a primeira avaliao antecedente (que envolve fuzzifying de entrada e de aplicar qualquer necessrias fuzzy operadores) e de segunda aplicando esse resultado para o conseqente (conhecido como implicao). No caso de duas ou valorizados lgica binria, se depois de fazer regras no apresentar muito dificuldade. Se a premissa verdade, ento a concluso VERDADEIRA. Se voc relaxar as restries de duas valorizada lgica e deixar o antecedente fuzzy uma afirmao, como que esta reflexo sobre a concluso? A resposta um simples. se o antecedente verdadeiro para algum grau de adeso e, em seguida, a consequente tambm verdade que a mesma intensidade. Assim: na lgica binria: p q (p e q so ou ambos verdadeiros ou ambos falsos.) na lgica fuzzy: 0,5 p 0,5 q (parcial

antecedentes prestao parcial implicao.) O antecedente de uma regra pode ter vrias peas. se cu cinza eo vento forte e barmetro est caindo, ento ... caso em que todas as partes do antecedente so calculados em simultneo e resolvidos a um nico nmero usando os operadores lgicos descritos na seco anterior. A consequente de uma regra tambm pode ter vrias peas. Se a temperatura frio, ento est aberta vlvula de gua quente e gua fria vlvula shut consequents caso em que todos so igualmente afectados pelo resultado doantecedente. Como o conseqente afectados pela antecedente? O conseqente especifica um conjunto fuzzy ser atribudo sada. A implicao funcionar depois que modifica fuzzy para definir o grau especificado pelo antecedente. As formas mais comuns de modificar a sada fuzzy so fixados utilizando truncamento min a funo (onde o conjunto fuzzy chopped off como mostrado na seguinte figura) ou usando o dimensionamento prod funo (onde a produo fixado fuzzy achatada). Ambos so apoiados por Fuzzy Logic Toolbox, mas voc usar truncamento para os exemplos nesta seo

Resumo das Regras Se-Ento Interpretando-se ento um perodo de trs regras parte processo. Esse processo explicado em pormenor na seco seguinte:

1) Fuzzify insumos: Resolver todas as declaraes fuzzy no antecedente para um grau de filiao entre 0 e 1. Se houver apenas uma parte para o antecedente, ento este o grau de apoio ao Estado. 2) 2) Aplique operador fuzzy para vrios antecedentes parte: Se forem vrias peas para o antecedente, se aplicam a lgica difusa operadores e resolver 3) o antecedente para um nico nmero entre 0 e 1. Este o grau de apoio ao Estado. 4) Aplicar 3 implicao mtodo: Use o grau de apoio para todo o Estado de moldar a sada fuzzy set. A consequente de uma regra fuzzy atribui todo um conjunto fuzzy para a sada. Este conjunto fuzzy representado por um membro funo que escolhido para indicar as qualidades do consequentes. Se o antecedente apenas parcialmente verdade, (ou seja, atribudo um Valor inferior a 1), ento a sada truncado fuzzy fixado de acordo com a Implicaes mtodo. 5) Em geral, uma regra por si s no eficaz. Dois ou mais regras que podem desempenhar desativado um outro so necessrios. A sada de cada regra um conjunto fuzzy. O fuzzy conjuntos de sada para cada regra so ento agregados em uma nica sada fuzzy ajustar. Por ltimo, o conjunto resultante defuzzified, ou para resolver um nico nmero. "Inferncia Fuzzy Systems" na pgina 2-20 mostra como funciona todo o processo do comeo ao fim para um tipo particular de inferncia fuzzy sistema denominadoum tipo Mamdani. Inferncia Fuzzy Systems

"O que so Interferncia Fuzzy Systems?" Na pgina 2-20 "Tipping Problema Revisited" na pgina 2-21 "A Fuzzy Inferncia Diagrama" na pgina 2-27 "personalizao" na pgina 2-29

Quais so Interferncia Fuzzy Systems?

Fuzzy inferncia o processo de formulao de cartografia a partir de um determinado input para uma sada utilizando a lgica difusa. O mapeamento fornece uma base a partir de ento decises que possam ser feitas, ou padres discernido. O processo de fuzzy inferncia envolve todas as peas que esto descritas nos captulos anteriores: "Composio Funes" na pgina 2-8, "Logical Operaes" na pgina 2-13, e "SeEnto Regras" na pgina 2-16. Existem dois tipos de inferncia fuzzy sistemas que podem ser implementados em Lgica Fuzzy Toolbox: Mamdani-tipo e Sugeno-tipo. Estes dois tipos de sistemas de inferncia variar um pouco no caminho sadas so determinadas. Veja a Bibliografia de referncias a descries dos estes dois tipos de sistemas de inferncia fuzzy, [8], [11], [16]. Fuzzy inferncia sistemas tm sido aplicados com sucesso em domnios como a o controlo automtico de dados classificao, a deciso anlise, sistemas de peritos, e viso computacional. Devido sua natureza multidisciplinar, inferncia fuzzy os sistemas esto associados a uma srie de nomes, tais como a regra de base-fuzzy sistemas, fuzzy expert systems, fuzzy modelagem, fuzzy memria associativa, lgica fuzzy controladores areos, e, pura e simplesmente (e ambgua) sistemas difusos. Inferncia Mamdani fuzzy do mtodo o mais comumente visto fuzzy metodologia. Mamdani do mtodo foi um dos primeiros sistemas de controle construdos usando o conjunto fuzzy teoria. Foi proposto em 1975 pelo Ebrahim Mamdani [11], como uma tentativa de controlar um motor de vapor e de caldeiras a combinao de sntese um conjunto de regras lingusticas controle obtidos a partir de operadores com experincia humana. Mamdani's esforo foi baseada em Lotfi Zadeh do papel em 1973 fuzzy algoritmos de sistemas complexos e processos de deciso [22]. Apesar de a inferncia processo descrito nas prximas sees difere ligeiramente a partir de mtodos descritas no documento original, a idia bsica muito mais o mesmo. Inferncia Mamdani-tipo, tal como definido para Lgica Fuzzy Toolbox, espera que o sada adeso funes a conjuntos fuzzy. Aps a agregao processo, h um conjunto fuzzy para cada varivel de sada que precisa defuzzification. ele possvel, e, em muitos casos, muito mais eficiente, para usar uma nica espiga como a sada adeso, em vez de uma funo distribuda fuzzy set.

Este tipo de sada s vezes conhecido como uma sada adeso Singleton funo, e que pode ser pensado como um conjunto de pr-defuzzified fuzzy. Ela refora defuzzification a eficincia do processo, uma vez que simplifica muito o computao exigido pelo mtodo Mamdani mais geral, que considera o centride de uma funo bidimensional. Ao invs de integrao em toda a bidimensional funo de encontrar o centride, voc usa a mdia ponderada de alguns pontos de dados. Sugeno-este tipo de sistemas de apoio tipo de modelo. Em geral, Sugeno sistemas de tipo pode ser usado para qualquer modelo de sistema de inferncia que a sada adeso funes so lineares, ou seja, constante. Tipping problema revisitado Esta seco analisa as duas entradas, uma sada-, regra de trs basculamento problema que voc viu na introduo, apenas em mais pormenor. A estrutura bsica da este exemplo mostrado no diagrama seguinte.

Os fluxos de informao da esquerda para a direita, a partir de duas entradas para uma nica sada. O paralela natureza das regras um dos mais importantes aspectos da lgica fuzzy sistemas. Em vez de acentuada mudana entre os modos baseada na interrupo, suavemente lgica fluxos provenientes de regies onde o comportamento do sistema dominada quer por um Estado ou de outra. Em Fuzzy

Logic Toolbox, h cinco partes do processo inferncia fuzzy: fuzzification das variveis de entrada, a aplicao do operador fuzzy (E ou OR), no antecedente, implcita do antecedente para o consequente, consequents a agregao de toda a regulamentao, e defuzzification. Estes crptico e por vezes estranho nomes tm significado muito especficos que so definidos nas etapas seguintes. Etapa 1. Fuzzify Insumos O primeiro passo a tomar as entradas e determinar o grau em que eles pertence a cada um dos conjuntos fuzzy via adequada adeso funes. Em Fuzzy Logic Toolbox, a entrada sempre um cristalino limitado ao valor numrico universo de discurso da entrada varivel (neste caso, o intervalo entre 0 e 10) e a sada um fuzzy grau de adeso qualificao lingustica conjunto (sempre o intervalo entre 0 e 1). Fuzzification do input montantes correspondentes a cada uma tabela lookup ou uma funo avaliao. Este exemplo construdo sobre trs regras, e cada uma das regras depende de resolver os factores de produo em um nmero de diferentes conjuntos fuzzy lingustica: servio pobre, o servio bom, rano alimentares, alimentos delicioso, e assim por diante. Antes as regras podem ser avaliadas, as entradas devem ser fuzzified de acordo com cada um dos lingustica destes conjuntos. Por exemplo, em que medida realmente a comida deliciosa? A figura seguinte mostra quo bem os alimentos no restaurante hipottica (cotados numa escala de 0 a 10) qualifica, (atravs da sua filiao funo), como o lingustica varivel delicioso. Neste caso, classificado como um dos gneros alimentcios 8, a qual, dada a sua definio de grficos delicioso, corresponde = 0,7 para o deliciosas adeso funo.

Desta forma, cada entrada fuzzified durante todo o qualificativo adeso funes exigidas pela regulamentao. Passo 2. Aplique operador fuzzy Aps as entradas so fuzzified, voc sabe o grau em que cada parte do o antecedente preenchida por cada Estado. Se o antecedente de uma determinada regra tem mais de um lado, o operador fuzzy aplicado para obter um nmero que representa o resultado do antecedente para essa regra. Este nmero ento aplicada a funo de sada. A entrada para o operador tem duas fuzzy ou mais valores de adeso fuzzified variveis de entrada. A sada uma nica verdade. Tal como est descrito em "operaes lgicas" na pgina 2-13 seco, qualquer nmero de bem definidos mtodos podem preencher a EA para o funcionamento ou a operao OU. Em Fuzzy Logic Toolbox, integradas e de dois mtodos so suportados: min(mnimo) e prod (produto). Dois built-in ou mtodos tambm so suportados: max (mximo), e do mtodo probabilstico OU probor. A probabilstica Ou mtodo (tambm conhecida como a soma algbrica) calculado de acordo com a equao probor (a, b) = a + b ab Para alm destes mtodos built-in, voc pode criar seus prprios mtodos para a E nem por escrito e de qualquer funo e que a fixao de ser o seu mtodo de escolha. A figura a seguir mostra o operador OR max no trabalho, na avaliao da antecedente da regra 3 para o basculamento clculo. As duas peas diferentes do antecedente (servio excelente e comida deliciosa) rendeu a fuzzy filiao valores 0,0 e 0,7, respectivamente. O operador fuzzy ou simplesmente escolhe o valor mximo dos dois valores, 0,7, e para a operao fuzzy regra 3 est completo. A probabilstica ou mtodo seria ainda resultar em 0,7.

Etapa 3. Aplicar mtodo implicao. Antes de aplicar o mtodo de implicao, voc deve determinar a regra da peso. Cada Estado tem um peso (um nmero entre 0 e 1), que aplicada para o nmero dado pelo antecedente. Geralmente, esse peso de 1 (uma vez que para este exemplo) e, portanto, no tem nenhum efeito sobre a implicao de todo processo. De vez em quando voc pode querer peso uma regra em relao aos outros por mudando o seu peso valor para algo diferente 1. Depois de uma ponderao correcta tem sido atribudo a cada Estado, o mtodo de implicao executado. A conseqente fuzzy um conjunto representado por um membro funo, que pesos adequadamente as caractersticas lingsticas que so que lhe atribuda. O consequente reformulado utilizando uma funo associada com o antecedente (um nmero nico). A entrada para o processo implicao um nmero nico dado pelo antecedente, e a sada um conjunto fuzzy. Implicao implementada por cada Estado. - Construdo em dois mtodos so suportados, e eles so as mesmas funes que so usados pelo e mtodo: min (mnimo), que trunca o conjunto fuzzy de sada, e prod (produto), que escalas a sada fuzzy set.

Etapa 4. Agregar todas as sadas Porque as decises so baseadas na realizao de testes a todas as regras em uma FIS, as regras devem ser combinadas de forma alguma, a fim de tomar uma deciso. A agregao o processo pelo qual os conjuntos que representam o fuzzy realizaes de cada Estado so combinados em um nico conjunto fuzzy. gregao apenas ocorre uma vez para cada varivel de sada, imediatamente antes da quinta

e ltima etapa, defuzzification. A entrada do processo a agregao da lista de truncado funes de sada retornado pela implicao processo para cada Estado. A sada o processo de agregao um conjunto fuzzy para cada varivel de sada. Enquanto o mtodo de agregao comutativo (que sempre se deve ser), ento a ordem em que as regras so executadas no importante. Trs - construdo em mtodos so suportados: Max (mximo) probor (probabilstica OR) soma (simplesmente a soma de cada Estado sada do conjunto) No grfico seguinte, todos os trs regras foram colocados juntos para mostrar o modo como a sada de cada regra combinado, ou agregada, em um nico conjunto fuzzy cuja adeso funo atribui uma ponderao para cada sada (ponta) valor.

Etapa 5. Defuzzify A entrada para a defuzzification processo um conjunto fuzzy (da produo acumulada fuzzy set) e a sada um nmero nico. Por muito que ajuda a fuzziness Avaliao do Estado durante as etapas intermedirias, o resultado final desejado para cada varivel geralmente um nmero nico. No entanto, o agregado de uma

fuzzy conjunto engloba uma gama de valores de sada, e assim deve ser, em defuzzified fim de resolver um nico valor de sada do conjunto. Talvez o mais popular defuzzification mtodo de clculo o centride, que retorna o centro da rea sob a curva. H cinco built-in Mtodos suportados: centride, bissector, meados de mxima (a mdia de o valor mximo do conjunto de sada), maiores de mxima, e de menor de, no mximo.

O diagrama inferncia fuzzy A inferncia fuzzy o diagrama composto de todos os pequenos diagramas apresentou at agora nesta seo. Ela exibe simultaneamente todas as partes do inferncia fuzzy processo tiver examinado. Informaes atravs dos fluxos inferncia fuzzy diagrama como mostrado na figura a seguir.

Nesta figura, o fluxo de produtos at os factores de produo no canto inferior esquerdo e, em seguida, entre cada linha, ou regra e, em seguida, estabelece a regra sadas para finalizar no canto inferior direito. Este fluxo compacto mostra tudo de uma vez, a partir de variveis lingsticas fuzzification todo o caminho atravs de defuzzification da produo acumulada. A figura a seguir mostra a real dimenso integral-fuzzy inferncia diagrama. L muita coisa para ver em uma inferncia fuzzy esquema, mas depois que voc se habituepara ele, voc pode aprender muito sobre um sistema muito rapidamente. Por exemplo, a partir deste esquema especial com estes factores de produo, voc pode ver facilmente que a implicao mtodo truncamento com a funo min. A funo max est sendo usado fuzzy para a operao OU. Regra 3 (o mais baixo-fila no diagrama mostrados anteriormente) est a ter o mais forte influncia sobre a produo. e assim por diante. O artigo Viewer descrito em "A Regra Viewer" na pgina 2-46 um MATLAB implementao da inferncia fuzzy diagrama.

Personalizao Um dos principais objetivos da Lgica Fuzzy Toolbox est a ter um dilogo aberto e de fcil modificado inferncia fuzzy sistema estrutura. Assim, Fuzzy Logic Toolbox concebido para lhe dar a maior liberdade possvel, dentro dos condicionalismos bsicos do processo descrito, para personalizar o seu processo de inferncia fuzzy aplicativo. Por exemplo, voc pode substituir as suas prprias funes MATLAB o padro para qualquer uma das funes usadas nas cinco etapas detalhadas anteriormente: voc fazer sua prpria inscrio funes e mtodos, ou mtodos, Implicaes mtodos de agregao mtodos, e defuzzification mtodos "Construir Sistemas com Lgica Fuzzy Toolbox" na pgina 2-30 descreve exatamente como criar e implementar um sistema de inferncia fuzzy usando as ferramentas fornecidas.

Construo de Sistemas com Lgica Fuzzy Toolbox "Tipping Outro Problema" na pgina 2-30 "Como comear" na pgina 2-33 "A FIS Editor" na pgina 2-34 "A Funo Scio Editor" na pgina 2-38 "A Regra Editor" na pgina 2-43 "A Regra Viewer" na pgina 2-46 "A superfcie Viewer" na pgina 2-49 "Importar e Exportar a partir de ferramentas GUI" na pgina 2-50 "Personalizando Seu Fuzzy System" na pgina 2-51 Outro problema basculamento

Agora, voc est indo para o trabalho atravs de um depsito similar exemplo, s iremos ser edifcio-lo usando a interface grfica do usurio (GUI) ferramentas fornecidas pela Lgica Fuzzy Toolbox. Embora seja possvel utilizar Lgica Fuzzy Toolbox por trabalho estritamente a partir da linha de comando, em geral, muito mais fcil para construir uma sistema graficamente. H cinco principais ferramentas GUI para a construo, edio, e observando fuzzy em sistemas de inferncia Fuzzy Logic Toolbox:

Inferncia Fuzzy System (FIS) Editor Composio funo Editor Regra Editor Regra Viewer Superfcie Viewer Essas GUIs so ligados dinamicamente, em que as mudanas que voc faz para o FIS usando um deles, podem afetar o que voc v em qualquer um dos outros GUIs aberto. Voc pode ter uma ou todas elas aberto para um determinado sistema. Para alm destes cinco primrio GUIs, inclui a "caixa de ferramentas grficas ANFIS GUI, que utilizado para a construo e analisando-tipo Sugeno adaptativo neural fuzzy inferncia sistemas. O ANFIS GUI discutido em "Tipo Sugeno-Fuzzy Inferncia" na pgina 2-80.

A FIS Editor lida com a questes de alto nvel para o sistema: Qual o nmero de entrada e parmetros de sada? Quais so os seus nomes? Lgica Fuzzy Toolbox no limitar o nmero de entradas. No entanto, o nmero de entradas podem ser limitadas por a memria disponvel de sua mquina. Se o nmero de entradas muito grande, ou o nmero de inscrio funes muito grande, ento ele tambm pode ser difcil de Analisar a FIS usando as outras ferramentas GUI. A Funo Scio

Editor utilizado para definir os perfis de todos os filiao funes associadas a cada varivel. A regra editor para a edio da lista de regras que define o comportamento de o sistema. A Regra da superfcie Viewer Viewer e so utilizadas para analisar, em oposio a edio, a FIS. Eles so estritamente s de leitura ferramentas. A Regra um Viewer MATLAB baseado exibio da inferncia fuzzy diagrama mostrado no fim de a ltima seo. Usado como um diagnstico, pode mostrar (por exemplo) que as regras so ativos, ou como membros individuais esto a influenciar a funo molda resultados. A superfcie Viewer utilizado para exibir as dependncias de um dos realizaes em qualquer um ou dois dos factores de produo-ou seja, gera um e parcelas. Mapa superfcie de sada para o sistema. Esta seo comeou com uma ilustrao semelhante a uma das seguintes descrevendo as principais partes de um sistema de inferncia fuzzy, apenas uma mostra como a prxima os trs editores bate certo. Os dois espectadores analisar o comportamento do sistema inteiro.

Os cinco principais GUIs todos podem interagir e trocar informaes. Qualquer um de eles sabem ler e escrever, tanto para o trabalho e para um arquivo (a read-only telespectadores ainda pode trocar parcelas com a rea de trabalho e guard-las para um arquivo).Para qualquer inferncia fuzzy sistema, qualquer ou todos estes cinco GUIs podem ser abertos. Se mais do que um destes editores est aberto para um sistema nico, os vrios GUI as janelas esto cientes da existncia dos outros, e, se necessrio, actualiza relacionadas com o Windows. Assim, se os nomes dos membros funes so alteradas utilizando a Funo Scio Editor, essas alteraes esto reflectidas na regras indicadas no artigo Editor. Os editores para qualquer nmero de diferentes FIS sistemas podem ser abertos simultaneamente. A FIS

Editor, o Membership Funo Editor, e do artigo Editor todos podem ler e modificar os dados FIS,mas a regra da superfcie Viewer Viewer e no alterem os dados na FIS qualquer forma. Comeando: Ns iremos comear com uma descrio de uma base de duas entradas, uma sada de tombamento problema (com base em prticas de tombamento os E.U.). O problema bsico basculamento Dado um nmero entre 0 e 10 que representa a qualidade do servio em um restaurante (onde 10 excelente), e outro nmero entre 0 e 10 que representa a qualidade dos alimentos em que restaurante (mais uma vez, 10 excelentes), o que deveria ser a ponta? O ponto de partida a anote as trs regras de ouro de depsito, baseado em anos de experincia pessoal nos restaurantes. 1. Se o servio pobre ou o alimento rano, ento dica barato. 2. Se o servio bom, ento ponta mdia. 3. Se o servio excelente ou a comida deliciosa e, em seguida, gorjeta generosa. Suponhamos que uma ponta mdia de 15%, uma generosa gorjeta de 25%, e uma dica barato 5%. Obviamente

bvio que os nmeros e a forma da curva esto sujeitas a nvel local tradies, preconceitos culturais, e assim por diante, mas as trs regras geralmente so universais. Agora que voc conhece as regras e ter uma idia do que a sada deve parecer como, comear a trabalhar com as ferramentas GUI para construir um sistema de inferncia fuzzy para este processo de deciso.

O debate seguinte, diz-lhe como construir um novo sistema de inferncia fuzzy a partir do zero. Se voc quiser poupar tempo e seguem ao longo rapidamente, voc pode carregar o pr sistema, digitando fuzzy basculantes. Este comando carrega o FIS associados com o arquivo tipper.fis (o. Fis st implcita) e lana o FIS Editor. No entanto, se voc carregar o pr sistema, voc no criar regras e na construo de

filiao funes. A FIS Editor exibe informaes gerais sobre um sistema de inferncia fuzzy. Existe um diagrama simples na parte superior, que mostra os nomes de cada entrada varivel, esquerda, e as de cada varivel de sada direita. O amostra adeso funes mostradas nas caixas so apenas cones e no retratam as reais formas de pertena a funes: Abaixo o esquema o nome do sistema e do tipo de inferncia utilizadas. O padro de inferncia Mamdani-tipo, o que descrito, at ento,e o que voc continue a usar para esse exemplo. Outro tipo ligeiramente diferente de inferncia, chamada de tipo Sugeno inferncia, tambm est disponvel. Este mtodo explicado em "Tipo Sugeno-Fuzzy Inferncia" na pgina 2-80. Abaixo do nome do sistema de inferncia fuzzy, no lado esquerdo da figura, so os menus pop-up que permitem que voc modifique as vrias peas do inferncia processo. No lado direito, na parte inferior da figura a rea que apresenta a quer um nome de entrada ou de sada varivel, associada a sua filiao Tipo de funo, ea sua gama. Os dois ltimos campos so especificados somente aps a adeso funes ter sido. Abaixo dessa regio esto a Ajuda e Close up call botes que ajuda on-line e fechar a janela, respectivamente. No fundo uma linha que o estatuto rels informaes sobre o sistema. Para iniciar este sistema a partir do zero, tipo fuzzy no MATLAB prompt. Os genricos untitled FIS Editor abre, com um input, marcados INPUT1, e uma sada, marcados Output1. Para este exemplo, voc construir uma-duas entradas, uma sada sistema. Uma segunda caixa amarela INPUT2 aparece. As duas entradas em seu exemplo so servios e alimentos. O sada uma dica. Voc quer mudar os nomes das variveis de modo a reflectir estas designaes: 1 Escolha Editar> Adicionar varivel> Input. 2 Clique na caixa amarela INPUT1. Esta caixa destacado com um contorno vermelho. 3 Edite o campo Nome de INPUT1 ao servio, e pressione Enter.

4 Clique na caixa amarela INPUT2. Esta caixa destacado com um contorno vermelho. 5 Edite o campo Nome de INPUT2 alimentao, e pressione Enter. 6 Clique na caixa azul Output1. 7 Edite o campo Nome de Output1 a ponta, e pressione Enter. 8 selecione Arquivo> Exportar> Para Workspace ..

9 Workspace varivel Digite o nome basculantes, e clique em OK. O esquema atualizado para refletir os novos nomes dos de entrada e de sada variveis. Existe agora uma nova varivel na rea de trabalho que chamou basculantes contm todas as informaes sobre este sistema. Ao salvar a rea de trabalho com um novo nome, voc tambm renomear todo o sistema. Sua aparncia janela algo como o seguinte esquema.

Deixe a inferncia opes na parte inferior esquerda nas suas posies por omisso para j. Voc inseriu todas as informaes que voc precisa para este particular GUI. Prximo, definir a composio funes associados a cada uma das variveis. Para fazer isso, abra a Funo Scio Editor. Voc pode abrir o Editor Funo Scio em uma das trs maneiras: Dentro da FIS Editor janela, selecione Editar> Composio Funes.. Dentro da FIS Editor janela, clique duas vezes no cone azul chamado dica. Na linha de comando, digite mfedit. A adeso funo Editor

A Funo Scio Editor partes algumas caractersticas com o FIS Editor. Na realidade, todos os cinco bsica ferramentas GUI semelhantes tm opes de menus, estado linhas, Ajuda e botes e Fechar. A Funo Scio Editor a ferramenta que permite a voc exibir e editar de todos os membros de todas as funes associadas com a entrada e sada variveis para todo o sistema de inferncia fuzzy.Quando voc abrir o Editor Composio Funo para trabalhar em uma inferncia fuzzy sistema que ainda no existir na rea de trabalho, no h filiao funes associadas com as variveis que voc definiu com o FIS Editor. Na parte superior esquerda da rea do grfico na Funo Scio Editor uma "varivel Paleta" que permite que voc defina as funes de pertena a um determinado varivel. Para configurar a adeso funes associadas a uma entrada ou uma sada varivel para a FIS, FIS selecionar uma varivel na regio clicando-lo. Prxima selecione o menu suspenso Editar, e escolha a opo Adicionar SMF.. Uma nova janela. Parece, que lhe permite selecionar tanto a funo de tipo e de filiao o nmero de inscrio funes associadas com a varivel seleccionada. No canto inferior-direito da janela esto os comandos que permitem que voc mudar O nome, tipo, e os parmetros (forma), a adeso da funo, depois de selecionado. As funes de membro do actual varivel so exibidos nas principaisgrfico. Estas funes podem ser manipulados adeso de duas formas. Voc primeiro pode usar o mouse para selecionar uma funo especial filiao associados com uma determinada qualidade varivel, (como pobres, para a varivel, de servio), e ento arraste a adeso funo de lado a lado. Isto afeta a ao matemtico descrio dos associados com a qualidade que a adeso para uma determinada funo varivel. Os selecionados adeso funo tambm pode ser marcados para a dilatao ou contrao clicando na pequena praa arrastar pontos em funo da filiao e, em seguida, a funo arrastar com o rato em direo ao exterior, para a dilatao, ou em direo ao interior, para a contrao. Este aco associada a alteraes nos parmetros que a adeso funo. Abaixo est a varivel Paleta algumas informaes sobre o tipo eo nome de a actual varivel. Existe um campo texto nesta regio que lhe permite alterar os limites da actual gama da varivel (universo de discurso) e outro que permite que voc defina os limites do actual parcela (que no tem qualquer efeito real sobredo sistema). O processo de adeso especificando as funes de entrada para este dois input basculantes problema o seguinte:

1 Seleccione a entrada varivel, de servios, atravs de duplo clique sobre ele. Defina ambas as Gama e da Faixa de exibio para o vetor [0 10]. 2 Selecione Adicionar MFS. a partir do menu Editar. Abre a janela abaixo.

3 Utilize a guia para escolher gaussmf para MF e 3 Tipo de Nmero de MFS. Esta opo adiciona Gaussian trs curvas para a varivel de entrada servio. 4 Clique uma vez sobre a curva com mais esquerda Surto. Mudar o nome do Curva de pobres. Para ajustar a forma da adeso funo, use o rato, como descrito acima, ou tipo de produto em um parmetro desejada mudana, e em seguida clicar em funo da filiao. O parmetro default lista para esta curva [1,5 0]. 5 Nome da curva com o meio Surto, bom, e as curvas com o Surto direita, excelente. Redefinir os parmetros associados, se desejado.

6 Seleccione a entrada varivel, alimentao, clicando nele. Defina ambas as Gama e Mostrar o Gama para o vetor [0 10]. Selecione Adicionar 7 MFS. a partir do menu Editar e acrescentar duas curvas para a trapmf input varivel alimentos. 8 Clique uma vez diretamente sobre a curva esquerda com a trapezoidal. Altere o nome da curva a rano. Para ajustar a forma da adeso funo, quer usar o mouse, como descrito acima, ou em um tipo desejado parmetro mudana e, em seguida, clique em funo da filiao. O parmetro padro para esta lista curva [0 0 1 3].

9 Nome da curva com a direita trapezoidal, delicioso, e redefinir aparmetros associados, se assim desejar. Em seguida, criar as funes para a adeso sada varivel de ponta. Para criar a sada varivel filiao funes, usar a varivel sobre a paleta esquerda, selecionando a sada varivel de ponta. As entradas variando de

0 a 10, mas a escala de sada vai ser uma ponta entre 5% e 25%. Use triangular adeso funo do tipo de produo. Em primeiro lugar, definir o Gama (e da Faixa de exibio) a [0 30], para cobrir a faixa de sada. Inicialmente, a adeso barato funo tem os parmetros [0 5 10], mdia funes so pertena [10 15 20], e do generoso adeso funo so [20 25 30]. Seu sistema deve ser parecido com o seguinte Figura. Agora

Agora que as variveis tenham sido chamado a composio e funes Possuir formas e nomes, voc pode inserir as regras. Para chamar-se o artigo Editor, v para o menu Exibir e selecione Regimento., ou tipo ruleedit a linha de comando

A regra Editor

A construo de regras usando a interface grfica artigo Editor bastante auto evidentes. Com base nas descries das variveis de entrada e de sada definido com o FIS Editor, o artigo Editor permite construir o Estado declaraes de forma automtica, clicando em e selecionando um item de cada entrada varivel caixa de um item de cada caixa de sada, e uma conexo item. Escolhendo nenhuma como uma das qualidades varivel exclui as variveis de uma determinada regra. Escolhendo ao abrigo de qualquer varivel nome no nega a qualidade associados. Regras podem ser alteradas, suprimidas, ou adicionados, clicando no boto apropriado. O artigo Editor tambm tem alguns marcos familiar, semelhantes s que constam do FIS Editor e Composio da Funo Editor, incluindo a barra de menu e

da linha de estado. O formato de pop-ups est disponvel a partir do menu Opes menu suspenso a partir da barra de menu superior no menu pop-up utilizada para definir o O formato para a exibio. Do mesmo modo, Language podem ser definidos no mbito de Opes tambm. O boto Ajuda Ajuda MATLAB abre uma janela. Para inserir a primeira regra do artigo Editor, selecione o seguinte: mau servio ao abrigo da varivel rano sob a varivel alimentar O boto de opo ou, no bloco Connection barato, sob a produo varivel, gorjeta.

A regra resultante 1. Se (servio pobre) ou (alimento rano) e depois (dica barato) (1) Os nmeros em parnteses representam os pesos que podem ser aplicados a cada Estado, se assim desejar. Voc pode especificar os pesos, digitando um nmero desejado entre zero e um sob o peso configurao. Se voc no precisar deles, os pesos so assumidos para ser unidade (1). Siga um procedimento semelhante para inserir a segunda e terceira regras na Regra Editor para obter 1. Se (servio pobre) ou (alimento rano) e depois (dica barato) (1) 2. Se (servio bom) e depois (gorjeta mdia) (1) 3. Se (servio excelente) ou (comida deliciosa) e depois (gorjeta generosa) (1) Para alterar uma regra, clique sobre a primeira regra a ser alterada. Prxima fazer o desejado alteraes a essa regra e, em seguida, clique em Alterar regra. Por exemplo, para mudar a primeira regra a 1. Se (servio no pobre) ou (alimentos no rano) e depois (gorjeta no barata) (1) Selecione a caixa no no mbito de cada varivel e, em seguida, clique em Alterar regra.

O formato pop-up a partir do menu Opes de menu indica que voc est verbose olhando a forma de as regras. Tente alterar-lo para simblica. Voc ver 1. (servio == pobres) | (comida == rano) => (ponta = barato) (1) 2. (servio de boa ==) => (ponta mdia) (1) 3. (servio excelente ==) | (comida deliciosa ==) => (ponta = generosa) (1) No h muita diferena no visor realmente, mas um pouco mais linguagem neutra, porque ela no depende de termos como se, e em seguida. Se voc mudar o formato para indexada, voc ver uma verso extremamente compactado das regras.

1 1, 1 (1): 2 2 0, 2 (1): 1 3 2, 3 (1): 2 Esta a verso das regras que lida com a mquina. A primeira coluna na presente estrutura corresponde s variveis de entrada. A segunda coluna corresponde sada varivel. A terceira coluna mostra o peso aplicado a cada Estado. A quarta coluna abreviao que indica se esta uma OU (2) E regra ou um (1) regra. Os nmeros nas duas primeiras colunas referem-se ao nmero do ndice filiao funo. Uma interpretao literal da regra 1 "Se input 1 MF1 (a primeira adeso funo associada a entrada 1) ou se MF1 input 2 e, em seguida, dever sada 1 MF1 ser (o primeiro membro associado a funo de sada 1), com a peso 1.

O formato simblico no considera os termos, se, ento, e assim por diante. O indexados formato nem sequer se preocupar com os nomes de suas variveis. bvio que a funcionalidade de seu sistema no depende de quo bem voc ter chamado a sua filiao variveis e funes. O conjunto do ponto de nomeando variveis descritiva , como sempre, tornando o sistema mais fcil para voc a interpretar. Assim, a menos que voc tenha em mente alguns efeitos especiais, Provavelmente ser mais fcil para voc continuar com o formato verbose. Neste ponto, a inferncia fuzzy sistema foi completamente definida, na medida em que as variveis, pertena funes, e as regras necessrias para calcular dicas esto em vigor. Agora, observe a inferncia fuzzy diagrama apresentado no final de seo anterior e verificar se tudo est a comportar da maneira que voc pensa deveria. Voc pode usar o Visualizador de regra, ao lado das ferramentas GUI olhar para ns. A partir do menu Exibir, selecione Regimento.

A regra Viewer

O artigo Viewer exibe um roteiro de todo o processo inferncia fuzzy. Ele baseia-se na inferncia fuzzy esquema descrito na seo anterior. Voc ver um nico valor janela com 10 encaixados em pequenas parcelas-lo. As trs pequenos parcelas em toda a parte superior da figura representam o antecedente e consequente da primeira regra. Cada regra uma linha de parcelas, e cada coluna uma varivel. As duas primeiras colunas de parcelas (o amarelo seis parcelas) mostram a filiao funes referenciadas pelo antecedente, ou se o Estado-parte de cada um. O terceira coluna de parcelas (das trs parcelas azul) mostra a composio funes referenciada pela consequente, ou ento-a parte de cada Estado. Se voc clicar uma vez a regra nmero um, correspondente a regra ser exibido na parte inferior da figura. Repare que no mbito dos alimentos, h uma parcela que est em branco. Este corresponde caracterizao de nenhum alimento para a varivel na segunda regra. A quarta parcela da terceira coluna das parcelas representa o agregado ponderada deciso para o sistema dado inferncia. Esta deciso depender sobre os valores de entrada para o sistema.H tambm itens como a conhecemos hoje da linha de estado e na barra de menus. No canto inferior direito h um campo em que voc pode digitar especficos de entrada valores. Para os dois input-sistema, voc vai

entrar um input vector, [9 8], para exemplo, e, em seguida, clique em Inserir. Voc tambm pode ajustar esses valores por input clicar em qualquer lugar em qualquer uma das trs parcelas para cada entrada. Isto ir mover o ndice linha vermelha horizontal, at ao ponto onde voc clicou. Voc tambm pode basta clicar e arrastar esta linha, a fim de alterar os valores de entrada. Quando voc liberao da linha, (ou aps a entrada especificando manualmente), um novo clculo executado, e voc pode ver todo o processo inferncia fuzzy ter lugar: No caso de o ndice de servio cruza a linha representando adeso funo line "servio pobre", no canto superior esquerdo parcela determina o grau em que uma regra ativada. Uma mancha de cor amarela no mbito da adeso real funo curva usada para tornar a filiao fuzzy valor claramente visveis.

Cada uma das caracterizaes de cada uma das variveis determinado com respeito ndice linha para a entrada desta maneira. Se voc seguir regra 1 na parte superior do o diagrama, voc pode ver o consequente "dica barato" foi truncado para exactamente o mesmo grau que o (composto) antecedente-esta a implicao processo em ao. A agregao ocorre estabelece a terceira coluna, e os agregado resultante mostrado na parcela nica parcela que aparecem na parte inferior canto direito da parcela campo. A sada defuzzified valor mostrado pela espessa linha passa pelo agregado fuzzy set. O artigo Viewer permite que voc interpretar todo o processo inferncia fuzzy de uma s vez. O artigo Viewer tambm mostra como a forma de certos membros funes influenciam o resultado global. Porque cada parte de todas as parcelas regra, torna-se particularmente difcil para grandes sistemas, mas, por uma nmero relativamente pequeno de entradas e sadas, ela desempenha bem (dependendo quanta tela voc dedicar espao para ele), com um mximo de 30 regras e de tantos quantos 6 ou 7 variveis. O artigo Viewer mostra um clculo em um momento e em grande detalhe. Neste sentido, ela apresenta uma espcie de micro ponto de vista do sistema de inferncia fuzzy. Se voc quero ver toda a superfcie de sada de seu sistema de todo o espao da produo baseada no conjunto de todo o espao da entrada de configurao em que voc precisa para abrir o Surface Viewer. Este visualizador o

ltimo dos nossos cinco base em ferramentas GUI Fuzzy Logic Toolbox, e voc abrilo, selecionando a partir do menu Ver Surface. A superfcie Viewer

Aps a abertura da superfcie Viewer, voc v uma curva que tridimensional representa o mapeamento de alimentos e servio de qualidade a ponta montante. Porque esta curva representa um dois-um input-output caso, voc pode ver todo o mapeamento em uma parcela. Quando nos deslocamos para alm de trs imenses globais, estamos comeam a enfrentar problemas para exibir os resultados. Assim, a superfcie Viewer est equipado com menus pop-up que lhe permitem seleccionar qualquer duas entradas e uma sada para qualquer plotagem. Basta seguir as janelas pop-up menus so dois campos de entrada texto que lhe permitem

determinar quantos x-eixo e y-eixo linhas da grelha que deseja incluir. Esta capacidade permite-lhe manter a clculo tempo razovel para problemas complexos. Clicar no Avaliar boto inicia o clculo, e o enredo trata-se logo aps o clculo completa. Para mudar o eixo-x ou y-eixo grid aps a superfcie tendo em vista, basta mudar o texto adequado campo e clique em uma das grades ou X - Y-redes, de acordo com o texto que voc mudou campo, a reelaborar o enredo. A superfcie Viewer tem uma capacidade especial que muito til em casos em duas (ou mais) entradas e uma sada: voc pode realmente agarrar os eixos e reposicionar-los para obter uma diferente viso tridimensional sobre os dados. O Ref. Entrada de campo utilizado nas situaes em que h mais insumos necessrios ao o sistema do que a superfcie de mapeamento.

Suponha que voc tenha um mandato de quatro input-output um sistema, e gostaria de ver o superfcie de sada. A superfcie Viewer pode gerar uma sada tridimensional superfcie onde nenhum dos dois insumos variam, mas dois dos factores de produo deve ser realizada constante porque os monitores no pode exibir um cinco-dimensional forma. Em tal caso, a entrada um quatro-dimensional vector com a explorao NANS substituio de insumos, enquanto os variados valores numricos indica que esses valores permanecem fixos. Um NaN IEEE a sigla para no um nmero.

Isto conclui o passeio rpido-atravs de cada uma das principais ferramentas GUI. Para o basculamento problema, a sada do sistema fuzzy corresponde sua ideia original de a forma do servio de mapeamento fuzzy a ponta de maneira bastante satisfatria. Em retrospectiva,voc pode dizer, "Por que se preocupar? Eu poderia ter apenas uma leitura rpida tabela e foi feito de uma hora atrs! "No entanto, se voc est interessado em resolver um toda classe de problemas semelhantes de tomada de deciso, a lgica difusa pode prestar um instrumento adequado para a soluo, dada a sua facilidade com que um sistema possaser modificados rapidamente.

Importar e Exportar a partir de ferramentas GUI Quando voc salva um sistema fuzzy para um arquivo, voc est salvando um arquivo texto ASCII FIS representao de que o sistema de arquivo com sufixo. Fis.

Este arquivo texto pode ser editado e modificado e simples de entender. Quando voc salvar o seu fuzzy MATLAB para o sistema de trabalho, voc est criando uma varivel (cujo nome voc escolhe) que actua como um MATLAB estrutura para o sistema FIS. FIS arquivos FIS e estruturas representam o mesmo sistema.

Observao: Se voc no salvar as suas FIS para um arquivo, mas apenas guardlo para o MATLAB de trabalho, voc no so capazes de recuper-lo para utilizao em uma nova sesso MATLAB. Personalizando seu sistema fuzzy Se voc quiser incluir funes personalizadas como parte de seu uso de Lgica Fuzzy Toolbox, voc deve seguir algumas orientaes. Voc pode substituir personalizada funes para o AND, OR, agregao, e defuzzification mtodos, desde suas funes personalizadas trabalho de uma forma semelhante ao max, min, ou em prod MATLAB. Ou seja, ser capaz de operar theymust estabelece as colunas de uma matriz.

Em MATLAB, para uma matriz x, min (x) retorna uma linha contendo o vetor mnimo elemento de cada coluna. Para arrays N-D, min (x) opera juntamente o primeiro noSingleton dimenso. A funo min (x, y), por outro mo, retorna um array do mesmo tamanho que x e y povoado com o menor elementos de x ou y. Ou um pode ser um escalar. Funes como Max, prod, e significa funcionar de forma semelhante.Em Fuzzy Logic Toolbox, implicitamente o mtodo executa um elemento por elemento matriz operao, semelhante da min (x, y) em funo MATLAB, como em a = [1 2; 3 4]; b = [2 2; 2 2]; min (a, b) ans = 1 2 2 2 Depois de ter definido o seu costume funo utilizando o procedimento descrito no a prxima seo, utilize o FIS Editor para substituir o seu costume funo de um norma funo utilizando o seguinte procedimento:

1 Abra o FIS Editor, digitando fuzzy no prompt de linha de comando. 2 No painel inferior esquerdo, localize o mtodo que pretende substituir. 3 No menu suspenso, selecione Custom. Uma caixa de dilogo aparecer. 4 Digite o nome do seu costume funo, e clique em OK.

Sua funo personalizado depois norma substitui a funo em todas as posteriores operaes. Custom adeso funes Voc pode criar sua prpria adeso funes usando um M-file. Os valores pode assumir essas funes devem estar entre 0 e 1. No existe uma limitao no filiao funes personalizadas, na medida em parmetros. Para definir uma funo chamada personalizado adeso custmf: 1 M-Criar um arquivo para uma funo, custmf.m, que assume valores entre 0 e 1, e depende de 16 parmetros, no mximo. 2 Selecione o item Adicionar Custom MF no menu Editar sobre o Membership Funo editor GUI. 3 Digite a sua funo custommembership M-file name, custmf, no M-file Funo nome caixa de texto. 4 Digite os parmetros de vectoriais que pretende utilizar para o seu parameterize customizado adeso funo na caixa de texto ao lado Parmetro lista. 5 D o costume adeso funo um nome diferente de qualquer outro filiao funo nome que voc usa no seu FIS. 6 Clique em OK. A seguinte amostra de um cdigo personalizado adeso funo, testmf1, depende de oito parmetros entre 0 e 10. testmf1 funo out = (x, parm) para i = 1: length (x) se x (i) <parm (1) y (i) = parm (1); elseif x (i) <parm (2) y (i) = parm (2); elseif x (i) <parm (3) y (i) = parm (3); elseif x (i) <parm (4) y (i) = parm (4); elseif x (i) <parm (5) y (i) = parm (5); elseif x (i) <parm (6) y (i) = parm (6); elseif x (i) <parm (7) y (i) = parm (7); elseif x (i) <parm (8) y (i) = parm (8);

diferente y (i) = 0; fim fim out =. 1 * y '; Voc pode tentar nomear esse arquivo testmf1.m e carregando-a na Composio Funo Editor utilizando os parmetros da sua escolha. Trabalhando a partir da Command Line "O Problema Tipping a partir da Linha de Comandos" na pgina 2-54 "Mostrar Funes de Sistema" na pgina 2-57 "Construindo um Sistema a partir do zero" na pgina 2-60 "Avaliao FIS" na pgina 2-63 "A FIS Estrutura" na pgina 2-63 O problema a partir do depsito da linha de comando O sistema de depsito um dos muitos exemplos de sistemas de inferncia fuzzy desde a Lgica Fuzzy Toolbox. A FIS est sempre expressos como uma MATLAB estrutura. Para carregar este sistema (em vez de se preocupar com a criao de scratch), tipo readfis a = ('tipper.fis') MATLAB responde coma = Nome: "basculantes" tipo: "mamdani 'andMethod: 'min' orMethod: "Max" defuzzMethod: centride"impMethod: 'min' aggMethod: "Max" input: [1x2 struct] output: [1x1 struct] Estado: [1x3 struct] Os rtulos esquerda desta lista representam os diferentes componentes daMATLAB estrutura associada com tipper.fis. Voc pode acessar as diversas componentes desta estrutura, digitando o nome componente depois de digitar a.

No MATLAB linha de comando, digite a.typepor exemplo. MATLAB ir responder com ans = mamdani A funo getfis (a) retorna praticamente a mesma estrutura de digitar uma informao que, por si s faz. getfis (a) retorna Nome = basculantes Tipo = mamdani NumInputs = 2

InLabels =servio alimento NumOutputs = 1 OutLabels = dica NumRules = 3 AndMethod min = OrMethod = Max ImpMethod min = AggMethod = max

DefuzzMethod = centride Alguns desses campos no so parte da estrutura, a. Assim, voc no pode obter Informaes escrevendo a.Inlabels, mas voc pode obt-lo, digitando getfis (a, 'Inlabels') Da mesma forma, voc pode obter informaes atravs getfis estrutura desta forma. getfis (a, 'input', 1) getfis (a, 'output', 1) getfis (a, 'input', 1, 'mf', 1)

A sintaxe structure.field tambm gera essa informao. Para obter mais informaes sobre a sintaxe para MATLAB estruturas celulares e arrays, veja a MATLAB documentao.

Por exemplo, digite a.input ou a.input (1). mf (1)

A funo vagamente getfis modelado em funo do Handle Graphics obter. A funo setfis actua como a reciprocidade de getfis. Ela permite que voc qualquer mudana de propriedade de uma FIS. Por exemplo, se voc quiser mudar o Nome do referido sistema, voc pode digitar setfis a = (a, 'Nome', 'gratificao'); No entanto, porque j uma MATLAB uma estrutura, voc pode definir este Informaes mais simplesmente, digitandoa.name = 'gratificao';Agora, a FIS uma estrutura foi alterada para refletir o novo nome. Se vocqueremos um pouco mais de viso sobre esta estrutura FIS, tente showfis (a) Esta sintaxe retorna a impresso que rena todas as informaes sobre a.

Este funo destinada para depurao mais do que qualquer outra coisa, mas mostra todas asas informaes registadas na estrutura FIS Devido ao facto de a varivel, um, designa o basculamento fuzzy sistema, voc pode exibir qualquer das GUIs para o sistema de depsito diretamente a partir da linha de comando. Qualquer um de as seguintes funes ir exibir o sistema de depsito com o associado GUI: fuzzy (a) exibe o FIS Editor. mfedit (a) exibe a Funo Scio Editor. ruleedit (a) exibe a Regra Editor. ruleview (a) exibe a Regra Viewer. surfview (a) mostra a superfcie Viewer.

Se, alm disso, um um tipo Sugeno-FIS e, em seguida, anfisedit (a) exibe o ANFIS GUI. Quando qualquer um destes GUIs aberta, voc pode acessar qualquer uma das outras GUIs utilizando no menu suspenso, em vez da linha de comando. Sistema de exibio funes Existem trs funes destinadas a dar-lhe um alto nvel de sua opinio fuzzy inferncia do sistema a partir de linha de comando: plotfis, plotmf, e gensurf. A primeira destas exibe todo o sistema como um esquema muito, uma vez que pareceria com o FIS Editor.

Depois de fechar qualquer abertura MATLAB nmeros ou GUI janelas, a funo plotmf parcelas todas as funes associadas com a adeso a um determinado varivel da seguinte forma. plotmf (a, 'input', 1) retorna os seguintes parcelas.

plotmf(a,'output',1)

Essas parcelas aparecem na Funo Scio GUI, ou de forma aberta MATLAB figura, se plotmf chamada ao mesmo tempo uma dessas opes aberta. Por ltimo, a funo gensurf parcelas qualquer uma ou duas entradas versus qualquer um sada de um determinado sistema. O resultado tanto uma curva bidimensional, ou uma tridimensional de superfcie. Quando h trs ou mais factores de produo, gensurf

devem ser gerados com todos, mas duas entradas fixas, como descrito no gensurf. gensurf (a)

Construir um sistema do 'nada' possvel utilizar Lgica Fuzzy Toolbox sem incomodar com as ferramentas GUI em tudo. Por exemplo, para construir o sistema de depsito inteiramente a partir do comando line, voc usar os comandos newfis, addvar, addmf, e addrule. Provavelmente a parte mais difcil deste processo que a aprendizagem da abreviao inferncia fuzzy a utilizar para a construo de sistemas de regras. Use a linha de comando funo, addrule para fazer isso.

Cada varivel de entrada, sada ou, tem um nmero ndice, e cada membrofuno tem um nmero ndice. As regras so construdas a partir de tais afirmaes como os seguintes: Se INPUT1 MF1 ou INPUT2 MF3 e, em seguida, Output1 MF2 (peso = 0,5) Esta regra transformado em uma estrutura de acordo com a seguinte lgica. Se houver so insumos para um sistema de m e n sadas e, em seguida, as primeiras entradas do vector m Estado correspondem a estrutura atravs de entradas 1 m. A entrada na coluna 1 o nmero de ndice para a adeso funo associada a entrada 1.

A entrada na coluna 2 o nmero de ndice para a adeso funo associada com o contributo 2, e assim por diante.

O prximo n colunas trabalhar da mesma forma para as sadas. Coluna m + n + 1 o peso associado a essa regra (geralmente 1) e coluna m + n + 2 especifica o conectivo utilizado (onde E = OR = 1 e 2). A estrutura associada com a regra acima indicada 1 3 2 0,5 2 Esta amostra apresenta um cdigo maneira voc pode construir todo o sistema de basculamento a linha de comando, utilizando a estrutura de sintaxe MATLAB.

a = newfis ( "basculantes"); a.input (1). nome = "servio"; a.input (1). intervalo = [0 10]; a.input (1). mf (1). nome = 'pobres'; a.input (1). mf (1). type = 'gaussmf'; a.input (1). mf (1). parm = [1,5 0]; a.input (1). mf (2). nome = 'bom'; a.input (1). mf (2). type = 'gaussmf'; a.input (1). mf (2). parm = [1,5 5]; a.input (1). mf (3). nome = "excelente"; a.input (1). mf (3). type = 'gaussmf'; a.input (1). mf (3). parm = [1,5 10]; a.input (2). nome = 'alimentos'; a.input (2). intervalo = [0 10]; a.input (2). mf (1). nome = 'rano'; a.input (2). mf (1). type = 'trapmf'; a.input (2). mf (1). parm = [-2 0 1 3]; a.input (2). mf (2). nome = "delicioso"; a.input (2). mf (2). type = 'trapmf'; a.input (2). mf (2). parm = [7 9 10 12]; a.output (1). nome = 'dica'; a.output (1). intervalo = [0 30]; a.output (1). mf (1). nome = 'baratos' a.output (1). mf (1). type = 'trimf';

a.output (1). mf (1). parm = [0 5 10]; a.output (1). mf (2). nome = "mdio";

A entrada na coluna 2 o nmero de ndice para a adeso funo associada com o contributo 2, e assim por diante.

O prximo n colunas trabalhar da mesma forma para as sadas. Coluna m + n + 1 o peso associado a essa regra (geralmente 1) ecoluna m + n + 2 especifica o conectivo utilizado (onde E = OR = 1 e 2).

a.output (1). mf (2). type = 'trimf'; a.output (1). mf (2). parm = [10 15 20]; a.output (1). mf (3). nome = 'generoso'; a.output (1). mf (3). type = 'trimf'; a.output (1). mf (3). parm = [20 25 30]; a.rule (1). antecedente = [1 1]; a.rule (1). conseqente = [1]; a.rule (1). peso = 1; a.rule (1). conexo = 2; a.rule (2). antecedente = [2 0]; a.rule (2). conseqente = [2]; a.rule (2). peso = 1; a.rule (2). conexo = 1; a.rule (3). antecedente = [3 2]; a.rule (3). conseqente = [3]; a.rule (3). peso = 1; a.rule (3). conexo = 2

Alternativamente, voc pode construir todo o sistema de basculamento do comando line utilizando Fuzzy Logic Toolbox comandos. Estes comandos esto no mktipper.m demo arquivo.

a = newfis ( "basculantes"); addvar a = (a, 'input', 'servio', [0 10]);

addmf a = (a, 'input', 1, 'pobres',' gaussmf ', [1,5 0]); addmf a = (a, 'input', 1, 'bom', 'gaussmf', [1,5 5]); addmf a = (a, 'input', 1, 'excelente', 'gaussmf', [1,5 10]); addvar a = (a, 'input', 'alimentar', [0 10]); addmf a = (a, 'input', 2, 'rano', 'trapmf', [-2 0 1 3]); addmf a = (a, 'input', 2, 'delicioso', 'trapmf', [7 9 10 12]); addvar a = (a, 'output', 'ponta', [0 30]); addmf a = (a, 'output', 1, 'barata', 'trimf', [0 5 10]);

addmf a = (a, 'output', 1, 'mdia', 'trimf', [10 15 20]); addmf a = (a, 'output', 1, 'generoso', 'trimf', [20 25 30]); ruleList = [... 1 1 1 1 2 2 0 2 1 1 3 2 3 1 2]; addrule a = (a, ruleList); Avaliao FIS Para avaliar a sada de um sistema fuzzy para uma dada entrada, use a funo evalfis. Por exemplo, o seguinte script avalia basculantes na entrada, [1 2]. a = readfis ( "basculantes");evalfis ([1 2], ans =5.5586. Esta funo tambm pode ser usado para diversos conjuntos de factores de produo, uma vezinput diferentes vetores so representados em diferentes partes da estrutura de entrada. evalfis ([3 5; 2 7], a) ans = 12.2184 7.7885

A estrutura FIS A estrutura a FIS MATLAB objeto que contm toda a inferncia fuzzy sistema de informao. Esta estrutura armazenada dentro de cada ferramenta GUI. Acessofunes tais como getfis e setfis tornar-se mais fcil analisar esta estrutura. Todas as informaes para um determinado sistema de inferncia fuzzy est contida na FIS estrutura, incluindo a varivel nome, filiao funo definies, e assim por diante. Esta estrutura em si pode ser pensado como uma hierarquia de estruturas, como mostrado no diagrama seguinte.

Voc pode gerar uma lista de informaes sobre o FIS utilizando o showfis comando, como mostra o seguinte cdigo amostra: showfis (a) 1. Nome basculantes 2. Tipo mamdani 3. Entradas / Sadas [2 1] 4. NumInputMFs [3 2] 5. NumOutputMFs 3 6. NumRules 3 7. AndMethod min 8. Max OrMethod 9. ImpMethod min 10. Max AggMethod 11. DefuzzMethod centride 12. InLabels servio 13. Alimento 14. OutLabels ponta 15. InRange [0 10] 16. [0 10] 17. OutRange [0 30] 18. InMFLabels pobres 19. bom 20. excelente 21. rano 22. deliciosa 23. OutMFLabels barato 24. mdia 25. generosa

26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 42. 43. 44. 42. 43. 44. 42. 43. 44.

InMFTypes gaussmf gaussmf gaussmf trapmf trapmf OutMFTypes trimf trimf trimf InMFParams [1,5 0 0 0] [1,5 5 0 0] [1,5 10 0 0] [0 0 1 3] [7 9 10 10] OutMFParams [0 5 10 0] [10 15 20 0] [20 25 30 0] Regra Antecedentes [1 1] [2 0] [3 2] Regra 1 Consequncia 2 3 Regra 1 de Peso 1 1 Regra 2 Connection 1 2

A lista de linha de comando funes associadas a construo inclui FIS getfis, setfis, showfis, addvar, addmf, addrule, rmvar, e rmmf.

Como salvar arquivos FIS Um formato de arquivo texto especializado utilizado para a poupana de sistemas de inferncia fuzzy. O readfis e writefis funes so utilizadas para leitura e escrita destes arquivos. Se preferir, voc pode modificar a sua edio pelo FIS. Fis arquivo texto em vez de usar qualquer uma das GUIs. Voc deve estar ciente, no entanto, que uma mudana entrada voc pode obrigar a mudar outra. Por exemplo, se voc excluir um membro funo utilizando este mtodo, voc tambm precisa de fazer certas regras que qualquer exigindo esta funo adeso tambm so apagados.

As regras aparecem na indexados em um formato. Fis arquivo de texto. A seguinte amostra mostra o arquivo tipper.fis. [Sistema] Nome = "basculantes" Tipo = 'mamdani' NumInputs = 2 NumOutputs = 1 NumRules = 3 AndMethod = 'min' OrMethod = "Max" ImpMethod = 'min' AggMethod = "Max" DefuzzMethod = "centride" [Entrada1] Nome = "servio" Intervalo = [0 10] NumMFs = 3 MF1 = 'pobres':' gaussmf ', [1,5 0] MF2 = 'boas':' gaussmf ', [1,5 5] MF3 = 'excelente': 'gaussmf', [1,5 10]
[INPUT2]

Nome = 'alimentos' Intervalo = [0 10] NumMFs = 2 MF1 = 'rano': 'trapmf', [0 0 1 3] MF2 = 'delicioso': 'trapmf', [7 9 10 10] [Output1] Nome = 'dica' Intervalo = [0 30] NumMFs = 3 MF1 = 'barata': 'trimf', [0 5 10] MF2 = 'mdia': 'trimf', [10 15 20] MF3 = 'generoso': 'trimf', [20 25 30] [Regimento] 1 1, 1 (1): 2 2 0, 2 (1): 1 3 2, 3 (1): 2 Trabalhando com Simulink Lgica Fuzzy Toolbox projetado para trabalhar com o Simulink, a simulao O software disponvel a partir de MathWorks. Depois de ter criado a sua fuzzy utilizando o sistema de ferramentas GUI ou de qualquer outro mtodo, voc est pronto para embutir seu sistema diretamente em

uma simulao. "Um exemplo: Nvel da gua Control" na pgina 2-68 "Construindo sua prpria Fuzzy Models Simulink" na pgina 2-75 Um exemplo: nvel da gua controle Imagine um tanque com um tubo de escoamento em uma tubulao e sai. Voc pode mudar a vlvula que controla o fluxo de gua, mas a sada depende da taxa o dimetro do tubo sada (o que constante) e da presso no interior do cisterna (que varia com o nvel da gua). O sistema tem alguns muito no lineares caractersticas.

Um controlador para o nvel de gua no tanque de conhecer as necessidades actuais da gua nvel e que precisa de ser capaz de definir a vlvula. Sua entrada do controlador a Erro nvel da gua (menos gua desejada nvel real nvel da gua), ea sua sada a taxa em que a vlvula abrir ou fechar. A primeira a passar por escrito uma fuzzy controlador para esse sistema poderia ser a seguinte: 1. Se (nvel est ok) e depois (vlvula no_change) (1) 2. 2. Se (nvel baixo) e depois (vlvula open_fast) (1) 3. 3. Se (nvel alto) e depois (vlvula close_fast) (1) Uma das grandes vantagens da Lgica Fuzzy Toolbox a capacidade de tomar fuzzy sistemas diretamente em Simulink e test-los para fora em uma simulao de ambiente. Um esquema Simulink para este sistema mostrado na figura a seguir. Ele contm um bloco chamado o Simulink

Fuzzy Logic Controller bloco. O Simulink esquema para este sistema sltank. Digitando sltank na linha de comandos, faz com que o sistema a aparecer. Ao mesmo tempo, o arquivo tank.fis carregado na estrutura da FIS tanque. Algumas experincias mostram que trs regras no so suficientes, porque o nvel da gua tende a oscilar em torno do nvel desejado. Veja o seguinte grfico:

Voc precisa adicionar outra entrada, o nvel de gua da taxa de variao, a abrandar a vlvula movimento quando fica perto do nvel correto. 4. Se (nvel bom) e (taxa negativo) e, em seguida, (vlvula close_slow) (1) 5. Se (nvel bom) e (taxa positiva) e, em seguida, (vlvula open_slow)(1) A demo, sltank construdo com essas cinco regras. Com todas as regras em cinco operaes, voc pode analisar a resposta ao passo que simulam este sistema. Voc fazer isso clicando em Iniciar a partir do menu suspenso sob Simular, e Comparao de clicar no bloco. O resultado semelhante ao seguinte parcela.

Uma caracterstica interessante do sistema que a caixa d'gua do reservatrio esvazia muito mais lentamente do que se enche por causa do valor especfico do xodo dimetro pipe. Voc pode lidar com isso a fixao da vlvula close_slow filiao funo a ser ligeiramente diferente do open_slow configurao. Um controlador PID no tm esta capacidade. A vlvula comando versus alterar o nvel de gua (taxa de retratada como a gua) e do nvel relativo de gua mudana (retratado como nvel) superfcie parece com isso. Se voc olhar de perto, voc pode veja uma ligeira assimetria para o enredo.

Porque

ambiente (como

computacional Control

MATLAB Toolbox,

tcnico Neural

suporta Network

tantosferramentas

System

Toolbox, e assim por diante), voc pode, por exemplo, facilmente, fazer

uma comparao de um controlador fuzzy versus uma linear controlador ou um controlador de rede neural. Para uma demonstrao de como a Regra Viewer pode ser usado para interagir com um Fuzzy Logic Controller em um bloco Simulink modelo, tipo sltankrule Este demo contm um bloco chamado a Fuzzy Controller

No artigo Viewer bloco. Neste demo, o artigo Viewer abre quando voc iniciar a simulao Simulink. Este artigo prev Viewer uma animao da forma como as regras so disparadas durantea caixa d'gua simulao. As janelas que se abrem quando voc simular o sltankrule demo so representadas da seguinte forma.

O artigo que abre Viewer durante a simulao pode ser usado para acessar oComposio Funo Editor, o artigo Editor, ou a qualquer dos outros GUIs, (veja "A Funo Scio Editor" na pgina 2-38, ou "A Regra Editor" na pgina 2-43, para mais informaes). Por exemplo, voc pode querer abrir o editor para mudar uma regra do seu regras. Para fazer isso, selecione Regimento, no menu Editar do artigo aberta Viewer. Agora, voc pode ver ou modificar as regras para este modelo Simulink.

Se voc parar a simulao antes de selecionar qualquer destes editores, voc deve alterar o seu FIS. Lembre-se de salvar qualquer mudana que voc faa a sua FIS para a trabalho antes de reiniciar a simulao.

Construindo sua prpria Fuzzy Simulink modelos Para construir seu prprio Simulink sistemas que utilizam a lgica difusa, basta copiar o Fuzzy Logic Controller bloco fora de sltank (ou a qualquer dos outros Simulink demo sistemas disponveis com o toolbox) e coloc-la em seu prprio esquema. Voc tambm pode encontrar a Fuzzy Logic Controller bloco na Lgica Fuzzy Toolbox biblioteca, que pode ser aberto, quer atravs da seleo de Lgica Fuzzy Toolbox no Simulink Library Browser, ou escrevendo fuzblock no MATLAB prompt. A seguir aparece biblioteca.

A Lgica Fuzzy Toolbox contm a biblioteca Fuzzy Logic Controller e Fuzzy Logic Controller com o artigo Viewer blocos. Inclui tambm uma Composio Funes sublibrary que contm blocos para o Simulink construiu-adeso em funes. A Fuzzy Logic Controller com o artigo Viewer bloco uma extenso do Fuzzy Logic Controller bloco. Ela permite que voc visualize o modo como as regras so disparadas durante a simulao. Clicar com o boto direito do Controlador Fuzzy No artigo Viewer bloco, e selecione Olhe sob mscara, e aparece a seguinte janela.

Para inicializar a Fuzzy Logic Controller blocos (com ou sem a Regra Viewer), clique duas vezes sobre o bloco e digite o nome da varivel estrutura descrevendo sua FIS. Esta varivel deve ser localizada no MATLAB workspace. Sobre a Fuzzy Logic Controller bloco Para a maioria dos sistemas de inferncia fuzzy, o Fuzzy Logic Controller bloco

hierrquico gera automaticamente uma representao do seu esquema FIS. Esta habilidade gerao automtica modelo chamado de Fuzzy Wizard. O esquema representao apenas utiliza-construda em blocos e Simulink, por conseguinte, permite uma eficiente na gerao de cdigos. Para obter mais informaes sobre o Fuzzy Logic Controller bloqueio, consulte a pgina fuzblock referncia. A Fuzzy Assistente no pode lidar com FIS personalizado filiao ou funes com AND, OR, IMP, funes e fora de AGG da seguinte lista: orMethod:Max

andMethod:min,prod impMethod:min,prod aggMethod:Max Nestes casos, o Fuzzy Logic Controller utiliza o bloco S-a funo sffis simular o FIS. Para mais informaes, consulte a pgina sffis referncia. Exemplo: Carrinho Plo e Simulao A carroa eo plo simulao um exemplo de um modelo de auto-gerada FIS Fuzzy Logic Controller pelo bloco. Tipo slcp no MATLAB prompt para abrir a simulao. Este modelo aparece.

Clicar com o boto direito do Fuzzy Logic Controller bloco, e selecione Olhe sob mscara Clique com o boto direito do menu. A seguir abre subsistema.

Siga o mesmo procedimento para olhar sob a mscara da FIS Assistente subsistema de ver a implementao do seu FIS. Esta figura seguinte mostra parte da execuo (o conjunto do modelo demasiado grande para mostrar em este documento).

Tal como mostra a figura, o Fuzzy Logic Controller bloco utiliza-construdo em Simulink blocos para implementar o seu FIS. Embora os modelos podem crescer complexos, esta representao mais adequado do que o S-sffis funo de garantir a eficincia cdigo gerao. Tipo Sugeno Fuzzy Inferncia "O que Sugeno-Fuzzy Tipo A interferncia?" Na pgina 2-80 "Um exemplo: duas linhas" na pgina 2-83 "Comparao de Sugeno e Mamdani Mtodos" na pgina 2-85

O que Sugeno-Fuzzy Tipo A interferncia? A inferncia fuzzy processo discutido at agora inferncia Mamdani's fuzzy mtodo, o mtodo mais comum. Esta seo discute o chamado Sugeno, ou Takagi-Sugeno-Kang, o mtodo de inferncia fuzzy.

Introduzido em 1985 [16], semelhante ao mtodo Mamdani, em muitos aspectos. Os dois primeiros inferncia fuzzy partes do processo, fuzzifying os fatores de produo e aplicao do fuzzy operador, so exatamente os mesmos. A principal diferena entre Mamdani e Sugeno que as funes so pertena Sugeno sada quer linear ou constante. Uma regra tpica em um modelo Sugeno fuzzy tem a forma Se Input 1 = x e 2 = y Input e, em seguida, de sada z = ax + a + c Para um modelo zero-Sugeno fim, o nvel de sada z uma constante (a = b = 0). Zi o nvel de sada de cada regra ponderada a tiros por fora do Wi regra. Por exemplo, para um Estado com Input E = 1 x = y e Input 2, o cozedura a fora Wi AndMethod = (F1 (x), F2 (y)) onde F1, 2 (.) so as funes de membro Entradas 1 e 2. O final sada do sistema a mdia ponderada de todas as sadas regras, computado como

Um Sugeno regra funciona como mostrado no diagrama seguinte.

A figura anterior mostra o basculamento fuzzy modelo desenvolvido na anterior sees deste manual adaptado para uso como um sistema Sugeno. Felizmente, frequentemente o caso que Singleton funes de sada so totalmente suficientes para as necessidades de um determinado problema. Como exemplo, o sistema tippersg. Sugeno-o tipo de representao-o agora familiar basculamento modelo. e voc carregar o sistema e seu enredo superfcie de sada, voc vai ver que quase o mesmo Mamdani como o sistema voc tem visto anteriormente. readfis a = ( 'tippersg'); gensurf (a)

A maneira mais fcil de visualizar Sugeno sistemas de primeira ordem a de pensar de cada Estado como a definio da localizao de um movimento Singleton. Ou seja, o Singleton sada espculas podem movimentar-se de forma linear, no espao de sada, dependendo sobre o que a entrada . Isto tambm tende a tornar o sistema de notao muito compacta e eficiente. Nvel de ordem Sugeno fuzzy modelos so possveis, mas que introduzem significativas com pouca complexidade evidente mrito. Sugeno fuzzy modelos cujas funes so pertena de sada superior a primeira ordem so no suportado pelo Fuzzy Logic Toolbox.

Devido dependncia linear de cada Estado sobre as variveis de entrada, o Sugeno mtodo ideal para agir como uma interpolao supervisor de mltiplos linear controladores que esto a ser aplicadas, respectivamente, aos operacionais diferentes condies de um sistema dinmico no linear. Por exemplo, o desempenho de uma aeronave pode alterar drasticamente a altitude eo nmero Mach. Linear controladores, embora fcil de calcular e bem adaptada a qualquer dado voo condio, deve ser actualizado regularmente e sem problemas para manter o contato com mudando o estado do veculo vo. Um sistema inferncia fuzzy Sugeno extremamente bem adaptado tarefa de suavemente a interpolao linear ganhos que seria aplicado em todo o espao de entrada, este um natural e eficiente ganho programador.

Do mesmo modo, um Sugeno sistema adequado para modelar no lineares Sistemas por interpolao linear entre os vrios modelos. Um exemplo: duas linhas para ver um exemplo especfico de um sistema linear com a adeso de sada funes, analisar a uma entrada de um sistema de sada armazenada em sugeno1.fis. fismat = readfis ( 'sugeno1'); getfis (fismat, 'output', 1) Nome = output NumMFs = 2

MFLabels = linha1 linha2 Intervalo = [0 1]

A sada varivel tem duas funes adeso. getfis (fismat, 'output', 1, 'mf', 1) Nome = linha1 Tipo = linear Params = -1 -1 getfis (fismat, 'output', 1, 'mf', 2) Nome = linha2 Tipo = linear Params = 1 -1

Alm disso, essas funes so pertena linear funes do input varivel. A adeso linha1 funo definida pela equao output = (-1) * input + (-1) A filiao linha2 funo definida pela equao output = (-1) input + (1) A entrada adeso funes e regras que definem um destes sada funes so expressas e quando: showrule (fismat) ans = baixo) e depois (sada linha1) (1) 1. Se (entrada

2. Se (entrada alta) e depois (sada

linha2) (1) A funo plotmf mostra-nos que a adeso funo geralmente baixa refere-se a entrada valores inferiores a zero, ao mesmo tempo que remete para valores mais elevados que zero. A funo gensurf mostra como o sistema de produo global fuzzy interruptores sem problemas a partir da chamada linha linha1 para a linha chamada linha2. subparcela (2,1,1), plotmf (fismat, 'input', 1) subparcela (2,1,2), gensurf (fismat)

Como este exemplo mostra, Sugeno-tipo sistema d-lhe a liberdade de incorporar sistemas lineares em seus sistemas difusos. Por extenso, voc poderia construir um sistema fuzzy que alterna entre vrios controladores linear ptima como um sistema altamente no linear movimentos em torno da sua explorao espacial.

Comparao de Sugeno e Mtodos Mamdani Porque se trata de uma forma mais compacta e eficiente representao computacional Mamdani do que um sistema, o sistema Sugeno se presta utilizao de adaptativo tcnicas para a construo de modelos fuzzy. Estas tcnicas podem ser adaptvel usado para personalizar as funes de modo a que pertena o melhor sistema fuzzy modelos de dados. Observao: Voc pode usar o MATLAB de linha de comando para converter uma funo mam2sug Mamdani sistema em um sistema Sugeno

(no necessariamente com uma nica sada) com sada constante adeso funes. Ele usa o centride associado com a sada de todas as funes de membro do sistema de Mamdani. Ver Captulo 4, "Funes - Lista Alfabtica" para mais detalhes.

A seguir esto algumas consideraes finais sobre os dois differentmethods.

Vantagens do Mtodo Sugeno computacionalmente eficiente. Ele funciona bem com tcnicas lineares (por exemplo, o controlo PID). Ele funciona bem com otimizao adaptativa e tcnicas. Tambm assegurou a continuidade da superfcie de sada. bem adaptada anlise matemtica. Vantagens do Mtodo Mamdani intuitivo. Tem ampla aceitao. bem adaptada s humanos entrada.

ANFIS e do ANFIS GUI

A estrutura bsica do tipo de inferncia fuzzy sistema que temos visto, assim, longe um modelo que mapas input caractersticas de entrada adeso funes, input funo adeso s regras, normas para um conjunto de caractersticas de sada, caractersticas de sada para sada adeso funes, e na sada pertena a uma funo nica de produo ou valorizados de uma deciso associada com a sada. Voc tem apenas considerados fixos adeso funes que eram escolhidas arbitrariamente. Voc tem aplicado apenas a inferncia fuzzy modelagem Sistemas regra cuja estrutura essencialmente determinada pela interpretao do usurio das caractersticas das variveis no modelo.

Nesta seo iremos abordar o uso da funo anfis e do ANFIS Editor GUI em Lgica Fuzzy Toolbox. Estas ferramentas tcnicas para aplicar inferncia fuzzy modelagem de dados. Como voc tem visto a partir da outra inferncia fuzzy GUIs, a forma da adeso funes depende de parmetros, e alterando estes parmetros mudar a forma da adeso funo. Em vez de basta olhar para os dados de escolher a filiao funo parmetros, voc escolher adeso funcionar automaticamente usando estes parmetros Fuzzy Logic Toolbox aplicaes. As sees seguintes descrevem anfis e do ANFIS GUI: "A Modeling Cenrio" na pgina 2-87 "Modelo de Aprendizagem e Inferncia Atravs ANFIS" na pgina 2-87 "Conhea o Seu Dados" na pgina 2-88 "Constrangimentos de anfis" na pgina 2-89 "O ANFIS GUI" na pgina 2-90 "ANFIS GUI Exemplo 1: Verificando dados ajudam Model Validation" na pgina 2-93 "ANFIS GUI Exemplo 2: Verificando dados no Validar Modelo" na pgina 2-102 "anfis a partir da Linha de Comandos" na pgina 2-105 "Mais sobre anfis e do ANFIS GUI" na pgina 2-112

A modelagem cenrio Suponha que voc deseja aplicar um sistema de inferncia fuzzy para as quais voc j tem uma coleo de entrada / sada de dados que voc gostaria de usar para modelar, modelo seguinte, ou seja, cerca cenrio semelhante,voc no tm necessariamente um predeterminado modelo de estrutura baseada em caractersticas de variveis na sua sistema.

Em algumas situaes de modelagem, no possvel discernir o que a filiao funes deve ser semelhante a de simplesmente olhar para os dados. Em vez de escolher os parmetros associados a uma determinada funo adeso arbitrariamente, esses parmetros poderia ser escolhido de

forma a adequar a composio funes para a entrada / sada dados, a fim de conta, para estes tipos de variaes nos dados valores. Em tais casos, a neuro-aprendizagem tcnicas adaptativas incorporadas em anfis em Lgica Fuzzy Toolbox pode ajudar. Modelo de aprendizagem e de inferncia atravs ANFIS A neuro-aprendizagem adaptativas mtodo funciona de forma semelhante ao que neural redes. Neuro-adaptativo aprender tcnicas para prestar um mtodo para a fuzzy processo de modelagem para saber informaes sobre um conjunto de dados. Em seguida, lgica fuzzy Toolbox calcula a adeso funo parmetros que melhor permitam a fuzzy associados inferncia sistema para acompanhar o dado de entrada / sada de dados. O Lgica Fuzzy Toolbox funo que cumpra esta funo adeso parmetros ajustados chamado anfis. A funo pode ser acessada anfis quer a partir da linha de comando ou atravs do ANFIS GUI. Devido ao facto de a funcionalidade de linha de comando e da funo anfis GUI ANFIS semelhante, eles so usados indiferentemente um pouco nesta discusso, excepto quando especificamente com a descrio do Gui.

O que ANFIS? A sigla ANFIS seu nome vem adaptativa neuro-fuzzy inferncia sistema. Utilizando um dado de entrada / sada conjunto de dados, as ferramentas funo anfis constri um sistema de inferncia fuzzy (FIS), cuja funo adeso parmetros so sintonizado (ajustado) usando um algoritmo backpropagation isoladamente ou em combinao com um tipo de mtodo de mnimos quadrados. Este ajustamento fuzzy permite que seus sistemas de aprender com os dados que esto a modelagem.

FIS estrutura e parmetros ajustados Uma rede de tipo estrutura semelhante de uma rede neural, que mapeia insumos atravs de contributos adeso funes e parmetros associados,

e em seguida, atravs de sada filiao e funes associadas a parmetros de sadas, podem ser utilizadas para interpretar a entrada / sada mapa. Os parmetros associados com a adeso funes atravs de alteraes o processo de aprendizagem. O clculo destes parmetros (ou seus adaptao) facilitado pela existncia de um gradiente vetorial. Isso proporciona um vector gradiente medida de quo bem o sistema de inferncia fuzzy a modelagem da entrada / sada dados relativos a um determinado conjunto de parmetros. Quando o gradiente vetor obtido, de qualquer vrias rotinas de otimizao pode ser aplicado, a fim de ajustar os parmetros alguma medida para reduzir a erro. Esse erro normalmente medida definida pelo soma do quadrado da diferena entre os resultados reais e desejados. anfis utiliza quer voltar a propagao ou uma combinao dos mnimos quadrados e estimao backpropagation para a adeso funo parmetro estimao.

Conhea os seus dados A modelagem abordagem utilizada pelos anfis sistema semelhante a muitos identificao tcnicas. Primeiro, uma hiptese parametrizados modelo de estrutura (relacionados insumos para a adeso funes regras sadas para a adeso funes, e assim por diante). Em seguida, voc coleta de entrada / sada dados em um formulrio que ser utilizvel por anfis para a formao. Em seguida, voc pode usar anfis para treinar a FISmodel para emular a formao dados que lhe foram apresentados pelos modificando a composio funo parmetros de acordo com um critrio escolhido erro. Em geral, este tipo de modelagem funciona bem se os dados apresentados formao anfis para a formao (estimativa) filiao parmetros funo plenamente representativa das

caractersticas dos dados a que se destina a treinados FIS modelo. Em alguns casos, no entanto, os dados so coletados utilizando ruidoso medies, a formao e os dados podem no ser representativas de todas as caractersticas dos dados que ser apresentado ao modelo. Em tais situaes, modelo validao til.

Modelo utilizando testes de validao e de verificao conjuntos de dados Modelo de validao o processo pelo qual a entrada de vetores de entrada / sada conjuntos de dados sobre a qual o FIS no foi treinado, so apresentados ao formados FIS modelo, para ver quo bem o modelo prediz FIS os dados correspondentes definir valores de sada. Usando o ANFIS GUI, voc pode executar essa tarefa de duas formas: Atravs de um teste conjunto de dados Atravs de um controlo conjunto de dados

Um problema com o modelo validao de modelos construdos com adaptativa tcnicas est selecionando um conjunto de dados que simultaneamente o representante de dados modelo destina-se a treinados para emular, ainda suficientemente distinto do treinamento conjunto de dados de modo a no tornar o processo de validao trivial. Se voc tem colhido uma grande quantidade de dados, esperamos que este contm todos os dados o representante funcionalidades necessrias, de modo que o processo de seleo de um conjunto de dados fins de verificao ou ensaio feita mais fcil. No entanto, se voc espera de ser apresentando ruidoso medies para o seu modelo, possvel a formao dados modelo. Conjunto no inclui o representante de todos os recursos que voc deseja A idia bsica por trs usando um conjunto de dados para verificar se esse modelo validao depois de um certo ponto, no treinamento, o modelo comea a formao overfitting conjunto de dados. Em princpio, o modelo do erro para o controlo dos dados tende a definir diminuir como se realiza a formao at ao ponto que comea overfitting, e, em seguida, o modelo erro para o controlo dos dados aumenta repentinamente. No primeiro exemplo na seo a seguir, dois conjuntos de dados semelhantes so usados de controlo e de formao, mas o controlo conjunto de dados corrompido por um pequeno quantidade de rudo. Este exemplo ilustra da utilizao do ANFIS GUI com o controlo dos dados para reduzir o efeito do modelo overfitting. Na segunda exemplo, um

treinamento conjunto de dados que se apresenta suficientemente diferente para anfis do que o aplicado controlo conjunto de dados. Ao analisar a seqncia erro verificando durante o perodo de formao, evidente que o controlo conjunto de dados no bom para modelo validao fins. Este exemplo ilustra o uso do ANFIS GUI conjuntos de dados para comparar.

Condicionalismos de anfis anfis muito mais complexo do que os sistemas de inferncia fuzzy discutido at agora, e no est disponvel para todo o sistema de inferncia fuzzy opes.

Especificamente, anfis apenas suporta sistemas Sugeno-tipo, e estes devem ter as seguintes propriedades: Ser primeiro ou zeroth fim Sugeno-tipo sistemas. Ter uma nica sada, obtidos atravs de mdia ponderada

defuzzification. Todos filiao funes de sada deve ser o mesmo tipo e quer ser linear ou constante. Ter nenhuma regra partilha. Diferentes regras no podem compartilhar a mesma sada filiao funo, ou seja, o nmero de adeso funes de sada deve ser igual ao nmero de regras. J unidade peso de cada uma. Um erro ocorre se o seu FIS estrutura no est em conformidade com essas restries. Alm disso, anfis no pode aceitar todas as opes de personalizao que a base fuzzy inferncia permite. Ou seja, voc no pode fazer suas prprias funes adeso defuzzification e funes; voc deve usar as fornecidas.

O ANFIS editor GUI Para comear com o ANFIS GUI, tipo anfisedit A seguir aparece na tela GUI.

A partir desta GUI voc pode: Coloque os dados (formao, testes e verificao) atravs da seleco apropriada de rdio Coloque botes na poro de dados dos GUI, e em seguida clicar em carregar dados, os dados so carregados plotados sobre o enredo regio. Gerar um modelo inicial FIS FIS inicial ou carregar um modelo usando as opes Gerar FIS na poro da GUI Ver a FIS aps um modelo de estrutura inicial gerada FIS ou carregadas clicando no boto Estrutura Escolha o parmetro FIS modelo de otimizao mtodo:

backpropagation ou uma mistura de backpropagation e de mnimos quadrados (mtodo hbrido) Escolha o nmero das pocas da formao e da formao erro tolerncia Treinar a FIS modelo clicando no boto Agora Train Esta formao ajusta a adeso funo parmetros e as parcelas Dados formao erro parcelas, o controlo dos dados erro parcelas, ou de ambos, no enredo regio.

Ver a FIS modelo de sada versus a formao, controlo, ensaio ou dados sada clicando no boto Testar Agora esta funo parcelas do ensaio dados contra a FIS sada da parcela regio. Voc tambm pode usar o editor GUI ANFIS barra de menu para carregar uma formao FIS Inicializao, salve o seu treinados FIS, abrir um novo sistema ou abrir qualquer Sugeno do outro GUIs para interpretar o modelo treinado FIS.

Formalidades e os dados ANFIS GUI: Verificao e Treinamento Para iniciar uma formao FIS utilizando quer anfis ou o ANFIS GUI, em primeiro lugar voc precisa ter um treinamento conjunto de dados que contm desejada entrada / sada dados pares de sistema alvo a ser modelado. s vezes, voc tambm quiser ter o conjunto de dados teste facultativo que pode verificar a capacidade de generalizao fuzzy resultantes do sistema de inferncia, e / ou um controlo conjunto de dados que ajuda com o modelo overfitting durante o treinamento. A utilizao de um conjunto de dados e testes um controlo conjunto de dados para validao modelo so discutidos em "Modelo de Validao Usando ensaios e verificaes conjuntos de dados "na pgina 2-88.

Overfitting contabilizada por meio de testes para o FIS treinados dados sobre a formao contra o controlo dos dados,e escolhendo a adeso funo desses parmetros a serem associados com o mnimo erro verificando se estes erros indicar modelo overfitting. Examine sua formao erro parcelas bastante perto de determinao. Estes so discutidos os problemas mais tarde em um exemplo. Normalmente, esses formao e testes conjuntos de dados so recolhidos com base em observaes do sistema alvo e so armazenados em arquivos separados.

Nota Qualquer conjunto de dados que voc carregar na ANFIS GUI, (nem que seja aplicada para a funo de linha de comando anfis) deve ser uma

matriz com os dados de entrada dispostas como em todos os vectores, mas na ltima coluna. A sada de dados deve ser na ltima coluna.

ANFIS editor GUI Exemplo 1: controlo dos dados contribui Model Validation Nesta seco analisamos a um exemplo que carrega similares de formao e de controlo conjuntos de dados. O controlo dos dados fixado corrompido pelo rudo. Carregando dados Para o trabalho de ambos os exemplos a seguir, voc carregar os dados de formao define (fuzex1trnData e fuzex2trnData) e do controlo dos dados conjuntos (fuzex1chkData e fuzex2chkData), em ANFIS a partir da GUI trabalho. Voc tambm pode substituir o seu prprio conjunto de dados. Para carregar os conjuntos de dados a partir do trabalho na ANFIS GUI: Tipo 1

Carga fuzex1trnData.dat Carga fuzex2trnData.dat Carga fuzex1chkData.dat Carga fuzex2chkData.dat MATLAB na linha de comando para carregar estes conjuntos de dados a partir do diretrio as workspace em fuzzydemos MATLAB.

Observao Voc pode tambm querer carregar seus dados a partir do conjunto ou fuzzydemos qualquer outro diretrio utilizando o ANFIS GUI. 2 Abra o editor GUI ANFIS escrevendo anfisedit no MATLAB linha de comando. 3 Para carregar o treinamento conjunto de dados a partir do trabalho, selecione Tipo: Formao, De: worksp. Coloque na poro de dados dos ANFIS GUI. Ento, Dados clique no boto Abrir. A pequena janela que se abre GUI permite que voc digitar em uma varivel nome de rea de

trabalho. Tipo de fuzex1trnData como mostrado na seguinte figura, e clique em OK.

O treinamento dados aparecem no enredo, no centro da GUI como um conjunto de crculos.

O eixo horizontal marcada conjunto de dados de ndice. Isto indica que o ndice fila de entrada de dados que esse valor foi obtido (ou no a entrada um vetor ou um escalar). 4 Em seguida, selecione Verificar na coluna Tipo de Carga a poro de dados ANFIS o editor GUI para carregar fuzex1chkData a partir do trabalho. Ento, Dados clique no boto Abrir.

Tipo de fuzex1trnData como o nome da varivel e clique em OK. Estes dados aparecem no enredo como vantagens GUI sobreposta sobre a formao dados.

Este conjunto de dados utilizado para treinar um sistema fuzzy atravs do ajustamento do membro parmetros que melhor modelo funo desses dados. O prximo passo especificar um sistema de inferncia fuzzy inicial anfis para treinar.

Inicializando e gerar o seu FIS Voc pode inicializar a FIS parmetros para a sua prpria preferncia, ou se voc no tem qualquer preferncia pela forma como voc deseja que a adeso inicial funes a ser parametrizados, voc pode deixar anfis inicializar os parmetros para voc.

FIS estrutura gerao automtica com ANFIS Para inicializar seu FIS utilizando anfis: 1 Escolha Grid partio, o mtodo padro particionamento. As duas partio mtodos, grade

particionamento e subtractive clustering, so descritas em mais tarde

"Fuzzy C-Meios Aglomerao" na pgina 2-119, e em "Subtractive Aglomerao" na pgina 2-122. 2 Clique no boto Gerar FIS. Ao clicar neste boto exibe um menu a partir do qual voc pode escolher o nmero de inscrio funes, MFS, e o tipo de entrada e sada adeso funes. Existem apenas dois opes de sada para a adeso funo: constante e linear. Este limitao da produo adeso funo escolhas, porque s anfis opera em Sugeno tipo de sistemas. 3 Preencha as entradas como mostrado na figura a seguir, e clique em OK.

Voc tambm pode aplicar esta FIS gerao a partir da linha de comando utilizando genfis1 o comando (para a grelha particionamento) ou genfis2 (para subtractive clustering).

Especificando a sua prpria inscrio funes para ANFIS Voc pode escolher o seu prprio preferiu adeso com funes especficas parmetros a serem utilizados pelos anfis como uma formao inicial para a FIS.

Para definir a sua prpria estrutura e FIS parmetros: 1 Abra o item do menu Composio funes a partir do menu Editar. 2 Adicionar sua filiao funes desejadas (o costume adeso opo ser desativada para anfis). A sada deve ou filiao funes ser constante ou todos os todos os linear. Para a realizao desta etapa e os seguintes, ver "A FIS Editor" na pgina 2-34 e "A Funo Scio Editor" na pgina 2-38. 3 Selecione o item do menu no Regimento do menu Editar, e usar a regra para Editor gerar as regras (ver "O artigo Editor" na pgina 2-43). 4 Selecione o item do menu FIS Propriedades no menu Editar. Seu nome FIS, e salv-lo, quer para o trabalho ou para arquivo. 5 Clique no boto Fechar para voltar ANFIS editor GUI para treinar a FIS. 6 Para carregar um j existente para a FIS ANFIS inicializao, no Gerar FIS poro da GUI, clique em Abrir a partir de worksp. Carga ou de arquivo. Voc carga seu FIS a partir de um arquivo se tiver guardado uma FIS anteriormente que gostaria para o uso. Caso contrrio voc carregar seu trabalho a partir da FIS.

Vendo sua estrutura FIS Depois de gerar o FIS, voc pode visualizar o modelo de estrutura, clicando no Estrutura no meio do boto do lado direito da GUI. Uma nova interface grfica Parece, como se segue.

As sucursais neste grfico so codificados para indicar a cor ou no, e, no, ou nem so usados nas regras. Clicando sobre os nodos indica informao sobre a estrutura. Voc pode ver a adeso funes ou as regras, quer atravs da abertura do Composio Funo Editor, ou a Regra Editor no menu Editar.

ANFIS Formao
Os dois anfis parmetro otimizao mtodo opes disponveis para FIS formao so hbrido (o padro, misturado mnimos quadrados e

backpropagation) e backpropa (backpropagation). Tolerncia de erro usado para criar uma formao paragem critrio, que est relacionado com o tamanho erro. A formao ir parar depois do treinamento dados erro permanece dentro desta tolerncia. Isto prefervel deixar definido como 0 se voc tem dvida sobre a sua formao erro pode comportar. Para iniciar o treinamento: Deixe o mtodo 1 a otimizao hbrida. 2 Defina o nmero de pocas de formao para 40, sob a listagem com os pocas GUI (o valor padro 3). 3 Selecione Train agora.

A seguinte janela aparece na tela.

A verificao erro diminui at um certo ponto no mbito da formao e, em seguida, ela aumenta. Este aumento representa o ponto de modelo overfitting. anfis escolhe o modelo parmetros associados com o mnimo de erro verificando (pouco antes de saltar este ponto). Este exemplo mostra a razo pela qual o controlo dos dados opo de anfis til.

Teste seus dados contra os formados FIS


Para testar a sua FIS contra o controlo dos dados, seleccione Verificar dados no teste FIS poro do ANFIS GUI, e clique em Test agora. Quando voc testar o controlo dos dados contra a FIS, ela est satisfatria.

Mais dados carregar com anfis


Se voc carregar os dados para anfis depois de limpar os dados previamente carregados, voc deve certifique-se que o recm-carregados conjuntos de dados tm o mesmo nmero de factores de produo como o fez anteriormente carregadas queridos. Caso contrrio, voc deve iniciar um novo anfisedit sesso de linha de comando.

Verificar e limpar os dados opo dados


Se voc no quiser usar a opo de controlo dos dados anfis, ento no carregar qualquer controlo dos dados antes de formar o FIS. Se voc decidir a reciclarem seus FIS sem qualquer controlo dos dados, possvel descarregar o controlo dos dados de duas maneiras: Selecione a opo Verificar no boto Load poro de dados dos ANFIS GUI e, em seguida, clique em Limpar Dados para descarregar o controlo dos dados. Feche a ANFIS GUI, e ir para o MATLAB linha de comando, e reescrever anfisedit. Neste caso, voc deve recarregar a formao de dados. Depois de limpar os dados, tem de regenerar sua FIS. Depois do FIS gerado, voc pode utilizar a sua primeira experincia de formao para decidir sobre o nmero pocas de treinamento que voc deseja para o segundo ciclo de formao.

ANFIS editor GUI Exemplo 2: controlo dos dados faz No validar modelo
Este exemplo o que acontece quando analisa a formao e o controlo dos dados conjuntos so suficientemente diferentes. Para ver como o ANFIS GUI pode ser utilizado para aprender alguma coisa sobre conjuntos de dados e como eles variam: 1 Limpar o ANFIS GUI: Limpar tanto a formao eo controlo dos dados. (opcional) Clique no boto Clear Plot direita. 2 Carga fuzex2trnData e fuzex2chkData (respectivamente, os dados de formao e de controlo dos dados) a partir do MATLAB workspace apenas como voc fez no exemplo anterior. Voc dever ver um enredo semelhante ao de uma figura a seguir.

Comboio da FIS para este sistema exatamente como voc fez no exemplo anterior, salvo agora escolher 60 pocas antes da formao. Voc deve obter o seguinte parcela:

Neste caso, verificar o erro bem grande. Parece que o mnimo verificando erro ocorre dentro da primeira poca. Usando o controlo dos dados opo com anfis define automaticamente o FIS parmetros a serem associados a esses verificando o mnimo erro. evidente que esse conjunto de funes no pertena a melhor escolha para a formao de modelagem de dados.

Este

exemplo

ilustra

problema

discutido

anteriormente

onde

verificao Dados apresentados ao conjunto anfis para a formao era suficientemente diferente a partir da treinamento conjunto de dados. Como resultado, os formados FIS no captar os recursos este conjunto de dados muito bem. importante conhecer as

caractersticas dos seus dados defini bem quando voc selecionar sua formao e de controlo dos dados. Quando voc no conhecer as caractersticas dos seus dados, voc pode analisar a verificao de erro parcelas ver ou no o controlo dos dados suficientemente bem realizado com o treinados modelo. Neste exemplo, verificar o erro suficientemente grande para indicar que quer voc precisar selecionar mais dados para a formao ou modificar sua filiao funoescolhas (tanto o nmero de inscrio e de funes do tipo). De outra maneira, o sistema pode se reciclarem sem o controlo dos dados, se voc acha que a formao dados suficientemente capta os recursos que voc est tentando representar. Para completar este exemplo, testar o modelo treinado FIS contra a verificao dados. Para fazer isso, selecione Verificar dados no Test FIS parte do GUI, e agora clique em Test. Os seguintes enredo do GUI indica que h muita discrepncia entre o controlo dos dados de produo e de sada do FIS.

anfis a partir da Command Line


Gerando uma FIS utilizando o ANFIS GUI bastante simples. No entanto, como voc viu no ltimo exemplo, precisa de ser cautelosos quanto execuo controlo dos dados de validao caracterstica anfis. Voc deve verificar se o controlo Dados erro faz aquilo que suposto. Caso contrrio, voc precisa se reciclarem o FIS. Esta seco descreve a forma de realizar as caractersticas da linha de comando em anfis uma srie de vezes catico previso exemplo.

Usando anfis para caticos Time-Series Previso


O demo mgtsdemo usa anfis de prever uma vez que a srie gerada por os seguintes Mackey-Glass (MG) tempo de demora equao diferencial.

Desta vez srie catica e, por isso no h qualquer prazo claramente definidas. O srie no convergir ou divergir, a trajetria e altamente sensvel condies iniciais. Este problema usado em referncia a rede neural e fuzzy modelagem investigao comunidades. Para obter o valor de sries temporais em pontos inteiro, ns aplicamos a quarta-ordem Runge-Kutta mtodo numrico para encontrar a soluo para a equao acima MG; o resultado foi guardado no arquivo mgdata.dat. Suponhamos x (0) = 1,2, = 17, e x (t) = 0 para t <0. A parcela theMG sries temporais, o tipo Carga mgdata.dat t = mgdata (:, 1); mgdata x = (:, 2); figura (1), enredo (t, x);

Na previso de sries de tempo, voc precisar usar os valores conhecidos da srie at o momento para o ponto no tempo, digamos, t, para prever o valor em algum momento no futuro, digamos, t + P. O mtodo padro para esse tipo de previso a de criar um mapeamento D amostra de dados pontos, todas as unidades amostradas no tempo, (x(t-(D-1)),..., x(t-), x(t)), para um futuro previsvel valor x (t + P). Na sequncia da convencional MG as definies para a previso de sries temporais, conjunto = P = = 4 e 6. Para cada t, os contributos dados para a formao anfis um quatro-dimensional do vetor seguinte forma. w (t) = [x (t-18) x (t-12) x (t-6) x (t)]

A sada de formao dados corresponde a trajetria da previso. s (t) = x (t + 6)

Para cada t, variando em valores de 118 a 1117, a formao de entrada / sada dados uma estrutura cuja primeira componente o quatrodimensional entrada w, e cujo segundo elemento a sada s. Existe 1000 input / output os valores dos dados. Voc usa os primeiros 500 valores dados para a formao anfis (estes tornar-se o treinamento conjunto de dados), enquanto os outros so utilizados como verificao de dados para validao do modelo identificado fuzzy. Esta diviso dos valores dos dados nos resultados dois de 500 pontos estruturas de dados, trnData e chkData. O cdigo a seguir gera esses dados:

para t = 118:1117, Dados (t-117 ,:)=[ x (t-18) x (t-12) x (t-6) x (t) x (6 t)]; fim trnData = Dados (1:500,:); chkData = Dados (501: final,:); Para iniciar o treinamento, voc precisa de uma estrutura FIS que especifica a estrutura e parmetros iniciais do FIS para a aprendizagem. A funo genfis1 alas esta especificao. fismat = genfis1 (trnData);

Como voc no especificar nmeros e tipos de filiao funes utilizado no FIS, valores por defeito so assumidas. Esses padres fornecem dois sino adeso generalizada funes em cada uma das quatro entradas, oito totalmente. A gerado FIS estrutura contm 16 regras fuzzy com 104 parmetros. Para conseguir bons generalizao capacidade, importante que o nmero de pontos de formao dados ser vrias vezes maior do que o nmero de parmetros a ser estimado. Neste caso, a relao entre os dados e parmetros de cerca de cinco (500/104). A funo genfis1 gera adeso inicial funes que so igualmente espaados e cobrem todo o espao de entrada. Voc pode parcela de entrada adeso funes usando os seguintes comandos. figura (2)

subparcela (2,2,1) plotmf (fismat, 'input', 1) subparcela (2,2,2) plotmf (fismat, 'input', 2) subparcela (2,2,3) plotmf (fismat, 'input', 3) subparcela (2,2,4) plotmf (fismat, 'input', 4)

Essas parcelas seguintes mostram estas funes iniciais adeso.

Para iniciar o treinamento, tipo

[fismat1, error1, ss, fismat2, error2] = ... anfis (trnData, fismat ,[],[], chkData);

Devido ao facto de a opo de controlo dos dados anfis invocado, voc escolhe o final FIS est associada a uma verificao com o mnimo de erro. Este resultado armazenado em fismat2. O cdigo a seguir parcelas destas novas funes adeso. figura (3) subparcela (2,2,1) plotmf (fismat2, 'input', 1) subparcela (2,2,2) plotmf (fismat2, 'input', 2) subparcela (2,2,3) plotmf (fismat2, 'input', 3) subparcela (2,2,4) plotmf (fismat2, 'input', 4)

Os seguintes grficos mostram o resultado.

A parcela do erro sinais, tipo figura (4) parcela ([error1; error2]); Neste caso, error1 e error2 so a raiz significa para o erro quadrado de formao e de controlo dos dados, respectivamente. Para alm destas parcelas erro, voc pode querer parcela da produo versus FIS a formao ou controlo dos dados. Para comparar o original MG e de sries temporais fuzzy a previso de lado a lado, tente figura (5) anfis_output = evalfis ([trnData (:, 1:4); chkData (:, 1:4)], ... fismat2); ndice = 125:1124; subparcela (211), parcela (t (ndice), [x (ndice) anfis_output]); subparcela (212), parcela (t (ndice), x (ndice) - anfis_output);

A diferena entre o original e as sries temporais MG anfis Estima valores muito pequena; assim, voc s pode ver uma curva na primeira parcela. O predio erro mostrado na segunda parcela com uma escala muito mais fino. Voc formado por apenas 10 pocas. Se voc aplicar mais extensa formao, voc obtm melhor desempenho.

Mais informaes sobre o anfis e ANFIS GUI

O comando anfis leva, no mnimo, dois e, no mximo, seis argumentos de entrada. O formato geral [fismat1, trnError, ss, fismat2, chkError] = ... anfis (trnData, fismat, trnOpt, dispOpt, chkData, mtodo); onde trnOpt (formao opes), dispOpt (exibir opes), chkData verificando dados), e de mtodo (mtodo de formao), so opcionais. Todos os argumentos so de sada tambm opcional. Esta seo discute os argumentos e componentes leque de linha de comando anfisand funo anloga a funcionalidade do ANFIS editor GUI. Quando o ANFIS GUI for invocado usando anfisedit, s a formao conjunto de dados deve existir antes da implementao anfis. Alm disso, o passo de tamanho fixo quando o adaptativa neuro-fuzzy sistema formado GUI usando esta ferramenta.

Formao Dados
A formao de dados, trnData, exigido um argumento para anfis, bem como ANFIS para o GUI. Cada linha uma das trnData desejada entrada / sada par do sistema alvo que deseja modelo Cada linha comea com um input vetor e seguido por um valor de produo. Por isso, o nmero de linhas de trnData igual ao nmero de pares de formao dados, e, porque no existe apenas uma sada, o nmero de colunas de trnData igual ao nmero de insumos mais um.

Entrada FIS estrutura

Voc pode obter a entrada FIS estrutura, fismat, a partir de qualquer um dos editores fuzzy: A FIS Editor A adeso funo Editor

A Regra Editor a partir do ANFIS GUI (que permite uma estrutura FIS para ser carregado a partir de um ficheiro ou o MATLAB workspace) A nmeros e tipos de filiao funes) A FIS estrutura contm tanto o modelo de estrutura, (o que especifica tal itens como o nmero de regras no FIS, o nmero de inscrio funes Para cada entrada, etc), e os parmetros, (especificar quais as formas de filiao funes). H dois mtodos que emprega anfis aprendizagem para atualizao de filiao Funo parmetros: Backpropagation para todos os parmetros (um mtodo steepest descida) Um mtodo hbrido composto de backpropagation para os parmetros associada com a entrada adeso funes, e mnimos quadrados estimativa para os parmetros associados com a adeso de sada Funes como resultado, a formao erro diminui, pelo menos localmente, ao longo de todo o processo de aprendizagem. Por isso, quanto mais a adeso inicial funes lembram as ptimas uns, mais fcil ser para o modelo parmetro formao a convergir. Human conhecimentos sobre o sistema alvo a ser modelado maio ajuda na criao de adeso inicial destes parmetros em funo da FIS estrutura. A FIS genfis1 funo produz uma estrutura baseada em um nmero fixo funes de membro. Esta estrutura invoca a chamada maldio de dimensionalidade, e as causas da propagao excessivo o nmero de regras quando o nmero de entradas moderadamente larga, ou seja, mais de quatro ou cinco. Lgica Fuzzy Toolbox oferece um mtodo que prev alguma dimenso reduo do sistema fuzzy inferncia: voc pode gerar uma estrutura FIS utilizando o algoritmo discutido em cluster "Subtractive Aglomerao" na pgina 2-122. Para usar o algoritmo clustering, voc deve selecionar o Sub. Clustering gerar opo no FIS poro do ANFIS GUI antes do FIS gerado. Este mtodo subtractive clustering de dados em parties grupos chamados "clusters", e gera um nmero mnimo FIS com a regulamentao necessria para distinguir as qualidades fuzzy associados a cada um dos plos.

Opes de Formao
O ANFIS GUI ferramenta permite-lhe escolher o seu erro tolerncia desejada formao e nmero de pocas. Formao trnOpt opo para a linha de comando anfis um vetor que especifica os critrios e parando o passo-size adaptao estratgia:

trnOpt (1): nmero de pocas de formao, padro = 10 trnOpt (2): tolerncia erro, omisso = 0 trnOpt (3): primeira etapa de tamanho, padro = 0,01 trnOpt (4): passo taxa de diminuio de tamanho, padro = 0,9 trnOpt (5): passo taxa de aumento de tamanho, padro = 1,1

Se algum elemento da trnOpt um NaN ou em falta, ento o valor padro tomada. O processo de formao pra se a designada poca nmero for atingido ou a erro meta alcanada, o que ocorrer primeiro. Normalmente, o passo-size perfil uma curva que aumenta inicialmente, atinge cerca mxima e, em seguida, diminui para o perodo remanescente da formao. Voc conseguir este perfil tamanho ideal passo-a-passo inicial de adaptao do tamanho e do aumento e diminuir taxas (trnOpt (3) - trnOpt (5)). Os valores padro so criadas para a cobertura de uma vasta gama de aprendizagem tarefas. Para qualquer aplicao especfica, voc pode querer modificar estes passo opes de tamanho, a fim de otimizar o treinamento. No entanto, no existem de usurio especificado passo-size opes para a formao adaptativa inferncia sistema neuro fuzzy ANFIS gerados usando o editor GUI.

Opes de exibio
Mostrar opes s se aplica funo de linha de comando anfis. Para a linha de comando anfis, as opes de display argumento, dispOpt, um

vetor de 1s ou 0s quer que especifica quais as informaes a exibio, (imprimir na janela do comando MATLAB), antes, durante e depois do treinamento processo. A 1 utilizada para designar imprimir esta opo, considerando que no se denota um 0 imprimir esta opo:

dispOpt (1): display ANFIS informaes, padro = 1 dispOpt (2): display erro (cada poca), padro = 1 dispOpt (3): mostrar passo-tamanho (cada poca), padro = 1 dispOpt (4): mostrar os resultados finais, default = 1 O modo padro exibe todas as informaes disponveis. Se algum elemento de dispOpt NaN ou faltando, o valor padro usado.

Mtodo
Tanto o ANFIS GUI e linha de comando anfis aplicar tanto

backpropagation uma forma de o mtodo steepest descida para a adeso parmetro funo estimao, ou uma combinao de backpropagation e o menos-quadrados mtodo para estimar a adeso funo parmetros. O escolhas para este argumento so hbridas ou backpropagation.

Thesemethod escolhas so designadas em funo da linha de comando, anfis, por 1 e 0, respectivamente.

Sada FIS estrutura de formao de dados


fismat1 a sada FIS estrutura que corresponde a um mnimo de formao erro. FIS Esta estrutura a que voc usa para representar o sistema fuzzy quando no existe um controlo dos dados utilizados para o modelo validao cruzada. Esses dados tambm FIS representa a estrutura que guardada pelo editor GUI quando ANFIS o controlo dos dados opo no utilizada.

Quando voc usa o controlo dos dados opo, a sada que salvou associados com o mnimo de controlo erro.

Formao Erro
A formao erro a diferena entre o valor de sada dados de formao, e sada do sistema de inferncia fuzzy correspondentes mesma formao de dados valor, (um dos associados com a formao que os dados de sada valor). A formao erro trnError registros da raiz significa erro quadrado (RMSE) a formao do conjunto de dados em cada poca. fismat1 o instantneo FIS da estrutura de formao quando o erro , na sua medida mnima. O ANFIS GUI parcelas a formao erro versus pocas como a curva sistema formado.

Passo-Size

Voc no pode controlar o passo com as opes de tamanho ANFIS GUI. Usando anfis linha de comando, o passo-size array ss registros de tamanho durante a etapa a formao. Plotagem ss d o passo-size perfil, que serve como uma referncia para ajustar o passo inicial de tamanho e da correspondente diminuio e aumento de taxas. A etapa de tamanho (ss) para a funo de linha de comando anfis actualizado de acordo com as seguintes diretrizes: Se o erro sofre quatro redues consecutivas, aumentar o tamanho do passo multiplicao por uma constante (ssinc) superior a um. Se o erro sofre de combinaes de duas consecutivas e um aumento uma reduo, diminuir o tamanho passo-a multiplicao por uma constante (ssdec) inferior a um. O valor padro para a fase inicial de tamanho 0,01; os valores padro para ssinc e ssdec so de 1,1 e 0,9, respectivamente. Todos os valores padro pode ser alterado atravs da formao opo para a linha de comando anfis.

Verificando Dados

O controlo dos dados, chkData, utilizado para testar a capacidade de generalizao inferncia fuzzy do sistema em cada poca. O controlo dos dados tem o mesmo formato como o da formao de dados, e os seus elementos so geralmente distintos a formao dos de dados. O controlo dos dados importante para a aprendizagem de tarefas para as quais o nmero de entrada grande, e / ou os dados em si barulhenta. Um sistema precisa de inferncia fuzzy uma determinada faixa de entrada / sada conjunto de dados assim. Porque o modelo de estrutura utilizada para anfis fixo, existe uma tendncia para o modelo de dados para overfit em que que treinada, especialmente para a formao de um grande nmero de pocas. Se overfitting ocorre, a inferncia fuzzy sistema pode no responder bem a outros conjuntos de dados independentes, especialmente se forem corrompidas por rudo. A validao ou controlo conjunto de dados podem ser teis para estas situaes. Estes dados fixado utilizado para validar a cross-fuzzy inferncia modelo. Esta validao cruzada exige a aplicao do controlo dos dados para o modelo e, depois, vendo bem como o modelo responde a esses dados. Quando o controlo dos dados opo usada com anfis, quer atravs do comando linha, ou usando o ANFIS GUI, o controlo dos dados aplicado para o modelo de formao em cada poca. Quando a linha de comando anfis invocada, parmetros do modelo que corresponde ao mnimo erro verificando se devolvido atravs do argumento fismat2 sada. A adeso funo FIS parmetros calculados utilizando o ANFIS GUI quando ambos formao e verificar os dados so carregados esto associados com a formao que tem epoch verificao de um mnimo erro. A utilizao do controlo dos dados mnimos erro poca para definir a composio parmetros funo assume

O controlo dos dados similar o bastante para o treinamento que os dados verificando dados erro diminui medida que o treinamento comea. O controlo dos dados aumenta em algum ponto no mbito da formao aps os dados overfitting ocorre. Dependendo do comportamento do controlo dos dados erro, resultante da FIS maio-ou-no pode ser o que voc precisa para um uso. Referem-se a "ANFIS GUI Exemplo 2: Verificando dados no Validar Modelo "na pgina 2-102.

Sada FIS estrutura de controlo dos dados


A sada de linha de comando anfis, fismat2, a sada FIS estrutura com o mnimo de controlo erro. FIS Esta estrutura a que voc dever utilizar para clculo ainda verificar se os dados so utilizados para a validao cruzada. Verificao de erro O erro verificar a diferena entre o valor controlo dos dados de sada, e sada do sistema de inferncia fuzzy correspondentes mesma controlo dos dados de entrada valor, que o que associado a uma verificao Dados de sada valor. A verificao dos registros chkError erro RMSE para o controlo dos dados em cada poca. fismat2 o instantneo do FIS estrutura quando a verificao em seu erro mnima. O ANFIS GUI as parcelas verificando erro versus curva pocas como o sistema formado.

Fuzzy Aglomerao
Agregao de dados numricos constitui a base de muitas e classificao sistema de modelagem de algoritmos. O objectivo do agrupamento identificar natural agrupamentos de dados a partir de um grande conjunto de dados para produzir uma representao concisa de um sistema de comportamento. Lgica Fuzzy Toolbox est equipado com algumas ferramentas que permitem que voc encontrar "clusters" input-output na formao de

dados. Voc pode usar as informaes cluster Sugeno para gerar um tipo de inferncia fuzzy sistema que melhor os modelos dados comportamento usando um nmero mnimo de regras. As regras prprias parties de acordo com as qualidades fuzzy associados a cada um dos dados agregados. Usar a funo de linha de comando, genfis2 automaticamente para realizar este tipo de FIS gerao. "Fuzzy C-Meios Aglomerao" na pgina 2-119 "Subtractive Aglomerao" na pgina 2-122

Fuzzy C-significa agregao


Fuzzy c-meio (FCM) uma tcnica em que cada agrupamento dados dados ponto pertence a um grupo de certa forma isso especificada por uma grade adeso. Essa tcnica foi introduzida originalmente em 1981 por Jim Bezdek [1] como um melhoria em relao a mtodos anteriores clustering. Ele oferece um mtodo que revela a forma de agrupar os dados que povoam alguns pontos em um espao multidimensional nmero especfico de diferentes agrupamentos. A Lgica Fuzzy Toolbox linha de comando comea com uma funo FCM inicial adivinhar para o cluster centers, que se destinam a marcar a mdia de localizao de cada plo. A primeira adivinhar para estes centros cluster mais provvel incorreta. Alm disso, todos os dados ponto FCM atribui um grau de adeso cada plo. Por iteratively actualizao do cluster centers e da filiao graus dados para cada ponto, FCM iteratively move os Centros para o cluster direito local dentro de um conjunto de dados. Esta iterao baseado em uma minimizando funo objetivo que representa a distncia de qualquer dado dados apontam para uma cluster center ponderada pelo que os dados ponto de Subscrio grau. O comando functionfcm uma lista de realizaes e de vrios centros cluster filiao graus para cada ponto de dados. Voc pode usar as informaes retornadas pela FCM para o ajudar a construir um sistema de

inferncia fuzzy atravs da criao de filiao funes para representar o fuzzy qualidades de cada plo.

Um exemplo: 2-D Aglomerados


Voc pode usar quase-aleatria bidimensional dados para ilustrar a forma como FCM clustering obras. Para carregar um conjunto de dados e rev-la em seguida, digite Carga fcmdata.dat parcela (fcmdata (:, 1), fcmdata (:, 2), 'o')

Em seguida, invocar a funo de linha de comando, FCM, e pedir-lhe que encontrar dois plos neste conjunto de dados [center, U, objFcn] = FCM (fcmdata, 2); Iterao count = 1, obj. fcn = 8,941176 Iterao count = 2, obj. fcn = 7,277177

at que a funo objetivo j no est diminuindo muito a todos.

A varivel centro contm as coordenadas dos dois centros cluster, U contm as classes adeso para cada um dos pontos dados, e objFcn contm uma histria de toda a funo do objectivo iteraes. O FCM funo uma iterao loop construda em cima de vrias outras rotinas, initfcm saber, que inicia o problema, distfcm, que utilizado para distncia clculos, e stepfcm, que atravs de uma iterao etapas. Traar o objectivo funo mostra o progresso da aglomerao. parcela (objFcn)

Por ltimo, esta parcela exibe os dois agrupamentos distintos classificada pela FCM rotina. Gere a prxima parcela utilizando Carga fcmdata.dat center, U, obj_fcn] = FCM (fcmdata, 2); maxU = max (U); index1 = encontrar (U (1,:) == maxU); index2 = encontrar (U (2,:) == maxU); line (fcmdata (index1, 1), fcmdata (index1, 2), 'linestyle',...

'nenhum', 'marcador', 'o', 'cor', 'g'); line (fcmdata (index2, 1), fcmdata (index2, 2), 'linestyle',... 'nenhum', 'marcador', 'x', 'cor', 'r'); espere parcela (centro (1,1), centro (1,2), 'ko', 'markersize', 15 ',' lineWidth ' ", 2) parcela (centro (2,1), centro (2,2), 'KX', 'markersize', 15 ',' lineWidth ' ", 2) Na figura a seguir, indicam grandes personagens cluster centers.

Subtractive Aglomerao
Se voc no tem uma ideia clara quantos clusters deve existir para um determinado conjunto de dados, Subtractive clustering, [2], uma maneira rpida, um algoritmo de passa - estimar o nmero de clusters e os centros de cluster um conjunto de dados. O cluster estimativas, que so obtidos a partir da subclust funo, pode ser usado para inicializar iterativo otimizao mtodos base de agregao (FCM) e modelo mtodos de identificao (como anfis). A

funo verifica a subclust clusters, utilizando o mtodo subtractive clustering.A funo genfis2 baseia-se na funo de proporcionar um subclust rpido, um mtodo de passar a ter de entrada / sada de dados e gerar uma formao tipo de inferncia fuzzy Sugeno sistema que os modelos dados comportamento. Um exemplo: suburbano rpidas, neste exemplo, voc aplicar o modelo genfis2 funo para a relao entre o nmero de viagens geradas a partir de um automvel e da rea da zona do demografia. Demogrfico e de viagem so dados a partir de 100 zonas de trfego anlise em New Castle County, Delaware. Cinco factores demogrficos so considerados: populao, nmero de fogos, veculo propriedade, a mediana agregado familiar renda e emprego total. Assim, o modelo tem cinco variveis de entrada e de uma varivel de sada. Coloque os dados por digitao mytripdata subparcela (2,1,1), parcela (datin) subparcela (2,1,2), parcela (datout)

A funo tripdata cria diversas variveis na rea de trabalho. Das dados originais 100 pontos, 75 usar dados como pontos de formao dados (e datin datout) e 25 pontos dados como verificao de dados, (bem como para testar a dados validar o modelo). O controlo dos dados de entrada / sada so indicadas pelos pares chkdatin e chkdatout. A funo genfis2 gera um modelo de dados utilizando clustering, e requer que voc especifique um cluster de raio. O cluster raio indica o intervalo de influncia de um cluster quando se consideram os dados espao como uma unidade hipercubo. Especificando um pequeno aglomerado de raio habitualmente rendimentos muitos pequenos aglomerados nos dados, (resultando em muitas regras). Especificando um grande cluster raio normalmente retorna um nmero reduzido de grandes aglomerados nos dados, (resultando em menos regulamentao).

O cluster raio especificada como o terceiro argumento de genfis2. A seguinte sintaxe genfis2 apela a funo utilizando um cluster raio de 0,5.fismat = genfis2 (datin, datout, 0,5); O genfis2 funo um rpido, passa-um mtodo que no desempenham qualquer iterativo de

otimizao. Uma estrutura FIS retornado; o modelo para o tipo FIS estrutura uma primeira ordem Sugeno modelo com trs regras. Use a evalfis verificar o modelo. fuzout = evalfis (datin, fismat); trnRMSE = norma (fuzout-datout) / sqrt (comprimento (fuzout)) trnRMSE = 0.5276 A varivel trnRMSE a raiz quadrada mdia do erro do sistema gerados a formao dos dados. Para validar o modelo, os dados dos ensaios aplicveis aos FIS. Para este exemplo, utilizar o controlo dos dados para verificar e testar ambos os FIS parmetros. chkfuzout = evalfis (chkdatin, fismat); chkRMSE = norma (chkfuzout-chkdatout) / sqrt (comprimento (chkfuzout)) chkRMSE = 0.6170 Este modelo no desempenhar bem como dados sobre o teste. Uma parcela dos testes dados revela a diferena. enredo (chkdatout) espere parcela (chkfuzout, 'o') hold off

Neste ponto, voc pode utilizar a otimizao da capacidade de melhorar a anfis modelo. Primeiro, tente utilizar uma formao anfis relativamente curto (50 pocas) sem implementao do controlo dos dados opo, mas testar o modelo resultante FIS contra o teste de dados. A sintaxe de linha de comando para esta funo a seguinte: fismat2 = anfis ([datin datout], fismat, [50 0 0,1]); Aps o treinamento realizado, do tipo fuzout2 = evalfis (datin, fismat2); trnRMSE2 = norma (fuzout2-datout) / sqrt (comprimento (fuzout2)) trnRMSE2 = 0.3407 chkfuzout2 = evalfis (chkdatin, fismat2); chkRMSE2 = norma (chkfuzout2-chkdatout) / sqrt (comprimento (chkfuzout2)) chkRMSE2 = 0.5827 O modelo tem melhorado muito no que diz respeito formao de dados, mas apenas um pouco no que diz respeito ao controlo dos dados. Os seguintes parcela da melhorou testes dados.

plot(chkdatout) hold on plot(chkfuzout2,'o') hold off

Isso mostra que a parcela genfis2 pode ser usado como um stand-alone, mtodo rpido fuzzy para a gerao de um modelo de dados, ou como um pr-processador para a anfis a determinao do regime inicial. Uma importante vantagem de utilizar um cluster mtodo para encontrar as regras que as regras da resultantes so mais adaptados s condies de entrada dados do que eles esto em uma FIS geradas sem agregao. Isto reduz o problema da propagao de uma excessiva regulamentao quando os dados de entrada tem uma elevada dimenso. Overfitting Em seguida, consideramos que acontece se voc realizar uma mais longo (200 poca) de formao anfis usando este sistema, incluindo o seu controlo dos dados opo. [fismat3, trnErr, stepSize, fismat4, chkErr] = ... anfis ([datin datout], fismat2, [200 0 0,1 ],[], ... [chkdatin chkdatout]);

A longa lista de argumentos de sada retorna um passo histrico dos tamanhos, o RMSE versus a formao de dados, e os RMSE versus o controlo dos dados formao associada a cada poca. ANFIS formao concluda em poca 200.

Minimal formao RMSE = 0,326566 Minimal verificando RMSE = 0,582545 Este resultado parece satisfatrio. O erro com os dados de formao a mais baixa at agora o erro e com o controlo dos dados tambm ligeiramente inferior antes. Este resultado sugere talvez exista uma overfit do sistema para o formao de dados. Overfitting ocorre quando voc encaixa-se no sistema fuzzy para a formao dados to bem que j no faz um excelente trabalho de montagem do controlo dos dados. O resultado uma perda de generalidade. Analise as seguintes parcela de erro histrico tanto contra a formao de dados e de verificao dos dados.

Isso mostra que a parcela de formao erro liquidar em cerca poca o 50 ponto. Na verdade, o menor valor do controlo dos dados erro ocorre em poca 52, aps que ela aumenta ligeiramente, at mesmo como anfis continua a minimizar o erro contra a formao todos os dados da forma como a poca 200. Dependendo da especificado erro tolerncia, o enredo tambm indica o modelo a capacidade de generalizar o teste de dados.

A agregao ferramenta GUI


O agrupamento GUI ferramenta implementa FCM e subclust funes, juntamente com de todas as suas opes. A figura a seguir mostra a agregao GUI, e que invocado utilizando a funo de linha de comando, findcluster.

Para abrir o agrupamento GUI com um conjunto de dados, voc pode invocar a findcluster um conjunto de dados diretamente. O conjunto de dados deve ter a extension.dat. Por exemplo, para carregar o conjunto de dados, clusterdemo.dat, tipo findcluster ( 'clusterdemo.dat'). Voc usa a puxar para baixo lista sob Mtodos para mudar entre FCM (fuzzy c-meio) e subtractive (subtractive clustering). Mais informaes sobre o opes podem ser encontradas nas entradas para a FCM, subclust e,

respectivamente.

O agrupamento GUI ferramenta funciona com conjuntos de dados multidimensionais, mas apenas exibe duas dessas dimenses. Use as listas ao abrigo do eixo X-Y-eixo e para dimenso seleccionar quais os dados que voc deseja exibir.

Stand-alone motor de inferncia fuzzy cdigo C


No fuzzy / fuzzy diretrio caixa de ferramentas, voc pode encontrar dois ficheiros C, fismain.c e fis.c, que so fornecidos como os cdigos fonte para um stand-alone fuzzy motor de inferncia. O stand-alone cdigo C inferncia fuzzy FIS motor pode ler um arquivo e um arquivo de dados de entrada para realizar inferncia fuzzy directamente, ou ele pode ser embutido em outras aplicaes externas. Para compilar o stand-alone motor de inferncia fuzzy em um sistema Unix, tipo % Cc-O-o fismain fismain.c-lm

Nota

% apenas simblico de um prompt UNIX, e que voc no tem

que digitar fis.c explicitamente, uma vez que includa no fismain.c Aps a compilao bem sucedida, digite o comando executvel para ver como ele obras. Fismain%, ste comando leva a seguinte mensagem. % Utilizao: fismain data_file fis_file De acordo com esta mensagem, fismain necessidades dois arquivos para fazer o seu trabalho: um arquivo de dados contendo registros de entrada vetores Uma FIS arquivo que especifica o sistema de inferncia fuzzy em estudo Considere, por exemplo, um arquivo chamado FIS estrutura, mam21.fis. Voc pode preparar os dados de entrada arquivo usando o MATLAB. [x, y] = meshgrid (-5:5, -5:5); input_data = [x (:) y (:)];

salvar fis_in input_data-ASCII

Esta preparao grava todos os dados de entrada como um 121-a-2 a matriz em ASCII fis_in arquivo, onde cada linha da matriz representa um vetor de entrada.

Agora,

voc

pode

chamar

stand-alone

cdigo.

Fismain%

fis_in

mam21.fis Este apelo gera 121 sadas em sua tela. Voc pode direcionar as sadas para outro arquivo. Fismain% fis_in mam21.fis> fis_out Agora, o arquivo contm um fis_out-121 por-1 matriz. Em geral, cada linha de a matriz de sada representa um vetor de sada. A sintaxe de fismain semelhante ao seu homlogo evalfis.m MEX-arquivo, exceto que todas as matrizes so substitudas com arquivos. Para comparar os resultados a partir do MATLAB MEX-file e ao stand-alone executvel, digite o seguinte no MATLAB.

fismat = readfis ( 'mam21'); matlab_out = evalfis (input_data, fismat); Carga fis_out max (max (matlab_out - fis_out)) ans = 4.9583e-13

Esta pequena diferena vem de durao limitada a impresso no arquivo fis_out. H vrias coisas que voc deve saber sobre este stand-alone executvel: compatvel ANSI C. Personalizado funes no so permitidos no stand-alone executveis, de modo que voc so limitadas a 11 membros para funes que vm com as ferramentas, como bem como outras definies de fbrica para AND, OR, IMP, e AGG funes.

fismain.c contm apenas a funo main () e fortemente documentado para uma fcil adaptao a outros pedidos. Para adicionar uma nova funo ou filiao novo mecanismo para o raciocnio stand-alone cdigo, voc precisa mudar o arquivo fis.c, que contm todas as necessrias para desempenhar as funes fuzzy inferncia processo.

Funes Por Categoria

GUI ferramentas e funes plotagem

Funes que invocam vrios editores grficos para a lgica fuzzy Sistemas Composio de funes sistemas de inferncia fuzzy

Composio Funes

FIS dados estrutura de gesto

Funes para a criao e manipulando inferncia fuzzy Sistemas Funes de gerao FIS matrizes, encontrar clusters, e uma formao FIS S-Fuzzy inferncia funo e os Lgica Fuzzy Simulink biblioteca

Tcnicas avanadas

Simulink

GUI ferramentas e funes plotagem


anfisedit findcluster Abra ANFIS editor GUI Interactive GUI para c-meios e subclustering clustering fuzzy

fuzzy mfedit plotfis plotmf

Abrir base inferncia Fuzzy System editor Composio funo editor Traar inferncia Fuzzy System Traar todas as funes para a adeso dada varivel Regra editor e parser Regra telespectador e inferncia fuzzy diagrama Abrir sada superfcie Viewer

ruleedit ruleview

surfview

Composio de funes
dsigmf Construdo em funo adeso composto por diferena entre os dois sigmoidal adeso funes Gaussian combinao adeso Funo Curva de Gauss construdo na adeso Funo Generalizadas construdo em forma de sino-nos filiao funo moldada alto-adeso Funo Construdo em funo adeso composto de produto de dois sigmoidally moldada adeso Funes Sigmoidally moldada built-in filiao funo Construda em forma de S-adeso em Funo Trapezoidal em forma de alto - filiao funo Triangular em forma de alto - filiao funo Z-construdo em forma de filiao em Funo

gauss2mf gaussmf

Gbellmf

pimf psigmf

sigmf

smf

trapmf

trimf

zmf

FIS dados estrutura de gesto

addmf

Adicionar a adeso funo Fuzzy istema de Inferncia Adicionar a regra Inferncia Fuzzy ystem Adicione a varivel Fuzzy Inferncia Sistema Defuzzify adeso funo

addrule addvar

defuzz

evalfis evalmf gensurf

Executar clculos inferncia fuzzy Generic adeso funo avaliao Gerar inferncia Fuzzy System superfcie de sada Fuzzy sistema propriedades Traduzir parmetros entre filiao funes Criar novo sistema de inferncia fuzzy Parse regras fuzzy Carga sistema de inferncia fuzzy arquivo Remover funo de filiao Inferncia Fuzzy System Retire a partir de variveis Fuzzy Sistema de Inferncia Configurar fuzzy sistema propriedades Mostrar anotada inferncia fuzzy Sistema Mostrar inferncia Fuzzy System Regras Salvar Inferncia Fuzzy System para arquivo

getfis mf2mf

newfis parsrule readfis

rmmf

rmvar

setfis showfis showrule Writefis

Tcnicas avanadas

anfis

Formao para a rotina de tipo Sugeno Inferncia Fuzzy System (MEX apenas) Fuzzy c-significa agregao Gerar inferncia Fuzzy System estrutura de dados sem dados clustering Gerar inferncia Fuzzy System estrutura de dados utilizando subtractive clustering

fcm genfis1

genfis2

genfis3

Gerar inferncia Fuzzy System estrutura de dados usando FCM clustering Encontre cluster centers com subtractive clustering

subclust

Simulink
fuzblock sffis Simulink lgica fuzzy biblioteca Fuzzy inference S-function for Simulink

Funes - Alfabtico Lista


Propsito Sintaxe Descrio
Adicionar a adeso funo Inferncia Fuzzy System addmf a = (a, 'varType', varIndex, 'mfName', 'mfType', mfParams)

A adeso funo s pode ser adicionado a uma varivel em uma j existente MATLAB workspace FIS. ndices so atribudas funes de filiao na ordem em que so adicionadas, de forma a primeira funo adeso adicionado a uma varivel sempre conhecida como funo adeso nmero para que uma varivel. Voc no pode adicionar uma funo adeso input varivel "nmero dois de um sistema que apenas uma entrada tenha sido definido. A funo requer seis input argumentos nesta ordem: 1 A MATLAB nome da varivel de uma estrutura FIS na rea de trabalho 2 Uma string representando o tipo de varivel que voc deseja adicionar o pertena a funo ( 'input' ou 'output') 3 O ndice da varivel que voc deseja adicionar a funo adeso 4 Uma string representando o nome da nova filiao funo

5 Uma string representando o tipo de filiao nova funo 6 O vetor de parmetros que definem a composio funo

Exemplos

a = newfis ( "basculantes"); addvar a = (a, 'input', 'servio', [0 10]); addmf a = (a, 'input', 1, 'pobres',' gaussmf ', [1,5 0]); addmf a = (a, 'input', 1, 'bom', 'gaussmf', [1,5 5]); addmf a = (a, 'input', 1, 'excelente', 'gaussmf', [1,5 10]); plotmf (a, 'input', 1)

addmf

Veja Tambm addrule, addvar, plotmf, rmmf, rmvar

addrule
Finalidade
adicionar a regra inferncia Fuzzy System

Sintaxe uma addrule = (a, ruleList) Descrio addrule tem dois argumentos. O primeiro argumento o
MATLAB workspace varivel FIS nome. O segundo argumento uma matriz de uma ou mais linhas, cada um dos quais representa uma determinada regra. O formato que o Estado deve assumir matriz lista muito especfica. Se h m insumos a um sistema, e n sadas, deve haver exatamente m + n + 2 colunas a lista de regras. As primeiras m colunas referem-se os factores de produo do sistema. Cada coluna contm um nmero que remete para o ndice de adeso funo para que a varivel. O prximo n colunas referem-se s sadas do sistema. Cada coluna contm um nmero que remete para o ndice de adeso funo para que a varivel. O m + n + 1 coluna contm o peso que est a ser aplicado a a regra. O peso deve ser um nmero entre zero e um, e esquerda como um modo geral. O m + n + 2 contm uma coluna 1 se o operador fuzzy para a regra da E antecedente. Ele contm um 2 se o operador fuzzy OR.

Exemplos
ruleList = [1 1 1 1 1 1 2 2 1 1]; addrule a = (a, ruleList); Se o que precede um sistema possui duas entradas e uma sada, a primeira regra pode ser interpretado como: "Se for Input 1 Input MF 1 e 2 MF 1, depois de Sada 1 MF 1."

Veja Tambm addmf, addvar, parsrule, rmmf, rmvar, showrule

Adicionar Sintaxe Descrio

a finalidade varivel inferncia Fuzzy System uma addvar = (a, 'varType', 'varName ", varBounds) addvar tem quatro argumentos nesta ordem: O nome de uma estrutura FIS no MATLAB workspace Uma string representando o tipo da varivel que voc

deseja adicionar ( 'input' ou 'output') Uma string representando o nome da varivel que voc deseja adicionar O vetor descrevendo a limitar a gama de valores variveis voc pretende adicionar ndices so aplicadas s variveis, na ordem em que so adicionados, assim a primeira entrada varivel adicionado a um sistema sempre conhecido como entrada um nmero varivel para esse sistema. So variveis de entrada e de sada numeradas de forma independente.

Examples

a = newfis('tipper'); a = addvar(a,'input','service',[0 10]);


getfis(a,'input',1) MATLAB replies Name = service NumMFs = 0 MFLabels = Range = [0 10]

Veja Tambm

addmf, addrule, rmmf, rmvar

Anfis
Finalidade
Sintaxe
Formao rotina para Sugeno-tipo Inferncia Fuzzy System (MEX apenas) [IF, erro, stepsize] = anfis (trnData) [IF, erro, stepsize] = anfis (trnData, initFis) [IF, erro, stepsize] = anfis (trnData, numMFs) [IF, erro, stepsize, chkFis, chkErr] = ... anfis (trnData, initFis, trnOpt, dispOpt, chkData, optMethod) [IF, erro, stepsize, chkFis, chkErr] = ... anfis (trnData, numMFs, trnOpt, dispOpt, chkData, optMethod)

Descrio
aprender a

Esta sintaxe a principal formao para a rotina de

tipo Sugeno fuzzy inferncia sistemas. anfis usa um algoritmo hbrido identificar parmetros sugeno-tipo de inferncia fuzzy

sistemas. Aplica-se uma combinao de o menos-quadrados e do mtodo backpropagation gradiente ascendncia mtodo de formao FIS adeso funo parmetros para emular um treinamento dado conjunto de dados. anfis tambm pode ser invocado usando um opcional modelo argumento para validao. O tipo de modelo que leva validao lugar com esta opo um modelo para verificar overfitting, e os argumento um conjunto de dados chamado o controlo conjunto de dados. Os argumentos acima na descrio para anfis so os seguintes. Nota que voc pode especificar os argumentos trnOpt, dispOpt, chkData, e optMethod como vazia, [], quando necessrio: trnData: o nome de um treinamento conjunto de dados. Esta matriz contm dados em todas as entradas, mas na ltima coluna. A ltima coluna contm uma nica vetor de sada de dados. initFis: o nome de um sistema de inferncia fuzzy (FIS) utilizados para a prestao anfis com um conjunto inicial de adeso funes de formao. Sem essa opo, anfis usa genfis1 para implementar um padro FIS para a formao inicial. Este padro FIS tem dois adeso funes do tipo

Gaussian, data em que invocado com apenas um argumento. Se initFis fornecida como um nico nmero (ou um vetor), que tomado como o nmero de membros funes (ou o vector) cujas entradas so os respectivos nmeros de inscrio funes associada a cada respectiva entrada quando estes nmeros diferem para cada entrada). Neste caso, ambos os argumentos so passados de anfisa genfis1 para gerar uma estrutura FIS vlido antes de iniciar a processo de formao. numMFs: o nmero de inscrio funes. Use numMFs, um escalar valor inteiro, como o segundo argumento para anfis quando voc fizer no tm j uma FIS para treinar e voc deseja anfis para construir um padro FIS inicial utilizando os seus dados. Cada entrada e sada para o presente FIS caracterizado por uma ou mais funes adeso. Especifique o nmero de inscrio no numMFs funes. trnOpt: um vetor de opes de formao. Quando uma opo de formao inscrito como NaN, as opes padro est em vigor. Estas so as opes segue:

-- TrnOpt (1): Nmero de formao poca (padro: 10) -- TrnOpt (2): formao erro meta (padro: 0)
-- TrnOpt (3): primeira etapa tamanho (padro: 0,01) -- TrnOpt (4): taxa de decrscimo passo tamanho (padro: 0,9) -- TrnOpt (5): aumento passo tamanho taxa (por defeito: 1-1)

dispOpt: um vetor de exibir opes que especificar quais mensagem a exibio na janela Command MATLAB durante a formao. O valor padro para exibir uma opo 1, o que significa que o informao correspondente exibida. A 0 significa o correspondente informao no mostrada. Ao exibir uma opo est inscrita como NaN, as opes padro ser em vigor. Estas opes so as seguintes: DispOpt (1): ANFIS informaes, tais como nmeros de entrada e sada adeso funes, e assim por diante (padro: 1)

-- DispOpt (2): erro (por defeito: 1) -- DispOpt (3): tamanho passo em cada parmetro update (padro: 1) -- DispOpt (4): resultados finais (padro: 1) chkData: o nome de um conjunto de dados para verificar opcional overfitting modelo validao. Este conjunto de dados uma matriz no mesmo formato que o treinamento conjunto de dados. Quando voc fornecer chkData como um argumento de entrada, voc tambm deve fornecer chkFis e chkErr como sada argumentos. optMethod: um mtodo utilizado na otimizao opcional adeso parmetro funo da formao: quer 1 para o mtodo hbrido ou 0 para o mtodo backpropagation. O padro o mtodo hbrido mtodo, que uma combinao dos mnimos quadrados com estimao

backpropagation. O mtodo padro invocado sempre que a entrada para este argumento tudo menos 0. O processo de formao pra sempre que o nmero designado epoch alcanado ou a formao erro meta alcanada.

Nota

Quando anfis invocado com dois ou mais argumentos, opcional

ter argumentos sobre os valores padro, desde que sejam inscritos como NANS ou vazia matrizes. Valores padro pode ser alterado diretamente, alterando anfis.m o arquivo. Ou NANS matrizes ou vazios devem ser utilizados como placeholders para variveis se voc no quiser especificarlas, mas fazer querer especificar suceda argumentos, por exemplo, quando voc implementar a opo de controlo dos dados anfis. A gama de variveis a descrio acima para anfis so as seguintes: fis o FIS estrutura cujos parmetros so estabelecidos de acordo com um mnimas de formao erro critrio. erro ou chkErr uma matriz de raiz significa quadrado representando erros a formao e os dados erro sinal controlo dos dados erro sinal, respectivamente. A funo s retorna quando voc abastecimento chkErr chkData como um argumento de entrada.

stepsize um array de tamanhos passo. O passo tamanho diminuda (multiplicando-a com a componente da formao opo orrespondente taxa de decrscimo passo tamanho) se a medida erro cconsecutivas de combinaes de duas sofra um aumento seguido por uma diminuio. O passo tamanho aumentado (por multiplicando-a taxa de aumento) se o erro medida sofre quatro consecutivos diminui. chkFis o FIS estrutura cujos parmetros so estabelecidos de acordo com um verificando erro mnimo critrio. A funo s retorna chkFis quando voc abastecimento chkData como um argumento de entrada. anfis tem algumas restries (ver "Constrangimentos de anfis" na pgina 289 para mais informaes).

Examples

x = (0:0.1:10)'; y = sin(2*x)./exp(x/5); trnData = [x y]; numMFs = 5; mfType = 'gbellmf'; epoch_n = 20; in_fis = genfis1(trnData,numMFs,mfType); out_fis = anfis(trnData,in_fis,20); plot(x,y,x,evalfis(x,out_fis)); legend('Training Data','ANFIS Output');

Referncias
Jang, J.-S. R., "fuzzy generalizada modelagem utilizando redes neurais e Kalman Filter Algorithm ", Proc. da nona Nacional Conf. ligado Inteligncia Artificial (AAAI-91), pp. 762-767, julho de 1991. Jang, J.-S. R., "ANFIS: Adaptive-Network-baseado Fuzzy Inferncia Systems ", IEEE Transactions em Systems, Man, e Ciberntica, vol. 23, No. 3, pp. 665685, maio 1993.

Veja Tambm

anfisedit, genfis1

anfisedit
Finalidade
Sintaxe
aberto ANFIS editor GUI

anfisedit ( 'a') anfisedit (a) anfisedit

Descrio

Usando anfisedit, voc abrir o editor GUI ANFIS a partir

do qual voc pode carregar um conjunto de dados e treinar anfis. O ANFIS editor GUI invocadas utilizando anfisedit ( 'a'), abre o editor GUI ANFIS a partir do qual voc pode implementar anfis utilizando uma estrutura FIS armazenada como um arquivo a.fis. anfisedit (a) funciona da mesma forma uma estrutura para um FIS, armazenado como uma as workspace varivel em MATLAB. Referem-se a "anfis e do ANFIS GUI" na pgina 2-86 para mais informaes sobre como usar anfisedit.

Menu
Itens
ANFIS sobre o editor GUI, h uma barra de menu que lhe permite abrir relacionados com ferramentas GUI, abrir e salvar sistemas, e assim por diante. O menu Arquivo a mesma que a encontrada sobre o FIS Editor. Consultar a fuzzy para mais Informaes: Use o seguinte menu Editar item: Desfazer para desfazer a mudana mais recente.

FIS propriedades que invocar o FIS Editor. Composio funes de invocar a Funo Scio Editor. Regras de invocar o artigo Editor. Utilize o menu Exibir seguintes itens: Regras de invocar o artigo Viewer. Superfcie de invocar a superfcie Viewer.

Ver tambm

fuzzy, mfedit, ruleedit, ruleview, surfview

convertfis

Finalidade

converter Fuzzy Logic Toolbox verso 1,0 inferncia

Fuzzy System matriz a verso atual-Fuzzy System estrutura Inferncia

Sintaxe

fis_new = convertfis (fis_old) convertfis toma uma verso 1,0 FIS matriz e

Descrio
atual.

converte-lo para uma FIS estrutura compatvel com a verso

Defuzz

Finalidade

Defuzzify adeso funo

Sintaxe defuzz
Descrio
uma adeso

out = (x, MF, tipo)

defuzz (x, MF, tipo) retorna um valor defuzzified fora, de

mf posicionados em funo associada valor varivel x,

usando um dos defuzzification vrias estratgias, de acordo com a argumentao, procedimentos: centride: centride da rea bissector: bissector de rea mame: a mdia do valor mximo som: menor (absoluta) do valor mximo LOM: maior (absoluta) do valor mximo Se no um tipo daqueles listados, Fuzzy Logic Toolbox assume que se trata de um definido pelo usurio, funo. x mf e so passados para esta funo para gerar defuzzified a sada. tipo. A varivel tipo pode ser um dos seguintes

Exemplos

x = -10:0.1:10; trapmf mf = (x, [-10 -8 -4 7]); defuzz xx = (x, mf, 'centride');

dsigmf

Finalidade
compostos

Built-in filiao funo da diferena entre os dois

Sintaxe

y = dsigmf(x,[a1 c1 a2 c2])

Descrio

A funo sigmoidal adeso utilizado depende de dois

parmetros a e c e dada por:

A adeso depende da funo dsigmf quatro parmetros a1, c1, a2, e c2, e a diferena entre dois desses sigmoidal f1(x; a1, c1) - (x; a2, c2)f2 Os parmetros esto listados na ordem: [a1 c1 a2 c2].

Exemplos

x=0:0.1:10; y=dsigmf(x,[5 2 5 7]); plot(x,y) xlabel('dsigmf, P=[5 2 5 7]')

Veja Tambm

gaussmf, gauss2mf, gbellmf, evalmf, mf2mf, pimf,

psigmf, sigmf, smf, trapmf, trimf, zmf

evalfis

Finalidade Sintaxe

Realize clculos inferncia fuzzy

output= evalfis(input,fismat) output= evalfis(input,fismat, numPts) [output, IRR, ORR, ARR]= evalfis(input,fismat) [output, IRR, ORR, ARR]= evalfis(input,fismat,numPts)

Descrio
for uma

evalfis tem os seguintes argumentos:

entrada: um nmero ou uma matriz especificando valores de entrada. Se entrada por M-N-matriz, onde N o nmero de variveis de

entrada, ento evalfis toma cada linha de entrada como um vetor de entrada e retorna a M-by-L matriz para a varivel, de sada, onde cada linha um vetor de sada e L o nmero de parmetros de sada.fismat: FIS uma estrutura a ser avaliada numPts: um argumento opcional que representa o nmero da amostra pontos sobre os quais a avaliar a adeso funes durante o input ou sada de gama. Se este argumento no usado, o valor padro de 101 pontos utilizado. A gama de etiquetas evalfis so os seguintes: sada: a sada matriz de tamanho M-by-L, onde M representa a nmero de entrada valores especificados anteriormente, e L o nmero variveis de sada para o FIS. O opcional gama de variveis evalfis so calculados apenas quando a input argumento um vetor linha, (apenas um conjunto de entradas aplicado). Essas variveis so opcionais gama IRR: o resultado da avaliao dos valores de entrada atravs do filiao funes. Esta matriz do tamanho numRules-by-N, numRules onde o nmero de regras, e N o nmero de variveis de entrada.

ORR: o resultado da avaliao dos valores de sada atravs a filiao funes. Esta matriz do tamanho numPts-by-numRules * L, onde

numRules o nmero de regras, e L o nmero de sadas. As primeiras colunas deste numRules matriz correspondem primeira sada, o prximo numRules colunas de desta matriz correspondem segunda sada, e assim por diante. ARR: o numPts-by-L agregar valores a matriz de amostragem na numPts ao longo da faixa de sada para cada sada. Quando invocada com apenas um intervalo varivel, esta funo calcula o vetor de sada, sadas do sistema especificado por inferncia fuzzy A estrutura, fismat, para a entrada valor especificado pelo nmero ou matriz, insumo ..

Exemplos

fismat = readfis ( 'Outro'); evalfis out = ([2 1; 4 9], fismat)

Isto gera a sintaxe resposta

out = 7,0169 19,6810

Veja Tambm

ruleview, gensurf

evalmf

Finalidade Sintaxe

Genrico filiao funo avaliao

evalmf y = (x, mfParams, mfType)

Descrio

evalmf avalia qualquer filiao funo, onde x a

varivel intervalo para a adeso funo avaliao, mfType um membro funo a partir da caixa de ferramentas, e mfParams so parmetros adequados para tal funo.Se voc deseja criar sua prpria funo personalizada filiao, evalmf ainda funciona, porque se avalia qualquer filiao funo cujo nome ele no reconhece.

Exemplos

x = 0:0.1:10; mfparams = [2 4 6]; mftype = 'gbellmf'; evalmf y = (x, mfparams, mftype); parcela (x, y) xlabel ( 'gbellmf, P = [2 4 6]')

Veja Tambm

dsigmf, gaussmf, gauss2mf, gbellmf, evalmf,

mf2mf, pimf, psigmf, sigmf, SMF, trapmf, trimf, zmf

fcm Finalidade Sintaxe


Fuzzy c-mdias

[center, U, obj_fcn] = FCM (dados, cluster_n)

Descrio

[center, U, obj_fcn] = FCM (dados, cluster_n)se aplica a

fuzzy c-mdias mtodo para um determinado conjunto de dados. Os argumentos de entrada dessa funo so: dados: conjunto de dados a serem agregadas; cada fila uma amostra de dados ponto cluster_n: nmero de clusters (mais de um)

A sada desta funo argumentos so: centro: matriz final cluster de centros onde cada linha fornece o centro coordena U: matriz final fuzzy partio (ou filiao funo matriz) obj_fcn: valores da funo objetivo durante iterationsare FCM (dados, cluster_n, opes) utiliza um argumento adicional varivel, opes, para controlar parmetros clustering, introduzir uma paragem critrios, definir a iterao exibir informaes, ou ambos. opes (1): expoente para a partio matriz U (padro: 2,0) opes (2): nmero mximo de iteraes (padro: 100) opes (3): montante mnimo de melhora (padro: 1e-5) opes (4): info exibio durante iterao (padro: 1) Se nenhuma entrada de opes NaN, o valor padro para essa opo utilizada em vez de. O processo de clustering pra quando o nmero mximo de iteraes atingido ou quando a funo objetivo a melhoria

iteraes entre dois consecutivos seja inferior ao montante mnimo melhoria das especificadas.

Exemplos

dados = rand (100, 2);

[center, U, obj_fcn] = FCM (dados, 2); parcela (dados (:, 1), dados (:, 2), 'o'); maxU = max (U); Index1 encontrar = (U (1,:) == maxU); index2 encontrar = (U (2,:) == maxU); linha (dados (Index1, 1), dados (Index1, 2), 'linestyle', 'nenhum',... 'marcador','*',' cor', 'g'); linha (dados (index2, 1), dados (index2, 2), 'linestyle', 'nenhum',... 'marcador','*',' cor ',' r ');

findcluster

Finalidade
subclustering

Interactive GUI para clustering fuzzy c-meio e

Sintaxe

findcluster findcluster ( 'file.dat')

Descrio

findcluster abre uma interface grfica para aplicar quer o

fuzzy c-meio (FCM), o fuzzy clustering subtractivo (subtractiv), utilizando o pull-down tab sob Mtodo sobre a GUI, ou ambos. Os dados so inseridos usando o Load Dados boto. As opes para cada um desses mtodos esto definidos como padro valores. Estes valores podem ser alterados. Ver pgina FCM referncia para uma descrio das opes de fuzzy c-meio. A referncia subclust pgina fornece uma descrio das opes de subclustering fuzzy.

Esta

ferramenta

funciona

com

base

em

conjuntos

de

dados

multidimensional, mas apenas dois displays dessas dimenses. Use o pulldown abas sob o eixo X e Y-eixo para selecionar quais dados dimenso que pretende ver. Por exemplo, se voc ter os dados que so cinco tridimensionais, esta ferramenta dado_1 dados como os rtulos, dado_2, data_3, data_4, data_5, na ordem em que os dados aparece no conjunto de dados. Iniciar para executar o clustering, e ao Centro salvar o cluster central. Quando operar num conjunto de dados chamado file.dat, findcluster (file.dat) carrega automaticamente o conjunto de dados, plotagem de at duas dimenses do primeiro dos dados somente. Voc ainda pode escolher qual das duas dimenses de dados pretende cluster aps a GUI aparece.

Exemplos
subclustering

Interactive clustering GUI for fuzzy c-means and

Veja Tambm
Fuzarith

FCM, subclust

Finalidade Sintaxe

Realize aritmtica fuzzy

C = fuzarith (X, A, B, operador)

Descrio

Usando o intervalo aritmtico, fuzarith C = (X, A, B,

operador) retorna um conjunto fuzzy C, consoante o resultado da aplicao da funo representadas pela corda, o operador, que realiza uma operao binria sobre a amostrar convexo fuzzy conjuntos A e B. Os elementos de A e B so derivados de convexa das funes do universo da amostra, X: A, B, e X so vetores da mesma dimenso. operador um dos seguintes textos: "soma", "sub", "produtos", e 'div'. O conjunto retornou fuzzy C um vector coluna com o mesmo comprimento que X. Nota Fuzzy adio poder gerar a mensagem de "dividir por zero" mas isso no afeta a exatido dessa funo.

Exemplos

point_n = 101;%, este determina a resoluo do MF

min_x = -20; max_x = 20;% universo [min_x, max_x] x = linspace (min_x, max_x, point_n) '; Um trapmf = (x, [-10 -2 1 3]); Um conjunto fuzzy trapezoidal% Gaussmf B = (x, [2 5]);% Gaussian fuzzy set B

C1 = fuzarith (x, A, B, 'sum'); subparcela (2,1,1); parcela (x, A, 'b -', x, B sou: ', x, C1,' c '); ttulo ( "fuzzy adio A + B '); C2 = fuzarith (x, A, B, "sub"); subparcela (2,1,2); parcela (x, A, 'b -', x, B sou: ', x, C2,' c '); ttulo ( "subtraco fuzzy A-B '); C3 = fuzarith (x, A, B, 'prod');

Fuzblock

Finalidade Sintaxe

Simulink lgica fuzzy biblioteca

fuzblock

Descrio

Este comando abre uma biblioteca que Simulink contm

dois Simulink blocos que voc pode usar: O controlador Fuzzy Logic O Fuzzy Logic Controller Com Artigo Viewer (Ver tambm ruleview.) Este artigo obriga o bloco Viewer para abrir pop durante um Simulink simulao. Para abrir a caixa de dilogo para o Fuzzy Logic Controller (com ou sem a Regra Viewer), d um duplo clique no bloco. Digite o nome do

descrevendo a sua estrutura varivel FIS. Esta varivel deve estar localizado em MATLAB o trabalho. Para mais discusso sobre estes blocos, ver "Construir Sua Prpria Fuzzy Simulink modelos" na pgina 2-75. Caso os fuzzy inference sistema tem vrias entradas, multiplex esses insumos juntos antes de os alimentar em ambos os Fuzzy Logic Controller ou Com o Fuzzy Logic Controller Regra Viewer bloco. Da mesma forma, se o sistema tem vrias sadas, estes sinais so passados para fora do bloco multiplexagem em uma linha.

Veja Tambm

sffis, ruleview

fuzzy

Finalidade Sintaxe

Abra o editor bsico Fuzzy Inference System

fuzzy

fuzzy (fismat)

Esta ferramenta GUI permite editar as caractersticas do mais alto nvel "fuzzy" inferncia sistema, tais como o nmero de variveis de entrada e de sada, o defuzzification mtodo utilizado, e assim por diante. Consulte "O FIS Editor" na pgina 2-34 para obter mais informaes sobre como usar o GUIS associados com franjinha. A FIS o Editor de alto nvel para exibir qualquer inferncia lgica fuzzy sistema. Ela permite que voc chame a vrios outros editores para operar na FIS. Esta interface permite acesso conveniente a todos os outros editores com uma nfase na flexibilidade mxima para a interao com o sistema fuzzy. O Diagrama :
O diagrama apresentado no topo da janela mostra as

entradas, sadas, e um processador central regra fuzzy. Clique em uma das variveis caixas para fazer o curso selecionado a caixa varivel. Voc dever ver o caixa destacada em vermelho. D um duplo clique em uma das variveis para

abrir o Composio funo Editor. D um duplo clique no processador a regra fuzzy Levantar a Regra Editor. Se existe uma varivel, mas no mencionado no a regra de base, que ligado regra com um processador bloco tracejado em vez de uma linha slida

Menu Itens O FIS Editor exibe uma barra de menu que lhe permite abrir

relacionados Ferramentas GUI, abrir e salvar sistemas, e assim por diante. Em Arquivo selecione Nova FIS> Mamdani para abrir um novo estilo de Mamdani sistema sem variveis e sem regras chamados Untitled. Nova FIS> Sugeno para abrir um novo estilo de Sugeno sistema sem variveis e sem regras chamados Untitled. Importar> Do trabalho de carregar um sistema a partir de um

determinado FIS estrutura varivel no espao de trabalho. Importar> A partir de carregar um arquivo a partir de um determinado sistema. Peix arquivo. Exportao> Para colaborativo. para salvar o sistema a uma estrutura FIS varivel no espao de trabalho. Exportao> Para arquivo para salvar o sistema atual para um. Peix arquivo. Imprimir para imprimir o que exibido na GUI. Fechar para fechar a GUI. seleccionar Edite Sob Desfazer para desfazer a mudana mais recente. Adicione varivel> Entrada para acrescentar outro input para o sistema atual.

Adicione varivel> Sada para adicionar outra sada para o sistema atual. Remover varivel selecionada para apagar uma varivel selecionada. Composio funes de invocar o Membership Function Editor. Regras de invocar o Artigo Editor. Sob View selecione Regras para invocar o artigo Viewer. Superfcie para invocar o Surface Viewer.

Inferncia Mtodo Pop-up Menus Cinco menus pop-up so fornecidos para alterar a

funcionalidade dos cinco etapas bsicas fuzzy implicao no processo: E mtodo: Escolha min, prod, ou personalizado, para uma operao personalizada. Ou mtodo: Escolha max, probor (ou probabilsticos), ou personalizado, para uma personalizado operao. Implicao: Escolha min, prod, ou personalizado, para uma operao personalizada. Esta seleco no est disponvel para Sugeno estilo de inferncia fuzzy. Agregao: Escolha no mximo, soma, probor, ou personalizado, por um costume operao. Esta seleco no est disponvel para Sugeno-style "fuzzy" inferncia. Defuzzification: Por inferncia Mamdani de estilo, escolha centride, bissetriz, me (mdia de, no mximo), som (de menor dimenso, no mximo), LOM (maiores de no mximo), ou personalizado, para uma

operao personalizada. Para Sugeno estilo de inferncia, escolher entre wtaver (mdia ponderada) ou wtsum (soma ponderada).

Veja Tambm

mfedit, ruleedit, ruleview, surfview, anfisedit

gauss2mf

Finalidade Sintaxe

Gaussian combinao filiao funo

gauss2mf y = (x, [sig1 c1 sig2 c2])

Descrio

A funo gaussiana depende de dois parmetros sig e tal

como determinado pela c

A funo gauss2mf uma combinao de dois destes dois parmetros. A primeira funo, especificada por sig1 e c1, determina a forma do Curva esquerda. A segunda funo especificada pelo sig2 e c2 determina a forma da curva mais direita. Quando c1 <c2, o gauss2mf funo atinge um valor mximo de 1. Caso contrrio, o valor mximo inferior a um. Os parmetros esto listados na ordem: [sig1, c1, sig2, c2].

Exemplos

x = (0:0.1:10) '; y1 = gauss2mf (x, [2 4 1 8]); y2 = gauss2mf (x, [2 5 1 7]);

y3 = gauss2mf (x, [2 6 1 6]); Y4 = gauss2mf (x, [2 7 1 5]); Y5 = gauss2mf (x, [2 8 1 4]); parcela (x, [y1 y2 y3 Y4 Y5]); set (gcf, 'Nome', 'gauss2mf', 'numbertitle', 'off');

Veja Tambm
Gaussmf

dsigmf, gauss2mf, gbellmf, evalmf, mf2mf,

pimf, psigmf, sigmf, SMF, trapmf, trimf, zmf

Finalidade Sintaxe

Curva de Gauss built-in filiao funo

gaussmf y = (x, [ass c])

Descrio

A funo simtrica gaussiana depende de dois

parmetros e c tal como determinado pela

Os parmetros para representar os parmetros gaussmf e c enumerados no no fim do vetor [ass c].

Exemplos

x = 0:0.1:10;

gaussmf y = (x, [2 5]); parcela (x, y) xlabel ( 'gaussmf, P = [2 5]')

Veja Tambm

dsigmf, gaussmf, gbellmf, evalmf, mf2mf, pimf,

psigmf, sigmf, SMF, trapmf, trimf, zmf

Gbellmf

Finalidade
funo

Generalizada construdo em forma de sino-adeso em

Sintaxe

gbellmf y = (x, params)

Descrio

O sino generalizada funo depende de trs parmetros

a, b, c e tal como determinado pela

onde o parmetro b geralmente positiva. O parmetro c localiza o centro da curva. Digite o parmetro vetor params, a segunda argumento para gbellmf, como o vetor cujas entradas so a, b e c, respectivamente.

Exemplos

x = 0:0.1:10;

gbellmf y = (x, [2 4 6]); parcela (x, y) xlabel ( 'gbellmf, P = [2 4 6]')

Veja Tambm

dsigmf, gaussmf, gauss2mf, evalmf, mf2mf,

pimf, psigmf, sigmf, SMF, trapmf, trimf, zmf

genfis1

Finalidade
dados clustering

Gerar Fuzzy Inference System estrutura de dados sem

Sintaxe

fismat = genfis1 (dados)

fismat = genfis1 (dados, numMFs, inmftype, outmftype)

Descrio

genfis1 gera um tipo FIS Sugeno-estrutura utilizada

como inicial condies (inicializao da filiao funo parmetros) anfis para treinamento. genfis1 (dados, numMFs, inmftype, outmftype) FIS gera uma estrutura de formao de um conjunto de dados, dados, utilizando uma grade partio sobre os dados (sem clustering). Os argumentos para genfis1 so os seguintes: dados a formao matriz de dados, que deve ser digitado com todas as mas as ltimas colunas que representam dados de entrada, e na ltima coluna representando a nica sada. numMFs um vetor cujas coordenadas especificar o nmero de filiao funes associadas a cada entrada. Se quiser que o mesmo nmero de inscrio funes a serem associados a cada input, em seguida, faa numMFs um nico nmero. inmftype um array seqncia na qual cada linha especifica o filiao funo associada a cada tipo de entrada. Novamente, isto pode ser um one-dimensional nica string se o tipo de filiao funes associadas a cada entrada a mesma. outmftype uma seqncia que especifica o tipo de filiao funo associados produo. S pode haver uma sada, porque este um tipo Sugeno-sistema. A inscrio output funo tipo deve ser linear ou constante. O nmero de membros associados com as funes de sada o

mesmo que o nmero de regras geradas por genfis1. O nmero padro funes de membro, numMFs, 2; o padro de entrada filiao Tipo de funo 'gbellmf'; o padro de sada e de filiao funo tipo "linear". Estes so utilizados quando invocado sem genfis1 os ltimos trs argumentos.

Exemplos
numMFs = [3 7];

dados = [rand (10,1) 10 * rand (10,1) -5 rand (10,1)];

mfType = str2mat ( 'pimf', 'trimf'); fismat = genfis1 (dados, numMFs, mfType); [x, mf] = plotmf (fismat, 'input', 1); subparcela (2,1,1), parcelas (x, mf); xlabel ( 'input 1 (pimf)'); [x, mf] = plotmf (fismat, 'input', 2); subparcela (2,1,2), parcelas (x, mf); xlabel ( 'input 2 (trimf)');

Veja Tambm

anfis

genfis2

Finalidade Sintaxe

Gerar Fuzzy Inference System estrutura de dados

usando subtractivo clustering fismat = genfis2 (Xin, xout, raios)

fismat = genfis2 (Xin, xout, raios, xBounds) fismat = genfis2 (Xin, xout, raios, xBounds, opes)

Descrio

Dada conjuntos distintos de entrada e sada de dados,

gera um genfis2 FIS usando subtractivo fuzzy clustering. Quando existe apenas uma sada, genfis2 pode ser usado para gerar uma formao inicial FIS para anfis pela primeira execuo subtractivo clustering sobre os dados. genfis2 consegue extrair um por este conjunto de regras que os modelos de dados comportamento. A regra utiliza o mtodo de extraco primeira funo a subclust determinar o nmero de regras e antecedente filiao funes e, em seguida, utiliza menos linear quadrados estimativa de determinar em cada Estado da consequentes equaes. Esta funo retorna uma estrutura que FIS contm um conjunto de regras fuzzy para cobrir a caracterstica espacial. Os argumentos para genfis2 so os seguintes: Xin uma matriz em que cada linha contm os valores de um input ponto de dados. xout uma matriz em que cada linha contm os valores de produo de um ponto de dados. raios um vetor que especifica um cluster centro da faixa de influncia

em cada uma das dimenses de dados, assumindo os dados se insere dentro de uma hyperbox unidade. Por exemplo, se a dimenso 3 (por exemplo, tem duas colunas Xin xout e tem uma coluna), raios = [0,5 0,4 0,3] especifica que os gamas de influncia na primeira, segunda e terceira dimenses dados (ou seja, a primeira de Xin coluna, a segunda coluna do Xin, e os coluna de xout) so de 0,5, 0,4 e 0,3 vezes a largura dos dados espacial, respectivamente. Se raios um valor escalar, ento este escalar valor aplicado a todos os dados dimenses, ou seja, cada centro tem cluster um bairro esfrica de influncia com o raio dado. xBounds um 2-by-N opcional que especifica como matriz para o mapa Xin e dados em uma unidade em xout hyperbox, onde N o de dados (linha) dimenso. A primeira linha contm o mnimo de xBounds eixo gama valores e as segunda linha contm o intervalo mximo do eixo valores para os dados nas escalados cada dimenso. Por exemplo, xBounds = [-10 0 -1; 10 50 1] especifica que os valores de dados em dimenso so os primeiros dados a ser escalados a partir do intervalo [-10 +10] em valores no intervalo [0 1]; valores dados no segundo dados dimenso esto a ser escalados a partir do intervalo [0 50]; e valores dados no terceiro Dados dimenso esto a ser escalados a partir do intervalo [-1 +1]. Se xBounds uma matriz vazia ou no prestado, ento xBounds padro para o Dados valores mnimos e mximos encontrados em cada dimenso de dados. opes um vetor opcional para especificar parmetros algoritmo para substituir os valores padro. Esses parmetros so explicados no o texto de ajuda para subclust. Os valores padro esto em vigor quando esta argumento no especificado.

Exemplos

fismat = genfis2 (Xin, xout, 0,5)

Este exemplo mostra o nmero mnimo de argumentos necessrios para a utilizao esta funo. Neste caso, um leque de influncia de 0,5 especificada para todos os dados dimenses. fismat = genfis2 (Xin, xout, [0,5 0,25 0,3]).Esta equao assume os dados combinados dimenso 3. Suponha Xin xout tem duas colunas e tem uma coluna, em seguida, 0,5 e 0,25 so as gamas de influncia de cada uma das dimenses Xin dados, e 0,3 o leque de influncia para os dados xout dimenso. fismat = genfis2 (Xin, xout, 0,5, [-10 -5 0; 10 5 20]) Esta equao especifica a forma de normalizar os dados em Xin e em xout valores no intervalo [0 1] para o processamento. Suponha Xin tem duas colunas xout e tem uma coluna, em seguida, os dados na primeira coluna do Xin so Escalei a partir de [-10 +10], os dados na segunda coluna do Xin esto escalados a partir de [-5 +5], e os dados nas escalados xout so a partir de [0 20].

Veja Tambm
genfis3

subclust

Finalidade Sintaxe

Gerar Fuzzy Inference System estrutura de dados

utilizando FCM clustering fismat = genfis3 (Xin, xout) fismat = genfis3 (Xin, xout, tipo) fismat = genfis3 (Xin, xout, tipo, cluster_n)

fismat = genfis3 (Xin, xout, tipo, cluster_n, fcmoptions)

Descrio

Dada conjuntos distintos de entrada e sada de dados,

gera um genfis3 FIS c-fuzzy utilizando meios (FCM) clustering por extrair um conjunto de regras que comportamento dos modelos de dados. A primeira regra utiliza o mtodo de extraco FCM funo de determinar o nmero de regras e de filiao funes para os antecedentes e consequents. fismat = genfis3 (Xin, xout) gera um tipo FIS Sugeno-estrutura (fismat) dado dados de entrada e sada de dados Xin xout. Thematrices Xin xout e ter uma coluna por FIS entrada e sada, respectivamente. fismat = genfis3 (Xin, xout, tipo) gera uma estrutura da FIS tipo especificado, se ou tipo 'Mamdani' ou 'Sugeno'. fismat = genfis3 (Xin, xout, tipo, cluster_n) gera um FIS estrutura do tipo especificado, e permite que voc especifique o nmero de clusters (cluster_n) a serem gerados pela FCM. O nmero de clusters determina o nmero de regras e funes na filiao gerado FIS. cluster_n deve ser um nmero inteiro ou 'Auto', que utiliza o subclust algoritmo com um raio de 0,5 para encontrar o nmero de clusters. fismat = genfis3 (Xin, xout, tipo, cluster_n, fcmoptions) FIS gera uma estrutura do tipo especificado eo nmero de cachos e usa o especificado para os CCF fcmoptions algoritmo. Se omitir fcmoptions, o FCM valores padro so utilizados. Veja informaes para FCM sobre esses parmetros.

Exemplos

Gerar um FIS usando valores padro. Xin1 * 7 = rand (50,1); Xin2 = 20 * rand (50,1) -10; Xin = [Xin1 Xin2];

Xout 5 * = rand (50,1); fismat = genfis3 (Xin, xout); Gerar um Mamdani FIS com 3 plos. fismat = genfis3 (Xin, xout, 'Mamdani', 3)

Veja Tambm
Gensurf

anfis, FCM, genfis1, genfis2, subclust

Finalidade Sintaxe

Gerar Fuzzy Inference System superfcie de sada

gensurf (IF) gensurf (fis, entradas, sadas) gensurf (fis, entradas, sadas, grelhas) gensurf (fis, entradas, sadas, grades, refinput) [x, y, z] = gensurf (...)

Descrio

gensurf (IF) gera uma parcela da produo de uma

determinada superfcie fuzzy inferncia sistema (IF) usando as duas primeiras entradas e sadas do primeiro. gensurf (fis, entradas, sadas) gera uma parcela utilizando os factores de produo (ou um dois) e sada (apenas um permitido) constam, respectivamente, pelo vetor, insumos, e os escalar, sada. gensurf (fis, entradas, sadas, grades) permite especificar o nmero das grandes redes no X (primeiro e horizontal) e Y (segunda, vertical) direes. Se um grelhas dois Elemento vetor, as grades nas direes X e Y pode ser configurada de forma independente.

gensurf (fis, entradas, sadas, grades, refinput) podem ser usadas se houver so mais de duas sadas. O comprimento do vetor o refinput mesmo que o nmero de entradas: Introduzir NANS para as entradas de refinput correspondentes aos insumos cuja superfcie est sendo exibido. Introduzir real dupla escalares para fixar os valores de outros insumos. [x, y, z] = gensurf (...) retorna as variveis que definem a produo superficiais e suprime automtica plotagem.

Exemplo 1

a = readfis ( 'Outro'); gensurf (a)

Exemplo 2

a = gensurf (Temp, [1 2], 1, [20 20], [nan nan 0.2]);

Esta equao gera a superfcie de um perodo de trs entradas FIS chamado Temp desde os seus primeiros dois insumos para a sua primeira sada, enquanto a fixao de um valor de referncia para a terceira entrada em 2.

Veja Tambm
Getfis

evalfis, surfview

Finalidade Sintaxe

Fuzzy sistema de propriedades

getfis (a) getfis (um, 'fisprop') getfis (um, 'vartype', varindex) getfis (um, 'vartype', varindex, 'varprop') getfis (um, 'vartype', varindex, 'mf', mfindex) getfis (um, 'vartype', varindex, 'mf', mfindex, 'mfprop')

Descrio
estrutura FIS.

Esta funo fornece o acesso fundamental para a

Com esta funo voc pode aprender um sobre cada parte do fuzzy inferncia sistema. Os argumentos para getfis so os seguintes: um: o nome de um espao de trabalho varivel FIS estrutura. 'fisprop': uma string que indica o campo que voc deseja acessar. Possvel domnios incluem: 'nome' tipo numinputs' 'numoutputs' numinputmfs' numoutputmfs'

numrules' andmethod ' ormethod ' impmethod ' aggmethod ' defuzzmethod ' inlabels' outlabels' inrange ' 'ser superior a' inmfs' outmfs' inmflabels' outmflabels' inmftypes' outmftypes' inmfparams' outmfparams' rulelist '

'Nome' ou 'NumInputs'. 'vartype': uma string que indica o tipo de varivel que voc quer (quer entrada ou de sada). varindex: um inteiro que indica o ndice da varivel que deseja (1, 1 para a entrada, por exemplo). 'varprop': uma varivel string que indica a propriedade que voc deseja. Possveis seqncias esto nome, intervalo nummfs, e mflabels. Veja a exemplos de nomes amostra string. 'mf': uma string exigido que indica que voc est pesquisando filiao funo informao. mfindex: o ndice de adeso funo para a qual est buscando informaes. 'mfprop': uma string que indica valores funcione para a adeso propriedades. Possveis seqncias arename, tipo, e params.

Voc tambm pode acessar diretamente propriedades sistema fuzzy utilizando MATLAB sintaxe de estruturas (incluindo a notao dot). Veja os exemplos que seguir.

Exemplos

Um argumento de entrada (sada o conjunto vazio)

a = readfis ( 'Outro'); getfis (a) Name = tupia Type = Mamdani umInputs = 2 InLabels = servio alimento NumOutputs = 1 Outlabels = ponta NumRules = 3 AndMethod min = OrMethod = max ImpMethod min = AggMethod = max DefuzzMethod = centride Dois argumentos introduzidos getfis (um, 'tipo') ans = Mamdani ou a.type ans = Mamdani Trs argumentos de entrada (sada o conjunto vazio) getfis (um, 'input', 1) Nome do servio = NumMFs = 3 MFLabels = pobre bom excelente Intervalo = [0 10] ou a.input (1) ans = Nome: 'servio' intervalo: [0 10] mf: [1x3 struct] Quatro argumentos introduzidos getfis (um, 'input', 1, 'Nome') ans = servio ou a.input (1). nome ans = servio Cinco argumentos introduzidos getfis (um, 'input', 1, 'mf', 2) Name = bom Type = gaussmf Params = 1,5000 5,0000 ou a.input (1). mf (2) ans = Nome: 'bom' Tipo: 'gaussmf' params: [1,5000 5] Seis argumentos introduzidos getfis (um, 'input', 1, 'mf', 2, 'nome') ans = bom

ou a.input (1). mf (2). nome ans = bom

Veja Tambm
mam2sug

setfis, showfis

Finalidade Sintaxe

Transformada em sistema de inferncia Mamdani

Fuzzy Fuzzy Sugeno Sistema de inferncia sug_fis = mam2sug (mam_fis)

Descrio

mam2sug

(mam_fis)

transforma

uma

(no

necessariamente uma nica sada) Mamdani FIS estrutura mam_fis em uma estrutura sug_fis Sugeno FIS. O sistema foi devolvido Sugeno constante sada de filiao funes. Estas constantes so determinadas pelo centroids do

conseqente filiao funes do sistema original Mamdani. O antecedente mantm-se inalterado.

Exemplos

mam_fismat = readfis ( 'mam21.fis'); sug_fismat =

mam2sug (mam_fismat); subparcela (2,2,1); gensurf (mam_fismat, [1 2], 1); ttulo ( "sistema Mamdani (Sada 1) '); subparcela (2,2,2); gensurf (sug_fismat, [1 2], 1); ttulo ( 'Sugeno sistema (Sada 1 )

mf2mf

Finalidade Sintaxe

Traduzir parmetros entre filiao funes

outParams = mf2mf (inParams, inType, outType)

Descrio

Esta funo traduz-construdo em qualquer tipo de

filiao em funo outro, em termos do seu parmetro estabelecido. Em princpio, imita o mf2mf simetria pontos para ambos os novos e antigos membros funes. Cuidado ocasionalmente esta traduo nos resultados perdidos

informao, a fim de que se o parmetros de sada so traduzidos de volta para a adeso inicial tipo de funo, a funo no pertena transformou o olhar mesmo que ele fez originalmente. A entrada para mf2mf argumentos so os seguintes: inParams: os parmetros da funo estiver a filiao transformando inType: uma seqncia nome para o tipo de filiao est a funcionar Transformando outType: um nome para a nova seqncia adeso est a funcionar transformando a

Exemplos

x = 0:0.1:5; mfp1 = [1 2 3]; mfp2 = mf2mf (mfp1, 'gbellmf', 'trimf'); parcela (x, gbellmf (x, mfp1), x, trimf (x, mfp2))

Veja Tambm

dsigmf, gaussmf, gauss2mf, gbellmf, evalmf,

pimf, psigmf, sigmf, SMF, trapmf, trimf, zmf

Mfedit

Finalidade Sintaxe

Composio funo editor

mfedit ( 'a') mfedit (a) mfedit

Descrio

mfedit ( 'a') gera uma adeso funo editor que permite que voc inspecionar e modificar todas as funes para a sua adeso FIS armazenados em o arquivo, a.fis. mfedit (a) opera em um trabalho MATLAB varivel, para um FIS estrutura, a. mfedit sozinho abre o editor, sem filiao funo FIS carregado. Para cada funo filiao voc pode mudar o nome, o tipo, e os parmetros. Onze built-in filiao funes esto previstas para voc escolher, mas claro que voc pode criar suaa prpriaa verses especializadas.

Menu Itens

Composio sobre a Funo Editor, existe uma barra de menu que permite que voc abra relacionados ferramentas GUI, abrir e salvar sistemas, e assim por diante. O Menu Arquivo para a Adeso Funo Editor o mesmo que a um encontrada no FIS Editor. Consulte "O Membership Function Editor" na pgina 2-38 para obter mais informaes. Em Editar, escolha: Desfazer para desfazer a mudana mais recente.

Adicionar MFS para adicionar funcionalidades ao actual composio varivel. Adicione MF personalizado para adicionar uma funo personalizada para a adeso curso varivel. Remove Selected MF para apagar a atual filiao funo. Remover Tudo MFS para apagar todas as funes de membro do actual varivel. FIS propriedades para invocarem o Editor FIS. Regras de invocar o Artigo Editor. Em Exibir, escolha: Regras para invocar o artigo Viewer. Superfcie para invocar o Surface Viewer. Composio Funo Pop-up Menu H 11 built-inmembership funes para escolher, e voc tambm tm a opo de instalar uma funo personalizada filiao.

Veja Tambm
Newfis

fuzzy, ruleedit, ruleview, surfview

Finalidade Sintaxe
Descrio

Criar novo sistema de inferncia fuzzy

newfis

(fisName,

fisType,

andMethod,orMethod,impMethod,aggMethod, defuzzMethod) Esta funo cria novas estruturas FIS. newfis tem at

sete entradas argumentos, ea sada um argumento FIS estrutura. Os sete input argumentos so os seguintes:

fisName a seqncia nome do FIS estrutura, voc fisName.fis criar. fisType o tipo da FIS. andMethod, orMethod, impMethod, aggMethod, e defuzzMethod,

respectivamente, para fornecer os mtodos AND, OR, implicitamente, agregao, e defuzzification.

Exemplos
cada um dos mtodos.

O exemplo a seguir mostra o que so os padres para

a = newfis ( 'newsys'); getfis (a) retorna Name = newsys Type = Mamdani NumInputs = 0 InLabels = NumOutputs = 0 Outlabels = NumRules 0 AndMethod min OrMethod max ImpMethod min AggMethod max DefuzzMethod centride ans = [newsys]

Veja Tambm
Parsrule

readfis, writefis

Finalidade

Parse regras fuzzy

Sintaxe

fis2 = parsrule (fis, txtRuleList) fis2 = parsrule (fis, txtRuleList, ruleFormat) fis2 = parsrule (fis, txtRuleList, ruleFormat, lang)

Descrio

Esta funo analisa o texto que define as regras

(txtRuleList) para MATLAB um trabalho FIS varivel, fidelidade, e retorna uma estrutura FIS com a regra lista no lugar apropriado. Se a entrada original FIS estrutura, a fidelidade, tem quaisquer regras inicialmente, eles so substitudos no novo estrutura, fis2. Regra trs formatos diferentes (indicadas por ruleFormat) so suportados: 'verbose', 'simblica', e 'indexada'. O formato padro 'verbose'. Quando o argumento opcional lngua, idioma, utilizado, as regras so analisadas no modo detalhado, assumindo as palavras-chave esto no linguagem, idioma. Este deve ser um idioma Ingls'' ',' love ', ou 'deutsch'. As palavras-chave no idioma Ingls se so, ento, , E, OU, e NO.

Exemplos

a = readfis ( 'Outro');

ruleTxt = "se pobre, em seguida, servio de ponta generoso; a2 = parsrule (um, ruleTxt, 'verbose'); showrule (a2) ans = 1. If (servio ruim) e depois (dica generoso) (1)

Veja Tambm
Pimf

addrule, ruleedit, showrule

Finalidade

II-construdo em forma de filiao em funo

Sintaxe

pimf y = (x, [a b c d])

Descrio

Esta baseia-spline curva assim chamado por causa de

sua forma pertena a funo avaliada em pontos determinados pela vetor x. Os parmetros a e d localizar o "p" da curva, enquanto b e c localizar o seu "ombros."

Exemplos
parcela (x, y)

x = 0:0.1:10;

pimf y = (x, [1 4 5 10]);

xlabel ( 'pimf, P = [1 4 5 10]')

Veja Tambm

dsigmf, evalmf, gauss2mf, gaussmf, gbellmf,

mf2mf, psigmf, sigmf, SMF, trapmf, trimf, zmf

Plotfis

Finalidade Sintaxe

Parcela Inferncia Fuzzy sistema

plotfis (fismat)

Descrio

Esta funo exibe um diagrama de um elevado nvel FIS,

fismat. Entradas e sua filiao funes aparecem esquerda do FIS estrutural caractersticas, enquanto que as realizaes e os seus membros funes aparecem direita.

Exemplos
plotfis (a) Veja Tambm

a = readfis ( 'Outro');

Veja Tambm
Plotmf

evalmf, plotmf

Finalidade
varivel

Graficamente todas as funes de filiao dada

Sintaxe

plotmf (fismat, varType, varIndex)

Descrio

Esta funo de todas as parcelas da filiao funes no

chamado FIS fismat associados a uma determinada varivel cujo tipo e do ndice so respectivamente dadas por varType (deve ser 'input' ou 'output'), e varIndex. Esta funo tambm pode ser usado com a funo MATLAB, subparcela.

Exemplos

a = readfis ( 'Outro');

plotmf (um, 'input', 1)

Veja Tambm
Probor

evalmf, plotfis

Finalidade Sintaxe

Probabilstica OU

probor y = (x)

Descrio

probor y = (x) retorna a probabilstica OU (tambm

conhecido como o soma algbrica) das colunas de x. Se tiver duas linhas x tal que x = [a; b], ento y = a + b - ab. Se x possui apenas uma linha, em seguida, y = x.

Exemplos

x = (0:0.1:10);

algarismo ( 'Nome', 'Probabilistic OR', 'NumberTitle', 'off'); y1 = gaussmf (x, [0,5 4]); y2 = gaussmf (x, [2 7]); yy = probor ([y1, y2]); parcela (x, [y1, y2; yy])

Psigmf

Finalidade Sintaxe

Built-in filiao funo do produto composto de duas

sigmoidally moldaram filiao funes psigmf y = (x, [a1 c1 a2 c2]) A curva tracei sigmide para o vetor x depende de dois

Descrio

parmetros e c como um dado por psigmf simplesmente o produto de duas dessas curvas plotadas para os valores do vetor x f1 (x; a1, c1) f2 (x, a2, c2) Os parmetros esto listados na ordem [a1 c1 a2 c2].

Exemplos

x = 0:0.1:10; psigmf y = (x, [2 3 -5 8]); parcela (x, y) xlabel ( 'psigmf, P = [2 3 -5 8]')

Veja Tambm
Readfis

dsigmf, gaussmf, gauss2mf, gbellmf, evalmf,

mf2mf, pimf, sigmf, SMF, trapmf, trimf, zmf

Finalidade Sintaxe

Carregar arquivo a partir do Sistema Fuzzy Inference

fismat = readfis ( 'filename')

Descrio
de trabalho.

Ler um sistema a partir de uma inferncia fuzzy. Peix

arquivo (com o nome filename) e importar o arquivo resultante em espao

fismat = readfis (sem argumentos introduzidos) abre uma caixa de dilogo uigetfile para ajudar com o nome eo diretrio local do arquivo.

Exemplos

fismat = readfis ( 'Outro'); getfis (fismat) retorna Name = tupia Type = Mamdani NumInputs = 2 InLabels = servio alimento

NumOutputs = 1 Outlabels = ponta NumRules = 3 AndMethod min = OrMethod = max ImpMethod min = AggMethod = max DefuzzMethod = centride ans = tupia

Veja Tambm
Rmmf

writefis

Finalidade Sintaxe

Remover filiao funo de Inferncia Fuzzy System

peix = rmmf (fis, "varType ', varIndex,' mf ', mfIndex)

Descrio

peix = rmmf (fis, varType, varIndex, 'mf', mfIndex)

elimina a filiao funo, mfIndex, do tipo varivel varType, do ndice varIndex, a partir do sistema fuzzy inferncia associados FIS estrutura de trabalho, fis: A seqncia deve ser varType 'input' ou 'output'. varIndex um inteiro para o ndice da varivel. Este ndice representa a ordem na qual as variveis esto relacionadas. O argumento 'mf' uma string representando a filiao funo. mfIndex um inteiro para o ndice de adeso funo. Este ndice representa a ordem na qual os membros funes so listados.

Exemplos

a = newfis ( 'mysys');

uma addvar = (a, 'input', 'temperatura', [0 100]); uma addmf = (a, 'input', 1, 'frio', 'trimf', [0 30 60]); getfis (um, 'input', 1) retorna

Name = temperatura NumMFs = 1 MFLabels = frio Intervalo = [0 100] b = rmmf (um, 'input', 1, 'mf', 1); getfis (b, 'input', 1) retorna Name = temperatura NumMFs = 0 MFLabels = Intervalo = [0 100]

Veja Tambm
Rmvar

addmf, addrule, addvar, plotmf, rmvar

Finalidade Sintaxe

Remova a partir de variveis Fuzzy Inference System

fis2 = rmvar (fis, "varType ', varIndex)

[fis2, errorStr] = rmvar (fis, "varType ', varIndex)

Descrio

fis2 = rmvar (fis, "varType ', varIndex) remove a

varivel varType ', do ndice varIndex, a partir do sistema de inferncia fuzzy associados ao trabalho FIS estrutura, a fidelidade: A seqncia deve ser varType 'input' ou 'output'. varIndex um inteiro para o ndice da varivel. Este ndice representa a ordem na qual as variveis esto relacionadas.

[fis2, errorStr] = rmvar (fis, "varType ', varIndex) retorna qualquer mensagens de erro para a cadeia, errorStr. ste comando lista automaticamente altera a regra de manter o seu tamanho coerente com o actual nmero de variveis. Voc deve excluir a partir de o FIS qualquer regra que contm uma varivel que pretende remover, antes de remov-lo. Voc no pode remover uma varivel fuzzy atualmente em uso na lista de regras.

Exemplos

a = newfis ( 'mysys');

uma addvar = (a, 'input', 'temperatura', [0 100]); getfis (a) retorna Name = mysys Type = Mamdani NumInputs = 1 InLabels = temperatura NumOutputs = 0 Outlabels = NumRules = 0 AndMethod min = OrMethod = max ImpMethod min = AggMethod = max DefuzzMethod = centride ans = mysys b = rmvar (um, 'input', 1); getfis (b)

retorna Name = mysys Type = Mamdani NumInputs = 0 InLabels = NumOutputs = 0 Outlabels = NumRules = 0 AndMethod min = OrMethod = max ImpMethod min = AggMethod = max DefuzzMethod = centride ans = mysys

Veja Tambm
Ruleedit

addmf, addrule, addvar, rmmf

Finalidade Sintaxe

Regra editor e parser

ruleedit ( 'a') ruleedit (a)

Descrio

A Regra Editor, quando invocado usando ruleedit ( 'a'),

utilizado para modificar as regras de uma estrutura FIS armazenadas em um arquivo, a.fis. Tambm pode ser utilizado para inspeccionar as regras sejam utilizadas por um sistema de inferncia fuzzy. Para utilizar este editor para criar regras, primeiro tem de definir a contribuio de todos e sada de variveis que pretende utilizar com o editor FIS. Voc pode criar as regras usando a caixa de listagem e

escolhas para entrada e parmetros de sada, conexes, e pesos. Consulte "O artigo Editor" na pgina 2-43 para obter mais informaes sobre como usar ruleedit. A sintaxe ruleedit (a) utilizada quando pretende operar em um trabalho para uma varivel chamada estruturas FIS a.

Menu Itens

Editor sobre o artigo, existe uma barra de menu que lhe permite abrir relacionados Ferramentas GUI, abrir e salvar sistemas, e assim por diante. O menu Arquivo para o Editor regra a mesma da encontrada em Editor do FIS. Referem-se a fuzzy para mais informaes: Utilize o seguinte item no menu Editar: Desfazer para desfazer a mudana mais recente. FIS propriedades para invocarem o Editor FIS. Composio funes de invocar o Membership Function Editor. Use o menu Exibir seguintes itens: Regras para invocar o artigo Viewer. Superfcie para invocar o Surface Viewer. Utilize as opes do menu: Idioma para selecionar o idioma: Ingls, Alemo, Francs e Formato para escolher o formato: Verbose usa as palavras "se", "ento", "E", "OU", e assim por diante para criar penas efectivas.

Simblica substitutos alguns smbolos para as palavras utilizadas no verbose mode. Por exemplo, "se A e B, ento C" torna-se "A & B => C." Indexado espelhos como a regra armazenada na estrutura FIS.

Veja Tambm
showrule, surfview

addrule, fuzzy, mfedit, parsrule, ruleview,

Ruleview

Finalidade Sintaxe

Regra telespectador e inferncia fuzzy diagrama

ruleview ( 'a')

Descrio

O artigo invocado usando ruleview Viewer ( 'a') retrata o fuzzy inferncia de um diagrama FIS armazenadas em um arquivo, a.fis. Ela utilizada para visualizar implicao de todo o processo do incio ao fim. Voc pode mover-se ao redor da linha ndices que correspondem aos insumos e, em seguida, relgio reajustar o sistema e calcular a nova sada. Consulte "O

artigo Telespectador "na pgina 2-46 para obter mais informaes sobre como usar ruleview. Menu Itens

Artigo sobre o Visualizador, existe uma barra de menu que lhe permite abrir relacionados Ferramentas GUI, abrir e salvar sistemas, e assim por diante. O menu Arquivo para o Visualizador regra a mesma da encontrada em Editor do FIS. Referem-se a fuzzy para mais informaes. Utilize o menu Editar itens: Desfazer para desfazer a ltima ao FIS propriedades para invocarem o Editor FIS composio de invocar funes Editor Funo do Membership Regras de invocar o Artigo Editor Use o item do menu View: Superfcie para invocar o Surface Viewer Use o item do menu Opes: Formato para definir o formato no qual o Estado aparece: Verbose, Simblicas, ou Indexed. Se voc clicar nos nmeros do Estado, no lado esquerdo da inferncia fuzzy diagrama, associada com a regra de que o nmero aparece em Status Barra na parte inferior da Regra Viewer.

Veja Tambm
Setfis

fuzzy, mfedit, ruleedit, surfview

Finalidade Sintaxe

Definir propriedades sistema fuzzy

uma setfis = (a, 'fispropname', 'newfisprop')

uma setfis = (a, 'vartype', varindex, 'varpropname', 'newvarprop') uma setfis = (a, 'vartype', varindex, 'mf', mfindex,

mfpropname ',' newmfprop '); Descrio O comando setfis pode ser chamado com trs, cinco, sete ou input argumentos, dependendo se pretende definir uma propriedade do FIS estrutura toda, para uma determinada varivel que pertencem a essa FIS estrutura, ou para uma determinada funo pertencente a um membro da essas variveis. Os argumentos so: um - um nome da varivel de um espao de trabalho do FIS 'vartype' uma string que indica o tipo de varivel: entrada ou de sada varindex - o ndice de entrada ou de sada varivel 'mf' - uma corda necessria para o quarto argumento de uma seteargumento chamada para setfis, indicando esta uma varivel filiao funo mfindex - o ndice de adeso funo que pertencem varivel escolhida 'fispropname' - uma string que indica a propriedade do domnio FIS pretende definir: nome, tipo, andmethod, ormethod, impmethod,

aggmethod, defuzzmethod 'newfisprop' - uma string descrevendo o nome da propriedade ou FIS mtodo que pretende definir 'varpropname' - uma string indicando o nome da varivel campo pretende definir: nome ou intervalo 'newvarprop' - uma seqncia que descreve o nome da varivel que voc deseja definir (por nome), ou uma matriz descrevendo o alcance desse varivel (por faixa) 'mfpropname' - uma corda com a indicao do nome do membro funo campo que pretende definir: nome, tipo ou params. 'newmfprop' - uma string descrevendo o nome ou o tipo de

filiao funo campo deseja definir (por nome ou tipo), ou um array descrevendo a gama dos parmetros (para params) Exemplos setfsi chamado com trs argumentos: a = readfis ( 'Outro'); a2 = setfis (um, 'Nome', 'comendo'); getfis (a2, 'nome'); o que resulta em out = comer Se ele for usado com cinco argumentos, setfis atualizaes duas variveis propriedades. a2 = setfis (um, 'input', 1, 'Nome', 'help'); getfis (a2, 'input', 1, 'Nome') ans = ajuda Se usado com sete argumentos, setfis atualizaes qualquer um dos vrios filiao funo propriedades. a2 = setfis (um, 'input', 1, 'mf', 2, 'Nome', 'miservel'); getfis (a2, 'input', 1, 'mf', 2, 'nome') ans = infortunado Veja Tambm getfis Sffis Finalidade Inferncia Fuzzy S-funo para Simulink Sintaxe sffis sada = (t, x, u, bandeira, fismat)

Descrio Na maioria dos casos, o Fuzzy Logic Controller gera um bloco personalizado bloco diagrama para sua FIS. O Fuzzy Wizard, no entanto, no podem manipular FIS personalizado com filiao ou com funes E, OU, IMP, e AGG funes fora da lista a seguir: orMethod: max andMethod: min, prod impMethod: min, prod aggMethod: max Nestes casos, o Fuzzy Logic Controller utiliza o bloco S-function sffis para simular o FIS. Para mais discusso sobre este tema, ver "Construir Sua Prpria Fuzzy Simulink modelos" na pgina 2-75. O MEX-sffis arquivo usado pelo Simulink para realizar o clculo normalmente desempenhadas por evalfis. Tem sido otimizado para trabalhar em Simulink o ambiente. sffis constri uma estrutura de dados em memria durante a fase de iniciao uma simulao Simulink, que em seguida continua a utilizar at simulao estiver completa. Os argumentos t, x, e bandeira so padro Simulink S-function

argumentos (ver Escrever S-Funes no Simulink documentao). O argumento u a entrada para o trabalho MATLAB FIS estrutura, fismat. Se, por exemplo, existem duas entradas para fismat, ento u um dois elemento-vector.) Veja Tambm evalfis, fuzblock Showfis Finalidade Mostrar anotada nebulosos sistema de inferncia Sintaxe showfis (fismat)

Descrio showfis (fismat) imprime uma verso de trabalho do MATLAB varivel FIS, fismat, o que lhe permite ver o significado e contedo de cada domnio da estrutura. Exemplos a = readfis ( 'Outro'); showfis (a) Retorna: 1. Nome tupia 2. 2. Tipo de Mamdani 3. 3. Entradas / Sadas [2 1] 4. 4. NumInputMFs [3 2] 5. 5. NumOutputMFs 3 6. 6. NumRules 3 7. 7. AndMethod min 8. 8. OrMethod max 9. 9. ImpMethod min 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 10. AggMethod max 11. DefuzzMethod centride 12. InLabels servio 13. Alimento Outlabels ponta 15. InRange [0 10] 16. [0 10] 17. Ser superior a [0 30] 18. InMFLabels pobres 19. bom 20. excelente 21. rano

22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49.

22. delicioso 23. OutMFLabels barato 24. mdia 25. generoso 26. InMFTypes gaussmf 27. gaussmf 28. gaussmf 29. trapmf 30. trapmf 31. OutMFTypes trimf 32. trimf 33. trimf 34. InMFParams [1,5 0 0 0] 35. [1,5 5 0 0] 36. [1,5 10 0 0] 37. [0 0 1 3] 38. [7 9 10 10] 39. OutMFParams [0 5 10 0] 40. [10 15 20 0] 41. [20 25 30 0] 42. Antecedente regra [1 1] 43. [2 0] 44. [3 2] 42. Regra 1 Consequncia 43. 2 44. 3 42. Regra de Peso 1 43. 1

50. 51. 52. 53.

44. 1 42. Conexo regra 2 43. 1 44. 2

Veja Tambm getfis[ Showrule Finalidade Mostrar Fuzzy sistema de inferncia regras Sintaxe showrule (IF) showrule (fis, indexList) showrule (fis, indexList, formato) showrule (fis, indexList, formato, Lang) Descrio Este comando usado para exibir as regras associadas a um determinado sistema. Ela pode ser invocada com um a quatro Este

argumentos. O primeiro

argumento, fidelidade, necessria.

argumento o trabalho MATLAB varivel nome para uma estrutura FIS. O segundo (opcional) argumento indexList o vetor de regras que voc deseja exibir. O terceiro argumentos (opcional) a string representando o formato em que as regras no so devolvidos. showrule pode retornar ao Estado em qualquer dos trs diferentes formatos: 'verbose' (o modo padro, para que seja Ingls o idioma padro), simblica, e indexado", para a adeso ndice funo referenciao. Quando utilizado com quatro argumentos, o quarto argumento deve ser empolada, e showrule (fis, indexList, formato, Lang) mostra as regras no linguagem dada por lang, que deve ser um 'Ingls',' love ', ou 'deutsch'. Exemplos a = readfis ( 'Outro'); showrule (a, 1) ans = 1. If (servio pobre) ou (comida rano)

ento (dica barata) (1) showrule (a, 2) ans = 2. If (servio bom) e depois (dica mdio) (1) showrule (um, [3 1], simblica) ans = 3. (servio de excelente ==) | (comida deliciosa ==) => (ponta = generoso) (1) 1. (servio == pobres) | (comida == rano) => (ponta = barato) (1) 2. showrule (a, 1:3, 'indexados') 3. ans = 1 1, 1 (1): 2 2 0, 2 (1): 1 Veja Tambm addrule, parsrule, ruleedit

Sigmf Finalidade Sigmoidally moldaram built-in filiao funo Sintaxe sigmf y = (x, [um c]) Descrio A funo sigmoidal, sigmf (x, [CA]), conforme determinado nos seguintes equao por f (x, a, c) um mapeamento em um vetor x, e depende de dois parmetros e um c.

Dependendo do sinal do parmetro a, sigmoidal a filiao funo inerentemente aberto direita ou esquerda, e assim apropriada para representar conceitos como "muito grande" ou "muito negativas. "Mais convencionais, procurando filiao funes podem ser construdos tomando nem o produto ou diferena de dois diferentes sigmoidal

filiao funes. Para obter mais informaes seedsigmf e psigmf.

Exemplos x = 0:0.1:10; sigmf y = (x, [2 4]); parcela (x, y) xlabel ( 'sigmf, P = [2 4]')

Veja Tambm dsigmf, gaussmf, gauss2mf, gbellmf, evalmf, mf2mf, pimf, psigmf, sigmf, SMF, trapmf, trimf, zmf

Subclust Finalidade Encontre cluster centers com subtractivo clustering Sintaxe [C, S] = subclust (X, raios, xBounds, opes) Descrio Essa funo calcula o cluster centers em um conjunto de dados, utilizando subtractivo o mtodo de agrupamento. O mtodo de agrupamento subtractivo assume cada ponto de dados um potencial centro e calcula um cluster medida da probabilidade de que cada ponto de dados iria definir o cluster center, com base na densidade em torno de pontos de dados. O algoritmo:

Seleciona o ponto de dados com o maior potencial para ser o primeiro cluster center Remove todos os pontos de dados nas imediaes do primeiro cluster central (como determinado por raios), a fim de determinar o prximo cluster dados ea sua localizao central Itera sobre este processo at que todos os dados esto dentro dos raios de um cluster center o subtractivo mtodo de agrupamento uma extenso da montanha clustering mtodo proposto por R. Yager. A matriz X contm os dados a serem agregadas, e cada linha de X um ponto de dados. A varivel raios um vetor de entradas entre 0 e 1 que especifica um cluster centro da faixa de influncia de cada um dos dados dimenses, assumindo os dados se insere dentro de uma unidade hyperbox. Pequeno raios valores geralmente resulta em encontrar um nmero reduzido de grandes grupos empresariais. Os melhores valores de raios so normalmente entre 0,2 e 0,5. Por exemplo, se os dados so duas dimenses (X possui duas colunas), Raios = [0,5 0,25] especifica que o leque de influncia nos primeiros dados dimenso a metade da largura dos dados espaciais ea gama de influncia dados no segundo trimestre, a dimenso uma largura de dados espao. Se raios um escalar, ento o valor escalar aplicado a todos os dados dimenses, ou seja, cada centro tem um plo de esferulado bairro influncia com o raio dado. xBounds um 2-by-N matriz que especifica o mapeamento de dados no X em uma unidade hyperbox, onde N a dimenso de dados. Este argumento X facultativo se j est normalizado. A primeira linha contm o mnimo Eixo gama valores ea segunda linha contm o intervalo mximo do eixo valores para os dados nas escalados cada dimenso. Por exemplo, xBounds = [-10 -5; 10 5] especifica que os valores dados na

primeiros dados dimenso esto a ser escalados a partir do intervalo [-10 +10] em valores no intervalo [0 1]; valores dados na segunda dimenso so dados para ser escalados a partir do intervalo [-5 +5] em valores no intervalo [0 1]. Se xBounds uma matriz vazia ou no prestado, ento xBounds padro para os valores mnimo e mximo de dados encontrados em cada dimenso de dados. As opes vetor pode ser usado para especificar valores algoritmo de

agrupamento

parmetros para

substituir os

padro. Estes

componentes do vetor opes so especificados como segue: opes (1) = quashFactor: Este fator usado para multiplicar os raios valores que determinam a vizinhana de um cluster central, de modo a anule o potencial para a periferia pontos a serem considerados como parte da que o cluster. (padro: 1,25) opes (2) = acceptRatio: Este fator estabelece o potencial, como uma frao do potencial do primeiro cluster central, acima do qual um outro ponto de dados aceite como um cluster central. (padro: 0,5) opes (3) = rejectRatio: Este fator estabelece o potencial, como uma frao do potencial do primeiro cluster center, um abaixo do qual os dados ponto rejeitado como um cluster central. (padro: 0,15) opes (4) = verbose: Se este prazo no for zero, ento os progressos informaes so impressas como o processo de clustering produto. (padro: 0) A funo retorna o cluster centers na matriz C; cada fila de C contm a posio de um cluster central. O vetor contm retornou S o sigma valores que especificam o leque de influncia de um cluster central em cada uma das dimenses de dados. Todos os centros cluster compartilham os mesmos estabelecidos sigma de valores. Exemplos [C, S] = subclust (X, 0,5)

Esse comando define o nmero mnimo de argumentos necessrios para a utilizao esta funo. Um leque de influncia de 0,5 foi fixado para todos os dados dimenses. [C, S] = subclust (X, [0,5 0,25 0,3 ],[],[ 2,0 0,8 0,7]) Este comando assume a dimenso de dados 3 (X tem 3 colunas) e usa um leque de influncia de 0,5, 0,25 e 0,3 para o primeiro, segundo e Dados terceira dimenso, respectivamente. Os fatores de escalonamento de mapeamento os dados em uma unidade hyperbox so obtidos a partir do mnimo e valores mximos de dados. O squashFactor est definido para 2,0, indicando que apenas pretende encontrar nichos que esto longe umas das outras. O acceptRatio est definido para 0,8, indicando que apenas os dados que tm pontos um forte potencial de cluster centers esto sendo aceitas. O rejectRatio est definido para 0,7, indicando que pretende rejeitar todos os dados Pontos sem um forte potencial. Referncias Chiu, S., "Modelo de Identificao Fuzzy Baseada em Cluster Estimao", Journal of Intelligent & Fuzzy Systems, Vol. 2, No. 3, Setembro 1994. Yager, R. e D. Filev, "Gerao de Fuzzy Regimento por Montanha Clustering ", Journal of Intelligent & Fuzzy Systems, Vol. 2, No. 3, pp. 209-219, 1994. Veja Tambm genfis2 Surfview Finalidade Abra o Visualizador superfcie de sada Sintaxe surfview ( 'a') Descrio

As Surface invocadas usando surfview Viewer ( 'a') uma ferramenta grfica que permite-lhe examinar a superfcie de sada de um FIS armazenadas em um arquivo, a.fis, para qualquer uma ou duas entradas. Porque no alteram o sistema fuzzy ou seus associados FIS estrutura de forma alguma, Surface Viewer um read-only editor. Utilizando os menus pop-up, voc seleciona as duas variveis de entrada voc deseja atribuir a entrada dos dois eixos (X e Y), bem como a sada voc deseja atribuir a varivel de sada (ou Z). Clique em Avaliar para efectuar o clculo ea parcela a superfcie de sada. Clicando sobre o enredo eixos e arrastando o mouse, voc pode manipular a superfcie de modo que voc possa visualiz-lo a partir de diferentes ngulos. Se existirem mais de duas entradas para o seu sistema, voc deve fornecer o constante valores associados a qualquer indeterminado

insumos na referncia Seco de entrada. Consulte "O Surface Viewer" na pgina 2-49 para obter mais informaes sobre como usar surfview.

Menu Itens

Sobre o Surface Viewer, existe uma barra de menu que lhe permite abrir relacionados ferramentas GUI, abrir e salvar sistemas, e assim por diante. menu File para o Surface Viewer a mesma da encontrada em Editor do FIS. Referem-se a fuzzy para mais informaes: Utilize o menu Editar itens: Desfazer para desfazer a ltima ao FIS propriedades para invocarem o Editor FIS Composio de invocar funes Editor Funo do Membership Regras ... Editor de invocar o artigo Use o item do menu View: Regras para invocar o artigo Viewer Utilize as opes do menu: Traar a escolher entre oito tipos diferentes estilos de plotagem.Mapa Cor de escolher entre vrios esquemas de cores diferentes. Always avaliar automaticamente para avaliar uma nova parcela e superficiais toda vez que fizer uma alterao que afecta o enredo (como mudar o nmero de pontos grid). Esta a opo padro. Para limpar esta opo, escolha-o mais uma vez.

Veja Tambm anfisedit, fuzzy, gensurf, mfedit, ruleedit, ruleview Trapmf Finalidade Trapezoidal em forma de built-in filiao funo Sintaxe trapmf y = (x, [a b c d]) Descrio O trapezoidal curva uma funo de um vetor, x, e depende de quatro escalar parmetros a, b, c, d, tal como determinado pela

ou, mais compactly, por

Os parmetros a e d localizar os "ps" do trapezoidal e os parmetros b e c localizar os "ombros".

Exemplos x = 0:0.1:10; trapmf y = (x, [1 5 7 8]); parcela (x, y) xlabel ( 'trapmf, P = [1 5 7 8 ]')."

Veja Tambm dsigmf, gaussmf, gauss2mf, gbellmf, evalmf, mf2mf, pimf, psigmf, sigmf, SMF, trimf, zmf Trimf Finalidade De formato triangular, construdo em funo filiao Sintaxe trimf y = (x, params) trimf y = (x, [a b c]) Descrio A curva triangular uma funo de um vetor, x, e depende de trs escalar parmetros a, b e c, conforme determinado pelaou, mais compactly, byby

Os parmetros a e c localizar os "ps" do tringulo e do parmetro c localiza o pico.

Exemplos x = 0:0.1:10; trimf y = (x, [3 6 8]); parcela (x, y) xlabel ( 'trimf, P = [3 6 8]')

Veja Tambm dsigmf, gaussmf, gauss2mf, gbellmf, evalmf, mf2mf, pimf, psigmf, sigmf, SMF, trapmf

Writefis Finalidade Salvar Fuzzy Inference Sistema de arquivo

Sintaxe writefis (fismat) writefis (fismat, 'filename') writefis (fismat, 'filename', 'dilogo') Descrio writefis MATLAB salva uma estrutura de trabalho FIS, fismat, como um. peix arquivo. writefis (fismat) abre uma caixa de dilogo para ajudar com a atribuio de nomes e diretrio local do arquivo. writefis (fismat, 'filename') escreve um. peix arquivo correspondente ao FIS estrutura, fismat, para um arquivo chamado filename.fis. Nenhuma caixa de dilogo aparece, eo ficheiro guardado para o diretrio atual. writefis (fismat, 'filename', 'dilogo') abre uma caixa de dilogo com o filename.fis nome padro fornecido. A extenso. Peix s adicionado ao nome do arquivo, se j no estiver includo no nome. Exemplos a = newfis ( 'Outro'); uma addvar = (a, 'input', 'servio', [0 10]); uma addmf = (a, 'input', 1, 'pobres',' gaussmf ', [1,5 0]); uma addmf = (a, 'input', 1, 'bom', 'gaussmf', [1,5 5]); uma addmf = (a, 'input', 1, excelente, gaussmf ', [1,5 10]); writefis (um, 'my_file') Veja Tambm readfis Zmf Finalidade Construdo em forma de Z-membros em funo Sintaxe zmf y = (x, [um b])

Descrio Esta baseia-spline funo de x assim chamado por causa de sua forma-Z. Os parmetros a e b localizar os extremos da parte do inclinado tal como determinado pela curva.

Exemplos x = 0:0.1:10; zmf y = (x, [3 7]); parcela (x, y) xlabel ( 'zmf, P = [3 7]')

Veja Tambm dsigmf, gaussmf, gauss2mf, gbellmf, evalmf, mf2mf, pimf, psigmf, sigmf, SMF, trapmf, trimf

Blocos por categoria


Controladores (p. 5-2) Controlador blocos que implementam sistemas de inferncia fuzzy Operadores Lgicos (p. 5-3) Probabilistic OU blocos para uso com filiao funo blocos Composio Funes (p. 5-4) Blocos que apliquem diversas filiao funes

Controladores Fuzzy Logic Controller Fuzzy inferncia no sistema Simulink Fuzzy Logic Controller com Ruleviewer Fuzzy inference sistema com Ruleviewer em Simulink

Operadores Lgicos Probabilstica em funo OU OU Probabilistic Simulink Regra probabilstica Agg Probabilistic OU funo, regra agregao mtodo

Composio Funes Dif. Sigmoidal MF Diferena de dois sigmoids filiao em funo Simulink Gaussian MF Gaussian filiao em funo Simulink Gaussian2 MF Combinao de duas Gaussians filiao em funo Simulink Generalizada Bell MF Generalizada sino filiao em funo Simulink MF Pi Pi-moldados em forma de adeso, em funo Simulink Prod. Sigmoidal MF Produto de dois sigmoids filiao em funo Simulink S-shaped MF S-shaped filiao em funo Simulink Sigmoidal MF, em funo sigmoidal filiao Simulink Trapezoidal MF trapezoidal filiao em funo Simulink Triangular MF Triangular filiao em funo Simulink Z-moldados em forma de Z MF filiao em funo Simulink

Blocos Lista alfabetica


Dif. Sigmoidal MF

Finalidade Diferena de dois sigmoids filiao em funo Simulink Descrio A Dif. Sigmoidal MF bloco implemente um membro funo em Simulink baseado na diferena entre os dois sigmoids. Os dois sigmide curvas so dadas por

onde k = 1,2. Os parmetros a1and a2 controlar as pistas da esquerda e direito curvas. Os parmetros c1 e c2 controlar os pontos de inflexo para esquerda e direita curvas. Os parmetros A1 e A2 deve ser positiva. Veja Tambm dsigmf Fuzzy Logic Controller

Finalidade Fuzzy inferncia no sistema Simulink Descrio O Fuzzy Logic Controller bloco implemente um sistema de inferncia fuzzy (FIS) em Simulink. Consulte "Trabalhar com Simulink" na pgina 2-68 para uma discusso de como usar este bloco. Caixa de Dilogo

FIS arquivo ou estrutura Especifique o seu sistema de inferncia fuzzy.

Veja Tambm FIS arquivo ou estrutura Especifique o seu sistema de inferncia fuzzy Fuzzy Logic Controller com Ruleviewer Finalidade Fuzzy inference sistema com Ruleviewer em Simulink Descrio O Fuzzy Logic Controller com Ruleviewer bloco implemente um "fuzzy" inferncia sistema (FIS) com o ruleviewer em Simulink. Consulte "Trabalhando com Simulink "na pgina 2-68 para uma discusso de como usar este bloco. Caixa de Dilogo

FIS matriz Especifique o seu sistema de inferncia fuzzy como um arquivo ou estrutura. Taxa de atualizao (seg) Especificar a taxa de atualizao em segundos.

Veja Tambm Fuzzy Logic Controller Gaussian MF Finalidade Gaussian filiao em funo Simulink Descrio O Gaussian MF bloco implemente um membro em funo Simulink baseadas em uma Gaussiana simtrica. A curva de Gauss dada por

onde c a mdia e a varincia.

Veja Tambm gaussmf Gaussian2 MF Finalidade Combinao de duas Gaussians filiao em funo

SimulinkDescrio O Gaussian2 MF bloco implemente um membro com base em uma funo Gaussians combinao dos dois. As duas funes so dadas por Gauss

onde k = 1,2. Os parmetros c1 e 1 so a mdia e varincia definio mais esquerda curva. Os parmetros c2 e 2 so a mdia varincia e definindo mais direita curva.

Veja Tambm gauss2mf Generalized Bell MF Finalidade Sino adeso generalizada em funo Simulink Descrio O Sino Generalizada bloquear MF implementa uma filiao em funo Simulink baseado em uma curva em forma de sino generalizada. O generalizada curva em forma de sino dada por

onde os parmetros a e b variar a largura da curva e da parmetro c localiza o centro da curva. O parmetro b deve ser positivo.

Veja Tambm gbellmf Pi-shaped MF Finalidade Pi-shaped filiao em funo Simulink Descrio A Pi-shaped MF bloco implemente um membro em funo Simulink baseado em uma curva spline de base, assim chamado devido aos seus forma. Os parmetros a e d localizar a esquerda e direita ou pontos base "Ps" da curva. Os parmetros b e c definir as margens esquerda e direita topo ponto ou "ombros" da curva.

Veja Tambm pimf Probabilistic OR Finalidade Probabilstica ou funo em Simulink Descrio A Probabilistic OU bloquear as sadas para o valor

probabilstico OU vetor sinal de entrada, com base em

y = 1 - prod (1-x)

Veja Tambm probor, Probabilistic Regra Agg Probabilistic Rule Agg Finalidade Probabilstica ou funo, regra agregao mtodo Descrio O artigo Probabilistic Agg bloquear as sadas elemento-wise (.*) probabilstica ou do valor dos insumos com base em dois prod (1 - [a, b]) As duas entradas, a e b, so vetores linha. Veja Tambm probor, Probabilistic OR Prod. Sigmoidal MF Finalidade Produto de dois sigmoids filiao em funo Simulink Descrio A Prod. Sigmoidal MF bloco implemente um membro funo baseado no produto de duas curvas sigmoidal. As duas curvas sigmoidal so dadas por y = 1 -

onde k = 1,2 Os parmetros a1 e a2 controlar as pistas da esquerda e direito curvas. Os parmetros c1 e c2 controlar os pontos de inflexo para a esquerda ea direita curvas. Parmetros A1 e A2 dever ser positivo e negativo, respectivamente. Veja Tambm psigmf S-shaped MF Finalidade S-shaped filiao em funo Simulink Descrio O S-shaped MF bloco implemente um S-shaped filiao funo em Simulink. Indo da esquerda para a direita aumenta a funo dos 0 aos 1. Os parmetros a e b localizar os extremos esquerda e direita do inclinado poro da curva. Veja Tambm SMF Sigmoidal MF Finalidade Filiao em funo sigmoidal Simulink Descrio O sigmoidal MF bloco implemente uma funo sigmoidal filiao dada por

Quando o sinal de uma curva positivo o aumento da esquerda para a direita. Inversamente, quando o sinal de negativo uma curva esquerda diminui a partir de para a direita. O parmetro c define o ponto de inflexo da curva.

Veja Tambm sigmf

Trapezoidal MF Finalidade Trapezoidal filiao em funo Simulink Descrio O trapezoidal MF implementa um bloco de formato trapezoidal filiao funo. Os parmetros d e um conjunto da esquerda e da direita "Ps", ou pontos base, dos trapezoidal. Os parmetros b e c definir o "Ombros", ou incio da trapezoidal. Veja Tambm trapmf Triangular MF Finalidade Triangular filiao em funo Simulink Descrio O MF Triangular implementa um bloco de formato triangular, filiao funo. Os parmetros a e c definir as margens esquerda e direita "ps", ou de base pontos, do tringulo. O parmetro b determina a localizao do tringulo pico. Veja Tambm trimf Z-shaped MF Finalidade Z-shaped filiao em funo Simulink Descrio O Z-shaped MF implementa um bloco Z-shaped filiao funo. Indo da esquerda para a direita diminui a funo de 1 a 0. O parmetros a e b localizar a esquerda ea direita extremos da inclinado poro da curva. Veja Tambm trimf, zmf

Exemplos Utilize esta lista para encontrar exemplos na documentao.

Exemplos introdutria "O Nonfuzzy Abordagem" na pgina 1-12 "A Fuzzy Logic Approach" na pgina 1-16 Jantar para dois, a partir do Topo "Outro Tipping Problem" na pgina 2.30 Exemplos Simulink "Um Exemplo: Nvel da gua Controle" na pgina 2-68 Carrinho pole e simulao "Exemplo: Carrinho Plo e Simulao" na pgina 2-77 Sugeno inferncia fuzzy exemplo "Um exemplo: Duas Linhas", na pgina 2-83 ANFIS editor GUI exemplos "ANFIS GUI Exemplo 1: Verificar Modelo de Dados Ajuda a Validao" na pgina 2-93 "ANFIS editor GUI Exemplo 2: Verificar os dados no valida modelo" na pgina 2-102

Bibliografia

[1] Bezdec, J.C., Pattern Recognition with Fuzzy Objective Function Algorithms, Plenum Press, New York, 1981. [2] Chiu, S., Fuzzy Model Identification Based on Cluster Estimation, Journal of Intelligent & Fuzzy Systems, Vol. 2, No. 3, Spet. 1994. [3] Dubois, D. and H. Prade, Fuzzy Sets and Systems: Theory and Applications, Academic Press, New York, 1980. [4] Jang, J.-S. R., Fuzzy Modeling Using Generalized Neural Networks and Kalman Filter Algorithm, Proc. of the Ninth National Conf. on Artificial Intelligence (AAAI-91), pp. 762-767, July 1991. [5] Jang, J.-S. R., ANFIS: Adaptive-Network-based Fuzzy Inference Systems, IEEE Transactions on Systems, Man, and Cybernetics, Vol. 23, No. 3, pp. 665-685, May 1993. [6] Jang, J.-S. R. and N. Gulley, Gain scheduling based fuzzy controller design, Proc. of the International Joint Conference of the North American Fuzzy Information Processing Society Biannual Conference, the Industrial Fuzzy Control and Intelligent Systems Conference, and the NASA Joint Technology Workshop on Neural Networks and Fuzzy Logic, San Antonio, Texas, Dec. 1994. [7] Jang, J.-S. R. and C.-T. Sun, Neuro-fuzzy modeling and control, Proceedings of the IEEE, March 1995. [8] Jang, J.-S. R. and C.-T. Sun, Neuro-Fuzzy and Soft Computing: A Computational Approach to Learning and Machine Intelligence, Prentice Hall, 1997. [9] Kaufmann, A. and M.M. Gupta, Introduction to Fuzzy Arithmetic, V.N. Reinhold, 1985.

[10] Lee, C.-C., Fuzzy logic in control systems: fuzzy logic controllerparts 1 and 2, IEEE Transactions on Systems, Man, and Cybernetics, Vol. 20, No. 2, pp 404-435, 1990. [11] Mamdani, E.H. and S. Assilian, "An experiment in linguistic synthesis with a fuzzy logic controller," International Journal of Man-Machine Studies, Vol. 7, No. 1, pp. 1-13, 1975. [12] Mamdani, E.H., Advances in the linguistic synthesis of fuzzy controllers, International Journal of Man-Machine Studies, Vol. 8, pp. 669-678, 1976. [13] Mamdani, E.H., Applications of fuzzy logic to approximate reasoning using linguistic synthesis, IEEE Transactions on Computers, Vol. 26, No. 12, pp. 1182-1191, 1977. [14] Schweizer, B. and A. Sklar, Associative functions and abstract semi-groups, Publ. Math Debrecen, 10:69-81, 1963. [15] Sugeno, M., Fuzzy measures and fuzzy integrals: a survey, (M.M. Gupta, G. N. Saridis, and B.R. Gaines, editors) Fuzzy Automata and Decision Processes, pp. 89-102, North-Holland, NY, 1977. [16] Sugeno, M., Industrial applications of fuzzy control, Elsevier Science Pub. Co., 1985. [17] Wang, L.-X., Adaptive fuzzy systems and control: design and stability analysis, Prentice Hall, 1994. [18] Widrow, B. and D. Stearns, Adaptive Signal Processing, Prentice Hall, 1985. [19] Yager, R., On a general class of fuzzy connectives, Fuzzy Sets and Systems, 4:235-242, 1980. [20] Yager, R. and D. Filev, Generation of Fuzzy Rules by Mountain Clustering, Journal of Intelligent & Fuzzy Systems, Vol. 2, No. 3, pp. 209-219, 1994.

[21] Zadeh, L.A., Fuzzy sets, Information and Control , Vol. 8, pp. 338353, 1965. [22] Zadeh, L.A., Outline of a new approach to the analysis of complex systems and decision processes, IEEE Transactions on Systems, Man, and Cybernetics, Vol. 3, No. 1, pp. 28-44, Jan. 1973. [23] Zadeh, L.A., The concept of a linguistic variable and its application to approximate reasoning, Parts 1, 2, and 3, Information Sciences, 1975, 8:199-249, 8:301-357, 9:43-80. [24] Zadeh, L.A., Fuzzy Logic, Computer, Vol. 1, No. 4, pp. 83-93, 1988. [25] Zadeh, L.A., Knowledge representation in fuzzy logic, IEEE Transactions on Knowledge and Data Engineering, Vol. 1, pp. 89-100, 1989.

Adaptive Neuro-Fuzzy Inference System (ANFIS) A technique for automatically tuning Sugeno-type inference systems based on training data. aggregation The combination of the consequents of each rule in a Mamdani fuzzy inference system in preparation for defuzzification. antecedent The initial (or if ) part of a fuzzy rule. consequent The final (or then) part of a fuzzy rule. defuzzification The process of transforming a fuzzy output of a fuzzy inference system into a crisp output. degree of fulfillment See firing strength degree of membership The output of a membership function, this value is always limited to between 0 and 1. Also known as a membership value or membership grade. firing strength The degree to which the antecedent part of a fuzzy rule is satisfied. The firing strength may be the result of an AND or an OR operation, and it shapes the output function for the rule. Also known as degree of fulfillment. fuzzification The process of generating membership values for a fuzzy variable using membership functions. fuzzy c-means clustering A data clustering technique wherein each data point belongs to a cluster to a degree specified by a membership grade. fuzzy inference system (FIS)

The overall name for a system that uses fuzzy reasoning to map an input space to an output space. fuzzy operators AND, OR, and NOT operators. These are also known as logical connectives. fuzzy set A set that can contain elements with only a partial degree of membership. fuzzy singleton A fuzzy set with a membership function that is unity at a one particular point and zero everywhere else. implication The process of shaping the fuzzy set in the consequent based on the results of the antecedent in a Mamdani-type FIS. Mamdani-type inference A type of fuzzy inference in which the fuzzy sets from the consequent of each rule are combined through the aggregation operator and the resulting fuzzy set is defuzzified to yield the output of the system. membership function (MF) A function that specifies the degree to which a given input belongs to a set or is related to a concept. singleton output function An output function that is given by a spike at a single number rather than a continuous curve. In Fuzzy Logic Toolbox, it is only supported as part of a zero-order Sugeno model. subtractive clustering A technique for automatically generating fuzzy inference systems by detecting clusters in input-output training data. Sugeno-type inference A type of fuzzy inference in which the consequent of each rule is a linear combination of the inputs. The output is a weighted linear combination

of the consequents. T-conorm A two-input function that describes a superset of fuzzy union (OR) operators, including maximum, algebraic sum, and any of several parameterized T-conorms Also known as S-norm. T-normA two-input function that describes a superset of fuzzy intersection (AND) operators, including minimum, algebraic product, and any of several parameterized T-norms.

A addmf 2-62 addrule 2-62 addvar 2-65 aggregation 2-20 AND 2-15 anfis 2-86 options 2-114 ANFIS 2-87 anfisedit 2-57 antecedent 2-19 B backpropagation 2-99 C chaotic time series 2-119 checking data 2-89 checking error 2-118 clustering 2-119 clustering algorithms B-3 clustering GUI 2-129 consequent 2-16 convertfis 4-11 D defuzz 4-12 defuzzification 2-17 defuzzify 2-26 degree of membership 2-4 distfcm 2-121 dsigmf 2-11 E

error tolerance 2-99 evalfis 2-63 evalmf 4-17 F fcm (fuzzy c-means) 2-119 findcluster 2-129 FIS 2-29 C-code 2-131 Editor 2-30 files 2-66 generating 2-96 Mamdani-type 2-35 matrix 2-63 saving a FIS 2-51 structure 2-88 Sugeno-type 2-92 See also Sugeno-type inference fuzblock 2-75 fuzzification 2-17 fuzzy 4-25 fuzzy c-means clustering 3-5 4-18 fuzzy clustering 2-114 fuzzy inference system (FIS) 2-3 fuzzy inference system in Simulink 5-2 6-3 fuzzy inference system with Ruleviewer in Simulink 5-2 6-4 fuzzy operators 2-13 fuzzy set 2-4 G gauss2mf 2-11 gaussian 2-11 gaussmf 2-11

gbellmf 2-11 genfis 2-108 genfis1 2-97 genfis2 2-97 gensurf 2-59 getfis 2-55 grid partition 2-96 H hybrid method 2-99 I if-then rules 2-17 antecedent 2-16 implication 2-17 implication 2-17 See also if-then rules initfcm 2-121 L logical operations 2-13 M mam2sug 4-46 Mamdani-style inference B-2 Mamdani-type inference 2-19 max 2-25 membership function 2-7 mf editor 2-99 Membership Function Editor 2-30 membership functions bell 2-11 custom 2-52 Gaussian 2-11 Pi 2-12

S 2-12 sigmoidal 2-11 Z 2-12 MF. See membership function mf2mf 4-47 mfedit 4-49 min 2-28 model validation 2-88 N neuro-fuzzy inference 2-87 newfis 2-62 NOT 2-15 O OR 2-15 P pimf 2-12 plotfis 2-57 plotmf 2-57 probabilistic OR 2-23 probor 2-25 psigmf 2-11 R readfis 2-54 rmmf 2-65 rmvar 2-65 Rule Editor 2-30 rule formats 4-10 Rule Viewer 2-30 ruleedit 4-64 ruleview 4-66 S setfis 2-56

sffis 4-70 showfis 2-56 showrule 4-73 sigmf 2-11 Simulink blocks fuzzy controller with ruleviewer 2-72 Fuzzy Logic Controller 2-69 Simulink, working with 2-68 singleton 2-21 sltank 2-69 smf 2-12 stand-alone C code 2-131 stand-alone fuzzy inference engine 2-131 step size 2-116 structure.field syntax 2-55 subclust 4-78 subtractive clustering 2-96 Sugeno 2-123 Sugeno-type FIS 2-97 See also Sugeno-type inference Sugeno-type inference 2-21 sum 2-25 Surface Viewer 2-30 surfview 4-81 T T-conorm 2-16 T-norm 2-15 testing data 2-89 training data 2-89 training error 2-116 trapezoidal 2-10

trapmf 2-10 trimf 4-85 W writefis 4-87 Z zmf 2-12

You might also like