• Nenhum resultado encontrado

O artigo teve como objetivo principal coletar e organizar de forma resumida todas as informações possíveis de serem encontradas, que foram publicadas nas últimas quatro décadas sobre sistemas especialistas aplicados ao diagnóstico de doenças em plantas. O artigo começa tratando sobre as diversas nomenclaturas e definições para sistemas especialistas, sobre o uso desse tipo de sistema desde a década de 70, quando começou a ser impulsionado, nas mais diversas vertentes das ciências agrárias. O autor explica que em suas pesquisas observou que dos trabalhos publicados sobre o assunto, a grande maioria são de antes de 1990. Sendo assim, um objetivo específico do trabalho foi justamente fomentar uma retomada mais forte do interesse no uso de sistemas especialistas, sobretudo na resolução de problemas agrícolas. No desenvolver do trabalho, Barbedo apresenta todas as referências encontradas em suas pesquisas em uma só seção e

1 O portal WebAgritec é de acesso restrito e está disponível através do endereço eletrônico https://www.agritec.cnptia.embrapa.br/.

cronologicamente analisadas, explicando melhor a evolução da tecnologia aplicada ao diagnóstico de doenças em plantas. Na seção discussão, apresenta uma visão crítica sobre os trabalhos citados e analisa tendências passadas, presentes e futuras. É interessante mencionar que nessa seção o autor cita que os sistemas recentes começaram a combinar os conceitos de sistemas especialistas com outras técnicas, tais como a lógica nebulosa, algo que justamente é feito no presente trabalho, o que mostra que este trabalho segue as tendências atuais da forma de construção dos SEs. Na conclusão é citado que ainda há uma grande lacuna entre o que é oferecido pelos SEs e as reais necessidades dos usuários, mas que essa lacuna pode ser reduzida pelos avanços científicos em áreas como a de inteligência artificial.

3.6 DIAGNÓSTICO DE DOENÇAS E PRAGAS NA CULTURA DA VIDEIRA USANDO O SISTEMA ESPECIALISTA UZUM

O software UZUM, sistema especialista apresentado no trabalho, é um SE desenvolvido para auxiliar na identificação de possíveis agentes causadores de doenças em videiras, árvore que produz uva. A recomendação dada quanto ao uso do UZUM é que o software é de caráter consultivo, portanto se recomenda a consulta de um profissional da área antes de se tomar qualquer decisão importante. O sistema atua no diagnóstico e controle de pragas na videira e é de acesso livre, podendo ser acessado e usado por meio do site oficial da Empresa Brasileira de Pesquisa Agropecuária (EMBRAPA)2. O informativo técnico apresenta o

funcionamento do uzum, mostrando os avisos legais do sistema, como o sistema apresenta as perguntas baseado nas respostas já fornecidas, suas limitações e os resultados apresentados com base nas informações fornecidas, mostrando os possíveis causadores dos sintomas. Os possíveis causadores que são mostrados nos resultados, são associados a um percentual de probabilidade de 0 a 100 por cento, para orientar o usuário sobre o grau de confiança que ele deve ter nos resultados apresentados. Esse percentual é calculado com base nas respostas submetidas pelo usuário. Ao final, é informado que o sistema conta com informações sobre 37 doenças, pragas ou distúrbios fisiológicos da videira e algumas possíveis melhorias que podem ser implementadas no sistema.

4 MATERIAIS E MÉTODOS

4.1 MÉTODOS

A metodologia usada para que o trabalho tivesse êxito foi justamente a recomendada para o desenvolvimento de um sistema especialista. Essa metodologia proposta por Waterman (1986) é dividida em fases que vão desde a definição do problema, até a manutenção do software desenvolvido.

A primeira fase consiste na seleção do problema e na obtenção de um ou mais especialistas do assunto. A seleção do problema foi feita levando em consideração a necessidade que o setor de carcinicultura apresenta no tocante ao desenvolvimento de tecnologias computacionais. Para desenvolver o trabalho foram consultados três especialistas.

A segunda fase é chamada de aquisição de conhecimento, nessa fase é adquirido o acervo de informações necessárias para se chegar a uma conclusão acertada a respeito das melhores práticas de criação de camarões e principalmente das medidas necessárias para identificação, prevenção e tratamento da doença da mancha branca nos crustáceos.

A terceira fase é a de representação do conhecimento. Nessa fase o conhecimento adquirido com o especialista deve ser representado em forma de regras fuzzy e o mais fiel possível a forma como os especialistas pensam e expressam seu conhecimento acerca do tema. Nessa fase é necessário formular as perguntas que serão apresentadas ao usuário. Formulada as perguntas, o sistema como um todo pode ser implementado. Essa modelagem do sistema envolve a definição das variáveis linguísticas do problema, dos conjuntos nebulosos e de uma faixa de possíveis valores que eles podem assumir (pontos de máximo e mínimo), das funções de pertinência de cada conjunto, das regras nebulosas e por último do método de defuzzificação adotado. Essa fase é de extrema importância para o bom funcionamento do sistema fuzzy, pois qualquer conhecimento mal representado nessa fase poderá fazer com que o SE chegue a conclusões erradas.

A quarta fase é a de codificação do sistema. É nessa fase que efetivamente o sistema especialista fuzzy é implementado. Nessa fase deve-se respeitar tudo que foi definido anteriormente, sendo assim o software deve seguir a toda a estrutura de um SE fuzzy, que já foi discutida no referencial teórico.

A quinta fase é a de teste de conhecimento e avaliação do sistema. Nessa fase o sistema deve ser validado levando em conta aquilo que já foi definido nas fases anteriores, ou seja, deve ser avaliado se o sistema cumpre realmente com seu propósito. É interessante executar o sistema em diversos cenários para saber qual seu comportamento em cada um deles. Textos, comentários e conclusões obtidas também devem ser avaliados, especialmente pelos especialistas na área-alvo.

A sexta e última fase é a de manutenção do sistema, onde é avaliado possíveis bugs, problemas de inconsistência, problemas de uso de interface, etc. Após essa fase recomenda-se também a escrita de uma documentação de uso do software.

Conforme já citado na introdução, o objetivo do trabalho foi desenvolver um sistema especialista fuzzy que fosse capaz de propor medidas de prevenção de surto de doenças, em especial o vírus da mancha branca. Para que esse objetivo fosse alcançado, foi necessário seguir fielmente todas essas fases de construção de um SE, além de incluir os conceitos de lógica fuzzy no desenvolvimento dessa solução computacional. Na figura 6 abaixo pode-se observar um esquema gráfico de cada uma das fases já descritas:

4.2 MATERIAIS

A parte de materiais, incluí a quarta fase do desenvolvimento do SE como um todo. Como já descrito anteriormente, essa é a fase de codificação do sistema. Nessa fase codifica-se tudo que foi coletado anteriormente, de forma que o computador possa entender e processar corretamente esses dados.

O software desenvolvido neste trabalho, foi programado na linguagem de programação Java. O ambiente de desenvolvimento integrado (IDE) utilizado foi o Eclipse e o programa foi construído para a plataforma desktop, ou seja, para ser executado em computadores de mesa e notebooks. A escolha dessa plataforma faz

FIGURA 6. Diagrama das fases de desenvolvimento de um SE

com que o usuário não necessite de internet para utilizar o sistema, o que é um fator relevante para produtores que não contam com internet no local de produção ou em suas residências rurais.

Para a construção da interface foi utilizado a plataforma JavaFX e a biblioteca de material design JFoenix, por apresentar componentes de interface mais atuais e amigáveis ao usuário. Para facilitar a representação da estrutura de um sistema fuzzy, foi utilizado a biblioteca jFuzzyLogic, que foi desenvolvida exatamente para facilitar a codificação de sistemas fuzzy.

A arquitetura do sistema é a Modelo-visão-controlador (MVC, sigla do inglês Model-view-controller) e a metodologia de desenvolvimento empregada foi a ágil, com feedbacks ocasionais dos stakeholders e sem documentação de software.

5 DESENVOLVIMENTO

Para que o objetivo do trabalho fosse alcançado, foi necessário seguir fielmente todas as fases de construção de um sistema especialista (WATERMAN, 1986). Para facilitar a localização da descrição do desenvolvimento de cada fase, uma figura será inserida no início de cada etapa. Os círculos numerados e em verde apontam para os módulos já concluídos e o em vermelho para o atual.

O desenvolvimento do trabalho se inicia com a definição do problema e obtenção de um ou mais especialistas no tema abordado no trabalho (figura 6). Para a definição do problema levou-se em consideração os seguintes pontos:

• A relevância da carcinicultura para o estado do Rio Grande do Norte. • Estar inserido em uma unidade acadêmica especializada em ciências

agrárias, o que torna a obtenção de especialistas no tema proposto muito mais fácil e acessível.

• Os grandes transtornos causados pelos vírus da mancha branca na carcinicultura no estado e em todo o mundo.

• A falta de soluções computacionais que resolvam esse problema do setor. Definido e especificado o tema, foi feita a seleção de dois especialistas em carcinicultura e um em inteligência computacional, que se prontificaram em ajudar no desenvolvimento do trabalho e alcance dos objetivos. Os especialistas foram o professor doutor Rodrigo Antônio Ponce de Leon Ferreira de Carvalho, especialista em tecnologia do pescado e nutrição de organismos aquáticos, a professora doutora Viviane da Silva Medeiros, especialista em comportamento e sanidade de organismos aquáticos, e a professora doutora Laura Emmanuella Alves dos Santos Santana, cuja especialidade é na área de Inteligência Computacional com foco em Aprendizado de Máquina.

FIGURA 7. Primeiro passo do desenvolvimento do trabalho.

Encontrado e definido o problema a ser resolvido, bem como a ajuda necessária para resolver o problema, segue-se para a segunda fase do desenvolvimento de um SE, a fase de aquisição de conhecimento (figura 8). Essa fase é deveras a mais longa de todas, pois requer uma consideração ampla a respeito dos dois principais temas do trabalho, a saber, a carcinicultura e os sistemas especialistas. Esses temas principais são compostos por diversos outros subtemas específicos que precisaram ser também amplamente considerados. Por exemplo, dentro do tema carcinicultura foi necessário estudar sobre manejo do camarão, o WSSV, o panorama regional e mundial do setor, as técnicas atuais de criação, etc. No tema sistemas especialistas, tem-se a lógica fuzzy e todos seus conceitos, bem como as ferramentas computacionais que facilitam o desenvolvimento de um SE Fuzzy.

Para adquirir todo esse acervo de informações sobre esses temas, foi necessário a leitura e consulta de diversos artigos e trabalhos científicos, publicações de revistas e eventos do setor de aquicultura, além de livros sobre os dois temas principais abordados. As consultas foram feitas no período de agosto de 2017 a outubro de 2018 e o material foi obtido por meio de pesquisas no Google Acadêmico, na Biblioteca Eletrônica Científica Online (SciELO, do inglês The Scientific Electronic Library Online), no site da EMBRAPA, na revista Panorama da Aquicultura. Os especialistas de domínio também sugeriram alguns materiais. Cerca de 65 materiais foram consultados e estão especificados nas referências deste trabalho. Adquirido uma boa base de conhecimento sobre os temas, segue-se a próxima etapa dessa segunda fase de construção do SE, que é a de entrevistas com os especialistas em carcinicultura já citados anteriormente. A respeito dessas entrevistas, algumas recomendações são dadas por Waterman (1986): se certificar de que está familiarizado com o tema antes da entrevista, abordar o tema de forma

FIGURA 8. Segunda e maior etapa do

desenvolvimento do trabalho

sistemática, modelar o sistema levando em conta a fala do especialista, gravar a entrevista caso o especialista permita.

Ao todo foram feitas duas entrevistas, sendo uma em duas seções com o professor Rodrigo e a outra em uma seção com a professora Viviane. Essas entrevistas foram feitas levando em consideração as recomendações já citadas. Uma coisa que deve ser notada é que foi pedido para um dos especialistas dar percentuais de importância em cada tópico analisado, isso posteriormente foi usado para modelar os graus de pertinência do SE fuzzy. As datas, divisão dos temas, perguntas e sínteses dos comentários dos peritos podem ser encontradas no APÊNDICE A.

Seguindo para a terceira fase, foi feito a representação do conhecimento adquirido até então (figura 9). Essa fase se iniciou pela formulação das perguntas apresentadas ao usuário e pela estrutura condicional das perguntas, ou seja, qual pergunta se seguirá de acordo com a resposta do usuário.

As perguntas foram divididas em módulos, que representam cada fase do processo de criação de camarões em fazendas de engorda. Esse processo vai desde a aquisição de pós-larvas até a despescas dos camarões já em fase adulta. Em seguida, foram definidos os valores percentuais de cada pergunta e os pontos de máximo e mínimo de cada módulo.

Os módulos foram divididos e sequenciado de acordo com o conhecimento adquirido na fase anterior, provenientes de material escrito e das entrevistas com os peritos. Ao todo foram definidos onze módulos para o sistema, sendo nove módulos de entrada de dados e dois módulos de saída de informações. As perguntas foram alteradas posteriormente de acordo com a recomendação dos especialistas. Essas mudanças fizeram com que as perguntas fossem mais claras e específicas, melhorando assim a avaliação geral do sistema. Os resultados obtidos nessa fase são descritos no APÊNDICE B.

FIGURA 9. Fase de representação do conhecimento

Na quarta fase, de codificação do sistema, a parte computacional do sistema foi efetivamente feita (figura 10). As tecnologias utilizadas para construir o sistema especialista fuzzy abordado nesse trabalho e suas respectivas versões são listados abaixo:

• Eclipse IDE pra programadores Java versão Oxygen.3a Release (4.7.3a) • Java(TM) SE Runtime Environment (build 9.0.4+11)

• e(fx)clipse versão 3.5.0 (plugin do Java FX para o Eclipse) • iTextPDF versão 5.5.13 (biblioteca externa)

• jFoenix versão 9.0.6 (biblioteca externa)

• jFuzzyLogic versão não informada (biblioteca externa)

É importante ressaltar que para utilizar o sistema é necessário somente ter um computador com o Java3 versão 8 ou superior instalado.

Definido e configurado todo o ambiente de desenvolvimento, foi escolhido um nome para o sistema. O nome escolhido foi PotiSaúde, “poti” vem no nome potiguar de origem tupi que significa “comedor de camarão” e “saúde” remete ao propósito do sistema que é melhorar a saúde de camarões cultivados. Na figura 6 é possível observar o logotipo do SE fuzzy:

Feito o logotipo, o sistema pôde ser efetivamente codificado. Começou-se fazendo a interface inicial do sistema, definindo os componentes visuais e a forma de exibi-los na tela. As figuras 11 a 17 mostram algumas telas do sistema:

3 A versão mais atual do Java pode ser baixada no link https://www.java.com/pt_BR/download/. FIGURA 11. logotipo do software desenvolvido

Fonte: Autoria própria. FIGURA 10. Fase de codificação do sistema

FIGURA 11. Tela de boas vindas do sistema

Ela trás algumas informações sobre o desenvolvimento do sistema e seu funcionamento.

Fonte: Autoria própria.

FIGURA 12. Tela de seleção do sistema de criação

O sistema só realiza análises em fazendas que criam os camarões em sistemas semi-intensivos, intensivos e super- intensivos.

FIGURA 13. Tela de seleção dos módulos

Os módulos identificados com o ícone verde tiveram todas as suas perguntas respondidas, os com o ícone amarelo nenhuma e o em vermelho somente parte delas.

Fonte: Autoria própria.

FIGURA 14. Tela das perguntas do sistema

Conforme descrito no APÊNDICE B, cada uma das respostas de cada pergunta tem um valor associado. Esses valores são somados para se obter o percentual final de cada módulo. Fonte: Autoria própria.

Essa mensagem serve para ajudar o usuário a entender melhor algumas perguntas. Na terceira fase do projeto essa mensagem foi nomeada como ‘help’, conforme descrito no APÊNDICE B.

Fonte: Autoria própria.

FIGURA 16. Tela de uma das perguntas do módulo 4

Essa tela utiliza campos de submissão de respostas diferentes dos demais módulos. Esse tipo de campo é chamado de textbutton.

Fonte: Autoria própria.

Após a conclusão de toda a parte de entrada de dados do sistema, o próximo passo foi fazer o tratamento desses dados, a fim de se chegar ao objetivo proposto, a saber, propor medidas de controle de enfermidades que acometem o camarão, em especial a doença da mancha branca. É importante ressaltar que a análise foi feita levando em conta a possibilidade do vírus manifestar por meio de sinais clínicos visíveis e desenvolver a doença até chegar em estado terminal e o crustáceo morrer.

Essa parte de tratamento de dados e dados de saída do sistema, se iniciou com a modelagem do arquivo de Linguagem de Controle Fuzzy (FCL), feito com o auxílio da biblioteca jFuzzyLogic, que facilita o desenvolvimento de todos os conceitos envolvidos na construção de um sistema especialista fuzzy, já considerado no capítulo 2 de referencial teórico. O código do arquivo do sistema “fuzzyDiagnostic.fcl” pode ser observado no APÊNDICE C.

A biblioteca jFuzzyLogic fornece métodos para manipulação do arquivo FCL e geração de gráfico que facilitam o entendimento do que foi feito. Um desses métodos é o “chart” da classe JfuzzyChart. Na figura 14, pode-se observar os gráficos gerados de acordo com o que foi modelado no arquivo fuzzyDiagnostic.fcl:

FIGURA 17. Tela de uma das perguntas do módulo 6

Essa tela utiliza um outro tipo de campo de submissão de respostas, chamado de checkbutton. A maioria do campos de resposta do sistema são do tipo radiobutton.

Na figura 18 acima são exibidos os gráficos referentes as variáveis de entrada e saída definidos na função de bloco shrimpDiagnostic do arquivo fuzzyDiagnostic.fcl. Do segundo ao décimo gráfico, pode-se ver as informações sobre as variáveis de entrada do FCL. O primeiro e último gráfico são os da variável de saída. Em cada gráfico, são exibidos os valores de máximo e mínimo no eixo x, os graus de pertinência no eixo y, na parte de cima o nome da variável linguística e na parte de baixo os termos linguísticos ou conjuntos fuzzy. Cada conjunto fuzzy é identificado no gráfico por uma cor diferente para facilitar o entendimento sobre onde ele inicia e termina. No último gráfico, da variável de saída, é mostrado algumas informações adicionais como o método de defuzzyficação (centro de gravidade) e o valor da variável de saída. É interessante notar que nesse gráfico há uma parte mais escura, que representa as áreas que a variável de saída atingem totalmente ou parcialmente, a saber: baixo (totalmente), médio(totalmente) e alto(parcialmente). O primeiro gráfico mostra melhor até que ponto no eixo x e y o valor de saída vai.

FIGURA 18. Gráficos das variáveis do sistema modeladas no arquivo FCL

Após a modelagem da parte fuzzy do sistema especialista, foi feito uma interface para interpretar esse valor de saída para o usuário e em seguida, outra interface com uma tabela de análise detalhada das respostas do usuário e um botão para gerar um relatório completo em pdf. Essas telas e o relatório final serão mais detalhadamente comentadas no próximo capítulo de resultados e discussões.

6 RESULTADOS E DISCUSSÃO

FIGURA 19. Diagrama mostrando as fases já concluídas (em verde) e a atual (em vermelho)

Fonte: Autoria própria.

A avaliação dos resultados obtidos coincide com a quinta fase ou etapa de construção de um sistema especialista, que é a de teste de conhecimento e avaliação (figura 19). Essa fase tem como objetivo verificar a veracidade dos resultados do sistema frente ao que foi adquirido e definido nas etapas de aquisição e representação do conhecimento. O primeiro passo para realizar essa avaliação foi simular situações e verificar o comportamento do sistema em cada caso.

Foram feitas duas simulações de funcionamento do sistema para avaliar e validar o funcionamento do sistema. O primeiro teste foi feito simulando o pior cenário possível, ou seja, um produtor que não segue quase nenhuma boa prática de criação de camarões. O segundo teste simulou o cenário ideal, um produtor que segue quase todas as boas práticas de criação. O comportamento do sistema na primeira simulação é exibida abaixo nas figuras 20 e 21 e na tabela 1, que é parte do

Documentos relacionados