Автор работы: Пользователь скрыл имя, 10 Марта 2011 в 13:53, курсовая работа
Транспортная задача делится на два вида: транспортная задача по критерию стоимости- определение плана перевозок, при котором стоимость груза была бы минимальна; транспортная задача по критерию времени- более важным является выигрыш по времени.
Транспортная задача по критерию стоимости является частным случаем задачи линейного программирования и может быть решена симплексным методом. Однако в силу особенностей задачи, она решается намного проще.
ВВЕДЕНИЕ ……………………………………………………………………...2
1. ОБЩАЯ ЧАСТЬ………………………………………………………………5
1.1. Математическая постановка задачи……………………………….5
1.2. Арифметическое преобразование…………………………………7
1.3. Модели…………………………………………………………………......8
1.3.1. Открытая модель…………………………………………………8
1.3.2. Закрытая модель…………………………………………………8
1.4. Составление опорного плана транспортной задачи. Методы составления опорного плана………………………………………………9
1.4.1. Метод северо-западного угла…………………………………..9
1.4.2. Метод наименьшей стоимости…………………………………11
1.5. Методы решения транспортной задачи……………………………13
1.5.1 Метод потенциалов……………………………………………….13
1.5.1.1 Пример решения методом потенциалов………………14
1.5.2 Метод прямоугольников……………………………………….16
1.5.2.1 Пример решения методом прямоугольников.………..18
2. Описание решения Транспортной задачи с использованием стандартных программных средств……………………………………20
3. Описание входной информации…………………………………......24
4. Описание выходной информации………………………………......24
5. Описание программных средств решения задачи………………25
6. Инструкция для пользователя……………………………………......26
7. Инструкция для программиста……………………………………......27
ЗАКЛЮЧЕНИЕ…………………………………………………………………28
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ……………………......29
ПРИЛОЖЕНИЕ А………………………………………………………………30
Теорема.
Стоимость перевозки по неправильному прямоугольнику всегда больше, чем по правильному.
6Правила решения транспортной задачи методом прямоугольника.
Если ноль преобразований проходит, то продолжаем решать задачу методом потанциалов. Если ноль преобразования не проходит и контур не строиться то, можно найти в таблице нейтральный прямоугольник, преобразовать его и получить новое решение, цена которого будет такая же, а план другой. А затем опять провести ноль преобразований.
Мощность
неправильного прямоугольника называют величину, на которую уменьшиться стоимость перевозки при преобразовании неправильного прямоугольника в правильный.
Мощность можно определить только для неправильного прямоугольника: от Суммы заполненной диагонали вычесть сумму не заполненной диагонали и умножить наименьшую перевозку заполненной диагонали.
1.5.2.1 Пример решения задачи методом прямоугольника.
Дана задача:
Вывозится продукция из 3 пунктов: A1=400, A2=970, A3=560;
Потребности в населенных пунктах: B1=540, B2=170, B3=980, B4=240;
Тарифы из: C1,1=3, C1,2=5, C1,3=3, C1,4=5;
1)Опорный план. В данном примере мы строим опорный план методом наименьшей стоимости:
S1 = 400*3 + 140*3 + 170*4 + 420*5 + 240*2 + 560*4 = 7120;
2)Выпишем
все неправильные
1) 2)
3)Наедем их мощность
1) М=(7-6)*400=400
2) М=(8-6)*400=80
Заменяем неправильный прямоугольник наибольшей мощности на правильный. И далее ищем все неправильные прямоугольники, если их несколько, выбираем наибольшей мощности и меняем на правильный и так до тех пор пока не останется неправильных прямоугольников :
Если неправильных нет, проводим ноль-преобразование:
X1+Y3=-3 X2=0; Y1=-3;
X2+Y1=-3; X1=-2; Y2=-4;
X2+Y2=-4; X3=1; Y3=-5;
X2+Y3=-5; Y4=-2;
X2+Y4=-2;
X3+Y3=-4;
В итоге у нас не осталось отрицательных тарифов и все клетки с перевозками обладают нулевыми тарифами, вывод это оптимальное решение.
Находим целевую функцию:
S1 = 400*3 + 540*3 + 190*5 + 240*2 + 170*2 + 390*4 =6150;
6. Описание решения Транспортной задачи с использованием стандартных программных средств.
В этом разделе мы рассмотрим решение транспортной задачи с помощью Microsoft Office Excel.
Нам дана задача:
Для решения транспортной задачи в Excel нужно:
В целевую ячейку устанавливаем F9 делаем её равной минимальному значению, в строке ИЗМЕНЯЕМЫЕ ЯЧЕЙКИ вводим A5:D7, далее вводим ограничения: A5:D7 >= 0,
A8:D8 = A9:A9, E5:E7 = F5:F7. В этом же окне выбираем вкладку ПАРАМЕТРЫ и ставим галочку на линейную модель .
7. Описание входной информации.
Входные данные вводятся с клавиатуры:
Вводится прямоугольник:
В данном примере
8. описание выходной информации.
Информация выводится на экран в виде таблицы с введенными данными и еще одной таблицы уже с правильным решением.
9. Описание программных средств решения задачи
Язык Паскаль, названный в честь французского математика и философа Блеза Паскаля (1623-1662), был создан как учебный язык программирования в 1968-71 годах швейцарским ученым Николаусом Виртом на кафедре информатики Стэндфордского университета (Цюрих). В настоящее время это язык имеет более широкую сферу применения, чем предусматривалось при его создании. Свое признание Паскаль получил с появлением пакета Турбо Паскаль (Turbo Pascal). Этот язык отличается простотой понимания, стройностью и структурностью алгоритмов, быстротой компилятора и удобными средствами создания и отладки программ.
Достоинствами языка Паскаль являются:
Простой синтаксис языка. Небольшое число базовых понятий. Программы на Паскале достаточно легко читаемы. Достаточно низкие аппаратные и системные требования, как самого компилятора, так и программ, написанных на Паскале. Универсальность языка. Язык Паскаль применим для решения практически всех задач программирования. Поддержка структурного программирования, программирования "сверху-вниз", а также объектно-ориентированного программирования. В настоящем пособии рассматривается Turbo Pascal v7.0. Данная версия разработана фирмой Borland и является последней в линейке компиляторов Pascal для DOS. Дальнейшее развитие Паскаль получил в Delphi - системе разработки программ для Windows.
Окно среды разработчика
Основной экран интегрированной среды разработчика Turbo Pascal 7.0 выглядит следующим образом:
По функциональному назначению выделяется три области экрана:
10. Инструкция для пользователя.
Общие сведения:
Программа производит вычисления выбранного прямоугольника, определяет его тип и мощность.
Управление:
Данные вводятся с клавиатуры:
При запуске задачи, появляется диалоговое окно с приветствием, в котором, предлагается продолжить дальше, нажав клавишу «1» и «Enter» , либо выйти нажав «0» и «Enter».
Далее пользователь вводит перевозки X1,1 , X1,2 , X2,1 , X2,2 .После нажатия клавиши «Enter» пользователь вводит стоимость C1,1 , C1,2 , C2,1 , C2,2 , и жмем «Enter», после чего на экране появляются прямоугольник с вводимыми данными, его тип, мощность и еще один уже решенный прямоугольник.
После этого пользователю предлагается попробовать еще раз, нажав «1» и «Enter» либо выйти из программы, нажав «0» и «Enter».Так же во время работы программы предлагается ввести «-1» и «Enter», для выхода или «-2» и «Enter», для перезапуска программы.
11. Инструкция для программиста
Данная программа реализуется с помощью процедурного языка Turbo Pascal 7.0, используется текстовый режим.
ТРЕБУЕМЫЕ ИНФОРМАЦИОННО–ВЫЧИСЛИТЕЛЬНЫЕ СРЕДСТВА:
а) оперативная память – не менее 8Мб
б) свободное место на жестком диске – не менее 60Кб
в) центральный процессор – от Intel 8088 до семейства Pentium или совместимых с ним
2) информационные средства для нормального функционирования программы достаточно иметь информационную систему MS DOS
ЗАКЛЮЧЕНИЕ
Транспортная задача делится на два вида: транспортная задача по критерию стоимости- определение плана перевозок, при котором стоимость груза была бы минимальна; транспортная задача по критерию времени- более важным является выигрыш по времени.
Транспортная задача используется во многих случаях для уменьшения стоимости перевозки грузов, либо для уменьшения времени доставки, Задача может решаться многими способами: вручную, с помощью стандартных программных средств (Excel) либо с помощью специальной программы.
Однако
в ручном способе и способе
с помощью стандартных
Сделанная мною программа позволяет наиболее простым и удобным способом находить варианты уменьшения стоимости перевозки. В соответствии с этой задачей неправильный прямоугольник, перевозка по которому стоит дороже, преобразуется в правильный, что позволяет уменьшить стоимость перевозки на величину равную мощности прямоугольника.
Программа проста в использовании, в ней удобный и понятный пользовательский интерфейс. Для ввода данных используется клавиатура. Данные, выводимые программой, соответствуют тем, что получены при расчетах без использования компьютера. Эта программа может использоваться как и в учебных целях, так и на практике.