Ritarin kierros

Historiallinen syvyys: Ratsun kierros on matemaattinen sarja, jossa ratsu käy shakkilaudan jokaisessa ruudussa tasan kerran. Se on sekä strateginen haaste että vapaa-ajan matematiikan klassinen ongelma.

 

Alkuperä:

Tämä ongelma ei ole läheskään uusi keksintö. Varhaisimmat tunnetut ratkaisut ovat peräisin 9. vuosisadalta, ja ne ovat peräisin Bagdadista kotoisin olevilta mestareilta, kuten Al-Adli ja As-Suli. Lisäksi 9. vuosisadan intialaisessa kirjallisuudessa kašmirilainen runoilija Rudrata osoitti tämän matemaattisen estetiikan teoksessaan Kavyalankara, jossa hän sävelsi runon, joka seurasi ritarin matkan kulkua.

 

Länsimainen kirjallisuus:

1300-luvulla Kastilian kuningas Alfonso X esitteli kuuluisassa Libro de los Juegos -kirjassaan (Book of Games) monimutkaisia ritarin liikkeisiin perustuvia manöövereitä. Ongelman nykyaikaisen matemaattisen perustan loi kuitenkin vuonna 1759 Leonhard Euler, jonka analyysi on nykyään tunnustettu yhdeksi graafiteorian kulmakivistä.

 

Ominaisuudet:

Suljettu (Re-entrant) kierros: Jos ratsu päätyy ruutuun, joka on täsmälleen yhden ratsun siirron päässä lähtöruudusta, ratsu voi aloittaa kierroksen välittömästi uudelleen.

 

Avoin kiertue:

Jos ratsu käy jokaisessa ruudussa, mutta päätyy ruutuun, josta se ei pääse lähtöpisteeseen yhdellä siirrolla.

8 kuningattaren ongelma: Dijkstra ja strukturoidun ohjelmoinnin synty

Max Bezzel esitti tämän ongelman vuonna 1848, ja se kiinnitti Carl Friedrich Gaussin kaltaisten nerojen huomion. 1970-luvulla yksi nykyaikaisen tietojenkäsittelytieteen isistä, Edsger W. Dijkstra, muutti sen “ohjelmointimanifestiksi”.

Dijkstran ja DFS:n yhteys

Hänen uraauurtavassa teoksessaan, Huomautuksia strukturoidusta ohjelmoinnista (1972) Dijkstra käytti 8 kuningattaren ongelmaa osoittaakseen, miten algoritmi voidaan rakentaa systemaattisesti prosessin avulla, jota hän kutsui “vaiheittaiseksi hienosäädöksi”.”

  • DFS ja takaisinkytkentä: Dijkstra määritteli menetelmän, jossa kuningatar asetetaan riviin ja laskeudutaan seuraavaan (Depth-First Search - DFS) ja palataan edelliselle askeleelle yrittämään eri vaihtoehtoa umpikujaan ajauduttaessa (Backtracking), puhtaimmaksi esimerkiksi strukturoidusta ohjelmoinnista.

Perääntymisen voima:

Dijkstran mukaan tämä lähestymistapa on ensimmäinen merkittävä virstanpylväs, kun “kokeile ja erehdy” -prosessia on jalostettu virheettömäksi loogiseksi sekvenssiksi, jonka avulla ko

Vehnä- ja shakkilautaongelma: eksponentiaalinen kasvu

Taru ja alkuperä:

Tarinan mukaan, kun shakin keksijä Sissa bin Dahir esitteli pelin Intian kuninkaalle, kuningas kysyi häneltä, minkä palkkion hän haluaisi. Sissa esitti näennäisen vaatimattoman pyynnön: “Haluan yhden vehnänjyvän shakkilaudan ensimmäisestä ruudusta, kaksi toisesta, neljä kolmannesta ja jokaisesta seuraavasta ruudusta kaksinkertaisen määrän edelliseen verrattuna.” Kuningas hylkäsi aluksi tämän pyynnön ajatellen, että kyse oli vain “kourallisesta vehnää”; kun laskeminen kuitenkin alkoi, kävi selväksi, että sen enempää aarrearkku kuin koko maailman vehnävarastotkaan eivät riittäisi täyttämään tätä vaatimusta.

Historiallinen ennätys: Ibn Khallikan (1256)

Ensimmäisen tunnetun kirjallisen merkinnän tästä kuuluisasta tarinasta teki vuonna 1256 tunnettu elämäkerturi ja historioitsija Ibn Khallikan. Ibn Khallikan ei sisällyttänyt tätä tapahtumaa teokseensa pelkkänä tarinana vaan todisteena siitä, miten matematiikka ylittää mielikuvituksen rajat.

Matemaattinen todellisuus:

Tämä shakkilaudan 64 ruutua koskeva pyyntö on puhtain esimerkki geometrisesta etenemisestä (eksponentiaalisesta kasvusta). Kunkin ruudun määrä lasketaan kaavalla seuraavasti 2n-1 . Vehnän kokonaismäärän antava yhtälö on seuraava:

 

S =


63

i=0

2i = 264 - 1

Tämän laskennan tuloksena saatava massiivinen luku on:

18,446,744,073,709,551,615

Miksi se on niin tärkeää?

  • Kasvun laajuus: Tämä määrä vastaa noin 2 000 kertaa maailman nykyistä vuotuista vehnän kokonaistuotantoa. 

Strateginen oppitunti: Tämä ongelma on ikivanha viisaus, joka opettaa johtajille ja strategioitsijoille, miten pienet muutokset (“kaksinkertaistuminen”) voivat ajan mittaan muuttua hallitsemattomiksi voimiksi.