tiistai 16. toukokuuta 2000

Jäyniä jumalille

sfnet.keskustelu.filosofia: Vs: Vs: Vs: Virtus Dormitiva, b

4.4.2000 9:00

Pasi Lähteenmäki kirjoitti:
Maailmankaikkeuden fysiikka saattaa mahdollistaa jopa aikamatkailun. Lisäksi tulevaisuuden ennustaminen tunnetuista faktoista ei ole suuren laskentakyvyn omaavalle oliolle kovin hankalaa.

Kannattaa kuitenkin pitää mielessä tietojenkäsittelyteorian rajoitteet: Tulevaisuuden ennustaminen yleisesti on mahdotonta, jos ennustuksen tulokset ovat interaktiossa ennustettavien tapahtumien kanssa. Esim. jos sattuisit tapaamaan Jumalan ja pyytäisit häntä kertomaan, mitä tulet seuraavaksi sanomaan, ei hän pystyisi vastaamaan oikein, vaikka maailma olisi täysin deterministinen ja Jumala tuntisi simulaation (sinut) alkuehdot täsmällisesti, jos sattuisit olemaan erityisen pirullisella tuulella.


sfnet.keskustelu.filosofia: Epädeterminismistä

12.5.2000 9:00

Raimo Suonio kirjoitti:
Olet kuitenkin tuossa ajatellut, että ohjelma muuttaisi toimintaansa tehdyn ennustuksen perusteella, jolloin ennustuksen, ollakseen oikein, tulee tietenkin ottaa huomioon tuo muutos ja niin ollen itse ennustuskin, joten ennustuksen pitäisi ennustaa myös itsensä, mikä johtaa äärettömään regressioon ja näin ollen loogiseen mahdottomuuteen. Se ei siis todista ennustamisen mahdollisuudesta mitään.

Kun puhutaan ennustamisen mahdollisuudesta, olisi ilmeisesti järkevää kiinnittää jokin laskennan malli, jossa ennustaminen tulee suorittaa. Siis ainakin periaatteessa voisi kuvitella (en halua tässä nyt ruveta kommentoimaan tarkemmin tämän lauseen sisältöä, joka menee suoraan filosofian ytimeen) Turingin konetta vahvemman laskennan mallin, joka pystyisi ratkaisemaan Turingin koneen pysähtymisongelman, mutta tällainen laite ei voi olla kytkettynä Turingin koneeseen, tai kyseessä ei enää olisi Turingin kone. Ilkan esittämät perustelut ovat täysin päteviä Turingin koneen ennustuskyvylle.

Sinänsä tuollainen itse toimintaa nopeampi ennustus voidaan tehdä, mutta se on tehtävä itse toimijaa nopeammalla järjestelmällä, itse toimija ei siihen kykene.  Tarkoitan siis, että PC:ni pystyy kyllä ennustamaan TELMACini (minulla todella on sellainen edelleen tallessa) toiminnan nopeammin kuin TELMAC toimii.

Siis tämähän ei ole kovin oleellista, koska olettaisin, että TELMAC:ssasi ja PC:ssäsi on äärellinen määrä muistia, joten ne ovat äärellisiä tilakoneita ja siten niiden kaikki toiminta voidaan "helposti" ennustaa isommalla tilakoneella.

Jos tämä muistirajoitus poistetaan jotenkin asentamalla rajattomasti muistia sekä TELMAC:si että PC:si käyttöön (sekä muutetaan niiden prosessoreita siten, että ne voivat jotenkin osoittaa saatavilla olevia muistejaan) ja tehdään niistä näin Turing kone-vahvoja, et voi millään tietyllä ohjelmalla PC:ssäsi ennustaa kaikkien TELMAC-ohjelmien pysähtymistä, koska tämä ohjelma voitaisiin kääntää TELMAC:lle ja muuntaa tätä käännettyä ohjelmaa siten, että sen ympärille rakennetaan toinen ohjelma, joka suorittaa "aliohjelmana" tuon ennustusalgoritmin syöttäen itsensä tuolle algoritmille parametrina (tässä ei ole mitään temppua piilotettuna) ja toimii ennustuksen vastaisesti. Tällöin alkuperäiselle PC ohjelmalle löytyi TELMAC-ohjelma, jonka käyttäytymistä se ei ennustanutkaan.


16.5.2000 9:00

Raimo Suonio kirjoitti:
Ennustaminenhan voi tapahtua tietenkin vain silloin, kun ennustaja tietää, minkälainen ennustettava järjestelmä on. Prosessi menee siis siinä järjestyksessä, että SuperTelmacille kirjoitetaan Ohjelma, jonka jälkeen SuperPC:n annetaan Emulaattorilla emuloida sitä ja ennustaa sen toiminta.

Jos SuperTelmacille kirjoitetaan kopio Emulaattorista sekä Ohjausohjelma, ne on sen jälkeen annettava SuperPC:lle emuloitavaksi, joten SuperPC:ssä on Emulaattori, joka emuloi Ohjausohjelmaa, joka ajaa Emulaattoria, joka emuloi Ohjelmaa, kun taas SuperTelmacissa on Ohjausohjelma, joka ajaa Emulaattoria, joka emuloi Ohjelmaa. Näin ollen SuperPC on aina askelen edellä SuperTelmacia ja voi siis ennustaa sen toiminnan.

Ahaa, väärinkäsitykset tässä keskustelussa johtuivat ilmeisesti sanan "ennustaminen" erilaisesta käytöstä. Ilkka ilmeisestikin tarkoitti, ettei ole olemassa tiettyä ennustusohjelmaa, jolle syötetään parametrina ennustettava ohjelma ja sitten tämä ennustusohjelma aina ilmoittaisi oleellisesti ennen askelmäärää n (myöskin parametri, >jokin vakio k), olisiko kyseinen ennustettava ohjelma suoritettaessa pysähtynyt n:n ensimmäisen askeleen aikana.

Ilkan esittämä käyttö sanalle "ennustaa" on erittäin kiinnostava mm. siitä syystä, että voidaan myös kysyä sen tyyppisiä ennustusaiheisia kysymyksiä kuin "Pysähtyykö annettu ohjelma ylipäätään?" tai "Tuleeko ohjelma kirjoittamaan jossain vaiheessa arvon a muistipaikkaan x?" Näitä asioita et yksinkertaisesti voi ennustaa ajamalla ohjelmaa PC:llä, koska kielteistä vastausta et voi varmentaa vain suorittamalla ohjelmaa ja odottamalla. Nyt voidaan sitten kysyä, voitko jollain menetelmällä (algoritmilla) kuitenkin vakuuttua aina myös kielteisestä vastauksesta äärellisellä päättelyllä. Mikäli sallimme tälle päättelyalgoritmille alustaksi Turingin koneen, olemme esitetyllä "diagonaalimenetelmällä" jo pystyneet osoittamaan, ettei tällaista ennustusohjelmaa ole olemassakaan.


(Sting - Shape Of My Heart)
  

Lisäys 30.1.2011:
Samasta syystä Asimovin 2. säätiö ei saanut olla vuorovaikutuksessa ennustettavan järjestelmän kanssa.
 

Ei kommentteja:

Lähetä kommentti