Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2 к сессия / Экономико-матем моделирование / Шепеленко О.В. Щетініна О.Фоміна Т. Економ-матем.моделювання2010.doc
Скачиваний:
96
Добавлен:
22.02.2016
Размер:
2.86 Mб
Скачать

Міністерство освіти і науки України

Донецький національний університет економіки і торгівлі

імені Михайла Туган-Барановського

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

Економіко-математичне

моделювання

(Математичне програмування)

Курс лекцій

для студентів денної і заочної форми навчання

Автори:

Шепеленко О.В., Щетініна О.К., Фоміна Т.О.,

Орлова Л.М., Саркіс′янц О.В.

Затверджено:

Протокол засідання кафедри

вищої і прикладної математики

№ 25 від 15.04.2010 р.

Донецьк 2010

З м і с т

стор.

Вступ…………………………………………………………………………

3

1. Методичні рекомендації……………………………………………..

8

1.1 Приклади задач лінійного програмування…………………

8

1.2 Графічний метод……………………………………………...…

22

1.3 Симплексний метод……………………………………………..

25

1.4 Двоїсті задачі……………………………………………………..

31

1.5 Матричні ігри…………………………………………………….

33

1.6 Метод потенціалів…………………………………………….…

36

1.7 Задачі про призначення………………………………………..

41

1.8 Дробово-лінійне програмування……………………………..

45

1.9 Параметричне програмування……………………….……….

51

2. Використання комп'ютерних технологій для рішення

задач математичного програмування ……………………………

56

2.1 Пакет “The management scientist” …………………………...

56

2.2 Пакет “QSB”……………………………………………………..

60

3. Література……………………………………………………………….

63

В с т у п

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

Якщо починаючи з XVII століття головне положення в математиці займало вивчення функцій неперервного аргументу, що є основою всіх застосувань математики у фізиці і техніці, то сьогодні можна говорити про відродження інтересу до “скінченої” математики. При цьому виникли нові підходи до цієї галузі математики, що йдуть в основному від математичної логіки.

В даний час спостерігається “математизація” цілого ряду дисциплін, які раніше були далекі від усякого впливу математичних методів – лінгвістика, економічна теорія, медицина, педагогіка, психологія, теорія мистецтва.

Застосування математики в економічних дослідженнях дає можливість поглибити й уточнити уявлення про якісну сторону закономірностей, про істоту тих предметів і явищ, що піддаються дослідженню.

Зупинимося на деяких, найбільш важливих напрямках економіко-математичних досліджень.

  1. Використання математичних методів при встановленні економічно обґрунтованих цін, при розробці економічних критеріїв рентабельності, орієнтуючись на які окремі державні і приватні підприємства могли б повною мірою здійснювати господарський розрахунок і сполучити свої і державні інтереси.

  2. Розробка міжгалузевих балансів виробництва і розподілу. У нас є деякий досвід балансових побудов. Однак поки ще не створена економіко-математична модель, що базувалася б на системі математичних рівнянь і нерівностей і давала можливість вирішувати різні економічні задачі. Побудова такої моделі забезпечить рішення екстремальних задач на мінімум витрат суспільної праці і на максимально можливий рівень матеріальної забезпеченості членів суспільства.

  3. Забезпечення раціонального розміщення виробництва при плануванні роботи транспорту. До числа економічних проблем такого роду відноситься розподіл судів флоту між визначеними ділянками водяних шляхів, найкраще закріплення літаків за визначеними авіалініями, оптимальна експлуатація різних засобів транспорту при перевезенні різних видів вантажів, вибір раціональної схеми руху порожніх поїздів і т.д.

  4. Рішення різноманітних техніко-економічних задач – задач на визначення оптимального плану використання виробничих потужностей (наприклад, завантаження верстатів), на раціональний розкрій матеріалів, на найвигідніше розташування господарських об’єктів (складів, магазинів і ін.), на оптимальний склад хімічних і інших промислових сумішів, на визначення найкращих харчових наборів і раціонів і т.ін.

  5. Математика перестала бути допоміжною наукою, тепер вона – могутній апарат виробництва, профілююча дисципліна в економічних дослідженнях. Відзначимо особливу роль електронно-обчислювальної техніки при впровадженні математики в економіку. З появою комп’ютерних можливостей від математиків вимагають створення нових, більш могутніх обчислювальних методів, перед ними були поставлені нові обчислювальні задачі.

Створення комп’ютерів і комп’ютерних технологій зробило революцію в області обчислювальної математики і привело до виникнення нового розділу сучасної математики – математичного програмування. До задач математичного програмування відносяться задачі оптимізації, що, як правило, не розв’язуються класичними прийомами. Це, насамперед, задачі математичної економіки. Вони виникають у тих випадках, коли дефіцитні ресурси – люди, машини, сировина – слід розподілити таким чином, щоб зробити необхідну кількість продуктів і щоб витрати при цьому були мінімальними (або доход максимальний). Величезний інтерес до цих задач пояснюється насамперед тим, що вони зустрічаються не тільки в теоретичній економіці, але й у практиці виробництва, торгівлі, управління й у військовій справі.

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

Отже, для будь-яких задач математичного програмування характерні три наступних моменти:

  • наявність системи взаємозалежних факторів;

  • строго визначений критерій оптимальності;

  • точне формулювання умов, що обмежують використання наявних ресурсів і факторів.

Рішення задачі досягається застосуванням певної математичної процедури, що полягає в послідовному наближенні раціональних варіантів, що відповідають обраним факторам, до оптимального плану. Зробимо кілька зауважень по постановці задач математичного програмування, вони торкаються ряду організаційних моментів.

Математичний аналіз застосовується не до реальних явищ, а до деяких математичних моделей цих явищ. Такі абстрактні моделі, природно, охоплюють не всі, а лише найважливіші для даної задачі сторони явища. Найбільш кваліфікована і відповідальна робота при постановці задачі полягає у виборі характеристик явища – у рішенні, якими характеристиками зневажити і які врахувати. При виборі змінних бажано забезпечити можливо більш простий вид умов і критерію оптимальності. При побудові математичних моделей досліджуваних явищ, особливо в тих випадках, коли ці явища вивчаються вперше, не завжди удається відразу сформулювати і записати всі умови. Деякі фактори й обмеження, що представляються природними, передбачаються само собою зрозумілими і спеціально не обмовляються. Так, відомі, наприклад, випадки, коли при рішенні задачі про дієту з мінімальною вартістю не були враховані смакові характеристики дієти. У результаті були отримані зовсім не їстівні раціони. Іноді зустрічаються випадки, коли рішення, яке є оптимальним з формально-математичних позицій, недопустимий для виробництва як не задовольняючій економічним, технологічним і іншім вимогам, що запропоновані для даного виробничого процесу.

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

Одним з найважливіших розділів сучасної математики є теорія ігор. Вона займається вивченням конфліктних ситуацій. Теорія ігор викликана до життя практичними потребами в моделях і методах економічного і військового планування. Ця теорія розвивалася незалежно від математичного програмування, поки в 50-х роках не був виявлений чудовий зв'язок між лінійним програмуванням і теорією ігор. Переплетення і взаємне проникнення цих дисциплін виявилися корисними для кожної з них. Обчислювальні прийоми лінійного програмування збагатилися методами рішення ігор (ітеративними) і навпаки.

Класифікація задач математичного програмування.

Задачі і методи математичного програмування можна класифікувати, виходячи з різних ознак. Корисно знати хоча б одну з існуючих класифікацій, що, насамперед, виявляє в задачі наявність елемента випадковості чи його відсутність.

Задачі математичного програмування можуть бути розділені на два великих класи: детерміновані задачі і стохастичні (імовірнісні).

Детермінованими називаються такі задачі, у яких критерій оптимальності не є випадковою функцією параметрів. У таких задачах з високою вірогідністю можна визначити необхідні умови здійснення дій (обмеження) і результати цих дій. Параметри в цих задачах також не є випадковими величинами.

Стохастичними називаються задачі, що містять у собі невизначеність. Критерій оптимальності в таких задачах є деякою характеристикою випадкової функції параметрів задачі. Невизначеність може виникнути в багатьох випадках. Результати деякої дії можуть залежати від таких факторів як погода, затримка автотранспорту, рівень зайнятості, підвищення чи падіння купівельного попиту.

Клас детермінованих задач підрозділяється на лінійні задачі і нелінійні. Стохастичні задачі можна теж розбити на дві групи, кожна з яких у свою чергу підрозділяється на підгрупи.

У тих випадках, коли цільова функція (чи критерій оптимальності) виражена лінійно через вихідні фактори, а умови, що обмежують використання наявних ресурсів чи факторів, записуються у виді лінійних нерівностей або рівностей щодо змінних, ми приходимо до задачі лінійного програмування. Варто помітити, що в рамки лінійного програмування укладається величезна кількість найрізноманітніших задач перспективного й оперативного планування господарства, управління різного роду процесами.

Майже паралельно з лінійним програмуванням розвивається нелінійне, що представляє більш складну математичну задачу. В даний час ще не можна говорити про закінчену теорію нелінійного програмування, але розробка її здійснюється дуже інтенсивно. З нелінійних задач виділяються задачі опуклого програмування. До задач опуклого програмування відносяться задачі, у яких показники якості й область визначення функції передбачаються опуклими. Між лінійним і опуклим програмуванням існує тісний зв’язок. Будь-яка опукла задача може бути зведена до задачі лінійного програмування.

Серед задач опуклого програмування більш за все досліджені задачі квадратичного програмування. Для них характерно те, що функції цілі являють собою квадратичну форму, а обмеження лінійні. Вже зараз є методи для рішення задач квадратичного програмування і більш загального типу. Сучасна математична наука має у своєму розпорядженні цілий арсенал методів, що дозволяють вирішити задачу оптимального управління. Серед них особливе місце займає метод динамічного програмування. Специфіка цього методу полягає в тому, що для знаходження цього оптимального управління операції розділяються на ряд послідовних “кроків” чи “етапів”. Відповідно і сам процес планування стає “багатокроковим” і розвивається послідовно від етапу до етапу, причому щораз доводиться оптимізувати управління тільки на одному етапі.

Якщо ми розглядаємо економіко-математичну модель не як застиглу задачу, а беремо її в динаміці, бажаючи знайти рішення на кілька періодів часу, то, природно, виникає динамічна задача, і має сенс говорити про динамічне програмування. Динамічні моделі найбільш цікаві для планових розрахунків, якщо планову економіку розглядати з точки зору управлінських систем, а також при рішенні задач розкрою та ін. задач.

Дослідження задач, у яких коефіцієнти обмежень, коефіцієнти лінійної форми, а також праві частини обмежень залежать від параметра, складає предмет параметричного програмування. У цій області ще багато невирішених проблем. Розглянутий детально лише окремий випадок, коли від параметра залежать коефіцієнти лінійної форми або правої частини обмежень.

Цілочисельними прийнято називати такі задачі лінійного програмування, у яких змінні повинні приймати лише цілі невід’ємні значення з припустимої області. Подібні задачі можуть виникнути різними шляхами. Насамперед, існують задачі, що формально не відносяться до цілочисельних, але їх рішення при цілих вихідних даних автоматично виходять цілочисельними. Це, наприклад, відома транспортна задача і її різні варіанти. Найбільш природним джерелом цілочисельних задач є найважливіші в прикладному відношенні задачі лінійного програмування, у яких потрібно скласти план використання неподільних ресурсів (наприклад, холодильників). Цілочисельне програмування здобуває особливий інтерес, тому що багато нелінійних опуклих задач математичного програмування можуть бути зведені до задач лінійного програмування з додатковою вимогою цілочисельного рішення.

Ми вже відзначали, що задачі, у яких не можна зневажити помилками експерименту, називаються стохастичними. Це означає, що в такій задачі коефіцієнти цільової функції і системи обмежень не можна установити однозначно. А це приводить до того, що зі зміною одного чи кількох коефіцієнтів змінюються оптимальні рішення. Стандартні методи дають оптимальне рішення тільки для визначеного набору значень параметрів, тому їх використання утруднюється.

Якщо для випадкових величин, що фігурують у задачі, відомо ймовірносний розподіл, то задача вирішується в умовах ризику. Якщо ймовірносний розподіл невідомий, то маємо задачу в умовах невизначеності. Прикладом задач в умовах ризику є задачі управління запасами, а задачі спеціального стохастичного аналізу можуть опинитися в умовах невизначеності. З усіх розділів математичного програмування стохастичне найменш розроблене.

1. МЕТОДИЧНІ РЕКОМЕНДАЦІЇ