Файл: пензенский государственный университет политехнический институт.docx

ВУЗ: Не указан

Категория: Диссертация

Дисциплина: Не указана

Добавлен: 30.11.2023

Просмотров: 217

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Содержание

Введение

Основные положения, выносимые на защиту:

Эквивалентные преобразования моделей задач линейного программирования

Анализ моделей и алгоритмов решения задач о назначениях

Анализ эквивалентных преобразований моделей задач о назначениях

Выводы

Модель и алгоритм решения задачи с приоритетными назначениями

Выводы

Алгоритм решения простейшей линейной многокритериальной задачи о назначениях Многообразие многокритериальных задач в сочетании с отсутствием единого принципа оптимальности порождает огромное число методов их решению. Использование того или иного подхода к решению конкретной задачи может оказать существенное влияние на трудоемкость вычислений. Это относится особенно к специальным классам задач, для которых при скалярном критерии качества разработаны эффективные алгоритмы, использующие специфику ограничений и критериальной функции. Одной из таких задач является задача о назначениях.В основе подавляющего большинства методов решения многокритериальных задач лежит понятие веса критерия, характеризующего его сравнительную важность. Наиболее распространенные методы решения многокритериальных задач основаны на свертке набора исходных целевых функций (с учетом их веса) в один обобщенный скалярный критерий [71]. Такой подход позволяет получить оптимальное по Парето решение и при этом характеризуется вычислительной эффективностью. Использование свертки обеспечивает возможность применения для решения многокритериальной задачи о назначениях специально разработанные для однокритериального случая методы – венгерский и метод Мака.Свертка частных критериев разного смыслового содержания не позволяет интерпретировать значение взвешенного обобщенного критерия, поэтому в общем случае использование операторов свертки требует предварительного нормирования матриц затратСl,l 1, k, т.е. приведения их к единой безразмерной шкале. Часто используемый способ нормирования – минимакс-нормализация.Предлагается следующий алгоритм решения простейшей многокритериальной линейной задачи о назначениях (70) – (75). Нормировать матрицы затрат Сl, l 1, k: cl clсl ijmin . c  cijl maxlmin Составить целевые функции безразмерными коэффициентами: f1(X), f2 (X),..., fk(X) с n nlfl(X)  сijxij, l 1, ki1 j1 Составить вектор   (1, 2,..., k)весовых коэффициентов относительной важности целевых функцийf1(X), f2 (X),..., fk(X) ,l 0 , l 1.k, l 1. В том случае, если все критерии имеют одинаковуюl1 важность,l 1, l 1.k. Составить скалярную целевую функция (обобщенный критерий) g(X)   ) ,( f1(X), f2 (X),..., fk(X),где  – оператор свертки. Перейти к однокритериальной задаче о назначениях вида g(X)  min, (76) n xij 1, j 1, n,i1 (77) n xij 1, i 1, n,j1 (78) xij{0,1}, i, j 1, n. (79) Решить задачу (76) – (79) венгерским методом или методом Мака. Результатом является получение решения, оптимального по Парето. Решая задачу многократно и с изменением весовых коэффициентов, можно получить множество Парето-оптимальных решений. Вид свертки в каждом конкретном случае отражает приемлемую для ЛПР форму компромисса между частными критериями. Наиболее часто используемыми свертками являются линейная свертка, мультипликативная свертка и свертка на основе отклонения от идеальной точки. 1   ...   8   9   10   11   12   13   14   15   ...   21

Решение простейшей линейной многокритериальной задачи о назначениях с использованием свертки на основе отклонения от идеальной точки Под идеальной точкой в многокритериальной задаче о назначениях вида (71) – (76) понимают такой векторF*(X)  Rk, компоненты которого являются минимумами целевых функцийf1(X), f2 (X),..., fk(X) по отдельности, т.е.fl*(X)  min fl(X),XDl 1, k. В практических задачах идеальная точка является недостижимой [73]. Свертка на основе идеальной точкиF*(X)имеет вид: g(X)  (F(X), F*(X)) , где  – некоторая метрика вRk. Наиболее часто используются взвешенная чебышевская метрика g(X)  maxlfl(X)  fl* l (80) и взвешенная евклидова метрика kg(X)  ( fl(X)  fl*)2.l1 (81) Предлагается следующий алгоритм составления обобщенного скалярного критерия на основе идеальной точки: составить kоднокритериальных задач о назначениях вида n nlfl(X)  cijxij min,i1 j1n (82)  xij 1, j 1, n,i1n (83)  xij 1, i  1, n,j1 (84) xij{0,1}, i, j 1, n, (85) гдеl 1,k; найти X * – оптимальное решение l-й задачи вида (82) – (84) и lfl*  fl(X*) , l 1, k; lсоставить вектор F*(X)  ( f*, f*,..., f*) , гдеfl*  fl(X*) , l 1, k;1 2 k lсоставить свертку на основе отклонения от идеальной точки по формуле (80) или (81). Разработана программа для нахождения решения многокритериальной линейной задачи о назначениях с использованием свертки на основе отклонения от идеальной точки средствами математического пакета Mathcad, полный текст которой представлен в приложении E. На рисунке 20 приведены результаты применения свертки на основе отклонения от идеальной точки к многокритериальной задаче о назначениях, исходные данные которой совпадают с исходными данными задачи, решенной с использованием линейной свертки: Рисунок 20 – Результаты решения многокритериальной линейной задачи о назначениях с использованием свертки на основе отклонения от идеальной точки На рисунке 20 представлены матрица X – оптимальное по Парето решение, полученное с использованием чебышевской метрики, и матрица Y – оптимальное по Парето решение, полученное с использованием евклидовой метрики. Также программа находит для каждого оптимального по Парето решения значения соответствующего ему критериального вектора. Применяя алгоритм многократно с изменением весовых коэффициентов, можно построить множество точек Парето. Выбор конкретного решения из множества Парето-оптимальных осуществляется ЛПР.Следует отметить, что в некоторых прикладных задачах ЛПР за идеальную точку может принять реальное решение, соответствующее некоторым принятым стандартам или планируемым значениям. 1   ...   10   11   12   13   14   15   16   17   ...   21

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

Модель и алгоритм решения многокритериальной открытой задачи о назначениях Обобщим открытую задачу о назначениях на случай многокритериальности. Математическая модель такой задачи в предположенииm nимеет вид:

Модель и алгоритм решения многокритериальной задачи с порядком назначений Обобщим задачу с порядком назначений на случай многокритериальности. Математическая модель такой задачи имеет вид:nn f1(X)  c1 x min,(121) ijiji1 j1… nn k(X)  ckx min,n (122)  xij 1,n j 1, n, (123)  xij 1, i  1, n, (124) {0,1}, i1, n, j 1, n, , i1, n, j h1, n, j*  1, h. (126) f xij гдеP {1,2,.., h}пр.(i, j)  (i, j*)– подмножество индексов работ, распределяемых в первую очередь.В главе 2 показано, что однокритериальная задача с порядком назначений эквивалента совокупности двух последовательно решаемых задач – открытой и с недопустимыми назначениями. Аналогично, многокритериальная задача с порядком назначений эквивалента совокупности двух последовательно решаемых задач – многокритериальной открытой задаче и многокритериальной задаче с недопустимыми назначениями. Следовательно, можно описать алгоритм решения многокритериальной задачи с порядком назначений. Нормировать матрицы затрат Сl, l 1, k: cl clсl ijmin . c  cijl maxlmin Найти размер штрафа Ml 2n. Построить математическую модель назначения на работы из множества P :

Выводы

Заключение

Список использованных источников

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



Добавим к простейшей линейной задаче (1) – (4) дополнительное требование. Будем полагать, что на некоторые работы в силу, например, их важности или срочности, необходимо сделать назначения в первую очередь, и только потом распределять другие работы.

Пусть имеется nработ и nисполнителей. Известны трудовые затраты

cij

на выполнение i исполнителем j работы ( i 1,n,

j 1, n). Каждый


исполнитель может быть назначен только на одну работу, каждая работа может быть выполнена только одним исполнителем. Установлен порядок назначений, состоящий в том, сначала делаются назначения на выделенные работы, затем на остальные. Требуется распределить работы так, чтобы они были исполнены с минимальными затратами и с учетом порядка назначений.

Рассмотрим множество

I {1,2,.., n}

индексов работ. Пусть

P I

подмножество индексов работ, распределяемых в первую очередь,

| P| k.

Без ограничения общности можно полагать, что

P {1,2,.., k}. Очевидно,


этого всегда можно добиться переупорядочиванием столбцов. Пары (i, j)


такие, что

i1, n,

j 1, k,

подлежат распределению назначений в первую


очередь. Обозначим отношение порядка распределения назначений через

пр.

.


Тогда математическая модель задачи с порядком назначений принимает вид:
nn



1

cij

xij



,

j

1, n



f(X)  

i1 j


xij 1

i1

n

xij 1, i1, n,

j1

(50)

xij{0,1}, i1, n, j 1, n,

(51)

пр.

(i, j) (i, j*) , i1, n, j k1, n, j* 1, k.

(52)


Представим данную задачу в виде совокупности двух последовательно решаемых задач о назначениях на работы из множества Pи о назначениях

на работы из множества I\ P. Очевидно, что первая задача представляет

собой открытую задачу о назначениях, математическая модель которой имеет вид:

nk

1(Y) cijyij min,

i1 j1

n

yij 1, j 1, k,

i1

k

yij 1, i1, n,

j1

yij{0,1}, i1, n, j 1, k,





где

Y ( yij)

матрица бинарного отношения, описывающего назначение




исполнителю работы из множества P.

Используя эквивалентное преобразование прямоугольной матрицы затрат в квадратную, эту модель можно привести к простейшей линейной модели вида:

nn

(Y) q1 yij min,

1 ij

i1 j1

(53)

n

yij 1, j 1, n,

i1


(54)

y

yij 1, i 1, n,

j1


(55)

xij{0,1}, i, j 1, n,

(56)


где

q1 cij, i 1, n, j 1, k;



ij

0, i 1, n, j k1, n.

Оптимальное решение задачи (53) (56) можно найти венгерским методом или методом Мака. Обозначим оптимальное решение задачи


(53) (56) через

Y* ( y* ) .

ij


Теперь надо сделать назначения по оставшиеся работы. Очевидно, что нельзя назначать тех исполнителей, которые уже заняты на работах из множества P, также нельзя делать назначения на работы из множества P.

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

I\ P

Обозначим через

Iн. I

подмножество индексов строк, на которые

сделаны назначения,

Iн. {i| yij

1}. На множестве Iустановим бинарное


отношение допустимых назначений

Rд. н. {(i, j) | i Iн., j P},


и наложим на неизвестные

zij, представляющие назначение исполнителя iна


работу jиз множества I\ P, дополнительное ограничение:



где i 1,..., n,

j 1,..., n.

zij

0, если (i, j) Rд. н. ,


Тем самым математическая модель задачи о назначениях на работы из

множества

I\ P

принимает вид:


nn

2 (Z) cijzij min,

i1 j1

n

zij 1, j 1, n,

i1

n

zij 1, i1, n,

j1

zij 0 , (i, j) Rд. н.,

zij{0,1}, (i, j) Rд. н.,


где

Z (zij)

матрица бинарного отношения, описывающего назначение


исполнителю работы из множества I\ P.

Применив эквивалентное преобразование недопустимых назначений, данную модель можно привести к простейшей линейной вида:

nn

(Z) q2 zij min,

2 ij

i1 j1

(57)

n

zij 1, j 1, n,

i1


(58)

n

zij 1, i1, n,

j1


(59)

zij{0,1}, i, j 1, n,

(60)





где

2 cij, если (i, j) Rд. н.,



qijM, если (i, j)  R:



M 2n max сij.

i, j1,n

д. н.


Задача (57) (60) простейшая линейная. Значит, ее оптимальное решение можно найти венгерским методом или методом Мака. Обозначим

оптимальное решение задачи (57) (60) через

Z* (z* ) .

ij