• Ei tuloksia

The implementation of an automatic crop farming simulation platform

N/A
N/A
Info
Lataa
Protected

Academic year: 2022

Jaa "The implementation of an automatic crop farming simulation platform"

Copied!
65
0
0

Kokoteksti

(1)

TEKNILLINEN KORKE AKOULU Au to maa tio tekniikan laboratorio

Thomas Maksimow

Automaattisen peltoviljelyn simulointialustan toteutus

Diplomityö, joka on jätetty opinnäytteenä tarkastettavaksi diplomi-insinöörin tutkintoa varten Espoossa 10.12.2007

Työn valvoja: Prof. Arto Vísala

Työn ohjaaja: DI Timo Oksanen

(2)

TEKNILLINEN KORKEAKOULU DIPLOMITYÖN TIIVISTELMÄ Automaatio-ja systeemitekniikan osasto

Tekijä Päiväys

Thomas Maksimow 10.12.2007

Sivumäärä 65

Työn nimi

Automaattisen peltoviljelyn simulointialustan toteutus

Professuuri Koodi

Automaatiotekniikka Aut-84

Työn valvoja Prof. Arto Vísala Työn ohjaaja DI Timo Oksanen

Peltoviljelyn tuotantokustannukset nousevat länsimaissa jatkuvasti. Lannoitteiden ja toijunta-aineiden käyttöä pitäisi optimoida tarkemmin myös päästöjen minimoimiseksi. Tulevaisuuden haasteena on peltoviljelyn automatisointi ja näihin ongelmien ratkaiseminen. Tässä diplomityössä on rakennettu automaattisen peltoviljelyn simulaattorin runko, jonka avulla automatisoinnissa tarvittavia tekniikoita voidaan testata. Simulaattorin runko on rakennettu ArcGIS- paikkatietojärjestelmän päälle käyttäen ohjelman .NET-rajapintaa ja C#- ja C++- kieliä. Simulaattorin simulaatiomallit on toteutettu Helsingin Yliopiston Agroteknologian laitoksella Simulink-ohjelmalla.

Simulaattorin toiminta on jaettu viiteen vaiheeseen: skenaarion luontiin, skenaarion peruslaskelmiin, esiprosessointiin, simulointiin ja tulosten visualisointiin.

Ensimmäisessä kahdessa vaiheessa luodaan paikkatietojärjestelmässä simulaation lähtötiedot. Esiprosessointi on tarpeellista, mikäli simulointi halutaan tehdä paikkatietojärjestelmän ulkopuolella. Simulointi tapahtuu tunnin aika-askelissa.

Jokaisella askeleella lasketaan mallien ulostulot jokaiselle peltolohkolle. Sen jälkeen lasketaan veden valuminen maan pinnalla ja päätetään operaatioiden suorittamisesta pelloilla. Simuloinnin tulokset tallennetaan tietokantaan, josta halutut tiedot voidaan hakea visualisoitaviksi paikkatietojärjestelmään.

Simulaattorin toimintaa on testattu yhdellä skenaariolla. Alueelle on generoitu tilastotietoon perustuvat lähtöaineistot ja kolmiulotteinen kartta. Simulointitulokset osoittavat simulaattorin perustoimintojen olevan kunnossa. Jatkotutkimuksissa mallit tulisi kalibroida vertaamalla tuloksia alueen todellisiin satomääriin.

Avainsanat

Peltoviljely, simulointi, Simulink, paikkatietojärjestelmä, ArcGIS

(3)

HELSINKI UNIVERSITY OF TECHNOLOGY ABSTRACT OF Department of Automation and Systems Technology MASTER’S THESIS

Author Date

Thomas Maksimow 10.12.2007

Pages 65 Title

The implementation of an automatic crop farming simulation platform

Professorship Code

Automation technology Aut-84

Supervisor Prof. Arto Visala Instructor

M.Sc. Timo Oksanen

The production costs of agriculture are constantly rising in western countries. In order to minimize emissions to the soil the use of pesticides and fertilizers should be optimized. In the future agricultural production needs to be automated to be able to respond to these challenges.

This master’s thesis introduces a simulation platform which can be used to test future agricultural technologies. The simulator was built on top of ArcGIS geographical information system (GIS) using its .NET interface and both C# and C++ languages.

The simulation models have been implemented with Simulink in the University of Helsinki’s Department of Agrotechnology.

The operation of the simulator is divided into five steps: creation of a scenario, basic calculations of the scenario, preprocessing, simulation and visualization of the results.

In the first two stages the GIS is used to create input data for the simulation. The third step, preprocessing, is needed only if the simulation is run outside the GIS. The simulation is run with one hour time steps. During each step the simulation models are run for every field segment. After this water runoff is calculated and decisions are made whether to perform operations on the fields or not. The results of the simulations are stored in a database. Finally the results can be visualized in the GIS.

The simulator has been tested on a fictional farm. The elevation map and soil data was generated with the GIS and is based on statistical information. The results indicate that the simulator framework is functional. However the simulation models need to be calibrated to Finland and actual yield statistics.

Keywords

Crop farming, simulation, Simulink, geographical information system, ArcGIS

(4)

Sisällysluettelo

Tiivistelmä _________________________________________________________________ 2 Abstract____________________________________________________________________ 3 Sisällysluettelo_______________________________________________________________ 4 1 Johdanto_______________________________________________________________ 6 2 Peltoviljelysimulaattorit__________________________________________________ 8 2.1 Simulaattorien rakenne______________________________________________ 8 2.1.1 Maaperämallit____________________________________________________8 2.1.2 Kasvimallit_____________________________________________________ 10 2.1.3 Säämallit______________________________________________________ 11 2.2 Simulaatiotekniikka________________________________________________ 12 2.2.1 Modulaarisuus ________________________________________________ 12 2.2.2 Olio-ohjelmointi_______________________________________________ 13 2.2.3 Simulaatio-ohjelmat____________________________________________ 13 2.2.4 Erilaiset yhdistelmät____________________________________________ 14 3 Paikkatietojärjestelmät__________________________________________________ 16 3.1 Järjestelmän hyödyt simuloimisessa___________________________________ 16 3.1.1 Tutkimusalueen sisäinen varianssi________________________________ 17 3.1.2 Tulosten visualisointi___________________________________________ 18 3.2 Simulaatiomallin ja paikkatietojärjestelmän yhdistäminen_______________ 18 3.2.1 Yhdistämistasot_________________________________________________ 20 3.2.2 Yhdistämisen edut_______________________________________________ 21 3.2.3 Ongelmat______________________________________________________ 21 3.3 Paikkatietojärjestelmiä_______________________________________________ 22 4 Käytetyt ohjelmat______________________________________________________ 23 4.1 Simulink__________________________________________________________ 23 4.1.1 Simulointitapoja_______________________________________________ 24 4.2 ArcGIS____________________________________________________________ 25 4.2.1 Arclnfo ________________________________________________________ 26 4.2.2 Laajennukset____________________________________________________28 4.2.3 Laajentaminen________________________________________________ 29 5 Toteutus______________________________________________________________ 33 5.1 Teknisen toteuttamisen päälinjat______________________________________ 33 5.1.1 ArcMapin laajentaminen________________________________________ 34

(5)

5.1.2 Simulaatiomallit_______________________________________________ 34 5.1.3 Tietokannat____________________________________________________ 36 5.2 Skenaariot_________________________________________________________ 37 5.2.1 Skenaarion luonti______________________________________________ 37 5.2.2 Skenaarion peruslaskelmat_______________________________________ 38 5.2.3 Esiprosessointi__________________________________________________ 39 5.2.4 Simulointi______________________________________________________40 5.2.5 Visualisointi ___________________________________________________ 40 5.3 Geoprosessointi työkalut______________________________________________ 41 5.3.1 Maan ominaisuuksien generointi__________________________________ 42 5.3.2 Peltojen solujen indeksointi______________________________________ 43 5.3.3 Tietojen siirto ulkoiseen tietokantaan ______________________________ 43 5.3.4 Simulaattorityökalu______________________________________________ 44 5.3.5 Tulosten siirto paikkatietojärjestelmään_____________________________44 5.3.6 Työkalutehdas__________________________________________________ 44 5.4 Simulink-mallit_____________________________________________________45 5.4.1 Säägeneraattori_________________________________________________ 45 5.4.2 Ympäristömalli_________________________________________________ 46 5.4.3 Valumismalli___________________________________________________ 49 5.5 Simulaattorit_______________________________________________________ 50 5.5.1 Paikkatietojärjestelmään integroitu simulaattori____________________ 50 5.5.2 Matlab-simulaattori_____________________________________________ 52 6 Pilotti ja tulokset______________________________________________________ 53 6.1 Simulaatio paikkatietojärjestelmässä__________________________________ 55 6.2 Simulaatio Matlabissa______________________________________________ 58 7 Yhteenveto ja johtopäätökset____________________________________________ 60

7.1 Kehitettävää________________________________________________________ 61 Lähteet ___________________________________________________________________ 63

(6)

1 Johdanto

Automaatio- ja tietokonetekniikan nopea kehitys on mahdollistanut tehtaiden automatisoinnin hyvin pitkälle. Monissa tuotantolaitoksissa ihmisiä tarvitaan vain valvomaan koneiden toimintaa. Länsimaissa kehitykseen on vaikuttanut ennen kaikkea työvoiman kallistumisen aiheuttama paine. Työvoimakustannusten nousu näkyy myös maatalouden tuotantokustannuksissa, mikä on aiheuttanut tarpeen automatisoida myös peltotyökoneita ja jopa koko maanviljelyn. Toistaiseksi maatalouden automaation kehitys on mahdollistanut lypsyrobotit ja navetan siivousrobotit, mutta navettojen ulkopuolella robotiikkaa on vain vähän. Monissa peltotyökoneissa on avustavaa automaatiotekniikkaa, mutta aidosti itsenäisiä peltotyökoneita ei vielä ole.

Pelloilla täsmäviljelytekniikat ovat antaneet mahdollisuuden useiden ominaisuuksien mittaamiseen pelloilta, mutta saatua tietoa on vaikea hyödyntää laajamittaisesti ja tehokkaasti. Mittauksista saatujen tiedon perusteella olisi mahdollista lannoittaa, kastella ja torjua tuholaisia sumuttamalla täsmälleen siellä, missä se on tarpeellista. Käytännössä tietoa pellon eri kohtien tilasta on kuitenkin ollut vaikea hyödyntää tarkasti.

Diplomityön tarkoituksena on ollut luoda simulointiympäristö, jossa peltoympäristön mallinnuksella voidaan tukea erilaisten tulevaisuuden peltoviljelytekniikoiden visiointia.

Työ luo pohjaa kolmivuotiselle tutkimusprojektille, ja siinä rakennetaan automaattisen peltoviljelyn simulaattorin runko. Projekti toteutetaan yhteistyössä Helsingin Yliopiston Agroteknologian laitoksen kanssa. Agroteknologian laitoksella toteutetaan ympäristön toimintaa kuvaavat simulointimallit. Tämän työn puitteissa perehdytään olemassa oleviin simulaattoreihin, joiden toteutuksista pyritään löytämään parhaat ominaisuudet. Niiden perusteella rakennetaan simulaattorin runko, jota on jatkossa tarkoitus hyödyntää mahdollisimman monipuolisesti erilaisten peltoviljelyn automatisointiin liittyvien tekniikoiden simuloimiseen.

Tässä esitelty simulaattori rakentuu kolmesta tasosta. Simulaattorin alimmalla tasolla on ympäristömalli, joka sisältää omat mallinsa maaperän, sään, auringon, kasvien kasvun, tuholaisten ja rikkaruohojen kasvun mallintamiseen. Simulaattorissa pellot jaetaan

(7)

pieniin osiin, joissa mittauksia tehdään. Näiden osien vuorovaikutuksia mallinnetaan simulaattorin keskimmäisellä tasolla. Tällä tasolla mallinnetaan myös erilaisten toimilaitteiden toimintaa. Ylimmän tason tarkoitus on mallintaa maanviljelijän päätöksentekoprosesseja ja työkoneiden liikkumisen ja toimien vaikutusta ympäristöön.

Ylimmän tason toteutus on tämän diplomityön puitteissa toteutettu kevyesti.

Simulaattori on rakennettu paikkatietojärjestelmän päälle. Sillä luodaan simulaatioiden aineistot ja visualisoidaan tuloksia. Varsinaisen simulaattorin toteutuksessa on kokeiltu kahta eri lähestymistapaa. Toisessa, pidemmälle toteutetussa, versiossa simulaattori on integroitu paikkatietojärjestelmän (ESRI, Arclnfo, versio 9.2) sisälle ja toisessa versiossa on käytetty Simulinkkiä (Mathworks, versio R2007a) erillään paikkatietojärjestelmästä. Kahta toteutustapaa on käytetty pääasiassa nopeusvertailua ja järjestelmän laajennettavuuden vertailua varten.

Ympäristömallit on toteutettu käyttämällä Simulinkkiä ja ne käännetty omiksi ohjelmakirjastoiksi C++-kielellä. Mallit on yhdistetty paikkatietojärjestelmään sen .NET- rajapinnan yli C#-kielellä. Simulaattorin tulokset tallennetaan SQL Server Express- tietokantaan (Microsoft, versio 2005), josta tietoa on helppo hakea ja muokata.

Simulaattorin toimintaa on testattu rakenteellisen toimivuuden takaamiseksi pienellä fiktiivisellä maatilalla, johon kuuluu viisi erillistä peltoa. Tilalla suurin sato saadaan peltojen aurinkoisilta etelärinteiltä ja pienin varjoiselta pellolta, joka on metsän keskellä.

Simulaattorin tulokset ovat siis oikean suuntaisia, mutta tarkempaa analyysiä tuloksien oikeellisuudesta ei ole tehty, eikä ole voitu tehdä.

(8)

2 PeltoviljelysimulaattONt

Peltoviljelysimulointia on tutkittu jo pitkään. Ensimmäiset viljelykasvien kasvumallit tehtiin 1970-luvulla tutkimuskäyttöön, ja 1980-luvulla tehtiin ensimmäiset mallit, joiden avulla voitiin hallita ja suunnitella viljelyä [1], [2]. Aluksi mallit olivat erikoistuneita tietyn osaprosessin mallintamiseen, eivätkä niinkään kokonaisia simulaattoreita. Nykyään on olemassa muutamia kokonaisvaltaisia simulaattoreita, joita voidaan käyttää niin sadon ennustamiseen kuin lannoitteenkäytön optimointiinkin. Tämän diplomityön puitteissa tutkimuksen pääpaino on simulaattorien rakenteellisen toiminnan selvittämisessä.

2.1 Simulaattorien rakenne

Yhteistä uusimmille simulaattoreille on, että ne rakentuvat suunnilleen samanlaisista alamalleista. Suurin osa simulaattoreista sisältää ainakin jossain määrin itsenäisinä osina maaperä-, kasvi-, sää- ja päätöksentekomallin [2][3][4][5][6][7][8][9]. Kehittyneemmissä järjestelmissä on usein mukana myös omat mallinsa tuholaisille, taudeille ja mikroilmastolle [2][3][5].

Peltosimulaatiomallit ovat pistemäisiä. Pistemäisyys tarkoittaa sitä, että mallit laskevat ulostulot vasteena tietyille sisäänmenoille, jotka ovat mittauksia tai estimaatteja tietystä kohdasta tutkimusaluetta. Malleissa voi lisäksi olla muuttujana alueen pinta-ala, minkä avulla voidaan laskea alueelle yleistetyt ulostulot. Malleilla voi myös olla parametreja, jotka asetetaan simulaation alussa. Parametrit voivat myös muuttua simulaation aikana, mutta niitä ei tarvitse asettaa jokaisella aika-askeleella kuten sisääntuloja. Malleilla on lisäksi sisäinen tila, joka hallitsee mallin muuttujien arvoja askeleelta toiselle.

Alla on esitetty tärkeimmät osamallit ja muutamia esimerkkejä kustakin tyhmästä.

2.1.1 Maaperämallit

Pääsääntöisesti maaperämallit on rakennettu seuraamaan viljelyn kannalta olennaisia ominaisuuksia kuten kosteutta, ravinteita ja maanlämpöä [2][3][4][5][7][9]. Usein

(9)

malleissa on kerrosmainen rakenne, jossa seurattavat ominaisuudet siirtyvät kerroksista toiseen [2][4][5]. Malleille on yhteistä myös se, että ne mallintavat tasaista aluetta, jossa maa on homogeenistä. Heterogeenisyys vaatisi peltojen jakamista osiin eri maalajien perusteella, ja rinteiden mallintaminen vaatisi jonkinlaista kolmiulotteista mallintamista.

Yhdysvaltalainen filosofian tohtori San Soucie on tutkinut väitöskirjassaan maan kuivumista FEM-laskennalla (engl. Finite Element Method), jossa maa jaetaan paloihin, jotka vaikuttavat toisiinsa. Yhden maapalan kuivuminen riippuu kaikkien naapuripalojen kosteudesta yllä, alla ja sivuilla. Mallin ongelmana on kuitenkin pitkä laskenta-aika.

Kuvassa 2-1 on esitetty FEM-laskennalla mallinnettu maan kuivuminen 50 simulaatiopäivän jälkeen. [10] Myös kiinalaiset tutkijat ovat hyödyntäneet FEM-laskentaa maan kuivumisen tutkimisessa. He käyttivät lisäksi geneettisiä algoritmeja veden valumisyhtälöiden reunaehtojen ratkaisemiseen. [11]

Hydraulic Head After 50 Simulation Days

-598 ,-530 -461 ,-393 1-323 I —256 1-187 1-119 1-50

Kuva 2-1: FEM-laskennalla simuloitu maaperän kuivuminen. [10]

Maaperämallien toimintaan kuuluu olennaisesti myös lannoitustoimenpiteiden simulointi. Lannoitteiden vaikutusten ja kulutuksen mittaaminen on maanviljelijän päätöksentekoa tukevien simulaattoreiden tärkeä ominaisuus. Vesistöjen rehevöityminen liiallisen lannoituksen takia on myös tärkeää ottaa huomioon [3].

(10)

2.1.2 Kasvimallit

Viljelykasvimallit simuloivat kasvien biologisia prosesseja kuten yhteyttämistä, kasvuvaiheita ja lopulta satoa. Kuten maaperämallit, myös kasvimallit vaativat paljon tietoa ympäristöstään toimiakseen tarkasti. Pääsääntöisesti kasvimallit ovat erikoistuneita jonkin tietyn kasvin kasvun laskemiseen, mutta on olemassa myös yleisempiä malleja.

Erikoistuneita kasvimalleja on useille eri kasveille. Muun muassa CERES-malliperhe sisältää mallit vehnälle, ohralle, maissille, soijalle, riisille, tomaatille ja perunalle [5].

CROPGRO-, STICS- ja GECROS-mallit ovat sen sijaan yleisiä kasvimalleja, joiden parametreja muuttamalla ne saadaan simuloimaan eri kasvien kasvua [1][5][12].

GECROS-malli on toteutettu FSTdlä (engl. Fortran Simulation Translator) ja sen toteuttamisessa on erityisesti pyritty pitämään malli yleispätevänä ja adaptiivisena. Malli on rakennettu yksityiskohtaisesti hyödyntäen kasvien oikeita biologisia prosesseja. Tällöin sen toiminta ei riipu rajallisesta määrästä kokeellisia tuloksia, ja mittausvirheiden aiheuttamat vääristymät on voitu minimoida. Kuvassa 2-2 on esitetty mallin rakenne. Siinä vasemmalla oleva pyöreä osa kuvaa mallin parametreja, jotka ohjaavat kasvin biologisten prosessien toimintaa, ja oikealla on itse mallin toiminta. Ylhäällä ja alhaalla ovat mallin sisäänmenot: ilmankosteus, tuulen nopeus, päivän pituus, lämpötila, auringon säteilynvoimakkuus, hiilidioksidin määrä sekä maaperän kosteus ja typpipitoisuus.

Mallissa on lisäksi huomioitu С,- ja C4-kasvien erot muuttamalla mallin parametreja. [1]

С,- ja C4-kasveilla tarkoitetaan kasvien erilaista yhteyttämistapaa.

(11)

Actual x transpiration /

Dovolop 1.--- ment stage ; N assirrl'ates

Develop­

ment rate

C assimilates Respiration

I Parti-

Г"

Seeds L_

Stems :

Expansion ¡ see nee

strengthSmk Remobilization

■ Scne-

Soii water

Solar radiation

Soil N

Kuva 2-2: GECROS-mallin rakenne. Kaaviossa on käytetty Forresterin symboleja. [1]

CROPGRO on rakennettu aikaisempien kasvimallien pohjalta. Malleista on identifioitu yhtäläisyydet ja niiden perusteella on voitu muodostaa yleinen malli, jonka parametreja säätämällä voidaan simuloida eri kasveja. Nämä parametrit on saatu kokeellisin menetelmin [5], minkä takia malli ei ole yhtä yleispätevä kuin esimerkiksi GECROS, mutta saattaa tietyissä oloissa olla jopa tarkempi.

2.1.3 Säämallit

Kaikkiin peltosimulaattoreihin kuuluu jonkinlainen säägeneraattori, jonka tehtävänä on laskea ainakin päivittäinen sademäärä, auringon säteilyn voimakkuus ja lämpötila.

Joissakin malleissa on lisäksi ilmankosteus, ilmanpaine, tuulen nopeus ja päivittäiset minimi- ja maksimilämpötilat [2][5]. Säägeneraattorit ovat melko yksinkertaisia ohjelmia, jotka alueellisen tilastotiedon perusteella luovat uuden sään jokaiselle päivälle.

ClimGen on CropSyst-simulaattorin säämalli. Se generoi tilastotiedon pohjalta uuden sään jokaiselle päivälle. Yllä mainittujen ominaisuuksien lisäksi se laskee ilmanpaineen ja ilmankosteuden. ClimGen on toteutettu modulaarisesti, ja se voidaan liittää helposti muihin simulaattoreihin. [2]

(12)

2.2 Simulaatiotekniikka

Suurin osa simulaattoreista ja malleista koostuu diskreeteistä malleista, jotka on ohjelmoitu joko Fortranilla tai C/C++:lla [ 1 ][2][5][8][12]. Tällöin mallit ovat sidottuja tiettyyn aika-askeleen pituuteen eikä niitä voida helposti muokata käyttämään eri askelta.

Kehittyneimmät erityisesti simulointiin tehdyt ohjelmat mahdollistavat mallien rakentamisen jatkuva-aikaisilla malleilla. Myös mallien keskinäinen rakenne on simulaattorien kehityksen kannalta olennaista.

2.2.1 Modulaarisuus

DSSAT (Decision Support System for Agrotechnology Transfer) on monipuolinen simulaattori, johon voi liittää useita erilaisia kasvimalleja. Järjestelmään kuuluu useita erilaisia maaperämalleja erilaisille maalajeille, kasvi-maa-ilma-moduuli, hallintomoduuli, säämalli ja tuholaismalli. Kuvasssa 2-3 on esitetty DSSATin ohjelmallinen rakenne.

DSSATin pääohjelmaan on liitetty maalohkoja hallinnoiva moduuli. Siihen liittyy erilaiset simulaatiomallit. DSSAT on käytössä ympäri maailmaa tutkimuskäytössä ja maanviljelijöiden apuna maatiloilla. [5]

Primary M adules

M «In

Land Unit

*••1 OtMAU*

S eu ?е.т> fre.'etu ie

J o.l h ilr: [«л S C iibor

Тир1<1» Crop W odel«

'«il I Dut««« Oit ig«

PIsot SM « Pisut • Almeepher«

Kuva 2-3: DSSAT-ohjelman rakenne [5]

(13)

DSSAT järjestelmästä on tehty modulaarinen, jotta malleja voi helposti korvata uudemmilla versioilla tai luoda kokonaan uusia malleja. Uusien mallien täytyy kuitenkin toteuttaa sama rajapinta kuin edellisten mallien. [5] Modulaarisuus mahdollistaa myös ohjelman osien muuttamisen ilman, että sillä on vaikutusta muun ohjelman toimintaan.

2.2.2 Olio-ohjelmointi

APSIM-kasvimalleja kehittäneet tutkijat ovat käyttäneet mallien laatimiseen Fortran- ohjelmointikieltä. APSIM kehitettiin olemassa olevien mallien pohjalta ja myös niissä oli käytetty Fortrania. Vaikka Fortranilla kehitetyt mallit olivatkin modulaarisia ja testattuja, tutkijat kuitenkin havaitsivat koodin ylläpidettävyyden kärsivän merkittävästi globaaleista muuttujista ja tilan sekä suorituksen erottamisesta. He suosittelevatkin siirtymistä olio- ohjelmointiin, jossa jokaista osamallia kuvaa yksi luokka, jolla on omat muuttujansa ja tilat sekä suorituksen toteutus. [8]

CropSyst on monipuolinen peltosimulaattori, jossa on otettu huomioon kasvavat tarpeet.

Ohjelman kehittäminen alkoi 1990-luvun alussa, ja se tehtiin olio-ohjelmoinnilla, minkä vuoksi sen laajentaminen ja muokkaaminen on helpompaa kuin aikaisempien järjestelmien. Ohjelma sisältää maaperä-, kasvi- ja säämallin lisäksi myös yhteyden ArcGIS-paikkatietojärjestelmään, jolla voidaan käsitellä tuloksia kartalla ja jakaa tarkasteltavat peltoalueet pienempiin osiin esimerkiksi maaperän ominaisuuksien perusteella. Vaikka CropSyst onkin ohjelmoitu Chh-kielellä, sitä ei ole tehty yhtä modulaariseksi kuin DSSAT, vaikka sitä ei ole toteutettukaan olio-ohjelmoinnilla.

CropSyst ei tarjoa yhtä monipuolista liittymää ulkoisille komponenteille, mutta sisäisesti sitä on kuitenkin helpompi muokata. [2]

2.2.3 Simulaatio-ohjelmat

Simulinkillä on mahdollista simuloida aikajatkuvia-, diskreettejä- ja hybridijärjestelmiä.

Simulinkkiä on käytetty useilla eri aloilla monenlaisten mallien rakentamiseen ja simulointiin. GUESS (Greenhouse Use of Energy Seedling Simulator) on simulaattori,

(14)

jonka avulla voidaan hallita kasvihuoneen energiankäyttöä kuusten taimien kasvatuksessa.

GUESSissä käytetyt mallit ovat aikajatkuvia [6]. Simulinkkiä on käytetty myös erilaisten maaperämallien, ruohonkasvu- ja puunviljelysimulaatiomallien toteuttamiseen [7][9].

Simulinkin vahvuus on, että sillä eri ohjelman osat voidaan visualisoida omina lohkoinaan ja mallin rakenne on helppo hahmottaa.

2.2.4 Erilaiset yhdistelmät

SALSA (Systems AnaLysis for Sustainable Agricultural production) on maanviljelijän päätöksenteon tueksi luotu maataloussimulaattori, joka laskee maanviljelyn aiheuttamat päästöt vesistöihin ja ilmaan. SALSAn kasvi- ja maaperämallit on toteutettu Simulinkillä ja ylemmän tason toiminta C++-kielellä. Ylemmillä tasoilla on muun muassa maanviljelijän päätöksentekologiikka ja resurssien hallintalogiikka. Simulinkin käyttö on mahdollistanut modulaarisen rakenteen, jota on helppo muokata eri kasveille kunhan rajapinta pääohjelman ja mallien välillä pysyy samana. Lisäksi Simulinkin käyttöä puoltaa sen kyky visualisoida mallit hierarkkisesti. Tällöin alempien tasojen monimutkaiset operaatiot voidaan upottaa mallin eri lohkojen sisälle. Kuvassa 2-4 on esitetty SALSAn simulaatiomallien päätaso, jossa eri alamallit näkyvät vain laatikkoina. Ylemmän tason kielenä C++ helpottaa ohjelmien rakentamista verrattuna esimerkiksi Fortraniin edellisen luokkarakenteen ansiosta. [3]

(15)

j Production of input materials Farmer activities

Depositor!

Farmer activities

Pest and Weed Control -1

Soil model

Air Emissions Machine Operations

Mineral Fertlser

Organic Fertlser

Precedng Crop Effect

Nutrients to Plant

Water Emissions

Storage Changes

Plant model

Preceding Crop Effect

Harvesting

I

Dried Product Dried Feed —

Water bodies

Farmer activities

Animal model

Kuva 2-4: Simulink-lohkokaavio SALSAn Simulink-mallin ylätasosta [3]

(16)

3 Paikkatietojärjestelmät

Paikkatietojärjestelmä (GIS, engl. Geographic Information System) on ohjelmisto, jolla voidaan luoda ja hallita paikkatietoa. Paikkatiedolla tarkoitetaan aineistoja, jotka on sidottu johonkin tiettyyn paikkaan koordinaatein. Paikkatietoaineisto voi olla pisteitä, viivoja, monikulmioita, ruudukolta eli rastereita tai edellisten yhdistelmiä. Erilaisia aineistomuotoja tarvitaan käyttötarkoituksesta riippuen esimerkiksi viivoja teiden, ja rastereita digitaalisten satelliittikuvien piirtämiseen. Paikkatietojärjestelmien päätarkoitus on helpottaa paikkaan sidotun tiedon visualisointia ja käsittelyä. Yleisin käyttötarkoitus on erilaisten karttojen muodostaminen ja alueen analysointi. Kartat rakentuvat erilaisista kerroksista paikkatietoaineistoja kuten kuvassa 3-1 on esitetty.

Roads Land use Boundaries Hydrography Elevation Image base

Kuva 3-1: Kartat koostuvat useista erilaisista kerroksista, jotka voivat sisältää kaikkia eri paikkatietoaineistomuotoja [ 13]

3.1 Järjestelmän hyödyt simuloimisessa

Prosessipohjaiset simulaatiomallit ovat pistemäisiä, koska ne laskevat tuloksia sisääntuloille, jotka ovat mittauksia tai arvioita tietystä kohdasta. Simulaation tulokset

(17)

kerrotaan sen jälkeen alueen pinta-alalla, jotta tulokset saadaan vastaamaan koko tutkimusaluetta. Pelloilla kuitenkin esiintyy vaihtelua, mitä mallit eivät pysty ottamaan huomioon. Vaihtelun huomioon ottaminen vaatii mallien suorittamista pellon eri kohdista mitatuilla arvoilla.

3.1.1 Tutkimusalueen sisäinen varianssi

European Journal of Agronomy lehdessä julkaistussa artikkelissa tutkijat arvioivat kolmea eri tapaa, joilla voidaan selittää sadon varianssia peltoalueiden sisällä. Tutkijat käyttivät tutkimuksessaan CERES-maissi- ja CROPGRO-soijamalleja eri pelloille USAn keskilännessä. [14]

Tutkimuksen ensimmäisessä skenaariossa tutkittava alue jaettiin 0,2 hehtaarin ruutuihin, joista kaikista tehtiin tarvittavat mittaukset kasvimalleille. Simuloitaessa huomattiin, että tarkkuus suhteessa todelliseen satoon kasvoi, mutta tälläkään tavalla ei pystytty selittämään kaikkia eroja simuloinnin tuloksen ja todellisen sadon kanssa. Erityisesti kohdissa, joissa sato oli vähäistä, simulaattori yliestimoi sadon määrää jatkuvasti. [14]

Toisessa skenaariossa tarkkuutta pyrittiin parantamaan jakamalla tutkittava alue erikokoisiin ja muotoisiin lohkoihin satelliittikuvista saatujen kasvunopeustietojen avulla.

Tämä lisäsi tarkkuutta, mutta ei vieläkään selittänyt täysin miksi eroja syntyy. [14]

Kolmannessa skenaariossa huomioon otettiin veden ja ravinteiden valuminen maan alla ja päällä. Tämän teki mahdolliseksi tarkka kolmiulotteinen kartta alueesta. Tutkijat käyttivät mallinnukseen SALUS-TERRAE-mallia, joka laskee veden valumisen maan pinnalla ja sen alla. Vaikka mallilla ei kyettykään laskea sadon määrää, se pystyi riittävällä tarkkuudella laskemaan vesimäärän maaperässä, minkä oletettiin aiheuttavan suuren osan vaihteluista tutkimusalueella. [14]

Tutkimuksen perusteella kirjoittajat suosittelevat prosessipohjaisia kasvimalleja käytettäväksi siten, että simulaattoreissa malleja ei sovelleta koko tutkimusalueelle

(18)

suoraan. Sen sijaan tutkimusalue on hyvä lohkoa pienemmäksi ja ottaa huomioon lohkojen välinen vesi- ja ravinnetasapaino. [14]

Paikkatietojärjestelmissä ensimmäistä skenaariota vastaa alueen rasteroiminen ja toista alueen jakaminen monikulmioihin eli polygoneihin. Periaatteessa molemmilla tavoilla pitäisi päästä yhtä suureen tarkkuuteen riippuen käytetystä ruudukko- tai monikulmiokoosta. Paikkatietojärjestelmissä on myös mahdollista muodostaa kolmiulotteisia karttoja tutkimusalueesta. Ne voidaan toteuttaa esimerkiksi rasterilla eli ruudukolla, jossa solujen arvot kertovat kohdat korkeuden.

3.1.2 Tulosten visualisointi

Paikkatietojärjestelmien vahvuutena on niiden kyky visualisoida tietoa. CropSyst- peltosimulaattorissa on ArcCS-osa, jolla simulaattori voidaan yhdistää ArcGIS- paikkatietojärjestelmään. Siinä pellot voidaan jakaa polygoneiksi ja ajaa simulaatiot jokaiselle polygonille. Simulaation tulokset voidaan sitten visualisoida oikeille paikoillensa

[

2

].

CropSystin Watershed-osalla veden valumista voidaan mallintaa kolmiulotteisella kartalla.

Watershed jakaa kartan ruudukkoon, jonka solujen välillä valuminen tapahtuu.

Watershedin rasteroima kartta on tarkemmin jaettu kuin ArcCSm, mikä mahdollistaa myös täsmäviljelytekniikoiden kehittämisen. [2]

3.2 Simulaatiomallin ja paikkatietojärjestelmän yhdistäminen

Yleensä paikkatietojärjestelmien ja simulointimallien yhdistämisellä pyritään selittämään, miksi tutkimusalueen eri kohdissa saadaan erilaisia tuloksia. Agronomy Journal lehdessä julkaistussa artikkelissa esiteltiin erilaisia GIS-ohjelmiin liitettyjä maanviljelyyn liittyviä malleja. Ensimmäiset yhdistetyt simulaattorit on tehty 1980-luvun puolivälissä, minkä jälkeen sekä simulaatiomallit että GIS-ohjelmat ovat kehittyneet merkittävästi. Taulukossa 3-1 on listattu simulaatiomalleja, joita on yhdistetty paikkatietojärjestelmään. [15]

(19)

Tool or model GIS system Focus Interface type

AGNPS VirGIS Cropland management and pollution L

GRAGRO Arclnfo Ley production potential L

PLANTGRO Arclnfo Forest production planning L

GLEAMS Arclnfo Hydrology, groundwater L

PESTRAS Arclnfo Pesticide fate L

USLE Regional soil erosion L

CMLS Arclnfo Hydrology L

CMLS Arclnfo Solute transport, input data resolution effect L

GOA Arclnfo Land suitability evaluation L

ANSWERS Erosion L

(R)USLE IDRISI Erosion and deposition L

USLE MAP Regional sediment load L

MODFLOW Arclnfo Groundwater flow L

ANSWERS GRASS Watershed erosion and deposition L

SPUR ERDAS Watershed hydrology L

AGNPS Arc/Info Hydrology, pollution L

NLEAP GRASS N leaching L

WOFOST Arclnfo Crop production potential, land use planning L

LINTUL Agroecological zoning L

CROPSYST ArcView Cropping systems and rotations L,C

CMLS Arclnfo Pesticide fate L,C

FLOWCONC Arclnfo Pesticide and herbicide fate L,C

WEPP ArcView Watershed erosion C

AEGISWIN (DSSAT) ArcView Precision farming c

GIDM (GLEAMS) Arclnfo Dairy waste management, water quality c

1 AEGIS (DSSAT) Arclnfo Crop management modeling c

AEGIS+ (DSSAT) Arclnfo Crop management modeling c

AGNPS Arclnfo Water quality, pollution c

CMLS Arclnfo Herbicide fate c

SWAT ArcView Watershed hydrology, water quality c

AGNPS GRASS Watershed erosion, nutrient movement c

GISMO (EPIC) GRASS Erosion; climate variability, sensitivity c

AGNPS ERDAS Hydrology, pollution c

AGNPS GRASS Hydrology, pollution c

WEPP GRASS Watershed erosion c

SWAT GRASS Watershed hydrology, water quality c

USTED (CLUE) IDRISI Land use planning c

SMoRMOD GRASS Rainfall-runoff c

DSSAT IDRISI Crop management modeling c

MICRO-FEM ILWIS Hydrology, groundwater flow c

TOPMODEL ILWIS Hydrology c

EGIS (MODFLOW) swGIS Hydrology, pollution

c,l

RUSLE MAPS Erosion 1

GINIS Terrasoft Nitrate leaching 1

RAISON Environmental modeling, fish richness 1

(20)

HYDRUS#

TOPMODEL

Arclnfo SPANS

Water flow and solute transport

Hydrology I

Taulukko 3-1: Paikkatietojärjestelmiin yhdistettyjä simulaatiomalleja ja käytetyt paikkatietojärjestelmät. L on linkitetty, C on yhdistetty, I on integroitu. Mukaillen lähteestä [15].

3.2.1 Yhdistämistasot

Artikkelissa esitettiin kolme eri tasoa simuloinnin ja paikkatietojärjestelmän yhdistämiselle. Tasot on jaettu sen mukaan, kuinka tiiviisti osat on yhdistetty toisiinsa.

Kuvassa 3-2 on selvennetty yhdistämisen eri tasoja.

Linkittämisellä osat on yhdistetty kevyesti toisiinsa ja molemmilla osilla on omat käyttöliittymänsä. Linkittäminen on eri yhdistämistasoista yksinkertaisin toteuttaa, mutta samalla rajoittaa molempien ohjelmien käyttöä. Linkittäminen on usein toteutettu erilaisten tekstitiedostojen avulla. [15]

Yhdistäminen tarjoaa yhteisen rajapinnan käyttäjälle, mutta ohjelmat keskustelevat edelleen tiedostojen välityksellä keskenään. Yhdistäminen vaatii monipuolisempaa ohjelmointia ja tiedonkäsittelyä kuin linkittäminen. [15]

Integroimisella tarkoitetaan kaikkein tiukinta yhdistämistä. Siinä toinen ohjelmista upotetaan kokonaan toisen sisälle. Tämä vaatii ohjelmoijalta eniten osaamista. [15]

(21)

Model

user interface user interface

Model

user interface

user

Model

user interface

user

Kuva 3-2: Paikkatietojärjestelmän ja simulaatiomallien yhdistämisen tasot. A on linkittäminen, В on yhdistäminen ja C on integrointi. [15]

3.2.2 Yhdistämisen edut

Yhdistämällä malli paikkatietojärjestelmään voidaan myös huomioida mallinnettavan alueen pinnan muodot, jolloin esimerkiksi veden valuminen maan päällä on mahdollista ottaa huomioon. Jyrkissä rinteissä vettä ehtii imeytyä maaperään vähemmän kuin alempana, jonne vesi virtaa. Pinnanmuotojen ja leveysasteen huomioiminen mahdollistaa myös varjojen vaikutuksen laskemisen.

3.2.3 Ongelmat

Tutkimuksessa huomautettiin myös, että mallien ja paikkatietojärjestelmän yhdistäminen saattaa tuoda tuloksiin vaikeasti selitettäviä virheitä. Spatiaalisen datan digitointi-, interpolointi- ja mittausvirheet lisättynä mallien sisäisiin virheisiin johtavat niiden kasautumiseen. Tämän vuoksi tutkijat suositelevat täsmällistä virheiden analysointia. [15]

(22)

3.3 Paikkatietojärjestelmiä

Paikkatietojärjestelmiä on olemassa useita erilaisia. Osa niistä on tehty erityisesti jollekin tietylle toimialalle kuten esimerkiksi kaupunkisuunnitteluun tai satelliittikuvien käsittelyyn. Yleisemmät paikkatietojärjestelmät mahdollistavat lisäosien hankkimisen, millä niiden toimintaa voidaan laajentaa. Nykyään myös 3D-suunnitteluohjelmiin (CAD, Computer Aided Design) on mahdollista liittää paikkatietoa.

Paikkatietojärjestelmiä on sekä kaupallisia että avoimen lähdekoodin järjestelmiä. ArcGIS ja Maplnfo edustavat paikkatietojärjestelmien kehittyneintä kärkeä. ArcGIS on kuitenkin järjestelmistä laajempi ja on helpommin laajennettavissa. Vastaavasti GRASS on pisimmälle kehitetty avoimen lähdekoodin GIS-ohjelma. Se ei kuitenkaan ole läheskään yhtä monipuolinen kuin kaupalliset ohjelmat. Paikkatietojärjestelmiin on saatavilla myös avoimen lähdekoodin työkaluja kuten NetTopologySuite. Myös Matlabiin on mahdollista hankkia Mapping Toolbox-laajennus, jolla paikkatietoa voi käsitellä Matlabissa.

(23)

4 Käytetyt ohjelmat

Tässä luvussa esitellään ohjelmat, joita käytettiin tässä diplomityössä simulaattorin rungon toteuttamiseen. Alla on esitetty ohjelmien tärkeimpiä ominaisuuksia ja syitä, miksi ohjelmat valittiin toteutukseen ja mitkä ovat ne tavat, joilla ohjelmia voidaan hyödyntää peltoviljelysimuloinnissa. Toteutuksessa on hyödynnetty Simulink-simulointiohjelmistoa (Mathworks, versio 2007a) ja ArcGIS-paikkatietojärjestelmää (ESRI, versio 9.2 sp. 3).

4.1 S/mu/ink

Simulink on ohjelmisto dynaamisten lineaaristen ja epälineaaristen mallien luomiseen, simuloimiseen ja analysoimiseen. Se on osa Matlab-matematiikkaohjelmistoa. Simulink tukee niin aikajatkuvia kuin diskreettejä malleja sekä hybridimalleja. Lisäksi mallit voivat sisältää useita eri ajankohtana päivittyviä signaaleja ja lohkoja. Simulaatiomallien luominen Simulinkillä on yksinkertaista ja helppoa. Myös mallien testaaminen ja tuloksien visualisointi on helppoa. Testaaminen onnistuu myös osamalli kerrallaan, joten jokaisen eri osan toiminnasta on helpompi varmistua.

Simulinkillä luodut mallit kuvaavat graafisesti mallien taustalla olevien dynaamisten prosessien matemaattiset yhtälöt. Malleja suoritettaessa jokaisella aika-askeleella mallin lohkojen sisäinen tila lasketaan uudelleen. Laskemiseen voidaan käyttää useita erilaisia ratkaisimia eli integrointimenetelmiä. Osa ratkaisimista pystyy lisäksi muuttamaan ratkaisutiheyttä järjestelmän muutosnopeuden perusteella. Myös diskreeteille ja hybridijärjestelmille on omia ratkaisimia.

Simulink on valittu tämän diplomityön simulointimallien kehitystyökaluksi monipuolisuuden, laajan käyttäjämäärän ja hyvän tuen takia. Myös kirjallisuudesta löytyneiden Simulinkkiä hyödyntäneiden kasvi- ja maaperäsimulaattorien määrä vakuutti ohjelman olevan oikea työkalu tämän tutkimuksen simulaatiomallien toteuttamiseen.

Lisäksi tutkimusryhmän oman käyttökokemuksen perusteella Simulink oli helposti lähestyttävä mallinnusohjelma.

(24)

4.1.1 Simulomtitapoja

Mallien suorittaminen on mahdollista monella eri tavalla. Malleja voi suorittaa suoraan Simulinkin graafisessa käyttöliittymässä ja Matlabin komentoriviltä. Lisäksi Simulink- malleja voi kääntää C ja C++ -koodiksi. Simulinkissä simulointi on sisäänrakennettu ominaisuus, joten se on simulointitavoista toiminnoiltaan monipuolisin.

Matlabin komentoriviltä on mahdollista ajaa simulaatioita. Niitä voi suorittaa joko aika- askel kerrallaan tai ajaa koko simulaatio kerralla läpi. Simuloitaessa aika-askel kerrallaan on myös mahdollista syöttää edellisen askeleen tilat takaisin simulaatiomalliin.

Real Time Workshop-laajennus Simulinkkiin mahdollistaa mallien kääntämisen C tai C++-koodiksi. Käännettäessä muodostuvaan ohjelmakoodiin tulee omat tietorakenteensa mallin sisääntuloille, ulostuloille, tiloille, parametreille ja ratkaisimen tiloille. Ennen kääntämistä täytyy mallin rakentamisen lisäksi valita kääntäjä ja kohde. Kohteella tarkoitetaan sitä alustaa, jolla Simulink-mallista tehtyä koodia halutaan ajaa. Windows- alustalla vaihtoehtoina on Generic Real-Time- (CRT) ja Embedded Real-Time-kohteet (ERT). ERT vaatii lisäksi Embedded Real Time laajennuksen. [15]

CRT luo ohjelmakoodin lisäksi kohteesta riippuen valmiin ohjelman tai projektin, jonka avulla malli voidaan suorittaa. Perusasetuksilla ohjelmakoodia kirjoitetaan vähintään yhdeksään tiedostoon, jotka on esitelty taulukossa 4-1. Varsinainen malli sijaitsee yhdessä tiedostossa ja muut ovat mallin toimintaa tukevia tiedostoja. [15]

(25)

Tiedostot: Kuvaus:

(mallin nimi on Model)

Model.h Nimitykset tietorakenteille, muuttujille ja funktioille Model_private.h Mallin sisäisiä määrityksiä

Model_types.h Määritykset tietorakenteille, muuttujille ja funktioille Model.cpp Varsinainen ohjelmakoodi

Model_data.cpp Muuttujien arvot

rt_model.h Real Time Workshopin omia sisällytyksi rt_nonfinite.h Määritykset ohjelman ääriarvoille

rt_nonfinite.cpp Ohjelman ääriarvojen toteutus

rtwtypes.h Real Time Workshopin omia määrittelyitä Taulukko 4-1: G RT: n luomat tiedostot ja niiden sisällön kuvaukset [15]

ERT-laajennus toimii lähes samalla tavalla kuin G RT, mutta on optimoidumpi. ERT luo muuten samat tiedostot kuin G RT (taulukko 4-1), mutta rt_model.h:n sijaan se luo tiedoston, joka sisältää valmiin rungon mallia pyörittävälle pääohjelmalle. Lisäksi aika- askeleen ottaminen on helpompaa, koska ERT yhdistää GRT:n kaksi etenemisfunktiota yhdeksi. [15]

4.2 ArcGIS

Yhdysvaltalainen ESRI on maailman suurin paikkatietojärjestelmien toimittaja. ArcGIS- tuoteperhe sisältää suuren valikoiman erilaisia työkaluja paikkatiedon hallintaan, luomiseen ja muokkaamiseen. Tuoteperheeseen kuuluu työpöytäoh j el m ia, palvelintuotteita ja ohjelmia sulautettuihin järjestelmiin. Työpöytäohjelmistoja on neljä eri laajuista pakettia: ArcReader, ArcView, ArcEditor ja Arclnfo. Arc View tarjoaa perustyökalut tiedon luomiseen ja muokkaamiseen, ArcEditor laajentaa edellisen ominaisuuksia mahdollistaen entistä monipuolisemman tiedon muokkaamisen. Arclnfo on ESRIn laajin ja monipuolisin työpöytäoh j el m ista. Se tarjoaa myös mahdollisuuden luoda uusia paikkatietokantoja palvelimille sekä paikalliseen tietokoneeseen, jossa on Microsoftin SQL Server Express. ArcViewissä ja ArcEditorissa ei voida luoda kuin Access-

(26)

tai tiedostopohjaisia tietokantoja. ArcReader-ohjelmalla voidaan katsella ja selata muilla tuoteryhmän tuotteilla luotuja karttoja.

ArcGIS-tuoteperheen tuotteita voidaan myös laajentaa useilla lisäosilla, jotka sisältävät valmiita työkaluja paikkatiedon käsittelyyn. Muun muassa Spatial Analyst-laajennus tuo mukanaan paljon monipuolisia työkaluja rasteroitujen aineistojen käsittelyyn ja analysointiin, ja 3D Analyst-laajennuksen avulla aineistoja voidaan visualisoida ja muokata kolmiulotteisessa ympäristössä.

Sovelluskehittäjille ArcGIS pakettiin kuuluu myös ArcEngine, jonka avulla voidaan suorittaa ohjelmia, jotka rakentuvat ArcGIS-ohjelmien pienemmistä ohjelmapalikoista ArcObjectseista. Kaikki ArcGIS-ohjelmat koostuvat näistä palikoista, ja ne tarjoavat avoimen ohjelmointirajapinnan, API:n (Application Programming Interface), ArcGIS- ohjelmiin.

Arclnfo-järjestelmä on valittu simulaattorin pohjaksi, koska se on erittäin kattava paikkatietojärjestelmä ja se sisältää monia valmiita työkaluja, joita tarvitaan simulaattorin lähtötietojen laskemiseen. Lisäksi Arclnfon tuki relaatiotietokantapohjaisille paikkatietotietokannoille mahdollistaa aineistojen jakamisen ja takaa tehokkuuden.

ArcGIS-perheen tuotteita on laajasti käytetty alan tutkimuksissa [15] ja niille on saatavissa kattava tuki.

4.2.1 Arclnfo

ArcInfo-tuotepakettiin kuuluu ArcMap-, ArcCatalog- ja ArcSDE Personal-ohjelmat.

ArcMapdla voidaan laatia ja muokata karttoja sekä käsitellä paikkatietoa monipuolisesti.

AcrCatalog on ohjelma paikkatietoaineistojen hallintaan ja luomiseen. ArcSDE Personal on käyttäjälle näkymätön ohjelma, jolla paikkatietoa voidaan lukea ja kirjoittaa paikallisiin Microsoft SQL Server Express-tietokantoihin.

ArcMap on keskeinen ohjelma, jolla paikkatietoa voidaan visualisoida, muokata, analysoida ja luoda. ArcMapdla voidaan myös tuottaa karttoja julkaisuihin ja verkkoon.

(27)

ArcMap luo karttadokumentteja, jotka sisältävät viitteitä erilaisiin paikkatietoaineistoihin.

Aineistot voivat sijaita paikallisella tietokoneella tiedostoina, tiedostopohjaisina tietokantoina, Access-tietokantoina tai SDE-tietokantoina.

Kartat koostuvat erilaisista tasoista (ks. kuva 3-1), joissa tieto voi olla eri muodoissa.

Karttoihin voidaan myös määritellä erilaisia tasoja sisältäviä kehyksiä. Kehykset määrittelevät kartan projektion, koordinaatistojärjestelmän ja mittayksiköt.

Aineistojen muokkaaminen onnistuu valmiilla muokkaustyökaluilla, kun muokkaustila on päällä. Tällöin piste-, viiva-, ja monikulmiojoukkojen muokkaaminen on mahdollista yksi piste tai viiva kerrallaan. Monimutkaisia automatisoituja muokkaustyökaluja kutsutaan geoprosessointityökaluiksi. Ne suorittavat toimintoja, jotka olisivat liian monotonisia tai vaikeita suorittaa käsin. Käytännössä rastereiden muokkaaminen on mahdollista vain geoprosessointityökaluilla.

ArcMap mahdollistaa myös animaatioiden tekemisen paikkatietoaineistosta. Aineistoja voidaan animoida kerros kerrokselta tai päivämäärän tai muun ominaisuuden perusteella.

Valmiit animaatiot voidaan myös tallentaa videotiedostoiksi.

Paikkatietoaineistojen hallintaan suunniteltu ArcCatalog tarjoaa käyttäjälle kokonaisvaltaisen käsityksen paikkatietoaineistoista, joihin käyttäjällä on pääsy. Ohjelman avulla käyttäjä voi muokata ja luoda uusien paikkatietoaineistojen lisäksi aineistojen metatietoja. ArcCatalogin avulla tietojen vieminen ja tuominen eri muotoihin on mahdollista.

Arclnfoon kuuluu myös ArcSDE Personal, joka mahdollistaa paikkatietoaineistojen tallentamisen paikalliseen Microsoft SQL Server Expressiin. Jos käytössä on ArcGIS Server, voidaan työasemalta ottaa yhteys myös muihin relaatiotietokantapohjaisiin paikkatietotietokantoihin. Relaatiotietokantojen käyttäminen mahdollistaa sen, että useat käyttäjät voivat muokata ja käyttää tietoa samanaikaisesti [13].

(28)

4.2.2 Laajennukset

Spatial Analyst-laajennus on tarkoitettu rasterimuotoisen datan luomiseen ja muokkaamiseen. Laajennuksen mukana tuleviin työkaluihin kuuluu muun muassa lukuisia interpolointityökaluja ja auringonsäteilyä sekä vesistöjen toimintaa mallintavia työkaluja. Interpolointityökaluilla voidaan muutaman mittauspisteen perusteella estimoida tarkasteltavan alueen muut arvot. Työkaluilla pystytään interpoloimaan rastereita usealla eri menetelmällä.

Auringon säteilyn voimakkuuden laskeva työkalu laskee tarkasteltavan alueen jokaiselle solulle, paljonko se saa säteilyä (Wh/nr). Työkalu huomioi alueen leveysasteen sekä päivämäärän ja laskee sen perusteella auringon korkeuden. Tämän jälkeen työkalu laskee halutulta etäisyydeltä kaikki esteet, jotka aiheuttavat varjoja. Kuvassa 4-1 auringon säteilyn voimakkuus on esitetty alueen kolmiulotteisen kartan päällä. Kuvasta voidaan nähdä, että etelärinteet saavat merkittävästi enemmän aurinkoa kuin pohjoisrinteet.

Vesistöjen mallintamiseen Spatial Analyst-laajennuksessa on useita erilaisia työkaluja.

Niihin kuuluu esimerkiksi työkalu, jolla voi rasterin jokaiselle solulle määrittää veden valumissuunnan. Työkalut mahdollistavat myrkkyjen ja lannoitteiden seuraamisen niiden kulkeutuessa vesistöihin.

3D Analyst-laajennus sisältää kaksi ohjelmaa, ArcScenen ja ArcGloben, sekä muutaman geoprosessointityökalun. ArcScenellä voidaan visualisoida paikkatietoaineistoja kolmiulotteisessa ympäristössä (ks. kuva 4-1). Ohjelman avulla voidaan suorittaa useita erilaisia työkaluja, mutta aineistojen muokkausmahdollisuudet ovat huomattavasti rajallisemmat kuin ArcMapissa.

(29)

Kuva 4-1: ArcScenellä voidaan visualisoida paikkatietoaineistot kolmiulotteisesta.

ArcGlobessa aineistoja pystytään mallintamaan kolmiulotteisesti maapallon pinnalle.

Tällöin suurten alueiden visualisointi on entistä luontevampaa, ja paikkatietoaineistot voidaan näyttää niiden oikeassa paikassa maapallolla. Myös ArcGlobessa muokkaustoiminnot ovat huomattavasti ArcMappia rajallisemmat ja sekä ArcGlobe että ArcScene soveltuvatkin paremmin tiedon visualisointiin. Kuten ArcMapissa myös ArcGlobessa ja ArcScenessä on mahdollista käyttää animaatiotyökaluja.

Network Analyst-laajennus on nimensä mukaisesti tehty verkostojen analysointiin. Se mahdollistaa network dataset-tietotyypin käyttämisen ja siihen perustuvan analysoinnin.

Tietotyypin avulla voidaan luoda esimerkiksi tieverkostoja, jossa tien eri osille voidaan määrittää muun muassa sen pinnoite, nopeusrajoitus ja suunta. Verkostoja analysoitaessa pystytään esimerkiksi hakemaan nopein reitti pisteestä A pisteeseen B.

4.2.3 Laajentaminen

ESRIn työpöytäohjelmistoja on mahdollista laajentaa kolmella eri tavalla. Ohjelmia voidaan muokata VBA-ohjelmanpätkillä (engl. Visual Basic for Applications), COM- yhteensopivilla- ja .NET-ohjelmointikielillä. Lisäksi geoprosessointityökaluja voidaan luoda eri tavoin.

(30)

ArcGIS-ohjelmat sisältävät integroidun kehitysympäristön VBA-makroille. Ne ovat lyhyitä ohjelmanpätkiä, joilla voidaan suorittaa yksinkertaisia tehtäviä tai muokata työpöytäohjelmien käyttöliittymää. VBA-makroilla ei voida luoda yhtä monipuolisia laajennuksia kuin COM-yhteensopivilla ohjelmilla.

Kaikki ESRIn tuotteet rakentuvat pienistä sovelluskomponenteista ArcObjects:sta. Ne ovat laitteistoriippumattomia luokkakirjastoja, joiden avulla myös sovelluskehittäjät voivat laajentaa ArcGIS-tuotteita tai luoda omia erikoistuneita paikkatieto-ohjelmiaan ArcEnginen päälle. Niitä käytetään kaikissa eri laajennustavoissa. Työpöytä- ja palvelinohjelmille sekä ArcEnginelle on myös olemassa omat ohjelmistokehitystyökalupaketit SDK:t (engl. Software Development Kit), joilla tuotteiden laajentaminen COM-yhteensopivilla ohjelmointikielillä ja .NET-kielillä onnistuu. Lisäksi ArcEngine tarjoaa suoran rajapinnan myös Javalle ja C++:lle.

ArcObjectit on kehitetty C++:lla, ja ne hyödyntävät Microsoftin COM (engl. Component Object Model) rakennetta. COM määrittelee miten luokat rakentuvat ja miten ne keskustelevat toistensa kanssa. Tämä mahdollistaa sen, että eri luokat voivat keskustella toistensa kanssa tietämättä toistensa sijaintia ja toteutustapaa. COMin vaatimusten mukaisesti laaditut luokat toteuttavat rajapintoja, jotka määrittelevät viestien välityksen protokollat. Yksi luokka voi toteuttaa useita eri rajapintoja. [17]

Microsoftin .NET on ohjelmistokehitysalusta, jonka avulla ohjelmoija voi rakentaa ohjelmia Microsoftin eri käyttöjärjestelmäympäristöihin ja hyödyntää Microsoftin monipuolisia ohjelmistokirjastoja. .NET-alustaan kuuluu kaksi pääosaa: Common Language Runtime, CLR, ja ohjelmistokirjastot. CLR hallinnoi ohjelmakoodia ohjelman suorituksen aikana ylläpitäen muistin ja säikeiden hallintaa, ja taaten tyyppiturvallisuuden. CLR:n alaisuudessa ajettavaa koodia, kutsutaan hallinnoiduksi ja koodia, jota ei ajeta CLR:n alla, kutsutaan ei-hallinnoiduksi. [18]

ArcObjects on kehitetty C++:lla, joten ne ovat ei-hallinnoituja. .NET sisältää COM Interop-nimisen teknologian, jolla COMilla ohjelmoidut ohjelmat voivat keskustella

(31)

.NET alustan ohjelmien kanssa. Jotta COM Interop voi toimia, COM-ohjelman valmistajan täytyy julkaista .NET-komponentti - Primary Interop Assemblies - (PIA), joka sisältää määrittelyt jokaiselle luokalle ja rajapinnalle. Ajonaikana CLR paketoi kutsuttavan puolen joko Runtime Callable Wrapper- (RCW) tai COM-Callable Wrappers-paketoijalla (CCW) riippuen siitä kumpi puoli kutsuu kumpaa. Toimintaa on havainnollistettu kuvassa 4-2. .NET-rajapinta toimii ohuena välikerroksena ohjelmien välillä, eikä sen pitäisi vaikuttaa suorituskykyyn merkittävästi. [19]

A COM client calling a .NET server

h

Unmaneged

Consumer

Consumer

RCW

H

A .NET client

calling a COM server

Kuva 4-2: COM Interop paketoi kutsuttavan puolen siten, että molemmat luulevat olevansa samalla puolella hallinnoitua tai ei-hallinnoitua koodia. [19]

ArcGIS-työpöytäohjelmia voidaan laajentaa luomalla uusia geoprosessointityökaluja. Niitä voidaan luoda erilaisilla komentokielillä tehdyillä ohjelmilla, ohjelmien sisään rakennetulla mallienrakennustyökalulla Model Builderilla tai itse tehdyillä ohjelmilla, jotka toteuttavat geoprosessointityökalujen vaatimat rajapinnat. Geoprosessointityökalut tarjoavat helpon tavan päästä suoraan kiinni paikkatietoaineistoihin ja muokata niitä.

Python, JScript, VBScript ja Perl ovat komentokieliä, joilla voidaan tehdä pieniä geoprosessointitehtäviä suorittavia ohjelmia. Näillä kielillä on mahdollista käyttää ArcObjectseja hyväkseen ja tehdä monipuolisia muokkaustoimenpiteitä.

Komentokielisillä ohjelmilla pystytään kätevästi automatisoimaan useiden valmiiden geoprosessointityökalujen perättäinen suorittaminen.

(32)

Model Builder-ohjelmalla voidaan myös rakentaa samanlaisia geoprosessointiohjelmia kuin komentokielillä, mutta graafisen käyttöliittymän kautta. Käyttöliittymään voidaan vetää valmiita työkaluja ja yhdistää niitä graafisesti. Kuvassa 4-3 on esitetty yksi Model Builderdla rakennettu työkalu. Kuvassa keltaiset laatikot ovat geoprosessointityökaluja, siniset lähtödataa ja vihreät uusia paikkatietoaineistoja.

Kuva 4-3: Model Builderdla rakennettu geoprosessointia nopeuttava työkalu.

Geoprosessointityökaluja voidaan rakentaa COM-yhteensopivilla ohjelmointikielillä ja .NET-kielillä. Tällöin täytyy toteuttaa vähintään kaksi rajapintaa: IGPFunction ja IGPFunctionFactory. IGPFunction määrittelee itse työkalun toiminnallisuuden ja IGPFunctionFactory on ”tehdas”-luokka, jonka avulla työkalut saadaan käyttöön. Yhden tehtaan alle voi luoda monta erilaista työkalua. Työkalujen rakentaminen esitetyllä tavalla on mitä työläintä ja vaativinta, mutta samalla avaa uusia vapausasteita.

(33)

5 Toteutus

Simulaattorin tarkoituksena on simuloida Suomen oloissa maatilaympäristöjä, joihin kuuluu useita peltoja. Peltojen maaperän ominaisuudet pitää pystyä syöttämään joko mittausten perusteella tai automaattisesti generoimalla tietyn ominaisuuden odotusarvoa ja varianssia hyväksi käyttäen. Peltoja yhdistää lisäksi tieverkko, jota pitkin erilaiset työkoneet siirtyvät pelloilta toisille sekä huolto- ja varastorakennuksille. Rakennuksiin kuuluvat myös siilot, joissa satoa säilytetään. Koko simulaattorin tarkoituksena on tarjota alusta, jolla voidaan testata erilaisia automaattisessa peltoviljelyssä tarvittavia tekniikoita.

Simulaattorin tarkkuutta ja laskenta-aikaa pitää myös pystyä säätämään.

Tämän diplomityön tarkoituksena on pohjustaa näiden tulevaisuuden tekniikoiden testausalusta rakentamalla simulaattorin runko ja perustoiminnallisuus.

Kirjallisuuskatsauksen perusteella on päätetty rakentaa simulaattori paikkatietojärjestelmän päälle. ESRIn ArcGIS on valittu sen monipuolisten ominaisuuksien ja hyvän laajennettavuuden perusteella. Simulaatiomallien toteutus on tehty Simulinkillä, koska sillä pystytään visuaalisesti mallintamaan monimutkaisia järjestelmiä ja koska se on havaittu hyväksi edellisissä tutkimuksissa. Mallien ja paikkatietojärjestelmän yhdistämiseen on sovellettu kahta erilaista vaihtoehtoa.

5.1 Teknisen toteuttamisen päälinjat

Simulaattorin rakentamiseksi paikkatietojärjestelmän päälle, on ollut välttämätöntä tutustua ArcGISin eri laajennusmahdollisuuksiin. Paikkatietojärjestelmää hankittaessa on haastateltu Teknillisen korkeakoulun Geoinformaatio- ja paikannustekniikan laboratorion tutkijaa Jukka Krispiä, jolla oh vuosien kokemus ArcGIS paikkatietojärjestelmän käytöstä.

Hän kertoi ArcEnginen hyödyntämisen olevan erittäin työläs projekti [20], joten sen käyttö simulaattorin rakennuksen alkuvaiheessa päätettiin hylätä heti. Sen sijaan päätettiin laajentaa ArcMapin jo olemassa olevia ominaisuuksia.

(34)

5.1.1 ArcMapm laajentaminen

ArcMapin käyttöliittymään voidaan helposti luoda työkalurivejä ja niihin painikkeita sekä valikoita, mikä vaatii kuitenkin enemmän ohjelmointia kuin geoprosessointityökalujen toteuttaminen, kuitenkaan tällä ei saavuteta merkittäviä etuja. Geoprosessointityökalujen tekemistä puoltaa myös se, että työkaluja on helppo yhdistää visuaalisesti toisiinsa geoprosessoinnin automatisoimiseksi. Lisäksi suurin osa ArcMapin valmiista työkaluista on geoprosessointityökaluja.

Veden valumisen huomioiminen vaatii kolmiulotteista karttaa tutkimusalueesta. Sellainen voidaan tehdä käyttämällä rasteria tai TINiä (engl. Triangulated Irregular Network). TIN on kuitenkin melko uusi tietotyyppi, eikä sen käsittelyyn ole juuri olemassa valmiita työkaluja toisin kuin rastereille. Tämän vuoksi rastereita on käytetty peltojen kolmiulotteisen kartan kuvaamiseen. Myös rastereiden käsittelyyn geoprosessointityökalut ovat käytännössä ainoa vaihtoehto.

Työssä on hyödynnetty mahdollisimman paljon valmiita työkaluja. Itse rakennetut työkalut on toteutettu hyödyntäen .NET-rajapintaa sen laajuuden, monipuolisuuden ja tutkijan käyttökokemuksen takia. Ohjelmointikieleksi on valittu C#, koska se on pitkälle kehitetty olio-ohjelmointikieli ja se on syvälle integroitu Visual Studio- kehitysympäristöön. .NET-rajapinnan käyttäminen mahdollistaa myös Visual Studion sisäänrakennettujen testaustyökalujen hyödyntämisen.

5.1.2 Simulaatiomallit

Simulaattorin toteutukseen on käytetty kolmea Simulink-mallia: Säägeneraattoria, ympäristömallia ja valumismallia. Jako kolmeen malliin johtuu siitä, että mallit toimivat simulaatorin suorituksen eri vaiheissa. Säämallilla luodaan uusi sää kerran päivässä, ympäristömalli suoritetaan jokaiselle pellon osalle kerran tunnissa ja ympäristömallin jälkeen voidaan laskea veden valuminen. Mallien tarkemmat kuvaukset on esitetty kappaleessa 5.4.

(35)

Ympäristö- ja vai uin ismal li on toteutettu Helsingin Yliopiston Agroteknologian laitoksella.

Agroteknologian laitoksen tutkijoiden tarkoituksena on etsiä kirjallisuudesta simulaatiomallien matemaattisia toteutuksia ja tehdä niistä Simulink-malleja. Aluksi ajatuksena oli, että mallit olisivat jatkuva-aikaisia, jotta niitä ei olisi sidottu tiettyyn aika- askeleeseen. Tällöin askelpituutta säätämällä olisi voitu vaikuttaa laskenta-aikaan ja tarkkuuteen. Simulaattorin ensimmäinen versio päätettiin kuitenkin rakentaa tunnin pituiselle aika-askeleelle. Säämalli on toteutettu osana tätä diplomityötä ja sen aika-askel on 24 tuntia.

Mallien yhdistämisessä muihin simulaattorin osiin on pyritty modulaarisuuteen, jotta mallien muokkaaminen ei vaatisi simulaattorin muiden osien muokkaamista. Käytännössä tämä tarkoittaa sitä, että mallien rajapinta on sovittu etukäteen.

Mallien suorittamista on kokeiltu kahdella yhdistämisen tasolla [15]. Toisessa malli integroitiin paikkatietojärjestelmään ja toisessa ne linkitettiin keskenään tietokannan välityksellä. Mallien integrointi toteutettiin kääntämällä mallit ensiksi ERTdlä C++- koodiksi. Koodi liitettiin Visual Studiossa projektiin, josta muodostettiin dynaamisesti linkitettävä kirjasto DLL (engl. Dynamic Link Library). DLL liitettiin geoprosessointityökaluun, jossa malleja ajetaan. Geoprosessointityökalu vuorostaan liittyy DLL:nä ArcMappiin. Tätä on havainnollistettu kuvassa 5-1. Simulaation tulokset tallennetaan ulkoiseen tietokantaan, jossa niitä on helppo analysoida.

COM C++

.NET C#

.NET C++

.NET C++/C++

I

SimulatorTool DU

---- 11 1

i--- 1--- 1 i--- --- i i--- 1 i

Kuva 5-1: Integroidun simulaattorin hierarkkinen rakenne

(36)

Toisessa ratkaisussa ArcMapissa ajettiin ensin geoprosessointityökalu, joka siirsi kaikki tarvittavat tiedot ulkoiseen tietokantaan. Matlabilla tiedot haettiin työtilaan, josta niitä voitiin käyttää. Simulaatiota ajettiin komentokielisellä ohjelmalla, joka teki periaatteessa samat asiat kuin geoprosessointityökalu ArcMapissa, ja tulokset tallennettiin samaan tietokantaan. Kuvassa 5-2 on esitetty linkitetyn simulaattorin toiminta.

SQL DB IGPTool

TableToRaster

ajaMalli hae sisääntulot -simuloi -tallenna

Kuva 5-2: Linkitetyn simulaattorin toiminta

5.1.3 Tietokannat

Simulaattorissa käytetään kolmea tietokantaa tiedon säilyttämiseen. AutoCropTemplate on paikkatietotietokanta, joka sisältää neljä taidua. Maalajit-taulussa pidetään tietoa erilaisista maalajeista yleisellä tasolla. Maalajit-taulun alataulut ”Odotusarvot” ja

”Varianssit” sisältävät eri maalajien ominaisuuksia kuvaavat odotusarvot ja varianssit, jotta niiden perusteella voidaan luoda tilastoihin perustuvia normaalijakautuneita arvoja.

Lisäksi AutoCropTemplate sisältää Lannoitteet-taulun, joka sisältää tietoa erilaisista lannoitteista.

Toinen simulaattorissa käytettävä paikkatietotietokanta on skenaariokohtainen tietokanta.

Siihen kerätään kaikki skenaariokohtaiset tiedot. Molemmat paikkatietotietokannat ovat SDE-tietokantoja paikallisella Microsoft SQL Server Express-palvelimellä.

Samalla palvelimella käytetään lisäksi normaalia SimulinklO-nimistä SQL-tietokantaa simulaation tulosten ja ulkoista simulaattoria varten kerättyjen tietojen tallentamiseen.

Simulaation tuloksia ei tallenneta suoraan paikkatietojärjestelmään, koska tulosten

(37)

tarkkojen arvojen tarkasteleminen ArcMapin kautta on hankalampaa. Lisäksi arvojen kehittymistä numeerisesti on helpompi tarkastella normaalissa relaatiotietokannassa.

5.2 Skenaariot

Tietyn maatilan simulaatioita kutsutaan skenaarioksi. Skenaarioon kuuluvat kaikki maatilan toiminnan kannalta oleelliset resurssit, kuten koneet, rakennukset ja materiaalit sekä maatilan ympäristö. Skenaarion toteutus on jaettu viiteen eri päävaiheeseen:

skenaarion luontiin, skenaarion peruslaskelmiin, esiprosessointiin, simulointiin ja visualisointiin, jotka on esitetty kuvassa 5-3. Jokaisessa vaiheessa käytetään erilaisia työkaluja, geoprosessointityökaluja ja geoprosessointimalleja. Geoprosessointimallit ja - työkalut on liitetty ArcMappiin omaan työkalulaatikkoon, joka on jaoteltu vaiheiden mukaan. Valmiiden työkalujen tarkempi esittely on kuvattu ArcMapin ohjeissa.

Skenaarion luonti Skenaarion

peruslaskelmat Esiprosessointi Simulointi Visualisointi

ArcMap ArcCatalog /

ArcMap ArcMap

Matlab

ArcMap / ArcScene ArcMap

(ei tarvitse)

Kuva 5-3: Skenaarioiden toteutus ja käytettävät ohjelmat

5.2.1 Skenaarion luonti

Simulaation rakentaminen alkaa uuden skenaarion luomisella paikkatietojärjestelmään.

ArcCatalogin puolella perustetaan uusi paikkatietotietokanta, johon kaikki skenaarion paikkatietoaineistot syötetään. Tietokantaan tuodaan satelliittikuva tutkimusalueesta, joka pitää sen jälkeen ArcMapin puolella kohdistaa oikeisiin koordinaatteihin. Seuraavaksi ajetaan ArcMapin Model builderilla tehty geoprosessointimalli. Se luo tietokantaan useita paikkatietoaineistoja, joihin pitää satelliittikuvaa hyödyntäen rajata pellot, tiet, metsät ja alueen reunat. Luodut aineistot sisältävät polygoneja ja viivoja. Lisäksi työkalu kopioi AutoCropTemplate-tietokannasta tauluja, jotka sisältävät tietoja lannoitteista, maaperän ominaisuuksista ja maalajeista.

(38)

Jos alueelta ei ole mittaustietoja tai halutaan luoda puhtaasti tilastotietoon perustuva skenaario, käytetään geoprosessointimallia ”Generoi pistejoukot”. Muussa tapauksessa mittauspisteiden tiedot täytyy tuoda ulkopuolelta tai syöttää manuaalisesti. Malli luo edellisessä vaiheessa rajattujen peltojen ja alueen rajojen sisälle halutun määrän satunnaisesti asetettuja pisteitä hehtaaria kohti. Peltojen pisteiden perusteella voidaan interpoloida maan ominaisuuksia rastereiksi ja alueen pisteiden perusteella muodostetaan alueen kolmiulotteinen kartta. Geoprosessointimalli laskee korkeuden varianssin ja odotusarvon perusteella normaalijakautuneet korkeusarvot alueen pisteille. Peltoihin satunnaisesti sijoitettuihin pisteisiin lasketaan maan ominaisuuksia kuvaavat arvot. Se tehdään itse luodulla ”MaanOminaisuusGeneraattori”- geoprosessointityökalulla. Työkalu asettaa pisteille normaalijakautuneita arvoja. Sen tarkempi toiminta on kuvattu kappaleessa 5.3.1.

5.2.2 Skenaarion peruslaskelmat

Toisessa vaiheessa tehdään päätöksiä, jotka vaikuttavat simulaation tarkkuuteen ja laskenta-aikaan. Tärkein päätös on käytettävän rasterin solukoko. Suuri solukoko tarkoittaa nopeaa simulaatiota ja pieni suurempaa tarkkuutta simulaatiossa. Peruslaskelmat tehdään kahdella geoprosessointimallilla.

Ensin ajetaan malli, joka interpoloi korkeuspisteiden perusteella halutulla solukoolla alueen rajoja myötäilevän rasterin DEMin (Digital Elevation Map).

Interpolointimetodina on käytetty Spatial Analyst-laajennuksen splineä, koska se sovittaa pisteisiin pehmeän ja jatkuvan pinnan [13]. Menetelmää voi helposti vaihtaa Model Builderin graafisessa käyttöliittymässä.

DEMiin lisätään metsien kohdalle haluttu metsän korkeus, minkä jälkeen voidaan ajaa Spatial Analyst-laajennukseen kuuluva AreaSol-työkalu. Työkalulla lasketaan jokaiselle DEMin solulle sen vastaanottama päivittäinen auringonsäteilyn voimakkuus ja suoran säteilyn kestoaika. Molemmat tiedot tulevat omiin monikerroksisiin rastereihinsa, joissa yhden päivän tiedot ovat yhdessä kerroksessa. Työkalu tarvitsee DEMin lisäksi tiedon aloitus- ja lopetuspäivästä. Aloituspäivän on oltava sama kuin varsinaisen simulaation

Viittaukset

LIITTYVÄT TIEDOSTOT

Tulosten perusteella voidaan todeta, että painotettu historiallinen simulaatio on, ainakin osakkeiden osalta, tarkempi ja parempi malli kuin painottamaton

Koska oppilas ei ole perillä asiasta ja opettaja kysyy asiasta siten, että siihen voi vastata yhdellä sanalla, argumentaatio on vain tason 1 mukaista.. Seuraavassa esimerkissä

Systemaattinen kirjallisuuskatsaus ja meta-analyysi vuodelta 2012 (Yuan, Williams &amp; Fang) toi myös esiin positiiviset tulokset simulaatio-oppimisesta. Tutkimuksen

Osaa toimia ratkaisukeskeisesti ja motivoida erilaisia työntekijöitä noudattamaan työturvallisuusohjeita....

Menestyksekkään yhteiselon peruskaava on silti yksinkertainen: simuloidaan niin kauan, että löydetään sellainen systeemi ja teorian taso, että koe voidaan ymmärtää

Keskustelkaa Suomen päätöksestä: millä perustein Suomen tulisi jatkaa sotaa (Ryhmä Kekkonen) / myöntyä rauhanehtoihin (Ryhmä

Samaan on päätynyt Honig (2004), joka peräänkuuluttaa tässä yhteydessä uskotta- vuutta, relevanssia ja kattavuutta. Simuloinnissa opiskelija paneutuu rooliinsa niin

Huomiota tulisikin kiinnittää siihen, millaiseen tiedonhaun malliin simulaatio perustuu ja mitä piirteitä mallissa tulisi olla.. Esimerkkeinä aiemmista simulaatiotutkimuksista