48825 (Решение транспортной задачи методом потенциалов), страница 2

2016-07-30СтудИзба

Описание файла

Документ из архива "Решение транспортной задачи методом потенциалов", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "48825"

Текст 2 страницы из документа "48825"

Полагают vn = 0. Если значения k неизвестных определены, то в системе всегда имеется уравнение, одно из неизвестных в котором уже найдено, а другое ещё нет.

Переменные ui и vj симплекс - множителями. Иногда они называются также потенциалами, а этот метод решения называют методом потенциалов.

Пример 2.

5

u1

6

4

7

u2

3

1

8

u3

v1

v2

v3

v4

v5

v5 = 0 u3 = 8, так как u3 + u5 = p35 = 8, v4 = -7, так как u3 + v4 = p34 = 1, v3 = -5, так как u3 + v3 = 3, u2 = 12 v2 = -8, v1 = -6 u1 = 11.

Симплекс – множители нужны для того, чтобы найти свободную ячейку (i, j), которая при замене базиса переходит в базисную (это соответствует отысканию разрешающего столбца в симплекс – методе).

Для определения симплекс – множителей мы вносим на свободные места в таблице значения

pij = pijuivj

(коэффициенты целевой функции, пересчитанные для свободных переменных). Если все pij 0, то базисное решение оптимально. В противном случае мы выбираем произвольное p 0, чаще всего наименьшее. Индексом помечено свободное переменное х , которое должно войти в базис. Соответствующую ячейку транспортной таблицы мы отметим знаком +.

Кроме ячейки (, ) транспортной таблицы, мы пометим значками – и + другие занятые числами ячейки таким образом, чтобы в каждой строке и в каждом столбце транспортной таблицы число знаков + было равно числу знаков -. Это всегда можно сделать единственным образом, причем в каждой строке и в каждом столбце будет содержаться максимум по одному знаку = и по одному знаку -.

Затем мы определяем минимум М из всех элементов, помеченных знаком -, и выбираем ячейку (, ), где этот минимум достигается.

В нашем примере с М = 5 можно выбрать (, ) = (2, 3); при этом (, ) определяет базисное переменное, которое должно стать свободным, т.е. базисное переменное, соответствующее индексу разрешающей строки симплекс – метода.

20

5

10

10

5

15

15

15

5

5

5-

+

20

5+

10

5-

15

5-

5

5+

+

10

10

0-

15-

+

5

5

5

0+

10-

10

5

10

5-

5

+

5

10+

10-

5

10

5

5

5

15

5

Копт = 150

Переход к новой транспортной таблице (замена базиса) происходит следующим образом:

а). В ячейку (, ) новой таблицы записывается число М.

б). Ячейка (, ) остается пустой.

в). В других ячейках помеченных знаками – или +, число М вычитается из стоящего в ячейке числа (-) или складывается с ним (+). Результат вносится в соответствующую ячейку новой таблицы.

г). Непомеченные числа переносятся в новую таблицу без изменений. Остальные ячейки новой таблицы остаются пустыми.


2. Практическая часть

2.1 Обоснование выбора языка программирования

Мною был выбран язык программирования Turbo Pascal по следующим соображениям:

  • Изучение данного языка в школе

  • Наличие литературы по данному языку программирования


2.2 Разработка

Имеется m пунктов отправления А1, А2 , ..., Аm , в которых сосредоточены запасы каких-то однородных грузов в количестве соответственно а1, а2, ... , аm единиц. Имеется n пунктов назначения В1 , В2 , ... , Вn подавшие заявки соответственно на b1 , b2 , ... , bn единиц груза. Известны стоимости Сi,j перевозки единицы груза от каждого пункта отправления Аi до каждого пункта назначения Вj . Все числа Сi,j, образующие прямоугольную таблицу заданы.

Требуется составить такой план перевозок (откуда, куда и сколько единиц поставить), чтобы все заявки были выполнены, а общая стоимость всех перевозок была минимальна.

Составить программу, которая бы вычисляла оптимальный план перевозки (потенциальный план).

2.3 Руководство пользователей

При запуске программа предлагает ввести количество поставщиков (не меньше 2, но не больше 5), затем количество потребителей (условие тоже). Если вводятся числа не удовлетворяющие этому условию, то программа предлагает ввести их заново. Далее программа выводит на экран таблицу, число строк которой равно введенному количеству поставщиков, а число столбцов – количеству потребителей. Предлагается ввести количество продукции у первого поставщика, у второго и т.д. После пользователю предлагается ввести количество продукции необходимое первому потребителю, второму и т.д. Затем вводятся стоимости перевозок, после чего производятся вычисления и выдается результат


Литература

Карманов В.Г. Математическое программирование. - М.; Наука, 1986г

А.В.Кузнецов, Г.И.Новикова, И.И.Холод - "Сборник задач по математическому программированию". Минск, Высшая школа, 1985г

Боборыкин В.А. Математические методы решения транспортных задач. Л.: СЗПИ, 1986

Кузнецов Ю.Н., Кузубов В.И., Волощснко А. Б. Математическое программирование. М.: Высшая школа, 1980

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Нет! Мы не выполняем работы на заказ, однако Вы можете попросить что-то выложить в наших социальных сетях.
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
4121
Авторов
на СтудИзбе
667
Средний доход
с одного платного файла
Обучение Подробнее