diff --git a/README.md b/README.md index 67361c973588532a52ac86dfb92cc5d6bfa35c73..b5626ea8685e59e1fe072986b53df7283f708920 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,15 @@ Since VIPS consists of multiple subsystems, this project is a starting point for * VIPS is an automatic forecasting system for pests and diseases in agriculture. * VIPS is an acronym for **V**arsling **I**nnen **P**lante**S**kadegjørere (Norwegian) - which simply translates into Forecasting of Pests and Diseases in Crops. VIPS is also a word used in Norwegian, similar to "Hey presto!" +### What's the use of predicting pest risk in agricultural crops? +Pesticides have increased the yields of crops worldwide by huge margins. However, they pose a risk to farmers, consumers and the environment. Traditionally, pesticides have been applied according to a spraying plan, meaning that every growing season the farmer uses more or less the same amount of pesticides, regardless of the actual risk of infections. + +If the farmer monitors the predictions of the system, pesticides are applied only when actually needed. This means that the farmer has a more efficient use of pesticides. The benefits of this are: +* Reduced costs and less time spent on applying pesticides for the farmer +* Reduced health risks for the farmer +* Lower pesticide residues in the produce, meaning better health for the consumer +* Less pesticide entering the farm's environment, enhancing biodiversity and water quality. + ### How does it work? * Weather data from the past (from agricultural weather stations) and the future (weather forecasts) is used as input data to models that use biological knowledge to predict historic, present and future occurences of pests in agricultural crops. * Field observations of pests are also commonly used as input data, as well as field specific information such as sowing date/biofix and tilling, crop rotation etc. @@ -21,15 +30,65 @@ Since VIPS consists of multiple subsystems, this project is a starting point for  -### What's the use of predicting pest risk in agricultural crops? -Pesticides have increased the yields of crops worldwide by huge margins. However, they pose a risk to farmers, consumers and the environment. Traditionally, pesticides have been applied according to a spraying plan, meaning that every growing season the farmer uses more or less the same amount of pesticides, regardless of the actual risk of infections. +### Why use VIPS and not make your own or use some other Decision Support System? +#### Ready-to-go infrastructure for making models operational +VIPS is designed to make it easy to implement, test and deploy new models. So by using VIPS, you don't have to create your own infrastructure for getting weather data, inputs from the user, displaying data, running the model regularly and all these things that need to be implemented **in addition** to the model itself. You can also rest assured that best practices for web development are making your model operational. The wheel has already been invented, now you can use it. -If the farmer monitors the predictions of the system, pesticides are applied only when actually needed. This means that the farmer has a more efficient use of pesticides. The benefits of this are: -* Reduced costs and less time spent on applying pesticides for the farmer -* Reduced health risks for the farmer -* Lower pesticide residues in the produce, meaning better health for the consumer -* Less pesticide entering the farm's environment, enhancing biodiversity and water quality. +So by using VIPS, you free up a lot of resources (time and money) in your project, resources you can use on more research. + +Also, by using VIPS, you can collaborate more easily with other researchers on model development, if they're familiar with VIPS. + +#### Open Source +There are plenty of Decision Support Systems providers available, and some of them may be willing to implement your model on their systems. However, if you want to rest assured that the implementation can live on even when abandoned by the company (e.g. in case of conflicts or bankruptcy), VIPS is Open Source and can be modified and deployed by everyone - provided that modifications and improvements are fed back to the community. Everyone benefits from this collaborative model of development. + +#### Easy to translate and adapt to your needs +VIPS supports translation of all components. Currently, we have Norwegian, English and Chinese translations available. + +#### GIS enabled +VIPS is using the PostgreSQL/PostGIS database as backend, and thus supports advanced GIS operations + +#### Compatible with many different weather data sources, including free worldwide weather forecasts +VIPS is able to read weather data from many types of weather stations, and adding new adapters/readers is straightforward. VIPS also has free access to 9-day weather forecasts across the globe - kindly provided by the Norwegian Meteorological Institute. + +### Technical description +VIPS consists of several loosely coupled systems. Each system serves a distinct purpose, and depending on your needs, you may omit one or more of them entirely. The architecture is illustrated below. + + + +#### VIPS pest prediction models +The pest prediction models are independent units running inside the VIPSCore runtime. Models can be implemented and tested locally, totally independent of the VIPS infrastructure. They can be programmed in Java or most other languages that run on the Java Virtual Machine. These include Ruby, Python, R and JavaScript. See [the complete list](https://en.wikipedia.org/wiki/List_of_JVM_languages). + +The model must follow a specific design (AKA interface) to be compatible with the VIPSCore runtime. This imposes no restrictions on the inner workings of the model, though. Input data has a basic format, but the model specifyes freely what kind of data it needs. + + + + +The results are returned in a standard format, but there's a high degree freedom in what can be returned as well. The model is self-describing, meaning that it must provide human readable information about +* An overview of the model (description, references etc.) +* What input data are needed +* How to interpret the results + +#### The VIPSCore runtime +A VIPS model can be deployed to a server running the VIPSCore runtime. The model is autodetected and indexed by the runtime, and made available from a web service endpoint. See the illustration below. + + + +If high loads are expected, it's straightforward to create multiple instances of the runtime. No data are stored on the server, it's up to the client to do that. + +Read more about the runtime in the [VIPSCore documentation](https://gitlab.nibio.no/VIPS/VIPSCore) + +#### VIPSLogic - the administration system +One such client is the VIPSLogic system, that handles all the business logic for the VIPS system. You can read more about it in the [VIPSLogic documentation](https://gitlab.nibio.no/VIPS/VIPSLogic) + +#### VIPSWeb - the public web page +Displaying the pest predictions to the public (farmers, advisers, researchers) can be done by any client pulling data over REST web services from VIPSLogic. NIBIO [uses the VIPSWeb to do this](https://www.vips-landbruk.no/). Every organization using the VIPS system may install their own copy of VIPSWeb and adapt to their needs. Read more in the [VIPSWeb documentation](https://gitlab.nibio.no/VIPS/VIPSWeb) + +## The history of VIPS +[NIBIO](https://www.nibio.no/) is a merger of several research institutes owned by the Norwegian Ministry of Agriculture and Food. Back in the 1950s, the "Statens Plantevern" (The Public Pest Protection Institute) cooperated with the Norwegian Meteorological Office and the Norwegian Public Broadcasting Corporation in issuing potato late blight forecasts together with the weather forecasts on radio. + +In the 1990s, automatic weather stations were installed in central agricultural areas, and the forecasts were provided as automatic dial-in phone services. + +In 2001, the first WWW version of the system was launced, and it was called VIPS. It included several new prediction models in fruits, vegetables, potato and cereals. -### Why use VIPS and not some other Decision Support System? -#### If you are a model developer +After several initiatives to make the code from 2001 adapted to international use, a version built from scratch to meet the needs for translation, modern web design and flexibility was launched in 2016. diff --git a/illustrations/VIPS_whole_architecture.png b/illustrations/VIPS_whole_architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..6b4f1d748bac1f713206b8204ce343a000883f02 Binary files /dev/null and b/illustrations/VIPS_whole_architecture.png differ diff --git a/illustrations/vips_model.png b/illustrations/vips_model.png new file mode 100644 index 0000000000000000000000000000000000000000..5a617b04c92d01f32a8a4ba079fdc6b3146a8ee5 Binary files /dev/null and b/illustrations/vips_model.png differ diff --git a/illustrations/vips_model_interface.png b/illustrations/vips_model_interface.png new file mode 100644 index 0000000000000000000000000000000000000000..9b1a91c0515baf2f51f0745327b7b79422d314e2 Binary files /dev/null and b/illustrations/vips_model_interface.png differ diff --git a/illustrations/vipscore_illustration.png b/illustrations/vipscore_illustration.png new file mode 100644 index 0000000000000000000000000000000000000000..cd15d176190c91f38a045199ff259fc9033b7c2a Binary files /dev/null and b/illustrations/vipscore_illustration.png differ