Kilpatehtävä 2: Sanan arvaus

[viesti Survo-keskustelupalstalla (2001-2013)]

Kirjoittaja: Seppo Mustonen
Sähköposti:    -
Päiväys: 12.11.2002 16:54

Vastasin aikoinaan 1970-luvun puolivälissä eri yliopistojen ja
korkeakoulujen tilastotieteen laitosten yhteisen tiedotuslehden
SATTUMA toimittamisesta.
Keksin mielestäni hauskan ja "opettavaisen" kansikuvan lehden toiseen
numeroon keväällä 1975. Siinä oli Wang 2200 -pientietokoneelle tekemäni
"sananarvausohjelman" tulostusta tyyliin:

       1 UUSMUS   4     46 SA       7     91 SATU     7
       2 MM       4     47 SASATU   8     92 SATU     7
       3 SU       7     48 SASA     7     93 SA       8
       4 SUATUAS  8     49 SA       7     94 SA       7
       5 TTU      8     50 SA       8     95 SATMA    8
       6 AUTAMST  4     51 SA       8     96 SA       8
       7 SASAASA  8     52 SAATMTS  7     97 SATU     7
       8 TTU      8     53 SA       8     98 SATTTMS  8
       9 TTMASSA  7     54 SA       8     99 SA       7
      10 SSAA     7     55 SA       7    100 SA       7
      ..................................................
      36 SASATSA  8     81 SA       8    126 SASATU   7
      37 SA       9     82 SA       8    127 SATTU    7
      38 SASATU   8     83 SA       8    128 SATTUMA 10
      39 SA       9     84 SASA     7    129 SATTUMA 10
      40 SA       9     85 SA       7
      41 SATMMTU  9     86 SA       7
      42 SAA      8     87 SATTSAT  8
      43 SA       8     88 SATU     8
      44 SAAA     7     89 SATUA    8
      45 SA       7     90 SATU     7

"Pääkirjoituksessa" kerrottiin asiasta tarkemmin seuraavasti:

      SATTUMAn tämänkertainen kansikuva ilmentää periaatetta
      "129 sanaa puhuu paremmin kuin 1 kuva".
      Lukijan harkittavaksi jää, missä määrin kansi ja lehden
      muu sisältö on syntynyt sattumalta.
      Harkinnan helpottamiseksi todettakoon kannesta seuraavaa.
      Sitä rakennettaessa on yritetty käyttää satunnaisia sanoja
      tuottavaa Markovin ketjua. Ketjun tiloina ovat kirjaimet
      A,U,M,S,T ja sanaväli. Siirtymätodennäköisyydet ovat aluksi
      kaikki tasaisia eli sanat syntyvät täysin umpimähkäisesti,
      mutta prosessin tuotosta on mahdollista arvostella tavan-
      omaisin kouluarvosanoin 4-10, joilla vaikutetaan ketjun
      siirtymätodennäköisyyksiin lähinnä viimeisessä sanassa
      esiintyvien siirtymien osalta.
      Tavoitteena on ollut saada prosessia matkiva pientietokone
      sanomaan SATTUMA ja sanojen arvostelu palvelee tässä tapa-
      uksessa vain tätä jaloa päämäärää. Hankkeen ajatus on
      (tyhjän tilan täyttämisen ohella) siinä, että nähtäisiin,
      voiko näin yksinkertaisen mallin puitteissa saada pelkällä
      yleisarvostelulla jonkinlaista opppimista aikaan.
      Kansi on suoraan ohjelman tulostusta. Jokaisen koneen tar-
      joaman sanan jälkeen on allekirjoittaneen antama arvosana.
      ---
      Liekö tuo todella sattuma, että kaksi ensimmäistä SATTUMAa
      ovat syntyneet jo yrityksillä 128 ja 129.

                                                   1.6.1975
                                                   SM

Innostumiseni tuosta aiheesta oli sikäli ymmärrettävää, että
tuohon aikaan ei monilla ollut välttämättä käsitystä siitä, että
tietokoneen kanssa voidaan toimia "interaktiivisesti".
Tällaiset yritykset osaltaan ennakoivat ensimmäisen keskustelevaan
käyttötapaan pohjautuvan Survon (SURVO 76) syntyä.

Nyt tarkoituksenani on palauttaa eloon "sananarvauspeli" nykysurvon
yhteydessä. Olen sen tehnyt kahdessakin muodossa, C-ohjelmamodulina
ja sukrona. C-ohjelmasta (joka on sukroa monipuolisempi ja nopeampi)
tulen kertomaan joskus myöhemmin. Tässä kuvaan SANO-sukroperhettä,
jonka listaus on sanomani lopussa ja jota houkuttelen survoilijat
uuden kilpatehtävän muodossa kokeilemaan.

Selitän aluksi sukron toimintaa pienellä esimerkillä.
Nyt on tavoitteena saada sukro SANO-SANA lausumaan sana ILO, kun
tarjolla on kirjaimet A,E,I,K,L,O ja sanaväli.

Arvaaminen alkaa esim. aktivoimalla /SANO-SANA ILO seuraavasti:
......................................................................
RND=rand(3011) / valittu satunnaislukugeneraattori
STATES=AEIKLO
/SANO-SANA ILO_
......................................................................
Aktivoinnin jälkeen syntyy keskustelu, jossa ohjelma ehdottaa sanoja
ja käyttäjän tulisi arvioida niitä asteikolla -30 ... 30.
Ensimmäinen kysymystilanne näyttää seuraavalta:
......................................................................
RND=rand(3011)
STATES=AEIKLO
/SANO-SANA ILO
1  KOOAAKO? _    *                                P=0.00065104166667

Arvioi sanaehdotus asteikolla -30 ... 30. Lopeta napeilla '.'  ENTER!
......................................................................

Se, että tavoiteltu sana (ILO) ilmaistaan aktivoinnin yhteydessä, antaa
ohjelmalle tilaisuuden kertoa käyttäjälle joka vaiheessa, mikä on tuon
sanan todennäköisyys juuri ennen tämänhetkistä kysymystä.
(Ohjelma ei käytä, kuten jokainen asiasta kiinnostunut voi tarkistaa
sukrojen listauksesta, tätä tietoa millään muotoa sen enempää
käyttäjän eduksi kuin haitaksi.)

Todennäköisyys ilmoitetaan kyselyrivin lopussa. Koska alkutilanteessa
sanan päättymistodennäköisyys on aina 1/4 ja kullakin vaihtoehtoisista
siirtymistä on sama todennäköisyys eli tässä (1-1/4)/6=1/8, on sanan
ILO todennäköisyys vaatimattomasti 1/6*(1/8)^2*(1/4)=0.00065104166667.
(Huom. alkukirjaimen tn.=1/6).
Tätä todennäköisyyttä käyttäjän tulee siis yrittää kasvattaa antamalla
"hyville" ehdotuksille positiivisia pisteitä ja "huonoille" negatiivi-
sia. Koska 1. ehdotuksessa KOOAAKO loppu on varsin onnistunut, kannat-
taa ehkä antaa maksimipisteet (30) ja jatko ensimmäiseen onnistumiseen
näyttää seuraavalta:
.......................................................................
RND=rand(3011)
STATES=AEIKLO
/SANO-SANA ILO
1  KOOAAKO  30                                    P=0.00065104166667
2  EOOAEA  -30                                    P=0.0007067609373
3  LLO  30                                        P=0.00079610002861
4  AA  -30                                        P=0.00113791542345
5  OLAKOI  -20                                    P=0.00118562777604
6  AEELKLEA  -30                                  P=0.00135769001846
7  OOO  10                                        P=0.0014934526632
8  E  -30                                         P=0.00152693395058
9  KIALIO  -30                                    P=0.00157834963017
10  KKKI  -30                                     P=0.00154419367163
11  OAOK  -30                                     P=0.00172564863298
12  IAKAO  10                                     P=0.00192158970554
13  K  -30                                        P=0.0021883836389
14  LLEEI  -30                                    P=0.00227643959625
15  K  -30                                        P=0.00277004501401
16  AAO  10                                       P=0.00286211178505
17  AAKKEAEI  -30                                 P=0.00300056389594
18  AOKEI  -30                                    P=0.0032298901055
19  E  -30                                        P=0.00349178675082
20  IKO  30                                       P=0.00361844197848
21  LO  30                                        P=0.00495505661294
22  IO  30                                        P=0.00669244491744
23  L  -30                                        P=0.0088041142107
24  ILOAIKAO  30                                  P=0.01012606158883
25  K  -30                                        P=0.01932950899755
26  AO  -10                                       P=0.01970467326663
27  EILO  30                                      P=0.01919669243736
28  L  -30                                        P=0.03157453914427
29  EKLOOO  -20                                   P=0.03466295260382
30  ILK  30                                       P=0.03014218816284
31  ILO  .                                        P=0.04155733377666
.......................................................................
Tämä on samalla tuloslistaus, joka jäljentyy suoraan toimituskenttään.
Todennäköisyysarvioiden muutoksista käyttäjä voi päätellä, kuinka
hyvin hänen pisteytyksensä toimii eli samalla kuin ohjelma oppii
(muuntamalla siirtymätodennäköisyyksiä vastausten mukaan; huom.
vastauksella 0 mitään muutosta ei tapahdu) myös käyttäjä saattaa oppia
noiden muutosten perusteella, miten käyttää arvosteluasteikkoa.

Tässä tapauksessa onnistuttiin saamaan etsitty sana jo yrityksellä 31.
Sillonkin onnistumisen todennäköisyys oli vain noin 0.04,
mutta se ei kerro koko totuutta. Onnistuminen olisi voinut tapahtua
jo aikaisemminkin. Tässä kokeessa todennäköisyys sille, että
onnistutaan 31 ensimmäisen kysymyksen aikana on selvästi suurempi
eli yli 0.23 (Lukija saa itse selvittää, miten tämä lasketaan.)

Vertailun vuoksi todettakoon, että jos käyttäjä ei olisi opettanut
ohjelmaa (eli olisi antanut aina vain vastauksia 0), onnistumis-
todennäköisyys yrityksellä 31 oli ollut edelleen alkuperäinen
0.00065 ja vastaava todennäköisyys 31 ensimmäisen kysymyksen aikana
noin 0.02 . Tässä tapauksessa tarvittaisiin yli 400 yritystä,
ennenkuin päästäisiin "onnistumiskertymässä" tasolle 0.23.

 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
KILPATEHTÄVÄ
============
Yritä saada sukro /SANO-SANA sanomaan mahdollisimman vähin yrityksin
1) sana SATTUMA, 2) sana SURVO seuraavissa tilanteissa:

......................................................................
SATTUMA:
RND=rand(1000011)
STATES=AMSUT
/SANO-SANA SATTUMA
......................................................................
Tässä tapauksessa ensimmäisen kysymys tulee olemaan:
1  SA?      *                                     P=0.00000056953125

......................................................................
SURVO:
RND=rand(1000082)
STATES=AEHIJKLMNOPRSTUV
/SANO-SANA SURVO
......................................................................
Tämä vuorostaan tulee alkamaan kysymyksellä
1  UPI?      *                                    P=0.00000007543713

Ratkaisut tulee saada erillisessä viestissä lähetetyllä SANO-sukrolla.
Satunnaislukugeneraattoreiden siemenlukuja ei saa muuttaa.

Lähettäkää ratkaisunne (eli siis sukron antamat sanojen ja niiden
arvioiden listaukset) minulle sähköpostina (seppo.mustonen@survo.fi)
15.1.2003 mennessä.
Parhaista ratkaisuista eli
1) lyhyimmästä yhdistetystä ratkaisusta (SATTUMAn ja SURVOn kysymysten
   määrä yhteenlaskettuna),
2) lyhimmästä SATTUMA-ratkaisusta,
3) lyhimmästä SURVO-ratkaisusta
kustakin erikseen ratkaisija tulee saamaan palkinnoksi
Olli Mustosen uuden Sibeliuksen pianoteoksia sisältävän CD-levyn.
Kukin ratkaisija voi saada vain yhden palkinnon, jolloin seuraavaksi
parhaat ratkaisutkin saattavat päästä palkinnoille.

Tulokset ym. muuta tietoa tulen kertomaan tässä keskusteluryhmässä
parin päivän sisällä kilpailun päättymisestä.
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Kilpailuun kannattaa osallistua, vaikka ei olisikaan selvillä esim.
todennäköisyyslaskennan tai sukrokielen tuntemisen mahdollisista
eduista.
Puhtaalla intuitiolla ja kokeilemalla omillakin esimerkeillä
saattaa päästä hyviin ratkaisuihin.
Kannattaa kuitenkin harkita, olisiko joistain Survon ominaisuuksista
apua tehtäviä ratkaistaessa.

......................................................................
Tehtävien ratkaiseminen edellyttää, että käytössäsi on SURVO MM.
Koska ratkaiseminen ottaa aina jonkin verran aikaa, ilmaisversio
ei riitä näihin tehtäviin.

Saat SANO-sukron käyttöösi erillisestä viestistä "SANO-sukrot"

Vastaukset:

Survo-keskustelupalstan (2001-2013) viestit arkistoitiin aika ajoin sukrolla, joka automaattisesti rakensi viesteistä (yli 1600 kpl) HTML-muotoisen sivukokonaisuuden. Vuoden 2013 alusta Survo-keskustelua on jatkettu entistäkin aktiivisemmin osoitteessa forum.survo.fi. Tervetuloa mukaan!

Etusivu  |  Keskustelu
Copyright © Survo Systems 2001-2013. All rights reserved.
Updated 2013-06-15.