Tietokonesimulointi

**Tietokonesimulointi** on maailman jäljittelyä tietokoneella. Maailmasta tai useimmiten sen osasta tehdään loogis-matemaattinen malli. Malli muutetaan tietokoneen ymmärtämään muotoon tietokoneohjelmaksi käyttäen jotain ohjelmointikieltä. Tietokoneohjelma suoritetaan eli ajetaan. Lopuksi ohjelman tulokset saadaan kuvina, taulukoina ja kaavioina.
Esimerkiksi tietokoneeseen voidaan syöttää yhtälöt, joilla säätila lasketaan, sekä säätiedot ja laskea säätilaa eteenpäin.
Tietokoneella voi simuloida monenlaisia muitakin asioita:
kaupan kassajono, lentäminen, kasvihuoneilmiö.
Tietokonesimulaatio ei yleensä pysty antamaan varmoja tuloksia, koska reaalimaailman ilmiöitä käsittelevät mallit ovat monesti väistämättä epätarkkoja ja koska tietokoneen laskentakyvyt ovat rajalliset. 

## Tietokonesimuloinnin sovellutukset

Supertietokoneiden tulo Suomeen 1980-luvulla paransi merkittävästi kykyä ennustaa sää oikein.

Tietokonesimulaatio kertoo monesti itsestäänselvyyksiäkin.
Ennen Persianlahden sotaa 1991 amerikkalaiset simuloivat monia vaihtoehtoja ja esitettyjä ideoita ja hioivat näin lopullista hyökkäysvaihtoehtoa. Yksi simulointien tulos oli muun muassa se, että Bagdadiin hyökättiin vain F-117 -häivekoneilla. Simuloinnit osoittivat, että näin muun muassa tappiot jäivät pienimmiksi, mutta on selvä, että tutkassa näkymätön häivekone on haavoittumattomampi kuin muut sotilaslentokoneet.

## Tietokonesimuloinnin keinot

Tietokonesimulointi vaatii runsaasti laskentatehoa. Nykyiset supertietokoneetkaan eivät ole niin tehokkaita kuin tutkijat haluaisivat, sillä aina löytyy simulaatio, jota tutkijat eivät kykene tehokkaassakaan tietokoneessa ajamaan.

Tietokoneen kapasiteetin valtava kasvu on mahdollistanut simuloinnin aivan uudella tavalla. Esimerkiksi *n*:n muuttujan lineaarisen yhtälöryhmän ratkaiseminen vaatii noin *n·n* kertolaskua. Suuret lineaariset yhtälöryhmät käsittävät miljoonia muuttujia. Miten tällaisen miljoonan muuttujan lineaarisen yhtälöryhmän ratkaiseminen on kehittynyt?
# ennen logaritmeja olisi tarvittu miljoona kertaa miljoona minuuttia ~ noin kaksi miljoonaa vuotta (1 kertolasku/min)
# logaritmitaulukoiden jälkeen noin 200&nbsp;000 vuotta (10 yhteenlaskuksi muunnettua kertolaskua/min)
# 1940-luvun tietokoneella, ENIAC noin 88 vuotta (359 kertolaskua/s)
# 1960-luvun tietokoneella 4 kuukautta (100&nbsp;000 kertolaskua/s)
# 1980-luvun tietokoneella 1 vuorokausi (10 miljoonaa kertolaskua/s)
# Vuoden 2000 mikroprosessorilla noin 1 000 sekuntia, 16,7 minuuttia (1 000 miljoonaa kertolaskua/s)
# Suomen vuoden 2004 supertietokoneella hieman alle sekunti (1&nbsp;200&nbsp;000 miljoonaa kertolaskua sekunnissa) ja maailman parhaalla supertietokoneella vielä 70 kertaa nopeammin

Yksinkertaistettuna yhden ihmisen kyky ratkaista edellä mainitun tyyppinen yhtälöryhmä on siis pudonnut noin yhteen 60. miljardisosaan paperiversiosta. Vastaava koskee tosin vain ns. polynomisessa ajassa ratkaistavia ongelmia. NP-täydellisten ongelmien, joita on kohdattu muun muassa geenitekniikkaan liittyvässä simuloinnissa, ratkaisuteho on kasvanut paljon hitaammin. Tietokone on edelleen keskeisesti laskin (computer). Kehitys perustuu muun muassa tekniikan kehitykseen ja kasvavaan erikoistumiseen. Paperilla taustaorganisaatioksi riittää ehkä heimo (paperin (vast.) valmistus ja laskijan elättäminen), tietokonetapauksessa se on käytännössä globaali taso, ihmiskunta.

## Simulointisanastoa
***Simulaatio** on yleensä sama kuin simuloinnin tulos tai tekeminen. 
***Simulaattori** on laite, jolla tehdään simulointia.
***Ohjelma**: tietokoneelle annetut ohjeet, joilla simulaatio suoritetaan.
***Malli**, **tietokonemalli**: Tietokoneeseen ohjelmoitu simulaattori tai sen rakenne.
 
## Simuloinnin käyttöalueita
*Tuotteiden valmistaminen ja tuotanto
**Koneistuksen simulointi
**Robottisimulointi
**Kokoonpanon simulointi
**Ergonomia ja työpistesuunnittelu
**Käytettävyyden simulointi
**Törmäystestisimulointi (autoteollisuus)
**Materiaalivirta- ja kapeikkosimulointi
**Prosessisuunnittelu
*Tieteellinen mallinnus
**Sääennustus
**Merivirtojen kulku
**Tuulitunneli
**Aurinkokunnan synty
*Tilojen simulointi
**Arkkitehtoniset visualisoinnit
**Keinotodellisuus
**Ääni- ja valaistussimulaatiot
*Käyttökoulutus: lentoliikenne, ajoneuvot
*Simulaatiopelit
*Maapallon tulevaisuuden ennustaminen
**Maailmanmalli, jonka laati Rooman klubi
*Kansantaloustiede
**Tuja-malli, Jutta, Soma

## Simuloinnin ongelmat
Simulointi vaatii monesti erittäin raskasta laskentakykyä tietokoneelta, varsinkin jos simuloidaan säätilan kaltaista mutkikasta systeemiä.

*Simulaation laatiminen
**Osataanko laatia oikein simulaatio, joka kuvaa ihmisen ja maapallon vuorovaikutusta oikein?
*Simuloitavan alueen tuntemus 
**Esimerkiksi jääkauden ilmasto ja kasvillisuus tunnetaan heikosti
**Maailman tulevaisuuden simulointi on vaikeaa, koska tulevaisuuden teknistä kehitystä ei tunneta.
**Ei osata sanoa tarkasti aurinkokunnan synnyn olosuhteita.
*Simuloinnin tarkkuus (johtuu tietokoneiden heikosta laskentakapasiteetista raskaaseen laskentaan)
**Hitailta tietokoneilta vaaditaan pitkiä simulointi- eli simulaation ajoaikoja.
**Yleensä voidaan simuloida vain osa jostain tapahtumasarjasta (esimerkiksi aurinkokunnan synty)

## Katso myös
* Simulointi
* Lentosimulaattori
* Mallintaminen 
* Simuloitu todellisuus

## Aiheesta lisää
* www.simulaattori.fi