Донецкий национальный технический университет
Опубликован: 09.07.2007 | Доступ: свободный | Студентов: 3114 / 709 | Оценка: 4.34 / 4.12 | Длительность: 13:54:00
Специальности: Программист

Лекция 3: Математическое программирование. Линейное программирование. Виды задач линейного программирования. Постановка задач линейного программирования и исследование их структуры. Решение задач линейного программирования симплекс-методом

< Лекция 2 || Лекция 3: 1234 || Лекция 4 >

Задача о раскрое материалов. Пусть поступает в раскрой m различных материалов. Требуется изготовить из них k разных комплектующих изделий (комплектов) в количествах, пропорциональных величинам b1, b2, . , bk (условия комплектности). Пусть каждую единицу j -го материала j=1, ., m можно раскроить n различными способами, так что при использовании i -го способа раскроя, i=1, ., n получим аij единиц k -го изделия. Нужно определить такой план раскроя материалов, обеспечивающий максимальное количество комплектов, если имеющийся запас j -го материала составляет аj единиц.

Обозначим через xij количество единиц j -го материала, раскраиваемых i -м способом, а через x -общее количество изготавливаемых комплектов.

Математическая модель этой задачи имеет такой вид:

\text{максимизировать} \; x ( 3.8)
при условиях
\sum_{i=1}^n x_{ij} \leq a_j, ( 3.9)
\sum_{j=1}^m x_{ij} a_{ij}^{(k)} = b_k x, \quad k=\overline{1, K} ( 3.10)

Условие (3.9) означает ограничение на запас j -го материала, а (3.10) - условие комплектности.

Оптимальные балансовые модели. Рассмотрим n -отраслевую балансовую модель с постоянными технологическими коэффициентами, задаваемыми матрицей затрат A=||aij||, где aij затраты продуктов i -й отрасли на производство единицы продукции j -й отрасли. Производственные мощности i -й отрасли ограничивают ее валовой выпуск величиной di (i = 1, ...,n), и пусть цена конечного продукта i -й отрасли составляет ci единиц.

Нужно определить оптимальный валовой выпуск продукции каждой отрасли, при котором будет достигнут максимальный суммарный выпуск конечного продукта в денежном выражении.

Обозначим вектор валовой продукции всех отраслей через x=[x1,.,xn], а вектор конечного продукта y=[y1,.,yn]. Тогда yi - объем продукции i -й отрасли, идущего на накопление.

Между векторами x и y существует следующая связь:

x = Ax+y,

где Ax - продукт, расходуемый на потребление. Отсюда

y=x [E-А], x=[E-A]-1y

Математическая модель этой задачи имеет вид

максимизировать cTy

при условиях

x=[E-A]^{-1}y \leq d , \; y \geq 0;

Кроме того, в этой задаче можно дополнительно использовать такие, например, ограничения на конечные продукты:

а) y1:y2:.:yn=b1:b2:.:bn -условие комплектности;

б) d_i \geq y_i \geq b_i - условие ограниченности выпуска конечного продукта.

Форма записи задачи ЛП. Задачу линейного программирования можно сформулировать так:

\text{максимизировать} \; \sum_{i=1}^n c_i x_i ( 3.11)
при условиях

& a_{11}x_1 + a_{12}x_2+ . +a_{1n}x_n \leq b_1 ; \\
& a_{21}x_1 + a_{22}x_2+ . +a_{2n}x_n \leq b_2 ; \\
& . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad \\
& a_{m1}x_1 + a_{m2}x_2+ . +a_{mn}x_n \leq b_m ; ( 3.12)
x_1 \geq 0, x_2 \geq 0, ., x_n \geq 0, ( 3.13)

Ограничения (3.13) называют условиями неотрицательности переменных. В рассматриваемом случае все ограничения имеют вид неравенств.

Иногда они могут быть смешанными, то есть неравенства и равенства:

& a_{11}x_1 + a_{12}x_2+ . +a_{1n}x_n \leq b_1 ; \\
& a_{21}x_1 + a_{22}x_2+ . +a_{2n}x_n \leq b_2 ; \\
& . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad \\
& a_{m1}x_1 + a_{m2}x_2+ . +a_{mn}x_n \leq b_m ; \\
& a_{m+1,1}x_1 + a_{m+1,2}x_2+ . +a_{m+1,n}x_n = b_{m+1} ; \\
& a_{k1}x_1 + a_{k2}x_2+ . +a_{kn}x_n = b_k ( 3.14)
Если все ограничения задачи ЛП имеют вид строгих равенств

& a_{11}x_1 + a_{12}x_2+ . +a_{1n}x_n = b_1 ; \\
& a_{21}x_1 + a_{22}x_2+ . +a_{2n}x_n = b_2 ; \\
& . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad . \quad \\
& a_{m1}x_1 + a_{m2}x_2+ . +a_{mn}x_n = b_m ; ( 3.15)
то данная форма записи называется канонической.

В матричной форме задача ЛП записывается следующим образом:

\text{максимизировать} \; c^T x ( 3.16)
при ограничениях
Ax \leq b;
x \geq 0 , ( 3.17)
где А - матрица ограничений размером ( m x n ); b(m*1) - вектор-столбец свободных членов; x(n*1) - вектор переменных; с=[c1, c2,.,cn] -вектор (строка) коэффициентов целевой функции.

В векторной форме ограничения (3.14) записывают так:

A_1 x_1 + A_2 x_2 + . + A-n x_n \leq b , ( 3.18)

Допустимым множеством решений задачи (3.11)-(3.13) называется множество R(х) всех векторов x, удовлетворяющих условиям (3.12) и (3.13).

Множество R(х) представляет собой выпуклое многогранное множество или выпуклый многогранник.

Решение x0 называется оптимальным, если оно удовлетворяет условию

c^T x_0 \ge c^T x,
для всех x \in R (х).

Поскольку поиск \min f(х) эквивалентен поиску \mах [-f(х)], то задачу ЛП всегда можно свести к эквивалентной задаче максимизации.

< Лекция 2 || Лекция 3: 1234 || Лекция 4 >