У вас вопросы?
У нас ответы:) SamZan.net

Реферат Программа OptTrns Цель работы ~ изучение транспортной задачи с последующим написание

Работа добавлена на сайт samzan.net: 2015-07-05

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.4.2025

8

Федеральное Агенство по Образованию

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ

УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

КАФЕДРА КОМПЛЕКСНОЙ ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ ЭЛЕКТРОННЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ (КИБЭВС)

«Транспортная задача»

2010


Реферат

Программа «OptTrans»

     Цель работы – изучение транспортной задачи, с последующим написанием программы «OptTrans», которая наглядно представляет решение транспортной задачи. Данная программа может использоваться в процессе изучения по дисциплине «Методы программирования».

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

     Программа разработана на языке Borland С++ Builder (version 6.0). Выбор обусловлен тем, что данный язык наиболее распространен среди разработчиков программного обеспечения, а визуальная среда позволяет сделать программу проще для понимания пользователем.

     Отчёт выполнен в текстовом редакторе Microsoft Word, и приложен на дискете к бумажному варианту вместе с исходным кодом и руководствами пользователя и программиста.


СОДЕРЖАНИЕ

  1.  Введение………………………………………………………….…………14
  2.  Основная часть…………………………………………………….………..15
  3.   Алгоритмы использованные в программе………………….…….……..15
  4.   Принцип работы алгоритмов…………………………………….………15

 2.3 Описание технического проекта…………………………………………18

  1.  Структура программы…………………………………………….….……..18
  2.  Оценка рисков………………………………………………………..……...19
  3.  Результаты Тестирование……………………..…………………..………...22
  4.  Заключение …………………………………………………………..………30
  5.  Список используемой литературы………………………………..….……..31

Приложение А  Руководство пользователя…………………………....………32

Приложение Б   Руководство программиста…….…………………..…..…….34


1. Введение

    Создать наглядное решение транспортной задачи. Программа ««OptTrans» предполагает реализацию метода потенциалов решения транспортной задачи на языке Borland С++ Builder. Алгоритмы, которые предполагается реализовать в данном проекте, можно использовать в обучающем процессе по дисциплине «Методы программирования», «Методы оптимизации».

В результате были разработаны процедуры, реализующие следующие функции:

  1.  Генерация исходных данных (GenDan);
  2.  Составление опорного плана (OPRplan);
  3.  Составление оптимального плана (OPTplan)

2. Основная часть     

  2.1 Алгоритмы, используемые в работе

  1.  GenDan;
  2.  OPRplant;
  3.  OPTplant.

2.2 Принцип работы алгоритмов

GenDan 

 Матрица штрафов:

Задается цикл для обхода всех клеток матрици. При помощи библиотечной функии random,  ячейкам случайным образом задаются значения 0-10.

Объмы складов и заводов:

Задается цикл для обхода всех клеток массива. При помощи библиотечной функии random,  ячейкам случайным образом задаются значения 1-100.

 

OPRplant 

Выбирается клетка с координатой [1][1], и для неё анализируются объемы складов и производства. Результирующее значение имеет меньший параметр. Далее движемся либо вниз, либо вправо и анализируем следующую клетку. Очередная загружаемая коммуникация выбирается в левой верхней клетке сохраненной части таблицы, т.е. в северо-западном углу таблицы. Математически это выражается следующим образом:

, I – множество номеров пунктов производства;

, J – множество номеров пунктов потребления;

OPTplant 

Для наглядности работы процедуры приведем пример:

1) для каждой занятой клетки транспортной таблицы сумма потенциалов должна быть равна для этой клетки;

2) для каждой незанятой клетки сумма потенциалов не больше (меньше или равно) .

Построим для каждой свободной переменной плана числа и они должны быть положительны. Так как число потенциалов равно 9, а система состоит из 8 уравнений, то для нахождения какого-либо решения этой системы необходимо первому из потенциалов придать произвольное значение (например: ). Далее последовательно находим значения всех потенциалов. Распишем подробно эту процедуру.

  

 

  

  

      Заводы         Склады

Заводы 1

Заводы 2

Заводы 3

Заводы 4

Заводы 5

5

18

17

22

8

Склад 1

15

15

Склад 2

20

17

3

Склад 3

10

2

8

Склад 4

25

5

18

2

Таким образом, после того, как все потенциалы найдены, можно искать :

  

  

  

  

 

 

Видно, что и меньше нуля, значит существующий опорный план можно улучшить. Поскольку , нужно ввести в базис вектор, соответствующий клетке (2; 1), для чего загрузить ее некоторым количеством единиц груза. Но, так как мы, увеличивая загрузку (2; 1), нарушаем баланс строк и столбцов распределительной таблицы, то следует изменить объемы поставок в ряде других занятых клеток. А чтобы число базисных переменных осталось прежним, необходимо вывести из базиса одну переменную. Выводится обычно та переменная, у которой загрузка в цикле минимальна.

Строим цикл:

(2; 1) – начальная точка цикла;

Что характерно, для этой точки (впрочем как и для других) мы можем построить только один цикл. Каждой клетке цикла приписываем определенный знак:

(2; 1) – “+”, (4; 1) – “-”, (4; 4) – “+” (2; 4) – “-”.

+

+

-

-

      Заводы                                         

Склады

Завод 1

Завод 2

Завод 3

Завод 4

Завод 5

5

18

17

22

8

Склад 1

15

15

Склад 2

20

17

3

Склад 3

10

2

8

Склад 4

25

5

18

2

В клетках с “+” – увеличиваем загрузку, а в клетках с “-” – уменьшаем. Величина, на которую увеличиваем или уменьшаем всегда одна и она определяется из условия:

, где – содержимое клеток с “-”.

Таким образом получаем:

, а значит из базиса будет выведена (2; 4), где в процессе реализации цикла загрузка уменьшится до 0.

Перейдем к новому опорному плану

     Заводы        

Склады

Завод 1

Завод 2

Завод 3

Завод 4

Завод 5

5

18

17

22

8

Склад 1

15

15

Склад 2

20

3

17

Склад 3

10

2

8

Склад 4

25

2

18

5

  

 

  

  

Определяем

  

  

  

  

 

 

Все больше 0, следовательно план оптимальный.

.

Целевая функция при этом плане:

2.3 Описание технического проекта:

Задача группы заключается в создании программного продукта соответствующего следующим требованиям:

  1.  Должны реализовываться алгоритмы:
  2.  GenDan;
  3.  OPRplant;
  4.  OPTplant.

  1.  Программный продукт должен быть прост для освоения и применения. Для этого:
  2.  Должен быть простой и понятный интерфейс программы;
  3.  Нужны конкретные и понятные инструкции пользователя и программиста.
  4.  Интерфейсная часть

Для реализации решения необходим набор следующих сервисов и технологий:

  1.  Компьютер с необходимыми системными требованиями, необходимыми для программной среды Borland С++ Builder.
  2.  Программная среда Borland С++ Builder, в которой и будет выполнен данный программный продукт.
  3.  Литература, необходимая для обеспечения проектной группы информацией.
  4.  Бумажные, а также дисковые носители, на которых заказчику будут предоставляться результаты работы над проектом.

3. Структура программы 

Исполняемый файл project.exe использует в процессе выполнения следующие  данные:

  1.  Матрица штрафов;
  2.  Количество товаров на заводах и складах;




1. Вредные и опасные производственные факторы
2. Расположите почвы по мере убывания эффективности калийных удобренийпесчсупесчсреднетяжелоглинистые 2
3. і. Алтын Орданы~ ~~рылуы
4. САНКТПЕТЕРБУРГСКАЯ ГОСУДАРСТВЕННАЯ АКАДЕМИЯ ВЕТЕРИНАРНОЙ МЕДИЦИНЫ
5. Фоминска на январь 2014 г
6. Шапсуги
7. Сочность цианотичность окраски слизистой оболочки вульвы обильный прозрачный секрет считают признаками
8. Статья в Литературной газете- ЛЕВ ПРЫГНУЛ Слово мафия уже до такой степени вошло в наш лекси
9. Организация сбыта товаров в вертикально интегрированных предпринимательских структурах
10. улучшение твердость ~ НВ 245