
- •Мета і програма викладання дисципліни
- •2. Зміст дисципліни
- •2.1. Назва розділів і тем лекційного курсу, їх зміст
- •Лабораторно-практичні заняття
- •Форма контролю і критерії оцінки знань
- •Модуль 1
- •Порядок опрацювання завдань
- •Тема 1. Складання математичних моделей задач лінійного програмування
- •Задачі для самостійного розв’язання
- •Тема 2. Цілочисельне програмування
- •Приклад розв’язання лінійної задачі цілочисельного програмування
- •Розв’язати задачі цілочисельного програмування методом Гоморі
- •Тема 3. Нелінійне програмування.
- •3.1. Загальна характеристика методів розв’язування задач нелінійного програмування.
- •3.2. Метод множників Лагранжа.
- •3.3. Задачі для самостійного розв’язання:
- •Тема 4. Коротка характеристика моделей управління запасами
- •Задачі для самостійного розв’язання
- •Тема 5. Використання excel для розв’язання задач лінійного програмування
- •Питання для контролю знань:
- •Рекомендована література
- •Додаткова література
Тема 2. Цілочисельне програмування
Цілочисельне програмування – це розділ математичного програмування, який використовує змінниі лише у цілочисельному вигляді в тому числі і в окремому випадку, коли змінні є бінарними (0; 1). Цілочисельне програмування є розділом більш загального дискретного програмування, яке має справу у більш широкому значенні з неподільностями, комбінаторними задачами, множинами, діапазонами значень. Наприклад, у роботі розглянуті питання дискретної оптимізації у САПР. З математичної точки зору задачі цілочисельного програмування можуть бути лінійними або нелінійними. Ми будемо розглядати лінійні задачі, які мають стандартну форму:
(2.1)
Таким чином, зовнішній вигляд задачі лінійного цілочисельного програмування практично не відрізняється від звичайної задачі ЛП, за виключенням того, що на рішення ЛП накладається додаткове обмеження: визначення лише цілих значень змінних. Припустимо, що ми розв’язали задачу ЛП згідно з моделлю (рис. 1.1) (але без вимоги цілозначності) і отримали область рішень ABCD (рис. 1.1). Цілі значення змінних xj на рис. 1.1 позначені точками. Ці точки і є метою визначення задач цілочисельного програмування. В результаті задача цілочисельного програмування має область рішень OKLMPN, тобто внутрішню відносно області OABCD звичайної задачі ЛП (на рис. 1.1 область ЛЦП заштрихована).
Задачі лінійного цілочисельного програмування (ЛЦП) вирішують проблеми із змінними, які визначають: кількість одиниць неподільної продукції; розподіл завдань між підприємствами; планування роботи при різних номенклатурах продукції та інш. Встановлено, що округленням лінійного рішення неможливо отримати цілочисельне рішення. Методи рішення задач цілочисельного програмування можна поділити на дві групи:
1. Метод відсічень (відсікаючих площин; метод Гоморі);
2. Комбінаторні методи (метод гілок та меж; аддитивний метод з бінарними змінними).
Метод відсікаючих площин існує у двох варіантах:
1. Перший алгоритм Гоморі для рішення цілком цілочисельних задач;
2. Другий алгоритм Гоморі для рішення частково цілочисельних задач.
Вони відрізняються способом формування відсічення. Ідея розрахунків методом відсікаючих площин для рішення цілком цілочисельних задач (1-ий метод Гоморі) полягає у такому підході:
1. Лінійна задача (9.1) розв’язується без врахування цілочисленності xj будь-яким симплекс-методом (наприклад, прямим симплекс-методом). В результаті отримують оптимальний опорний план, який має канонічний вигляд:
(2.2)
2) Якщо серед рівнянь-обмежень (2.2) є дробові значення базисних змінних xi = bi, то обирають серед них таке значення, яке має найбільшу дрібну частину. Це рівняння записують і у вигляді:
і
перетворюють їх у додаткову нерівність
(2.3)
Правила обрання чисел :
1. Якщо дробове число aij або bi є додатнім числом, то [aij] та [bi] є цілими додатніми числами і дорівнюють цілій частині числа aij або bi . Наприклад:
ajj=2,3; [aij]=2; aij=aij – [aij]=2,3 – 2=0,3
bi=1,25; [bi]=1; bi=bi – [bi]=1,25 – 1=0,25
2. Якщо дробове число aij або bi є від’ємним числом, то [ aij] та [ bi ] є від’ємним цілим числом, яке по абсолютному значенню на “1” більше за абсолютне значення цілої частини числа aij або bi . Наприклад:
3. Додаткова нерівність (2.3) має лише додатні коефіцієнти. Вона множенням на “-1” спочатку приводиться до вигляду, який повинна мати нерівність у симплекс-методі згідно із стандартною формою:
а потім за допомогою додаткової змінної xn+1 перетворюється у рівняння:
яке додається до оптимального опорного плану-системи (2.2) і сумісно з ним створює псевдоплан (він так називається, бо має одне від’ємне значення .
4. Цей псевдоплан розв’язується двоїстим симплекс-методом. В результаті отримують новий оптимальний опорний план (з додатніми значеннями bi та a0j). Якщо в новому оптимальному опорному плані існують базисні змінні xj = bi, які мають дробові значення, то знов додають одне додаткове обмеження, і процес розрахунків повторюється до отримання цілочисельних значень базисних змінних.
Ознакою відсутності рішення задачі є наявність в таблиці хоча б одного рядка з цілими величинами aij та вільним дробовим членом bi, що вказує на відсутність рішення у цілих числах (наприклад, 5x1 + 10x2 – 6x3=7/3). На відміну від задач ЛП, задачі ЛПЦ вимагають значно більшого об’єму обчислень навіть при малих і= m та j = n. Як показала практика, жоден з варіантів методу відсікаючих площин не забезпечує високої ефективності.