Другие журналы
|
научное издание МГТУ им. Н.Э. БауманаНАУКА и ОБРАЗОВАНИЕИздатель ФГБОУ ВПО "МГТУ им. Н.Э. Баумана". Эл № ФС 77 - 48211. ISSN 1994-0408
Информационная модель и основные функции программной системы многокритериальной оптимизации ╚Парето╩
#4 2008 DOI: 10.7463/0408.0090282
УДК 519.6
Карпенко А.П. (д.ф.-м.наук, профессор МГТУ им.Н.Э.Баумана, телефон: 263-65-26, E-mail: karpenko@nog.ru) Мухлисуллина Д.Т. (студентка МГТУ им.Н.Э.Баумана, E-mail: D.Mukhlisullina@mail.ru)
Введение В настоящее время при оптимизации сложных технических систем (например, во многих задачах САПР) возникают задачи многокритериальной оптимизации, имеющие следующие особенности [1]: o высокая размерность вектора альтернатив X(порядка 100); o сложная структура множества допустимых альтернатив , обуславливаемая большим количеством (порядка 100) и нелинейностью ограничивающих функций, формирующих это множество; o высокая размерность критериальной вектор-функции (порядка 100); o высокая сложность математических моделей оптимизируемых технических систем (дифференциальные уравнения в частных производных и пр.), приводящая к высокой вычислительной сложности частных критериев (порядка 100 часов процессорного времени на современных однопроцессорных ЭВМ); o сложная топология частных критериев оптимальности (овражность, многоэкстремальность и пр.). Плохая формализуемость и указные выше особенности современных задач многокритериальной оптимизации делают необходимым использование для их решения программных систем многокритериальной оптимизации (СМКО). Обзор отечественных СМКО дан в работе [2]. Среди иностранных систем этого класса наиболее известными являются системы NIMBUS, Web-HIPRE, Easy-Opt, GAMS. Программная система NIMBUS (Nondifferentiable Interactive Multiobjective BUndle-based optimization System) [3] разработанавФинляндии. Основная идея системы состоит в том, что лицо, принимающее решения (ЛПР), оценивает значения критериев оптимальности, вычисленных системой в текущей точке множества Парето, и разбивает критерии на следующие пять классов: значение критерия оптимальности должно быть уменьшено; значение критерия оптимальности должно быть уменьшено до определенного уровня; значение критерия оптимальности не должно изменяться; значение критерия оптимальности можно увеличить до определенного значения; значение критерия может изменять свободно. На основе этой классификации система формирует от 1 до 4 вспомогательных подзадач, которые позволяют получить от 1 до 4 новых оптимальных решений из области Парето. Система Web-HIPRE” (HIerarchicalPREferenceanalysisintheWorldWideWeb) [4] также разработана в Финляндии и является первой общедоступной в сети Интернет программой принятия многокритериальных решений. Алгоритмы многокритериальной оптимизации, реализованные в Web-HIPRE, основаны на методе MAVT (MultiattributeValueTheory) и методе AHP (AnalyticHierarchicalProcesses). Система Easy-Opt[5] разработана в Германии и представляет собой интерактивную программную среду, предназначенную для решения задач условной и безусловной одно- и многокритериальной оптимизации. Многокритериальная оптимизация выполняется на основе метода скалярной сверки частных критериев оптимальности. Реализовано 15 вариантов свертки: от аддитивной скалярной свертки до свертки в метрике пространства . Полученная однокритериальная задача глобальной условной оптимизации решается методом последовательного квадратичного программирования. Система GAMS(GeneralizedAlgebraicModelingSystem) [6] разработана в США и представляет собой высокоуровневую систему моделирования для решения математических задач. Программная система «Парето» имеет две версии, отличающиеся только максимально допустимой размерностью вектора варьируемых параметров - «учебная» версия и «коммерческая» версия. Система ориентирована на использование, как в последовательном, так и параллельном вариантах. В последнем случае имеется в виду однородный вычислительный кластер.
1. Постановка задачи многокритериальной оптимизации Приведенная ниже постановка задачи является описанием метазадачи (см. п. 2.6). Курсивом в данном разделе выделены термины, включенные в глоссарий (см. п. 5.6). Пусть - n-мерный вектор параметров (варьируемых) задачи. Будем полагать, что , где - n-мерное арифметическое пространство (пространство параметров). Параллелепипедом допустимых значений вектора параметров будем называть не пустой параллелепипед . (1) На вектор X могут быть дополнительно наложено ограничений, формирующих множество , (2) где - ограничивающие функции. Известно, что если все функции непрерывны, то множество D является замкнутым. Замкнутое множество (3) называется множеством допустимых значений вектора параметров. Пусть - векторный критерий оптимальности, определенный на множестве П. Будем полагать, что , где - m-мерное арифметическое пространство (пространство критериев). На частные критерии оптимальности могут быть наложены критериальные ограничения вида , (4) где - некоторые вещественные константы. В общем случае лицу, принимающему решение (ЛПР), может быть желательным уменьшить значения одних частных критериев оптимальности и увеличить значения других критериев. Однако, поскольку задача максимизации критерия легко сводится к задаче минимизации обратного критерия, будем полагать, что ЛПР желательна минимизация всех частных критериев оптимальности . Таким образом, задача многокритериальной оптимизации формулируется следующим образом: при условии (4) найти , (5) где вектор - решение задачи многокритериальной оптимизации. Для множества, в которое векторный критерий оптимальности отображает множество , введем обозначение и назовем критериальным множеством. Обозначим и будем писать , если и , . Будем говорить, что вектор из критериального множества доминирует (по Парето) вектор из того же множества, если . Не формально, множество Парето поставленной задачи многокритериальной оптимизации можно определить как совокупность векторов , среди которых нет доминируемых. Формально, множество Парето определяется следующим образом: . (6) Если , то будем говорить, что вектор X - эффективный по Парето вектор. Множество векторов, которое порождает множество Парето, будем обозначать и называть эффективным по Парето множеством. Формально, можно записать: . Отметим, что в системе «Парето» параллелепипед П имеет, в основном, «технологический» смысл – определяет диапазоны изменения случайных чисел, формирующих расчетную сетку во множестве , а также обеспечивает ограниченность множества . Множество Dможет принадлежать одному из следующих иерархически вложенных «классов множеств»: · многосвязные множества ; · односвязные множества ; · не выпуклые множества ; · выпуклые множества ; · множества, заданные нелинейными ограничениями ; · множества, заданные линейными ограничениями (произвольный выпуклый многогранник) ; · регулярное множество (параллелепипед , симплекс ,…). К классу множеств относятся параллелепипеды с ребрами, параллельными координатным осям пространства параметров. Для определения параллелепипеда, принадлежащего этому множеству, должно быть задано констант таких, что или , где , ,…. К классу множеств принадлежат симплексы, ортогональные ребра которых параллельны координатным осям пространства параметров. Для определения симплекса, принадлежащего этому множеству, должно быть задано констант , таких, что или , где , , …, , . Введенная иерархия классов множеств обладает тем свойством, что если , , то, вообще говоря, . Класс множеств , легко видеть, этим свойством не обладает: если множество D – регулярно, то пересечение его с параллелепипедом П может быть нерегулярным множеством. Классы множеств имеют так же, как параллелепипед П, «технологический» смысл. Например, если некоторая программа ориентирована на использование в качестве множества множества, принадлежащего классу множеств , то она не может быть использована с классом множеств , и т.д. (точнее, при попытке ее использования с таким классом множеств пользователь получает соответствующее предупреждающее сообщение). Аналогично, если программа ориентирована на множество класса , то она не может быть использована с множеством класса , . Заметим, что класс множества, которому принадлежит множество , a priory может быть неизвестен. В этом случае этот класс может быть уточнен в процессе решения задачи многокритериальной оптимизации. Введем в рассмотрение следующие иерархически вложенные классы вектор-функций: · класс разрывных функций ; · класс непрерывных функций известной константой Липшица , класс непрерывных функций неизвестной константой Липшица ; · класс не дифференцируемых функций , ; · класс дифференцируемых функций , ; · класс нелинейных функций , ; · класс полиномиальных функций , ; · класс выпуклых функций , . Будем полагать, что вектор-функция принадлежит одному из классов функций , , . Введенные классы функций так же, как и введенные ранее классы множеств, имеют «технологический» смысл. Если некоторая программа ориентирована на класс функций , то она не может быть использована с классом функций , и т.д. Аналогично, если программа ориентирована на класс функций , то она не может быть использована с классом функций . Назовем вычислительной сложностью частного критерия оптимальности количество арифметических операций, необходимых для однократного вычисления его значения. В общем случае эта вычислительная ложность зависит от точки , в которой производится вычисление ее значения. Вычислительную сложность частного критерия оптимальности , обозначим . Величины , необходимы в системе для балансировки загрузки вычислительного кластера. Наряду с этим введем в рассмотрение величину - суммарную вычислительную сложность ограничивающих функций . Заметим, что эта сложность полагается независящей от точки , в которой производятся вычисление значений ограничивающих функций.
2. Метасущности и связанные с ними функции системы Атрибуты сущностей, рассматриваемых в данном и последующих разделах, могут иметь следующие статусы: корректируемый атрибут; обязательный атрибут; атрибут, значение которого задается пользователем непосредственно. При всяком изменении значений атрибутов система фиксирует в своей базе данных кто (какой пользователь) и когда (дата и время) выполнил это изменение. При этом старые значения атрибутов сохраняются в базе данных. 2.2. Сущность «Группа метаметодов» В системе выделяются четыре группы метаметодов решения задачи многокритериальной оптимизации [7]: · группа априорных методов; · группа апостериорных методов; · группа адаптивных методов; · группа методов исследования параметров и критериев; · группа методов однокритериальной оптимизации. Группа метаметодов «Априорные методы» включает в себя методы решения многокритериальной задачи на основе априорной информации об относительной важности частных критериев оптимальности, группа метаметодов «Апостериорные методы» - на основе апостериорной информации, группа метаметодов «Адаптивные методы» - на основе выяснения информации об относительной важности частных критериев оптимальности в диалоге с ЛПР. Методы, относящиеся к группе метаметодов однокритериальной оптимизации, предназначены для отыскания экстремумов частных критериев оптимальности. Минимальные и максимальные значения этих критериев могут представлять для пользователя самостоятельный интерес, а также используются для нормировки частных критериев, например, при решении задачи многокритериальной оптимизации методом скалярной свертки. 2.2.1. Атрибуты. Сущность «Группа метаметодов» имеет следующие основные атрибуты: · краткое наименование; · полное наименование; · описания; · комментарий. Если не оговорено противное, то здесь и далее «Описания» - это совокупность следующих атрибутов: o описание для help-а (произвольный текст с формулами); o описание для обучения (произвольный текст с формулами); o вопросы и задачи для обучения (произвольный текст с формулами); o ответы на вопросы и задачи для обучения (произвольный текст с формулами). 2.2.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. Здесь и далее «Просмотр» означает также возможность просмотра всех перечисленных выше описаний. Удаление группы метаметодов означает удаление всех подчиненных сущностей (метаметодов, метаалгоритмов и метапрограмм). Удаление разрешено только в том случае, когда в системе отсутствуют эксперименты, выполненные с использование хотя бы одного из метаметодов, относящихся к данной группе метаметодов. 2.3. Сущность «Метаметод» 2.3.1. Атрибуты. Сущность «Метаметод» имеет следующие основные атрибуты: · соответствующая группа метаметодов; · краткое наименование; · полное наименование; · описания; · комментарий. 2.3.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. Удаление метаметода означает удаление всех подчиненных сущностей (метаалгоритмов и метапрограмм). Удаление разрешено только в том случае, когда в системе отсутствуют эксперименты, выполненные с использование хотя бы одного из алгоритмов, относящихся к данному метаметоду. 2.4.1. Атрибуты. Сущность «Метаалгоритм» имеет следующие основные атрибуты: · соответствующий метод; · краткое наименование; · полное наименование; · описания; · комментарий. 2.4.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. Удаление метаалгоритма означает удаление всех подчиненных сущностей (метапрограмм). Удаление разрешено только в том случае, когда в системе отсутствуют эксперименты, выполненные с использование хотя бы одной из метапрограмм, связанных с данным метаалгоритмом. 2.5.1. Атрибуты. Сущность «Метапрограмма» имеет следующие основные атрибуты: · соответствующий алгоритм; · краткое наименование; · полное наименование; · описания; · комментарий; · автор; · версия программы; · максимально допустимая размерность вектора варьируемых параметров ; · класс множества , к которому должно принадлежать множество ; · максимально допустимая размерность вектора частных критериев оптимальности ; · класс функций Ф, которому должен принадлежать вектор частных критерии оптимальности ; · признак того, является ли программа параллельной; · имя файла, содержащего соответствующую DLL-программу. 2.5.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. При создании версии метапрограммы система должна потребовать от пользователя ввести имя файла, который содержит соответствующую DLL-программу. Удаление метапрограммы возможно только в том случае, когда в системе отсутствуют эксперименты, выполненные с использование этой программы. 2.6.1. Атрибуты. Сущность «Метазадача» имеет следующие основные атрибуты: · описание, содержащее постановку задачи многокритериальной оптимизации (для учебных целей); · дата создания; · комментарий. 2.6.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов.
3. Сущности «задача, модель задачи, исследование, эксперимент, результаты эксперимента» и соответствующие функции системы 3.1.1. Атрибуты. Сущность «задача» имеет следующие основные атрибуты: · краткое наименование; · полное наименование; · описание; · владелец (пользователь); · список доверенных пользователей; · признак того, является ли данная задача тестовой; · дата создания; · комментарий. Доверенные пользователи имеют доступ к задаче только на чтение. Доступ к задаче означает также, что этим пользователям разрешен доступ на чтение ко всем подчиненным данной задаче сущностям (моделям, исследованиям и экспериментам). 3.1.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. Система имеет возможность создания задачи как путем задания пользователем всех ее атрибутов, так и на основе другой задачи, которая существует в системе и выбрана пользователем в качестве «шаблона» из числа задач, доступных ему. При этом все значения атрибутов «шаблона», кроме атрибутов «краткое наименование, полное наименование, дата создания» копируются в новую задачу. При просмотре значений атрибутов пользователю доступны только свои и разрешенные задачи. Изменение значений атрибутов доступно только владельцу задачи. Удаление задачи означает удаление всех подчиненных сущностей (моделей, исследований и экспериментов). 3.2.1. Атрибуты. Сущность «Модель задачи» имеет следующие основные атрибуты: · соответствующая задача; · краткое наименование; · полное наименование; · описание; · дата создания; · комментарий;
Атрибуты, определяющие множества , . · размерность вектора варьируемых параметров X; · n кратких наименований всех осей координат пространства параметров; · список единиц измерения каждого из варьируемых параметров; · нижние границы параллелепипеда П; · верхние границы параллелепипеда П; · k - размерность вектора ограничивающих функций ; · класс множеств, которому принадлежит множество ; · класс множеств, которому принадлежит множество ; · DLL-программа G_functions, определяющая множество ; Атрибуты, определяющие критерии оптимальности · количество частных критериев оптимальности ; · m кратких наименований всех частных критериев; · m единиц измерения всех частных критериев; · m символов, которыми будет отображаться на графиках значения каждого из частных критериев; · массив признаков того, необходимо минимизировать или максимизировать каждый из частных критериев; · номер класса функций, которому принадлежит вектор-функция ; · значение константы Липшица вектор-функции , если она известна; · количество критериальных ограничений l; · список номеров l критериев, на которые наложены ограничения; · массив минимально допустимых значений l критериев, на которые наложены ограничения; · массив максимально допустимых значений l критериев, на которые наложены ограничения; · DLL-программа F_functions, вычисляющая значения всех частных критериев векторного критерия оптимальности ; Атрибуты, определяющие вычислительные сложности, а также минимальные и максимальные значения критериев оптимальности · средние значения вычислительной сложности критериев , ; · количества вычислений значений критериев , , на основе которых определена их средняя вычислительная сложность; · массив минимальных значений критериев , ; · список экспериментов, в результате выполнения которых вычислены минимумы критериев оптимальности , ; · массив максимальных значений критериев , ; · список экспериментов, в результате выполнения которых вычислены максимумы критериев , ; · двумерный массив значений компонентов вектора X в точках минимума критериев , ; · двумерный массив значений компонентов вектора X в точках максимума критериев , . 3.2.2. Функции: создать (предварительно должна быть создана соответствующая задача); просмотреть значения атрибутов; изменить значения атрибутов; удалить. Система позволяет создать модель задачи, как путем задания пользователем всех ее атрибутов, так и на основе другой модели задачи, которая существует в системе и выбрана пользователем в качестве «шаблона». При этом все значения атрибутов выбранной модели, кроме атрибутов «краткое наименование, полное наименование, дата создания», копируются в новую модель. В качестве шаблона может быть выбрана только одна из моделей данной задачи! Если , то пользователь имеет возможность задать ограничения, формирующие множество D, только средствами интерфейса системы. В противном случае, пользователь должен ввести имя файла, который содержит DLL-программу, формирующую множество D. После задания значений атрибутов, определяющих множества , , система проверяет множество на непустоту. Если это множество пусто, система формирует соответствующее сообщение и не позволят закончить формирование модели. Если принадлежит классу функций , то система требует от пользователя ввода значения соответствующей константы Липшица. При просмотре значений атрибутов пользователь может «видеть» только атрибуты своих моделей, а также моделей, принадлежащих разрешенным задачам. Удаление модели означает удаление всех подчиненных сущностей (исследований и экспериментов). 3.3.1. Атрибуты. Сущность «Исследование» имеет следующие основные атрибуты: · соответствующая модель; · краткое наименование; · полное наименование; · описание; · комментарий; · дата начала исследования; · дата окончания исследования; · модель вычислительной системы, использованной при исследовании. 3.3.2. Функции: создать (функция доступна только в том случае, если ранее была создана соответствующая модель задачи); просмотреть значения атрибутов; изменить значения атрибутов; удалить. Система позволяет создать исследование, как путем задания пользователем всех его атрибутов, так и на основе другого исследования, которое существует в системе и выбрано пользователем в качестве «шаблона». При этом все значения атрибутов выбранного исследования, кроме атрибутов «краткое наименование, полное наименование, дата начала исследования, дата окончания исследования», копируются в новое исследование. В качестве шаблона может быть выбрано только одно из исследований данной модели задачи. Удаление выполненного исследования означает удаление всех подчиненных экспериментов. 3.4.1. Атрибуты. Сущность «Эксперимент» имеет следующие основные атрибуты: · соответствующее исследование; · краткое наименование; · полное наименование; · описание; · комментарий; · дата начала эксперимента; · дата окончания эксперимента; · использованная программа; · результаты эксперимента (см.ниже). 3.4.2. Функции. С сущностью «Эксперимент» связаны следующие основные функции: · создать (функция доступна только в том случае, если ранее было создано соответствующее исследование); · начать эксперимент; · приостановить эксперимент; · принудительно завершить эксперимент; · просмотреть значения атрибутов, включая просмотр результатов эксперимента; · изменить значения атрибутов; · экспортировать результаты эксперимента; · удалить. Эксперимент создается системой автоматически при выборе пользователем одной из метапрограмм. При этом атрибуты эксперимента определяются следующим образом: исследование - формируется системой автоматически; краткое наименование – задается пользователем; полное наименование - задается пользователем; описание - задается пользователем; комментарий - задается пользователем; дата начала эксперимента - формируется системой автоматически; дата конца эксперимента - формируется системой автоматически; использованная программа - формируется системой автоматически; результаты эксперимента - формируется системой автоматически, возможно, на основе диалога с пользователем. При выборе пользователем метапрограммы система выполнят следующие проверки: размерность вектора варьируемых параметров модели n не должна превышать максимально допустимую размерность этого вектора , указанную в атрибутах программы; размерность вектора частных критериев оптимальности модели m не должна превышать максимально допустимую размерность этого вектора , указанную в атрибутах программы; если в атрибутах модели задано, что множество принадлежит классу множеств , то этот класс должен совпадать или быть подклассом класса множества , указанного в соответствующем атрибуте программы; класс функций векторного критерия оптимальности , заданный в атрибутах модели, должен совпадать или быть подклассом класса функций , указанного в атрибутах программы. 3.5. Сущность «Результаты эксперимента» 3.5.1. Атрибуты. Набор атрибутов результатов эксперимента зависит от использованной метапрограммы. Приведем в качестве примера атрибуты одной из метапрограмм. Метапрограмма Main_MinMax_seq. Программа является последовательной и предназначена для отыскания минимумов и максимумов всех частных критериев оптимальности методом штрафных функций. Сущность «Результаты эксперимента» имеет в данном случае следующие основные атрибуты: · соответствующий эксперимент; Атрибуты, определяющие условия проведения эксперимента · максимально допустимое число итераций () при поиске минимума (максимума) частных критериев, соответственно; · массив требуемых точностей вычисления минимумов и максимумов критериев оптимальности , ; · массив начальных значений коэффициентов штрафа при вычислении минимумов и максимумов критериев , ; · массив максимально допустимых значений коэффициентов штрафа при вычислении минимумов и максимумов критериев , ; · количества начальных точек, исходя из которых должен быть выполнен поиск минимумов и максимумов каждого из критериев , ; · максимально допустимые количества вычислений значений каждого из критериев , при поиске минимума и максимума этого критерия, исходя из одной начальной точки; Атрибуты, определяющие основные результаты эксперимента · массив флагов, устанавливаемых в состояние «1», если минимум соответствующего частного критерия оптимальности , вычислен и при этом достигнута заданная точность; · аналогичный массив флагов для максимумов этих критериев оптимальности; · массив достигнутых точностей при вычислении минимумов критериев оптимальности , ; · аналогичный массив для максимумов этих критериев оптимальности; · массив достигнутых точностей при вычислении минимумов функций , , где - функция штрафа; · аналогичный массив для максимумов указанных критериев оптимальности; · массив фактических значений коэффициентов штрафа , при которых закончен поиск минимумов критериев , ; · аналогичный массив для максимумов этих критериев; · двумерный массив, содержащий значения компонентов вектора X в точках минимумов критериев , , если поиск завершился удачно; · аналогичный массив для максимумов этих критериев; · массив, содержащий значения критериев , в точках минимумов этих критериев (если поиск завершился удачно); · аналогичный массив для максимумов этих критериев; · массив, содержащий значения критериев , в точках минимумов этих критериев (если поиск завершился удачно); · аналогичный массив для максимумов указанных критериев; · массив, содержащий значения ограничивающих функций , в точках минимумов критериев , ; · аналогичный массив для максимумов этих критериев; Атрибуты, определяющие вспомогательные результаты эксперимента · массив, содержащий количества начальных точек, исходя из которых фактически выполнен поиск минимумов критериев , ; · аналогичный массив максимумов этих критериев; · массив средних вычислительных сложностей критериев , ; · массив суммарных количеств вычислений критериев , , на основе которых определены их средние вычислительные сложности; · массив, содержащий средние количества итераций при поиске экстремумов критериев , ; · массив, содержащий суммарное количество итераций, на основе которых вычислено указанное в предыдущем пункте среднее количество итераций. 3.5.2. Функции: просмотреть значения атрибутов. Создаются «результаты эксперимента» автоматически при создании эксперимента. 4. «Базовые» сущности и связанные с ними функции системы 4.1. Сущность «Базовая задача» 4.1.1. Атрибуты. Сущность «Базовая задача» имеет следующие основные атрибуты: · краткое наименование; · полное наименование; · описания; · дата создания; · пользователь; · комментарий. 4.1.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. Удаление базовой задачи означает удаление всех подчиненных сущностей (базовых методов, базовых алгоритмов и базовых программ). Удаление разрешено только в том случае, если в системе отсутствуют сущности, использующие хотя бы один из базовых методов, относящихся к данной задаче. 4.2. Сущность «Базовый метод» 4.2.1. Атрибуты. Сущность «Базовый метод» имеет следующие основные атрибуты: · соответствующая базовая задача; · краткое наименование; · полное наименование; · описания; · дата создания; · пользователь; · комментарий. 4.2.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. Удаление базового метода означает удаление всех подчиненных сущностей (базовых алгоритмов и базовых программ). Удаление должно быть разрешено только в том случае, если в системе отсутствуют сущности, использующие хотя бы один из базовых алгоритмов, относящихся к данному базовому методу. 4.3. Сущность «Базовый алгоритм» 4.3.1. Атрибуты. Сущность «Базовый алгоритм» имеет следующие основные атрибуты: · соответствующий метод; · краткое наименование; · полное наименование; · описания; · дата создания; · пользователь; · комментарий. 4.3.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. Удаление базового алгоритма означает удаление всех подчиненных сущностей (базовых программ). Удаление разрешено только в том случае, если в системе отсутствуют сущности, использующие хотя бы одну из базовых программ, связанных с данным базовым алгоритмом. 4.4. Сущность «Базовая программа» 4.4.1. Атрибуты. Сущность «Базовая программа» имеет следующие основные атрибуты: · соответствующий алгоритм; · краткое наименование; · полное наименование; · описание; · дата создания; · пользователь; · версия программы; · имя файла, содержащего соответствующую DLL-программу; · комментарий. 4.4.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. При создании базовой программы или ее версии система требует от пользователя ввести имя файла, который содержит соответствующую DLL-программу. Удаление базовой программы возможно только в том случае, если в системе отсутствуют сущности, использующие эту программу.
5. Прочие сущности и связанные с ними функции системы 5.1. Сущность «Пользователь» Различаются три категории пользователей (с точки зрения прав доступа к данным и функциям системы): администратор; исследователь; студент. 5.1.1. Атрибуты. Сущность «Пользователь» имеет следующие основные атрибуты: · ФИО; · телефон; · E-mail; · login; · пароль; · права доступа. 5.1.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. 5.2. Сущность «Модель вычислительной среды» 5.2.1. Атрибуты. Сущность «Модель вычислительной среды» имеет следующие основные атрибуты: · вербальное описание используемой вычислительной системы; · дата создания; · комментарий; · производительность host-процессора; · количество процессоров; · диаметр коммуникационной сети; · матрица графа коммуникационной сети; · полная латентность канала передачи данных от host-компьютера до вычислительного кластера; · полная пропускная способность канала передачи данных от host-компьютера до вычислительного кластера; · производительность одного процессора кластера; · полные латентности всех каналов коммуникационной сети кластера; · полная пропускная способность всех каналов коммуникационной сети кластера. 5.2.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов.
5.3. Сущность «Вспомогательная программа» 5.3.1. Атрибуты. Сущность «Вспомогательная программа» имеет следующие основные атрибуты: · краткое наименование; · полное наименование; · описание; · дата создания; · пользователь; · версия программы; · имя файла, содержащего соответствующую DLL-программу; · комментарий. 2.3.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. При создании вспомогательной программы или ее версии система требует от пользователя ввести имя файла, который содержит соответствующую DLL-программу. Удаление вспомогательной программы возможно только в том случае, когда в системе отсутствуют сущности, использующие эту программу. 5.4. Сущность «Класс множеств» 5.4.1. Атрибуты. Сущность «класс множеств» имеет следующие основные атрибуты: · номер уровня иерархии; · номер подуровня иерархии; · краткое наименование; · полное наименование; · описание; · комментарий. 5.4.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. Удаление класса множеств возможно только в том случае, если в системе отсутствуют модели и программы, использующие этот класс. 5.5. Сущность «Класс функций» 5.5.1. Атрибуты. Сущность «Класс функций» имеет следующие основные атрибуты: · номер уровня иерархии; · номер подуровня иерархии; · краткое наименование; · полное наименование; · описание; · комментарий. 2.5.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить. Удаление класса функций возможно только в том случае, если в системе отсутствуют модели и программы, использующие этот класс. 5.6.1. Атрибуты. Сущность «Класс функций» имеет следующие основные атрибуты: · список с элементами: ключевое слово; список сущностей, в описаниях которых определено данное ключевое слово. Если сущность содержит несколько описаний, то здесь под «описанием» понимается «Описание для help-а». 5.6.2. Функции: создать; просмотреть значения атрибутов; изменить значения атрибутов; удалить.
6. Заключение Как отмечалось в работе [2] развитая СМКО должна удовлетворять следующим требованиям, специфичным для систем такого рода: · решение задач в условиях, как «природных» неопределенностей, так и неопределенностей типа «активный партнер»; · параллельные вычисления, как на вычислительных системах с общей памятью, так и на распределенных вычислительных системах; · поддержка принятия решений, как ЛПР, так и группой лиц принимающих решения; · широкий набор различных методов многокритериальной оптимизации; · несколько высокоэффективных методов однокритериальной глобальной оптимизации; · импорт моделей задачи из широко используемых CAD, CAM, CAE-систем; · экспорт результатов в указанные системы; · наличие интеллектуального компонента. Система «Парето» предполагает развитие, имеющее целью удовлетворить большинству из перечисленных требований.
Литература 1. Соболь И.М., Статников Р.Б. Выбор оптимальных параметров в задачах со многими критериями. -М.: Дрофа, 2006. 2. Карпенко А.П., Федорук В.Г. Обзор программных систем многокритериальной оптимизации. Отечественные системы //Информационные технологии, 2008, ╧1, с. 15-22. 5. Schittkowski K. EASY-OPT: An interactive optimization system with automatic differentiation - User’s guide, Report, Department of Mathematics, University of Bayreuth, D-95440Ba yreuth. 6. http://www.gams-software.com/ 7. Ногин В.Д. Принятие решений в многокритериальной среде: количественный подход. –М.: ФИЗМАТЛИТ, 2002.
Публикации с ключевыми словами: многокритериальная оптимизация Публикации со словами: многокритериальная оптимизация Смотри также:
Тематические рубрики: Поделиться:
|
|
||||||||||||||||||||||||||||||||
|