Semantic Web Technologies for Orchard Irrigation Systems Jiao Tao, Rui Huang, Shangguan 2008/11/17...

Post on 27-Mar-2015

212 views 0 download

Tags:

transcript

Semantic Web Technologies for Orchard Irrigation Systems

Jiao Tao, Rui Huang, Shangguan

2008/11/17

1

Outline

Motivation Use Case Knowledge Representation Implementation Conclusions

2

Motivation

Many orchards use traditional irrigation systems Measure soil water content manually Treat different fruit trees in the same way Treat different soil in the same way Irrigation technology is orchard specific

Actually, irrigation is not just spraying water. It needs a lot of knowledge from different domain Botany: fruit, growth stage, root depth Agrology: soil texture, soil water content, soil allowable depletion Climatology: precipitation, evapotranspiration

We need smart irrigation systems which know whether we should water the orchard.

3

Motivation

Semantic e-Science works here! Integrating data from multiple data sources

Soil water content from sensor Evapotranspiration rate based on history record Precipitation rate from weather forecast services …

Infer “Fuji” is apple and “Pantao” is peach, thus they have different evapotranspiration rate

Semantic Mediawiki as a quick prototype development platform

4

Use Case

Provide an irrigation system which decides whether irrigation is necessary for a given field, if necessary how much water is needed, and the next day (possible) to water.

5

Use Case Diagram

6

Activity Diagram

7

Knowledge Representation

Knowledge sources: Irrigation:

http://extension.usu.edu/htm/publications/by=category/category=186 Fruit:

http://www.uga.edu/fruit/ http://www.bowmanorchards.com/

Soil moisture: http://en.wikipedia.org/wiki/Water_retention_curve

Climatology: precipitation, evapotranspiration http://www.nrcc.cornell.edu/grass/moisture/mp_evapotrans.html http://squall.nrcc.cornell.edu/lawnWater/program/lawn_water_process http://www.nrcc.cornell.edu/grass/moisture/mp_moisture.html

Sensor: http://en.wikipedia.org/wiki/Sensor http://www.soilmeasurement.com/tensiometer.html http://en.wikipedia.org/wiki/Tensiometer

8

Knowledge Representation

9

Field Capacity: amount of water can be held in soil

Permanent Wilting Point: the point at which the water in soil is not available for uptake by plant roots. Plants die at this point.

Available Water: amount of water held in the soil between field capacity and permanent wilting point.

Allowable Depletion: the point where plants begin to experience drought stress. Usually it is 50% of total available water.

Knowledge Representation

General Irrigation Knowledge Managing irrigation = managing money

Balance: soil water content Input: precipitation, irrigation Expense: evapotranspiration

The goal of a well-managed irrigation system is to maintain soil moisture between field capacity and allowable depletion.

And, Water holding capability depends on soil texture, root depth Evapotranspiration depends on locations, seasons, crop, growth

stage Usually sensor reads water potential, not water content

10

Knowledge Representation

Our irrigation model

S: sensor reading, current water content R: rainfall in next week T: threshold (soil allowable depletion) U: upper bound of water holding capability Ev.: evapotranspiration rate per week of given crop

Condition Water? (Y/N) Water Volume Next Day to Water

(1)S < T

S + R < U Y U-S-R (U-T)/Ev.

S + R > U Y(N) 0 (U-T)/Ev.

(2)S > T

S + R < U N N/A (S+R-T)/Ev.

S + R > U N N/A (U-T)/Ev.

11

Knowledge Representation

Ontologies: Orchard Irrigation

12

Knowledge Representation

Ontologies: Fruit

13

Knowledge Representation

Ontologies: Sensor

14

Knowledge Representation

Ontologies: Other

15

SMW based Implementation

Based on Tetherless Map extension

16

Demo Workflow

User logs into the system Select kinds of fruits Check whether irrigation is needed for a

certain orchard fieldCurrently only supports checking one field per

time Be informed about irrigation volume and next

irrigation day

User Interface

User Interface

User Interface

Ontology Implementation on SMW Classes correspond to Categories

Orchard Category:Orchard OrchardField Category:OrchardField Apple Category:Apple GrowStage2CropCoefficient

Category:GrowStage2CropCoefficient Instances correspond to Pages

Fuji instance Page:Fuji OrchardField instance Page:FieldA…

Properties correspond to Properties hasFruit Property:has Fruit

Irrigation Model Implementation

Simple Math Calculations Calculation procedures implemented within

templates (functions/methods) Retrieve multiple parameter values using

SMW inline queries (variable definitions) Do mathematical calculations with the help of

SMW parser functions (programming language syntax)

Sample Wiki Code{{#vardefine:coe|{{#ask: [[Category:GrowStage2CropCoefficient]] [[Has growth

stage::<q>[[Category:GrowthStage]] [[Has field name::{{{field_name|}}}]]</q>]] [[Has fruit name::<q>[[Category:Fruit]] [[Has fruit type::Fuji]]</q>]]

| ?Has crop coefficient=| mainlabel=-| limit=1| link=none| format=list}}

}}{{#vardefine:ETr|{{#ask: [[Category:LocationSeason2ETr]][[Has field name::{{{field_name|}}}]][[Has growth season::{{CURRENTMONTHABBREV}}]]| ?Has ETr=| mainlabel=-| limit=1| link=none| format=list}}}}

{{#vardefine:ETc|{{#expr: {{#var:coe}} * {{#var:ETr}} }}}}

Sample Wiki Code

{{#vardefine:irrigate| {{#ifexpr:{{#var:WC}}<{{#var:ADUB}}|{{#ifexpr:{{#var:WC}}+{{#var:RF}}<{{#var:Capacity}} |Yes | Yes }}|

{{#ifexpr:{{#var:WC}}+{{#var:RF}}<{{#var:Capacity}} |No |No }} }} }}

{{#vardefine:volume| {{#ifexpr:{{#var:WC}}<{{#var:ADUB}}|{{#ifexpr:{{#var:WC}}+{{#var:RF}}<{{#var:Capacity}} |{{#var:Capacity}}-{{#var:WC}}-{{#var:RF}} | 0 }}|

{{#ifexpr:{{#var:WC}}+{{#var:RF}}<{{#var:Capacity}} |N/A |N/A }} }} }}

{{#vardefine:days| {{#ifexpr:{{#var:WC}}<{{#var:ADUB}}|{{#ifexpr:{{#var:WC}}+{{#var:RF}}<{{#var:Capacity}} |({{#var:Capacity}}-{{#var:ADUB}})/{{#var:ETc}} | ({{#var:Capacity}}-{{#var:ADUB}})/{{#var:ETc}} }}|

{{#ifexpr:{{#var:WC}}+{{#var:RF}}<{{#var:Capacity}} |({{#var:WC}}+{{#var:RF}}-{{#var:ADUB}})/{{#var:ETc}} |({{#var:Capacity}}-{{#var:ADUB}})/{{#var:ETc}} }} }} }}

Project Experiences

Semantic Mediawiki (SMW) as a quick prototype platform

SMW is able to support simple mathematics (limited, but can be extended via extensions)

How to create ontology with large number of classes/instances in bulk on Wiki (import/export)

How to integrate multiple data services from other portals (e.g., weather forecast, rainfall, etc) using Wiki

How to “forge” sensor data (possibly customized parser function)