Турко О. Л.

Национальный горный университет

Системы искусственного интеллекта, основанные на генетических алгоритмах

 

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

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

1)  обрабатывают не значения параметров самой задачи, а их

закодированную форму;

2)  осуществляют поиск решения исходя не из единственной точки, а из их некоторой популяции;

3)  используют только целевую функцию, а не ее производные либо иную дополнительную информацию;

4)  применяют вероятностные, а не детерминированные пра­вила выбора.

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

Классический  генетический алгоритм со­стоит из следующих шагов:

1) инициализация, или выбор исходной популяции хромосом;

2) оценка приспособленности хромосом в популяции;

3) проверка условия остановки алгоритма;

4) селекция хромосом;

5) применение генетических операторов;

6) формирование новой популяции;

7) выбор «наилучшей» хромосомы.

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

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

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

Литература:

1. Рутковская, Д. Нейронные сети, генетические алгоритмы и нечеткие системы.— М., 2007.

2. Зубов А.В. Основы искусственного интеллекта для лингвистов: Учебное пособие — М., 2004.

3. Гаврилова, Т.А. Базы знаний интеллектуальных систем: Учебник. —  ПИТЕР, 2000.