simulador e desenvolvimento de cultura

18
Modelo de Simulador Aplicado ao Desenvolvimento de Culturas Gabriel Rech, Willingthon Pavan, Carlos Amaral Hölbig Curso de Ciência da Computação – ICEG Universidade de Passo Fundo (UPF) 99.001-970 – Passo Fundo – RS – Brasil {75973,pavan,holbig}@upf.br Resumo. A utilização de tecnologias mais atuais no desenvolvimento de aplicações computacionais para a área de simulação agrícola pode colaborar para a elaboração de novos projetos apoiando as várias atividades presentes nesta área. O presente trabalho visa a elaboração de um modelo genérico de simulação de culturas que utilize dados meteorológicos obtidos de estações meteorológicas automáticas e de prognósticos de tempo, processe-os por meio de seus modelos simples ou complexos e gere alertas de risco de epidemias, distribuindo a informação aos usuários do sistema. Com os dados observados, pode-se obter informações sobre o comportamento da cultura e doencas, enquanto que com prognósticos de tempo pode-se obter a predição antecipada de certos fenômenos. Para tanto, este trabalho inicia com a modelagem e implementação de um modelo básico de crescimento e desenvolvimento de culturas, utilizando tecnologias como: orientação a objetos, SGBD, XML e linguagens de programação modernas. 1 Introdução Modelos de simulação de culturas capazes de predizer o rendimento final têm sido estudados intensivamente em várias partes do mundo (HOOGENBOOM, 2000) e representam a simulação da dinâmica do crescimento das culturas através da integração numérica, com a ajuda de computadores. Em essência, esses modelos de simulação são programas de computadores que representam, matematicamente, o crescimento das plantas em relação ao ambiente (GRAVES et al.,2002). A previsão de doenças de plantas é um componente que está sendo rapidamente incorporado ao manejo de doenças. A análise matemática do progresso de doenças tem amadurecido ao ponto de se tornar, além de crucial na epidemiologia comparativa, um poderoso e respeitado componente na avaliação e previsão de risco visando o manejo de doenças de plantas. A previsão de doenças é usualmente feita por modelos que descrevem processos epidemiológicos, entretanto, muitos sistemas de previsão de doenças de plantas não têm atendido as expectativas no manejo de doenças. Várias são as razões que contribuem para que estes não sejam utilizados, podendo-se citar a sua real necessidade em alguns sistemas produtivos, o excesso de complexidade ou mesmo simplicidade dos modelos, falta de portabilidade exigindo esforços contínuos de validação, alto custo de implementação e manutenção de sistemas com base em estações automáticas, falta de interesse ou aversão ao risco por parte dos usuários, dentre outras. Idealmente, um sistema de “previsão” de ocorrência doenças tem que ser capaz de fazer projeções futuras dos principais eventos no seu desenvolvimento, o que a maioria dos sistemas não disponibiliza. Uma nova faceta que surge é a possibilidade de se utilizarem prognósticos de tempo e clima como entrada em modelos para que um sistema possa realmente prever situações de risco. Com a melhoria da qualidade dos prognósticos de tempo, uma estimativa mais exata de variáveis importantes para modelos de doenças de plantas, tais como precipitação, umidade relativa, temperatura e velocidade do vento, torna possível prever a ocorrência ou não de epidemias severas. Isso é especialmente interessante para o manejo de doenças, tendo em vista que a utilização

Upload: camilla-tenorio

Post on 29-Dec-2014

26 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Simulador e Desenvolvimento de Cultura

Modelo de Simulador Aplicado ao Desenvolvimento de Culturas

Gabriel Rech, Willingthon Pavan, Carlos Amaral Hölbig

Curso de Ciência da Computação – ICEG Universidade de Passo Fundo (UPF)

99.001-970 – Passo Fundo – RS – Brasil

{75973,pavan,holbig}@upf.br

Resumo. A utilização de tecnologias mais atuais no desenvolvimento de aplicações computacionais para a área de simulação agrícola pode colaborar para a elaboração de novos projetos apoiando as várias atividades presentes nesta área. O presente trabalho visa a elaboração de um modelo genérico de simulação de culturas que utilize dados meteorológicos obtidos de estações meteorológicas automáticas e de prognósticos de tempo, processe-os por meio de seus modelos simples ou complexos e gere alertas de risco de epidemias, distribuindo a informação aos usuários do sistema. Com os dados observados, pode-se obter informações sobre o comportamento da cultura e doencas, enquanto que com prognósticos de tempo pode-se obter a predição antecipada de certos fenômenos. Para tanto, este trabalho inicia com a modelagem e implementação de um modelo básico de crescimento e desenvolvimento de culturas, utilizando tecnologias como: orientação a objetos, SGBD, XML e linguagens de programação modernas.

1 Introdução Modelos de simulação de culturas capazes de predizer o rendimento final têm sido estudados intensivamente em várias partes do mundo (HOOGENBOOM, 2000) e representam a simulação da dinâmica do crescimento das culturas através da integração numérica, com a ajuda de computadores. Em essência, esses modelos de simulação são programas de computadores que representam, matematicamente, o crescimento das plantas em relação ao ambiente (GRAVES et al.,2002). A previsão de doenças de plantas é um componente que está sendo rapidamente incorporado ao manejo de doenças. A análise matemática do progresso de doenças tem amadurecido ao ponto de se tornar, além de crucial na epidemiologia comparativa, um poderoso e respeitado componente na avaliação e previsão de risco visando o manejo de doenças de plantas. A previsão de doenças é usualmente feita por modelos que descrevem processos epidemiológicos, entretanto, muitos sistemas de previsão de doenças de plantas não têm atendido as expectativas no manejo de doenças. Várias são as razões que contribuem para que estes não sejam utilizados, podendo-se citar a sua real necessidade em alguns sistemas produtivos, o excesso de complexidade ou mesmo simplicidade dos modelos, falta de portabilidade exigindo esforços contínuos de validação, alto custo de implementação e manutenção de sistemas com base em estações automáticas, falta de interesse ou aversão ao risco por parte dos usuários, dentre outras. Idealmente, um sistema de “previsão” de ocorrência doenças tem que ser capaz de fazer projeções futuras dos principais eventos no seu desenvolvimento, o que a maioria dos sistemas não disponibiliza. Uma nova faceta que surge é a possibilidade de se utilizarem prognósticos de tempo e clima como entrada em modelos para que um sistema possa realmente prever situações de risco. Com a melhoria da qualidade dos prognósticos de tempo, uma estimativa mais exata de variáveis importantes para modelos de doenças de plantas, tais como precipitação, umidade relativa, temperatura e velocidade do vento, torna possível prever a ocorrência ou não de epidemias severas. Isso é especialmente interessante para o manejo de doenças, tendo em vista que a utilização

Page 2: Simulador e Desenvolvimento de Cultura

desnecessária de fungicidas, quando seguindo um calendário fixo de aplicacao, ocasionando impactos significativos no custo de produção e ao meio ambiente. Além disso, aplicações fora do momento apropriado podem resultar em um inadequado controle da doença. Devido a estes fatores, este trabalho apresenta uma proposta de um simulador de culturas, aliado a modelos de doenças/epidemias, sendo esta a etapa inicial que engloba a proposta e a implementação de um modelo básico de crescimento de culturas, com base no trabalho de Porter (PORTER, 2009), tendo como objetivo a fundamentação e estruturação básica do simulador de culturas.

2 Modelagem, Simulação Computacional e suas aplicações

Conceitos básicos sobre modelagem e simulação computacional, bem como os fatores que contribuem para seu uso, suas aplicações e restrições são necessários para um bom entendimento do processo, sendo apresentados a seguir.

2.1 Modelagem computacional

A modelagem computacional tem o intuito de descrever o comportamento dos sistemas, teorias ou hipóteses que avaliem o comportamento observado, usando o modelo para predizer o comportamento futuro, ou seja, os efeitos produzidos por mudanças no sistema ou nos métodos de operação (GAONA, 1995). Um modelo é uma abstração da realidade, onde dado um sistema, consta uma representação simplificada das diversas interações entre as partes do mesmo. Os modelos simbólicos, matemáticos e de simulação são as três categorias básicas de modelos (CHWIF, 2007): • Modelos Simbólicos, também chamados de diagramáticos ou iônicos. Representam um

sistema de maneira estática, através do uso de símbolos gráficos, não levando em consideração o comportamento através do tempo. A falta de elementos quantitativos e a dificuldade de representar muitos detalhes de um mesmo sistema estão entre as limitações deste tipo de modelo. Sua utilização maior está na documentação de projetos e como uma ferramenta de comunicação.

• Modelos Matemáticos, também chamados de modelos analíticos, sendo interpretados como um conjunto de fórmulas matemáticas. Em sua grande maioria são modelos de natureza estática, sendo que muitos desses não possuem soluções analíticas para sistemas complexos, devendo-se utilizar hipóteses simplificadoras. Por sua vez, são modelos que possuem uma solução rápida e exata, quando existir uma solução analítica.

• Modelos de Simulação, os quais conseguem capturar com maior fidelidade as características dos sistemas reais, apresentando, por sua vez, uma maior complexidade devido à sua natureza, uma vez que mudam seus estados ao longo do tempo e possuem variáveis aleatórias.

2.1.1 Modelagem dos dados de entrada

A modelagem dos dados de entrada em um estudo de simulação é uma das etapas mais importantes, pois o modelo de simulação deve ser o mais representativo possível do sistema real. Pode-se chamar de modelos de entrada os modelos probabilísticos, responsáveis por representar a natureza aleatória de um fenômeno, sendo a modelagem de dados o processo de escolha da melhor representação deste fenômeno (CHWIF, 2007).

Page 3: Simulador e Desenvolvimento de Cultura

2.1.2 Etapas da modelagem de dados

Segundo (CHWIF, 2007), a modelagem de dados pode ser resumida em 3 (três) etapas:

• Coleta de dados: corresponde ao processo de amostragem, onde é retirado um conjunto de valores da população que está sendo estudada, o qual servirá de amostra para representar a população no estudo estatístico. Deve-se garantir que esta amostra consiga representar da melhor maneira possível o fenômeno em questão.

• Tratamento de dados: é a etapa onde são utilizadas técnicas que descrevam os dados leventados, identificando possíveis falhas nos valores utilizados na amostragem e aumentando o conhecimento com relação ao fenômeno em estudo. Nesta fase, procura-se explorar o conjunto de dados para uma melhor compreensão do fenômeno, bem como a extração das medidas de posição (média, mediana, moda etc.) e de dispersão (variância, amplitude etc.) da variável aleatória em questão. Valores não usuais, chamados também de outliers podem ocorrer devido a algum tipo de erro na coleta dos dados ou um evento raro inesperado.

• Inferência: trata da aplicação dos conhecimentos do Cálculo de Probabilidades a fim de inferir o comportamento da população a partir da amostra, resultando um modelo probabilístico, o qual será incorporado ao modelo de simulação.

2.2 Simulação Computacional

A simulação computacional é aquela que necessita de um computador para ser realizada. Pode ser considerada como um meio de confrontar teorias com experimentações, antecipar resultados experimentais ou de realizar experiências de outro modo inacessíveis (CHWIF, 2007). A utilização da simulação computacional está ligada em simular algum tipo de sistema, que pode ser definido como um agrupamento de partes que operam em conjunto, visando um objetivo em comum (FORRESTER, 1968).

Dentre alguns fatores que contribuem para a utilização de técnicas de simulação, juntamente com o uso de computadores, pode-se destacar: a redução do tempo de experimentos, os quais possuem custos muito abaixo em comparação à execução de experimentos sobre um sistema real; alternativa quando existe a impossibilidade de experimentações diretas no sistema real; melhor visualização dos resultados (gráficos, tabelas, entre outros); possibilidade de várias execuções do modelo; e flexibilidade para a realização de mudanças característica esta desejável no estudo de sistemas com objetivos de geração de informações de apoio a tomada de decisões (FILHO, 1995). Os elementos que são utilizados para a confecção dos modelos de simulação compreendem: (a) entidades, que podem representar uma pessoa ou objeto, que se move ao longo do sistema, mudando o estado do mesmo; (b) recursos, que são tidos como restrições para o fluxo das entidades na simulação e são utilizados para que as mesmas se movimentem através do modelo; (c) atributos individuais de cada entidade, representando as características que aquela entidade deve possuir ao longo da simulação; e (d) fila , elemento pelo qual uma entidade passa quando precisa de um recurso que está temporariamente inacessível.

2.3 Aplicações da simulação

Devido à sua versatilidade, flexibilidade e poder, a simulação pode ser aplicada nos mais variados estudos ou pesquisas. Quase todos os tipos de sistemas foram (ou podem ser) simulados, podendo-se citar: Sistemas Computacionais (hardware, software, redes, gerenciamento de banco de dados);

Page 4: Simulador e Desenvolvimento de Cultura

Sistemas de Manufatura (manuseio e armazenagem de materiais, linhas de montagem, recursos automatizados de produção, controle de estoques); Sistemas de Negócios (análises, política de preços, estratégias de marketing); Sistemas Governamentais (previsão de crescimento populacional, uso do solo, sistemas de saúde); Sistemas Ecologicos e de Meio Ambiente (poluição e purificação de água, controle de desperdícios, poluição do ar, controle de pragas, previsões climáticas); Sociedade e Comportamento (análises alimento/população, políticas educacionais, estrutura organizacional); Biociências (análise de performance esportiva, ciclos de vida biológicos, estudos biomédicos) (PEGDEN, 1990). São vastos os benefícios que a simulação pode proporcionar, dentre eles constam principalmente aqueles em que seu uso se faz necessário quando não forem desejados distúrbios ou problemas em procedimentos que já estão em uso, não afetando assim o bom andamento das atividades normais do sistema em questão. Existem ainda outros fatores a favor do uso da simulação como: testes de hipóteses que podem ser feitos para responder questões a respeito de fenômenos; controle do fator tempo; identificação e análise das variáveis mais significativas e que mais afetam o desempenho do sistema, bem como a identificação de possíveis gargalos; e importancia para entender o real funcionamento do sistema e respoder questões do tipo "o que acontecerá se ..." (PEGDEN, 1990).

3 Modelos de simulação na área agrícola

Há mais de sessenta anos os modelos de simulação tem contribuído para a resolução de problemas relacionados ao setor agrícola (PAVAN APUD BRAGA et al., 2005). A idéia de representar fenômenos da natureza através do uso de simuladores tem se tornando realidade há mais de seis décadas. Na década de 1960, por exemplo, muitos esforços foram feitos para o desenvolvimento de uma linguagem chamada Simula (Simulation language), a qual, com características de orientação a objetos, tinha como objetivo principal o desenvolvimento de sistemas de simulação, modelados pelas iteração de um grande número de objetos distintos. Com o passar dos anos, muitos avanços e resultados de sucesso foram obtidos (NYGAARD; DAHL, 2007). Os primeiros modelos de simulação de culturas, desenvolvidos nos anos 60, tinham como finalidade a simulacao da interceptação da luz e a fotossíntese nas plantas (PAVAN APUD WIT, 1965). Com o tempo, os modelos de simulação tornaram-se mais complexos, envolvendo grande quantidade de dados para iniciar a simulação. Com a complexidade dos modelos também vieram as limitações, mas, mesmo assim, com forte evidência de que os modelos de simulação de culturas podem ter participação importante na pesquisa científica, na tomada de decisão e na educação (GRAVES et al., 2002). Atualmente, encontram-se na literatura diversos modelos de simulação desenvolvidos para área agrícola, dentre os quais se verifica uma sobreposição de focos (modelos que fazem o mesmo que outros). Porém, em muitos casos, isso é necessário em virtude das particularidades de cada cultura e região agrícola (VERHAGEN et al., 2001). Entre os principais modelos utilizados na área agrícola (PAVAN, 2007), pode-se citar: • APSIM: Agricultural Production Systems sIMulator, oriundo da Austrália, o qual objetiva

o auxílio aos agricultores e agentes de assistência técnica com relacao às recomendações de cultivos. Permite que módulos individuais sejam plugados ao sistema, de forma que estejam dispostos ao redor do núcleo do simulador. Possui módulos agrossilvopastoris, processos do solo e de gerenciamento. A estrutura definida neste sistema possibilita que os módulos possam ser desenvolvidos e acoplados com uma grande facilidade, permitindo também uma boa manutenção no sistema como um todo, assim como a retirada e inclusão de módulos conforme a necessidade. Repositório disponível em: http://www.apsim.info/apsim/

• Daisy: Modelo agroecológico que simula o crescimento de uma cultura, o balanço de água e de calor, o balanço da matéria orgânica, a dinâmica do amônio e do nitrato, baseado em informações sobre práticas gerenciais e dados climáticos. Permite a construção de complexos cenários para a simulação de diferentes estratégias de gerenciamento e rotação de

Page 5: Simulador e Desenvolvimento de Cultura

culturas. Desenvolvido na Dinamarca, vem sendo aperfeiçoado desde a metade da década de 80. Para executar a simulação, é necessário informar dados climáticos diários (radiação, temperatura do ar e precipitação), como também dados sobre umidade relativa e velocidade do vento. Pode-se citar dentre as aplicações do modelo Daisy a otimizações da irrigação, lixiviação de nitrato de áreas agrícolas, lixiviação de pesticidas de áreas agrícolas e mudanças no rendimento em função da disponibilidade de água e nitrogênio nas práticas de gerência agriculturais. O modelo é dividido em componentes como balanço de água, ciclo do carbono e do nitrogênio e temperatura do solo.

• Century: Modelo que é aplicado com sucesso em diversos ecossistemas e tipos de solo, principalmente sob clima temperado. É composto de vários submodelos como o de água, de produção vegetal e dinâmica da matéria orgânica do solo. A acurácia e o sucesso deste modelo fez seu módulo de simulação de resíduos ser incorporado à suite do DSSAT, que será descrito a seguir.

• DSSAT: Uma das mais conhecidas aplicações dos modelos de simulação do crescimento e desenvolvimento das culturas, sendo desenvolvido pelo projeto IBSNAT (International Benchmark Sites Network for Agrotechnology Transfer) e atualmente mantido pelo consórcio ICASA (International Consortium for Agricultural Systems Applications). Aplica-se em estudos a longo prazo que avaliem estratégias eficientes no gerenciamento da cultura e que otimizem a produção (PAVAN APUD FARIA, 2003), combinando dados de solo e de clima com modelos de culturas e aplicativos, objetivando simular resultados de anos de estratégias no manejo de culturas (ICASA, 2007). DSSAT é uma coleção de programas independentes que interagem entre sí, na qual os modelos de simulação de culturas ficam no centro, ao passo que as bases de dados descrevem o clima, solo, observações e condições experimentais, além de informações sobre genótipos para aplicar nos modelos em diferentes situações, conforme apresentado na figura 1. Os componentes do software são escritos utilizando as linguagens FORTRAN (modelos), C (shell), Pascal (gráficos), Dbase (base de dados) e Basic (programas de gerenciamento e estratégia de risco)(JONES, 2003). A suite DSSAT é composta por 27 diferentes modelos de culturas, que são uma coleção de programas independentes que operam em conjunto, inseridos numa ferramenta que facilita a criação e o gerenciamento de arquivos de experimentos, de solo e de clima (PAVAN APUD JONES et al., 2003; ICASA, 2007). O DSSAT simula o crescimento, desenvolvimento e produção de uma cultura considerando uma área uniforme de terreno com as informações de manejo informadas ou simuladas, assim como mudanças no conteúdo da água do solo, carbono e nitrogênio que ocorrem em relação ao tempo. Possui uma estrutura composta por um programa principal, uma unidade módulo solo e os módulos para os componentes primários. A unidade módulo solo é responsável pela interface entre a aplicação e os componentes que interagem numa área uniforme de solo, ao passo que os componentes descrevem as mudanças temporais no solo e nas plantas em resposta ao clima e ao manejo (JONES et al., 2003). Cada módulo possui seis passos operacionais responsáveis pela estruturação e organização, os quais são: inicialização da execução, instalação da cultura, cálculo das taxas, integração, saídas diárias e sumário das saídas (PAVAN, 2007). Dentre os componentes primários encontrados no DSSAT, como clima, solo-planta-atmosfera, CROPGRO (modelo para a cultura), planta, manejo e praga, o módulo solo é representado como um perfil unidirecional, sendo homogêneo horizontalmente e consistindo de um número de camadas verticais de solo. O módulo solo é composto por quatro submódulos: água no solo, temperatura do solo, carbono e nitrogênio do solo (PAVAN, 2007).

Page 6: Simulador e Desenvolvimento de Cultura

Figura 1: Estrutura do Modelo DSSAT (PAVAN, 2007).

4 Verificação e Validação de Modelos de Simulação

A verificação e validação é de fundamental importância para o sucesso de um estudo de simulação. Acredita-se que este processo deve ser contínuo, acompanhando todo o ciclo de vida do projeto para a obtenção de melhores resultados (CHWIF, 2007). No processo de validação, deve-se analisar se o modelo que está sendo desenvolvido é realmente o correto, se o nível de detalhamento e o escopo estão de acordo e representam adequadamente o sistema a ser simulado. Dentre as principais técnicas de validação de modelos está o teste de Turing ou validação black-box, duplicação de modelos, comparação com modelos anteriores, análise de sensibilidade e validação "face a face". A verificação preocupa-se em analisar se o modelo está sendo desenvolvido de maneira correta e quais elementos podem ocasionar seu mal funcionamento. Dentre os procedimentos para facilitar este processo estão a implementação/ verificação modular, valores constantes ou simplificados vs. cálculos manuais, utilização de debugger, trace ou depurador, simulação manual, animação gráfica e revisão em grupo. A validade dos dados também é extremamente importante, pois são utilizados para três finalidades básicas: construção do modelo conceitual, validação de dados e experimentação, desta forma, se os dados de entrada do modelo estão incorretos, não há como o melhor modelo gerar resultados corretos (CHWIF, 2007).

5 Características do Simulador

O presente trabalho tem como objetivo a criação de um modelo genérico de simulação de culturas que utilize dados meteorológicos e prognósticos de tempo como entrada, processe-os por meio de seus modelos simples ou complexos, para a simulação da cultura e suas doenças, podendo gerar alertas de risco de epidemias, distribuindo a informação aos usuários do sistema. Com os dados observados, o sistema fornecerá informações sobre o comportamento passado ou recente das doenças. Com os prognósticos de tempo é possível a predição antecipada de fenômenos na cultura e doenças. Este modelo deve atender os seguintes critérios:

Page 7: Simulador e Desenvolvimento de Cultura

• Genérico: Utilização em diferentes tipos de culturas sem sofrer grandes mudanças prévias ou alterações.

• Orientado a objetos: Uso do paradigma da área computacional para tornar a modelagem de um sistema mais próxima do mundo real, através do uso de classes, atributos e métodos, facilitando assim a identificação e compreensão de todos os fatores que influenciam neste sistema. Proporciona a reutilização de código, otimizando processos de manutenção e reduzindo possibilidade de erros na etapa de programação (OLIVEIRA, 1999).

• Banco de dados e XML: Leitura e persistência das informações utilizando banco de dados relacional (SGBD PostgreSQL), sendo este um diferencial dentre os modelos já estudados, e XML com o objetivo de facilitar a integração com aplicações Web e dispositivos móveis.

• Modular: Estrutura do modelo dividida em módulos, visando facilitar a integração dos mesmos e proporcionar uma maior flexibilidade para a evolução do sistema, além de possibilitar o fácil acoplamento de novos submodelos em uma plataforma de dados compartilhados (PORTER, 2009).

• Arquitetura plug-and-play: Característica que possibilita a inserção e utilização de novos módulos ou funcionalidades de forma dinâmica, durante as atividades de simulação.

• Tecnologias multiplataforma: Possibilidade de uso através de diferentes tecnologias, como por exemplo web e dispositivos móveis, possibilitando o acesso a informação por meio de diversos tipos de interfaces.

A Figura 2 demonstra a estrutura e funcionamento do simulador. Ao centro estão os quatro módulos básicos (Planta, Clima, Solo-Água e Doença) que representam o núcleo do simulador, implementando as funcionalidades básicas necessárias para trabalhar com as informações dos modelos de Plantas e Doenças, os quais são acoplados ao simulador e podem variar de acordo com as necessidades. Na parte superior são demonstradas as possíveis formas de visualização dos resultados pelo usuário, como desktop (padrão inicial), internet e dispositivos móveis.

Page 8: Simulador e Desenvolvimento de Cultura

Figura 2: Simulador: estrutura e funcionamento

Tendo em vista o caráter modular aplicado no desenvolvimento do modelo, existe a possibilidade, por meio da parametrização do sistema, optar pela execução concomitante do modelo de crescimento e desenvolvimento de culturas, obtendo-se, dessa forma, diversas informações sobre o desenvolvimento da planta. Certos estádios fenológicos, são um dos fatores importantes para a determinação do processo de infecção. Com este acoplamento, estudos baseados em dados históricos e datas de semeadura podem ser realizados para melhor entender os fenômenos ocorridos ao longo dos anos. Em virtude da modularidade, o sistema/modelo pode ser adaptado, com certa facilidade, em outros sistemas, tendo em vista a utilização de bancos de dados centralizados facilitadores no compartilhamento de informações. Assim, execuções individuais ou em lote (batch) podem ser realizadas, armazenando e recuperando um grande conjunto de resultados, auxiliando no entendimento de muitos fatores envolvidos numa epidemia.

6 Implementação do Simulador

A implementação do simulador encontra-se em fase inicial, para plataforma Linux, tendo como base um modelo de crescimento de culturas proposto por (PORTER, 2009) e implementado na linguagem FORTRAN por Ricardo Braga e Jadir Rosa.

Page 9: Simulador e Desenvolvimento de Cultura

6.1 Modelo proposto por Porter

Este modelo tem como objetivo demonstrar o uso de uma abordagem modular para a implementação de modelos de culturas agrícolas, visando facilitar a integração de conhecimentos que provêm de diferentes áreas e de diferentes autores, possibilitando uma maior flexibilidade para futuras melhorias nos modelos e diminuição do impacto das alterações (ICASA, 2009). Dentre os critérios e regras propostos por (REINOLDS,1997) para uma estrutura modular genérica dos modelos de culturas pode-se citar:

� Os módulos devem se relacionar diretamente com componentes ou processos do mundo real, que são comuns a todas as plantas as quais farão parte da modelagem;

� Os módulos devem representar as funções de modo independente; � As variáveis de entrada e saída devem representar valores mensuráveis; � A comunicação entre os módulos deve ser feita somente através das variáveis de entrada

e saída; � Módulos devem ser validados independentemente de outros módulos.

Segundo (PORTER APUD KENIG; JONES, 1997), cada módulo deve:

� Ler seus próprios parâmetros; � Inicializar suas variáveis; � Aceitar variáveis (parâmetros) recebidos de outros módulos; � Retornar variáveis após serem computadas; � Possuir seu próprio conjunto de variáveis de estado; � Calcular taxas de variação para suas as variáveis de estado; � Integrar as suas variáveis de estado; � Escrever suas próprias variáveis de saída; � Operar quando inserido em um programa de testes.

A figura 3 demonstra a estrutura modular proposta por (PORTER, 2009) para o modelo básico de crescimento de culturas. Ao lado esquerdo da figura temos as operações e ao lado direito são representados os módulos e quais operações os mesmos realizam durante a execução do modelo. Abaixo uma descrição de cada operação: � Initialization: Controla os dados de entrada e inicializa as variáveis necessárias, sendo

chamada uma única vez por simulação; � Rate calculation: Realiza cálculos de taxas dos processos e mudanças das variáveis de

estado, baseando-se nas condições do dia anterior da simulação. É executada uma vez a cada ciclo da simulação;

� Integration: Atualiza variáveis de estado utilizando as taxas previamente calculadas; � Output: Gera a saída diária de informações; � Close: Utilizada no fim da simulação para fechar os arquivos de saída e gerar relatórios

sumarizados. Com base neste modelo proposto por Porter, a figura 12 demonstra o diagrama de classes do modelo proposto por este trabalho.

Page 10: Simulador e Desenvolvimento de Cultura

Figura 3: Estrutura modular proposta por (Porter, 2009)

6.2 Tecnologias Utilizadas

Os módulos básicos Planta, Clima e Solo-Água foram implementados utilizando a linguagem de programação R. Com relação ao módulo de doenças, sua implementação encontra-se em desenvolvimento, com objetivo de obter uma melhor integração entre este e os demais módulos. Para auxílio na implementação das classes e métodos básicos, foi utilizado o pacote "R.oo" (BENGTSSON, 2002). A leitura e geração dos arquivos XML foi realizada com o uso do pacote "RSXML"(OMEGAHAT, 2009), pacotes estes disponíveis para instalação através do comando install.packages(), via interface da linguagem R. O dados de clima são obtidos em uma base de dados utilizando o SGBD PostgreSQL. Para isso foi utilizado o pacote "RpgSQL" (http://rpgsql.sourceforge.net/), o qual possui métodos que facilitam o acesso através da linguagem R. A interface de apresentação dos resultados deve ser implementada utilizando uma linguagem de programação sob a licença GPL (General Public Licence), ou alguma de suas variações, como por exemplo, Java, Python ou PHP.

6.2.1 Linguagem R

A linguagem R, ou também chamada de Ambiente Estatístico R, é desenvolvida sob licença livre (projeto GNU), sendo utilizada para computação estatística e gráficos. Trata-se se uma suite de softwares integrados que proporcionam facilidades na manipulação de dados, cálculos e geração de gráficos. Disponibiliza versões para várias plataformas (Linux, FreeBSD, Windows e MacOS). Possui uma suite de operadores para cálculos em vetores e matrizes e também uma coleção de ferramentas para análise de dados. Pacotes adicionais podem ser instalados através do CRAN (Comprehensive R Archive Network ) (R-PROJECT, 2009). Através da implementação do simulador proposto, percebe-se que a linguagem R possui um grande potencial para uso nos mais variados tipos de aplicações. Sua sintaxe é relativamente simples e pôde-se observar uma extrema rapidez na execução dos programas e geração dos resultados.

Page 11: Simulador e Desenvolvimento de Cultura

6.2.2 Orientação a objetos

Para o desenvolvimento do modelo proposto foi escolhida a análise e programação orientada a objetos, abaixo os conceitos relacionados com base em (SUN, 2009):

� Classe: representa um conjunto de objetos com características afins. Uma classe define o comportamento dos objetos através de seus métodos, e quais estados ele é capaz de manter através de seus atributos;

� Subclasse: é uma nova classe originada de sua classe pai;

� Objeto é uma instância de uma classe. Um objeto é capaz de armazenar estados através de seus atributos e reagir a mensagens enviadas a ele, assim como se relacionar e enviar mensagens a outros objetos;

� Atributos: características de um objeto. Basicamente a estrutura de dados que vai representar a classe. O conjunto de valores dos atributos de um determinado objeto é chamado de estado;

� Métodos: definem as habilidades ou funcionalidades dos objetos. Um método em uma classe é apenas uma definição. A ação só ocorre quando o método é invocado através do objeto;

� Mensagem: chamada a um objeto para invocar um de seus métodos, ativando um comportamento descrito por sua classe. Também pode ser direcionada diretamente a uma classe (através de uma invocação a um método estático);

� Herança (ou generalização): mecanismo pelo qual uma classe (sub-classe) pode estender outra classe (super-classe), aproveitando seus comportamentos (métodos) e variáveis possíveis (atributos). Há Herança múltipla quando uma sub-classe possui mais de uma super-classe;

� Associação: mecanismo pelo qual um objeto utiliza os recursos de outro. Pode tratar-se de uma associação simples ou de um acoplamento;

� Encapsulamento: separação de aspectos internos e externos de um objeto. Utilizado para impedir o acesso direto ao estado de um objeto (seus atributos), disponibilizando externamente apenas os métodos que alteram estes estados;

� Abstração: habilidade de concentrar nos aspectos essenciais de um contexto qualquer. Em modelagem orientada a objetos, uma classe é uma abstração de entidades existentes no domínio do sistema de software;

� Polimorfismo: consiste em quatro propriedades que a linguagem pode ter:

� Universal:

■ Inclusão: um ponteiro para classe mãe pode apontar para uma instância de uma classe filha;

■ Paramétrico: se restringe ao uso de templates e generics.

� Ad-Hoc:

■ Sobrecarga: duas funçõeses/métodos com o mesmo nome mas assinaturas diferentes;

■ Coerção: a linguagem que faz as conversões implicitamente.

� Interface: contato entre a classe e o mundo externo. Quando uma classe implementa uma interface, ela está comprometida a fornecer o comportamento publicado pela interface;

� Pacotes: referências para organização lógica de classes e interfaces.

Page 12: Simulador e Desenvolvimento de Cultura

6.2.3 Pacote R.oo

Pacote implementado diretamente na linguagem R que possibilita a utilização da orientação a objetos desta linguagem de uma maneira mais simplificada. Suporta a criação de classes e métodos através das funções do pacote R.methodsS3 porém com o propósito de eliminar detalhes para que seja possível ao desenvolvedor manter-se focado na modelagem orientada a objetos. Este pacote proporciona uma maneira transparente para o uso de referências (references), como também um mecanismo para melhor controle de exceções (BENGTSSON, 2002).

6.2.4 Pacote RSXML

Pacote que proporciona facilidades para analisar arquivos do tipo XML e HTML. Auxilia na geração de conteúdo XML, sendo uma interface para a biblioteca "libxml2". Possibilita consultas XPath nos documentos. Pode ser utilizado juntamente com o pacote RCurl (http://www.omegahat.org/RCurl/), para documentos que necessitem maior número de requisições HTTP em sua análise.

6.3 Estrutura de arquivos e diretórios

O simulador possui a seguinte estrutura de diretórios, conforme a figura 4:

Figura 4: Estrutura de diretórios

○ Diretório raiz : Arquivos principais do simulador.

o Principal.R - Arquivo principal (gerenciador) o Planta.R - Módulo Planta o Clima.R - Módulo Clima o SoloAgua.R - Módulo Solo-Água o Ajuda.txt - Arquivo de ajuda

○ Documentacao - Artigos sobre o modelo e pacotes utilizados.

○ Input - Arquivos de entrada para o modelo

o Control.xml - Contém as informações iniciais da simulação (data do plantio, frequência de saída (figura 5);

o Planta.xml - Arquivo de entrada para o módulo Planta (figura 6). o SoloAgua.xml - Arquivo de entrada para o módulo Solo-Água (figura 7). o Irrig.xml - Informações de irrigação utilizadas pelo módulo Solo-Água (figura 8).

○ Output - Arquivos de saída do modelo o PlantaOut.xml - Arquivo gerado pelo módulo Planta (figura 9).

Page 13: Simulador e Desenvolvimento de Cultura

o SoloAguaOut.xml - Arquivo gerado pelo módulo Solo-Água (figura 10). o WBAL.xml - Arquivo com informações de balanço hídrico, gerado pelo módulo

Solo-Água (figura 11).

Figura 5: Control.xml

Figura 7: SoloAgua.xml Figura 6: Planta.xml

Figura 8: Irrig.xml Figura 9: PlantaOut.xml

Page 14: Simulador e Desenvolvimento de Cultura

6.4 Módulos do simulador

A seguir são descritas as funcionalidades de cada módulo que compõe o simulador proposto, com embasamento no trabalho de (PORTER, 2009).

6.4.1 Módulo Clima

Módulo responsável por ler os dados diários de clima do SGBD (data, radiação solar, quantidade de chuvas, tamperaturas), dados estes que servem de base para a maioria dos cálculos dos demais módulos do simulador.

Figura 10: SoloAguaOut.xml

Figura 11:Figura 11:Figura 11:Figura 11: WBAL.xml

Page 15: Simulador e Desenvolvimento de Cultura

6.4.2 Módulo Planta

O módulo Planta é responsável por computar informações sobre o crescimento e desenvolvimento da cultura, baseando-se em valores diários como, por exemplo: temperatura máxima e mínima, radiação, fatores de stress do balanço hídrico no solo e índice de área foliar. Entre suas funcionalidaes temos: Cálculo do efeito da temperatura no crescimento diário da planta, quantidade de área foliar, cálculo de taxas de crescimento, integração dos dados com os demais módulos do simulador e geração dos arquivos de saída.

6.4.3 Módulo Solo-Água

Módulo responsável por controlar o balanço hídrico no solo, gerenciando valores diários de infiltração, evaporação, transpiração e drenagem. Dentre as características definidas estão: quantidade inicial de água, quantidade de água no período de seca, capacidade e saturação, profundidade e fração de drenagem diária. Este módulo é responsável por ler informações de irrigação do solo e retornar parâmetros que expressam os efeitos da seca e excesso de água para a taxa de crescimento da cultura, como também o cálculo de evapotranspiração potencial.

6.4.4 Diagrama de classes

Na figura 12 (abaixo) é representado o Diagrama de Classes do modelo proposto.

Figura12: Diagrama de Classes do modelo proposto

Page 16: Simulador e Desenvolvimento de Cultura

7 Testes

Testes funcionais foram realizados com o objetivo de verificar e validar o funcionamento do modelo proposto dando prioridade para a correção de possíveis erros de implementação. Por se tratar da fase inicial do projeto, os resultados observados não possuem utilização prática para a área, sendo apenas utilizados para a fase de implementação. Como resultados pode-se citar a grande viabilidade do uso da programação modular e orientada a objetos aos sistemas para a área agrícola, como também que a utilização de SGBD e XML proporcionam uma forma otimizada para a troca de informações entre diferentes tipos de aplicações. De acordo com os arquivos de saída do modelo (figuras 9, 10 e 11), o resultado gerado mostrou-se satisfatório para a atual fase do projeto. Com base nesses aquivos existe a possibilidade da geração de gráficos e outras formas de melhor visualização dos resultados. Outra possibilidade está relacionada com a automatização dos processos de entrada e saída dos dados através da utilização de Webservices, para que informações originadas em diferentes fontes sejam manipuladas e aceitas pelo modelo proposto, bem como os resultados possam ser gerados em diferentes formatos.

8 Conclusões

O principal objetivo deste trabalho foi a criação da estrutura e implementação de um modelo de simulador baseando-se em algumas características como: genérico, modular, orientado a objetos, que utilize SGBD e XML, que atenda as características da arquitetura plug-and-play e multiplataforma. Desta forma, a continuidade dos trabalhos pode utilizar esta estrutura proposta como diretriz, que possibilita um aperfeiçoamento das tecnologias computacionais utilizadas em sistemas para agricultura. A validade deste trabalho foi comprovada, pois nota-se que os objetivos propostos foram atingidos, sendo que, por se tratar de uma proposta inicial, é necessário um aperfeiçoamento destas características afim de tornar o modelo mais abrangente e robusto. A estrutura do modelo permite a agregação de módulos, tornando-se ainda mais promissor para agregar futuras contribuições e ampliar sua variedade de funcionalidades. Neste sentido, o modelo proporciona uma grande evolução e pretende disponibilizar um sistema de previsão de doenças para as culturas que integram a Produção Integrada, nas diferentes regiões produtoras do Brasil, visando contribuir para racionalizar o uso de agrotóxicos, para a obtenção de produtos com qualidade certificada, para aumentar a competitividade da cadeia produtiva, disponibilizando alimentos seguros para o consumidor.

9 Referências Bibliográficas

BENGTSSON, Henrik; The R.oo package - Object-oriented programming with references using S3/UseMethod. 2002. Disponível em: <http://www1.maths.lth.se/help/R/R.oo> Acesso em 30 Out. 2009. BRAGA, R.; PINTO, P.; COELHO, J. Os Modelos de Simulação e a Investigação de Sistemas de Agricultura. 2005. Disponível em: <http://www.esaelvas.pt/ricardo braga/ordem.html>. Acesso em 26 Mai. 2005. CHWIF, Leonardo; MEDINA, Afonso C. Modelagem e Simulação de eventos discretos: teoria e prática. 2 ed. São Paulo, SP: Bravarte, 2007. FILHO, Clovis Perin. Introdução à simulação de sistemas. Campinas, SP: Editora da UNICAMP, 1995.

Page 17: Simulador e Desenvolvimento de Cultura

FORRESTER, Jay W. Principles of systems. Cambridge: Wright-Allen Press Inc., 1968. GAONA, Hugo Blas M. O uso da simulação para avaliar mudanças organiacionais na produção. 1995. Dissertação (Mestrado em Engenharia) - Universidade Federal de Santa Catarina, Florianópolis, 1995. Disponível em: <http://www.eps.ufsc.br/disserta/gaona/indice/index.htm> GRAVES, A. et al. Crop simulation models as tools in computer laboratory and classroom-based education. Journal of Natural Resources and Life Sciences Education, v. 31, p. 48–54, 2002. HOOGENBOOM, Gerrit. Contribution of agrometeorology to the simulation of crop production and its applications.Agricultural and Forest Meteorology, v. 103, n. 1-2, p. 137–157, 2000. ICASA, ICASA - International Consortium for Agricultural Systems Applications. 2007. Disponível em: <http://icasa.net>. Acesso em 30 Out. 2009. SUN, The Java Tutorials. Disponível em: <http://java.sun.com/docs/books/tutorial/java/concepts/>. Acesso em 8 Dez. 2009. JONES, J. W. et al. The dssat cropping system model. Europeanjournal of Agronomy: Modelling Cropping Systems: Science, Software and Applications, v. 18, n. 3-4, p. 235–265, 2003. NYGAARD, K.; DAHL, O.-J. The development of the simula languages. ACM Press, New York, NY, USA, p. 439–480, 1981. OLIVEIRA, Adelize Generini. Orientação a Objetos. Relativa, 1999. OMEGAHAT, Site oficial do pacote RSXML. 2009. Disponível em: <http://www.omegahat.org/RSXML>. Acesso em 3 Nov. 2009. PAPAJORGJI, Petraq J.; PARDALOS, Panos M. Software Engineering techniques applied to agricultural systems: An Object-Oriented and UML Approach. Florida, U.S.A: Springer, 2006. PAVAN, Willingthon. Técnicas de engenharia de software aplicadas à modelagem e simulação de doenças de plantas. 2007. Tese (Doutorado em Agronomia) - Universidade de Passo Fundo, Passo Fundo, RS, 2007. PORTER, C. H; BRAGA, Ricardo; JONES, J. W. An Approach for Modular Crop Model Development. Disponível em: <http://icasa.net/modular/pdf/modular.pdf>. Acesso em: 20 ago. 2009. PEGDEN, C.D. et al. Introduction to Simulation using SIMAN. Mc Graw Hill, 1990. REINOLDS, J.F; Acock B. Modularity and genericness in plant and ecosystem models. Ecological Modeling 94: 7-16, 1997. R-PROJECT, R Project for Statistical Computing. Disponível em: <http://www.r-project.org/>. Acesso em 6 Dez. 2009. TAVIEIRA, Ricardo Ayer. Uma metodologia para aperfeiçoamento da mudança para um sistema de produção Just-in-Time em uma indústria Metalúrgica, usando simulação discreta e técnicas de projeto de experimentos de Taguchi. 1997. Dissertação (Mestrado em Engenharia de Produção) -

Page 18: Simulador e Desenvolvimento de Cultura

Universidade Federal de Santa Catarina, Florianópolis, 1997. Disponível em: http://www.eps.ufsc.br/disserta97/taveira/ VERHAGEN, A.; CONIJN, S.; SCHAPENDONK, A. Quickscan of simulations models. [S.l.: s.n.], 2001. Disponível em: http://library.wur.nl/wasp/bestanden/LUWPUBRD 00121624 A 502 001.pdf. Acesso em 1 Dez. 2006.