Sommige problemen zijn zelfs voor een supercomputer te ingewikkeld. Brute rekenkracht is dan niet genoeg om alle benodigde sommen te berekenen. Computers gebaseerd op DNA-moleculen zouden uitkomst kunnen bieden.
Zelfs de simpelste vermenigvuldiging is voorlopig nog veel te ingewikkeld. De juiste oplossing van het sommetje “3 + 1” kostte twee dagen hard werken in het laboratorium. Wie naar de eerste resultaten van DNA-computers kijkt, ontkomt niet aan een lichte twijfel over de toekomstmogelijkheden.
Toch zijn de makers van de eerste DNA-computers enthousiast: hun chemische machines, met geheugens van DNA-moleculen in plaats van silicium-chips, zouden in de toekomst problemen kunnen oplossen die voor gangbare computers te hoog gegrepen zijn.
Een mijlpaal, noemen ze het jongste resultaat in het nog pionierende onderzoeksveld. In een laboratorium, en niet op een pc met chips en transistoren, losten evolutionair biologe Laura Landweber en haar collegas van de Amerikaanse Princeton-universiteit een heus schaakprobleem op. Een kleintje maar, op een schaakbord van drie bij drie velden, maar het principe werkt ook bij problemen van serieus formaat, aldus Landweber vorige maand in de Proceedings of the National Academy of Sciences (dl. 97, p. 1385).
Op het eerste gezicht is er weinig aanleiding om op zoek te gaan naar alternatieven voor computers van ouderwetse silicium-chips. De modernste supercomputer voert in een seconde ongeveer een biljoen (een 1 met twaalf nullen) instructies uit, en dat lijkt genoeg om zelfs de taaiste problemen binnen een redelijk tijdsbestek op te lossen.
Toch zijn er kwesties waar zelfs de grootste supercomputer de tanden op stuk bijt. Het zijn puzzels die in hun kleinste vorm nog wel te overzien zijn, maar waarvan de complexiteit exponentieel groeit bij grotere maten. Een beroemd voorbeeld van zon probleem is dat van de handelsreiziger: langs welke route bezoekt hij op één dag alle steden waar hij zijn product wil verkopen, zonder een van de steden daarbij tweemaal te moeten passeren?
Met vijf steden op de landkaart kan een gewone computer dat probleem nog wel aan. Maar met tien steden wordt het aantal benodigde berekeningen al veel meer dan twee keer zo groot. Bij honderd steden loopt het aantal potentiële oplossingen volledig uit de klauwen, omdat elke optie één voor één, in serie, moet worden nagetrokken.
Het is deze eindige rekenkracht waarop bijvoorbeeld de beveiliging van versleuteld Internetverkeer is gebaseerd: de versleuteling geldt als veilig wanneer zelfs de snelste computer maanden nodig zou hebben om de één biljard (een 1 met 15 nullen) mogelijke oplossingen uit te proberen.
Traditionele computers zijn, kortom, goed in het snel achter elkaar oplossen van een beperkt aantal moeilijke sommen. Maar bij problemen waarvoor oneindig veel eenvoudige sommen moet worden gemaakt, loopt het spaak.
In 1994 zorgde de Amerikaanse computerdeskundige Leonard Adleman dus voor een kleine sensatie: hij spoorde een geldige route langs zes steden op, niet op zijn pc, maar met een reageerbuis vol DNA-moleculen.
Adleman hanteerde methoden die in erfelijk onderzoek heel gebruikelijk zijn. Die methoden gebruiken het vermogen van twee identieke DNA-moleculen elkaar feilloos te vinden, ook al zijn ze verstopt temidden van biljoenen andere moleculen. Die biologische truc, zag Adleman in, is in wezen een parallelle berekening: wanneer alle potentiële oplossingen van een probleem in DNA-codes zouden kunnen worden opgeslagen, dan zou een ‘DNA-computer’ in die oceaan van mogelijke antwoorden de juiste kunnen vinden. Zo’n biologische computer, meende Adleman, zou oneindig ingewikkelde problemen snel tot een goed einde kunnen brengen.
Het schaakprobleem van Laura Landweber was weer een stapje ingewikkelder dan het handelsreizigersprobleem. De vraag die Landweber wilde oplossen was: op welke manieren kun je een schaakbord van drie bij drie velden vullen met schaakstukken, zonder dat één van die stukken een andere via de paardensprong aanvalt: twee stappen vooruit, één opzij.
In theorie bestaan 512 manieren om een schaakbord van drie bij drie te vullen: elk veld is óf leeg óf bevat een schaakstuk. Landwebers truc was eerst al deze mogelijke oplossingen te genereren, om vervolgens alleen díe eruit te pikken die aan de gestelde voorwaarde voldoen.
In de ingenieuze procedure werd elk veld van het schaakbord voorgesteld door een stukje DNA met een unieke code, vijftien erfelijke letters lang. Elk van de codes voor de negen velden kende bovendien twee varianten: `leeg of `met paard. Door de negen stukjes DNA scheikundig aaneen te rijgen, en bij elke stap de twee varianten aan de reageerbuizen toe te voegen, ontstond als vanzelf een mengsel van 512 soorten lange DNA-moleculen — voor elke mogelijke oplossing één.
In plaats van in het mengsel te zoeken naar goede oplossingen, zoals Adleman had gedaan, koos Landweber voor het omgekeerde: ze gooide ongeldige oplossingen weg, net zolang tot alleen geldige overbleven.
Voor het weggooien gebruikte ze een enzym dat DNA-moleculen aan flarden knipt, maar daarbij heel selectief te werk gaat: alleen strengen waarin een bepaalde code voorkomt, gaan eraan; de rest blijft intact. Ongeldige uitkomsten konden zo worden vertaald in chemische reacties, die op het mengsel van DNA-moleculen worden losgelaten.
Als op het schaakbord veld A1 leeg is, bijvoorbeeld, mag op de velden B3 en C2 een paard staan. Maar als op A1 een paard staat, moeten zowel B3 als C2 leeg zijn. Vertaald in laboratorium-instructies gaat het aldus: “Verdeel het mengsel over twee reageerbuizen. Vernietig in buis 1 alle DNA-moleculen met de code voor paard op A1 (in deze buis blijven dus alle oplossingen met een leeg A1-veld over). Vernietig in buis 2 alle DNA-moleculen met de codes voor A1 leeg, paard op B3 en paard op C2 (in deze buis blijven dus alle oplossingen met alléén een paard op A1 over). Voeg de inhoud van beide buizen weer samen, en ga verder met de regels voor veld A2.
Nadat Landweber de procedure voor alle negen velden had afgewerkt, resteerden in de laatste reageerbuis, als het goed was, alleen nog DNA-moleculen die aan alle eisen voldeden. Bij wijze van steekproef ontcijferde ze 43 DNA-moleculen uit het mengsel, en vertaalde die terug naar schaakborden met paarden. En inderdaad: op één na behoorden ze allemaal tot de collectie van 94 mogelijke goede oplossingen; die ene bevatte een paard op een plek waar geen paard hoorde.
Dat er kleine fouten kunnen optreden, bijvoorbeeld door spontane veranderingen in de lettervolgorde in het DNA, is maar één van de beperkingen van het rekenen met DNA. Een andere is dat de procedures in het laboratorium — zeker in de prille fase waarin het onderzoek verkeert — tijdrovend, ingewikkeld en zeer specifiek zijn. Anders dan een PC, die in een handomdraai voor duizenden verschillende taken valt te programmeren, zal een DNA-computer altijd een star en onhandig monster blijven.
Nog lastiger voor het nog jonge onderzoeksveld is, dat ook DNA-computers de grens van hun mogelijkheden kunnen bereiken. Zo kan het probleem van de handelsreiziger, in het klein door Adleman opgelost, niet eindeloos worden uitgebreid. Niet een exponentieel toenemende rekentijd, maar een exponentieel toenemende hoeveelheid DNA, nodig om alle mogelijke oplossingen te coderen, vormt nu de beperking. Om een handelsreiziger te helpen die tweehonderd steden wil aandoen, zo is al eens berekend, zou Adleman meer DNA nodig hebben dan het gewicht van de aarde.
Maar binnen die grenzen liggen voor DNA-computers genoeg uitdagingen te wachten. Computerspecialist Richard Lipton, één van de onderzoekers die met Landweber het schaakprobleem ophelderde, heeft voorgesteld om de Data Encryption Standard, de computersleutel waarmee in Amerika overheid en banken hun geheimen bewaren, met een DNA-computer te kraken. Gemeten aan het aantal benodigde DNA-moleculen zou dat, meent Lipton, net mogelijk moeten zijn.
Misschien is het te hopen dat het hem lukt. In een wereld waarin dode silicium-chips steeds meer te zeggen krijgen, zou dat voor levende wezens nog een beetje een opsteker zijn.