Генетические алгоритмы как область новых информационных технологий

Секция систем автоматического проектирования

УДК 681.324-192

В.М. Курейчик

ГЕНЕТИЧЕСКИЕ АЛГОРИТМЫ КАК ОБЛАСТЬ НОВЫХ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ

Создание интеллектуальных ЭВМ с "дружественным" по отношению к пользователю математическим и программным обеспечениями (МО и ПО), переход от алгоритмов обработки данных к альтернативной технологии автоформализации профессиональных знаний позволит увеличить эффективность деятельности инженеров конструкторов и технологов. Все это должно быть связано с новой концепцией компьютерного интеллектуального интегрированного проектирования и производства (КИИПП). Первой и основной частью КИИПП является обобщенная комплексная система — интеллектуальная САПР (ИНТСАПР) — гибкое автоматизированное производство. Создание таких комплексов предусматривает разработку общей архитектуры КИИПП и общего математического обеспечения (МО) с единой базой знаний, формации за приемлемое время. В этой связи становится необходимым модернизировать структуру традиционных САПР, построенных на основе универсальных ЭВМ, пакетов прикладных программ и прикладного оборудования.

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

Впервые термин эволюция был использован в биологии швейцарским ученым Ш. Бонне (1762 г.). Слово эволюция произошло от латинского развертывание и является синонимом понятия развитие. Под эволюцией понимаются медленные, постепенные количественные и качественные изменения объекта. При этом каждое новое состояние объекта должно иметь по сравнению с предшествующим более высокий уровень развития и организации.

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

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

Слово "адаптация" произошло от латинского ас!ар1аио - прилаживание, приспособление. Сейчас под адаптацией понимается процесс приспособления строения и функций организмов и их органов к условиям среды. О том, что явление адаптации имеется в живой природе, было известно биологам прошлых веков.

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

Причем только отбор превращает мутационные сдвиги и изменения в адаптацию.

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

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

Чех Г. Мендель в 1885 году привел основные законы генетики. Они утвердили принцип дискретности в явлениях наследования и организации генетического материала, сосредоточив главное внимание на изучении закономерностей наследования потомками признаков и свойств их родителей.

Понятие гена, как наследственного задатка признака, ввел в 1909 году датчанин В. Иогансен. Слово ген происходит от греческого genos ~~ род, происхождение. В настоящее время ген - это элементарная единица наследственности, отвечающая за появление какого-либо признака. Гены, собранные в пределах одной хромосомы, составляют одну группу сцепления и передаются совместно. Совместное наследование признаков может нарушаться в результате кроссинговера (пересечения, скрещивания), ведущего к перераспределению генетического материала между гомологичными хромосомами. Наследственное разнообразие особей создается, с одной стороны, за счет рекомбинации генов при скрещивании, а с другой стороны, в результате изменения самих генов — за счет разнообразных мутаций.

В 1975 году Холланд в своей знаменитой работе [3] описал методологию для изучения натуральных и их применение для искусственных адаптивных систем. Сейчас это хорошо известная оптимизационная методология, основанная на аналогии процессов натуральной селекции в биологии. Биологическая основа для адаптационных процессов есть эволюция от одной генерации к другой, выполняющаяся путем исключения "слабых" элементов и оставления оптимальных или квазиоптимальных элементов. В книге Холланда содержится теоретический анализ класса адаптивных систем, в которых структурные модификации представляются последовательностями (стрингами) символов, выбранных из некоторого (обычно двоичного) алфавита. Поиск в поле таких представлений используют так называемые генетические алгоритмы (ГА). В настоящее время ГА широко применяются как эффективный поиск в задачах искусственного интеллекта, распознавания образов, проектирования СБИС, оптимизации структуры мостов, решении нелинейных уравнений, группировании тестовых данных и т.п. ГА основаны на натуральной селекции и "выживании наилучших".

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

элементов из множества заданных элементов Р={Р1, Р2, ... ,Рш}. Для каждой хромосомы Рі должна бьггь вычислена целевая функция Е(п), называемая эволюционной, где п - число элементов в хромосоме. Такие функции вычисляют относительный вес каждой хромосомы . Элементы і і={1, 2, ... , к} внутри каждой хромосомы могут располагаться в произвольном порядке. В каждой популяции хромосомы могут подвергаться действиям различных операторов.

При этом происходят процессы, аналогичные действиям, которые происходят в естественной репродукции. К основным операторам относят: кроссинговер (ОК), инверсию (ОИ), мутацию (ОМ), транслокацию (ОТ), сегрегацию (ОС), кроссмутацию (ОКМ).

Оператор кроссинговер применяется к двум хромосомам, называемым 1 и 2 родителями. Случайным образом в них выбираются точки пересечения и происходит обмен элементов между 1 и 2 родителями. В результате получаются две новых хромосомы Р'1 и Р'2, называемых 1 и 2 ребенок соответственно.

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

В работах [3-6] дана классификация различных генетических операторов. Отметим, что наибольшее применение нашли операторы крос-синговера. Кроме описанного, различают двухточечный, универсальный, циклический, частичного соответствия и другие ОК. Причем опыт применения ОК в технических задачах показывает, что необходима разработка модифицированных ОК, учитывающих "знания" о конкретной задаче.

Оператор инверсии, например, может выполнять перестановку элементов внутри хромосомы. Здесь из одного родителя можно получить подмножество детей.

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

Опишем теперь принципы использования генетических операторов при решении конструкторских задач САПР СБИС [6]. Традиционное решение задач проектирования топологии СБИС осуществляется последовательными или итерационными методами. Эти методы в основном используют поисковую оптимизацию когда происходит последовательное совершенствование одного начального варианта решения. В генетических алгоритмах, основанных на эволюционной стратегии поиска оптимального решения исследуют в качестве начального не одно, а несколько альтернативных решений, которые обрабатываются адаптированными к задачам САПР генетическими алгоритмами поиска. Механизм адаптации в таких алгоритмах состоит из следующих основных этапов:

• генерация новых решений, число которых ограничено в каждом новом поколении (популяции);

• оценка на предмет жизнеспособности каждого нового решения для включения его в популяцию;

• селективный отбор из популяции решений с лучшими оценками. Тогда основная идея использования генетических алгоритмов в

САПР может быть следующей. На основе случайных или направленнослучайных методов получают некоторые подмножества решений той или иной задачи САПР. Далее вводят (или вычисляют) эволюционную функцию, на основе которой ранжируют и сортируют все решения, отбрасывая "неперс-пективные".

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

Основные проблемы при реализации данной схемы генетического поиска следующие. Это найти оптимальный размер G популяции решений. Сейчас путем эксперимента найдено, что приемлемый G=n/2, где п - размер одной хромосомы. Кроме того, важная задача — определение достаточного числа генераций. Наибольшие затруднения вызывают вопросы управления процессом генетического поиска. При этом необходимо строить модифицированные генетические операторы, ориентированные на решаемые задачи, и определять оптимальную процедуру селекции, обеспечивающую выход из локальных оптимумов. При построении некоторого подмножества популяций появляется возможность эффективного использования параллельных вычислений на транспьютерах, гиперкубовых ЭВМ, многопроцессорных системах.

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

Временная сложность таких алгоритмов лежит в пределах O(otn)-0((in3), где сх, Р — коэффициенты; п - число входов алгоритмов. Это обещает перспективность использования генетических алгоритмов в САПР СБИС будущего.

ЛИТЕРАТУРА

1. Искусственный интеллект. Справочник в 3-х кн.; Под ред. Попова Э.В. М.: Радио и связь, 1990.

2. Большая советская энциклопедия. 3-е изд. М. Т. 1-30. 1970.

3. J. Holland. Adaptation in natural and artificial systems. Universyty of Michigan Press Ann Arbor USA, 1975.

4. D.E. Goldberd. Genetic Algorithms in search optimization and Machine Leoming. Addision-Wessley Publishing Company. Inc, USA 1989.

5. David L (Ed) Handbook of Genetic Algorithms. Van Nostrand Reinhoed, New Jork, USA 1991.

6. Курейчик В.М., Лебедев Б.К., Лях А.В. Проблемы эволюционной адаптации в САПР. Новинтех N 3, 1991, С. 26-29.