Розв’язання транспортних завдань
Однією з найпоширеніших проблем у всіх галузях економіки є транспортування вантажу чи товару з мінімальними матеріальними та тимчасовими витратами. Так як величезна кількість можливих варіантів перевезень ускладнює одержання економічного плану емпіричним або експертним шляхом, то виникла необхідність розробки спеціальної теорії, що дозволяє швидко вирішувати подібні завдання за допомогою алгоритмізації. Застосування математичних методів у плануванні перевезень дає великий економічний ефект. У цьому нам і доведеться зараз переконатися за допомогою нашого знайомого Васі, який саме влаштувався працювати кур'єром.
Компанія, де Василь знайшов вакантне місце кур'єра, має два склади, на яких зберігається товар, і три магазинчики – контори, де цей товар реалізується. Завдання Васі полягає у строгому виконанні плану, який він отримує щодня. Як транспортний засіб він використовує старий, але витривалий радянський велосипед, який не дозволяє перевозити всю партію за раз. Тому нашому ненаситному другові доводиться мотатися туди-сюди. На що він знову збирає? Що він там перевозить? Не чекайте від мене відповіді на ці запитання, якби знав – давно б уже сказав би.
І тут Василь, знемагаючи від болісних болів у ногах і передбачаючи жорстку догану з боку начальства за невиконання роботи в намічений термін, задумався: чи можна скласти з урахуванням плану, що йому видається, такий маршрут руху, щоб на виконання всього завдання йшло мінімум часу і сил. Звичайно можна! Цим ми зараз і займемося.
Складання математичної моделі
Спочатку необхідно виконати підготовчу роботу, а саме - визначити тарифи на кожній ділянці майбутнього оптимального плану перевезень. Оскільки Васязацікавлений у тому, щоб виконувати свою роботу максимально швидко, то як тарифи в цьому завданні виступає час, витрачений на перевезення одиниці товару з n-го складу в m-у контору. За допомогою картки Мінська (CityInfo) з урахуванням часу на перекур та на підкачування шин Вася оцінив середній час перевезення товару з кожного складу до кожної контори. У результаті було складено таблицю 1.
| Таблиця 1. Час перевезення | ||||
| Склад\Контора | Контора №1 | Контора №2 | Контора №3 | Є на складах |
| Склад №1 | 5 | 20 | 8 | 20 |
| Склад №2 | 10 | 15 | 12 | 30 |
| Потреба | 15 | 12 | 20 | 47/50 |
| Таблиця 2. Кількість товарів, що перевозяться | |||||
| Склад\Контора | Контора №1 | Контора №2 | Контора №3 | Фіктивна | Є на складах |
| Склад №1 | X11 | X12 | X13 | X14 | 20 |
| Склад №2 | X21 | X22 | X23 | X24 | 30 |
| Потреба | 15 | 12 | 20 | 3 | 50/50 |
Тепер усе готове для складання системи рівнянь та цільової функції, що визначає час виконання плану перевезень та спрямованої на мінімум. За змістом ясно, що кількість одиниць товару, привезених з кожного складу до контори, у сумі має дорівнювати потреби цієї контори. Тобто.
Аналогічно отримуємо такі умови:
Цільова функція, як я вже казав, визначає час виконання плану транспортування товару. Тому:
E = 5 * X11 + 20 * X12 + 8 * X13 + 10 * X21 +15* X22 + 12* X23 ->min
Тарифи на доставку товару до віртуальної контори приймаються рівними нулю, тому додану "0*X14+0*X24" у записі формули для цільової функції можна опустити. Тепер приступимо безпосередньо до вирішення поставленого завдання. Погодьтеся, виконані досі операції не викликають великих труднощів.
Отже, в комірки рядка з цільовою функцією запишемо коефіцієнти перед змінними, що входять до цільової функції. Так само зробимо і з усіма обмеженнями у вигляді рівностей (у стовпці "L" записується права частина рівнянь). У стовпці з рішенням "J" у кожну комірку введемо формулу виду "=СУМПРОИЗВ(Bn:Gn;B2:G2)", де n змінюється від 3 до 9. Тепер відкриваємо робоче вікно "Пошук рішення" і записуємо всі обмеження, показані на малюнку.

Натискаємо на кнопку "Виконати" і разом із Васею радіємо отриманим результатам.
Аналіз отриманих результатів
Оптимальний план перевезень вантажу має такий вигляд: з першого складу потрібно переправити 15 од. вантажу до першої контори та 5 од. вантажу до третьої контори, а з другого - 12 од. вантажу у другу та 15 од. вантажу до третьої контори. На все це Вася витрачатиме 475 хвилин (7 годин та 55 хвилин). Це оптимальний варіант. Порівняємо його з будь-яким іншим можливим. Припустимо, що Вася вирішив робити все навмання і вибирав маршрут випадковим чином. Нехай план наступний: (X11, X12, X13, X21, X22, X23) = (0, 0, 20, 15, 12, 0). Тоді цільова функція дорівнюватиме 490 хвилин (за зміну Вася не впорається). З одного боку, це не багато, з іншого, якби як тарифи виступав не час, а гроші, то економія була б суттєвою. Та й якщо згадати фразеологізм "Час - гроші", то всякі сумніви щодо раціональності використання оптимізації в управлінні тафінанси відпадають. Адже вигода полягає не в тому, що Васі доводиться швидше крутити педалі, а в тому, що за допомогою математичної моделі знаходиться найкращий варіант реального процесу.
Як слідство можна назвати, що й належить вирішувати завдання з правильним балансом, то з усіх міркувань потрібно просто виключити змінні X14 і X24.
Звичайно, є багато програм, які спеціалізуються саме на дослідженні транспортних завдань. Але з Excel якось простіше ((с) Реклама про "Біосистему"). Іноді час і гроші, витрачені на пошуки потрібної програми в інтернеті, можна порівняти з вигодою, отриманою під час оптимізації. На одній веб-сторінці програму, яка працює з транспортними завданнями, пропонувалося придбати за $100. Інша програма виявилася безкоштовною, але не вміло вирішувати завдання в загальному випадку (з неправильним балансом). Ось такі пироги (або проги;).
У суспільстві методи оптимізації застосовуються повсюдно, приносячи суттєву економічну вигоду і попереджаючи фінансові крахи. Вони дозволяють приймати різноманітні управлінські рішення в умовах ризику та невизначеності. Правда, вже за допомогою потужніших програмних комплексів, що працюють на основі генетичних алгоритмів, нечіткої логіки та нейронних мереж.