Синтез схем - это процесс разработки и построения цепей, с

advertisement
Ушаков П.А., Хафизова А.Ф., Шамсиахметов О.Я.
К ВОПРОСУ О АВТОМАТИЗИРОВАННОМ СИНТЕЗЕ
АНАЛОГОВЫХ СХЕМ
Ижевский Государственный Технический Университет
В данной статье описан принцип работы генетического алгоритма,
задача которого состоит в автоматизации синтеза аналоговых схем.
Ключевые слова: генетический алгоритм, автоматизированный синтез
аналоговых схем, генетические операторы.
Синтез схем - это процесс разработки и построения цепей, с необходимым
выходным сигналом при заданном
входном воздействии. Данный процесс
состоит из 2-х частей - создание необходимой топологии и подбор параметров
элементов схемы.
Подбор параметров элементов – довольно развитая область, в которой
существуют разработанные инструменты для синтеза схем. Тогда, как подбор
подходящей топологии является более сложной частью и чаще всего основан на
интуиции.
Это
следствие
нехватки аналоговых
инструментов
синтеза
охватывающего обе части процесса.
Генетический
алгоритм
—
это
эвристический
алгоритм
поиска,
напоминающий биологическую эволюцию. При этом подходе, каждое решение
нашей задачи кодируется в виде хромосом, каждый ген которой может быть
каким-либо элементом, значением элемента, задавать расположение элемента
на каком-то участке цепи и т.д.
В статье Ангана Даса и Ранга Вемури [1] описывается алгоритм
автоматизированного синтеза пассивных аналоговых схем на R, L и C
элементах, на основе ГА. Основываясь на классическом ГА, они внесли в него
ряд изменений. Прежде всего начальная популяция, формируется на основе
определенного алгоритма, при котором значение пригодности этой популяции
существенно возрастает, в сравнении с популяцией сформированной случайным
образом, что положительно сказывается на уменьшении числа необходимых,
для достижения цели, генераций.
Для скрещивания выбираются все особи популяции, но родительские
особи разбиваются на пары на основе сопоставимости значений их функций
пригодности, так особь с высокой пригодностью не может скреститься с
особью с низкой пригодностью, а так же видоизменяется и мутирует в меньшей
степени, для сохранения высокой пригодности. Во время скрещивания
подсхемы точно соответствуют свободным узлам родительских особей, что
способствует уменьшению количества схем с недопустимой топологии.
Мутация состоит в изменении в произвольном порядке выбранных генов на
выбранную в произвольном порядке альтернативу. После этого вычисляется
пригодность особей и если она низка, то цикл вновь повторяется.
Рис. 1 Блок-схема двухуровневого генетического алгоритма
Для того чтобы улучшить данный алгоритм необходимо внести ряд
изменений в принцип его действия (рис.1). Так сам алгоритм необходимо
следать двухуровневым. На первом уровне будет подбираться топология схем, а
второй уровень полностью ответственен за подбор параметров элементов.
Рассмотрим все по порядку. На первом уровне нашего алгоритма допустимая
погрешность выбирается в более широких пределах, нежели необходимая нам в
итоге, ее мы задаем на 2-м уровне. Топологию первоначальной популяции
выбираем в случайном порядке, проверяем корректность составления каждой
Uвых
схемы, а затем, выразим
Uвх сигнала каждой схемы в символьном виде и
приравняем полученные данные к значениям функции пригодности в
определенных точках частоты и найдем неизвестные параметры. Все особи
популяции попадают в промежуточную генерацию, родительские особи
попарно скрещиваются на основании сопоставимости значений их функции
пригодности.
Количество
узлов
для
подключения
подсхем
у
2-х
скрещивающихся особей должно быть одинаково, во избежание получения
некорректных схем.
Затем вычисляется значение функции пригодности
и
сравнивается с целевой. Если полученная особь нас удовлетворяет, то она
сохраняется в буфере памяти, а цикл начинается заново, так происходит до тех
пор, пока мы не наберем необходимое для 2-го уровня количество подходящих
особей.
2-й уровень генерации выполняет функцию точной настройки, здесь мы
задаем уже необходимую в нашем случае погрешность. На этом круге
вероятность
особи
попасть
в
промежуточную
генерацию
прямо
пропорционально ее пригодности. В скрещивании участвует не вся хромосома
целиком, а лишь те части, что отвечают за значения элементов. Мутация тоже
может изменить только гены ответственные за значения элементов. Так же, как
и на первом круге вычисляем пригодность особей, и как только подбирается та,
что удовлетворяет нашей функции пригодности цикл завершается и мы
получаем синтезированную схему.
Литература:
1. Angan Das and Ranga Vemuri. An Automated Passive Analog Circuit
Synthesis Framework using Genetic Algorithms.
Download