Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
This page is for indexing purposes and will not be printed in the conference proceedings book. The text area is 29 × 45 picas (~12.3 cm × 19 cm) to fit in the printed proceedings book without reduction. When printed on letter paper there will be wide margins. Author(s) First Name Howard Middle Name W Surname Beck Role First Author Affiliation Organization Agricultural and Biological Engineering Department, University of Florida URL http://orb.at.ufl.edu/ObjectEditor Email [email protected] Author(s) First Name Kelly Middle Name Surname Morgan Role Second Author Affiliation Organization Soil and Water Science Department, University of Florida URL (optional) Email Author(s) First Name Johannes Middle Name Surname Scholberg Role Third Author Affiliation Organization Agronomy Department, University of Florida URL (optional) Email Author(s) First Name Sabine Middle Name Surname Grunwald Role Forth Author Affiliation Organization Soil and Water Science Department, University of Florida URL (optional) Email Author(s) First Name Middle Name Surname Role Affiliation Organization URL (optional) Email Publication Information Pub ID ASABE will complete Pub Name Computers in Agriculture 2006 (24-26 July, Lake Buena Vista, Florida, USA). Pub Date Pub. Date July 2006 Implementation of In-Season Irrigation and Nutrient Tools for Minimizing Environmental Impacts of Citrus and Sugarcane Production Howard W. Beck1, Kelly Morgan3, Johannes Scholberg2, Sabine Grunwald3 1. Agricultural and Biological Engineering Department, University of Florida, [email protected] 2. Agronomy Department, University of Florida 3. Soil and Water Science Department, University of Florida Abstract. A Nutrient Management Plan Support System (NUMAPS) that assists growers in selection and application of best management practices (BMPs) related to water and nutrition management in citrus and sugarcane is being developed. NUMAPS combines expert systems with record keeping, database management, and computer simulation to offer growers the best advice on water and nutrient management using a Web-based software environment that can be readily integrated into their day-to-day production operation management. BMPs in the form of rules are compiled into a database and displayed in the software as appropriate for on-site decision making. Computer simulations of plant growth, soil moisture, and nutrient uptake enhance rule-based BMPs by providing more accurate assessments of water and nutrient utilization and potential losses via leaching and/or runoff. The system is designed to optimize yields in an economically effective manner while greatly reducing the environmental impacts associated with excess fertilizer and water applications. A new environment for developing computer simulations, created as part of a more comprehensive set of decision support system development (authoring) tools, is used in this project. This environment utilizes ontology-based simulation to design, develop, document, and deploy simulations. The environment consists of several on-line authoring tools that can be accessed through standard Web browsers. These on-line tools include a simulation component editor, an equation editor, and a symbol dictionary. Models are specified at a high level using diagrams, equations, and symbols. Computer code (Java) to run a simulation is generated automatically from the high level specification. MathML (eXtensible Markup Language - XML for mathematics) can also be generated from the model specification. Simulations are compiled and run on-line. Keywords. decision support system, simulation, ontology-based simulation, citrus, sugarcane. Introduction This paper describes the software environment for building and deploying the NUMAPS decision support system. Details of water and nutrient modeling are presented in a companion paper (Morgan et al., 2006). The software environment includes an ontology management system called Lyra, a generic database system for storing structured objects. Lyra includes authoring tools for visualizing and editing objects (the SimulationEditor and EquationEditor are examples of these tools). The system deploys to various environments including a stand-alone version of specific tools as well as a comprehensive decision support system integrating many different tools. These software systems are presented in the following sections. Development Environment Ontology-Based Simulation An ontology is a collection of concepts and their relationships within a particular domain. Specifically, an ontology takes the form of an object-oriented data model consisting of objects called individuals that represent specific concepts. Individuals have properties which can be primitive data values such as numbers, or relationships to other individuals. Individuals with similar properties are grouped into generic concepts called classes. OWL (Web Ontology Language) is a W3 standard language for creating concept descriptions (OWL, 2004). The ontology acts as a general purpose database management system for organizing all knowledge within a domain. In the case of NUMAPS, the domain is a crop environment (citrus or sugarcane), and basic concepts in that domain include soil, plant (citrus tree or sugarcane plant), nutrients, and management practices. 4TH WORLD CONGRESS ON COMPUTERS IN AGRICULTURE Lyra is a database environment based entirely on ontologies. Lyra was developed at the University of Florida, and is currently being used to build many different types of applications, including agricultural decision support systems. The main components of Lyra include: • • • • • A data modeling language based on OWL for representing concepts A physical storage management system optimized for rapid retrieval of ontology objects Reasoning facilities (including query processing) for manipulating ontology objects A set of Web-based authoring tools enabling experts to work directly with ontology objects. Presentation generation software for automatically generating user interfaces from ontology objects. NUMAPS includes several simulation components. Specifically it contains a soil water balance model and nutrient transformation, movement, and uptake model. Lyra was used as the platform for model implementation, and thus offers a new approach to simulation development which we call ontology-based simulation (Beck et al., 2006). Traditionally agricultural system simulations are implemented by first designing the model and then implementing the model by directly coding the model equations in a programming language such as FORTRAN, C++, or Java. This creates several problems. For one, models implemented directly in such languages are not transparent and thus it is not clear how the model works (one cannot clearly see how the details of water balance or nutrient movement are represented in the model) except by looking directly at the source code. the model documentation is separate from the model code making it difficult to compare the structure of two similar yet slightly different models (i.e. compare two different irrigation models). In ontology-based simulation, the model is specified directly by creating ontology objects representing the model structure and the model behavior (no coding is involved). The design, development, documentation, and deployment of the model are closely integrated processes. Automatic reasoners that operate on ontology objects have the potential to compare the structure of two different models (though this possibility has not yet been fully explored). Since the ontology is also a database, the ontology can be used to build a model base containing many different models and model components and can describe how they are interrelated. With these capabilities in mind, we implemented the NUMAP simulations in Lyra. One immediate benefit has been a simplification of the model development process by eliminating the need to treat modeling as a programming process. Modeling is not a software development process, it is an abstract design process. By eliminating programming and software engineering constraints, it is much easier and faster to develop models, and the models are easier to modify. Modelers can also quickly develop and test different sets of equations used in model subsystems. Furthermore, the model is fully documented as part of the design process, and more easily examined by others wanting to know how the model works. Simulation Editor – Model Structure Most experts are not familiar with ontology modeling languages such as OWL, and even if they were, building models by creating ontology objects directly would be tedious. Therefore, we have developed a series of authoring tools that enable experts including agronomists and hydrologist to create objects in ways that are more familiar to them. This necessarily requires many such authoring tools as they are domain specific. However, a major advantage of using domain specific authoring tools is that they are tailored to the needs of and provide direct access to experts. Furthermore, these authoring tools are on-line, meaning anyone in the world can access them using a standard Web browser (requires the Java plug-in), and inspect/review/edit models on-line (provided that they have been granted access which is controlled by a security management system). One such tool is the SimulationEditor (Figure 1). The SimulationEditor is used to describe model structure using familiar source/storage/sink/flow notation. Each element in Figure 1 is internally stored as an ontology object. For example, “soil profile” is an individual that has properties relating it to “soil cell” (a soil cell contains many profiles) via a “part of” relationship (shown by the arrow). Likewise “soil layer” is part of “soil profile”, and “root distribution” is part of all three. Experts create structure diagrams on-line using the features shown in the toolbar of the SimulationEditor. 4TH WORLD CONGRESS ON COMPUTERS IN AGRICULTURE Figure 1. SimulationEditor is an on-line tool for specifying model structure. Shown here is the water balance model used in NUMAPS. EquationEditor - Model Behavior Using declarative languages to describe behavior (in NUMAPS, the time-varying behavior of water and nutrient flow) is a challenge. Ontologies in particular do not offer a direct way to represent behavior. However, ontologies can represent mathematical equations used to model behavior. The EquationEditor is an authoring tool used to create equations and which represents equations using the underlying ontology. An equation is a data structure containing a syntactic structure and symbols. For example “x = y + z” is an equation containing a structure (=) with two arguments, one of which is a symbol (x) and the other another structure (+). The + structure in turn has two arguments (y and z). The ontology contains an object for each symbol and each structure element. Using ontology objects enables a precise definition for each symbol and structure in each equation. Although the EquationEditor (Figure 2) looks much like conventional equation editors (thus experts can easily relate to the interface), the equations are stored internally using an ontology. Furthermore, unlike most conventional equation editors, the symbols are all clearly defined within a symbol dictionary. The dictionary is structured using an ontology which shows the relationships among symbols. Each symbol is defined not only by the signature used in the equations, but also by a concise yet complete language expression (multilingual expressions including English and Spanish), and formally by logical relationships with other symbols. 4TH WORLD CONGRESS ON COMPUTERS IN AGRICULTURE Figure 2. EquationEditor enables direct input of model equations using standard mathematical notation. Shown here is one of the evapotranspiration equations used in the water balance and nutrient model. Automatic Code Generation The simulation design process is completed once the model structure and behavior are specified using the SimulationEditor and EquationEditor. The process of building and running a simulation are automated once the structure and behavior have been specified. To accomplish this, automatic code generators are employed which can convert ontology objects to source code files. In theory the code generator can produce code in any one of several different languages (FORTRAN, C++, Java), but to date we have only developed code generators for Java. Essentially each equation becomes a Java method. Methods are grouped into classes based on the entities in the model structure diagram which modularize the generated program. Generated source code files are automatically compiled and run within the SimulationEditor environment. Tables and graphing tools are used to display simulation results. In the EquationEditor, equations are normalized with one symbol on the left side and an expression needed to determine the value of that symbol on the right side. The symbols appearing on the right side of an equation in turn can get their value from other equations, from a database, or they are constant values stored in the symbol dictionary. This leads to a controller-free approach to solving equations. The simulation is initiated by requesting the value for a particular symbol. Then the methods needed to find that value automatically chain recursively to solve for the requested symbol value. Equations are normalized (left side contains a single symbol) when they are entered into the EquationEditor. In the future, nonnormalized equations could be supported, and symbolic equation analysis software could automatically put them into normalized form. The system currently supports difference and differential equations, in the latter case numerical integration libraries needed to solve differential equations are automatically linked into the environment. 4TH WORLD CONGRESS ON COMPUTERS IN AGRICULTURE In addition to source code, it is highly desirable to produce the model in XML so that the model can be made available in a non-proprietary format. MathML (2006), an XML standard for equations, is created automatically by the EquationEditor. The tree-link object structure in which the equations are stored in the database makes it easy to generate MathML. XML generators merely traverse the equation tree. Similarly MathML can (in the future) be used as a way to import equations into Lyra, thus two-way exchange of content between Lyra and other simulation environments is possible using XML as the exchange medium. Database Connection Simulations require many inputs in order to run. NUMAPS requires weather (daily summaries), soil parameters, and grove/block geometry information. These inputs are stored conveniently in a relational database. While Lyra is also a database management system (and thus could be used to store this information), we developed an interface for relational databases in order to maintain compatibility with existing and widely used database technology. No matter what database is used, connecting a simulation to a database has historically been a tedious process. Typically the database was created independently from the model, usually by different developers. A disadvantage of this approach is that the interface programmer requires expertise in both the database and the model in order to build a connection. In the end, structured query language (SQL) statements must be written to query the database and generate tables suitable for input to the model. In Lyra we have established the first database connection by manually creating a link between symbols in the ontology and attributes in the relational database. Thus, when an equation needs the value for a symbol, and that symbol is a value in the database, the connection is called to query the database and retrieve the value. In the future it would be possible to automate this process even further. If the database was also specified using an ontology, then every attribute in the database would be fully described by an ontology object. Objects in the simulation could automatically match with objects in the database (using ontology reasoning), thus automating the process of establishing the model to database connection. Grower Interface The software described in the previous section is the development environment. Deployment can be accomplished in three ways: • • • Integrated with the development environment Stand-alone module Integrated with a decision support system The simulations can be run on-line entirely within the development environment using tables and graphs to plot simulation results. We have not yet provided a run-time only version on-line for growers. That would require allocating data storage space on a server to each potential user. In contrast, growers seem to prefer keeping there data locally because they have concerns about putting sensitive business data on-line in spite of security measure used to keep them private. Based on this, we have developed a stand-alone version of the decision-support model. Figure 3 shows a grower interface to the irrigation module in NUMAPS. The code generated by the development environment is linked into a custom made graphic user interface (in the future we hope to automate development of that particular interface, but for now it was developed manually using visual programming tools). The interface contains a minimal record keeping system used to record information required to run the model, including block description, rainfall, irrigation, and fertilizer applications. The most pertinent model results are displayed in a table which tells the farm manager when and how long to run irrigation pumps as shown in the figure. Since keeping records is also a tedious process, it is best if the record keeping system support many decision modules, rather than requiring customized data entry and recording facilities for specific modules. The third option of deploying NUMAPS is to incorporate the auto-generated decision modules inside of a 4TH WORLD CONGRESS ON COMPUTERS IN AGRICULTURE comprehensive decision support system. We are doing this for DISC (Decision Information System for Citrus, Beck and Albrigo, 2004), a DSS for citrus that includes centralized (local) common record keeping facilities for a complete citrus production operation. Modules in DISC include bloom prediction and management, rootstock selection, copper residue prediction for disease control, a grove observation (pest scouting) program utilizing PDAs, and the NUMAPS irrigation and nutrient management program. Figure 3. Grower interface for the stand-alone version of the irrigation and nutrient management model. On the left is a record keeping system used to support the model. Recommendations are shown on the right. Conclusion The software environment described in this paper is fully operational for supporting NUMAPS, though additional work is needed to complete the DISC interface. The potential for ontology-based simulation has been demonstrated in this working environment, but many additional benefits to the ontology-based modeling approach are still to be implemented. Such benefits include the ability to store, recycle, and manage many similar but different models and model components. The ontology reasoner, a facility for automatically comparing the structure of ontology objects and drawing conclusions, will enable automatic clustering of similar models, and location and retrieval of models and model components meeting certain specifications (a query processor for locating models). The database connection can also be developed to the point where highly distributed models and databases can to some extent automatically locate and attach to each other using web service technology. Acknowledgements: The authors wish to thank Yunchul Jung and Jin Zhong Wu for their valuable assistance in providing software development and modeling support for the NUMAPS project. This work was supported in part by the Florida Department of Environmental Protection. References Beck, H.W., L.G. Albrigo, and S. Kim. 2004. DISC Citrus Planning and Scheduling Program. Proc. 7th International Symposium on Computer Modeling in Fruit Research and Orchard Management. International Society for Horticultural Science. Copenhagen, Denmark. Beck, H.W., R. Badal, and Y. Jung. 2006 (In Publication). Ontology-based Simulation in Agriculture and Natural Resources. CRC Handbook of Dynamic System Modeling. Paul A. Fishwick (ed). CRC Press. MathML Standard. 2006. http://www.w3.org/Math Morgan, K.T., H.W. Beck, J.M.S. Scholberg, and S. Grunwald. 2006. In-Season Irrigation and Nutrient Decision Support System for Citrus Production. Computers in Agriculture 2006 (24-26 July, Lake Buena Vista, Florida, USA). OWL Standard. 2004. http://www.w3.org/2004/OWL. 4TH WORLD CONGRESS ON COMPUTERS IN AGRICULTURE