Задача прикрепления потребителей к поставщикам (транспортная задача)
Задача о пищевом рационе
Ферма производит откорм скота с коммерческой целью. Для простоты допустим, что имеется всего четыре вида продуктов: П1, П2, П3, П4; стоимость единицы каждого продукта равна соответственно с1, с2, с3, с4. из этих продуктов требуется составить пищевой рацион, который должен содержать: белков – не менее b1 единиц; углеводов – не менее b2 единиц; жиров – не менее b3 единиц. Для продуктов П1, П2, П3, П4 содержание белков, углеводов и жиров (в единицах на единицу продукта) известно и задано в таблице, где aij (i = 1, 2, 3, 4, j = 1, 2, 3) – какие-то определенные числа; первый индекс указывает номер продукта, второй – номер элемента (белки, углеводы, жиры).
Продукт | Элементы | ||
Белки | Углеводы | Жиры | |
П1 | a11 | a12 | a13 |
П2 | a21 | a22 | a23 |
П3 | a31 | a32 | a33 |
П4 | a41 | a42 | a43 |
Требуется составить такой пищевой рацион (то есть назначить количества продуктов П1, П2, П3, П4, входящих в него), чтобы условия по белкам, углеводам и жирам были выполнены и при этом стоимость рациона была минимальна.
Составим математическую модель. Обозначим х1, х2, х3, х4 количества продуктов П1, П2, П3, П4, входящих в рацион. Показатель эффективности, который требуется минимизировать, – стоимость рациона (обозначим ее L); она линейно зависит от элементов решения х1, х2, х3, х4:
L= с1х1+ с2 х2+ с3 х3+ с4 х4,
Или, короче,
,
Итак, вид целевой функции известен и она линейна. Запишем теперь в виде формул ограничительные условия по белкам, углеводам, жирам. Учитывая, что в одной единице продукта П1 содержится a11 единиц белка, в х1 единицах - a11 х1 единиц белка, в х2 единицах продукта П1 содержится a21 х2 единиц белка и т.д., получим три неравенства:
Эти линейные неравенства представляют собой ограничения, накладываемые на элементы решения х1, х2, х3, х4.
Таким образом, поставленная задача сводится к следующей: найти такие неотрицательные значения переменных х1, х2, х3, х4,, чтобы они удовлетворяли ограничениям – неравенствам и одновременно обращали в минимум линейную функцию этих переменных:
Задача о планировании производства
предприятие производит изделия трех видов U1, U2, U3. По каждому виду изделия предприятию спущен план, по которому оно обязано выпустить не менее b1 единиц изделия U1, не менее b2 единиц изделия U2 и не менее b3 единиц изделия U3. План может быть перевыполнен, но в определенных границах; условия спроса ограничивают количества произведенных единиц каждого типа: β1, β2, β3 единиц. На изготовление изделий идет какое-то сырье; всего имеется четыре вида сырья s1, s2, s3,, s4 , причем запасы ограничены числами γ1, γ2, γ3, γ3 единиц каждого вида сырья. Теперь надо указать, какое количество сырья каждого вида идет на изготовление каждого вида изделий. Обозначим aij количество единиц сырья вида s1 (i = 1, 2, 3, 4), потребное на изготовление одной единицы изделия Uj (j = 1, 2, 3). Первый индекс у числа aij – вид изделия, второй – вид сырья. Значения aij сведены в таблицу (матрицу).
Сырье | Изделия | ||
U1 | U2 | U3 | |
s 1 | a11 | a21 | a31 |
s 2 | a12 | a22 | a32 |
s 3 | a13 | a23 | a33 |
s 4 | a14 | a24 | a34 |
При реализации одно изделие U1 приносит предприятию прибыль с1, U2 – прибыль с2, U3 – прибыль с3. Требуется так спланировать производство (сколько и каких изделий производить), чтобы план был выполнен или перевыполнен (но при отсутствии «затоваривания»), а суммарная прибыль обращалась бы в максимум.
Запишем задачу в форме задачи линейного программирования. Элементами решения будут х1, х2, х3 – количества единиц изделий U1, U2, U3, которые мы произведем. Обязательность выполнения планового задания запишется в виде трех ограничений-неравенств:
Отсутствие излишней продукции (затоваривания) даст нам еще три ограничения-неравенства:
Кроме того, нам должно хватить сырья. Соответственно четырем видам сырья будем иметь четыре ограничения-неравенства:
Прибыль, приносимая планом (х1, х2, х3), будет равна
L= с1х1+ с2 х2+ с3 х3.
Таким образом, мы снова получили задачу линейного программирования: найти такие неотрицательные значения переменных х1, х2, х3,, чтобы они удовлетворяли ограничениям – неравенствам и одновременно обращали в максимум линейную функцию этих переменных:
.
Задача прикрепления потребителей к поставщикам (транспортная задача)
Рассмотрим проблему организации перевозки некоторого условного продукта между пунктами его производства, количество которых равно m, и n пунктами потребления. Каждый i–й пункт производства (i = 1,…, m) характеризуется запасом продукта аi ≥0, а каждый j-ый пункт потребления (j = 1,…, n) – потребностью в продукте bj≥0. Сеть коммуникаций, соединяющая систему рассматриваемых пунктов, моделируется с помощью матрицы С размерности m×n, элементы которой (сij) представляют собой нормы затрат на перевозку единицы груза из пункта производства Ai в пункт потребления Bj. То есть задана таблица (матрица):
bj аi | B1 | B2 | … | Bn | ||||
A1 | c11 | c12 | … | c1n | a1 | |||
A2 | c21 | c22 | … | c2n | a2 | |||
… | … | … | … | … | … | |||
Am | cm1 | cm2 | … | cmn | am | |||
b1 | b2 | … | bn |
Строки транспортной таблицы соответствуют пунктам производства Аi (в последней клетке каждой строки указан объем запаса продукта ai), а столбцы – пунктам потребления Вj (последняя клетка каждого столбца содержит значение потребности bj). Все клетки таблицы (кроме тех, которые расположены в нижней строке и правом столбце) содержат информацию о перевозке из i–го пункта производства в j–ый пункт потребления.
План перевозки груза в данной транспортной сети представляется в виде массива элементов размерности m×n:
.
Ограничения на возможные значения хij имеют вид:
1) ограничения на удовлетворение потребностей во всех пунктах потребления:
(*)
2) ограничения на возможности вывоза запасов из всех пунктов производства:
(**)
3) условия неотрицательности компонент вектора плана х:
Существенной характеристикой описываемой модели является соотношение параметров аi и bj. Если суммарный объем производства равен суммарному объему потребления, а именно,
,
то система называется сбалансированной (или говорят, что имеют закрытую транспортную задачу). При выполнении условия сбалансированности разумно накладывать такие ограничения на суммарный ввоз и вывоз груза, при которых полностью вывозится весь груз и не остается неудовлетворенных потребностей, то есть условия (*) и (**) приобретают форму равенств.
Предположим, что затраты на перевозку прямо пропорциональны количеству перевозимого груза. Тогда суммарные затраты на перевозку в системе примут вид:
Тогда модель транспортной задачи имеет вид:
или в подробном виде:
Если привести условия транспортной задачи к канонической форме задачи линейного программирования, то матрица задачи будет иметь размерность (m+n) ×mn. Ранг матрицы задачи равен m+n-1 , и ее невырожденный базисный план план должен содержать m+n-1 ненулевых компонент.