2. Моделювання і методика рішення задач лінійного програмування

2.1 Різновиди форм моделі задач лінійного програмування

2.1.1 Загальна форма моделі

Загальна форма моделі задачі лінійного програмування характеризується наступним:

Знайти сукупність значень n змінних  що задовольняють системі обмежень:

і умові невід’ємності:

,

для яких лінійна функція (цільова функція)  досягає екстремуму (максимуму або мінімуму) [9].

2.1.2 Стандартна форма моделі

Знайти сукупність значень n змінних  що задовольняють системі обмежень:


і умові невід’ємності:

,

для яких лінійна функція (цільова функція)  досягає максимуму.

Якщо ввести у розгляд матрицю:

і вектори:

, , ,

то стандартна форма моделі матиме вид:

Задачу ЛП в стандартній формі зручно вирішувати графічним методом, якщо число змінних дорівнює двом () [1].


2.1.3 Канонічна форма моделі

Знайти сукупність значень n змінних  що задовольняють системі рівнянь:

()

і умові невід’ємності:

(),

для яких цільова функція  досягає максимуму.

Компактна форма моделі має вид:

,

,

. [9].

2.2 Симплекс-метод

Симплекс-метод — метод розв'язання задачі лінійного програмування, в якому здійснюється скерований рух по опорних планах до знаходження оптимального розв'язку; симплекс-метод також називають методом поступового покращення плану [6].

Опишемо метод.

Нехай невироджену задачу лінійного програмування представлено в канонічному вигляді:


\sum_{j=1}^n c_jx_j \to \max,

\sum_{j=1}^n A_jx_j = B,\quad x_j \ge 0,\quad j = 1, 2, \ldots, n,

де X = (x1, …, xn) — вектор змінних,

C = (c1, …., cn), B = (b1, …, bm)T,

Aj = (a1j, …, amj)T, j = 1, …, n — задані вектори,

T — знак транспонування, та

\bar{X} = (\bar{x}_1, \ldots, \bar{x}_m)

відмінні від нуля компоненти опорного плану, для полегшення пояснення розташовані на перших m місцях вектору X. Базис цього плану — \bar{A} = (A_1, \ldots, A_m). Тоді

\sum_{i=1}^m A_i \bar{x}_i = B, (1)

\sum_{i=1}^m c_i x_i = \bar{z}_0, (2)

де \bar{z}_0 значення лінійної форми на даному плані. Так як вектор-стовпці матриці A лінійно незалежні, будь який із векторів умов Aj розкладається по них єдиним чином:

\sum_{i=1}^m A_i x_{ji} = A_j, \qquad j = 1, \ldots, n, (3)

\sum_{i=1}^m c_i x_{ij}, \qquad j = 1, \ldots, n, (4)

де xij коефіцієнт розкладання. Система умов

\sum_{i=1}^m A_i x_i + A_k x_k = B, \qquad k \ge m + 1, (5)

zk ≥ 0, xj = 0, j = m + 1, …, n, j ≠ k (6)

при заданому k визначає в просторі змінних задачі промінь, який виходить із точки, яка відповідає опорному плану, що розглядається. Нехай значення змінної xk при русі по цьому променю дорівнює θ, тоді значення базисних змінних дорівнюють xi(θ). В цих позначеннях рівняння (5) можна представити в виді

\sum_{i=1}^m x_i (\theta) A_i + \theta A_k = B. (7)

помноживши рівняння (3) на θ при j = k та віднявши від рівняння (1), отримаємо

\sum_{i=1}^m (\bar{x}_i - \theta x_{ik}) A_i + \theta A_k = B. (8)

Із рівнянь (7-8) отримаємо

x_i (\theta) = \bar{x}_i - \theta x_{ik}, \qquad i = 1, \ldots, m. (9)

Оскільки xi(θ) при θ = 0 визначають план задачі, то найбільше θ, яке не порушує обмеження xi (θ) ≥ 0, визначається із умови

\theta_0 = \min_{i \in I} \frac{\bar{x}_i}{x_{ik}}. (10)

де I = {i | xik > 0}.

В силу невиродженості задачі мінімум досягається не більш ніж для одного i = J та θ > 0. Значення лінійної форми при θ = θ0 визначається із рівнянь (9), (4), (2)

z_0 (\theta_0) = \sum_{i=1}^m c_i x_i (\theta_0) + c_k \theta_0 = \bar{z}_0 - \theta_0 \Delta_k,

де Δk = zk — ck. Очевидно, Δj = 0 для j = 1, …, m.

Нехай \bar{A} = E — початковий базис із m одиничних векторів. Всі дані задачі записуються у вигляді симплекс-таблиці (першої ітерації обчислювального процесу). Симплекс-алгоритм розв'язання задачі лінійного програмування складається із наступних операцій:

1.  знайти Δk = minjΔj. Якщо Δk = 0, тоді план, який розглядається оптимізовано; якщо Δk < 0, вектор Ak вводиться в базис;

2.  знайти θ0 та l, для якого \theta_0 = \bar{x}_l / x_lk, із формули (10). Якщо I = Λ — порожня множина, лінійна форма необмежена зверху; якщо I ≠ Λ вектор Al виводиться із базису;


Информация о работе «Економічні задачі лінійного програмування і методи їх вирішення»
Раздел: Информатика, программирование
Количество знаков с пробелами: 25131
Количество таблиц: 7
Количество изображений: 6

Похожие работы

Скачать
12465
2
0

... програмування та її економіко – математичної моделі, опис функцій і команд у вирішенні задач лінійного програмування засобами Exel, а також рішення конкретної задачі за допомогою ПК. 1. Побудова економіко–математичної моделі Загальна модель задачі математичного програмування має такий вигляд: У структурі моделі (1.1) можна виділити 3 елементи: 1) Набір керованих змінних x1, x2, ... x ...

Скачать
26156
0
3

... і (усі сj’ ≥0), але не задовільняє критерії допуску (не всі ві ≥0). Варіант симплекс метода, який приміняється для рішення таких задач, називається двоїстим симплекс методом. За його допомоги рішаються задачі лінійного програмування виду:  (4.3.1) де система обмежень має такий вигляд і всі приведені коефіцієнти цільової функції сj’ ≥0, і=1,n. При цьому умова ві ≥0, ...

Скачать
15588
18
5

2х1+5х2 + 15х3+ 10х4 досягає максимуму при системі обмежень: Розв'язуємо задачу лінійного програмування симплексним методом. Введемо балансні змінні х5 ≥ 0, х6≥ 0, х7≥ 0. Їх величина поки що невідома, але така, що перетворює відповідну нерівність у точну рівність. Після цього, задача лінійного програмування набуде вигляду: ∫ = 12х1+5х2 + 15х3+ 10х4 → max при ...

Скачать
182691
25
29

... – відпускна ціна i-го заводу j-й продукції; - закупівельна ціна i-го заводу j-й продукції, - шуканий обсяг закупівель на i-м заводі j-й продукції.   2.5 Перевірка моделі оптимізації на контрольному прикладі В цьому підрозділі на прикладі підприємства ТОВ "Гермес-Груп" розрахуємо модель (2.4.5) за допомогою електроних таблиць MSEcxel. Цільова функція має вигляд: де - об’єм закупівлі; ...

0 комментариев


Наверх