Читать «Знание - сила, 1998 № 05(851)» онлайн - страница 43

Журнал «Знание-сила»

В прошлом веке монах Мендель скрещивал бобовые растения, в нашем — Мичурин делал опыты на плодовых деревьях, селекционеры в разных странах выводят новые породы животных, сочетая выбранные качества родителей. А можно ли проводить отбор и скрещивание транзисторов и других электронных приборов? Звучит фантастично, но опыты уже начались...

Транзисторы в обычном микропроцессоре соединены в логические цепи, выполняющие математические операции. В случае FPGA взаимосвязи между элементами могут изменяться по желанию. В них загружается специальная программа, которая организует схему связей. Изменяя программу, можно получить совершенно другой чип — от усилителя до модема.

Именно в такой схеме Томпсон решил применить генетический алгоритм и посмотреть, что за схемы получатся. При этом он поставил задачу, в принципе невыполнимую для конструктора-человека: всего из сотни логических элементов создать схему, способную различать частоту в один и десять килогерц.

Томпсон создал 50 программ, состоящих из последовательности нулей и единиц, и вводил их в компьютер. После этого он проверял, как образовавшаяся электрическая схема разделяет разные частоты. В первом поколении самым лучшим результатом стал устойчивый сигнал 5 вольт независимо оттого, что было подано на вход. После проверки и выбора «лучших представителей» Томпсон «скрещивал» программы и проводил в них «мутации». Скрещивание — это просто соединение половины одной программы с половиной другой. Мутация — это перестановка одной из пар «0» и «1» местами. После этих «эволюционных» шагов процесс повторялся.

В поколении 220 лучший образец выдавал на выходе сигналы, аналогичные тем, что подавались на вход — волны в 1 и 10 килогерц, — до желаемого результата явно было далеко. К поколению 650 входной сигнал частотой в 1 килогерц давал почти то, что нужно. — высокий уровень на выходе, а 10 килогерц проходил до выхода без изменения. После 1400 поколений выходной сигнал был, как правило, выше для одного входа, чем для другого. В поколении 2800 два сигнала уверенно различались, но выходные имели некоторые неровности и лишь в 4100 все уже было идеально. После того как удалось получить схему, различающую две частоты, нет никаких преград на пути к различению слов «пошли» и «стоп».

Одним из очень важных элементов традиционного компьютера всегда служат внутренние часы, которые задают единый ритм всему происходящему. А схема Томпсона совершала все свои эволюции и последующие действия безо всяких часов. Как же шел этот необычный процесс?

Исследуя конечную схему, Томпсон обнаружил, что входной сигнал многократно путешествует по сложной схеме колец обратной связи. Он предположил, что. может быть, в этих кольцах создается задержанный сигнал, чтобы потом его сравнивать с другим. «Но, честно говоря, у меня нет ни малейшего представления, как он работает на самом деле», — признается Томпсон. Нет сомнения лишь в том, что FPG А работают аналоговым образом: вплоть до самых последних поколений на выход выдавался сигнал, аналогичный входу, а не сочетание нулей и единиц.