Научная статья на тему 'Применение операции мутации в генетических алгоритмах канальной трассировки'

Применение операции мутации в генетических алгоритмах канальной трассировки Текст научной статьи по специальности «Математика»

CC BY
222
51
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Применение операции мутации в генетических алгоритмах канальной трассировки»

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

Определяем целевую функцию:

Е(А)а (изеёТгаек(А)+2)*С+Т(йаГУ'ег^8е0(А),

где С - число контактов; функция Шес1Тгаск:(А) возвращает число магистралей, занимаемых каналом, полученным при восстановлении из хромосомы А, а функция Т^а1¥е11;Зе§(А) возвращает длину вертикальных сегментов цепей в полученном решении. Длина вертикальных сегментов цепи определяется как расстояние между контактами и переходными отверстиями, которые соединяют вертикальные и горизонтальные сегменты. Например, для канала на рис.1 число занятых магистралей равно 4, длина вертикальных сегментов равна 22.

Данная методика определения целевой функции направлена на минимизацию, в первую очередь, ширины канала и во вторую - суммарной длины соединений.

После процесса селекции все хромосомы разбиваются по парам, и затем применяется операция кроссинговера с вероятностью Рс к каждой паре хромосом.

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

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

реализовали на языке Си++ для 1ВМ РС. Установки управляющих параметров были найдены эмпирически. Размер популяции М был выбран равным 50. Мы установили значение вероятности кроссинговера Рс равным 1. Была выбрана относительно высокая вероятность мутации Р]у[ 0.1, так как мутация в нашем случае вносит очень небольшие изменения в хромосому. Была применена "элитная" селекция, т.е. из популяции, полученной после проведения операций кроссинговера и мутации, выбирается М особей с наименьшим значением целевой функции. На стандартном потоке задач алгоритм показал высокое качество полученных решений. В первых пяти поколениях во всех случаях было получено решение с минимально возможным числом занятых магистралей. А после двадцати поколений отклонение от оптимального результата по длине соединений составило менее 1%.

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

УДК 659.512.2.011.5

В.Н. Давиденко

ПРИМЕНЕНИЕ ОПЕРАЦИИ МУТАЦИИ В ГЕНЕТИЧЕСКИХ АЛГОРИТМАХ КАНАЛЬНОЙ ТРАССИРОВКИ

Канальная трассировка - это один из этапов топологического проектирования СБИС. Задача канальной трассировки - это трассировка точно установленного списка цепей между двумя линейками контактов вдоль двухслойного канала. В каналах горизонтальные сегменты цепей

Известия ТРТУ

Специальный выпуск

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

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

На основе данного алгоритма была разработана программа на языке Си++ для ПЭВМ 1ВМ РС. Был проведен сравнительный анализ качества решений, получаемых при применении операций точечной мутации, мутации обмена и многоточечной мутации. Эксперименты, проведенные со стандартным потоком задач, показали, что более высокое качество решений было получено в случае применения многоточечной мутации.

i Надоели баннеры? Вы всегда можете отключить рекламу.