Rambler's Top100
Структуралист (на главную)  
 

С.В. Акимов

КОМПЬЮТЕРНЫЕ МОДЕЛИ ДЛЯ АВТОМАТИЗИРОВАННОГО СТРУКТУРНО-ПАРАМЕТРИЧЕСКОГО СИНТЕЗА

(оригинал: Акимов С.В. Компьютерные модели для автоматизированного структурно-параметрического синтеза / Компьютерное моделирование 2004: Труды 5-й международной конференции. Часть 1 / СПб.: «Нестор», 2004, С. 191-197.)

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

Задачи синтеза, проводимого с помощью оптимизационных алгоритмов, можно разделить на две группы:

  1. При заданной структуре необходимо определить параметры элементов таким образом, чтобы устройство было оптимальным по какому-либо критерию (критериям).
  2. Необходимо подобрать структуру и параметры элементов этой структуры таким образом, чтобы удовлетворить заданным ограничениям на характеристики с минимальными затратами (минимальное число элементов, минимальная стоимость и т. п.).

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

Так, при параметрическом синтезе:

  • структура модели фиксирована и не изменяется в процессе синтеза;
  • изменяются только параметры (номиналы элементов) и поиск осуществляется в пространстве параметров;
  • размерность вектора параметров фиксирована.

При структурно-параметрическом синтезе:

  • структура модели заранее неизвестна и модель формируется автоматически;
  • изменяются как структура, так и параметры и поиск осуществляется в пространстве структур и параметров;
  • размерность вектора параметров заранее неизвестна и может быть определена только после того как будет определена структура.

Следовательно, для поддержки функционирования алгоритма структурно-параметрического синтеза необходимо:

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

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

Последовательность создания универсальных моделей следующая.

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

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

Методология создания программной реализации универсальных моделей базируется на объектно-ориентированной парадигме программирования и состоит в следующем. Сначала моделируются отдельные классы устройств, объекты которых являются универсальными моделями. Такие объекты обязательно должны включать в себя атрибуты, соответствующие классификационным признакам, полученным в результате проведения морфологического анализа. Они будут выступать в роле ключей, по которым автоматически формируются универсальные модели. Их удобно реализовать в виде переменных перечислительного типа, элементами которых будут значения этих классификационных признаков. Если моделируется достаточно сложный класс устройств, который можно разбить на несколько подклассов, то моделируются все классы устройств, входящие в такую иерархическую систему. Далее, все это собирается в единую модель. В объектно-ориентированном программировании такая сборка будет соответствовать связям агрегации и на алгоритмических языках может быть реализована при помощи связанных списков или динамических массивов.

Алгоритм построения универсальной модели будет следующим. Сначала либо пользователь, либо алгоритм морфологического синтеза на И/ИЛИ-дереве путем вырождения ИЛИ-вершин выбирает элемент морфологического множества, соответствующий структуре исследуемого устройства. Далее, пути от висячих вершин до корня дерева заносятся в массивы, число которых равно числу висячих вершин, причем длины массивов могут и не совпадать. Затем эти массивы инвертируются. После этого с помощью специально разработанного алгоритма по информации, содержащейся в данных массивах, восстанавливается И-дерево с вырожденными ИЛИ-вершинами, которые однозначно идентифицируют структуру устройства. Потом специальный рекурсивный алгоритм осуществляет обход дерева и устанавливает ключи в модулях, являющихся своеобразными строительными блоками, согласно информации, в вырожденных ИЛИ-вершинах. При достижении И-вершины или же висячей вершины вызывается метод, осуществляющий построение данного модуля, причем при этом в модуле создаются агрегируемые объекты. Далее управление передается в эти агрегируемые объекты. Так продолжается до тех пор, пока процесс построения модели устройства не будет завершен.

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

Изложенная методология была использована при построении прототипа САПР, ориентированной на автоматизированный структурно-параметрический синтез электрических цепей. Выполнено объектно-ориентированное проектирование с использованием спецификации UML в пакете Rational Rose 2000. По результатам проектирования проведена генерация программного кода на языке MS Visual C++ 6 и реализована бизнес-логика методов основных классов.

Данная программная система состоит из 4 относительно независимых модулей: моделей, оптимизации, морфологических деревьев, а также управляющего модуля. Модули морфологических деревьев и оптимизации представляют инвариантное ядро и могут быть использованы в других САПР как радиоэлектронного, так и любого другого профиля.

В модуль моделей входят классы, из которых могут быть построены модели различных радиоэлектронных устройств. Он включает в себя классы базовых структур, функциональных элементов, различных 2- и 4-полюсников, а также манипулятор этими моделями – CSmPoleFactory, позволяющий получать их различные комбинации. Базовым классом модуля моделей является класс CSmPole. От него порождаются классы COnePole – 2-полюсник (одноплечник, одноплечное сочленение), CTwoPole – 4-полюсник (двухплечник, двухплечное сочленение) и CFourPole – 8-полюсник, которые являются базовым для всех классов 2-, 4- и 8-полюсных элементов. Благодаря механизму наследования, все методы присущие базовым классам наследуются классами-потомками. Это позволяет запрограммировать методы, общие для 2-, 4- и 8-полюсников, и в дальнейшем использовать их по мере необходимости в объектах классов, прямо или косвенно порожденных от базовых. Например, такими методами для 4-полюсников будут преобразование дескрипторов, вычисление коэффициента усиления, коэффициентов стоячей волны входа и выхода, коэффициента устойчивости и т. п. Следует подчеркнуть, что классы CSmPole, COnePole, CTwoPole и CFourPole непосредственно в качестве моделей не используются, то есть являются абстрактными классами. От них наследуются другие классы, представляющие модели конкретных устройств.

Модуль морфологических деревьев содержит морфологические И/ИЛИ-деревья, а также их обработчик, позволяющий осуществлять с ними различные манипуляции. Данный модуль выполнен с использованием библиотеки Stingray Objective Studio Toolkit Pro.

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

Чтобы доказать жизнеспособность предложенных в работе методов была реализована и отлажена универсальная модель класса лестничных электрических цепей, широко применяемых в различных радиотехнических устройствах. Реализовано автоматическое построение модели лестничной цепи по И-дереву с вырожденными ИЛИ-вершинами, которое задается на морфологическом дереве класса лестничных цепей. Кроме того, возможно задание структуры лестничной цепи при помощи диалогового окна. Все это дает возможность быстро задавать модели исследуемых устройств. Так, задание фильтра, имеющего каноническую структуру, занимает всего 12 – 15 секунд вне зависимости от порядка. Если задается произвольная лестничная цепь, то время, затрачиваемое на ее задание, увеличивается незначительно, так как требуется совершить дополнительно (n – 1) элементарных операций, где n – порядок цепи. Это значительно быстрее, чем задание структур таких же моделей в существующих коммерческих САПР. Помимо этого была создана система универсальная модель – оптимизатор и отлажено их взаимодействие. Как было отмечено выше, для корректного взаимодействия оптимизатора и модели необходимо вычисление размерности вектора рабочих параметров и передачи его в оптимизатор. С помощью созданной системы были синтезированы электрические фильтры.

Приведем краткое описание интерфейса на примере регулярной структуры лестничной цепи, представляющей обычный (неэллиптический) полосно-пропускающий фильтр (ППФ). Для этого сначала выбирается в меню «Класс исследуемых цепей», в результате чего выводится И/ИЛИ-дерево, описывающее морфологическое множество. Далее на этом дереве, путем вырождения ИЛИ-вершин задается структура устройства, являющегося элементом данного морфологического множества – в нашем случае лестничная цепь 10-го порядка, типа ТП (начинается последовательно включенным двухполюсником, заканчивается параллельно включенным) и имеющая структуру ППФ. После чего строится модель с заданной структурой и выводится И-дерево с вырожденными ИЛИ-вершинами, которое однозначно идентифицирует структуру устройства. Считывание и редактирование номиналов элементов проектируемого устройства так же осуществляется при помощи специального диалогового окна. Из этого же окна осуществляется вызов диалога позволяющего вводить значения нагрузок (импедансов и адмитансов), при которых рассчитывается устройство, вычисляемые характеристики, которые необходимо рассчитать, а также задание на синтез.

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

Применение моделей классов устройств, позволяет значительно упростить задание структуры исследуемого устройства по сравнение с имеющимися пакетами моделирования радиотехнических устройств, таких как Serenade, Microwave Office, Micro CAP. Поэтому универсальные модели не только необходимы для автоматизации структурно-параметрического синтеза, но и оказываются весьма полезными при диалоговом режиме работы так как, во-первых, значительно сокращается время на задание структуры, а во-вторых, интерфейс, выполненный в виде морфологического дерева, может служить своеобразным справочником, содержащим возможные варианты структур. Более того они являются дальнейшим развитием компьютерного моделирования, так как в отличие от обычных моделей содержат в неявном виде информацию о структурах устройств, принадлежащих исследуемому классу, а следовательно способствуют дальнейшей интеграции научно-технических знаний.

Дальнейшие пути исследования по данной проблеме следующие.

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

Кто Вы?
Исследователь
Специалист
Управленец
Преподаватель
Студент
Аспирант
Другое
Результаты голосования

©Structuralist 2005-2006
structuralist@narod.ru
Рейтинг@Mail.ru Rambler's Top100
Hosted by uCoz