Главная arrow Генетические алгоритмы
Генетические алгоритмы

Нейронные сети были созданы в результате наблюдения за естест­венными процессами, происходящими в нервной системе живых су­ществ, и попыток воспроизведения этих процессов. Термин нейрон, обозначающий основной исполнительный элемент искусственных нейронных сетей, был непосредственно заимствован из теории при­родных нервных систем.

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

Идею генетических алгоритмов высказал Дж. Холланд в конце шестидесятых - начале семидесятых годов XX века. Он заин­тересовался свойствами процессов естественной эволюции (в том числе фактом, что эволюционируют хромосомы, а не сами живые су­щества). Холланд был уверен в возможности составить и реализо­вать в виде компьютерной программы алгоритм, который будет ре­шать сложные задачи так, как это делает природа - путем эволюции . Поэтому он начал трудиться над алгоритмами, оперировавшими по­следовательностями двоичных цифр (единиц и нулей), получившими название хромосом . Эти алгоритмы имитировали эволюционные про­цессы в поколениях таких хромосом. В них были реализованы меха­низмы селекциии репродукции, аналогичные применяемым при есте­ственной эволюции. Так же, как и в природе, генетические алгоритмы осуществляли поиск «хороших» хромосом без использования ка­кой-либо информации о характере решаемой задачи. Требовалась только некая оценка каждой хромосомы, отражающая ее приспособ­ленность . Механизм селекциизаключается в выборе хромосом с на­ивысшей оценкой (т.е. наиболее приспособленных), которые репроду­цируют чаще, чем особи с более низкой оценкой (хуже приспособлен­ные). Репродукцияозначает создание новых хромосом в результате рекомбинации генов родительских хромосом. Рекомбинация - это процесс, в результате которого возникают новые комбинации генов. Для этого используются две операции: скрещивание, позволяющее создать две совершенно новые хромосомы потомков путем комбини­рования генетического материала пары родителей, а также мутация, которая может вызывать изменения в отдельных хромосомах.

В генетических алгоритмах применяется ряд терминов, заимст­вованных из генетики, прежде всего геныи хромосомы, а также попу­ляция, особь, аллель, генотип, фенотип .

Генетические алгоритмы применяются при разработке про­граммного обеспечения, в системах искусственного интеллекта, опти­мизации, искусственных нейронных сетях и в других отраслях знаний. Следует отметить, что с их помощью решаются задачи, для которых ранее использовались только нейронные сети. В этом случае генети­ческие алгоритмы выступают просто в роли независимого от нейрон­ных сетей альтернативного метода, предназначенного для решения той же самой задачи. Примером может служить задача коммивояже­ра, изначально решавшаяся при помощи сети Хопфилда. Ге­нетические алгоритмы часто используются совместно с нейронными сетями. Они могут поддерживать нейронные сети или наоборот, либо оба метода взаимодействуют в рамках гибридной системы, предназ­наченной для решения конкретной задачи. Генетические алгоритмы также применяются совместно с нечеткими системами.