Побудова оптимального плану транспортної задачі розподільчим методом в середовищі програмування delphi

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

Отже, головне вікно розглядуваного проекту ділиться на три частини: панелі інструментів (складається з двох компонентів типу TSpinEdit та двох кнопок типу TButton), робочої області (містить транспортну таблицю) та статусного рядка, основним призначенням якого є вивід загальної вартості перевезень згідно побудованого оптимального плану. Розглянемо призначення кожного з цих елементів більш детально:

  1. Поля вибору "Пункти призначення" та "Пункти відправлення" відповідають за кількість пунктів які беруть участь в перевезенні, а також розмірність транспортної таблиці.
  2. Кнопки "Знайти оптимальний план розподільчим методом" та "Очистити" відповідають за побудову оптимального плану транспортної задачі та підготовку програми до нового прикладу відповідно.
  3. Нарисована на канві форми транспортна таблиця у комірки якої, способом введення з клавіатури, записуються тарифи на перевезення одиниці продукції, загальні потреби у товарі кожного з пунктів призначення і загальна кількість запасів кожного з пунктів відправлення.

Після того, як призначення кожного з елементів форми відомо, як уже зазначалося вище, провіримо його роботу на конкретному прикладі. Відмітимо, що в якості прикладу візьмемо задачу, яку ми розв'язували при розгляді теоретичної частини розподільчого методу (містится за вищевказаним посиланням). Отже, запустимо проект на виконання, у відповідні поля форми задамо розмірність таблиці та заповнимо її даними.

Заповнення транспортної таблиці даними

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

Побудова оптимального плану транспортної задачі

Скачати delphi-проект Побудова оптимального плану транспортної задачі розподільчим методом.

Матеріал був корисним, поділись в соціальних мережах:

Якщо тобі сподобалась дана тема, залиш свій коментар