Ljubavno pismo učenju

Drugi deo: Hrabri vizionari koji su izgradili digitalni svet
Alan Tjuring – pitanje koje je promenilo budućnost
VII. Kriptografija i rođenje računara
28. Alan Tjuring – pitanje koje je promenilo budućnost

Pre nego što je računar postao predmet na radnom stolu, uređaj u džepu i gotovo nevidljiva infrastruktura savremenog sveta, računanje je bilo zanimanje ljudi. Obučene grupe izrađivale su matematičke tabele, astronomski i balistički proračuni zahtevali su mnogo vremena, dok su postojeće mašine uglavnom bile konstruisane za unapred određenu vrstu zadatka. Promena namene često je podrazumevala drugačije povezivanje delova, novo podešavanje mehanizma ili izgradnju posebnog uređaja. Nedostajala je precizno oblikovana zamisao o jednoj opštoj mašini čija će se namena menjati unošenjem drugačijih instrukcija.

Alan Tjuring dao je toj budućnosti matematički oblik u radu iz 1936. godine, posvećenom problemu izračunljivosti. Posmatrao je čoveka koji računa sledeći konačan skup pravila i čitav postupak sveo na elementarne radnje: čitanje simbola, upisivanje novog znaka, pomeranje duž zamišljene trake i prelazak iz jednog stanja u drugo. Iz te misaone konstrukcije nastala je apstraktna mašina koja je omogućila da se o algoritmu govori sa dotad nedostignutom strogošću. Računanje je dobilo formalnu definiciju, pa su matematičari mogli da ispituju i njegove mogućnosti i njegove neizbežne granice.

Najdalekosežniji deo Tjuringove zamisli bila je univerzalna mašina, sposobna da oponaša bilo koju drugu mašinu iste vrste ukoliko dobije njen opis i odgovarajuće podatke. U toj ideji nalazi se jezgro računara opšte namene: isti fizički uređaj može obrađivati tekst, rešavati jednačine, prikazivati sliku, voditi poslovne evidencije ili upravljati komunikacionom mrežom zato što njegovo ponašanje određuje program. Instrukcije se mogu zapisati, čuvati, menjati i izvršavati kao simbolički sadržaj. Mašina je time prestala da bude zauvek vezana za jedan posao i postala prostor u kome se ostvaruju mnogobrojni postupci.

Isti rad pokazao je da univerzalnost računara ima jasnu matematičku granicu. Tjuring je razmatranjem problema zaustavljanja dokazao da ne postoji opšti algoritam koji bi za svaki mogući program i ulaz pouzdano utvrdio hoće li se izvršavanje završiti. Računarska moć zato obuhvata ogroman, ali omeđen prostor: sve što se može izraziti odgovarajućim algoritmom može se poveriti mašini, dok pojedina precizno formulisana pitanja ostaju nerešiva jedinstvenim mehaničkim postupkom. Savremena teorija izračunljivosti, analiza programa i formalna verifikacija i dalje se razvijaju unutar horizonta koji je taj dokaz otvorio.

Drugi svetski rat pretvorio je apstraktno pitanje o formalnim postupcima u borbu sa vremenom. Nemačka Enigma menjala je slova pomoću rotora, priključne table i svakodnevno utvrđivanih ključeva, stvarajući ogroman broj mogućih podešavanja. Presretnuta poruka imala je vojnu vrednost jedino ako se pročita dovoljno brzo da utiče na odluke o konvojima, podmornicama, vazdušnim operacijama ili rasporedu jedinica. Kriptoanaliza je zbog toga postala organizovano sužavanje prostora mogućnosti, u kome su matematička zamisao, tehnički uređaj i ljudsko poznavanje neprijateljskih procedura morali delovati zajedno.

Britanski rad u Bletchley Parku počivao je na presudnim predratnim dostignućima poljskih matematičara Marijana Rejevskog, Ježija Ružickog i Henrika Zigalskog, koji su rekonstruisali delovanje Enigme i razvili metode i uređaje za pronalaženje ključeva. Na tom temelju Tjuring je osmislio britanski pristup elektromehaničkoj „bombi”, zasnovan na pretpostavljenim delovima otvorenog teksta i logičkom proveravanju posledica mogućih postavki. Gordon Velčman uneo je dijagonalnu tablu kao izuzetno važno poboljšanje, dok su Harold Kin i inženjeri kompanije British Tabulating Machine zamisao pretvorili u pouzdane uređaje sposobne za svakodnevni rad.

Bombe nisu neposredno prevodile šifrovane poruke, nego su velikom brzinom odbacivale podešavanja koja su vodila do logičkih protivurečnosti. Preostale kandidate proveravali su kriptoanalitičari, a celokupan postupak oslanjao se na presretanje signala, pripremu pretpostavljenog teksta, rekonstrukciju ključeva, prevođenje i obaveštajnu procenu. Operaterke Ženske kraljevske pomorske službe upravljale su velikim brojem mašina, dok su hiljade ljudi obavljale međusobno zavisne zadatke u širokoj savezničkoj mreži. Tjuringov doprinos dobija punu veličinu upravo u toj celini, kao izuzetna sposobnost da se naizgled nesaglediv problem pretvori u niz postupaka koje mogu zajednički izvršavati ljudi i mašine.

Ratna kriptoanaliza nagovestila je obrazac koji će obeležiti čitavu digitalnu civilizaciju. Matematički model daje strukturu problemu, inženjerstvo obezbeđuje fizičko sredstvo, a organizacija povezuje podatke, uređaje i ljude u sistem koji mora pouzdano raditi iz dana u dan. Najbolji algoritam ostaje nemoćan bez kvalitetnog ulaza, kontrole grešaka, održavanja, pravilne raspodele odgovornosti i stručnog tumačenja rezultata. Isti odnos danas prepoznajemo u centrima za obradu podataka, računarskoj bezbednosti, naučnim simulacijama i sistemima mašinskog učenja.

Posle rata Tjuring je u britanskoj Nacionalnoj fizičkoj laboratoriji razradio Automatic Computing Engine, poznat kao ACE, jedan od najranijih detaljnih projekata elektronskog računara sa programom smeštenim u memoriji. Instrukcije i podaci trebalo je da budu predstavljeni digitalnim rečima i čuvani u istoj elektronskoj memoriji, tako da mašina automatski prelazi sa jedne operacije na drugu. Promena zadatka mogla je biti izvedena unošenjem novog niza instrukcija, bez fizičkog preuređivanja čitavog uređaja, čime je programiranje počelo da se izdvaja kao posebna intelektualna i inženjerska delatnost.

ACE je bio izrazito ambiciozan projekat za vreme u kome su elektronske komponente bile skupe i nepouzdane, a praktično iskustvo sa računarima sa sačuvanim programom veoma oskudno. Predviđena memorija koristila je živine linije kašnjenja, kroz koje su se informacije kretale u obliku impulsa, pa je trenutak pristupa određenoj reči zavisio od njenog položaja u tom kruženju. Tjuring je zato raspored instrukcija usklađivao sa fizičkim ritmom memorije kako bi sledeća naredba bila dostupna upravo kada je procesoru potrebna. Njegov projekat pokazivao je da algoritam, arhitektura i vreme izvršavanja pripadaju jednom problemu, što će kasnije postati središnja tema optimizacije računarskih sistema.

Potpuna verzija ACE-a nije odmah ostvarena, ali je manji Pilot ACE prvi program izvršio 10. maja 1950. godine i tada pripadao najbržim računarima na svetu. Tjuring je dotad napustio Nacionalnu fizičku laboratoriju, a Džim Vilkinson je predvodio tim koji je projekat priveo praktičnoj realizaciji. Iz tog razvoja proizašao je komercijalni English Electric DEUCE, dok su srodna rešenja uticala i na druge računarske projekte. Tjuringove zamisli širile su se preko inženjera i matematičara koji su ih proveravali, prilagođavali i ugrađivali u mašine namenjene nauci, industriji i upravljanju složenim sistemima.

U Mančesteru se Tjuring uključio u rad jednog od najvažnijih središta ranog elektronskog računarstva. Frederik Vilijams, Tom Kilbern, Džef Tutil, Maks Njumen i njihove kolege razvijali su računare sa programom smeštenim u memoriji zasnovanoj na katodnim cevima, od eksperimentalnog Manchester Babyja do sposobnijih mašina Manchester Mark 1 i Ferranti Mark 1. Tjuring je doprinosio matematičkom i programskom radu, pisao priručnik za programere i razmatrao kako se mašina može učiniti dostupnom ljudima koji nisu učestvovali u njenoj fizičkoj izgradnji.

U tom pionirskom dobu programer je morao razumeti raspored memorije, format instrukcija, način unošenja podataka, proveru rezultata i postupke pronalaženja grešaka. Pomoćne rutine, potprogrami i skraćeni načini zapisivanja naredaba postepeno su udaljavali programiranje od sirovih numeričkih kodova neposredno vezanih za elektronske sklopove. Iz sličnih nastojanja kasnije su izrasli asembleri, programski jezici, prevodioci, operativni sistemi i biblioteke softvera. Svaki novi sloj omogućavao je da se pažnja sa detalja uređaja pomeri prema problemu koji čovek želi da reši.

Univerzalna mašina, ratno sistematsko pretraživanje i posleratni elektronski računari bili su različiti izrazi iste duboke zamisli: složen postupak može se razložiti na konačne i proverljive korake, predstaviti simbolima i poveriti uređaju koji ih dosledno izvršava. Kriptoanaliza je pokazala kako se ogroman prostor mogućnosti smanjuje logičkim eliminisanjem, ACE kako instrukcije mogu živeti u memoriji zajedno sa podacima, a mančesterski rad kako se fizička mašina preobražava u sredstvo koje mogu programirati čitave zajednice korisnika.

Savremeni računar ostaje isti uređaj dok prelazi sa obrade fotografije na bankarsku transakciju, sa video-poziva na naučnu simulaciju ili sa pretraživanja interneta na upravljanje industrijskim procesom. Virtuelne mašine oponašaju druge računarske sisteme, emulatori pokreću programe napravljene za nestale platforme, dok računarski oblaci omogućavaju da se ista infrastruktura neprestano preuređuje prema promenljivim potrebama. U svim tim slojevima živi načelo univerzalnog izvršavanja, oblikovano pre nego što su postojali tranzistori, mikroprocesori i globalne mreže.

Bletchley Park ostavio je i trajnu lekciju računarskoj bezbednosti. Snaga šifre zavisi od matematičke konstrukcije, ali i od načina na koji se ključ čuva, kako se sistem koristi, koliko su procedure dosledne i kakve tragove ostavljaju ljudske navike. Savremeni stručnjaci zato proučavaju protokole, konfiguracije, ponavljanja, bočne kanale i operativne greške jednako pažljivo kao teorijsku snagu algoritma. Automatizovani alati mogu proveriti milione mogućnosti, ali njihov uspeh i dalje zavisi od razumevanja sistema, podataka i ponašanja ljudi koji tim sistemom upravljaju.

Nasleđe ratnog računarstva istovremeno zahteva moralnu budnost. Obrada podataka, presretanje komunikacija, automatizovano odlučivanje i razbijanje zaštite mogu služiti odbrani i javnom interesu, ali ista sredstva mogu omogućiti masovni nadzor, političku kontrolu i ugrožavanje privatnosti. Računska moć ne određuje sopstvenu svrhu, pa odgovornost ostaje na ljudima i institucijama koje biraju kako će je koristiti, ko će nadzirati njihov rad i kakvu će zaštitu imati osobe čiji podaci ulaze u sistem.

Tjuring nije sam izgradio savremeni računar, niti se istorija digitalnog sveta može svesti na jednu neprekinutu liniju njegovih izuma. Njegov teorijski rad pripadao je širem matematičkom traganju koje je uključivalo Alonza Čerča i druge logičare; britanska kriptoanaliza oslanjala se na poljske prodore, Velčmanova poboljšanja, Kinovo inženjerstvo i rad hiljada učesnika; Pilot ACE ostvarili su Vilkinson i tim Nacionalne fizičke laboratorije, dok su mančesterske mašine izgradili Vilijams, Kilbern, Tutil i njihove kolege. Tjuringova posebna veličina nalazila se u retkoj sposobnosti da sve te različite probleme sagleda kao oblike obrade simboličkih informacija i da između apstraktne ideje i stvarne mašine otvori put kojim su drugi mogli dalje da grade.

Kada danas dodirnemo ikonu i pokrenemo program, jedva primećujemo neobičnost tog čina. Jedan uređaj postaje knjiga, karta, studio, arhiva, laboratorija, poštansko sanduče ili sagovornik samo zato što je dobio drugačiji niz instrukcija. Između zamišljene trake iz 1936. godine i savremenog digitalnog sveta nalaze se decenije rada matematičara, elektroničara, kriptoanalitičara, programera, operaterki, institucija i industrijskih timova. Tjuring je među prvima jasno pokazao kako se promenljivost mašine može razumeti, gde se završava moć algoritma i na koji način formalna zamisao može postati temelj nove civilizacije.