Первая составляющая предполагает построение некоторой обобщенной структуры, которая обладает свойством полноты. Это свойство состоит в том, что должна иметься гарантия получения любого физически осуществимого решения с помощью строгих формальных процедур. Обобщенная структура представляет собой полный граф, вершины которого являются базисными структурами, а ветви – связями между ними.
Вторая составляющая задачи связана с наличием оператора преобразования, с помощью которого одно состояние обобщенной структуры переходит в другое. Оператор преобразования реализует механизм мутации.
Наконец, необходима мера различия схемных решений или свертка критериев оптимальности.
Рассмотренные понятия оказываются достаточными для построения алгоритма поиска схем. С точки зрения построения оператора преобразования и, следовательно, алгоритма синтеза, важнейшим является дерево инженерных решений в данной предметной области, которое представляет собой множество вершин. Связь между этими вершинами отображает множество операторов
. Для схемотехнического проектирования ,(41)где
1 – оператор включения базисной структуры между узлами схемы; 2 – оператор типа базисной структуры; 3 – оператор ориентации базисной структуры относительно узлов схемы; 4 – оператор увеличения числа внутренних узлов схемы; 5 – оператор переопределения входных узлов схемы; 6 – оператор рассечения узла схемы и образования нового узла; 7 – оператор, определяющий токовый режим работы узла схемы.Любая вершина дерева инженерных решений имеет множество признаков
, (42)где S – чувствительность цепи;G – собственный шум схемы; D – динамический диапазон; I0 – потребляемый ток.
Дерево инженерных решений может быть построено с помощью анализа существующего набора принципиальных схем.
В рамках предлагаемого подхода формирование составляющих оператора осуществляется на базе арсенала инженерных приемов. Однако в этом случае практически исключаются изоморфные решения, следовательно, упрощаются вычислительные процедуры.
Развитие рассмотренных выше методов синтеза структур регулярно проходило апробацию в процессе создания узкоспециализированных пакетов прикладных программ (подсистем) автоматизированного проектирования.
Первая подсистема [2, 8] ориентировалась на метод компонентных уравнений при заданном типе топологической структуры и поэтому была ориентирована на синтез пассивных подсхем в RC- и RLC-базисе. В соответствии с алгоритмом (рис.5) для формирования системы компонентных уравнений необходимо задать топологическую структуру и число узлов схемы, которыми можно варьировать в процессе синтеза в зависимости от промежуточных результатов и опыта разработчика. Получение структуры осуществлялось модулем параметрической оптимизации, качество которого в силу многоэкстремальности целевой функции существенно влияет на конечный результат.
Рис. 5. Алгоритм синтеза структуры по методу компонентных уравнений
В работе использован метод Флетчера-Пауэлла, требующий аккуратного выбора начальных условий. Дальнейшее развитие процедуры синтеза [4] позволило получить оригинальный алгоритмический результат, когда в задаче min
при ограничениях (43)начальное приближение вычисляется посредством системы компонентных уравнений. Здесь функция Q оценивает качество решения, а параметры
и Z осуществляют настройку метода. Такой подход позволяет получить глобальный оптимум при условии, что целевая функция Q неотрицательна и представляет собой сумму однородных функций. Предложенный метод апробирован в задаче синтеза схем с минимальной суммарной емкостью при заданных ограничениях на величину сопротивления.При синтезе структур, обеспечивающих расширение частотного и динамического диапазонов, в качестве составляющих целевой функции Q необходимо использовать степень влияния активных элементов на передаточную функцию (16). Из (36)–(38) следует, что влияние определяется локальными передаточными функциями. Действительно, Hi (p) представляет собой передаточную функцию схемы при подключении источника сигнала ко входу i-го активного элемента, а Fi(p) – на его выходе. Следовательно, в общем случае эти функции не могут быть однородными.
Аналогичная в идеологическом плане попытка была предпринята автором [2] (рис. 6). В качестве основы здесь были использованы оригинальные обобщенные структуры, подробное рассмотрение которых будет осуществлено ниже.
Рис. 6. Алгоритм синтеза схем из обобщенных структур
При формировании компонентных уравнений применялся метод резольвент, который позволяет параллельно получить полный набор коэффициентов Hi(p) и Fi(p) и, следовательно, всех составляющих основных критериев качества. Модуль параметрической оптимизации основывался на методе
-преобразований [7] и позволял выйти в область глобального экстремума целевой функции. Дальнейшее уточнение результата осуществлялось после исключения бесконечно малых передач. Попытки получить патентноспособные схемы с низким влиянием площади усиления активных элементов приводили к большому числу изоморфных решений, которые, в свою очередь, существенно влияли на рельеф целевой функции, что и приводило к прерыванию решения. Это обстоятельство было связано с особенностью задачи, а не метода оптимизации. Известно, что многоэкстремальные задачи часто пытаются решать при помощи многократного применения градиентного метода. Делается это следующим образом. Сначала берут какую-нибудь случайную точку и, применяя градиентный метод, находят локальный экстремум. Далее берут другую случайную точку и опять, применяя градиентный метод, находят другой локальный экстремум и т.д.Затем, сравнивая реализованные локальные экстремумы, выбирают наилучший и считают, что глобальный экстремум определен. Нетрудно видеть, что при таком подходе не может быть никакой уверенности в том, что найдено действительно наименьшее значение целевой функции и, следовательно, возможна потеря оптимальной схемы.
Рассмотренная процедура обеспечивает хорошие результаты при «модернизации» (усовершенствовании) некоторого набора схемных решений. В этом случае этап выбора числа активных элементов исключается, а обобщенная структура заменяется на некоторое начальное приближение, дополняемое до уровня полного сигнального графа некоторыми ветвями или активными проводимостями. Такой подход был использован автором для получения универсальных фильтров четвертого порядка и позволил получить работоспособные принципиальные схемы.
Параллельно с изложенными процедурами развивались применительно к синтезу цифровых схем генетические алгоритмы. Такое положение было связано с тем, что вершина дерева (42) для признаков качества цифровых схем характеризовалась хорошо отработанными схемотехническими приемами.
Основная особенность генетического алгоритма состоит в том, что анализируется не одно решение, а некоторое подмножество квазиоптимальных решений, называемых хромосомами, или стрингами. В качестве исходных данных требуется популяция хромосом, представляющих комбинацию элементов из множества заданных. Для каждой хромосомы должна быть вычислена целевая функция, называемая эволюционной. В каждой популяции хромосомы могут подвергаться действиям различных операторов. К основным операторам относятся кроссинговер, инверсия, мутация, транслокация, сегрегация, кроссмутация. Для задач структурного синтеза особое значение имеет оператор мутации, осуществляющий преобразование базовой схемы по любым топологическим правилам (2.41).
Алгоритм синтеза, использующий принцип мутации начальной структуры, приведен на рис. 7. Большое значение в этой процедуре имеет выбор начальной структуры.
Рис. 7. Алгоритм синтеза структур с использованием процедур мутации
Исходная схема, с одной стороны, должна иметь относительно высокие качественные показатели, а с другой – обеспечивать путем топологических преобразований, изложенных в п. 5, генерацию более качественной конфигурации. Отмеченная проблема относится к классу нерешенных задач.
Второй и не менее важной задачей является формализация перехода одного состояния исходной схемы в другое. При синтезе цифровых схем используется набор эвристических приемов, упорядоченный операторами (41). Отсутствие структурно-топологических признаков, устанавливающих связь конфигурации цепей с ее свойствами, не позволяет распространить генетический алгоритм на синтез аналоговых электронных устройств.