КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Методи розв’язування задач цілочислового лінійного програмування
Для знаходження оптимального розв’язку цілочислових задач використовують спеціальні методи. Найпростішим методом розв’язування цілочислової задачі є знаходження її оптимального розв’язку, як задачі, що має неперервні змінні, з подальшим округленням останніх. Такий підхід часто є виправданим. Проте якщо мова йде про випуск продукції великої вартості (наприклад, турбіни до електростанцій чи агрегату в сушильний цех), то будь-які заокруглення недопустимі. Для знаходження оптимальних планів цілочислових задач застосовують дві основні групи методів: - методи відтинання; - комбінаторні методи. Основою методів відтинання є ідея поступового «звуження» області допустимих розв’язків задачі. Спочатку розв’язується задача з так званими послабленими умовами, тобто без урахування вимог цілочисельності змінних, а потім вводять в модель додаткові обмеження, які враховують вимогу, щоб значення змінних були цілими. Таким чином многокутник допустимих розв’язків послабленої задачі поступово зменшуємо до тих nip, доки змінні оптимального розв’язку не набудуть цілих значень. Основним методом цієї групи є метод Гоморі. Комбінаторні методи цілочислової оптимізації базуються на повному переборі всіх допустимих цілочислових розв’язків, тобто вони реалізують процедуру цілеспрямованого перебору, під час якої розглядається лише частина розв’язків (досить невелика), а решта враховується одним із спеціальних методів. Найпоширенішим в цій групі є метод «віток і меж», який, починаючи з розв’язування послабленої задачі, передбачає розбиття початкової задачі на дві підзадачі виключенням областей, що не мають цілочислових розв’язків, і дослідженням кожної окремої частини многокутника допустимих розв’язків. Для розв’язування задач з бульовими змінними використовують комбіновані методи, і якщо змінні є бульовими, то методи пошуку оптимального розв’язку значно спрощуються. Розглянемо детальніше метод Гоморі. Нехай маємо задачу цілочислового програмування (6.1)-(6.3). Для її розв’язування застосовують наступний алгоритм: 1. Використовуючи симплекс-метод, знаходять розв’язок послабленої задачі, тобто задачі без вимог цілочисельності змінних - (6.1)-(6.2). Якщо серед елементів умовно-оптимального плану немає дробових чисел, то цей план є оптимальним планом задачі цілочислового програмування (6.1)-(6.3). 2. Якщо в умовно-оптимальному плані є дробові значення, то вибирається змінна, яка має найбільшу дробову частину. На базі цієї змінної та елементів рядка останньої симплекс-таблиці, що відповідає цій змінній будується додаткове обмеження Гоморі: , (6.5) де символ { } означає дробову частину числа. Для визначення дробової частини будь-якого числа необхідно від нього відняти цілу його частину - найбільше ціле число, що не перевищує зазначеного. Цілу частину числа позначають [ ]. 3. Додаткове обмеження після зведення його до канонічної форми приєднується до останньої симплекс-таблиці, яка містить умовно-оптимальний розв’язок задачі. Отриману розширену задачу розв’язують, а потім перевіряють її розв’язок на цілочисельність. Якщо він не цілочисловий, то повертаються до пункту 2. Процедуру повторюють до знайдення цілочислового оптимального розв’язку або буде доведено, що задача не має допустимих розв’язків у множині цілих значень. Досвід показує, що процес розв’язування задач великої розмірності методом Гоморі повільно збіжний.
6.3. Прикладні моделі задач цілочислового лінійного програмування (модель формування оптимальної інвестиційної програми при заданому бюджеті) У окресленій моделі цільовою функцією виступає вартість капіталу інвестиційної програми, причому в ній при заданих обмеженнях (конкретної виробничої програми для окремих інвестиційних об’єктів і за наявності повного обсягу фінансових ресурсів) необхідно сформувати та визначити інвестиційну програму. Для побудови моделі зробимо такі припущення: 1) представлені на вибір інвестиційні об’єкти рівнозначні; 2) фінансові ресурси неможливо залучити в необмеженій кількості за вказаною відсотковою ставкою; 3) інвестиційна програма визначається тільки на початок планового періоду, а початкові витрати при цьому не перевищують зазначений бюджет; 4) інвестиційні об’єкти реалізуються як єдине ціле. Для побудови моделі введемо такі позначення: і – індекс інвестиційного об’єкта, ; Сі - вартість капіталу і- гоінвестиційного об’єкта; Аі0 - затрати на придбання і- гоінвестиційного об’єкта; Q - загальний обсяг бюджетних коштів; хі - бінарна змінна (хі = 0 або 1), значення якої визначає, буде для і -го інвестиційного об’єкта виділене фінансування чи ні. Враховуючи введені позначення, економіко-математична модель формування оптимальної інвестиційної програми при окресленому бюджеті матиме вигляд. Знайти такий розв’язок , який забезпечить сумарну максимальну вартість інвестиційної програми: (6.6) при умовах: 1) з використання наявного обсягу бюджетних коштів (6.7) 2) з реалізації інвестиційних об’єктів як єдиного цілого (неподільності інвестиційних об’єктів)
Таким чином, ми отримали задачу лінійного програмування з бульовими змінними. Розв’язок цієї задачі можна знайти з допомогою процедури цілочислового програмування.
Дата добавления: 2014-11-18; Просмотров: 893; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |