logo
Лекции!

Формулировка задачи.

Даны линейная функция

Z = С1х12х2+... +СNxN (1.1)

и система линейных ограничений

a11x1 + a22x2 + ... + a1NХN = b1

a21x1 + a22x2 + ... + a2NХN = b2

. . . . . . . . . . . . . . . . . . . . . . . . . (1.2)

ai1x1 + ai2x2 + ... + aiNХN = bi

. . . . . . . . . . . . . . . . . . . . . . . . .

aM1x1 + aM2x2 + ... + aMNХN = bM

xj 0 (j = 1, 2, ... ,n) (1.3)

где аij, bj и Сj - заданные постоянные величины.

Найти такие неотрицательные значения х1, х2, ..., хn, которые удовлетворяют системе ограничений (1.2) и доставляют линейной функции (1.1) минимальное значение.

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

Векторная форма записи.

Минимизировать линейную функцию Z = СХ при ограничениях

А1х1 + А2x2 + ... + АNxN = Ао, X0 (1.4)

где С = (с1, с2, ..., сN); Х = (х1, х2, ..., хN); СХ - скалярное произведение; векторы

A1 = , A2 = ,..., AN = , A0 =

состоят соответственно из коэффициентов при неизвестных и свободных членах.

Матричная форма записи.

Минимизировать линейную функцию, Z = СХ при ограничениях АХ = А0, Х0, где С = (с1, с2, ..., сN) - матрица-cтрока; А = (аij) - матрица системы;

Х = - матрица-столбец, А0 = матрица-столбец

Минимизировать линейную функцию Z = Сjхj при ограничениях.

0пределение 1. Планом или допустимым решением задачи линейного программирования называется Х = (х1, х2, ..., хN), удовлетворяющий условиям (1.2) и (1.3).

0пределение 2. План Х = (х1, х2, ..., хN) называется опорным, если векторы А (i = 1, 2, ..., N), входящие в разложение (1.4) с положительными коэффициентами х , являются линейно независимыми.

Так как векторы А являются N-мерными, то из определения опорного плана следует, что число его положительных компонент не может превышать М.

0пределение 3. Опорный план называется невырожденным, если он содержит М положительных компонент, в противном случае опорный план называется вырожденным.

0пределение 4. Оптимальным планом или оптимальным решением задачи линейного программирования называется план, доставляющий наименьшее (наибольшее) значение линейной функции.

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