close

Вход

Забыли?

вход по аккаунту

?

Программная реализация геометрического алгоритма многокритериальной оптимизации.

код для вставкиСкачать
М. Н. МОСКОВЦЕВ
УДК 514
ПРОГРАММНАЯ РЕАЛИЗАЦИЯ
ГЕОМЕТРИЧЕСКОГО АЛГОРИТМА
МНОГОКРИТЕРИАЛЬНОЙ
ОПТИМИЗАЦИИ
ОМСКИЙ НАУЧНЫЙ ВЕСТНИК № 3 (133) 2014
Омский государственный
институт сервиса
В статье представлено алгоритмическое описание разработанного метода многокритериальной многофакторной оптимизации и его программная реализация в виде библиотеки классов для языка программирования Python.
Ключевые слова: программная библиотека, многомерная геометрия, многокритериальная оптимизация.
Многие практические проблемы современности
в экономике, архитектуре, электронике и других областях науки на определенном этапе разработки требуют решения сложных задач, состоящих из множества взаимосвязанных частей. Для их решения применяется систематический подход, позволяющий получить единый ответ, учитывающий все подзадачи. Но
когда вопрос касается формализованной математической версии задачи оптимизации решения по множеству факторов и критериев одновременно, то
число относительно общих методов, дающих единый
ответ, очень мало. Одним из таких методов является
геометрический подход, предложенный и обобщенный авторами работ [1–3]. Путем построения гиперповерхностей, соответствующих выходным данным
эксперимента, их сечений гиперплоскостями уровня
и их пересечений, область оптимизации сводится к
минимальной возможной размерности для последующего выбора среди эквивалентных точек пользователем.
Для реализации алгоритма был выбран язык программирования Python, так как он обладает широкими возможностями по работе с массивами данных,
легко осваиваем и переносим на любые устройства
и системы. Программная библиотека включает в себя
два рабочих класса (рис. 1): основной класс используется для операции оптимизации и работы с табли-
цами базы данных; вспомогательный содержит три
базовые группы способов обработки наборов точек
и кривых на плоскости.
Методы оптимизации основного класса библиотеки позволяют проводить две основные операции —
сечение плоскостью уровня и поиск пересечения
двух гиперповерхностей в пространствах с одинаковыми размерностями. В первом случае используется одна таблица базы данных и заданное значение
высоты для плоскости уровня. На основе полного
перебора значений таблицы строятся контурные
кривые гиперповерхности во всех двумерных плоскостях кроме параллельных сечению, являющихся
подпространствами рабочего пространства и заполняющими регулярную сетку значений таблицы. Для
каждой кривой находятся точки пересечения с проекцией плоскости сечения и сохраняются в новую
таблицу, представляющую результат сечения в новом
пространстве размерности на одну меньше исходной. Пересечение двух поверхностей в отличие от
первого метода требует работы с двумя исходными
таблицами в одинаковых размерностях. Результирующая таблица заполняется значениями точек пересечения контурных кривых двух гиперповерхностей
и имеет размерность, равную исходной.
Методы для работы с базой данных основного
класса библиотеки позволяют выбирать, с какой
ИНЖЕНЕРНАЯ ГЕОМЕТРИЯ И КОМПЬЮТЕРНАЯ ГРАФИКА
Рис. 1. Структура программной библиотеки
15
ОМСКИЙ НАУЧНЫЙ ВЕСТНИК № 3 (133) 2014
ИНЖЕНЕРНАЯ ГЕОМЕТРИЯ И КОМПЬЮТЕРНАЯ ГРАФИКА
Рис. 2. График зависимости суммарного теплового сопротивления пакета (R, м2.К/Вт)
от массы перо-пуховой смеси (m, г)
при разных температурах окружающей среды (Tb, °C) и материалах верха (type)
16
таблицей в данный момент производить работу,
а также получать данные из нее в виде пар чисел
для построения плоскостных кривых в соответствии
с указанными значениями дополнительных и списком игнорируемых размерностей для получения
возможности исследовать важность того или иного
параметра без необходимости построения дополнительных таблиц данных. В большинстве случаев эти
методы используются неявно методами оптимизации
основного класса библиотеки и не нужны пользователю.
Первую группу методов вспомогательного класса
составляют алгоритмы объединения точек в упорядоченные наборы. К таким алгоритмам можно отнести
разбиения на монотонные участки на основе минимального расстояния между соседними точками или
разбиение по степени плавности соединений в точках на основе производных высших порядков. В качестве примера используется алгоритм разбиения
точек на основании изменения монотонности соединительных линий при последовательном упорядочении вдоль оси абсцисс. Точки упорядочиваются по
возрастанию координаты, принимаемой за абсциссу
графика функции. Первые две точки составляют
основу первого набора, а также разность их ординат
определяет тип набора (возрастающий или убывающий). В дополнение к монотонно возрастающим
и убывающим наборам также удобно рассматривать
в качестве отдельного типа точки, лежащие на прямой параллельной оси абсцисс, так как подобное поведение кривой может означать независимость параметра на данном участке. Такой алгоритм разбиения
позволяет определять области гарантированного
пересечения участков кривых с прямыми уровня
и возможного пересечения с другими отрезками кривых. В качестве еще одной особенности наборов
монотонно зависимых точек можно рассматривать
их предрасположенность к аппроксимации кривыми
нечетных порядков, что позволяет использовать
в большинстве случаев полиномы третьей степени
для получения необходимой точности аппроксимации.
Вторую группу методов вспомогательного класса
составляют алгоритмы построения плоскостных кривых для данных наборов точек. Большинство подобных алгоритмов рассматриваются и разрабатываются в разделе регрессионного анализа математической статистики. В программе, в качестве примера,
используются интерполяции сплайнами третьей степени для наборов с числом точек более трех и линейные интерполяции для остальных случаев, так как
построение интерполяционного многочлена третьей
степени требует вычисления четырех параметров.
Также возможно использование аппроксимации, что
позволит получать полиномы меньшей степени
в сумме по всем имеющимся наборам, но с некоторой дополнительной погрешностью, частично покрываемой погрешностями в изначальных измерениях
проводимого эксперимента в связи с существующим
разбросом значений параметра.
Третья группа методов — это алгоритмы объединения множества ломаных в единую кривую. В простейшем случае уравнения, полученные после обработки на предыдущем этапе, дополняются областями
определения и в точках соединения образуются «изломы». Другим же, классическим решением этой
проблемы является сглаживание кривых путем стыковки значений частных производных в точках соединения кривых.
Используя вышеперечисленные классы и их методы, имеем следующий общий вид алгоритма получения оптимальной области:
1. Для каждого независимого выходного параметра задаем желаемый уровень и проводим сечение
плоскостью уровня для получения набора таблиц
в одинаковых размерностях со всеми фиксированными критериями оптимизации.
2. Попарно перебирая таблицы, полученные
в предыдущем пункте, находим общую область пересечения всех гиперповерхностей.
3. В случае необходимости зафиксировать значения входных параметров возможно повторное использование сечения плоскостями уровня для уменьшения области оптимизации и снижения ее размерности.
ОМСКИЙ НАУЧНЫЙ ВЕСТНИК № 3 (133) 2014
Рис. 3. График взаимосвязи температуры окружающей среды (Tb, °C) и массы перо-пуховой смеси (m, г)
при разных материалах верха (type), обеспечивающие суммарное тепловое сопротивление R=0,6 м2.К/Вт
Таблица 1
Необходимая масса перопуховой смеси
для обеспечения
суммарного теплового сопротивления R=0,6 м2.К/Вт
при температурах окружающей среды
Tb=–10 °C и Tb=–20 °C
Материал
Масса перопуховой смеси, г
Tb=–10 °C
Tb=–20 °C
13,75
15,14
T1
10
14,17
T2
7,08
11,67
T3
10
13,33
Tf
Библиографический список
1. Волков, В. Я. Графические оптимизационные модели
многофакторных процессов : моногр. / В. Я. Волков, М. А. Чижик. – Омск : Омский государственный институт сервиса,
2009. – 101 с.
2. Устинова, О. В. Разработка оптимизационной модели
процесса соединения текстильных материалов на основе чертежа Радищева многомерного пространства: автореф. дис. …
канд. техн. наук : 05.01.01 / Устинова Ольга Владимировна. –
Омск, 2006. – 126 с.
3. Чижик, М. А. Геометрическое моделирование многофакторных процессов на базе проекционных алгоритмов /
М. А. Чижик, Д. П. Монастыренко, М. Н. Московцев //
Омский научный вестник. Сер. Приборы, машины и технологии – Омск : ОмГТУ, 2013. – №1 (117) – С. 14–17
4. Чижик, М. А. Метод определения суммарного теплового
сопротивления материалов и пакетов одежды / М. А. Чижик,
Т. М. Иванцова, Е. Ю. Долгова, Т. Ю. Каргаполова // Технология легкой промышленности. – № 1 (19 том). – 2013. –
Изв. вузов. + С. 20–22.
МОСКОВЦЕВ Михаил Николаевич, аспирант кафедры «Конструирование швейных изделий».
Адрес для переписки: mnorthwind@gmail.com
Статья поступила в редакцию 02.07.2014 г.
© М. Н. Московцев
ИНЖЕНЕРНАЯ ГЕОМЕТРИЯ И КОМПЬЮТЕРНАЯ ГРАФИКА
Рассмотрим обработку данных программой на
примере эксперимента измерения теплозащитных
свойств перопуховых пакетов и материалов для
одежды, проведенного в работе [4]. Данные эксперимента обобщены в одной таблице базы данных программы и представлены пятью параметрами:
1. Ткань верха — type
2. Масса перопуховой смеси пакета — m, грамм
3. Температура окружающей среды — Tb, °C
4. Время остывания образца — t, с
5. Суммарное тепловое сопротивление — R, м2.К/Вт
Так как заранее известна формула зависимости
суммарного теплового сопротивления от времени
остывания образца, то целесообразно рассматривать
только один, конечный параметр, в качестве критерия оптимизации. В качестве факторов оптимизации
используются три оставшихся параметра.
Используя метод отрисовки основного класса
библиотеки, построим семейство графиков по исходной таблице эксперимента (рис. 2).
Зафиксируем значение суммарного теплового
сопротивления на уровне 0,6 м2.К/Вт. Для этого построим сечение исходной гиперповерхности плоскостью уровня R=0,6, а также воспользуемся возможностью отбрасывания параметра времени осты-
вания образца. Результирующая таблица содержит
три столбца, соответствующих факторам оптимизации эксперимента и легко представляется на графике
(рис. 3).
Таким образом, проведя дополнительные сечения
плоскостями уровня с температурой окружающей
среды Tb=–10 °C и Tb=–20 °C, получаем новые
промежуточные значения необходимой массы пуха
для определения фиксированного ранее значения
теплового сопротивления (табл. 1).
17
Документ
Категория
Без категории
Просмотров
5
Размер файла
494 Кб
Теги
алгоритм, оптимизация, реализации, программное, геометрические, многокритериальной
1/--страниц
Пожаловаться на содержимое документа