UNIVERSIDADE DO VALE DO ITAJAÍ
CENTRO DE EDUCAÇÃO SUPERIOR DE CIÊNCIAS
TECNOLÓGICAS, DA TERRA E DO MAR
CURSO DE CIÊNCIA DA COMPUTAÇÃO
SISTEMA PARA RECONHECIMENTO DE PLANTAS BIOATIVAS
Área de Inteligência Artificial
Antônio Amaury Silva Neto
Itajaí (SC), julho de 2004
UNIVERSIDADE DO VALE DO ITAJAÍ
CENTRO DE EDUCAÇÃO SUPERIOR DE CIÊNCIAS
TECNOLÓGICAS, DA TERRA E DO MAR
CURSO DE CIÊNCIA DA COMPUTAÇÃO
RELATÓRIO DO TRABALHO DE CONCLUSÃO DE CURSO II
SISTEMA PARA RECONHECIMENTO DE PLANTAS BIOATIVAS
Área de Inteligência Artificial
Antônio Amaury Silva Neto
Relatório apresentado à Banca
Examinadora do Trabalho de Conclusão
do Curso de Ciência da Computação para
análise e aprovação
Itajaí (SC), julho de 2004
EQUIPE TÉCNICA
Acadêmico
Antônio Amaury Silva Neto
Professor Orientador
Anita Maria da Rocha Fernandes, Dra.
Co-orientador
Antônio Amaury Silva Júnior, M.Sc.
Coordenadores dos Trabalhos de Conclusão de Curso
Anita Maria da Rocha Fernandes, Dra.
Cesar Albenes Zeferino, Dr.
Coordenador do Curso
Luis Carlos Martins, Esp.
i
DEDICATÓRIA
Dedico esse trabalho aos meus
pais, que são os meus grandes
incentivadores.
ii
AGRADECIMENTOS
Agradeço a:
Deus, por estar me proporcionando diversas oportunidades e pela minha existência.
Aos meus pais, que suportaram meus momentos de impaciência e escutaram todas minhas
preocupações.
A minha orientadora Anita Maria da Rocha Fernandes pela extrema dedicação e empenho ao
trabalho, e pela grande orientação que foi a mim oferecida.
Aos meus colegas, pelo convívio durante essa difícil jornada.
iii
SUMÁRIO
LISTA DE ABREVIATURAS E SIGLAS.............................................................. vii
LISTA DE FIGURAS ..............................................................................................viii
LISTA DE TABELAS................................................................................................ ix
RESUMO .................................................................................................................... xi
ABSTRACT ............................................................................................................... xii
I - INTRODUÇÃO ...................................................................................................... 1
1. APRESENTAÇÃO.................................................................................................. 1
2. JUSTIFICATIVA.................................................................................................... 1
3. IMPORTÂNCIA ..................................................................................................... 1
4. OBJETIVOS ............................................................................................................ 2
4.1. Objetivo Geral .............................................................................................................................2
4.2. Objetivos Específicos...................................................................................................................2
5. METODOLOGIA ................................................................................................... 3
II - REVISÃO BIBLIOGRÁFICA ............................................................................ 4
1. PLANTAS BIOATIVAS......................................................................................... 4
1.1. Identificação de Plantas Bioativas .............................................................................................6
1.2. Sistemática de Plantas Bioativas................................................................................................7
1.3. Sistemas de Classificação............................................................................................................7
1.4. Sistemas de Cronquist e Engler .................................................................................................8
1.5. Unidades de Classificação...........................................................................................................8
2. INTELIGÊNCIA ARTIFICIAL............................................................................ 9
2.1. Conceito......................................................................................................................................10
3. RACIOCÍNIO BASEADO EM CASOS ............................................................. 11
iv
3.1. Histórico .....................................................................................................................................13
3.2. Representação dos Casos ..........................................................................................................14
3.3. Indexação ...................................................................................................................................15
3.4. Recuperação de Casos...............................................................................................................16
3.4.1. Matching e Ranking .................................................................................................................18
3.5. Adaptação ..................................................................................................................................19
3.6. Aprendizagem............................................................................................................................19
3.7. Exemplos de Aplicações de RBC para a área de Meio Ambiente.........................................20
3.7.1. Sistema para o Plantio de Árvores Frutíferas...........................................................................20
3.7.2. A Identificação das Não-Conformidades (NC) Ambientais nas Empresas..............................21
4. LÓGICA DIFUSA................................................................................................. 21
4.1. Introdução..................................................................................................................................21
4.2. Arquitetura de um Sistema Difuso ..........................................................................................25
III - DESENVOLVIMENTO ................................................................................... 27
1. ARQUITETURA DO SISTEMA......................................................................... 28
2. MODELAGEM DO SISTEMA ........................................................................... 30
2.1. Modelo Entidade Relacionamento (MER)..............................................................................30
2.2. Dicionário de Dados ..................................................................................................................33
2.2.1. Descrição das Tabelas de Dados ..............................................................................................33
2.2.2. Descrição dos Atributos das Tabelas .......................................................................................34
2.3. Diagrama de Contexto ..............................................................................................................39
2.4. Diagrama de Fluxo de Dados (DFD’s).....................................................................................40
2.5. Especificação de Processos .......................................................................................................40
2.5.1. Processo 1 – Consultar Bioativas .............................................................................................41
2.5.2. Processo 2 - Manter Pesquisadores ..........................................................................................41
2.5.3. Processo 3 - Manter Bioativas..................................................................................................41
3. O Modelo Difuso.................................................................................................... 41
4. O Modelo de RBC ................................................................................................. 43
5. Descrição das Telas do Sistema Proposto ........................................................... 43
v
IV - CONCLUSÕES E RECOMENDAÇÕES ....................................................... 49
BIBLIOGRAFIA ....................................................................................................... 50
GLOSSÁRIO ............................................................................................................. 53
ANEXOS .................................................................................................................... 54
vi
LISTA DE ABREVIATURAS E SIGLAS
BD
Banco de Dados
CBR
Case-Based Reasoning
DFD
Diagrama de Fluxo de Dados
ER
Entidade-Relacionamento
IA
Inteligência Artificial
PHP
Personal Home Page
MER
Modelo Entidade-Relacionamento
NC
Não-Conformidades
RBC
Raciocínio Baseado em Casos
SGA
Sistema de Gestão Ambiental
SQL
Structured Query Language (Linguagem estruturada de consulta)
TCC
Trabalho de Conclusão de Curso
vii
LISTA DE FIGURAS
Figura 1 - O Ciclo do RBC.................................................................................................................12
Figura 2 – Exemplo de uma representação atributo-valor. ................................................................15
Figura 3 - Caso descritivo de ambigüidade para uma taça pela metade. ...........................................23
Figura 4 - Conceito de estatura “Alta” e “Baixa”. .............................................................................24
Figura 5 – Conjuntos difusos relativos à temperatura........................................................................25
Figura 6 – Fluxo de dados num sistema baseado em lógica difusa....................................................25
Figura 7 – Arquitetura proposta para o sistema. ................................................................................28
Figura 8 – Diagrama de Entidade-Relacionamento Modelo Lógico..................................................31
Figura 9 – Diagrama de Entidade-Relacionamento Modelo Físico. ..................................................32
Figura 10 – Diagrama de Contexto. ...................................................................................................40
Figura 11 – Diagrama de Fluxo de Dados..........................................................................................40
Figura 12 – Distribuição da Variável Tamanho do Caule..................................................................42
Figura 13 – Distribuição da Variável Tamanho da Semente. ............................................................43
Figura 14 – Tela Inicial do Sistema. ..................................................................................................44
Figura 15 – Tela de Cadastro e Manutenção da Tabela de Pesquisadores.........................................45
Figura 16 – Tela de Consulta a Base de Conhecimento Utilizando a Técnica de RBC.....................46
Figura 17 – Tela de Resultados da Pesquisa RBC. ............................................................................47
Figura 18 – Tela Descritiva da Espécie..............................................................................................48
viii
LISTA DE TABELAS
Tabela 1 – Tabela Comparativa do Gênero Phyllanthus......................................................................5
Tabela 2 – Classificação de uma Espécie Vegetal ...............................................................................9
Tabela 3 – Exemplos de Sistemas Baseados em Casos .....................................................................13
Tabela 4 – Controle de Velocidade de um Ventilador. ......................................................................24
Tabela 5 – Descrição das Tabelas de Dados ......................................................................................33
Tabela 6 – Dicionário de Dados da Entidade Caule_Folhas..............................................................34
Tabela 7 – Dicionário de Dados da Entidade Caule_Forma ..............................................................34
Tabela 8 – Dicionário de Dados da Entidade Caule_Tamanho .........................................................34
Tabela 9 – Dicionário de Dados da Entidade Estipulas_Cor .............................................................34
Tabela 10 – Dicionário de Dados da Entidade Estipulas_Forma.......................................................35
Tabela 11 – Dicionário de Dados da Entidade Espécies....................................................................35
Tabela 12 – Dicionário de Dados da Entidade FE_Anteras...............................................................35
Tabela 13 – Dicionário de Dados da Entidade FE_Estames ..............................................................36
Tabela 14 – Dicionário de Dados da Entidade FE_Glandulas ...........................................................36
Tabela 15 – Dicionário de Dados da Entidade FE_Sepalas ...............................................................36
Tabela 16 – Dicionário de Dados da Entidade Flores_Estamin.........................................................36
Tabela 17 – Dicionário de Dados da Entidade Flor_Pistiladas..........................................................36
Tabela 18 – Dicionário de Dados da Entidade Folha_Apice .............................................................37
Tabela 19 – Dicionário de Dados da Entidade Folha_Base ...............................................................37
Tabela 20 – Dicionário de Dados da Entidade Folha_Bordo.............................................................37
Tabela 21 – Dicionário de Dados da Entidade Folha_Forma ............................................................37
Tabela 22 – Dicionário de Dados da Entidade FP_Consistencia .......................................................37
Tabela 23 – Dicionário de Dados da Entidade FP_DiscGland ..........................................................38
Tabela 24 – Dicionário de Dados da Entidade FP_DiscGland ..........................................................38
Tabela 25 – Dicionário de Dados da Entidade FP_Ovario ................................................................38
Tabela 26 – Dicionário de Dados da Entidade FP_Pedicelo..............................................................38
Tabela 27 – Dicionário de Dados da Entidade FP_Sepalas ...............................................................38
Tabela 28 – Dicionário de Dados da Entidade Pesquisadores ...........................................................39
Tabela 29 – Dicionário de Dados da Entidade Pesquisadore_Espécie ..............................................39
Tabela 30 – Dicionário de Dados da Entidade Sem_Ornament.........................................................39
ix
Tabela 31 – Dicionário de Dados da Entidade Sem_Compr..............................................................39
Tabela 32 – Funções da Variável Tamanho do Caule........................................................................42
Tabela 33 – Funções da Variável Tamanho da Semente. ..................................................................42
x
RESUMO
Este trabalho apresenta o desenvolvimento de um sistema inteligente para identificação
de plantas bioativas, que são espécies vegetais que possuem atividade farmacológica, biológica e/ou
biocida, podendo ser utilizadas como base para pesquisa em diversas instituições por profissionais e
estudantes da área procurando auxiliar o uso adequado desta bioatividade. O sistema foi
desenvolvido aplicando a técnica de Raciocínio Baseado em Casos, buscando na memória do
sistema a experiência mais próxima com o problema de entrada. O algoritmo para cálculo da
similaridade utilizado foi o de contagem de características. Utilizou-se a linguagem de programação
para web PHP e banco de dados MySQL, visando um acesso fácil e público as informações.
Através desta ferramenta, foi possível obter identificações mais precisas, com maior rapidez e
segurança.
xi
xii
ABSTRACT
This paper proposes the development of an intelligent system for identification of
bioactive plants, that are vegetal species which possess pharmacological, biological and/or biocide
activity, to be used in research and education institutions by professionals and students of the area.
The system was developed applying the technique of Case-Based Reasoning, searching in the
system memory the nearest experience with the entrance problem. The algorithm used to calculation
the similarity was of counting of characteristics. The system was developed in PHP programming
language for Web and MySQL database, aiming at an easy and public access to the information.
Clearer identifications in each specific case, with more rapidity and security are hoped to get with
this aid.
xii
I - INTRODUÇÃO
1. APRESENTAÇÃO
O presente Trabalho de Conclusão de Curso, fundamentado na técnica de Raciocínio
Baseado em Casos, apresenta o desenvolvimento de uma ferramenta capaz de identificar espécies
de plantas com fatores bioativos úteis à comunidade através de suas características fitológicas, para
utilização em instituições de pesquisa e ensino, por profissionais de saúde e pela comunidade em
geral que procura utilizar estas plantas de acordo com a sua propriedade bioativa.
Segundo Silva (2003), Planta Bioativa é uma espécie vegetal que reúne componentes
fitoquímicos (metabólitos primários e/ou secundários com atividade farmacológica, biológica e/ou
biocida).
2. JUSTIFICATIVA
O estudo de sistemas inteligentes utilizando a técnica de Raciocínio Baseado em Casos
e a implementação de uma ferramenta na área de plantas bioativas, que se apresenta pouco
explorada e com recursos escassos, são as principais justificativas deste trabalho. Além destas, citase a necessidade de se aperfeiçoar e agilizar o processo de identificação destas plantas com o
objetivo de aumentar o rendimento do trabalho produzido, e das pesquisas realizadas por
profissionais e estudantes da área.
3. IMPORTÂNCIA
Considerando-se um universo de quase 500.000 espécies de plantas no planeta Terra e a
possibilidade de ocorrência de até milhares de substâncias bioativas em cada espécie, a busca por
características específicas em modelos de consulta convencionais tem sido uma tarefa de grande
vulto e muitas vezes até desanimadora, resultando em um processo moroso no desenvolvimento da
fitoterapia, fitologia e fitoquímica (SILVA, 2003).
2
Atualmente a recuperação de dados é feita de forma manual e subjetiva nas instituições
de pesquisa e é baseada unicamente em recursos bibliográficos esparsos e reduzidos, e no
conhecimento de alguns pesquisadores. Daí surgiu à necessidade de uma ferramenta para aquisição
e sistematização do conhecimento, para auxílio ao profissional e estudantes da área, no intuito de
gerar pesquisas mais exatas e eficazes.
4. OBJETIVOS
4.1. Objetivo Geral
O objetivo geral deste trabalho é implementar um sistema de Raciocínio Baseado em
Casos para o resgate de dados fitológicos visando auxiliar pesquisadores, técnicos, estudantes e a
comunidade em geral na busca rápida e precisa da identificação das plantas bioativas.
4.2. Objetivos Específicos
São objetivos específicos deste trabalho:
• Escolher a fonte de informações para a aquisição de conhecimento;
• Criar uma base inicial de casos;
• Estudar e desenvolver as técnicas de recuperação dos casos;
• Criar a modelagem do sistema, através de diagramas;
•
Desenvolver uma ferramenta inteligente para o auxílio aos profissionais e estudantes;
•
Avaliar a adequação da técnica de Raciocínio Baseado em Casos na implementação de um
sistema inteligente para o reconhecimento de plantas bioativas com ênfase no gênero
Phyllanthus;
•
Fazer a validação do sistema junto ao especialista.
3
5. METODOLOGIA
A metodologia seguida para o desenvolvimento deste projeto foi:
•
Revisar os conhecimentos adquiridos durante o desenvolvimento do trabalho, através de
pesquisa bibliográfica, e aprofundamento nos tópicos necessários para o desenvolvimento
do projeto, tais como Inteligência Artificial, Desenvolvimento de Sistemas, Banco de
Dados;
•
Levantar a situação atual junto à instituição de pesquisa escolhida para o projeto: a EPAGRI
de Itajaí. Este levantamento foi realizado através de entrevistas e coleta de dados com os
funcionários responsáveis, neste trabalho tratados como especialistas, de forma a definir os
requisitos para o sistema em questão e também modelar a base de conhecimentos necessária
para o funcionamento do mesmo;
•
Coletar uma quantidade significativa de casos para elaborar a base inicial do sistema
utilizando o sistema gerenciador de banco de dados MySQL;
•
Analisar os requisitos dos futuros usuários para definição do escopo do sistema, suas
funções e comportamento, bem como a definição da metodologia e das ferramentas
necessárias para o desenvolvimento do sistema. A partir destes dados, iniciar o
desenvolvimento do projeto escrito;
• Implementar o software, utilizando as ferramentas e metodologias citadas nas etapas
anteriores bem como a modelagem do sistema através dos diagramas e seus respectivos
dicionários de dados, consultando quando necessário os especialistas, de maneira a cumprir
os requisitos dos mesmos. Visando sua publicação na web, será utilizada a linguagem de
programação PHP;
•
Realizar a etapa de testes com a ferramenta. Nessa especialistas da área realizarão operações
visando a adequação do sistema.
II - REVISÃO BIBLIOGRÁFICA
1. PLANTAS BIOATIVAS
O estudo das plantas bioativas pode ser encontrado em áreas da ciência provindo da
reunião dos conhecimentos seculares, transmitidos oralmente de geração em geração, sobre sua
coleta e utilização. Os conhecimentos sistematizados encontram-se dispersos pelos conhecimentos
ligados a Farmácia, Botânica, Ecologia e Horticultura, originando uma enorme quantidade de
informações dispersas por diversas fontes. Se considerarmos ainda que as diferentes ciências
normalmente possuem linguagem de difícil compreensão aos não especialistas e que os técnicos em
cada uma destas, comumente não dispõem de informações específicas ligadas a outras áreas, é
compreensível que haja a necessidade de compilar e organizar as informações de forma a permitir
uma consulta ágil, atualizada e simples, disponibilizando assim as informações necessárias
(INFOHERBS, 2003).
O mundo das plantas bioativas mobiliza hoje milhares de engenheiros agrícolas,
biólogos, químicos, farmacêuticos e médicos de todos os continentes. Entre eles, há pelo menos
uma certeza: as plantas bioativas são facilmente utilizáveis, porém seu benefício dificilmente
comprovado. Os avós têm as receitas prontas, na ponta da língua, e sabem o que utilizar, como e
quando. As infusões e cataplasmas costumam ser suficientes para revelar as propriedades curativas
de cada espécie. Já para os cientistas, as plantas representam um duro desafio. Anos e anos são
investidos em pesquisas para identificar plantas, princípios ativos e indicadas as propriedades
curativas (ESTADÃO, 1996).
Estudos aprofundados sobre o tema são realizados permanentemente por laboratórios
estrangeiros. Quando se trata de vegetais, é preciso tempo e dinheiro para se chegar a um
diagnóstico confiável. Poucos cientistas brasileiros dispõem, hoje, das condições necessárias ao
desenvolvimento de pesquisas sérias nessa área. As similaridades morfológicas, por exemplo, são
fontes inesgotáveis de trabalho, destacando-se os exaustivos estudos realizados com o popular
quebra-pedra. Os tipos de Phyllanthus (gênero dessa família de plantas) são parecidos
exteriormente, como o exemplo da Tabela 1, tem sido o desafio descobrir quais deles são de fato
eficazes na expulsão e destruição de cálculos renais (ibidem).
5
Tabela 1 – Tabela Comparativa do Gênero Phyllanthus
Espécie
P. caroliniensis
P. fraternus
P. niruri
P. stipulatus
P. tenellus
P. urinaria
Característica
Caule Principal
Tamanho
10-30 cm
5-35 cm
20-50 cm
20-70 cm
20-80 cm
Forma
Cilíndrico
Cilíndrico
Cilíndrico
Cilíndrico
Cilíndrico
Presença de folhas
Normais
Reduzidas a
escamas
Reduzidas a
escamas
Reduzidas a
escamas
Reduzidas a
escamas
Forma
Elíptica
Elíptica
Oblonga
Elíptica
Elíptica
Oblonga
irregular
Ápice
Arredondado
ou levemente
agudo
Arredondado
Agudo ou
arredondado
Agudo
Mucronado ou
arredondado
Base
Simétrica
Simétrica
Simétrica
Bordo
Estípulas
Liso
Liso
Franjado
Cor
Avermelhadas
Brancoavermelhadas
Avermelhadas
Avermelhadas
ou brancoesverdeadas
Avermelhadas
Forma
Triangular
auriculada
Triangular
auriculada
Triangular não
auriculada
Avermelhadas
ou brancoesverdeadas
Triangular
auriculada ou
não
(5) - 6
5
3, livres ou
parcialmente
soldados
5
5
6
3, totalmente
soldados
5, livres
3, totalmente
soldados
10-40 cm
Cilíndrico na
base Achatado
no ápice
Reduzidas a
escamas
Folha (Limbo)
Flores Estaminadas
Sépalas (nº)
6
Simétrica ou
levemente
assimétrica
Liso
Assimétrica
Liso
Arredondado
ou levemente
agudo
Simétrica ou
levemente
assimétrica
Liso
Triangular não
auriculada
Triangular
auriculada
Estames
3, livres
3, totalmente
soldados
Anteras
(deiscência)
Horizontal
Horizontal
Horizontal
Horizontal
Horizontal
Vertical
Glândulas (forma)
Cordiformes
Mais ou menos
circulares
Trapezoidais
Circulares
Reniformes
Circulares
6
Membranácea
Caliciforme,
ondulado
0,4 - 0,6 mm
Liso
1,2 - 1,8 mm
5-6
Membranácea
Anelar,
denteado
0,8 - 1 mm
Liso
1,8 - 2 mm
5
Membranácea
Caliciforme,
lobado
1,5 - 3 mm
Liso
2 - 2,5 mm
5
Rígida
5-6
Membranácea
Caliciforme,
lobado
4 - 7 mm
Liso
1,3 - 2 mm
6
Membranácea
Caliciforme,
denteado
0,5 mm
Rugoso
2,2 - 2,5 mm
0,8 - 0,9 mm
1 mm
Estrias
transversais em
fileiras
longitudinais
regulares
1,2 - 1,3 mm
1,1 - 1,3 mm
Estrias
transversais em
fileiras
longitudinais
regulares
0,8 - 0,9 mm
1,2 - 1,3 mm
Verrugas em
linhas
longitudinais
regulares
Costelas
transversais
bem evidentes
Base
Ápice
Base
Ápice-base
Ápice
Ápice
Flores pistiladas
Sépalas (nº)
Consistência
Disco glandular
Pedicelo
Ovário
Fruto (diâmetro)
Sementes
Comprimento
Ornamentação
Verrugas em
linhas
longitudinais
regulares
Disposição das Flores nos Ramos
Flores estaminadas
Ápice
Flores pistiladas
Ápice-base
Fonte: Silva (2003).
Base
Ápice-base
Verrugas em
linhas
longitudinais
regulares
Base
Ápice
Anelar, lobado
1 - 1,2 mm
Liso
2,2 - 2,8 mm
6
O interesse pelas plantas bioativas tem ressurgido nos últimos anos. O conhecimento
das suas características tem estado repartido pelos anciãos das populações rurais, os defensores das
medicinas naturais, pelos botânicos e farmacêuticos.
1.1. Identificação de Plantas Bioativas
Para trabalhar com Plantas Bioativas ou usá-las é necessário conhecê-las corretamente.
A identificação botânica é, nesse caso, muito importante pois evita problemas como intoxicações e
uso de plantas que não tenham efeito sobre a doença que se pretende combater.
A identificação deve ser feita por pessoas que tenham amplo conhecimento do assunto,
de preferência botânicos que, através de características que diferenciam as espécies vegetais,
obtenham o nome correto da planta. As pessoas que se especializam em identificação de seres vivos
são chamados de taxonomistas, e na medida do possível, devem ser consultados para a identificação
de plantas (DI STASI, 1996).
As características mais importantes do ponto de vista taxonômico na definição de uma
espécie, concentra-se na flor, pois, esta é a parte da planta menos variável com as condições do
ambiente (Ibidem).
Ao encaminhar plantas para identificação, portanto, coleta-se ramos completos da planta
(caule, folhas, flores, frutos) e se preenche uma ficha com informações sobre a procedência do
material. Se não for possível levar os ramos frescos, faz-se uma excicata, colocando a planta entre
folhas de jornal seco e prensando este material com duas chapas de madeira sob pressão utilizando
materiais pesados, lembrando de trocar o jornal diariamente para evitar a proliferação de fungos.
Apenas colocar material fresco em sacos plásticos se encaminhado no mesmo dia ou no máximo no
dia seguinte, evitando sua deterioração (CAPELLARI, 1996).
Antes de utilizar uma planta verificar a parte que é recomendada para o uso com fins
terapêuticos. Conforme a planta, os princípios ativos podem se concentrar nas raízes ou apenas nas
folhas. A dosagem também é muito importante. Algumas plantas são medicinais em pequenas
doses, mas extremamente tóxicas em doses elevadas (Ibidem).
7
1.2. Sistemática de Plantas Bioativas
Segundo Capellari (1996) Sistemática ou Taxonomia é a ciência que estabelece as
relações de afinidades entre os seres vivos de forma a organizá-los em grupos, visando facilitar o
seu estudo. A sistemática, entre outras coisas, trabalha com a classificação, a identificação e a
nomenclatura.
A classificação é a colocação de um ser vivo em categorias de um sistema de
classificação, previamente estabelecido por um botânico: uma classificação só é feita quando um
vegetal é desconhecido pela ciência.
A identificação é a determinação de que um vegetal é idêntico a outro já conhecido e
portanto descrito pela ciência. Quando se coleta uma determinada planta e através de chaves
analíticas, livros especializados ou coleções de herbários, verifica-se qual é seu nome científico ou a
que família este vegetal pertence, está se procedendo a uma identificação (Ibidem).
A nomenclatura é a ciência de dar nomes às unidades de classificação, mediante regras,
normas e recomendações estabelecidas pelo Código Internacional de Nomenclatura Botânica.
1.3. Sistemas de Classificação
Desde a antiguidade clássica o homem vem procurando agrupar as plantas através de
sistemas de classificação, de forma a facilitar o seu estudo.
Em 370 a.C. Theoprastus criou um sistema baseado no hábito das plantas (ervas,
arbustos, árvores. etc). Os chineses também, em épocas remotas, já procuravam agrupar as espécies
vegetais de acordo com a sua utilização.
Posteriormente, foram criados diversos sistemas baseados em caracteres morfológicos
de folhas e flores.
Com o avanço científico e conseqüentemente com as novas teorias de evolução, os
sistemas de classificação passaram a ser mais rigorosos em seus critérios. Tais sistemas são
atualmente utilizados e denominam-se filogenéticos.
8
1.4. Sistemas de Cronquist e Engler
A identificação de uma espécie vegetal pode ser feita mediante diversos sistemas de
classificação, segundo autores diferentes, porém, os sistemas mais utilizados no Brasil são os de
Cronquist (1981) e Engler (atualmente explorado segundo a versão adaptada por JOLY, 1979).
Cronquist oferece um sistema mais atualizado, cujos critérios de formação dos grupos
vegetais foram, basicamente, morfologia, filogenia e composição química. Por ser muito recente,
existe pouca bibliografia em português sobre este sistema e as coleções de Herbários (no mundo
todo) ainda não foram organizadas baseadas no mesmo (CAPELLARI, 1996).
Engler, por sua vez, apresenta um sistema baseado apenas em caracteres morfológicos,
que devido à sua história (a primeira versão deste sistema foi apresentada em 1892), tem sido o
mais utilizado nas últimas décadas, fazendo com que a maior parte dos livros gerais de Botânica, os
específicos sobre Plantas Bioativas, bem como as coleções herborizadas, estejam baseados em seu
sistema. Alguns termos do sistema de Engler foram fortemente fixados pelo uso popular, científico
e acadêmico, e por serem muito utilizados seria inviável adotar apenas o sistema de Cronquist, pois
o mesmo descarta nomes tão familiares, como por exemplo: gimnospermas (Gymnospermae),
angiospermas (Angiospermae), dicotiledôneas (Dicotyledoneae), leguminosas (Leguminosae),
gramíneas (Gramineae), labiadas (Labiatae), umbelíferas (Umbelliferae), crucíferas (Cruciferae),
entre tantos outros (Ibidem).
Se para alguns grupos vegetais, Cronquist propôs arranjos novos, criando alguns e
extinguindo outros, em certos casos, apenas propôs uma modificação no nome taxonômico, uma
vez que este não estava de acordo com as normas do Código Internacional de Nomenclatura
Botânica.
Para uma maior compreensão deste assunto, deve-se explicar o significado de táxon e a
terminologia adequada para um sistema de classificação.
1.5. Unidades de Classificação
A classificação de uma espécie vegetal é feita através de um sistema que é formado por
unidades denominadas de táxon (plural taxa ou táxones). Tais unidades são escritas em latim e
9
seguem regras, determinações e recomendações apresentadas no Código Internacional de
Nomenclatura Botânica (SCHULTZ, 1961).
As unidades de um sistema de classificação estão divididas em unidades fundamentais e
sub-unidades. As fundamentais estarão presentes para a classificação de qualquer indivíduo, já as
sub-unidades estarão presentes apenas em certos casos, quando um taxon fundamental for
demasiadamente grande (Ibidem).
As unidades fundamentais e as sub-unidades são listadas na Tabela 2.
Tabela 2 – Classificação de uma Espécie Vegetal
Unidades Fundamentais
Sub-Uinidades
Reino
Vegetal
Radical + terminação phyta
Divisão
Subdivisão (phytina).
Radical + terminação opsida ou atae
Classe
Subclasse (idae), Coorte (iidae).
Radical + terminação ales
Ordem
Subordem (inales), Superfamília (ineales).
Radical + terminação aceae
Família
Subfamília (oideae), Tribo (eae), Subtribo (inae).
Substantivo latinizado com inicial maiúscula, destacado do texto
Gênero
Subgênero, Secção, Subsecção, Série.
Gênero + designação ou epíteto específico (adjet. Latinizado com
inicial minúscula), seguido pelo nome abreviado de seu autor.
Espécie
Subespécie, Variedade, Subvariedade, Forma. Linha, Clone
(denominadas categorias infra-específicas).
Fonte: Schultz (1961).
2. INTELIGÊNCIA ARTIFICIAL
O objetivo principal deste tópico é apresentar os conceitos da Inteligência Artificial (IA)
e Raciocínio Baseado em Casos (RBC) aplicados na solução do problema deste trabalho. São
introduzidos alguns tópicos de IA e RBC considerados importantes para a compreensão de sua
aplicação no sistema.
10
2.1. Conceito
Existem diversas definições de Inteligência Artificial variando de acordo com o enfoque
dado pelo autor. A seguir tem-se algumas definições de IA.
Inteligência Artificial é o campo da ciência que tenta explicar a origem da natureza do
conhecimento, objetivando representar a inteligência, que é uma faculdade do ser humano, através
de modelos computacionais. IA dedica seus estudos as técnicas computacionais que representem
alguma característica ou aspecto da cognição humana (raciocínio). (REIS, 1997)
Já para Charniac e Mcdermott (1985), IA seria o estudo das faculdades mentais com o
uso de modelos computacionais. Segundo Barreto (1997), esta definição se mostra bastante eficaz,
pois:
•
Não apresenta recursividades (não é um conceito que se fecha em si mesmo);
•
Não restringe o conceito de inteligência apenas ao ser humano;
•
Não se prende a nenhuma tecnologia de implementação de computadores (e, portanto, é
atemporal);
•
Mostra relação com ciências como psicologia, ciência cognitiva, lógica, fisiologia e
evolução, no sentido de que as faculdades mentais são resultado da evolução da natureza.
Uma definição mais voltada ao que se entende por “inteligência humana” é apresentada
por Arnold e Bowie (1986), e também citada por outros autores, que diz que “IA é à parte da
ciência da computação concernente ao projeto de sistemas computacionais que exibem inteligência
humana, tais como aprender novas informações, entender linguagens, raciocinar e resolver
problemas”.
Portanto, compreende-se a Inteligência Artificial como sendo atividades que se
associam ao pensamento humano, tais como aprendizagem, tomada de decisão, resolução de
problemas, e buscam ser reproduzidas em máquinas objetivando simular a inteligência do homem.
11
3. RACIOCÍNIO BASEADO EM CASOS
A área de Raciocínio Baseado em Casos é uma área relativamente recente, contudo, os
pesquisadores em RBC não divergem muito sobre sua definição. A maioria dos autores concorda
que o RBC é um método de raciocínio baseado na proposta de utilizar experiências passadas
encapsuladas em estruturas de dados como base para lidar com novas situações similares. A
abordagem parece ser intuitiva: quando uma nova situação acontece, deve-se tentar alguma coisa
que já foi utilizada com sucesso. Usualmente, as soluções utilizadas em situações similares devem
ajudar na solução do novo problema. Esta definição pode ser confirmada por diversos autores, como
se observa a seguir.
O Raciocínio Baseado em Casos é uma técnica de IA que consiste na utilização de
situações passadas, implementadas na forma de estruturas de dados chamados casos, como um
referencial para resolução de novos problemas (COSTA, 1999).
De acordo com Gentner (1983), RBC é a resolução de problemas por analogia,
utilizando a experiência adquirida para resolver novos problemas. As soluções para os novos
problemas surgem à medida que são comparados aspectos de problemas novos e antigos, utilizandose as soluções encontradas anteriormente.
Apesar de considerar o desenvolvimento de um sistema de RBC como sendo uma tarefa
complexa que não se sujeita a ser formulada através de uma metodologia, Lee (1996) propõe quatro
etapas distintas, conforme Figura 1:
•
representação dos casos;
•
recuperação dos casos;
•
revisão e adaptação;reutilização,
•
avaliação e aprendizagem.
12
Problema
Reter
Solução
Confirmada
Recuperar
Base de
Casos
Revisar
Soluções
Iniciais
Reutilizar
Solução
Proposta
Figura 1 - O Ciclo do RBC.
Fonte: Adaptação de Lee (1998).
Segundo Fernandes (2003), a filosofia básica desta técnica é a de buscar a solução para
uma situação atual através da comparação com uma experiência passada semelhante. O processo
característico do RBC consiste em: identificar o problema atual, buscar a experiência mais
semelhante na memória e aplicar o conhecimento desta experiência passada no problema atual.
Este procedimento pode ser detalhado em alguns passos.
•
Identificação de um problema a ser resolvido (problema de entrada);
•
Definição das principais características que identificam este problema;
•
Busca e recuperação na memória de casos com características similares;
•
Seleção de um ou mais dentre os casos recuperados;
•
Revisão deste(s) caso(s) para determinar a necessidade de adaptação;
•
Reutilização do caso adaptado para resolver o problema de entrada;
•
Avaliação da solução do problema de entrada;
•
Inclusão do caso adaptado na memória de casos (aprendizagem).
13
3.1. Histórico
Segundo Reis (1997), sistemas utilizando RBC como paradigma para representação de
conhecimento tem origem em estudos de cognição humana. O ato de buscar na memória (lembrar)
uma situação passada é uma prática comum em situações como solução de problemas e tomada de
decisões. Foi a partir desta capacidade humana de utilizar suas experiências e fazer analogias para
solução de problemas similares que Schank (1977) e seu grupo de pesquisa na Universidade de
Yale introduziram RBC como um paradigma de inteligência artificial para desenvolvimento de
sistemas de suporte a decisões.
Tabela 3 – Exemplos de Sistemas Baseados em Casos
Nome
CYRUS
MEDIATOR
PLEXUS
JUDGE
SWALE
CHEF
MBR Talk
JULIA
HYPO
COACH
CASEY
JOHNNY
REFINER
PROTOS
PRODIGY
PATDEX
CREEK
KATE-CBR
CCC+
ESTEEM
ReMind
CBR-Express
INRECA
Aplicação
Episodic Memory
Dispute Resolution
Adaptive Planning
Criminal Sentencing
Case-Based Explanation
Chinese Cooking
Pronunciation of Words
Catering
Patent Law
Football Coach
Heart Failure Diagnosis
Reading
Knowledge Refinement
Knowledge Acquisition
Planning
Diagnosis
Diagnosis
CBR-Shell
Diagnosis
CBR-Shell
CBR-Shell
CBR-Shell
CBR-Shell
Ano
1980
1985
1986
1986
1986
1986
1986
1987
1987
1988
1988
1988
1988
1988
1988
1989
1989
1990
1991
1991
1991
1991
1993
Fonte: Cbr-web (2003).
O primeiro programa criado utilizando a técnica de RBC foi o Cyrus (KOLODNER,
1983), o qual continha um repositório de casos com as viagens e reuniões do ex-secretário de estado
norte americano Cyrus Vance. Este sistema logo foi seguido por uma série de outros, tais como
14
Mediator (SIMPSON e KOLODNER, 1989), Chef (HAMMOND, 1986), Persuader (SYCARA,
1987) e Julia (HINRICKS, 1992), desenvolvidos como parte de teses de doutorado na Universidade
de Yale. Estes sistemas logo inspiraram a criação de sistemas fora de Yale, tais como Protos
(PORTER e BAREISS, 1986), Hypo (ASHLEY, 1991) e Cabaret (RISSLAND e SKALAK, 1991),
conforme a Tabela 3.
3.2. Representação dos Casos
Casos podem ser armazenados no computador nos mais diferentes formatos, no entanto,
muitos deles são excessivamente complexos para serem manipulados pelo desenvolvedor do
sistema ou para serem compreendidos pelo usuário do sistema. A representação deve considerar
formatos que tenham uma correspondência natural com a forma como a informação costuma estar
disponível, para evitar o desperdício de processamento em traduções de uma estrutura para outra.
A representação da base de conhecimento num sistema de RBC consiste em modelar os
casos e definir o estilo de memória que organize estes casos. As execuções destas etapas estão
fortemente ligadas entre si e estas, por sua vez, dependem fortemente das outras etapas do sistema.
As etapas de recuperação, adaptação e aprendizagem devem ser projetadas simultaneamente à
representação e sempre se orientando pelo objetivo da aplicação, avalia-se o benefício da
representação de conhecimento sugerido para todas as etapas complementares do sistema (SILVA,
1997).
Os casos são normalmente representados através de uma lista de atributos devidamente
valorados. As características de um caso referem-se ao par atributo-valor. Na representação dos
casos, dois são os componentes básicos (LEE, 1996):
•
a descrição do problema;
•
a descrição da solução.
Segundo Wangenheim e Wangenheim (2003), várias informações podem ser úteis para
a representação dos casos.
•
a solução em si;
•
o conjunto de passos de raciocínio seguidos para resolver o problema;
15
•
o conjunto de justificativas para as decisões tomadas durante a solução do problema;
•
soluções alternativas aceitáveis que não foram escolhidas (e as respectivas razões e
justificativas para sua rejeição);
•
soluções inaceitáveis que foram excluídas do rol de possibilidades (e as respectivas razões e
justificativas para sua exclusão);
•
expectativas acerca do que vai acontecer após a implementação da solução proposta.
A mais simples forma de representação de casos é a realizada por vetores atributo-valor.
Esta forma resolve uma grande parcela dos problemas de aplicação de RBC. Por exemplo: preço
(atributo) e R$ 1,99 (valor). Um caso é então representado como um conjunto de par atributo-valor,
como mostrado na Figura 2.
atributo
valor
Problema (Sintomas):
Problema:
Modelo:
Luz de estado de papel:
Luz de estado da tinta colorida:
Luz de estado da tinta preta:
Estado do interruptor:
“Impressora não funciona”
Robotron Matrix 600
apagada
apagada
apagada
ligado
Solução:
Diagnóstico:
Ação:
“Curto-circuito”
“Troca da fonte de alimentação”
Figura 2 – Exemplo de uma representação atributo-valor.
Fonte: Wangenheim e Wangenheim (2003).
3.3. Indexação
A indexação é um problema crucial do Raciocínio Baseado em Casos, envolvendo a
determinação dos tipos de índices que serão utilizados pela etapa de recuperação. Da mesma forma
16
que índices permitem acelerar a busca em bancos de dados, eles são utilizados nos sistemas RBC
para acelerar a recuperação de casos (COSTA, 1999).
Os índices de um caso são combinações de importantes descritores, capazes de
estabelecer distinções entre os existentes. O algoritmo de recuperação utiliza estes índices para
selecionar os casos conforme suas necessidades. O conjunto de descritores utilizados como índices
permitirão definir o que faz um caso ser similar a outro, representando a relevância entre eles
(ibidem).
Indexar casos corresponde a atribuir índices aos mesmos de forma a facilitar sua
recuperação. Isso inclui colocar rótulos nos casos, no momento de sua inclusão na base de
conhecimento, para que possam ser posteriormente recuperados, organizar os casos para facilitar a
busca e recuperação e definir os algoritmos de recuperação mais eficientes.
3.4. Recuperação de Casos
Algumas explicações pertinentes a RBC são apresentadas por Kolodner (1993).
•
Descritor: é um par atributo-valor usado na descrição de um caso. Podem descrever aspectos
do problema ou de uma situação, a solução ou o resultado. Ex.: idade-72, pulsação-96.
•
Dimensão: faz referência à parte atributo de um descritor.
•
Característica: usada tanto como descritor como dimensão, porém comumentemente como
descritor.
Dado um problema a ser resolvido (caso de entrada), a etapa de recuperação realiza a
busca na base de casos e seleciona quais deles podem ser aproveitados. O processo de busca é feito
por algoritmos que selecionam casos similares ao de entrada. As tarefas que compreendem a
recuperação de casos são: métrica da similaridade, recuperação de casos e seleção do caso escolhido
(COSTA, 1999).
De acordo com Lee (1996), similaridade é a essência do Raciocínio Baseado em Casos,
uma vez que o fundamento do paradigma de RBC é solucionar um problema atual, reutilizando a
solução de uma experiência passada similar.
17
A métrica de similaridade tem por objetivo dar um valor numérico à similaridade entre
dois casos, sendo todos os casos da memória são avaliados comparativamente ao problema (caso)
de entrada. Normalmente, estabelece-se um grau de similaridade entre os atributos de determinadas
dimensões, um número dentro do intervalo [0,1] (ibidem).
Já Reis (1997) descreve similaridade como um conceito genérico e mal definido,
profundamente influenciado por fatores subjetivos, além de afirmar que “objetivos diferentes
podem invocar tipos de similaridade diferentes”.
Considerando que a definição dos índices retrata todos os aspectos a serem
considerados na recuperação, os algoritmos de comparação poderão usá-los para se orientar na
busca, determinando quais características devem ser focadas no julgamento da similaridade.
Qualquer caso pode ser indexado de várias formas, entretanto, o importante é que o algoritmo de
comparação esteja apto a distinguir entre os aspectos relevantes em cada caso específico
(LAGEMANN, 1998).
Segundo Kolodner (1993), a procura por correspondências é feita para determinar quais
características de um novo caso podem ser comparadas a características de um caso armazenado. As
características que devem ser comparadas são, geralmente, aquelas que desempenham os mesmos
papéis funcionalmente. Esta equivalência de funcionalidade pode ser determinada por várias
maneiras:
•
Verificar que dois valores preenchem o mesmo slot (ou compartilham uma relação de
predicados comuns);
•
Usar heurísticas de conciliação usando senso comum;
•
Verificar que dois valores desempenham o mesmo papel estrutural nas duas representações;
Uma vez que se sabe que há correspondência entre características, o grau de
similaridade entre características correspondentes pode ser calculado. Os vários métodos válidos
para calcular o grau de similaridade de dois valores são:
•
Abstração hierárquica;
•
Escala qualitativa e quantitativa;
18
•
Comparação do grau de características que representam um cargo funcional projetado.
3.4.1. Matching e Ranking
Segundo Kolodner (1993), os algoritmos de recuperação procuram diretamente
determinados locais na memória, acessando casos com algum potencial para serem úteis, mas isso é
feito por heurísticas de match e ranking, as quais escolhem os casos mais úteis daquele conjunto,
sendo:
Match: é o processo de comparar dois casos entre si e determinar o seu grau de
similaridade. Pode produzir um score que representa o grau de similaridade ou simplesmente
determinar se um caso é similarmente suficiente ou não.
Ranking: é o processo de ordenar os casos partially-matching de acordo com a
utilidade, isto é, determinar qual é melhor que os outros. Freqüentemente, o procedimento de
Ranking usa a saída do procedimento de Match para ordenar os casos partially-matching de acordo
com a sua utilidade.
As entradas de dados (input) para os processos de Match e Ranking podem ser:
•
novo problema ou nova situação que o sistema está tentando resolver;
•
os objetivos de uso para os casos recuperados. O sistema pode desejar construir uma parte
da solução, avaliar ou interpretar uma solução proposta, projetar resultados ou saídas;
•
conjunto de casos recuperados, que deve ser ordenado para uso posterior;
•
os índices associados com cada um dos casos recuperados, que podem ser usados em
esquemas de ranking sensíveis ao contexto ou podem ser usados como identificadores
conceituais dos casos;
•
critério de match razoável, que indica quando os procedimentos de match e ranking devem
parar. Alguns critérios podem almejar o "melhor" ou o "mais útil" match, levando todos os
aspectos do contexto em consideração, outros podem desejar somente um match adequado,
de acordo com poucos critérios.
19
3.5. Adaptação
Assim que o melhor resultado é escolhido, o próximo passo é revisar a solução, para
verificar a necessidade de adaptação em relação ao problema de entrada.
De acordo com Reis (1997), a tarefa de reutilização de casos caracteriza-se por adaptar
a solução armazenada de um caso recuperado às necessidades de um caso proposto.
A tarefa de avaliação está relacionada com a análise dos resultados obtidos pela
aplicação da solução no ambiente real. Este processo comumente acontece fora do sistema RBC e
os resultados da aplicação de uma solução podem demorar a aparecer, conforme o tipo de aplicação.
A reparação de um caso envolve a detecção dos erros ocorridos na sua solução, e a recuperação ou
geração de explicações para estes erros (COSTA, 1999).
Uma alternativa para a adaptação é o sistema RBC perguntar ao usuário se ele deseja
que o sistema faça adaptação. Caso ele responda que sim, então que a adaptação seja feita, mas que
após seja dada ao usuário a possibilidade de interagir com as modificações, decidindo por sua
aplicação total, parcial ou ainda descartando-a (LAGEMANN, 1998).
3.6. Aprendizagem
Reutilizar um caso significa gerar a possibilidade de utilizá-lo para resolver o problema
de entrada numa outra consulta.
Segundo Reis (1997), trata-se de incorporar a base àquilo que é útil de reter do
problema resolvido. Após a avaliação e possíveis reparos, efetua-se o aprendizado do sucesso ou
das falhas da solução proposta.
Para Lee (1998), pode-se empregar a aprendizagem em sistemas de RBC ao nível dos
casos e da base de casos, podendo as bases de casos ser estendidas através de processos
incrementais de aprendizagem, uma vez que a tarefa e o projeto do sistema permitam isto.
A aprendizagem consiste não somente em encontrar uma solução concreta proposta pelo
usuário, mas interpretar situações que possam gerar um conjunto de soluções, ou gerar expectativas
de dados observáveis enquanto solução, a partir da determinação do nível e quantidade de
conhecimento que deve conter esta etapa. A adaptação assume outras formas, quando o RBC prevê
20
a construção da solução, a partir não somente de um caso escolhido, mas da combinação de um
conjunto de casos (SILVA, 1997).
3.7. Exemplos de Aplicações de RBC para a área de Meio Ambiente
Os problemas mais comuns para o desenvolvimento de aplicações em RBC são:
interpretação, diagnóstico, análise e elaboração de projetos, formação de preços, desenvolvimento
de propostas, planejamento, configuração, scheduling, monitoramento de bugging, consertos,
análise situacional, classificação, instrução, aprendizagem e controle.
3.7.1. Sistema para o Plantio de Árvores Frutíferas
O Brasil, graças a sua situação geográfica, topografia e extensão, tem muitos climas.
Em conseqüência, podem ser cultivadas todas as fruteiras de climas quente, úmido, semi-árido,
temperado e ainda temperado-frio. São cultivadas no Brasil todas as fruteiras de grande valor
econômico: a bananeira, o coqueiro-da-baía, cajueiro, goiabeira, macieira, caquizeiro e muitas
outras frutas, muitas destas existentes somente no Brasil.
É fácil cultivar árvores frutíferas,
principalmente as mais rústicas e tropicais. Num pomar doméstico, são poucos os tratos culturais,
nos industriais, exigem-se maiores cuidados. Os pomares semi-industriais são formados para a
venda dos produtos, que são entregues para as cooperativas e grandes centros consumidores, onde a
aparência e a qualidade são os fatores mais importantes. Os pomares industriais têm como
finalidade principal fornecer matéria-prima para as indústrias alimentícias, que as transformam em
conservas, marmeladas, frutas secas, etc. (DALFOVO, 1999).
Este trabalho consiste em um Sistema de Gestão Ambiental, mais especificamente a
implementação de um protótipo de técnicas para o plantio de árvores frutíferas. O protótipo foi
desenvolvido com base na tecnologia de Raciocínio Baseado em Casos, com objetivo de auxiliar à
recuperação de projetos ambientais, que sejam úteis aos engenheiros florestais, administradores de
gestão ambiental e outros profissionais ligados a gestão ambiental a auxiliarem na formulação de
seus novos projetos (ibidem).
21
3.7.2. A Identificação das Não-Conformidades (NC) Ambientais nas Empresas
Este sistema é uma proposta de planejamento de resolução de NC ambientais em
produtos, processos e serviços, como entendimento da atividade técnica de levantamento e,
identificação dos parâmetros ambientais na empresa. Isso se faz necessário, pois esta sistematização
inexiste no campo empresarial da forma como estamos querendo desenvolver. A aplicação do
sistema desenvolvido contribuirá para pontuar a estrutura de planejamento da solução das NC
ambientais nas empresas, proporcionando suporte à decisão, ao desenvolvimento da política
ambiental e dos planos de ação, numa perspectiva de implantação de um SGA (SILVA,1997).
Através da implementação do sistema, as empresas poderão gerenciar processos de
aprendizagem baseados em NC passadas e resolvidas, extraindo as informações necessárias destas
experiências passadas para projetar as suas etapas de desempenho e mudanças, reduzindo seus
custos operacionais, o desenvolvimento tecnológico, a racionalização do tempo de suas atividades
em pesquisa e desenvolvimento de novas soluções. A identificação das NC ambientais em
processos, produtos e serviços contribuirão para ações pró-ativas nas empresas, com vistas ao
desenvolvimento sustentável. Os resultados da identificação das NC ambientais considerando a
análise do ciclo de vida dos produtos, processos e serviços, servirão para minimizar impactos
ambientais significativos (ibidem).
4. LÓGICA DIFUSA
4.1. Introdução
Segundo Pereira e Dotto (1999), a Lógica Difusa é a lógica que suporta os modos de
raciocínio que são aproximados ao invés de exatos. Derivada do conceito de conjuntos fuzzy, a
Lógica Difusa constitui a base para o desenvolvimento de métodos e algoritmos de modelagem e
controle de processos, permitindo a redução da complexidade de projeto e implementação,
tornando-se a solução para problemas de controle até então intratáveis por técnicas clássicas. Ela
difere dos sistemas lógicos em suas características e seus detalhes. Nesta lógica, o raciocínio exato
corresponde a um caso limite do raciocínio aproximado, sendo interpretado como um processo de
composição de relações nebulosas.
22
Na Lógica Difusa, o valor verdade de uma proposição pode ser um subconjunto fuzzy de
qualquer conjunto parcialmente ordenado, ao contrário dos sistemas lógicos binários, onde o valor
verdade só pode assumir dois valores: verdadeiro (1) ou falso (0). Nos sistemas lógicos multivalores, o valor verdade de uma proposição pode ser ou um elemento de um conjunto finito, num
intervalo, ou uma álgebra booleana. Na Lógica Difusa, os valores verdade são expressos
lingüisticamente (verdade, muito verdade, não verdade, falso, muito falso), onde cada termo
lingüístico é interpretado como um subconjunto fuzzy do intervalo unitário (ibidem).
Outras características da Lógica Difusa podem ser sumarizadas como segue: nos
sistemas lógicos binários, os predicados são exatos (par, maior que), ao passo que na Lógica Difusa
os predicados são nebulosos (alto, baixo). Nos sistemas lógicos clássicos, o modificador mais
utilizado é a negação, enquanto que na Lógica Difusa uma variedade de modificadores de
predicados são possíveis (muito, mais ou menos). Estes modificadores são essenciais na geração de
termos lingüísticos, tais como: muito alto, mais ou menos perto, etc.
Na lógica clássica existem somente os quantificadores existenciais e universais. A
Lógica Difusa admite, em adição, uma ampla variedade de quantificadores como pouco, vários,
usualmente, freqüentemente, em torno de cinco, etc. A probabilidade é um valor numérico ou um
intervalo. Na Lógica Difusa existe a opção adicional de se empregar probabilidades lingüísticas
(provável, altamente provável, improvável), interpretados como números fuzzy e manipuladas pela
aritmética fuzzy. Também em contraste com a lógica modal clássica, o conceito de possibilidade é
interpretado utilizando-se subconjuntos fuzzy no universo dos reais (PEREIRA e DOTTO, 1999).
A Lógica Difusa pode ser aceita como a melhor ferramenta para modelar o raciocínio
humano, que é aproximado e parcial em sua essência. A teoria dos conjuntos nebulosos e a Lógica
Difusa objetivam modelar os modos de representação e raciocínio imprecisos que têm um papel
essencial na tomada de decisões racionais em ambientes de imprecisão e incerteza. A diversificação
de tecnologias advinda da Lógica Difusa tem também permitido sua aplicação em diversas áreas de
conhecimento (ibidem).
Segundo Passold (1997), é uma técnica útil para os casos que não podem ser facilmente
definidos matematicamente. Muito do poder da lógica difusa advém da sua habilidade em extrair
conclusões e gerar respostas baseada em informações vagas, ambíguas, qualitativas, incompletas.
Por exemplo, observando a Figura 3 tente definir o quanto à taça está cheia ou não. Este exemplo
23
demonstra um caso clássico de ambigüidade de condições, podendo-se afirmar que a taça está tanto
meio cheia quanto meio vazia.
Figura 3 - Caso descritivo de ambigüidade para uma taça pela metade.
Fonte: Passold (1997).
Esta técnica foi apresentada em 1965 pelo prof. da Universidade da Califórnia em
Berkeley, Lofti Zadeh. E visa estender a tradicional teoria utilizada para resolver paradoxos gerados
a partir de classificações Aristotélicas do tipo “tudo-ou-nada” (ibidem).
Tradicionalmente, uma premissa baseada em lógica possui dois extremos: ou é
completamente verdadeira ou completamente falsa. Entretanto, no mundo da lógica difusa, uma
premissa pode variar de 0 a 100%, o que permite que a premissa seja tanto parcialmente verdadeira
quanto falsa. Por exemplo, poderíamos afirmar que uma pessoa de 1.77 m pode ser tanto um pouco
baixa quanto um pouco alta. Pode-se determinar de maneira gráfica um conjunto de valores que
expresse de forma difusa pessoas, ou melhor, estaturas consideradas baixas de estaturas
consideradas altas, conforme a Figura 4. Neste caso, perceba que uma pessoa de 1.77 m pode ser
considerada tanto baixa quanto alta. Então se considera que ela é 20% baixa e 40% alta. Note que o
eixo Y atribui um valor mais verdadeiro (próximo de 1) ou falso (próximo de 0) para certas
condições de entrada (eixo X) (PASSOLD, 1997).
A lógica difusa incorpora um conceito do tipo “grau de veracidade” (ou nível a quanto
pertence, mais formalmente, grau de pertinência) associado a uma certa premissa. A lógica difusa
entende a lógica tradicional de duas formas. Primeiro, dados são categorizados na forma de
conjuntos, caracterizando termos qualitativos, como “alto”, “quente”, “próximo”. Cada elemento
que pertence a uma certa categoria ou conjunto está associado a este de maneira variável - o que
caracteriza funções denominadas como funções de pertinência. Por exemplo, um homem de 1.8 m e
outro de 1.95 m podem ser membros de um conjunto denominado de homens “altos”. E por fim,
24
qualquer ação ou saída resultante de um conjunto de premissas se tornando verdadeiras, são levadas
em consideração de maneira correspondente a forma como cada premissa está sendo ativada
(ibidem).
Figura 4 - Conceito de estatura “Alta” e “Baixa”.
Fonte: Passold (1997).
Por exemplo, um ventilador onde a sua velocidade depende da temperatura (como na
Tabela 4). A corrente fornecida ao motor do ventilador é determinada pelos conjuntos relacionados
à temperatura: Muito Frio, Frio, Quente, Muito Quente. Nesse sistema, como a temperatura costuma
variar gradualmente do Quente para o Frio, a corrente varia gradualmente do valor de 50 a 15
ampéres. Se monitorarmos continuamente a temperatura, pode-se evitar variações abruptas na saída,
mesmo que as entradas ultrapassem os limites definidos nos conjuntos categorias de temperatura
(funções de pertinências), conforme Figura 5.
Tabela 4 – Controle de Velocidade de um Ventilador.
Temperatura
Muito Frio
Frio
Quente
Muito Quente
Velocidade do
ventilador
Desligado
Devagar
Média
Rápida
Fonte: Passold (1997).
Corrente relativa
do motor (A)
0
15
50
100
25
Figura 5 – Conjuntos difusos relativos à temperatura.
Fonte: Passold (1997).
4.2. Arquitetura de um Sistema Difuso
A Figura 6 ilustra o fluxo dos dados dentro de um sistema difuso.
Figura 6 – Fluxo de dados num sistema baseado em lógica difusa.
Fonte: Passold (1997).
26
Os dados de entrada do sistema passam por 3 fases de transformação até ser obtida uma
saída. Primeiro, através de um processo de fuzzificação, se mapeia cada entrada de dados ao sistema
em uma ou mais funções de pertinência. Então, as regras de um conjunto de regras (também prédefinidas) são avaliadas verificando quais são aplicáveis e quão fortemente cada regra deve ser
disparada dependendo da forma como foram ativadas cada função de pertinência. Finalmente,
através de um processo de defuzzificação, a saída é calculada baseada nos valores mapeados em
funções de pertinência de saída em função das regras que foram disparadas (PASSOLD, 1997).
III - DESENVOLVIMENTO
Com base nas informações pesquisadas neste trabalho, foi possível desenvolver uma
página web inteligente que auxiliasse a pesquisa e identificação de Plantas Bioativas. Tal página foi
desenvolvida usando como suporte um sistema de RBC desenvolvido em PHP e MySQL para o
banco de dados.
Para a implementação do sistema, não se optou por nenhuma shell de RBC, mas pela
utilização da ferramenta de programação PHP para o desenvolvimento do RBC. Decidiu-se utilizar
a ferramenta de desenvolvimento PHP pelo fato deste ambiente ser voltado a web, visando uma
ampla divulgação do trabalho e um acesso público a base de dados. Outro motivo que originou a
escolha desta foi à utilização de uma ferramenta sem custos, ou seja, a ferramenta é de livre acesso.
Para o banco de dados optou-se inicialmente em utilizar o Oracle, mas devido a
entrevistas com o especialista confirmando a necessidade de utilização de ferramentas gratuitas
mudou-se a ferramenta para o MySQL por ser de acesso livre.
Enfatizou-se o uso da Internet no sistema, porque o usuário interessado em realizar uma
consulta tem um grande contato com uma página web, bastante conhecida pelos usuários de
computador. Também como conseqüência do uso da internet, disponibilizaria a utilização do
sistema em qualquer máquina que possa acessar a mesma, já que todas as consultas são executadas
pelo servidor deixando o sistema leve para o usuário.
O escopo do sistema foi delimitado apenas no gênero Phyllanthus, por motivo de tempo
para o desenvolvimento do sistema em relação a grande diversidade deste gênero (cerca de 500
espécies catalogadas) e a grande semelhança entre as espécies. Também como justificativa da
escolha de um único gênero foi a grande complexidade em criar um modelo que fosse genérico o
suficiente para englobar todas as famílias de plantas bioativas, e específico o bastante para
diferenciar espécies muito semelhantes.
À seguir será apresentado o desenvolvimento deste sistema.
28
1. ARQUITETURA DO SISTEMA
O sistema é composto por três módulos residentes em um servidor que interagem com o
visitante, o pesquisador e o administrador, conforme a Figura 7.
Figura 7 – Arquitetura proposta para o sistema.
A seguir, estão descritos todos os passos da transação, enumerados de acordo com a
Figura 7.
1. O visitante acessa a página web, selecionando a opção desejada:
Consulta: o visitante acessa por meio do link Consulta e abre uma página dinâmica
onde as opções de consulta vêm da base de dados. Ele preenche alguns campos obrigatórios e
outros campos que o usuário achar importantes, e pressiona o botão enviar. É solicitada uma outra
página dinâmica, para os dados da consulta.
Fale Conosco: o visitante acessa por meio do link Contato uma página web contendo
um formulário para preenchimento de nome, e-mail, e um comentário. Após o preenchimento e
pressionado o botão Enviar, é solicitada uma outra página dinâmica para os dados, que envia um email para o administrador e para o usuário. O browser envia o pedido http para o servidor web por
meio da Internet ou Intranet.
29
Inteligência Artificial: o visitante acessa por meio do link Inteligência Artificial uma
página web contendo informações sobre o uso da Inteligência Artificial neste sistema e uma
introdução básica do que é Raciocínio Baseado em Casos.
Sistema: o visitante acessa pelo link Sistema uma página web com informações sobre o
sistema propriamente dito, tais como: suas vantagens em relação a outros mecanismos de busca, a
importância do uso do Raciocínio Baseado em Casos e referências para o desenvolvimento.
2. O servidor web (APACHE) reenvia o pedido contendo os dados da consulta para o
módulo PHP. O módulo PHP interpreta os dados enviados e processa a consulta desejada,
interagindo com o banco de dados MySQL. O PHP transforma a resposta que é entendida apenas
por ele e pelo banco e envia em modo HTML para o servidor APACHE.
3. O servidor APACHE gera uma página para o browser do visitante com a planta mais
adequada aos dados de entrada.
Do ponto de vista do pesquisador, os procedimentos são:
4. O pesquisador acessa a página web e tem a sua disposição um link adicional descrito
a seguir:
Novo Caso: o pesquisador acessa por meio do link Novo Caso e abre uma página
dinâmica onde são inseridas as características da planta através da seleção de combobox com termos
pré-definidos. Ele preenche alguns campos obrigatórios e outros campos que o usuário achar
importantes, e pressiona o botão enviar. É solicitada uma outra página de confirmação.
5. O servidor web (APACHE) reenvia o pedido contendo os dados da planta para o
módulo PHP. O módulo PHP interpreta os dados enviados e processa a transação desejada,
interagindo com o banco de dados MySQL. O PHP transforma a resposta que é entendida apenas
por ele e pelo banco e envia em modo HTML para o servidor APACHE.
6. O servidor APACHE gera uma página para o browser do visitante com a confirmação
dos dados de entrada.
Do ponto de vista do Administrador, além dos itens descritos acima ele tem a opção de
cadastrar novos pesquisadores, conforme descrito abaixo:
30
7. O Administrador acessa a página web e cadastra o novo pesquisador no sistema.
8. Os dados são enviados para o servidor APACHE que reenvia ao módulo PHP e
interage com o banco de dados MySQL, devolvendo a resposta em forma de página web.
9. Retorna para o browser uma mensagem de confirmação de sucesso da operação, ou o
motivo pelo qual a operação não pôde ser realizada.
2. MODELAGEM DO SISTEMA
Depois de definida a forma de implementação das etapas do ciclo do RBC, partiu-se
para a modelagem do protótipo do sistema.
Em virtude da inexistência de uma metodologia específica para a modelagem de
sistemas inteligentes, optou-se pela análise essencial que proporciona simplicidade no processo de
modelagem.
Dentre as ferramentas disponíveis na análise essencial, optou-se pelo Modelo EntidadeRelacionamento (MER), Dicionário de Dados, Diagrama de Contexto, os Diagramas de Fluxo de
Dados (DFD’s), e a Especificação de Processos.
2.1. Modelo Entidade Relacionamento (MER)
O MER especifica a estrutura lógica geral do BD baseado na percepção do mundo real.
Inicialmente era montado sobre três conceitos básicos: a entidade, o relacionamento e o atributo.
Mais tarde, com a difusão do modelo, diversas extensões foram propostas, tendo outros conceitos
como a entidade associativa, e a generalização/especialização sido incorporados ao modelo
(HEUSER, 1998).
Para a modelagem do banco de dados, utilizou-se os modelos lógicos (conceitual) e
físico, tendo sido construídos com a ferramenta Case Power Designer Data Architect 6.1, mostrado
na Figura 8 e 9.
31
Pesquisadores
Cod_Pesquisador
Pesquisador_Nome
Pesquisador_Instituicao
Pesquisador_Contato
Foi enc ontrada
FE_Sepalas
Cod_FESepalas
Des_FESepalas
Pos s ui
Pos s ui
Tabela_Especies
FP_Consistencia
FP_Pedicelo
Cod_FPPedicelo
Des_FPPedicelo
FP_Ovario
Cod_FPOvario
Des_FPOvario
FP_DiscGland
Cod_FPDiscGland
Des_FPDiscGland
Pos s ui
Pos s ui
Cod_Especie
Nome Cientifico
Nome Comum
Hyperlink
Caule_Folhas
Cod_CauFolha
Des_CauFolha
FP_Fruto
Cod_FPFruto
Des_FPFruto
FE_Estames
Cod_FEEstames
Des_FEEstames
FE_Anteras
Pos s ui
Pos s ui
Cod_FEAnteras
Des_FEAnteras
Estipulas_Cor
Pos s ui
Pos s ui
Pos s ui
Cod_EstipulasCor
Des_EstipulasCor
Sem_Ornament
Cod_SemOrnament
Des_SemOrnament
Pos s ui
Caule_Forma
Cod_CauForm
Des_CauForm
Foi pes quis ada
FE_Glandulas
Cod_FEGlandulas
Des_FEGlandulas
Pos s ui
FP_Sepalas
Cod_FPSepalas
Des_FPSepalas
Cod_FPConsistencia
Des_FPConsistencia
Pesquisador_Especie
Local_Amostragem
Data_Visualizacao
Pos s ui
Pos s ui
Pos s ui
Sem_Compr
Cod_SemCompr
Des_SemCompr
Flor_Pistladas
Cod_FlorPistladas
Des_FlorPistladas
Pos s ui
Pos s ui
Pos s ui
Caule_Tamanho
Cod_CauTam
Des_CauTam
Pos s ui
Pos s ui
Folha_Forma
Cod_FolhaForm
Des_FolhaForm
Folha_Ápice
Cod_FolhaApice
Des_FolhaApice
Flor_Estamin
Cod_FlorEstamin
Des_FlorEstamin
Folha_Base
Cod_FolhaBase
Pos s ui
Des_FolhaBase
Pos s ui
Pos s ui
Pos s ui
Estipulas_Forma
Cod_EstipulasForma
Des_EstipulasForma
Folha_Bordo
Cod_FolhaBordo
Des_FolhaBordo
Figura 8 – Diagrama de Entidade-Relacionamento Modelo Lógico.
32
PESQUISADORES
COD_PESQUISADOR
PESQUISADOR_NOME
PESQUISADOR_INSTITUICAO
PESQUISADOR_CONTATO
integer
long varchar
long varchar
long varchar
COD_PESQ UISADOR = CO D_PESQUIS ADOR
FE_SEPALAS
COD_FESEPALAS
integer
DES_FESEPALAS
long varchar
FP_CONSISTENCIA
COD_FPCONSISTENCIA
integer
DES_FPCONSISTENCIA
long varchar
FP_SEPALAS
COD_FPSEPALAS
integer
DES_FPSEPALAS
long varchar
COD_FESEPA LA S = CO D_FE SEPALAS
COD_ESPE CIE = COD_ESPE CIE
PESQUISADOR_ESPECIE
COD_ESPECIE
integer
COD_PESQUISADOR
integer
LOCAL_AMOSTRAGEM
long varchar
DATA_VISUALIZACAO
date
COD_FPCONS IST ENCIA = COD_FPCONSIST ENCIA
FE_GLANDULAS
COD_FEGLANDULAS
integer
DES_FEGLANDULAS
long varchar
COD_FEGLANDU LA S = CO D_FE GLANDULAS
COD_FEEST A MES = COD_FEEST AMES
COD_FPSEPA LA S = CO D_FP SEPALAS
COD_ESPECIE
COD_CAUTAM
COD_CAUFORM
COD_CAUFOLHA
COD_FOLHAFORM
COD_FPPEDICELO = COD_FPPEDICELO
COD_FOLHAAPICE
COD_FOLHABASE
FP_OVARIO
COD_FOLHABORDO
COD_FPOVARIO
integer
COD_ESTIPULASCOR
DES_FPOVARIO
long varchar
COD_ESTUPULASFORMA
COD_FESEPALAS
COD_FEESTAMES
COD_FPOVAR IO = COD_FPOVARIO
COD_FEANTERAS
COD_FEGLANDULAS
FP_DISCGLAND
COD_FPSEPALAS
COD_FPDISCGLAND
integer
COD_FPCONSISTENCIA
DES_FPDISCGLAND
long varchar
COD_FPPEDICELO
COD_FPOVARIO
COD_FPFRUTO
COD_FPDISCGLAND = COD_FPDISCGLAND COD_FPDISCGLAND
COD_SEMCOMPR
COD_CAUFOR M = C OD_CAUFORM
COD_SEMORNAMENT
COD_FLORESTAMIN
COD_FLORPISTLADAS
CAULE_FORMA
NOME_CIENTIFICO
COD_CAUFORM
integer
NOME_COMUM
DES_CAUFORM
long varchar
HYPERLINK
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
integer
long varchar
long varchar
long varchar
COD_CAUFOLHA = COD _C AUFOLHA
integer
long varchar
FE_ANTERAS
COD_FEANTERAS
integer
DES_FEANTERAS
long varchar
ESPECIES
FP_PEDICELO
COD_FPPEDICELO
integer
DES_FPPEDICELO
long varchar
FE_ESTAMES
COD_FEESTAMES
DES_FEESTAMES
COD_FEANT E RAS = COD_FEANT ERAS
ESTIPULAS_COR
COD_ESTIPULASCOR
integer
DES_ESTIPULASCOR
long varchar
COD_EST IPULASCOR = COD _E ST IPULASC OR
SEM_ORNAMENT
COD_SEMORNAMENT
integer
DES_SEMORNAMENT
long varchar
COD_SEMORNAMENT = COD_SEMORNAMENT
COD_SEMC OMPR = COD_SEMCOMPR
SEM_COMPR
COD_SEMCOMPR
integer
DES_SEMCOMPR
long varchar
COD_FLORPIST LADAS = COD_FLORPIST LADAS
CAULE_FOLHAS
COD_CAUFOLHA
integer
DES_CAUFOLHA
long varchar
FLOR_PISTLADAS
COD_FLORPISTLADAS
integer
DES_FLORPISTLADAS
long varchar
FP_FRUTO
COD_FPFRUTO
DES_FPFRUTO
integer
long varchar
CAULE_TAMANHO
COD_CAUTAM
integer
DES_CAUTAM
long varchar
FOLHA_FORMA
COD_FOLHAFORM
integer
DES_FOLHAFORM
long varchar
COD_FPFRUT O = COD_FPFRUT O
COD_EST U PULASFORMA = COD_EST UP ULASFORMA
ESTIPULAS_FORMA
COD_ESTUPULASFORMA
integer
DES_ESTIPULASFORMA
long varchar
COD_CAUT AM = COD_CAUT AM
COD_FLOREST A MIN = COD_FLOREST AMIN
COD_FOLHAFORM = COD_FOLHAFORM
FOLHA_APICE
COD_FOLHAAPICE
integer
DES_FOLHAAPICE
long varchar
COD_FOLHABAS E = COD_FO LH ABASE
COD_FOLHAAPICE = COD_FOLHAAPICE
COD_FOLHABOR DO = C OD_FOLHABORDO
FLORES_ESTAMIN
COD_FLORESTAMIN
integer
DES_FLORESTAMIN
long varchar
FOLHA_BASE
COD_FOLHABASE
DES_FOLHABASE
integer
long varchar
FOLHA_BORDO
COD_FOLHABORDO
integer
DES_FOLHABORDO
long varchar
Figura 9 – Diagrama de Entidade-Relacionamento Modelo Físico.
33
2.2. Dicionário de Dados
O Dicionário de Dados consiste na descrição de todas as tabelas componentes da base
de dados, assim como seus itens de dados e fluxos dos processos modelados nos DFD’s, definindo,
assim, a composição/estrutura dos mesmos.
2.2.1. Descrição das Tabelas de Dados
O sistema utiliza 26 tabelas de dados que estão representados na Tabela 5.
Tabela 5 – Descrição das Tabelas de Dados
Nome da Tabela
Caule_Folhas
Caule_Forma
Caule_Tamanho
Espécies
Estípulas_Cor
Estípulas_Forma
FE_Anteras
FE_Estames
FE_Glandulas
FE_Sepalas
Flores_Estamin
Flor_Pistiladas
Folha_Ápice
Folha_Base
Folha_Bordo
Folha_Forma
FP_Consistência
FP_DiscGland
FP_Fruto
FP_Ovário
FP_Pedicelo
FP_Sépalas
Pesquisadores
Pesquisador_Espécie
Sem_Ornament
Sem_Compr
Descrição
Armazenamento dos dados referentes à disposição das folhas no caule
Armazenamento dos dados referentes à forma do caule
Armazenamento dos dados referentes ao tamanho do caule
Armazenamento dos dados referentes às espécies de plantas bioativas
Armazenamento dos dados referentes à cor da estípula
Armazenamento dos dados referentes à forma da estípula
Armazenamento dos dados referentes a anteras de flores estaminadas
Armazenamento dos dados referentes a estames de flores estaminadas
Armazenamento dos dados referentes a glândulas de flores estaminadas
Armazenamento dos dados referentes a sépalas de flores estaminadas
Armazenamento dos dados referentes a flores estaminadas
Armazenamento dos dados referentes à flor pistilada
Armazenamento dos dados referentes ao ápice da folha
Armazenamento dos dados referentes à base da folha
Armazenamento dos dados referentes ao bordo da folha
Armazenamento dos dados referentes à forma da folha
Armazenamento dos dados referentes à consistência das flores pistiladas
Armazenamento dos dados referentes ao disco glandular das flores pistiladas
Armazenamento dos dados referentes ao fruto das flores pistiladas
Armazenamento dos dados referentes ao ovário das flores pistiladas
Armazenamento dos dados referentes ao pedicelo das flores pistiladas
Armazenamento dos dados referentes a sépalas das flores pistiladas
Armazenamento dos dados referentes a pesquisadores
Armazenamento dos dados referentes ao local de amostragem do pesquisador
Armazenamento dos dados referentes à ornamentação das sementes
Armazenamento dos dados referentes ao comprimento da semente
34
2.2.2. Descrição dos Atributos das Tabelas
A descrição dos atributos das tabelas, separados em quatro colunas, sendo para a coluna
chave determinado os seguintes valores: P – (chave primária) e E – (chave estrangeira). As Tabelas
de 6 a 31 descrevem todas as variáveis do sistema.
Tabela 6 – Dicionário de Dados da Entidade Caule_Folhas
Atributo
Cod_CauFolha
Des_CauFolha
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da disposição de folhas no caule
Descrição da disposição de folhas no caule
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_CauFolha.
Tabela 7 – Dicionário de Dados da Entidade Caule_Forma
Atributo
Cod_CauForm
Des_CauForm
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da forma do caule
Descrição da forma do caule
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_CauForm.
Tabela 8 – Dicionário de Dados da Entidade Caule_Tamanho
Atributo
Cod_CauTam
Des_CauTam
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador do tamanho do caule
Descrição do tamanho do caule
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_CauTam.
Tabela 9 – Dicionário de Dados da Entidade Estipulas_Cor
Atributo
Cod_EstipulaCor
Des_ EstipulaCor
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da cor da estípula
Descrição da cor da estípula
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ EstipulaCor.
35
Tabela 10 – Dicionário de Dados da Entidade Estipulas_Forma
Atributo
Cod_EstipulaForma
Des_ EstipulaForma
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da forma da estípula
Descrição da forma da estípula
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ EstipulaForma.
Tabela 11 – Dicionário de Dados da Entidade Espécies
Atributo
Chave
Tipo
Descrição
Cód_Espécie
P
Inteiro
Identificador do tamanho do caule
Cód_CauTam
E
Inteiro
Identificador do Tamanho do Caule
Cód_CauForm
E
Inteiro
Identificador da Forma do Caule
Cód_CauFolha
E
Inteiro
Identificador da Disposição das Folhas
Cód_FolhaForm
E
Inteiro
Identificador da Forma da Folha
Cód_FolhaApice
E
Inteiro
Identificador do Ápice da Folha
Cód_FolhaBase
E
Inteiro
Identificador da Base da Folha
Cód_FolhaBordo
E
Inteiro
Identificador do Bordo da Folha
Cód_EstipulasCor
E
Inteiro
Identificador da Cor das Estipulas
Cód_EstipulasForma
E
Inteiro
Identificador da Forma das Estipulas
Cód_FESepalas
E
Inteiro
Identificador da Sépala da Flor Estaminada
Cód_FEEstames
E
Inteiro
Identificador do Estame da Flor Estaminada
Cód_FEAnteras
E
Inteiro
Identificador da Antera da Flor Estaminada
Cód_FEGlandulas
E
Inteiro
Identificador da Glândula da Flor Estaminada
Cód_FPSepalas
E
Inteiro
Identificador da Sépala da Flor Pistilada
Cód_FPConsistencia
E
Inteiro
Identificador da Consistência da Flor Pistilada
Cód_FPPedicelo
E
Inteiro
Identificador do Pedicelo da Flor Pistilada
Cód_FPOvario
E
Inteiro
Identificador do Ovário da Flor Pistilada
Cód_FPFruto
E
Inteiro
Identificador do Fruto da Flor Pistilada
Cód_FPDiscGland
E
Inteiro
Identificador do Disco Glandular da Flor Pist.
Cód_SemCompr
E
Inteiro
Identificador do Comprimento da Semente
Cód_SemOrnament
E
Inteiro
Identificador da Ornamentação da Semente
Cód_FloresEstamin
E
Inteiro
Identificador das Flores Estaminadas
Cód_FlorPistiladas
E
Inteiro
Identificador da Flor Pistilada
Nome_Cientifico
Caracter (30)
Nome Científico da Planta
Nome_Comum
Caracter (30)
Nome Comum da Planta
Hyperlink
Caracter (30)
Link com maiores informações
Obs: Esta entidade compõe-se de chave primária simples. O atributo Cod_Especie é a chave primária,
enquanto os outros Cod’s são chaves estrangeiras, provenientes das suas respectivas entidades.
Tabela 12 – Dicionário de Dados da Entidade FE_Anteras
Atributo
Cod_FEAnteras
Des_ FEAnteras
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da antera da flor estaminada
Descrição da antera da flor estaminada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FEAnteras.
36
Tabela 13 – Dicionário de Dados da Entidade FE_Estames
Atributo
Cod_FEEstames
Des_ FEEstames
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador do estame da flor estaminada
Descrição do estame da flor estaminada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FEEstames.
Tabela 14 – Dicionário de Dados da Entidade FE_Glandulas
Atributo
Cod_FEGlandulas
Des_ FEGlandulas
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da glândula da flor estaminada
Descrição da glândula da flor estaminada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FEGlandulas.
Tabela 15 – Dicionário de Dados da Entidade FE_Sepalas
Atributo
Cod_FESepalas
Des_ FESepalas
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da sépala da flor estaminada
Descrição da sépala da flor estaminada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FESepalas.
Tabela 16 – Dicionário de Dados da Entidade Flores_Estamin
Atributo
Cod_FloresEstamin
Des_ FloresEstamin
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da flor estaminada
Descrição da flor estaminada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FloresEstamin.
Tabela 17 – Dicionário de Dados da Entidade Flor_Pistiladas
Atributo
Cod_FlorPistilada
Des_ FlorPistilada
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da flor pistilada
Descrição da flor pistilada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FlorPistilada.
37
Tabela 18 – Dicionário de Dados da Entidade Folha_Apice
Atributo
Cod_FolhaApice
Des_ FolhaApice
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador do ápice da folha
Descrição do ápice da folha
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FolhaApice.
Tabela 19 – Dicionário de Dados da Entidade Folha_Base
Atributo
Cod_FolhaBase
Des_ FolhaBase
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da base da folha
Descrição da base da folha
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FolhaBase.
Tabela 20 – Dicionário de Dados da Entidade Folha_Bordo
Atributo
Cod_FolhaBordo
Des_ FolhaBordo
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador do bordo da folha
Descrição do bordo da folha
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FolhaBordo.
Tabela 21 – Dicionário de Dados da Entidade Folha_Forma
Atributo
Cod_FolhaForma
Des_ FolhaForma
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da forma da folha
Descrição da forma da folha
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FolhaForma.
Tabela 22 – Dicionário de Dados da Entidade FP_Consistencia
Atributo
Cod_FPConsistencia
Des_ FPConsistencia
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da consistência da flor pistilada
Descrição da consistência da flor pistilada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FPConsistencia.
38
Tabela 23 – Dicionário de Dados da Entidade FP_DiscGland
Atributo
Cod_FPDiscGland
Des_ FPDiscGland
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador do disco glandular da flor pist.
Descrição do disco glandular da flor pistilada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FPDiscGland.
Tabela 24 – Dicionário de Dados da Entidade FP_DiscGland
Atributo
Cod_FPFruto
Des_ FPFruto
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador do fruto da flor pistilada
Descrição do fruto da flor pistilada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FPFruto.
Tabela 25 – Dicionário de Dados da Entidade FP_Ovario
Atributo
Cod_FPOvario
Des_ FPOvario
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador do ovário da flor pistilada
Descrição do ovário da flor pistilada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FPOvario.
Tabela 26 – Dicionário de Dados da Entidade FP_Pedicelo
Atributo
Cod_FPPedicelo
Des_ FPPedicelo
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador do pedicelo da flor pistilada
Descrição do pedicelo da flor pistilada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FPPedicelo.
Tabela 27 – Dicionário de Dados da Entidade FP_Sepalas
Atributo
Cod_FPSepalas
Des_ FPSepalas
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da sépala da flor pistilada
Descrição da sépala da flor pistilada
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ FPSepalas.
39
Tabela 28 – Dicionário de Dados da Entidade Pesquisadores
Atributo
Cod_Pesquisador
Pesquisador_Nome
Pesquisador_Instituicao
Pesquisador_Contato
Chave
P
-
Tipo
Inteiro
Caracter (30)
Caracter (30)
Caracter (30)
Descrição
Identificador do pesquisador
Descrição do nome do pesquisador
Descrição da instituição do pesquisador
Descrição do meio de contato do pesquisador
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_Pesquisador.
Tabela 29 – Dicionário de Dados da Entidade Pesquisadore_Espécie
Atributo
Chave
Tipo
Descrição
Cod_Espécie
P,E
Inteiro
Identificador da espécie
Cod_Pesquisador
P,E
Inteiro
Identificador do pesquisador
Local_Amostragem
Caracter (30)
Descrição do local de amostragem
Data_Visualizacao
Data
Data de visualização da espécie
Obs: Esta entidade compõe-se de chave primária composta. O atributo Cod_Especie é a chave primária e
chave estrangeira proveniente da entidade Especies e Cod_Pesquisador, chave primária e chave estrangeira
proveniente da entidade Pesquisadores.
Tabela 30 – Dicionário de Dados da Entidade Sem_Ornament
Atributo
Cod_SemOrnament
Des_ SemOrnament
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador da ornamentação da semente
Descrição da ornamentação da semente
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ SemOrnament.
Tabela 31 – Dicionário de Dados da Entidade Sem_Compr
Atributo
Cod_ SemCompr
Des_ SemCompr
Chave
Tipo
P
Inteiro
Caracter (30)
Descrição
Identificador do comprimento da semente
Descrição do comprimento da semente
Obs: Esta entidade possui chave primária simples, constituída do atributo Cod_ SemCompr.
2.3. Diagrama de Contexto
O diagrama de fluxo de dados foi construído com a ferramenta Case Power Designer
Process Analyst 6.1. O Diagrama de Contexto trata da descrição gráfica que representa a troca de
informações entre o sistema e o ambiente, conforme visto na Figura 10.
40
Dados_Consulta
1
Dados_Pesquisador
Sistema de Identificação
de Bioativas
Usuário
Dados_Bioativas
Resultado_Consulta
+
Figura 10 – Diagrama de Contexto.
2.4. Diagrama de Fluxo de Dados (DFD’s)
Também conhecido como Gráfico de Bolhas, o Diagrama de Fluxo de Dados é a
representação gráfica em rede de um sistema, e mostra os componentes ativos do sistema e as
interfaces de dados entre eles, sendo a representação exata de como funciona a maioria dos
sistemas. Na seqüência são apresentados o Diagrama de Fluxo de Dados integral (Figura 11).
3
Bioativas
Dados_Bioativas_Ok
Manter
Bioativas
Pesquisadores
Pesquisador_Bioativa
Resposta_Consulta
Dados_Pesquisadores_Ok
Dados_Bioativas
1
Consultar
Bioativas
Dados_Consulta
Resultado_Consulta
2
Usuário
Dados_Pesquisador
Manter
Pesquisadores
Figura 11 – Diagrama de Fluxo de Dados.
2.5. Especificação de Processos
Especificação de Processos são procedimentos de transformação que especificam o quê
ocorre num processo, descrevendo os processos de nível n.
Após a construção dos DFD’s iniciou-se a Especificação dos Processos, optando-se por
uma descrição textual de cada um.
41
2.5.1. Processo 1 – Consultar Bioativas
Através deste processo dá-se a recuperação dos casos mais similares, que são
posteriormente listados para o usuário como resultado da consulta.
2.5.2. Processo 2 - Manter Pesquisadores
Este processo consiste da manutenção da tabela de pesquisadores do sistema, sendo
responsável pela inclusão, alteração, consulta e exclusão realizada nesta tabela. Neste processo, o
usuário fornece os dados a serem processados pelo sistema e estes são acrescidos, recuperados ou
eliminados da base, conforme o comando do mesmo.
2.5.3. Processo 3 - Manter Bioativas
Este processo representa, indiretamente a etapa de aprendizagem do sistema, uma vez
que este é responsável pela inclusão, alteração e exclusão das informações referentes às plantas,
armazenadas fisicamente na base de casos.
As informações fornecidas pelo usuário são inseridas nos cadastros gerais do sistema, e
armazenadas, constituindo a base de casos do sistema.
3. O Modelo Difuso
O sistema utiliza a lógica difusa para modelar as variáveis que podem assumir uma
incerteza no que diz respeito a sua classificação. Para estas variáveis foram construídas as seguintes
funções de pertinência como pode ser visto nas Tabelas 32 e 33 , e Figuras 12 e 13 respectivamente.
Foram utilizadas funções do tipo triangulares, pois estas se apresentaram uma curva de fácil
implementação de acordo com modelo proposto. O código implementado para o modelo difuso
pode ser consultado no Anexo II deste trabalho.
42
Tabela 32 – Funções da Variável Tamanho do Caule.
Classificação
Intervalo
x ≤ 20
x > 20
x ≤ 50
x > 50
x ≤ 80
x > 80
Pequeno
Médio
Grande
Pequeno
1
f(x)
y = x / 20
y = -x/30 + 5/3
y = x/30 – 2/3
y = -x/30 + 8/3
y = x/30 – 5/3
y=1
Médio
Grande
0
0
10
20
30
40
50
60
70
80
90
Figura 12 – Distribuição da Variável Tamanho do Caule.
Tabela 33 – Funções da Variável Tamanho da Semente.
Classificação
Pequeno
Médio
Grande
Intervalo
x≤3
x>3
x≤6
x>6
x≤9
x>9
f(x)
y=x/3
y = -x/3 + 2
y = x/3 – 1
y = -x/3 + 3
y = x/3 – 2
y=1
100
43
Pequeno
Médio
Grande
1
0
0
1
2
3
4
5
6
7
8
9
10
Figura 13 – Distribuição da Variável Tamanho da Semente.
4. O Modelo de RBC
O sistema utilizou a contagem de características como método de recuperação. A
princípio optou-se para a utilização de uma combinação de dois métodos de busca, onde também se
utilizaria do método do vizinho mais próximo. Cada um deles se mostra mais adequado a uma
situação de busca. Devido as características do sistema optou-se por descartar o método do vizinho
mais próximo para as variáveis: tamanho do caule, número de sépalas, pedicelo, diâmetro do fruto e
sementes devido ao modelo difuso adaptar estas variáveis ao método de contagem de
características. O código implementado para o método de contagem de características pode ser
conferido no Anexo III deste trabalho.
5. Descrição das Telas do Sistema Proposto
Após a conclusão da modelagem, procedeu-se a implementação propriamente dita do
sistema, na linguagem PHP, conforme já havia sido citado anteriormente.
A Figura 14 mostra a tela inicial do sistema, nesta tela o usuário tem acesso ao menu de
opções do sistema.
44
Figura 14 – Tela Inicial do Sistema.
Através de uma tela semelhante a da Figura 14, são mantidos também os dados das
demais tabelas auxiliares.
45
Figura 15 – Tela de Cadastro e Manutenção da Tabela de Pesquisadores.
Na tela de cadastro de pesquisadores na Figura 15 são mantidos as informações a
respeito de seu login e senha além da instituição de origem e e-mail para contato.
Na tela da Figura 16 são inseridos os dados para realizar a busca utilizando a técnica de
RBC, os atributos são selecionados através de combos, exceto para as variáveis difusas que são
informados através de valores.
46
Figura 16 – Tela de Consulta a Base de Conhecimento Utilizando a Técnica de RBC.
47
Figura 17 – Tela de Resultados da Pesquisa RBC.
Na tela da Figura 17 são exibidos os resultados do método de recuperação. As
informações exibidas são o nome da espécie e a similaridade do mesmo com o caso de entrada.
Nesta tela existem duas possibilidades, obter a descrição da espécie clicando sobre a mesma ou
adicionar o caso de entrada a base de dados.
Na tela da Figura 18 é apresentado a descrição da espécie selecionada. Esta possui uma
imagem da espécie e dados relacionados a sua fitologia. Esta tela é somente informativa, o sistema
possui telas semelhantes a da Figura 16 para cadastro e manutenção de dados relacionados as
espécies.
48
Figura 18 – Tela Descritiva da Espécie.
IV - CONCLUSÕES E RECOMENDAÇÕES
Pode-se concluir, ao final do presente trabalho, que cada um dos objetivos do mesmo
foram atingidos.
O sistema foi desenvolvido com técnicas de inteligência artificial para o ambiente de
internet, visando o acesso público e de interface comum ao usuário, para a identificação de Plantas
Bioativas que pode auxiliar nos estudos de profissionais da área, assim como estudantes.
Foi criada uma base inicial de casos capaz de propor respostas a identificação botânica
de Plantas Bioativas, apresentando resultado das espécies mais prováveis de corresponderem àquela
a ser identificada. O sistema propõe adicionar a espécie ao acervo caso essa não tenha sido
encontrada de forma a deixar o sistema mais preparado a consultas futuras.
Foi possível estudar o comportamento do sistema de raciocínio baseado em casos com
aplicação na identificação botânica de Plantas Bioativas.
A técnica de Raciocínio Baseado em Casos se mostrou bastante adequada à tarefa de
busca, apresentando como principal vantagem a possibilidade de implementação de uma base de
conhecimentos mais compacta que aquelas necessárias para técnicas simbólicas como Sistemas
Especialistas.
Fica como sugestões para futuras implementações a inclusão de novos atributos para a
contemplação de um maior número de espécies. A disponibilização de escolha do método de busca
para comparação dos resultados e a implementação de novas funções de pertinências para as
variáveis fuzzy com o objetivo de representar melhor os intervalos.
Finalizando, este trabalho permitiu um acréscimo nos conhecimentos relacionados às
técnicas de modelagem de sistemas, lógica de programação, banco de dados, e principalmente, nos
conhecimentos da técnica de Raciocínio Baseado em Casos. Conclui-se com o trabalho toda a
modelagem do sistema bem como a modelagem da base de dados, com esse material foi dado início
a implementação do sistema. Na data de entrega deste documento o sistema estava concluído e
disponível para os responsáveis pela validação, sendo estes profissionais da estação experimental de
Itajaí a Epagri.
BIBLIOGRAFIA
ARNOLD, W. R.; BOWIE, J. S. Artificial intelligence - a Personal, commonsense Journey.
Englewood Cliffs: Prentice-Hall, 1986. 219p.
ASHLEY, K. D. Reasoning with Cases and Hypotheticals in HYPO. International Journal ManMachine Studies, 34, 1991.
BARRETO, Jorge Muniz. Inteligência artificial no limiar do século XXI. Florianópolis: PPP
Edições, 1997.
CAPELLARI, Junior L. Plantas Medicinais e Aromáticas. Volume 1. São Paulo: Sebrae, 1996.
62p.
Cbr-Web. The CBR Homepage. Disponível em: <http://www.cbr-web.org>. Acesso em: 20
setembro 2003.
CHARNIAC, E.; MCDERMOTT, D. Introduction to Artificial Intelligence. Massachusetts:
Addison-Wesley, 1985.
COSTA, M. T. C. Uma Arquitetura Baseada em Agentes para Suporte ao Ensino à Distância. Tese
submetida à Universidade Federal de Santa Catarina para a obtenção do título de Doutor em
Engenharia de Produção. Florianópolis, 1999. Disponível em: <http://www.eps.ufsc.br/
teses99/thiry>. Acesso em: 09 setembro 2003.
DALFOVO, O. Desenvolvimento de um Sistema Informatizado Usando a Técnica RBC para
Auxiliar no Plantio de Árvores Frutíferas. Blumenau, 1999. Disponível em:
<http://campeche.inf.furb.rct-sc.br/phps/empmon/artigo/Prof._Dr._Oscar_Dalfovo_Artigo_
ICIE_POMAR_RBC_Oscar_Dalfovo.doc>. Acesso em: 20 setembro 2003.
DI STASI, L. C. Plantas Medicinais: arte e ciência.São Paulo: Universidade Estadual Paulista,
1996. 230p.
ESTADÃO. O Estado de S. Paulo.Disponível em: <http://www.estado.estadao.com.br/edicao/
especial/plantas/listplan.html>. Acesso em: 15 outubro 2003.
51
FERNANDES, Anita M. Inteligência Artificial: noções gerais. 1. ed. Florianópolis: Visual Books
Ltda, 2003. 160p.
GENTNER, D. Structure Mapping - A Theoretical Framework for Analogy. Cognitive Science,
Vol. 7, pp. 155-170, 1983.
HAMMOND K. Chef: A Model of Case BasedPlanning. In Proc. American Association for
Artificial Intelligence, AAAI86, Philadelphia, PA August 1986.
HEUSER, C. A. Projeto de Bancos de Dados. 3 ed. Porto Alegre: Sagra-Luzzatto, 1998.
HINRICHS, T. R. Problem Solving in Open Worlds: A Case Study Design. Nothvale, NJ Erlbaum,
1992.
INFOHERBS. InfoHebs. Disponível em: <http://www.infoherbs.com>. Acesso em: 10 outubro
2003.
KOLODNER, Janet. Reconstrutive Memory: A Computer Model. Cognitive Science, 7(iv), 1983.
KOLODNER, Janet. Case-Based Reasoning. San Francisco: Morgan Kaufmann Pub. Inc, 1993.
668p.
LAGEMANN, G. V. RBC para o Problema de Suporte ao Cliente nas Empresas de Prestação de
Serviço de Software. Florianópolis, 1998. Disponível em: < http://www.eps.ufsc.br/
disserta98/lagemann/ >. Acesso em: 25 setembro 2003.
LEE, R. W. CBR Course Home Page. 13 maio. 1996. Disponível em:
<http://www.eps.ufsc.br/~martins/fuzzy/cbr.html>. Acesso em: 10 setembro 2003.
LEE, R. W. Pesquisa Jurisprudencial Inteligente. Florianópolis, 1998. Tese (Doutorado em
engenharia) – Programa de Pós Graduação em Engenharia de Produção PPGEP/UFSC,
Universidade Federal de Santa Catarina.
PASSOLD, F. Inteligência Artificial Aplicada a Sistemas de Manufatura. 10 novembro 1997.
Disponível em: <http://upf.tche.br/~passold/ apostila_ia.html>. Acesso em: 06 novembro 2003.
52
PEREIRA, V. de A.; DOTTO, Fábio Romano Lofrano. Página da Lógica Fuzzy. 10 fevereiro 1999.
Disponível em: <http://www.geocities.com/Athens/ Crete/2647/indexp.html>. Acesso em: 06
novembro 2003.
PORTER, B.; BAREISS, R. PROTOS: Na Experiment in Knowledge Acquisition for Heuristic
Classification Taks. Proc. of the 1st Int. Meeting on Advances in Learning, France, 1986.
REIS, L.A.; CARGNIN, M. L. SDDEP – Uma Aplicação na Área Médica Utilizando Raciocínio
Baseado em Casos. Florianópolis, 1997. Relatório de Estágio (Graduação em Ciência da
Computação) – Centro de Ciências Tecnológicas, Universidade Federal de Santa Catarina.
RIESBECK, C.K.; SCHANCK, R. Inside Case-Based Reasoning. Lawrence Erlbaum, 1989.
RISSLAND E.; SKALAK, D. CABARET: Rule Interpretation in a Hybrid Architecture.
International Journal of Man-Machine Studies 34, 1991.
SCHANCK, R.; ABELSON R. Scripts, Plans, Goals and Understanding. Hillsdale NJ, Lawrence
Erlbaum, 1977.
SCHULTZ, A. R. Botânica Sistemática. Volume 1. Porto Alegre: Globo, 1961. 241p.
SILVA, H. L. Planejamento Baseado em Casos Aplicado na Resolução de Não-Conformidades
Ambientais no Ciclo de Vida de Produtos, Processos e Serviços. Tese (Doutorado em engenharia).
Florianópolis, 1997. Disponível em: <http://www.eps.ufsc.br/teses98/harrysson/>. Acesso em: 15
setembro 2003.
SILVA, Junior A. A. Essentia herba - Plantas bioativas. Volume 1. Florianópolis: EPAGRI, 2003.
441p.
SIMPSON, R.; KOLODNER J. The MEDIATOR: Analyses of an Early Case Based Problem
Solver. Cognitive Science 13(4), 1989.
SYCARA, E. P. Resolving Adversial Conflicts: Na Approach to Integrating Case-Based and
Analytic Methods. Technical Report GIT-ICS-87/26, Georgia Institute of Technology, School of
Information and Computer Science, Atlanta GA, 1987.
WANGENHEIM, C. G.; WANGENHEIM, A. Raciocínio Baseado em Casos. 1a ed. Barueri:
Manole Ltda, 2003. 293p.
53
GLOSSÁRIO
Fármaco - Substância que é o principio ativo do medicamento.
Farmacologia - Estudo dos medicamentos, incluindo a sua aplicação.
Fitologia - Ciência que estuda os vegetais.
Fitoquímica – Componentes químicos dos vegetais.
Fitoterapia - É o tratamento das doenças com emprego de medicamentos de origem vegetal, isto é,
por meio de drogas vegetais secas ou partes vegetais recém colhidas e/ou seus extratos naturais.
Metabólitos - Substância que participa das reações do metabolismo de um organismo.
ANEXOS
ARTIGO CIENTÍFICO SOBRE O SISTEMA DE RECONHECIMENTO DE
PLANTAS BIOATIVAS
Sistema Para Reconhecimento de Plantas Bioativas
Antonio Amaury Silva Neto
[email protected]
Anita Maria da Rocha Fernandes, Dra.
[email protected]
Universidade do Vale do Itajaí – UNIVALI/Campus Itajaí
Rua Uruguai, 458 Centro
CEP 88302-202 Itajaí/SC
RESUMO
Este trabalho apresenta o desenvolvimento de um sistema inteligente para identificação de plantas bioativas, que são
espécies vegetais que possuem atividade farmacológica, biológica e/ou biocida, podendo ser utilizadas como base para
pesquisa em diversas instituições por profissionais e estudantes da área procurando auxiliar o uso adequado desta
bioatividade. O sistema foi desenvolvido aplicando a técnica de Raciocínio Baseado em Casos, buscando na memória
do sistema a experiência mais próxima com o problema de entrada. O algoritmo para cálculo da similaridade utilizado
foi o de contagem de características. O sistema foi desenvolvido na linguagem de programação para web PHP e banco
de dados MySQL, visando um acesso fácil e público as informações. Através desta ferramenta, foi possível obter
identificações mais precisas, com maior rapidez e segurança.
Palavras-Chave: Raciocínio Baseado em Casos, Inteligência Artificial, Plantas Bioativas.
ABSTRACT
This paper proposes the development of an intelligent system for identification of bioactive plants, that are vegetal
species which possess pharmacological, biological and/or biocide activity, to be used in research and education
institutions by professionals and students of the area. The system was developed applying the technique of Case-Based
Reasoning, searching in the system memory the nearest experience with the entrance problem. The system was
developed in PHP programming language for Web and MySQL database, aiming at an easy and public access to the
information. Clearer identifications in each specific case, with more rapidity and security are hoped to get with this aid.
Key-Words: Case-Based Reasoning, Artificial intelligence, Bioactive Plants.
1. Introdução
Este artigo visa apresentar o desenvolvimento de uma ferramenta capaz de identificar
espécies de plantas com fatores bioativos úteis à comunidade através de suas características
fitológicas, para utilização em instituições de pesquisa e ensino, por profissionais de saúde e pela
comunidade em geral que utiliza as plantas de acordo com sua atividade bioativa. Segundo Silva
(2003), Planta Bioativa é uma espécie vegetal que reúne componentes fitoquímicos (metabólitos
secundários com atividade farmacológica, biológica e/ou biocida).
A Inteligência Artificial é um tipo de inteligência produzida pelo homem para dotar as
máquinas de algum tipo de habilidade que simula a inteligência humana (FERNANDES, 2003). A
conceituação nos dicionários de computação é a "Aptidão ou capacidade de um dispositivo para
desempenhar funções que são normalmente associadas à inteligência humana, tais como raciocínio,
aprendizagem e auto-aperfeiçoamento".
Conforme Lee (1998), Raciocínio Baseado em Casos é uma técnica de Inteligência
Artificial que reproduz aspectos da cognição humana para resolver problemas especialistas. A idéia
central do RBC consiste em fazer o sistema “relembrar” de casos relevantes e reutilizá-los em uma
nova solução.
O estudo de sistemas inteligentes utilizando a técnica de Raciocínio Baseado em Casos
e a implementação de uma ferramenta na área de plantas bioativas, que se apresenta pouco
explorada e com recursos escassos, são as principais justificativas deste trabalho. Além destas, citase a necessidade de se aperfeiçoar e agilizar o processo de identificação destas plantas com o
objetivo de aumentar o rendimento do trabalho produzido, e das pesquisas realizadas por
profissionais e estudantes da área.
2. Justificativa
A Inteligência Artificial é um tipo de inteligência produzida pelo homem para dotar as
máquinas de algum tipo de habilidade que simula a inteligência humana (FERNANDES, 2003). A
conceituação nos dicionários de computação é a "Aptidão ou capacidade de um dispositivo para
desempenhar funções que são normalmente associadas à inteligência humana, tais como raciocínio,
aprendizagem e auto-aperfeiçoamento".
Conforme Lee (1998), Raciocínio Baseado em Casos é uma técnica de Inteligência
Artificial que reproduz aspectos da cognição humana para resolver problemas especialistas. A idéia
central do RBC consiste em fazer o sistema “relembrar” de casos relevantes e reutilizá-los em uma
nova solução.
O estudo de sistemas inteligentes utilizando a técnica de Raciocínio Baseado em Casos
e a implementação de uma ferramenta na área de plantas bioativas, que se apresenta pouco
explorada e com recursos escassos, são as principais justificativas deste trabalho. Além destas, citase a necessidade de se aperfeiçoar e agilizar o processo de identificação destas plantas com o
objetivo de aumentar o rendimento do trabalho produzido, e das pesquisas realizadas por
profissionais e estudantes da área.
3. Metodologia
Para a realização desse trabalho, as tarefas foram divididas em etapas seqüenciais.
Primeiramente foram revisados os conhecimentos adquiridos durante o desenvolvimento do
trabalho, através de pesquisa bibliográfica, e aprofundamento nos tópicos necessários para o
desenvolvimento do projeto, tais como Inteligência Artificial, Desenvolvimento de Sistemas, Banco
de Dados.
Na etapa seguinte levantou-se a situação atual junto à instituição de pesquisa escolhida
para o projeto a EPAGRI - Itajaí, através de entrevistas e levantamento de dados com os
funcionários responsáveis, neste trabalho tratados como especialistas, de forma a definir os
requisitos para o sistema em questão, e também modelar a base de conhecimentos necessária para o
funcionamento do mesmo.
Foi coletada uma quantidade significativa de casos para elaborar a base inicial do
sistema utilizando o sistema gerenciador de banco de dados MySQL.
Analisou-se os requisitos dos usuários para definição do escopo do sistema, suas
funções e comportamento, bem como a definição da metodologia e das ferramentas necessárias para
o desenvolvimento do sistema. A partir destes dados, iniciou-se o desenvolvimento do projeto
escrito.
Finalmente deu-se início a implementação do software, utilizando as ferramentas e
metodologias citadas nas etapas anteriores bem como a modelagem do sistema através dos
diagramas e seus respectivos dicionários de dados, consultando quando necessário os especialistas,
de maneira a cumprir os requisitos dos mesmos. Visando sua publicação na web, utilizou-se a
linguagem de programação PHP.
4. Discussão
Considerando-se um universo de quase 500.000 espécies de plantas no planeta Terra e a
possibilidade de ocorrência de até milhares de substâncias bioativas em cada espécie, a busca por
características específicas em modelos de consulta convencionais tem sido uma tarefa de grande
vulto e muitas vezes até desanimadora, resultando em um processo moroso no desenvolvimento da
fitoterapia, fitologia e fitoquímica (SILVA, 2003).
Atualmente a recuperação de dados é feita de forma manual e subjetiva nas instituições
de pesquisa e é baseada unicamente em recursos bibliográficos esparsos e reduzidos, e no
conhecimento de alguns pesquisadores. Daí surgiu à necessidade de uma ferramenta para aquisição
e sistematização do conhecimento, para auxílio ao profissional e estudantes da área, no intuito de
gerar pesquisas mais exatas e eficazes.
4.1. Identificação de Plantas Bioativas
Para trabalhar com Plantas Bioativas ou usá-las é necessário conhecê-las corretamente.
A identificação botânica é, nesse caso, muito importante pois evita problemas como intoxicações e
uso de plantas que não tenham efeito sobre a doença que se pretende combater.
A identificação deve ser feita por pessoas que tenham amplo conhecimento de assunto,
de preferência botânicos que através de características que diferenciam as espécies vegetais,
obtenham o nome correto da planta. As pessoas que se especializam em identificação de seres vivos
são chamados de taxonomistas, e na medida do possível devem ser consultados para a identificação
de plantas (DI STASI, 1996).
As características mais importantes do ponto de vista taxonômico na definição de uma
espécie, concentra-se na flor, pois, esta é à parte da planta menos variável com as condições do
ambiente (Ibidem).
O escopo do sistema foi delimitado apenas no gênero Phyllanthus, por motivo de tempo
de desenvolvimento da grande diversidade deste gênero (cerca de 500 espécies catalogadas) e a
grande semelhança entre as espécies. Também como justificativa da escolha de um único gênero foi
a grande complexidade em criar um modelo que fosse genérico o suficiente para englobar todas as
famílias de plantas bioativas, e específico o bastante para diferenciar espécies muito semelhantes.
A semelhança entre espécies gerou a necessidade de se utilizar um sistema de RBC para
a identificação das mesmas. Algumas variáveis destacaram-se uma incerteza quanto a sua
valorização o que levou a usar a lógica fuzzy.
4.2. Raciocínio Baseado em Casos
O Raciocínio Baseado em Casos é uma técnica de IA que consiste na utilização de
situações passadas, implementadas na forma de estruturas de dados chamados casos, como um
referencial para resolução de novos problemas (COSTA, 1999).
De acordo com Gentner (1983), RBC é a resolução de problemas por analogia,
utilizando a experiência adquirida para resolver novos problemas. As soluções para os novos
problemas surgem à medida que são comparados aspectos de problemas novos e antigos, utilizandose as soluções encontradas anteriormente.
Apesar de considerar o desenvolvimento de um sistema de RBC como sendo uma tarefa
complexa que não se sujeita a ser formulada através de uma metodologia, Lee (1996) propõe quatro
etapas distintas, conforme Figura 1:
•
representação dos casos;
•
recuperação dos casos;
•
revisão e adaptação;
•
reutilização, avaliação e aprendizagem.
Problema
Reter
Solução
Confirmada
Recuperar
Soluções
Iniciais
Base de
Casos
Revisar
Reutilizar
Solução
Proposta
Figura 19 - O Ciclo do RBC.
Fonte: Adaptação de Lee (1998).
Segundo Fernandes (2003), a filosofia básica desta técnica é a de buscar a solução para
uma situação atual através da comparação com uma experiência passada semelhante. O processo
característico do RBC consiste em: identificar o problema atual, buscar a experiência mais
semelhante na memória e aplicar o conhecimento desta experiência passada no problema atual.
•
Este procedimento pode ser detalhado em alguns passos.
•
Identificação de um problema a ser resolvido (problema de entrada);
•
Definição das principais características que identificam este problema;
•
Busca e recuperação na memória de casos com características similares;
•
Seleção de um ou mais dentre os casos recuperados;
•
Revisão deste(s) caso(s) para determinar a necessidade de adaptação;
•
Reutilização do caso adaptado para resolver o problema de entrada;
•
Avaliação da solução do problema de entrada;
•
Inclusão do caso adaptado na memória de casos (aprendizagem).
4.3. Lógica Fuzzy
Segundo Pereira e Dotto (1999), a Lógica Fuzzy é a lógica que suporta os modos de
raciocínio que são aproximados ao invés de exatos. Derivada do conceito de conjuntos fuzzy, a
Lógica Fuzzy constitui a base para o desenvolvimento de métodos e algoritmos de modelagem e
controle de processos, permitindo a redução da complexidade de projeto e implementação,
tornando-se a solução para problemas de controle até então intratáveis por técnicas clássicas. Ela
difere dos sistemas lógicos em suas características e seus detalhes. Nesta lógica, o raciocínio exato
corresponde a um caso limite do raciocínio aproximado, sendo interpretado como um processo de
composição de relações nebulosas.
Na Lógica Fuzzy, o valor verdade de uma proposição pode ser um subconjunto fuzzy de
qualquer conjunto parcialmente ordenado, ao contrário dos sistemas lógicos binários, onde o valor
verdade só pode assumir dois valores: verdadeiro (1) ou falso (0). Nos sistemas lógicos multivalores, o valor verdade de uma proposição pode ser ou um elemento de um conjunto finito, num
intervalo, ou uma álgebra booleana. Na Lógica Fuzzy, os valores verdade são expressos
lingüisticamente (verdade, muito verdade, não verdade, falso, muito falso), onde cada termo
lingüístico é interpretado como um subconjunto fuzzy do intervalo unitário (ibidem).
Outras características da Lógica Fuzzy podem ser sumarizadas como segue: nos
sistemas lógicos binários, os predicados são exatos (par, maior que), ao passo que na Lógica Fuzzy
os predicados são nebulosos (alto, baixo). Nos sistemas lógicos clássicos, o modificador mais
utilizado é a negação, enquanto que na Lógica Fuzzy uma variedade de modificadores de predicados
são possíveis (muito, mais ou menos). Estes modificadores são essenciais na geração de termos
lingüísticos, tais como: muito alto, mais ou menos perto, etc.
Na lógica clássica existem somente os quantificadores existenciais e universais. A
Lógica Fuzzy admite, em adição, uma ampla variedade de quantificadores como pouco, vários,
usualmente, freqüentemente, em torno de cinco, etc. A probabilidade é um valor numérico ou um
intervalo. Na Lógica Fuzzy existe a opção adicional de se empregar probabilidades lingüísticas
(provável, altamente provável, improvável), interpretados como números fuzzy e manipulados pela
aritmética fuzzy. Também em contraste com a lógica modal clássica, o conceito de possibilidade é
interpretado utilizando-se subconjuntos fuzzy no universo dos reais (PEREIRA e DOTTO, 1999).
4.4. Resultados
O sistema utilizou a contagem de características como método de recuperação. A
princípio optou-se para a utilização de uma combinação de dois métodos de busca, onde também se
utilizaria o método do vizinho mais próximo. Cada um deles se mostra mais adequado a uma
situação de busca. Devido às características do sistema optou-se por descartar o método do vizinho
mais próximo para as variáveis tamanho do caule, número de sépalas, pedicelo, diâmetro do fruto e
sementes.
Com a construção do sistema, pretende-se que esse seja utilizado pelos profissionais que
desejem pesquisar sobre as plantas bioativas. Poderá servir como uma ferramenta de consulta com
acesso público e de interface comum aos usuários da internet.
As Figuras 2,3 e 4 apresentam a interface do sistema.
Figura 2. Tela de Resultados da Pesquisa RBC.
Figura 3. Tela de Consulta a Base de Conhecimento Utilizando a Técnica de RBC.
Figura 4. Tela Descritiva da Espécie.
5. Conclusão
O interesse pelas plantas bioativas tem ressurgido nos últimos anos. O conhecimento
das suas características tem estado repartido pelos anciãos das populações rurais, os defensores das
medicinas naturais, pelos botânicos e farmacêuticos.
Com a construção do Sistema para Reconhecimento de Plantas Bioativas pretende-se
que esse seja utilizado pela comunidade científica em geral que desejar estudar estes vegetais. Esta
ferramenta poderá servir como um auxílio para pesquisa com acesso rápido e simplificado.
Após sua implantação, módulos relativos a outras espécies podem ser incorporados e
avaliações com outras funções de pertinência que não as triangulares usadas neste trabalho devem
ser feitas afim de se estabelecer a melhor modelagem fuzzy.
7. Referências Bibliográficas
COSTA, M. T. C. Uma Arquitetura Baseada em Agentes para Suporte ao Ensino à Distância. Tese
submetida à Universidade Federal de Santa Catarina para a obtenção do título de Doutor em
Engenharia de Produção. Florianópolis, 1999. Disponível em: <http://www.eps.ufsc.br/
teses99/thiry>. Acesso em: 09 setembro 2003.
DI STASI, L. C. Plantas Medicinais: arte e ciência. São Paulo: Universidade Estadual Paulista,
1996. 230p.
FERNANDES, Anita M. Inteligência Artificial: noções gerais. 1. ed. Florianópolis: Visual Books
Ltda, 2003. 160p.
GENTNER, D. Structure Mapping - A Theoretical Framework for Analogy. Cognitive Science,
Vol. 7, pp. 155-170, 1983.
LEE, R. W. Pesquisa Jurisprudencial Inteligente. Florianópolis, 1998. Tese (Doutorado em
engenharia) – Programa de Pós Graduação em Engenharia de Produção PPGEP/UFSC,
Universidade Federal de Santa Catarina.
PEREIRA, V. de A.; DOTTO, Fábio Romano Lofrano. Página da Lógica Fuzzy. 10 fevereiro 1999.
Disponível em: <http://www.geocities.com/Athens/ Crete/2647/indexp.html>. Acesso em: 06
novembro 2003.
SILVA, Junior A. A. Essentia herba - Plantas bioativas. Volume 1. Florianópolis: EPAGRI, 2003.
441p.
ANEXO II – CÓDIGO IMPLEMENTADO PARA LÓGICA DIFUSA
if ($CauTam <= 20)
$CauTamPeq = $CauTam/20;
else $CauTamPeq = (($CauTam*-1)/30)+(5/3);
if ($CauTam <= 50)
$CauTamMed = ($CauTam/30)-(2/3);
else $CauTamMed = (($CauTam*-1)/30)+(8/3);
if ($CauTam <= 80)
$CauTamGra = ($CauTam/30)-(5/3);
else $CauTamGra = 1;
if (($CauTamPeq > $CauTamMed) and ($CauTamPeq > $CauTamGra))
$CauTam = 1;
elseif ($CauTamMed > $CauTamGra)
$CauTam = 2;
else $CauTam = 3;
if ($FPPedicelo <= 3)
$FPPediceloPeq = $FPPedicelo/3;
else $FPPediceloPeq = (($FPPedicelo*-1)/3)+(2);
if ($FPPedicelo <= 6)
$FPPediceloMed = ($FPPedicelo/3)-(1);
else $FPPediceloMed = (($FPPedicelo*-1)/30)+(3);
if ($FPPedicelo <= 9)
$FPPediceloGra = ($FPPedicelo/3)-(2);
else $FPPediceloGra = 1;
if (($FPPediceloPeq > $FPPediceloMed) and ($FPPediceloPeq >
$FPPediceloGra))
$FPPedicelo = 1;
elseif ($FPPediceloMed > $FPPediceloGra)
$FPPedicelo = 2;
else $FPPedicelo = 3;
if ($SemCompr <= 3)
$SemComprPeq = $SemCompr/3;
else $SemComprPeq = (($SemCompr*-1)/3)+(2);
if ($SemCompr <= 6)
$SemComprMed = ($SemCompr/3)-(1);
else $SemComprMed = (($SemCompr*-1)/30)+(3);
if ($SemCompr <= 9)
$SemComprGra = ($SemCompr/3)-(2);
else $SemComprGra = 1;
if (($SemComprPeq > $SemComprMed) and ($SemComprPeq > $SemComprGra))
$SemCompr = 1;
elseif ($SemComprMed > $SemComprGra)
$SemCompr = 2;
else $SemCompr = 3;
if ($FPFruto <= 3)
$FPFrutoPeq = $FPFruto/3;
else $FPFrutoPeq = (($FPFruto*-1)/3)+(2);
if ($FPFruto <= 6)
$FPFrutoMed = ($FPFruto/3)-(1);
else $FPFrutoMed = (($FPFruto*-1)/30)+(3);
if ($FPFruto <= 9)
$FPFrutoGra = ($FPFruto/3)-(2);
else $FPFrutoGra = 1;
if (($FPFrutoPeq > $FPFrutoMed) and ($FPFrutoPeq > $FPFrutoGra))
$FPFruto = 1;
elseif ($FPFrutoMed > $FPFrutoGra)
$FPFruto = 2;
else $FPFruto = 3;
if ($FESepala <= 3)
$FESepalaPeq = $FESepala/3;
else $FESepalaPeq = (($FESepala*-1)/3)+(2);
if ($FESepala <= 6)
$FESepalaMed = ($FESepala/3)-(1);
else $FESepalaMed = (($FESepala*-1)/30)+(3);
if ($FESepala <= 9)
$FESepalaGra = ($FESepala/3)-(2);
else $FESepalaGra = 1;
if (($FESepalaPeq > $FESepalaMed) and ($FESepalaPeq > $FESepalaGra))
$FESepala = 1;
elseif ($FESepalaMed > $FESepalaGra)
$FESepala = 2;
else $FESepala = 3;
if ($FPSepala <= 3)
$FPSepalaPeq = $FPSepala/3;
else $FPSepalaPeq = (($FPSepala*-1)/3)+(2);
if ($FPSepala <= 6)
$FPSepalaMed = ($FPSepala/3)-(1);
else $FPSepalaMed = (($FPSepala*-1)/30)+(3);
if ($FPSepala <= 9)
$FPSepalaGra = ($FPSepala/3)-(2);
else $FPSepalaGra = 1;
if (($FPSepalaPeq > $FPSepalaMed) and ($FPSepalaPeq > $FPSepalaGra))
$FPSepala = 1;
elseif ($FPSepalaMed > $FPSepalaGra)
$FPSepala = 2;
else $FPSepala = 3;
ANEXO III – CÓDIGO IMPLEMENTADO PARA CÁLCULO DA
SIMILARIDADE UTILIZANDO A CONTAGEM DE CARACTERÍSTICAS
dbConectar();
$atualizacao1 = "UPDATE especies SET score = 0";
$sucesso1 = dbSQL($atualizacao1);
$ind=0;
$consulta = "SELECT Cod_Especie, Cod_CauTam, Cod_CauForm, Cod_CauFolha,
Cod_FolhaForm, Cod_FolhaApice, Cod_FolhaBase, Cod_FolhaBordo, Cod_EstipulaCor,
Cod_EstipulaForma, Cod_FESepala, Cod_FEEstame, Cod_FEAntera, Cod_FEGlandula,
Cod_FPSepala, Cod_FPConsistencia, Cod_FPPedicelo, Cod_FPOvario, Cod_FPFruto,
Cod_FPDiscGland, Cod_SemCompr, Cod_SemOrnament, Cod_FlorEstamin,
Cod_FlorPistilada FROM especies";
dbExecutar($consulta);
while(list( $bd_CodEspecie, $bd_CauTam, $bd_CauForma, $bd_CauFolha,
$bd_FolhaForma, $bd_FolhaApice, $bd_FolhaBase, $bd_FolhaBordo, $bd_EstipulaCor,
$bd_EstipulaForma, $bd_FESepala, $bd_FEEstame, $bd_FEAntera, $bd_FEGlandula,
$bd_FPSepala, $bd_FPConsistencia, $bd_FPPedicelo, $bd_FPOvario, $bd_FPFruto,
$bd_FPDiscGland, $bd_SemCompr, $bd_SemOrnament, $bd_FlorEstamin,
$bd_FlorPistilada ) = dbTupla())
{
$aux_score = 0;
if ($CauTam==$bd_CauTam)
$aux_score = $aux_score+0.4;
if ($CauForma==$bd_CauForma)
$aux_score = $aux_score+0.2;
if ($CauFolha==$bd_CauFolha)
$aux_score = $aux_score+0.2;
if ($FolhaForma==$bd_FolhaForma)
$aux_score = $aux_score+0.4;
if ($FolhaApice==$bd_FolhaApice)
$aux_score = $aux_score+0.8;
if ($FolhaBase==$bd_FolhaBase)
$aux_score = $aux_score+0.6;
if ($FolhaBordo==$bd_FolhaBordo)
$aux_score = $aux_score+0.4;
if ($EstipulaCor==$bd_EstipulaCor)
$aux_score = $aux_score+0.4;
if ($EstipulaForma==$bd_EstipulaForma)
$aux_score = $aux_score+0.4;
if ($FESepala==$bd_FESepala)
$aux_score = $aux_score+0.4;
if ($FEEstame==$bd_FEEstame)
$aux_score = $aux_score+0.6;
if ($FEAntera==$bd_FEAntera)
$aux_score = $aux_score+0.2;
if ($FEGlandula==$bd_FEGlandula)
$aux_score = $aux_score+1;
if ($FPSepala==$bd_FPSepala)
$aux_score = $aux_score+0.4;
if ($FPConsistencia==$bd_FPConsistencia)
$aux_score = $aux_score+0.2;
if ($FPPedicelo==$bd_FPPedicelo)
$aux_score = $aux_score+1;
if ($FPOvario==$bd_FPOvario)
$aux_score = $aux_score+0.2;
if ($FPFruto==$bd_FPFruto)
$aux_score = $aux_score+0.8;
if ($FPDiscGland==$bd_FPDiscGland)
$aux_score = $aux_score+0.6;
if ($SemCompr==$bd_SemCompr)
$aux_score = $aux_score+0.8;
if ($SemOrnament==$bd_SemOrnament)
$aux_score = $aux_score+0.8;
if ($FlorEstamin==$bd_FlorEstamin)
$aux_score = $aux_score+0.2;
if ($FlorPistilada==$bd_FlorPistilada)
$aux_score = $aux_score+0.2;
$codigo[$ind]=$bd_CodEspecie;
$score[$ind]=$aux_score;
$ind=$ind+1;
};
dbEncerrar();
$max=$ind;
$ind=0;
while($max > $ind)
{
$atualizacao1 = "UPDATE especies SET Score = $score[$ind] where
Cod_Especie = $codigo[$ind]";
$sucesso1 = dbSQL($atualizacao1);
$ind=$ind+1;
};
$ind=0;
$consulta = "SELECT Cod_Especie, Nome_Cientifico, Score FROM especies
order by Score desc";
dbExecutar($consulta);
while(list( $CodEspecie, $Especie, $Score ) = dbTupla())
{
$percent[$ind]=(int)(($Score/11.2)*100);
$valores[$ind]=$Especie;
$cods[$ind]=$CodEspecie;
$ind=$ind+1;
}
dbEncerrar();
dbDesconectar();
Download

universidade do vale do itajaí centro de educação superior