Ada algoritmusa

Ada algoritmusa

 Avagy hogyan indította el Lord Byron lánya a digitális kort a számok költészete által

James Essinger könyve új perspektívából mutatja be Lady Ada Lovelace életét, Charles Babbage-dzsel kötött barátságát, és azt a komplex társadalmi szövetet, amely a 19. század közepén egyrészt lehetővé tette forradalmian új gondolatok találkozását, másrészt viszont behatárolta azokat a lehetőségeket, amelyek Lady Ada tehetségének kibontakoztatásához rendelkezésére álltak.

Lady Ada Lovelace munkája mennyiben tekinthető önálló és eredeti kontribúciónak, és valóban jogosan tekintjük-e őt a világ első programozójának? Az analitikus gépről írt gondolatai miért nem váltottak ki szélesebb körű hatást kortársai között, melyek voltak azok a pontok, ahol áttörést lehetett volna elérni, és milyen akadályok álltak annak az útjában, hogy a digitális korszak majdnem egy évszázaddal korábban megkezdődjön? Essinger könyve ezeknek a kérdéseknek a megválaszolását tűzi ki célul.

Az első három fejezet a társadalmi és családi hátteret vázolja fel. Ada a botrányos életű romantikus költő, Lord Byron és egy vagyonos, művelt és a tudományok iránt érdeklődő, de nem nemesi származású hölgy, Annabella Milbanke gyermeke volt. Apja botrányai miatt Lady Ada már születésétől fogva a nyilvánosság reflektorfényében állt, és életének megértéséhez érdemes látnunk a nemesi osztály dekadens életstílusát, de úgy érzem, a könyv ezen a ponton túlságosan is elveszik a részletekben, amelyek nem igazán kapcsolódnak Ada tudományos munkásságához. Lord Byron szerelmi élete nagyobb részletességgel és terjedelemben kerül bemutatásra, mint maga a címadó algoritmus, ami számomra sokat levon a könyv értékéből.

A következő három fejezet Ada gyerekkorát és neveltetését mutatja be. Narcisztikus apja – nemesi címének átörökítésén és apai örökségének elherdálásán túl – egyáltalán nem játszott szerepet a nevelésében, ezzel szemben anyja, Lady Byron manipulatív és perfekcionista módon kontrollálta élete minden aspektusát, különös figyelmet fordítva tanulmányaira, és ezen belül matematikai képzésére. Saját széleskörű képzettségétől és amatőr matematikusi érdeklődésétől vezérelve sok pénzt költött lánya taníttatására egy olyan korban, amikor a nők számára általánosságban nem volt elérhető az oktatás. Lady Byron célja viszont nem az volt, hogy ezt a tudást Ada a tudomány, vagy a saját szellemi kiteljesedésének szolgálatába állítsa, hanem hogy egy tökéletes úrhölgyet képezzen lányából, aki azután egy nemesi házasság révén még magasabb társadalmi rétegbe emelheti családját.

A kilencedik fejezet az ipari forradalom kontextusának megrajzolásáról szól. A gőzgép feltalálása, az ipari munkafolyamatok hatékonyságának növelése az Adam Smith által leírt munkamegosztással, és a textilipar automatizálása különösen nagy hatással volt Charles Babbage és Ada gondolkodására. A Jacquard-féle lyukkártyával irányított automatikus szövőszék annyira lenyűgözte Babbage-et, hogy egy kisebb vagyont áldozott egy olyan selyem szőttesért, ami 24000 lyukkártya segítségével magát a feltalálót ábrázolja: ez a világ első digitalizált portréjának tekinthető.

A világ legelső digitalizált portréja a feltalálóról selyemből a Jaquard-féle automatikus szövőszéken 1839-ben 24 000 lyukkártyával készült (Science Museum, London) 

A számítógép története a tizedik fejezetnél, Charles Babbage bemutatásával kezdődik. Babbage egy gazdag bankár gyermekeként kellemes jólétben tudott kedvenc időtöltéseinek: a matematikának és a mechanikus számológép megalkotásának hódolni. Egyetemi évei alatt John Herschell-el együtt azon munkálkodtak, hogy a differenciálszámításhoz használt Newton-féle jelrendszert a hatékonyabbnak tartott Leibniz-féle jelrendszerre cseréljék, ami maradandó sikert hozott számára. Barátjával 1829-ben járt először Párizsban, ahol tudomást szerzett Gaspard de Prony báró munkájáról, aki a francia térképészeti szolgálatnak készített nagy pontosságú logaritmustáblázatokat az újonnan bevezetett metrikus rendszerhez. Ő is olvasta Adam Smith munkáját, és a táblázatok előállítását egy nagyon hatékony gyárhoz hasonlóan szervezte meg. A munkát három részre osztotta: a nagy matematikai tudást feltételező magas szintű tervezésre, az alapos gyakorlati tudást igénylő sarokszámok kiszámítására, és a csupán betanított munkát igénylő, ismétlődő összeadások sorozatává lebontható, sarokszámok közötti polinomiális interpolációra, amivel jelentősen párhuzamosította és felgyorsította a folyamatot.

Babbage-ben feltehetőleg ekkor fogalmazódott meg a mechanikus számítógép gondolata, amelynek differenciálgépnek keresztelt első változatán 12 éven át dolgozott. A differenciálgép egy n-ed fokú polinomiális függvény értékeit volt képes kiszámítani a 10-es számrendszerbeli egész számok sorozatára, és ezáltal automatizálni a logaritmustáblázatok előállításának mechanikus lépéseit. Egyre ambiciózusabb gépek terveivel állt elő, de végül csak egy hatjegyű, harmadfokú polinomok számítására képes prototípus készült el 1832-re, amely nem volt gyorsabb de Prony emberi kalkulátorainál.

Babbage és Ada barátságának kibontakozása ekkortájra tehető. A tizenhét éves Ada többször meglátogatta Babbage estélyeit, ahol látta a differenciálgép prototípusát működés közben, felismerte a találmányban rejlő lehetőségeket, és 1835-től rendszeresen levelezett a feltalálóval. Babbage időközben felhagyott a differenciálgép tökéletesítésével, és egy még általánosabb analitikus gép tervén kezdett el dolgozni. Ez már nem csak polinomiális, hanem tetszőleges függvény értékeinek kiszámítására is képes volt. Babbage a kézi adatbevitel helyett immár Jacquard-féle lyukkártyákkal képzelte el nemcsak az adatok, de a műveletek sorrendjének a bevitelét is, sőt a műveletek ismétlésére és kondicionális elágazásra is lehetőséget biztosított: emiatt tekinthető az első mai értelemben vett programozható számítógépnek.

A differenciálgép a gyakorlati felhasználás szemszögéből tekintve kudarcot vallott, a további fejlesztésekhez nélkülözhetetlen kormányzati támogatások elapadtak, Babbage pedig egyre jobban elszigetelődött. Ada érdeklődése viszont nőttön nőtt, ahogy egyre inkább megértette az analitikus gép jövőbemutató jelentőségét, Babbage pedig mentorként, tanárként és barátként támogatta őt.

Ada lelkesedése még azokban az években sem csökkent, amikor létrejött az anyja által vágyott főrangú házasság, amelynek első öt évében három egészséges gyermeknek adott életet.  Házastársi kötelezettségeinek eleget téve ismét matematikai tanulmányaiba vetette magát. Nagy benyomást tett rá Mary Somerville, a skót származású autodidakta matematikusnő pályája, aki nőként elsőként járt be elismert, széles körben népszerű és anyagilag is sikeres tudományos karriert az Egyesült Királyságban. Kiváló tehetsége volt abban, hogy a kor élenjáró tudományos fejleményeit a témában kevésbé jártasak számára is érthetővé tegye, a kor csillagászati, matematikai, földrajzi és biológiai tudását összegző művei évtizedekig a legnépszerűbb egyetemi tankönyvek közé számítottak. Az ő példáját követve vonódott be Ada abba a körbe, akik Babbage analitikus gépének működését próbálták meg érthetővé tenni és népszerűsíteni.

Babbage lyoni és torinói utazása során ismerkedett meg egy fiatal matematikussal, Luigi Federico Menabreával, akit annyira érdekelt az analitikus gép működése, hogy egy jól érthető, tömör összefoglalást írt róla franciául egy kevéssé ismert svájci tudományos folyóiratba. Noha ez a cikk sokkal meggyőzőbben magyarázta el, hogy mennyiben más az analitikus gép a differenciálgép elvén működő korai kalkulátoroktól, mint ahogyan azt maga Babbage képes volt artikulálni, de ez az írás valószínűleg teljesen feledésbe merült volna, ha Ada nem dönt úgy, hogy angolra fordítja. Babbage-nek annyira tetszett a fordítás, hogy rögtön egy önálló publikáció írására buzdította Adát, de ő Lady Byron elvárásainak és a kor előítéleteinek megfelelően nőként nem merte önálló munkaként prezentálni gondolatait. Ezeket végül részletes, az eredeti cikk terjedelmét messze meghaladó, de csak egy szerény monogrammal ellátott "Fordítói Jegyzetek" formájában publikálta. Ez a fordítás és a Jegyzetek az egyetlen önálló tudományos szöveg, ami Adától fennmaradt. Élete folyamán ugyan rengeteg levelet váltott kortárs gondolkodókkal, viszont ezek nagy részét anyja, Lady Byron az örökség feldolgozása során – Ada határozott kívánsága ellenére – szisztematikusan megsemmisítette.

A Jegyzetek alapján Adáról az analitikus gép működésének összes részletében rendkívül tájékozott, a matematika és csillagászat kortárs kérdéseivel kapcsolatban széleskörűen művelt amatőr kutató képe rajzolódik ki. A Jegyzetek célja, hogy közérthetően és meggyőzően illusztrálja az analitikus gép forradalmian új számítási képességeit, különös hangsúlyt fektetve konkrét alkalmazási példák részletes ismertetésére. Ezek közé tartozik a Bernoulli-számok kiszámítására szolgáló algoritmus, amely a világ első számítógépes programjaként híresült el.

A Bernoulli-algoritmus jelentőségét az adja, hogy a probléma bonyolultsága lényegesen meghaladja a differenciálgép által kezelhető polinomiális sorozatokét. Ada ehhez olyan alapvető programozási technikákat ír le elsőként, mint például a ciklus (ehhez egy új jelölésrendszert vezet be), ciklusok egymásba ágyazása, és a változókra referencia szerint való hivatkozás. Az algoritmus egésze pedig azt a technikát illusztrálja, hogy hogyan lehet egy rekurzív formulát hatékony ciklusos algoritmussá alakítani. Ada mindeközben folyamatosan szem előtt tartja a gép memória- és programtárhely korlátait, és pontos becslést ad a végrehajtáshoz szükséges lyukkártyák számára.

Mindez annyira precíz és részletes megértést feltételez az analitikus gép működéséről, hogy többen kétségbe vonták Ada szerzőségét, és Babbage-ot tartják a valódi szerzőnek. Essinger a fennmaradt életrajzi töredékek alapján határozottan eloszlatja ezeket a kétségeket, de szerintem ez vita szem elől téveszti a lényeget: Lady Ada Lovelace volt az, aki képes volt elsőként felismerni a programozható számítógép korszakalkotó jelentőségét, és érthetően elmagyarázni a programozás alapvető fogalmait, úgy, ahogyan ezt Babbage maga soha nem volt képes megtenni.

Mi lett volna, ha Ada tudományos pályáját nem szakítja félbe súlyos betegsége és halála? Ha az analitikus gép a kor technikai színvonalán nem bizonyul megvalósíthatatlannak? Ha Babbage jobban támaszkodott volna Ada segítségére a szükséges kormányzati támogatás megszerzéséhez? Ha a társadalmi és családi háttér elfogadóbb lett volna a nők professzionális tudományos karrierjével szemben?

Nem hinném, hogy ezekre az író által felvetett tényellentétes kérdésekre egy ilyen egyedi esetben válaszolni tudnánk. Számomra a történet lényege, hogy Ada, Mary Somerville-hez hasonlóan egy nagyon egyenlőtlen és nők számára különösen hátrányos társadalmi kontextus ellenére, kiemelkedő szorgalma és tehetsége révén volt képes kortársai közül kiemelkedni. Az anyagi jólét ugyan a korban egyedülálló hozzáférést biztosított magas színvonalú oktatáshoz, de a vagyonnal járó kötelezettségek nagyon leszűkítették Ada lehetőségeit, amit csak kitartó törekvéssel tudott ellensúlyozni.

Lady Ada nem véletlenül vált a nők kutatói és mérnöki karrierjét népszerűsítő mozgalom (STEM - Science, Technology, Engineering and Mathematics) klasszikus ikonjává. Ha olyan társadalmi tereket hozunk létre, ahol a nőknek lehetőségük nyílik tudományos és technikai tehetségük kibontakoztatására akkor is, ha nem privilegizált társadalmi réteghez tartoznak, ha pozitív szerepmodellekkel ellensúlyozzuk a hagyományos előítéleteket, ha csökkentjük az oktatáshoz, munkahelyekhez való hozzáférés korlátait, az nem csak igazságosabb és egyenlőbb társadalmat eredményez, de olyan gazdasági és innovációs potenciált szabadít fel, amely korszakalkotó újításokhoz vezet.

Binzberger Viktor

Az írásban foglaltak kizárólag a szerző saját véleménye, nem tükrözik a szerző munkáltatójának vagy bármilyen más szervezetnek a nézetét vagy álláspontját.