Thursday, October 25, 2007

Podobně programátoři využívají digitální podstatu počítačů. Jejich programy jsou posloupnostmi logických instrukcí, které obvody počítače převádějí do skupin logických nul a jednotek. Evoluci, kterou jsou řízeny genetické algoritmy, lze modelovat pouze ve virtuálním prostředí programovacích jazyků.
Thompson si položil otázku, co se stane, když evoluce bude působit přímo na hardwaru. Mohly by evoluční principy uspořádat elektronické součástky stejným způsobem, jako biochemické struktury v živých organismech? Co se bude dít, když umožníme evolučním procesům překonat omezení, která ve svém myšlení mají lidé? Odpověď na tuto otázku lze nalézt jen tehdy, pokud se podaří zkombinovat "jemné" procesy biologické evoluce s "hrubým" světem křemíkových čipů. Thompson nalezl řešení v tzv. polem programovatelných hradlových polích FPGA (field-programmable gate array), v křemíkových čipech velmi vysoké integrace VLSI.
V běžném mikroprocesoru jsou tranzistory na čipu propojeny do pevných logických hradel, která zpracovávají data. V polích FPGA se propojení logických hradel může měnit. Tranzistory jsou zde uspořádány do polí "logických buněk" a zavedením zvláštního programu do konfigurační paměti čipu lze nastavit každou buňku do funkce některého logického hradla a buňky vzájemně propojit. Tímto způsobem se funkce pole FPGA může změnit např.ze zesilovače na telefonní modem.
Thompson využil standardní genetický algoritmus pro vývoj konfiguračního programu pro pole FPGA, který by překonal zapojení vytvořené člověkem. Použil pouze 100 logických buněk a pomocí evolučních mechanismů vyvinul obvod, který byl schopen rozlišovat mezi dvěma tóny o kmitočtech 1 kHz a 10 kHz.

Labels: