Методика синтеза средств решения задач оптимизации в постановке нелинейного программирования

Материалы Всероссийской конференции

“Интеллектуальные САПР-97”

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

В докладе излагаются принципы, положенные в основу разрабатываемой системы представления физических знаний в форме физических эффектов (система ПРЕФИЗ). За основу взят способ представления ФЭ, используемый системой АИПС ФЭ (ВолгГТУ).

Универсальность представляемой информации обеспечивает гибкая структура представления ФЭ. Возможно определение новых, переорганизация или доопределение старых рубрик описания ФЭ. Для возможности использования данных при расчетах (для формализации информации) разрабатываются специальные типы данных (система уравнений, график и т.д.) и средства определения новых типов данных. Каждый тип данных снабжается «модулем интерпретации», задающим процедуры реализации допустимых операций над данными этого типа и процедуры приведения данных к заданному типу.

Для построения запросов к БЗ доступна любая информация по структуре БЗ (иерархия рубрик описания, допустимые типы данных, операции над ними). Проектируются средства формирования сложных запросов. Таким образом будет обеспечено построение произвольного (имеющего смысл) запроса.

ПРЕФИЗ разрабатывается как внешний модуль для работы с программами-клиентами по определенному сценарию. Система команд позволит переорганизовывать данные, строить запросы к БЗ. Релевантная информация помещается в заданный файл или фрагмент памяти и становится доступной для обработки другими программами.

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

УДК 519.816:658.512.2+681.3.06:517.5

Костерин В.В., Давыдов Д.А.

Методика синтеза средств решения задач оптимизации в постановке нелинейного программирования

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

В созданную автором электронную таблицу "Гипотеза - 2" встроен алгоритм прямого поиска глобального экстремума функций многих (до 100) переменных на сетке кода Грея (алгоритм 111111). Это и сделало доступным аппарат нелинейного программирования.

В процессе свыше двадцатилетнего совместного с Б.С. Воиновым совершенствования алгоритма поиска глобального экстремума функции многих переменных на сетке кода Грея появились алгоритмически новые четыре реализации алгоритма. Последняя реализация названа алгоритм ИЛИ. Развитие алгоритма осуществлялось по путям генерации новых знаний с использованием методов активизации мышления: пополнения и использования фонда эвристических приемов, фокальных объектов, использования методов морфологического анализа и синтеза, обобщения результатов тестирования. Применимость метода морфологического синтеза вытекает из того, что многие популярные алгоритмы созданы комбинацией идей нескольких авторов. Например, алгоритм Нелдера-Мида. Идеи работы алгоритмов классифицировались по функциональным признакам.

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

Тематический выпуск

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

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

УДК 519.1.

Павлов Б.И., Гладков Л.А.

Тестирование планарности графа с помощью матрицы его циклов.

Задача определения планарности графа относится к числу важнейших задач САПР и состоит в нахождении такого представления графа, при котором ребра рассматриваемого графа не пересекаются между собой. Существует множество методов тестирования графов. Самые известные из них: методы, основанные на критериях Уитни, Куратовского, метод Лина, метод Фишера- Винга. В этом сообщении будет описан метод тестирования графа с помощью матрицы его циклов. Метод базируется на следующей известной теореме Чена и Дана:

Для графа с е рёбрами V вершинами можно показать, что существование матрицы циклов диной е-у+2, содержащей ровно две «1» в каждом столбце, является необходимым и достаточным условием для утверждения, что граф планарен.

Ниже кратко будет описан предлагаемый алгоритм. Итак, основной задачей данного

алгоритма является поиск части матрицы циклов (В). Назовём эту подматрицу- Вт Для

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

Искать матрицу Вт мы, конечно, будем не полным перебором, а используя

определённый метод, описанный ниже. Пусть к примеру мы нашли достаточное для начала тестирования количество циклов (е-у+2 и более). Выберем первые е-у+2 цикла, которым будет соответствовать вектор К (11111100000). Введём также другую матрицу Е, в которой будут описаны длины циклов. Произведение двух матриц будет давать число р. Если р<2*е, то продолжается «полный» перебор (вектор К изменяется следующим образом: вначале до конца перемещается одна единица, затем пара (единиц), тройка, и т.д.). Когда р стало равно 2*е, то проверяется, в каждом ли столбце матрицы содержится ровно две единицы (в этом случае граф планарен). Если р превысило 2*е и если К будет простым вектором (вектор К- простой, если между первой и последней единицей не более одного нуля), то граф - не планарен, иначе изменение К продолжается. Итак, до тех пор пока не будет определена планарность, либо непланарность графа.

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