utilização da lógica nebulosa na educação virtual

Propaganda
Pesquisa Operacional e o Desenvolvimento Sustentável
27 a 30/09/05, Gramado, RS
UTILIZAÇÃO DA LÓGICA NEBULOSA NA EDUCAÇÃO VIRTUAL
Prof. Ms. Thiago Drummond Ribeiro Gonçalves Moreira
UFMA – Av. dos Portugueses, S/N, campus do Bacanga - São Luís – MA - [email protected]
Profa. Dra. Maria Augusta Soares Machado
Faculdades IBMEC – Av. Rio Branco, 108 – Rio de Janeiro – RJ - [email protected]
Resumo: Tradicionalmente, o processo de ensino e aprendizagem utiliza-se da resolução de
problemas para fixação, transmissão e avaliação de conceitos e conhecimentos a respeito de um
domínio. Aprendizagem é o processo de adquirir mudanças relativamente permanentes no
entendimento, na atitude, no conhecimento, na informação, na capacidade e na habilidade através da
experiência. A mudança pode ser deliberada ou involuntária, para melhorar ou piorar. A aprendizagem
é um evento cognitivo interno. Para ajudar esse processo de ensino e aprendizagem, é importante a
utilização de uma ferramenta computacional capaz de estimular essas mudanças. Também é
importante que possam desempenhar papéis como os de avaliar e auxiliar o estudante. Esses papéis
são assumidos por sistemas computacionais chamados Sistemas Tutores Inteligentes. Este artigo
descreve a utilização de técnicas de inteligência artificial como ferramentas de apoio ao ensino.
Através de Sistemas Tutores Inteligentes e a Lógica Nebulosa, o trabalho mostra que o ensino, por
meios eletrônicos, torna-se mais eficiente, mais abrangente e mais adaptado às necessidades e níveis
de conhecimentos dos estudantes, seja em grupo, seja individualmente.
Palavras-Chave: Lógica Nebulosa, Sistemas Tutores Inteligentes, Ensino e Aprendizagem
Abstract: Traditionally, the teaching and learning process uses the problems resolving for fixing,
transmitting and evaluating concepts and knowledge about a subject. Learning is the process of
acquiring relative permanent changes in understanding, attitude, knowledge, information, capacity and
ability through experience. A change can be decided or involuntary, to better or worsen learning. The
learning process is an internal cognitive event. To help this teaching and learning process, it is
important the use of a computer tool able to stimulate these changes. Also, it is important that it can
function as validation and helping tool to the student. These functions are performed by computer
systems called Intelligent Tutoring Systems. This paper describes the use of artificial intelligence
techniques as a teaching support tool. Using Intelligent Tutoring Systems e fuzzy logic, this work
shows, throgh eletronic ways, teaching will be more efficient and more adapted to students necessities,
in group or individually.
Key-Words: Fuzzy Logic, Intelligent Tutoring Systems, Teaching and Learning
1. Introdução
As aplicações educacionais utilizando-se da tecnologia do computador são desenvolvidas
desde os anos 60. Inicialmente, elas foram classificadas como Instrução Assistida por Computador
(CAI, do inglês “Computer-Assisted Instruction”) e utilizavam o paradigma da instrução programada,
cujos métodos educacionais apresentam uma forma expositiva centrada no professor. Primeiramente, o
estudante deve compreender a lição dada pelo professor para, posteriormente, responder alguma
questão e, com isso, reforçar a sua compreensão. Ou seja, o ensino pode ser mais facilmente
provocado através de “programações de reforço”, isto é, compensando o comportamento desejado em
dados momentos (Richmond, 1975).
27 a 30/09/05, Gramado, RS
Pesquisa Operacional e o Desenvolvimento Sustentável
Com o passar do tempo, as perspectivas teóricas dos psicólogos educacionais tenderam a
migrar para a psicologia cognitiva. Segundo Piaget (1973), a maior parte do que uma pessoa aprende é
por iniciativa própria e em interação com a realidade que o cerca. Ele constrói o seu conhecimento.
Essa tendência também é vista no processo de desenvolvimento destes sistemas CAI.
Com a evolução das técnicas de Inteligência Artificial (IA) e das pesquisas no campo das
ciências cognitivas, aumentou-se o grau de “inteligência” dos sistemas CAI. Passaram a ser chamados
de ICAI (“inteligent” CAI) e, mais tarde, conhecidos como Sistemas Tutores Inteligentes. Uma das
principais motivações para as pesquisas em Inteligência Artificial na Educação é o desenvolvimento
de princípios pelos quais os ambientes de aprendizagem computacionais possam ser concebidos como
lugares onde os estudantes possam ter experiências que sejam fundamentais e benéficas para eles, sem
importar suas diferenças individuais, experiências anteriores, ou outras situações cognitivas.
Assim, pela modelagem ou mapeamento do estudante, esses sistemas podem personalizar a
instrução, compatibilizando a apresentação com o nível de conhecimento do estudante e com o seu
índice de aprendizagem. Portanto, a maioria dos sistemas com essas características apresenta métodos
educacionais que proporcionam uma forma de descoberta centrada no estudante, e os diálogos tutoriais
são basicamente determinados pelo conhecimento conceitual e pelo comportamento de aprendizagem
do estudante (Park, 1987).
Psicologia / Pedagogia
(Cognição)
STI
Inteligência
Artificial
(IA)
Treinamento e
Educação
(CAI)
Figura 1: Domínio de aplicações tutores inteligentes
Atualmente, é aceito que qualquer sistema que tenha como objetivo principal a função de
ensinar deve incorporar princípios de IA. Esses sistemas necessitam conhecer o nível de conhecimento
de seus usuários, além de reconhecer em quais pontos do domínio de conhecimento o estudante
evoluiu e em quais pontos continua deficiente.
2. Sistemas tutores Inteligentes
Sistemas especialistas são programas de computador desenvolvidos para adquirir e
disponibilizar o conhecimento de um especialista humano. Os sistemas tutores inteligentes são
sistemas especialistas aplicados à educação. Portanto, tem o objetivo de auxiliar o aprendizado do
estudante simulando um tutor.
547
Pesquisa Operacional e o Desenvolvimento Sustentável
27 a 30/09/05, Gramado, RS
Segundo Fowler (1991), os STIs são programas de computador com propósitos educacionais
e que incorporam técnicas de IA, geralmente utilizando-se da tecnologia dos sistemas especialistas. Os
STIs derivam dos programas CAI e oferecem vantagens sobre estes, porque podem simular o processo
do pensamento humano, dentro de um determinado domínio, para auxiliar em estratégias nas soluções
de problemas ou nas tomadas de decisões.
Segundo Pozzebon & Barreto (2002), os sistemas tutores inteligentes derivam dos programas
CAI (Compited Aided Instruction), que tentam implementar um modelo genérico que possa servir para
o ensino a qualquer estudante.
Nas pesquisas em qualquer tipo de sistema educacional envolvendo princípios de IA, a
abordagem é um pouco diferente daquela da engenharia de conhecimento na qual os especialistas
devem representar, em um determinado domínio, suas estratégias de decisões na forma de programas.
Ao invés disto, o propósito principal é captar o conhecimento necessário que permita aos especialistas
compor uma interação educacional. Em vez das decisões resultarem de algum conhecimento, é o
próprio conhecimento que é explicitamente representado de modo que possa ser utilizado. Portanto,
também é responsabilidade dos programas, compor interações educacionais dinamicamente.
Segundo Jonassen (1993), um STI deve passar em três testes antes de ser considerado
“inteligente”:
1. O conteúdo do tema ou especialidade deve ser codificada de modo que o sistema possa
acessar as informações, fazer inferências ou resolver problemas.
2. O sistema deve ser capaz de avaliar a aquisição deste conhecimento pelo estudante.
3. As estratégias tutoriais devem ser projetadas para reduzir a discrepância entre o
conhecimento do especialista e o conhecimento do estudante.
Ainda, é possível observar:
“[...] os STI são programas que modificam suas bases de conhecimento, percebem as
intervenções do aluno e são dotados da capacidade de aprender e adaptar suas
estratégias de ensino mediante a interação com o aluno.” (Vaccari apud Schmitz,
López, Faraco & Rosatelli, 2002, p. 3).
Os STIs são formados, basicamente por quatro módulos.
O modelo do especialista ou modelo de domínio, contém o conhecimento armazenado do
especialista na matéria a ser ensinada. Esse conhecimento é adquirido a partir do especialista,
devendo, portanto, ser transferido para o aluno (Schmitz, López, Faraco & Rosatelli, 2002). É
fundamentalmente uma base de conhecimento contendo informações de um determinado domínio, que
é organizada, de alguma maneira para representar o conhecimento de um especialista ou professor
(Pozzebon & Barreto, 2002).
O modelo do tutor ou modelo pedagógico é responsável por adotar diferentes maneiras de
expor um assunto, tornando-o compreensível e interessante. Na comunicação de um corpo de
conhecimento para uma pessoa, diferentes estratégias e técnicas são selecionadas e combinadas
dinamicamente em reação às atitudes e necessidades dos estudantes (Pozzebon & Barreto, 2002).
O modelo do estudante contém as informações referentes a cada estudante que faz uso do
sistema. Essas informações estão relacionadas com o nível de conhecimento do estudante sobre a
matéria e o seu ritmo de aprendizagem (Schmitz, López, Faraco & Rosatelli, 2002). A característica
principal deste modelo deve contemplar todos os aspectos do conhecimento e do comportamento do
548
27 a 30/09/05, Gramado, RS
Pesquisa Operacional e o Desenvolvimento Sustentável
estudante que tragam conseqüências para o seu desempenho e aprendizagem (Pozzebon & Barreto,
2002). Talvez, este seja o módulo mais importante de um STI. É a partir das informações contidas
nesse modelo que todas as estratégias, conteúdos são expostos para o alunos através do modelo tutor.
O módulo de interface é o canal de comunicação entre o STI e o estudante (Schmitz, López,
Faraco & Rosatelli, 2002). Na engenharia de software, a interface do usuário tem sido a primeira
preocupação dos projetistas quando estão discutindo a criação de uma nova aplicação pois, como
afirmam Hix e Hartson, “Para os usuários, a interface é o próprio sistema.” (Pozzebon & Barreto,
2002).
Especialista
Interface
Especialista
Modelo
de Domínio
Estudante
Interface
Estudante
Diagnóstico
Modelo
do Estudante
Modelo
Pedagógico
Figura 2: Arquitetura básica de um STI
Através dessa arquitetura, vê-se que o estudante tem maiores possibilidades ter um ensino
personalizado. Ao professor caberá tirar dúvidas, por ventura não solucionadas pelo STI e apoiar o
estudante. Abaixo são apresentadas algumas vantagens de sistemas tutores inteligentes.
“Primeiro, o computador tem mais facilidade para reter a informação e ministrá-la
de uma maneira sistemática, meticulosa e completa. O computador jamais se
esquece de um detalhe, se isso estiver especificado no seu programa. Uma dor de
cabeça ou um problema familiar jamais altera a sua performance. Segundo, essa
capacidade de sistematização do computador permite um acompanhamento do aluno
em relação aos erros mais freqüentes e à ordem de execução das tarefas. Muitas
vezes o professor tem muita dificuldade em realizar esse acompanhamento que pode
ser feito pelo computador de uma maneira muito mais detalhada. Terceiro, os
sistemas computacionais apresentam hoje diversos recursos de multimídia, como
cores, animação e som.” [...] (Valente, p. 20)
3. STI Multiagentes
Quando se fala em ensino a distância, alguns autores afirmam ser este o responsável por uma
massificação sem qualidade da educação. Segundo Batista (2001): “A educação fast food, viabilizada
por meio de pacotes de ensino prescritivo e descartável, encaixa-se na lógica da pronta entrega.
Automatiza e acelera a oferta de serviços pelo mercado educacional” (p. 96).
549
Pesquisa Operacional e o Desenvolvimento Sustentável
27 a 30/09/05, Gramado, RS
Como visto anteriormente, os sistemas tutores inteligentes são especialmente importantes na
personalização do ensino do aluno. Ao se juntar essa idéia dos STIs à internet, pode-se produzir um
ensino a distância de maior qualidade. Para tal, começou-se a pensar em uma nova arquitetura de
sistemas tutores inteligentes, onde ao mesmo tempo que fosse individualizado às necessidade de cada
estudante também deveria ser coletivo e colaborativo com outros aprendizes.
A novidade é o desenvolvimento de ambientes distribuidos multiagentes interativos. Um
agente pode ser definido como uma entidade (humana ou artificial) física ou abstrata que executa uma
ação sobre algo, seja sobre si ou sobre seu ambiente, produzindo um efeito (Ferber apud Sichman,
1992).
Neste ambiente, os alunos são divididos em grupos distintos no ambiente que são chamados
de áreas cooperativas. Basicamente, ocorrem dois tipos de interações, a interação intragrupo, onde os
estudantes cooperam e aprendem interagindo dentro de seus próprios grupos com os agentes artificiais
e com o professor, e a interação intergrupo, que pode ocorrer entre os outros alunos nos diversos
grupos existentes. e estas interações se dão através da utilização de recursos multimídia e da
tecnologia de redes, intranets e internet.
Abaixo, temos a descrição da arquitetura de um ambiente multiagente de ensino:
Agente Tutor participa de todas as atividades de ensino e avaliação. É quem controla as interações
dos grupos com o sistema durante o processo de ensino / aprendizagem. É responsável também pela
apresentação do conhecimento aos aprendizes.
Agentes de Domínio são detentores de um certo conhecimento, representando um especialista. É
responsável pelo armazenamento e representação de um conhecimento específico, sendo esta a única
característica que diferencia um Agente de Domínio de outro.
Agentes de Modelagem do Aprendiz é responsável pelo processo de aquisição, representação e
manutenção de informações sobre alunos e grupos durante o processo de ensino / aprendizagem.
Agente Estratégico é responsável pela definição das estratégias pedagógicas a serem adotadas pelo
Agente Tutor a partir da interação com o Agente Modelagem do Aprendiz, e após observar o
comportamento de cada aprendiz, ou seja, é quem decide o que, quando e o conteúdo que será
apresentado aos alunos.
Agente de Busca tem como objetivo apresentar para o aprendiz informações personalizadas que
possam ajudá-lo a tirar suas dúvidas. Um conjunto de agentes inteligentes móveis é instanciado para
acessar recursos de dados remotos.
Agente Professor é um agente humano que destacam-se por realizar papeis de orientador, avaliador e
especialista.
Agentes Aprendizes são os usuários alvo do sistema. O bom desempenho deles é o alvo a ser
alcançado.
Agente Engenheiro do Conhecimento é responsável por fazer a manutenção dos Agentes de
Domínio, o que inclui a edição do conhecimento de cada um deles e a organização de seus domínios.
550
Pesquisa Operacional e o Desenvolvimento Sustentável
27 a 30/09/05, Gramado, RS
Figura 3: Arquitetura STI Multiagente
4. Lógica Nebulosa
Há mais ou menos 2000 anos, utiliza-se a lógica booleana (onde uma expressão só pode
assumir dois valores, verdadeiro ou falso) como forma de modelagem de problemas matemáticos. A
modelagem computacional convencional utiliza esse conceito de bivalência e, portanto, não consegue
trabalhar com ambigüidades (Mukaidono apud Costa et al., 2000, p. 1).
Tentando aproximar a modelagem matemática e os problemas do mundo real, Zadeh
reconheceu as muitas possibilidades existentes entre o verdadeiro e o falso e desenvolveu, em 1965,
uma variação da lógica tradicional, a lógica nebulosa. Ao contrário da lógica booleana, a lógica
nebulosa (ou difusa) é multivalorada e trabalha com afirmações parcialmente verdadeiras e
parcialmente falsas ao mesmo tempo. Nesse contexto, a lógica booleana passa a ser um caso particular
da lógica nebulosa (Barbalho, 2001, p. 20).
Como exemplo, pode-se apresentar o problema para identificar pessoas com estatura média.
Se se considerar tais pessoas com altura entre 1,60 e 1,70 metros, a lógica booleana não conseguiria
identificar as pessoas com 1,59 metro como pertencentes a este grupo. Já a lógica nebulosa
identificaria essa pessoa como pertencente ao grupo, porém com um grau de certeza menor que outra
pessoa com 1,65 metro.
Portanto, pode-se definir lógica nebulosa como sendo uma ferramenta capaz de capturar
informações vagas, em geral descritas em linguagem natural, e convertê-las para o formato numérico,
de fácil manipulação (Wagner apud Costa et al., 2003, p. 3). Seu objetivo é capturar os diferentes
graus de verdade existentes para as situações da vida real e modelar essas situações de uma forma
matemática.
4.1. Conjuntos Nebulosos
Na teoria clássica dos conjuntos, esses podem ser definidos de forma bastante simples. São
uma coleção de objetos que possuem determinada característica em comum. Esses objetos podem ser
números, palavras, conceitos, qualquer coisa e possuem apenas duas formas de se relacionar com o
conjunto: ou pertencem ou não pertencem ao conjunto.
Ao se analisar o problema da estatura média descrito anteriormente, pode-se verificar que
pessoas com 1,59 ou 1,71 metros não pertenceriam ao conjunto de pessoas com estatura média, já que
551
27 a 30/09/05, Gramado, RS
Pesquisa Operacional e o Desenvolvimento Sustentável
esse conjunto engloba apenas pessoas com estatura entre 1,60 e 1,70 metros. Embora, por razões
óbvias, devessem pertencer ao conjunto.
Zadeh, ao formular a teoria dos conjuntos nebulosos, baseou-se na teoria dos conjuntos
clássicos e apresenta aquele como uma generalização deste. Os conjuntos nebulosos também são
definidos sobre um domínio (Universo de Discurso), mas diferem daqueles por não possuírem uma
fronteira claramente definida (Zadeh apud Barbalho, 2001, p. 20). Tentam traduzir, através de
representações matemáticas formais, as informações imprecisas do mundo real.
A idéia central é a de que um elemento pertence a um conjunto com um certo grau de
pertinência. Na teoria, esse grau é apresentado como Função de Pertinência. Essa função mapeia cada
elemento do universo com um número entre 0 e 1 (na teoria clássica, esse grau de pertinência assume
somente os valores 0 ou 1). Dessa forma, as proposições não são mais somente verdadeiras ou falsas,
mas sim vão desde totalmente falsas até totalmente verdadeiras, passando por parcialmente falsas e
parcialmente verdadeiras.
4.1.1. Função de Pertinência
Segundo Klir et al. (1997), cada conjunto nebuloso, A, é definido em termos de relevância a
um conjunto universal, X, por uma função denominada de função de pertinência, associando a cada
elemento x um número, A(x), no intervalo fechado [0,1] que caracteriza o grau de pertinência de x em
A. A função de pertinência tem a forma: A: X [0, 1].
Shaw (1999) afirma que uma função de pertinência é uma função numérica que atribui graus
de pertinência para valores discretos de uma variável, em seu universo de discurso.
Segundo Barbalho (2001), qualquer função que mapeie o domínio U no intervalo [0,1] pode
ser utilizada como função de pertinência. Na prática, entretanto, as formas triangular e trapezoidal
(figura abaixo), pela simplicidade de representação, são as mais freqüentemente utilizadas.
Graus de Pertinência
Graus de Pertinência
Função Pertinência
Triangular
1
0.8
0.6
0.4
0.2
0
0
0.5
1.0
1.5
2.0
Função Pertinência
Trapezoidal
1
0.8
0.6
0.4
0.2
0
0
0.5
1.0
1.5
2.0
Figura 4: Funções de Pertinência
4.2. Sistemas Baseados em Regras Nebulosas
A maioria dos sistemas computacionais tem o seu conhecimento representado através de
regras que ditam a maneira como ele deve agir. Essa representação é utilizada desde os programas de
computador mais simples até os sistemas mais modernos, como um STI.
Com os sistemas que utilizam a lógica nebulosa não é diferente. Seus comportamentos,
também, são ditados por regras. Porém, as regras utilizadas por eles são ditas nebulosas.
As regras nebulosas caracterizam-se por uma expressão condicional da forma: SE
<antecedente – expressão nebulosa> ENTÃO <conseqüente – expressão nebulosa>
552
27 a 30/09/05, Gramado, RS
Pesquisa Operacional e o Desenvolvimento Sustentável
Segundo Barbalho (2001), o antecedente é formado por uma proposição simples ou uma
combinação de proposições e descreve condições verificadas pela regra. E o conseqüente descreve
uma ação a ser tomada no caso de todas as proposições do antecedente serem atendidas. A
combinação de proposições é feita através dos operadores lógicos “E” e “OU”.
Um exemplo: “SE homem muito alcoolizado E idade menor que 18 anos ENTÃO contatar
juizado de menores”.
4.3. Sistemas de Inferências Nebulosas
Segundo Wagner (apud Costa et al., 2003), os sistemas de inferências nebulosas são sistemas
baseados em regras que utilizam as variáveis lingüísticas nebulosas (conjuntos nebulosos) para
executar um processo de tomada de decisão.
Servem para representar a interdependência entre as variáveis independentes (entrada) e
dependentes (saída) de um sistema real. A base desses sistemas é um conjunto de regras condicionais
nebulosas, que deve ser definido a partir de um mesmo conjunto de premissas (variáveis
independentes), com respostas pertencentes a um mesmo domínio (Bárdossy apud Barbalho, 2001).
Esses sistemas, em geral, são baseados em um conjunto de regras (base de conhecimento) do
tipo SE–ENTÃO que descrevem a dependência entre as variáveis lingüísticas de entrada e saída.
Segundo Barbalho (2001), um sistema de inferências nebulosas, a partir de valores
conhecidos das variáveis de entrada, pode realizar inferências sobre esses dados e obter os valores das
variáveis de saída. Neste processo, as regras são inferidas paralelamente, não importando a ordem em
que estas são realizadas. A interpretação ou inferência de cada regra consiste na avaliação das
proposições antecedentes (premissas), seguida da aplicação das conseqüências. A seguir, a figura
demonstra o funcionamento do processo.
BASE DE CONHECIMENTO
BASE DE
DADOS
BASE DE
REGRAS
ENTRADA
SAÍDA
FUZZYFICAÇÃO
DEFUZZYFICAÇÃO
UNIDADE LÓGICA
DE DECISÃO
Figura 5: Sistema de Inferências Nebulosas
4.3.1. Fuzzyficação
Os sistemas de inferências nebulosas trabalham com informações imprecisas e/ou termos
vagos da linguagem natural. Porém, quando se trabalha com dados de entrada de sistemas
computacionais, estes, geralmente, são valores numéricos informados ao sistema.
Por exemplo, um sistema que tem por objetivo monitorar as condições de um tanque de
armazenamento de combustível e tomar alguma ação dependendo delas, utilizando, para isso, dados de
553
Pesquisa Operacional e o Desenvolvimento Sustentável
27 a 30/09/05, Gramado, RS
temperatura e pressão. Quando os dados são enviados ao sistema, os mesmos informam valores
numéricos de temperatura e pressão.
Como os sistemas nebulosos trabalham com termos lingüísticos, há a necessidade de
transformar esses dados de entrada em conjuntos nebulosos. Portanto, é executado um mapeamento
dos dados de entrada (em geral números discretos) em números nebulosos. É o processo de
fuzzyficação.
Para que haja essa transformação, os valores numéricos dados para cada variável de entrada
são avaliados contra as funções de pertinência associadas à variável correspondente, resultando o grau
de pertinência de cada valor nos termos lingüísticos correspondentes (Barbalho, 2001).
No exemplo anterior, o valor de 35º C da variável de entrada temperatura, ao ser convertido,
poderia ser representado pelo valor nebuloso normal e possuir um grau de pertinência, por exemplo,
0.7, associado a ele.
4.3.2. Processo de Inferência
O processo de inferência, também chamado de lógica de tomada de decisão, é o responsável
por avaliar as variáveis de entrada aplicando as regras da base de conhecimento e atribuindo respostas
ao processamento. Consiste de três etapas: a Avaliação de Premissas; Implicação; e Agregação de
Conseqüências.
Após, a nebulização das variáveis de entrada, as regras nebulosas são avaliadas uma a uma e
calculam-se os graus de pertinência de cada proposição. A cada combinação de proposições (de cada
regra), é aplicada uma função (dependendo do operador lógico usado na combinação das proposições)
para produzir um número entre 0 e 1 que representa o grau com que a expressão condicional da regra é
satisfeita (grau de aplicabilidade da regra).
As funções mais comumente aplicadas nesse processo são: a função de máximo, para o
operador “OU”, e a função de mínimo, para o operador “E”. Esta etapa constitui a Avaliação de
Premissas.
Segundo Barbalho (2001), a Implicação consiste em calcular as conseqüências das regras,
cujas condições são satisfeitas com algum grau, com base nos respectivos graus de aplicabilidade. Nos
casos em que as regras possuem mais de uma conseqüência, todas as conseqüências são igualmente
afetadas pelo grau de aplicabilidade.
Quando o sistema de inferências nebulosas trata as variáveis de entrada e verifica as regras
aplicáveis, geralmente, encontra-se mais de uma regra aplicável. Porém, é necessário gerar uma única
resposta para cada variável de saída. A Agregação de Conseqüências consiste em agregar, ou
combinar, as conseqüências obtidas pela inferência dessas regras (Barbalho, 2001). Mais
freqüentemente, essa agregação é feita utilizando-se a função de máximo que corresponde à união dos
conjuntos nebulosos.
4.3.3. Defuzzyficação
Após o processo de inferência nebulosa, obtém-se um conjunto nebuloso como resposta.
Porém, muitas vezes esse conjunto não é suficiente como resposta do sistema, sendo necessário uma
representação numérica mais adequada da resposta nebulosa. É o processo de defuzzyficação.
Tomando-se, novamente o exemplo do sistema que monitora o tanque de combustível. Em
algum momento, é provável que seja necessário a transformação da resposta nebulosa em um número
discreto que represente o acionamento do alarme, por exemplo.
554
Pesquisa Operacional e o Desenvolvimento Sustentável
27 a 30/09/05, Gramado, RS
Barbalho (2001), apresenta os esquemas de representação numérica de conjuntos difusos
mais utilizados:
•
•
•
•
Primeiro dos Máximos: seleciona o primeiro elemento entre aqueles que têm o máximo
grau de pertinência.
Último dos Máximos: seleciona o último elemento entre aqueles que têm o máximo grau
de pertinência.
Média dos Máximos: calcula a média dos elementos que tem o máximo grau de
pertinência.
Centróide: escolhe o elemento central (centro de gravidade) da área definida pelo
conjunto nebuloso.
4.4. Projetos Interessantes
Existem várias exemplos de aplicações da Lógica Nebulosa, tanto no ambiente acadêmico
quanto no ambiente comercial. Alguns exemplos interessantes de aplicações comerciais podem ser
conferidos abaixo:
“Câmeras de Vídeo – o controle de foco e abertura do diafragma de câmeras pode
ser obtido através da lógica fuzzy, garantindo assim uma melhor qualidade das
imagens obtidas e permitindo equipamentos mais simples e baratos; e Máquinas de
Lavar Roupa – o controle dos ciclos da máquina é obtido através do sensoreamento
de diversas características para a lavagem, como a temperatura da água, peso das
roupas e grau de sujeira. Aplicando-se o conhecimento empírico humano a um
controlador fuzzy é possível obter a lavagem das roupas garantindo-se melhor
utilização do equipamento” (Ferreira & Paranhos, 2004).
Ainda, segundo Ferreira & Paranhos (2004), pode-se citar o caso do ar condicionado
industrial projetado pela Mitsubishi. Este utiliza 25 regras de aquecimento e 25 regras de
refrescamento. Um sensor de temperatura fornece a entrada, com o controle da saída alimentado por
um inversor, uma válvula compressora, e um ventilador. Comparado com o projeto anterior, o
controlador fuzzy aquece e esfria 5 vezes mais rápido reduz o consumo de potência em 24%,
incrementa a estabilidade da temperatura por um fator de 2, e usa menos sensores.
Outro exemplo interessante da utilização da lógica nebulosa é relatado por Tourino (2000).
Através de um projeto do laboratório GRACO, na Universidade de Brasília, foi desenvolvido um
sistema de guiagem para o robô XR4000 por meio de teleoperação através da Internet, voltado para a
inspeção de tubulações soldadas.
Para o robô possuir autonomia ao se movimentar, é necessário o mesmo ser dotado de uma
câmera e ser capaz de analisar as imagens e tomar decisões em relação aos obstáculos. Portanto, uma
aplicação simples de controle de velocidade é necessário, de forma a se garantir uma velocidade de
movimentação do robô adequada. Para um ambiente livre de obstáculos é possível o aumento da
velocidade, enquanto que para um ambiente congestionado deve-se utilizar menores velocidades para
que se evite a colisão ou se minimize os efeitos de uma colisão acidental. A lógica nebulosa é utilizada
como forma de controle de velocidade do robô móvel, baseando a velocidade de saída na distância a
ser percorrida (definida pelo usuário) e na distância dos obstáculos presentes no ambiente (aleatórios e
transientes).
O sistema de movimentação do robô possui sensores que disponibilizam ao usuário o estado
atual de seus atuadores, ou seja, posição, velocidade e aceleração. Para a análise do controlador fuzzy
555
Pesquisa Operacional e o Desenvolvimento Sustentável
27 a 30/09/05, Gramado, RS
desenvolvido utilizou-se dos dados de velocidade do sistema, assim como de dados do relógio interno
do robô.
Apesar de experimentos mostrarem que o controlador fuzzy é sensível aos dados obtidos
através dos sensores ultrasônicos do robô (o que leva à necessidade de se desenvolver uma espécie de
filtro de dados sensoriais para obter uma maior estabilidade e confiabilidade no sistema de controle de
velocidade), o sistema já mostra utilidade da Lógica Nebulosa no desenvolvimento do projeto.
5. Aplicações Educacionais
A resolução de problemas como forma de transmissão de conceitos e avaliação do
aprendizado é amplamente utilizada. Portanto, uma ferramenta como essa não poderia deixar de estar
presente nos sistemas tutores inteligentes.
Para que um STI trabalhe com resolução de problemas, é importante o mesmo adotar um
banco de dados de problemas (contendo tanto soluções dos professores, quanto soluções obtidas pelos
estudantes). A partir desse banco de problemas, o sistema terá de propor problemas para o aprendiz,
baseado em seu nível de conhecimento, no assunto abordado, suas preferências e no nível de
dificuldade do problema. É necessário, ainda que o sistema possua mecanismos de avaliação dos
problemas resolvidos. Essas atribuições cabem a um agente (assistente de resolução de problemas) do
STI.
Esse agente, através de comunicações com o agente tutor, adquire as informações
necessárias a respeito do estudante, como nível de conhecimento, preferências pessoais, assunto
abordado, entre outros, e é capaz de melhor propor problemas condizentes com a realidade do
aprendiz.
A tarefa de avaliação desses problemas é feita utilizando-se a lógica nebulosa. Esta, através
de informações como nível de dificuldade do problema, nível de conhecimento do estudante, variáveis
de entrada e dados do problema, entre outras terá condições de inferir um conceito para o problema
resolvido ou mesmo aplicar uma nota.
6. Conclusões
Quando se fala em educação, é quase unanimidade afirmar que é através dela que um país
tem condições de se desenvolver. Por isso, é importante o desenvolvimento de ferramentas que ajudem
no processo educacional. As pesquisas nessa área têm crescido bastante nos últimos anos. Toda
contribuição é importante para o desenvolvimento de sistemas educacionais eficazes.
As aplicações da lógica nebulosa no campo da educação são bastante promissoras. A
integração dessa com tecnologias de outras técnicas de inteligência artificial está tornando o ensino
tradicional e à distância cada vez mais adaptável às necessidades dos estudantes. É essa realidade que
permitirá cada vez mais um ensino de qualidade, sem fronteiras e centrado no estudante.
Referências Bibliográficas
BARBALHO, Valéria Maria de Souza. Sistemas baseados em conhecimento e lógica difusa para
simulação do processo chuva-vazão. 2001. 77 f. Tese (Doutorado em Engenharia Civil) –
Faculdade de Engenharia Civil, Universidade Federal do Rio de Janeiro, Rio de Janeiro.
COSTA, Alex da; RODRÍGUEZ, Antonio Gabriel; SIMAS, Etiene P. Lazzeris; ARAÚJO, Roberto
Silva. Lógica fuzzy: conceitos e aplicações. In: WORKSHOP DE SOFTWARE LIVRE, 4., 2003,
Porto Alegre (RS). Anais Eletrônicos... Porto Alegre, 2003. Disponível em:
<http://www.inf.unisinos.br/~cazella/dss/fuzzy_relatorio.pdf>. Acesso em: 16 mar. 2004.
556
Pesquisa Operacional e o Desenvolvimento Sustentável
27 a 30/09/05, Gramado, RS
FERREIRA, André Luís G. & PARANHOS, João Paulo de S. Controle em tempo real por
lógica fuzzy. 2004. Relatório Final (Graduação em Engenharia Elétrica/Eletrônica) –
Faculdade de Engenharia, Associação Educacional Dom Bosco, Resende. Disponível em:
<http://www.aedb.br/faculdades/eng/disciplinas/ano6/ProjetoFinal2004.pdf>.
Acessado
em: 08 jul. 2005.
PARK, O.; PEREZ, S.; SEIDEL, F. J. Intelligent CAI: Old Wine in New Bottles or a New Vintage ?,
em KEARSLEY, G., “Artificial Intelligence and Instruction - Applications and Methods”, p. 11-45.
1987.
POZZEBON, E.; BARRETO, J. Inteligência artificial no ensino com tutores inteligentes. Revista de
divulgação científica e cultural – Revista da Editora da UINIPLAC, Florianópolis, vol. 5, nº 1 e 2,
semestral,
pág
141-162,
ISSN
1415-7896,
dez.
2002.
Disponível
em
<http://www.das.ufsc.br/~eliane/artigos/pozzebon02l.pdf>. Acesso em: 03 jun. 2003.
PIAGET, Jean. Estudos Sociológicos. São Paulo: Editora Forense,1973.
SCHMITZ, Ademar; LÓPEZ, Oscar Ciro; FARACO, Rafael Ávila; ROSATELLI, Marta Costa.
Ferramenta de autoria de sistema tutores inteligentes construindo o modelo do domínio do
conhecimento com redes semânticas. In: CONGRESSO BRASILEIRO DE COMPUTAÇÃO, 2.,
2002, Vale do Itajaí (SC). Anais Eletrônicos... Vale do Itajaí, 2002. Disponível em:
<http://www.cbcomp.univali.br/pdf/2002/ine012.pdf>. Acesso em: 15 jul. 2003.
SHAW, Ian S.; SIMÕES, Marcelo G. Controle e Modelagem Fuzzy. São Paulo: Edgard Blücher,
1999.
TOURINO, Sérgio Roberto Gonsalves. Guiagem do robô móvel XR4000 para inspeção via
internet de tubulações industriais soldadas. 2000. Relatório Final (Graduação em
Engenharia Mecânica) – Faculdade de Tecnologia, Universidade de Brasília, Brasília.
Disponível em: <http://www.graco.unb.br/~tourino/xr4000f/final.html>. Acessado em: 08
jul. 2005.
VALENTE, José A. O uso inteligente do computador na educação. Pátio – Revista da Editora Artes
Médicas Sul, vol. 1, nº 1, p.10-21, jan. 1997.
557
Download