
- •Количество выпущенных столов должно быть не менее 180, а количество стульев не менее 200. Этим условиям будут соответствовать ограничения
- •Задача составления оптимального плана поперечного раскроя бревен
- •Лекция 6
- •Лекция 9
- •Открытые транспортные задачи
- •Модели задач, сводимых к транспортной
- •Лекция 10
- •Метод наискорейшего подъема
- •И приравняем полученное выражение к «0»
- •Градиентные методы нелинейного программирования
- •Оптимизация систем с учетом нескольких критериев оптимизации
Открытые транспортные задачи
Это такие транспортные задачи, в которых суммарное количество груза не равно суммарному объёму заявок.
.
(9.3)
Если
(9.4)
То есть объем запасов груза больше чем суммарный объем заявок то эта транспортная задача с избытком груза. В результате решения этой задачи у какого – то поставщика останется нераспределённый груз.
Если
,
(9.5)
то эта задача с избытком заявок. В результате её решения некоторые из заявок окажутся не полностью удовлетворёнными. Такие задачи решаются формальным способом сведения данные открытой ТЗ к закрытой.
В
задачи с избытком груза с этой целью
вводят дополнительного, фиктивного
потребителя, которому приписывают объём
заявок равной разности
,
а стоимость перевозки груза от любого
поставщика к этому фиктивному потребителю
считают равной нулю.
Рассмотрим пример. Пусть имеется транспортная задача, исходные данные для которой сведены в табл. 9.3.
Табл.9.3
Поставщики |
Запас |
В1 |
В2 |
В3 |
В4 |
А1 |
20 |
|
|
|
|
А2 |
80 |
|
|
|
|
А3 |
30 |
|
|
|
|
Объём заявок |
50 |
40 |
10 |
30 |
В
этой задаче имеется 3 поставщика
и 3 потребителя
,
причем объем запасов равен 130 , а объем заявок- 100.То есть, рассматриваемая задача является открытой транспортной задачей с избытком груза. Введем фиктивного потребителя . Объем заявок для этого потребителя положим равным разности между объемом запасов и объемом заявок:
=130-100=30.
В результате формально получаем закрытую ТЗ.
После того как такая закрытая ТЗ решена, про фиктивного потребителя «забывают», а распределённый для него груз и приписывают тем поставщикам, от которых он получен. Например, если в результате решения задачи получится, что =30, то физически это означает, что 30 единиц груза останутся невывезенными от 2-го поставщика.
В задачах с избытком заявок в транспортную таблицу вводят фиктивного поставщика. Объем запасов груза для такого поставщика определяется как разность между объемом заявок и объемом запасов груза.
Лекция 9
Модели задач, сводимых к транспортной
Задача о размещении производства.
Имеется 4 населённых пункта в каждом из которых может быть построено производственные предприятия, например, лесопильные. Все они предназначены для выпуска однородной продукции- пиломатериалов. Известны величины а1,а2, а3, а4 производственной мощности каждого из этих предприятий по выпуску пиломатериалов, а также себестоимость производства одной единицы продукции, которая будет производиться на каждом из этих предприятий:
С1 – себестоимость 1 м3 п/м, вырабатываемый на 1-м предприятии;
С2 - -1- на 2-м предпритии
С3 - -1- на 3-м предприятии
С4 - -1- на 4-м предприятии.
Выпускаемая продукция будет использоваться 5-ю потребителями, для каждого из которых задан объем его заявок:
b1 – объем заявок 1-го потребителя
b2 - -1- 2-го потребителя
b3 - -1- 3-го потребителя
b4 - -1- 4-го потребителя
b5 - -1- 5-го потребителя.
Известны транспортные затраты tij на перевозку единицы продукта от каждого поставщика каждому потребителю:
t11 t12 …..t15
t21 t22 …..t25
t31 t32 …..t35
t41 t42 …. t45
Требуется определить какой должна быть мощность каждого из предприятий и план перевозок готовой продукции так? чтобы cуммарные затраты на производство и транспортировку были минимальны.
При этом должны выполняться следующие условия:
1.Объем производства на каждом из предприятий не должен превышать его предельную мощность по выпуску продукции.
2. Вся произведенная продукция на каждом предприятии должна быть полностью вывезена.
3. Заявки каждого из потребителей должны быть полностью выполнены.
В сформулированной задаче требуются учесть как производственные, так и транспортные издержки. Поэтому ее часто называют производственно- транспортной задачей. При составлении ее математической модели, мы, для простоты, будем считать, что себестоимость продукции не зависит от объема ее производства.
Введём 2 группы элементов решения
Обозначим через y1- объем производства продукции на 1-м предприятии, у2 –на 2-м, у3 и у4 соответственно на 3-м и 4-ом предприятиях. Так как объем yi производства , i=1,4 должен быть не более предельной мощности ai cоответствующего предприятия, должны выполняться неравенства
(9.1)
2-я группа элементов решения - это объёмы xij перевозки продукции от i-го предприятия к j-му потребителю. Как и в обычной транспортной задаче требования удовлетворить заявки каждого потребителя запишутся в следующем виде:
Для 1-го потребителя( j=1)
;
Для 2-го
Аналогичным образом записываются ограничения для 3-го, 4-го и 5-го потребителя. В результате получаем систему ограничений, учитывающую требования полного удовлетворения заявок каждого из 5 потребителей:
(9.2)
Следующее
условие, которое требуется учесть при
построении модели, это требование
вывести всю продукцию от каждого
предприятия. Объем продукции, которая
производится на 1-м предприятии мы
обозначили
.
Эта продукция будет поставляться 1-му
потребителю в количестве
,
2-му в количестве
,
3-му, 4-му и 5-му в объемах, соответственно,
,
и
.
Сумма этих объемов должна быть равна
общему объему
продукции производимой на 1-м предприятии:
+ + + + =
Аналогичные выражения можно записать для каждого из оставшихся трех предприятий. В результате получим следующую систему ограничений:
+ + + + =
+
+
+
+
=
+
+
+
+
=
+
+
+
+
=
В компактной форме эти ограничения запишутся таким образом:
(9.3)
Перейдем к построению целевой функции. Себестоимость всей производимой продукции будет равна
Стоимость перевозки всей продукции, как и в обычной транспортной задаче можно найти из формулы
(9.4)
В соответствии с этим целевая функция, минимизирующая суммарные затраты на производство и транспортировку продукции будет иметь вид:
+ →min (9.5)
Полученная модель по своей структуре не соответствует структуре ранее рассмотренных нами транспортных задач. Покажем, что путем простых преобразований ее легко привести к обычной транспортной задаче.
Для этого в целевую функцию (9.5) подставим выражения для у1 у2 у3 у4 из ограничений (9.3 ). Тогда выражение (9.5) приобретает вид
+
→min
(9.6)
Или, в компактной форме:
+
→min
(9.7)
Это выражение является функцией элементов решения xij только одной второй группы, и не содержит элементы решения , , и . Поэтому, после алгебраических преобразований получаем окончательное выражение для целевой функции задачи:
(9.8)
Целевая
функция ( 9.8) и ограничения ( 9.1)- (9.3)
cоответствуют
транспортной задаче. Принципиальное
отличие целевой функции ( 9.8 ) от целевой
функции обычной транспортной задачи в
том, что ее коэффициенты
учитывают не только транспортные но
и производственные затраты.
Задача о назначениях.
Имеется n бригад, каждая из которых может выполнять любую из n различных работ. Известна трудоёмкость cij. Выполнение каждой работы каждой бригадой .
cij
– трудоёмкость выполнения i
– той работы j
– той бригадой,
,n;
,n
Требуется так распределить бригады по работам, чтобы суммарная трудоёмкость их выполнения была min. При этом каждая бригада должна выполнять только одну работ, а каждая работа должна выполняться только одной бригадой.
В качестве элементов решения этой задачи будем использовать переменные , которые могут принимать только два значения 0 и 1. Такие переменные называются булевыми переменными.
Переменная принимает значение 0 или 1 в зависимости от того, выполняется или нет I-я работа j-ой бригадой:
1 если i-я работа выполняется j-ой бригадой.
= (9.9)
0 если i-я работа не выполняется j-ой бригадой
С учетом введенных переменных целевая функция, минимизирующая суммарную трудоёмкость работ запишется в виде
(9.10)
Прежде чем перейти к построению системы ограничений модели, построим для этой задачи таблицу 9.1, аналогичную обычной транспортной таблице, для случая когда количество работ и бригад равно 3: n=3.
Табл. 9.1
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
1 |
|
|
|
|
1 |
|
1 |
1 |
1 |
− |
Эту таблицу мы будем называть таблицей распределения работ. В табл 9.1 в крайнем левом столбце (там где в транспортной таблице размещались условные обозначения поставщиков) проставлены условные обозначения работ: -первая работа, - вторая и т.д. В верхней строке ( там где в обычной транспортной задаче проставлены условные обозначения потребителей) стоят условные обозначения бригад: -первая бригада, -вторая и т.д. В соответствующих клетках таблицы записаны переменные , и ( в правых верхних углах ) стоимость cij выполнения i-ой работы j-ой бригадой.
Запишем требования закрепления за каждой бригадой только одной работы. Допустим, что за 1-ой бригадой закреплена 1-я работ. Тогда элементы решения, относящиеся к первой бригаде принимают следующие значения:
=1, =0, =0, ( 9.11 )
Если за 1-ой бригадой закреплена 2-я работа, то 1 будет уже равна переменная , а остальные - 0:
=0, =1, =0. (9.12)
Таким же образом можно определить значения этих переменных для случая, когда первая бригада выполняет 3-ю работу:
=0, =0, =1. (9.13)
Как видим, в любом из этих случае одна из переменных ( а именно та, которая соответствует закрепленной за 1-й бригадой работой) находящихся в столбце « » будет равна единице, а остальные-0. Это означает, что сумма этих переменных всегда должна быть равна 1 и ограничение, обеспечивающее выполнение требования закрепления за 1-й бригадой только одной работы будет иметь вид:
+ + =1. (9.14)
Аналогичные ограничения обеспечивающее выполнение требования закрепления за 2-й, 3-й и 4-й бригадой только одной работы будут иметь вид:
Для 2-й бригады- + + =1
-11- 3-й -11- + + =1 (9.15)
В компактной форме эти ограничения можно записать следующим образом:
(9.16)
Рассмотрим ограничения обеспечивающие условия чтобы каждая работа была закреплена за какой–либо одной бригадой. Очевидно, что при построении таких ограничений можно использовать методику (9.11)-(9.15) построения ограничений
для выполнения требования закрепления за каждой бригадой только одной работы. Однако, при формировании ограничений обеспечивающих выполнение условия чтобы каждая работа была закреплена за какой–либо одной бригадой суммирование элементов решения следует производить по строке . Например, ограничение, обеспечивающие выполнение условия закрепления 1-й работы только за одной бригадой будет иметь вид:
+ + =1 (9.17)
Аналогичные ограничения обеспечивающее выполнение требования закрепления 2-й, 3-й и 4-й работы только за одной бригадой будут иметь вид:
Для 2-й работы - + + =1 (9.18)
-11- 3-й -11- + + =1
В компактной форме эти ограничения можно записать следующим образом:
(9.19)
Полученная модель (9.10)-(9.19) по своей структуре совпадает с моделью обычной транспортной задачи за исключением требования целочисленности переменных. Однако доказано, что не смотря на это отличие, задачу о назначениях можно решать любым методом пригодным для решения транспортных задач.