Решение транспортной задачи линейного программирования в среде MS Excel



ВВЕДЕНИЕ ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Глава I Задачи линейного программирования ... ... ... ... ...
1.1 Общая характеристика задачи линейного программирования ... ...
1.2 Математическая постановка задачи линейного
программирования ... ... ... ... ... ... ... ... ... ... ... .
Глава II Основные методы решения транспортной задачи
линейного программирования ... ... ... ... ... ... .
2.1 Математическая постановка транспортной задачи ... ... ... ... ..
2.2 Решение транспортной задачи с помощью программы
Ms Excel ... ... ... ... ... ... ... ... ... ... ... ... ... .
2.3 Рекомендации по решению задач оптимизации
с помощью надстройки Поиск решения ... ... ... ... ... ... ..
Глава III. Двойственная задача линейного
программирования ... ... ... ... ... ... ... ...
3.1 Математическая формулировка двойственной задачи
линейного программирования ... ... ... ... ... ... ... ... ..
3.2 Математическая постановка двойственной задачи о
красках ... ... ... ... ... ... ... ... ... ... ... ... ... .
3.3 Решение двойственной задачи о красках с помощью
программы Ms Excel ... ... ... ... ... ... ... ... ... ... .

Заключение ... ... ... ... ... ... ... ... ... ... ...
Литература ... ... ... ... ... ... ... ... ... ... ... .
Транспортная задача.
В некотором географическом регионе имеется фиксированное число пунктов производства и хранения некоторого однородного продукта и конечное число пунктов потребления этого продукта . В качестве продукта может выступать, например, нефть, уголь, песок, цемент, т.д. Для каждого из пунктов производства и хранения известен объем производства продукта или его запаса. Для каждого пункта потребления задана потребность в продукте в этом пункте потребления.
Требуется определить оптимальный план перевозок продукта, так чтобы потребности во всех пунктах потребления были удовлетворены, а суммарные затраты на транспортировку всей продукции были минимальными.
1. Леоненков А. Решение задач оптимизации в среде MS Excel –СПб..БХВ- Петербург, 2005.- 704 с.. ил.
2. Сдвинков О.А. математика в MS Excel 2002- М… Солон-Пресс, 2004-192 с.. ил.
3. Калихман И.Л. Сборник задач по математическому программированию. Изд. 2-е, доп. И перераб. М., “Высшая школа”, 1975.-270 с.
4. Шапкин А.С., Мазаева Н.П. Математичаские методы и модели исследования операций: Учебник.- М.. Издательско-торговая корпорация “Дашков и К°”, 2003.
5. Банди Б. Методы оптимизации . Вводный курс –М.. Радио и связь, 1988.-128 с.
6. Гаас С. Линейное программирование.- М… ГИМФМЛ, 1961-304 с.
7. Гилл Ф., Мюррей У., Райт М. Практическая оптимиация. – М.. Мир, 1985.- 512 с.
8. Заславский Ю.Л. Сборник задач по линейному программированию.- М.. Наука, 1969.- 256.
9. Калихман И.Л. Сборник задач по линейной алгебре и программированию.- М.. Высшая школа, 1969.-160 с.

Дисциплина: Информатика, Программирование, Базы данных
Тип работы:  Дипломная работа
Бесплатно:  Антиплагиат
Объем: 41 страниц
В избранное:   
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН
КАЗАХСКИЙ ГОСУДАРСТВЕННЫЙ ЖЕНСКИЙ ПЕДАГОГИЧЕСКИЙ ИНСТИТУТ
КАФЕДРА ИНФОРМАТИКИ

Дипломная работа

ПО ТЕМЕ:

Решение транспортной задачи линейного программирования в среде MS Excel

Допущена к защите Выполнила: студентка
4курса,
протокол № оо, ро,
спец. Информатика
2006 г. Оспанова
А.А.
заведующий кафедрой Научный руководитель:

к.т.н., доцент старший
преподаватель Г.И. Салгараева ____________
Мусиралиев Ж.А._________

Алматы 2006 г.

СОДЕРЖАНИЕ:

ВВЕДЕНИЕ___________________________ ____________________________
Глава I Задачи линейного программирования___________________

1.1 Общая характеристика задачи линейного программирования ________
1.2 Математическая постановка задачи линейного
программирования.__________________ __________________________
Глава II Основные методы решения транспортной задачи
линейного программирования.__________________ ______
2.1 Математическая постановка транспортной задачи._________________
2.2 Решение транспортной задачи с помощью программы
Ms Excel______________________________ _______________________
2.3 Рекомендации по решению задач оптимизации
с помощью надстройки Поиск решения __________________________
Глава III. Двойственная задача линейного
программирования.__________________ _____________

3.1 Математическая формулировка двойственной задачи

линейного программирования.__________________ _______________

3.2 Математическая постановка двойственной задачи о
красках.___________________________ _________________________
3.3 Решение двойственной задачи о красках с помощью
программы Ms Excel______________________________ ___________

Заключение ___________________________________ _________
Литература___________________________________ __________

Введение

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

В некотором географическом регионе имеется фиксированное число пунктов
производства и хранения некоторого однородного продукта и конечное число
пунктов потребления этого продукта . В качестве продукта может выступать,
например, нефть, уголь, песок, цемент, т.д. Для каждого из пунктов
производства и хранения известен объем производства продукта или его
запаса. Для каждого пункта потребления задана потребность в продукте в этом
пункте потребления.
Требуется определить оптимальный план перевозок продукта, так чтобы
потребности во всех пунктах потребления были удовлетворены, а суммарные
затраты на транспортировку всей продукции были минимальными.
Рисунок1. Иллюстрация транспортной задачи для двух пунктов производства и
трех пунктов потребления

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

Транспортная задача: Уменьшение затрат на перевозку.

В этой работе мы рассмотрим решение классической транспортной задачи Excel
7.0 позволяет находить оптимальное решение, сохраняя заданные ограничения.
Транспортная задача является классической задачей исследования операций.
Множество задач распределения ресурсов сводятся именно к этой задаче.

1. Математическая постановка транспортной задачи.
Общая постановка транспортной задачи состоит в определении оптимального
плана перевозок некоторого однородного груза из т пунктов отправления
А1,А2,...,Ат в п пунктов назначения В1,В2,..,Вп. При этом в качестве критерия
оптимальности обычно берется либо минимальная стоимость перевозок всего
груза. Обозначим через сij тарифы перевозки единицы груза из i-го пункта
отправления в j-й пункт назначения, через ai-запасы груза в j-м пункте
отправления, через bj-потребности в грузе в j-м пункте назначения , а через
xij-количество единиц груза, перевозимого из i-го пункта отправления в j-й
пункт назначения. Тогда математическая постановка задачи состоит в
определении минимального значения функции:

, [1]

при условиях:
[2]
[3]
[4]

Поскольку переменныеудовлетворяют системам уравнений(2) и (3) и
условию неотрицательности (4), то обеспечивается доставка необходимого
количества груза в каждый из пунктов назначения (условие (2)), вывоз
имеющегося груза из всех пунктов отправления (условие (3)), а также
исключаются обратные перевозки (условие (4)).
Определение 1. Всякое неотрицательное решение системы линейных уравнений
(2) и (3), определяемое матрицей Х=() (i=1,...m;j=1,...n), называется
планом транспортной задачи.

Определение2. План =() (i=1,...m;j=1,...n), при котором
функция (1) принимает своё минимальное значение, называется оптимальным
планом транспортной задачи.
Обычно исходные данные транспортной задачи записывают в виде (см.
таблицу 1.)

Очевидно, общее наличие груза у поставщиков равно:
,
а общая потребность в грузе в пунктах назначения равна запасу груза в
пунктах отправления, т.е.

единиц.

Если общая потребность в грузе в пунктах назначения равна запасу груза в
пунктах отправления, т.е.

=, [5]
То модель такой транспортной задачи называется закрытой. Если же указанное
условие не выполняется, то модель транспортной задачи называется открытой.
Таблица 1.

Пункты Пункты назначения Запасы
отправления
... ...




... ... ... ... ... ... ...




... ... ... ... ... ... ...




Потреб ... ...
ности

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

В случае превышения запаса над потребностью

,
вводится фиктивный (n+1)-й пункт назначения с потребностью
=-
и соответствующие тарифы считаются равными нулю: =0 (i=1,...m).
Полученная таким образом задача является транспортной задачей, для которой
выполняется равенство (5).

Аналогично, при

,
вводится фиктивный (m+1)-й пункт отправления с запасом груза

=-
и тарифы пологаются равными нулю: =0 (j=1,...m). Этим задача сводится к
обычной транспортной задаче, из оптимального плана которой получается
оптимальный план исходной задачи.
Число переменных в транспортной задаче с m пунктами отправления и
пунктами назначения равно m n, а число уравнений в системах (2) и (3) равно
n+m-1. Следовательно, опорный план транспортной задачи может иметь не
более n+m-1 отличных от нуля неизвестных.
Если в опорном плане число отличных от нуля компонент равно в точности
n+m-1, то план является невырожденным, а если меньше-то вырожденным.
Для определения опорного плана существует несколько методов. (Как и для
всякой задачи линейного программирования, оптимальный план транспортной
задачи является и опорным планом). Для определения оптимального
воспользуемся средством Поиска решений, реализованного в Excel.
Допустим, что ваша фирма занимается переработкой некоторого сырья на
нескольких заводах (потребители-З1,З2,...), расположенных в разных районах
города. Сырье поставляется со складов (поставщики-П1,П2,...), расположенных в
нескольких городах области. Стоимость сырья одинаковая, однако, перевозка
со склада и завода. Потребность заводов в сырье различна, и запасы на
каждом складе ограничены. Требуется определить: с какого склада, на какой
завод поставлять, сколько сырья для минимизации общих затрат на перевозку.
В нашем примере обозначим заводы З1,З2,З3,З4, а склады П1,П2,П3,П4,П5.
Стоимость перевозки измеряется в тенге на тонну груза, а потребность
заводов и складские запасы - в тоннах.

ГЛАВА I. Задачи линейного программирования.

К классу линейного программирования относятся такие задачи
однокритериальной оптимизации, в которых переменные являются непрерывными и
неотрицательными, целевая функция является линейной функцией своих
аргументов, а ограничения могут быть представлены в форме линейных
неравенств и равенств. При этом на значения переменных не накладываются
никакие дополнительные ограничения, такие как, например, ограничения
целочисленности или булевости.
На формирование линейного программирования в качестве самостоятельного
направления научно-прикладных исследований наибольшее влияние оказали
американские ученые Дж. Данциг, Т. Купмас, Дж. фон Нейман и ученые из
России Л.В. Канторович, А.С. Немировский, Л.Г. Хачиян и Д.Б. Юдин. Хотя
необходимость создания специальных методов решения неклассических
оптимизационных задач осознавалась и раньше, в частности, экономистами и
военными специалистами во времена второй мировой войны, только в
послевоенное время были разработаны теоретические основы линейного
программирования и предложены специальные методы решения соответствующих
практических задач.
Собственно термин линейное программирование впервые появился в 1951
году в работах Дж. Дангинца и лауреата Нобелевской премии по экономике Т.
Купманса. Однако общепризнанно, что первые исследования по линейному
программированию, связанные с формулировкой основной задачи, рассмотрением
приложений, нахождением критерия оптимальности, экономической
интерпретацией, были выполнены в конце 30-х годов ХХ в. в СССР лауреатом
Нобелевской премии по экономике Л.В. Канторовичем. По поводу Дж. Данциг в
одной из своих монографий отмечает, что Конторовича Л.В. следует признать
первым, кто обнаружил, что широкий класс важнейших производственных задач
поддается четкой математической формулировке, которая, по убеждению, дает
возможность подходить к задачам с количественной стороны и решать их
численными методами...
Достижения в области линейного программирования содействовали прогрессу
в разработке методов и алгоритмов решения задач оптимизации других классов,
в том числе задач нелинейного, целочисленного и комбинаторного
программирования. В настоящее время задачи линейного программирования
широко используются в процессе подготовки специалистов самой различной
квалификации. Чтобы понять особенности задач данного класса и методы их
решения, необходимо рассмотреть математическую постановку задачи линейного
программирования в общем случае.

1.1. Общая характеристика задачи линейного
программирования.

При рассмотрении задач линейного программирования, следует помнить что,
с одной стороны, они являются специальным случаем общей задачи оптимизации.
Тем самым для задач линейного программирования оказываются справедливыми
соответствующие результаты относительно общих свойств и способов их
решения, разработанные в теории решения экстремальных задач. С другой
стороны, специальная форма задания целевой функции и ограничений в форме
линейных функций приводит к появлению у данного класса задач целого ряда
специальных свойств, которые послужили основой разработки
специализированных методов и алгоритмов их решения. Для детального анализа
этих специальных свойств следует рассмотреть общую математическую
постановку задачи линейного программирования.

1.2. Математическая постановка задачи линейного
программирования.

В общем случае математическая постановка задачи линейного
программирования, может быть сформулирована в следующем виде:
f(x1,x2...,,x n)( где (1.1)
x1,x2...,,x n (1.2)
(k{1,2,...,m}).

при этом следует принимать во внимание следующие принципиальные
предположения о характере целевой функции и левых частей ограничений:
Целевая функция f(x1,x2...,,x n ) предполагается линейной относительно всех
своих переменных, т.е. может быть представлена в форме всех своих
представлена в форме: f(x1,x...,,x n)=с1х1+с2х2+...+с n x n.
Левые части ограничений g k(x1,x2...,,x n) ({1,2,...,m}) также является
линейными функциями относительно своих переменных x1,x2...,,x n, т.е. могут
быть представлены в форме: g k(x1,x2...,,x n)=ак1х+ак2х2+...+а к n x n.
Переменные x1,x2...,,x n могут принимать свои значения только из множество
неотрицательных действительных чисел R1+ ,т.е. хi R1+
({1,2,...,n}).
С учетом сделанных предположений общая задача линейного программирования
может быть сформулирована следующим образом.
Необходимо найти максимум линейной целевой функции n переменных x1,x2...,,x n
R1+ следующего вида:

с1х1+с2х2+...+с n x n (
(1.3)

где множество допустимых альтернатив формируется следующей
системой ограничений типа равенств и неравенств:

аi1х+аi2х2+...+а in x n=bi ({1,2,...,q}). (1.4)

ак1х+ак2х2+...+а к n x n.bk ({q+1,2,...,m}).
(1.5)

В математической постановке общей задачи линейного программирования через
сi, aki , bk ({1,2,...,n}),({1,2,...,m}) обозначены постоянные
величины, которые могут принимать произвольные, не обязательно
целочисленные значения, определяемые спецификой конкретной задачи линейного
программирования.
В случае отсутствия ограничений типа равенств (1.4), т.е. при q=0, задача
линейного программирования называется стандартной задачей линейного
программирования, которая, с учетом сделанных предположений, может быть
записана в следующем виде:

с1х1+с2х2+...+с n x n ( (1.6)

где множество допустимых альтернатив формируется следующей системой
ограничений типа неравенств:

(1.7)
и x1,x2...,,x n 0

С другой стороны, при отсутствии ограничений типа неравенств (1.5), т.е.
при q=m, задача линейного программирования называется канонической или
основной задачей линейного программирования, которая с учетом сделанных
предположений, может быть записана в следующем виде:
с1х1+с2х2+...+с n x n ( (1.8)
где множество допустимых альтернатив формируется следующей системой
ограничений типа неравенств:
(1.9)
и x1,x2...,,x n 0.

При рассмотрении общих особенностей задачи линейного программирования
удобной оказывается стандартная форма математической постановки задачи
линейного программирования (1.6) и (1.7). Анализ множества допустимых
альтернатив стандартной задачи линейного программирования (1.6) и
(1.7) позволяет прийти к выводу о справедливости только одной из трех
возможных ситуаций:

1. Система ограничений (1.7) противоречива или несовместна, т.е. не
существует ни одного выбора значений x1,x2...,,x которые удовлетворяют
ограничениям (1.7). В этом случае задача линейного программирования не
имеет решения.
2. Система ограничений (1.7) не является противоречивой, однако
соответствующая ей область пространства Rn является неограниченной. В
этом случае задача линейного программирования не имеет решения, в
случае, если линейная функция (1.6) не ограничена в неограниченной
области, соответствующей множеству допустимых альтернатив .
3. Система ограничений (1.7) не является противоречивой, и при этом
соответствующая ей область пространства Rn является ограниченной. В
этом случае задача линейного программирования имеет решения.
В последней ситуации задача линейного программирования может иметь либо
единственное решение, либо континуум решений. Континуум решений имеет место
в том случае, когда линейная целевая функция оказывается параллельной
функции левой части одного из ограничений.

ГЛАВА II. Основные методы решения задач линейного программирования.

В общем случае существует два подхода к решению задач оптимизации. С
одной стороны, для решения задачи линейного программирования теоретически
может быть использован некоторый аналитический способ решения, применимый
для решения задач оптимизации в общей постановке.
Однако использование для решения задач линейного программирования
аналитического способа решения, основанного, например, на методе множителей
Лагранжа, с учетом дифференцируемости целевой функции и ограничений,
связано с преодолением серьезных трудностей вычислительного характера. В
этом случае, даже для небольшого числа переменных и ограничений, решения
задачи линейного программирования сводится к нахождению частных производных
функции Лагранжа с последующим решением системы уравнений с большим числом
переменных. Именно по этой причине аналитический способ решения задач
линейного программирования не используется на практике.
С другой стороны для решения задачи линейного программирования могут быть
использованы алгоритмические методы решения, применимые для решения задач
оптимизации в общей постановке. Эти методы основываются на идее
градиентного поиска для задач оптимизации с ограничениями.
Однако наибольшее применение для задач линейного программирования получили
алгоритмические способы решения соответствующих задач, которые учитывают
специфические особенности целевой функции и множества допустимых решений.
Из алгоритмических способов следует отметить получивший широкую известность
симплекс- метод для решения задач линейного программирования и метод
потенциалов для решения транспортной задачи.
Для решения задач линейного программирования в программе MS EXCEL
реализованы приближенные методы их решения с достаточно высокой степенью
точности. Оценить получаемых решений можно посредством сравнения
аналитических и алгоритмических решений отдельных практических задач.

2.1. Математическая постановка транспортной задачи

В общем случае математическая постановка транспортной задачи может быть
сформулирована в следующем виде. Имеется m пунктов производства или
хранения и n пунктов потребления некоторого однородного продукта (например,
уголь, песок цемент и т. п.). Для каждого из пунктов задан аi –объем
производства или запаса продукта в i-том пункте (i{1,2,...,m}), а для
каждого пункта потребления задана bj – потребность в продукте в j-том
пункте потребления (j{1,2,...,n}). Известна сij – стоимость перевозки
или транспортировки одной единиц продукта из i-го пункта производства в j-й
пункт потребления. Требуется определить оптимальный план перевозок
продукта, так чтобы потребность во всех пунктах потребления были
удовлетворены, а суммарные затраты на транспортировки всей продукции были
минимальными.
Ведем в рассмотрение следующие переменные: хij- количество
транспортируемого продукта или объем перевозок из i-го пункта производства
в j-й пункт потребления. Тогда в общем случае математическая постановка
транспортной задачи может быть сформулирована следующим образом.
, (2.1)

где множество допустимых альтернатив формируется следующей системой
отграничений типа неравенств:

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

При этом общее число переменных транспортной задачи равно: mn, что
делает возможным сформулировать эквивалентную математическую постановку
транспортной задачи с одноиндексными переменными.
Классическая транспортная задача линейного программирования является
сбалансированной или закрытой, т.е. формулируется в форме, когда имеет
место равенство общего объема производства рассматриваемого продукта общему
объему его потребления. Этому условию соответствует отдельное ограничение
(2.5). В противном случае, если равенство (2.5) не имеет места, то
транспортная задача называется несбалансированной или открытой.
На практике встречаются различные модификации транспортной задачи. Наиболее
известные из них используют дополнительную структуру типа графа для задания
структуры транспортной сети, соединяющей пункты производства и потребления.
Соответствующая транспортная задача может быть сформулирована в сетевой
постановке применительно к конкретному графу и поэтому относится к классу
задач оптимизации на графах.
В то же время классическая транспортная задача может быть дополнена
условиями на ограничение сверху возможных значений некоторых или всех
переменных: где hij-пропускная способность транспорта между i-м
пунктом производства и j-м пунктом потребления. Как нетрудно заметить,
подобная модификация приведет к включению в модель (2.1)-(2.5)
дополнительных ограничений. Однако эти дополнительные ограничения не
оказывают существенного влияния на процесс их решения с помощью программы
Ms Excel.

2.2. Решения транспортной задачи с помощью программы Ms Excel

Для решения классической транспортной задачи с помощью программы Ms Excel
необходимо задать конкретные значения параметрам исходной задачи. Для
определения рассмотрим задачу оптимального планирования перевозок бензина
некоторой марки между нефтеперерабатывающими заводами (НПЗ) и
автозаправочными станциями (АЗС). В этом случае в качестве
транспортируемого продукта рассматривается бензин, в качестве пунктов
производства- 3 нефтеперерабатывавающих завода (т=3), а в качестве пунктов
потребления- 4 автозаправочные станции (п=4).

Объемы производства бензина следующие: НПЗ №1- 10 т, НПЗ №2- 14 т, НПЗ №3-
17 т. Объемы потребления бензина следующие: АЗС №1-15 п, АЗС №2- 12 п, АЗС
№3-8,5 т, АЗС №4-5,5 т. Стоимость транспортировки одной тонны бензина между
НПЗ и АЗС заданна в форме следующей таблицы:

Таблица 2.1. Стоимость транспортировки бензина
Между НПЗ и АЗС (в тысяч тенге)


Пункты потребления АЗС №1 АЗС №2 АЗС №3 АЗС №4
Пункты производства
НПЗ №1 3 5 7 11
НПЗ №2 1 4 6 3
НПЗ №3 5 8 12 7

Соответствующая математическая постановка рассматриваемой индивидуальной
транспортной задачи может быть записана в следующем виде:

3х11+5х12+7х13+11х14+х21+4х22+6х23+ 3х24+ (2.6)
+5х31+8х32+12х33+7х34→

где множество допустимых альтернативформируется следующей системой
ограничений типа равенств:

(2.7)

Заметим, что первые 3 ограничения данной задачи соответствуют общему
ограничению (2.2), следующие 4 ограничения- общему ограничению (2.3), а
последнее ограничение- общему ограничению (2.5).
При этом общее ограничение (2.4), соответствующее требованию
сбалансированности транспортной задачи не входит в математическую модель
рассматриваемой индивидуальной задачи. Это вполне допустимо, поскольку
непосредственная проверка позволяет установить выполнение общего
ограничения (2.4), а значит, исходная транспортная задача (2.6) и (2.7)
является сбалансированной.

Для решения сформулированной индивидуальной транспортной задачи с помощью
программы MS Excel создадим в книге Линейное программирование новый лист и
изменим его имя на Транспортная задача. Для решения задачи выполним
следующие подготовительные действия:

1.Внесем необходимые надписи в ячейки A5:A10, B1, F1. B5:G5, как это
изображено на рисунке 2.1. Следует отметить, что конкретное содержание
этих надписей не оказывает никакого влияния на решения рассматриваемой
транспортной задачи.
2. В ячейки В2:Е4 введем значение коэффициентов целевой функции (таблица
2.1).
3. В ячейки F2, введем формулу: =суммпроизв(В2:Е2; В6:Е8), которая
представляет целевую функцию (2.6).
4. В ячейки G6:G8 и B10:E10 введем значения, соответствующие правым
частям ограничений (2.7).
5. В ячейку F6 введем формулу: =сумм (В6:Е6), которая представляет
первое ограничение (2.7).
6. Скопируем формулу, введенную в ячейку F6, в ячейки F7 и F8.
7. В ячейку В9 введем формулу: =сумм (В6:В8), которая представляет
четвертое ограничение (2.7).
8. Скопируем формулу, введенную в ячейку В9, в ячейки C9, D9 и E9.
Внешний вид рабочего листа MS Office Excel с исходными данными для решения
транспортной задачи показан на рисунке 2.1.
Для дальнейшего решения задачи следует вызвать мастер поиска решения, для
чего необходимо выполнить операцию главного меню: Сервис│Поиск решения...
После появления диалогового окна Поиск решения следует выполнить следующие
действия:
1.В поле с именем Установить целевую ячейку: ввести абсолютный
адрес ячейки $F$2.
2.Для группы Равной: выбрать вариант поиска решения- минимальному значению.
Рисунок. 2.1 Исходные данные для решения
транспортной задач

3. В поле с именем Изменяя ячейки: ввести абсолютный адрес
диапазона ячеек $B$2:$E$4.
4.Добавить 7 ограничений, соответствующих базовым ограничениям
исходной постановки решаемой транспортной задачи. С этой целью
выполнить следующие действия:
• для задания первого ограничения в исходном диалоговом окне Поиск
решения нажать кнопку с надписью Добавить;
• в появившемся дополнительном окне выбрать ячейку $F$6, которая
должна отобразиться в поле с именем Ссылка на ячейку;
• в качестве знака ограничений из выпадающего списка выбрать строгое
неравенство “=”;
• в качестве значения правой части ограничения выбрать ячейку $С$6;
для добавления первого ограничения в дополнительном окне нажать

кнопку с надписью Добавить;
• аналогичным образом задать оставшиеся 6 ограничений.

5.Добавить последнее ограничение на неотрицательность значений
переменных задачи. Внешний вид диалогового окна мастера поиска
решения с ограничениями для транспортной задачи изображен на
рисунке 2.2.
6.В дополнительном окне параметров поиска решения следует выбрать
отметки Линейная модель и Неотрицательные значения.

Рисунок 2.2. Параметры мастера поиска решения и базовых
ограничения для транспортной задачи.

После задания ограничений и целевой функции можно приступить к поиску
численного решения, для чего следует нажать кнопку Выполнить. После
выполнения расчетов программой MS Excel будет получено количественное
решение, которое имеет следующий вид рисунок 2.3.

Рисунок 2.3 Результат количественного
решения транспортной задачи.

Результатом решения транспортной задачи являются найденные оптимальные
значения переменных: х11=0, х12=1,5, х13=8,5, х14=0, х21=14, х22=0, х23=0,
х24=0, х31=1, х32=10,5, х33=0, х34=5,5, которым соответствует значение
целевой функции: f opt = 208,5. При выполнении расчетов для ячеек В6:Е8 был
выбран числовой формат с тремя знаками после запятой.

Анализ найденного решения показывает, что для удовлетворения потребностей
АЗС №1 следует транспортировать 14т бензина из НПЗ №2 и 1т- из НПЗ №3, для
удовлетворения потребностей АЗС №2 следует транспортировать 1,5 т бензина
из НПЗ №1 и 10,5т – из НПЗ №3, для удовлетворения потребностей АЗС №3
следует транспортировать 8,5 т бензина из НПЗ №1 и, наконец, для
удовлетворения потребностей АЗС №4 следует транспортировать 5,5 т бензина
из НПЗ №3. При этом общая стоимость найденного плана перевозок составит
208,5 тысяч тенге.

Рисунок 2.4 Отчет по результатам поиска решения.

2.3. Решение транспортной задачи с помощью методов
потенциалов

Для оценки точности и правильности результатов решения транспортных задач
линейного программирования, полученных с помощью программных средств, в
общем случае можно воспользоваться симплекс-методом. Однако специально для
решения транспортной задачи линейного программирования был разработан метод
потенциалов. Основная идея этого метода основывается на критерии
оптимальности, который может быть сформулирован следующим образом.
Для того чтобы исходная закрытая транспортная задача линейного
программирования (2.1) - (2.5) имела оптимальное решение, необходимо и
достаточно существование таких неотрицательных чисел {v1,v2,v3,...,vn,
u1,u2,...,um}, которые обеспечивают выполнение двух групп условий:

, (2.8)
и если некоторое
0 то ui+uj=cij.
(2.9)
Соответствующие данным условиям числа {v1,v2,...,vn, u1,u2,...,um} получили
название потенциалов. Очевидно, данные условия могут служить признаком
окончания поиска решения транспортной задачи.
Общая идея определения оптимального решения транспортной задачи методом
потенциалов аналогична идее решения задачи линейного программирования
симплекс-методом, а именно: сначала находят некоторое начальное допустимое
решение транспортной задачи, а затем его последовательно улучшают до
получения оптимального решения. В общем случае алгоритм метода потенциалов
имеет итеративный характер и заключается в выполнении следующих действий:
1. Если исходная транспортная задача линейного программирования является
открытой, то она преобразуется к замкнутому виду (2.1)- (2.5). С этой
целью могут быть введены дополнительные переменные {xm+1,j}для
фиктивного пункта производства am+1, если выполняется неравенство:
или дополнительные переменные для фиктивного пункта
потребления bn+1, если выполняется неравенство:
При этом дополнительным переменным должны соответствовать нулевые
коэффициенты целевой функции: cm+1,1=cm+1,2=...=cm+1,n=0 или
c1,n+1=c2,n+1=...=cm,n+1=0. Тем самым, с точностью до обозначений индексов
переменных, в качестве исходной транспортной задачи будем рассматривать
ее математическую модель в замкнутой форме (2.1)- (2.5).
2. Для транспортной задачи в замкнутой форме (2.1)-(2.5) находится
некоторое начальное допустимое решение, которое записывается в
специальную таблицу следующего вида таблица 2.2.
Рассмотрим особенности построение данной таблицы. Верхняя строка и
левый столбец содержат искомые значения потенциалов, которые требуется
отыскать на последующих этапах алгоритма, и значения правых частей
ограничений (2.2)-(2.3).

Таблица 2.2. Общий вид таблицы метода потенциалов

F(x) v1 v2 ... vn
b1 b2 bn
u1 c11 c12 ... c1n
a1 x11 x12 x1n
u2 c12 c22 c2n
a2 x12 x22 x2n
... ... ... ... ...
um cm1 cm2 ... cmn
am xm1 xm2 xmn

В каждой ячейке таблицы содержится два значения: cij- стоимость
транспортировки единицы продукта из i–го пункта производства в j–й
пункт потребления и xij - значения переменных начального допустимого
решения. При этом значения cij соответствуют коэффициентам целевой
функции исходной замкнутой транспортной задачи (1) и в последующем не
изменяются. Элементы xij соответствуют значениям переменных
промежуточных решений транспортной задачи линейного программирования и
изменяются на каждой итерации алгоритма. Если в некоторой ячейке xij=0,
то такая ячейка называется свободной, если же xij0, то такая ячейка
называется занятой. Самая верхняя слева ячейка исходной таблицы
содержит значение целевой функции (1) для содержащегося в таблице
промежуточного решения. При этом значение целевой функции
рассчитывается по формуле: F(x)=c11x11+c12x12+...+cnmxnm, где хij-
ненулевые элементы таблицы 2.2, соответствующие переменным решаемой
задачи.
Следует заметить, что первые два этапа метода потенциалов является
подготовительными. Все последующие действия имеют итеративный
повторяющийся характер и выполняются в рамках построенной исходной
таблицы.
3. Для построенной таблицы 2 находятся значения потенциалов пунктов
производства и потребления: v1, v2,... vn, u1,u2,...um. С этой целью
составляется и решается следующая система линейных уравнений:

(2.10)

где индексы i и j соответствуют только ненулевым значениям
переменных xij или занятым ячейкам таблицы 2.2. Как не трудно заметить,
существование решения системы уравнений (2.10) обеспечивает выполнение
второй группы условий критерия оптимальности (2.9). Для удобства
найденные значения записываются в таблицу 2.2.
4. Для найденного решения системы уравнений (2.1) проверяется первая
группа условий (2.8) критерия оптимальности. С этой целью вначале
рассчитываются оценки свободных ячеек таблицы 2 по следующей формуле:
(2.11)
где индексы i и j соответствуют только нулевым значениям переменных xij
или занятым ячейкам таблицы 2.2. В этом случае проверка первой группы
условий критерия оптимальности найденного решения сводится к проверке
следующего условия только для ячеек:
(2.12)
Если условие (2.12) выполняется, то найденное решения является
оптимальным, и на этом дальнейшие расчеты могут быть завершены. Если же
условие (2.12) не выполняется, то следует перейти к выполнению
следующего этапа алгоритма метода потенциалов.

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

• каждой ячейки, принадлежащей построенному циклу от выбранной
свободной ячейки, приписывают определенный знак, причем свободной
клетке – знак (+), а всем остальным клеткам – поочередно (+) и (-).
Соответствующие ячейки называют также минусовыми и плюсовыми;
• в выбранную свободную ячейку записывают меньшее из чисел хij, стоящих
в минусовых ячейках. Одновременно это число прибавляют к
соответствующим числам, стоящим в плюсовых ячейках, и вычитают из
чисел, стоящих в минусовых ячейках таблицы. При этом ячейка, которая
ранее была свободной, становится занятой, а минусовая ячейка, в
которой стояло минимальное из чисел хij , считается свободной.
В результате указанного изменения значений переменных в пределах
ячеек, связанных циклом с данной свободной ячейкой, находится новое
допустимое решение транспортной задачи, которому соответствует меньшее
по сравнению с предыдущим решением значение целевой функции. После
получения новой таблицы метода потенциалов следует прейти к выполнению
действий этапа 3 настоящего алгоритма.
Рассмотренный алгоритм метода потенциалов может быть изображен
графически в форме диаграммы деятельности языка UML.
Рис.

В заключении следует отметить, что при определении начального допустимого
решения или в процессе решения задачи может быть получено вырожденное
решение. Чтобы избежать в этом случае зацикливания алгоритма, следует
соответствующие нулевые элементы допустимого решения заменить сколь ... продолжение

Вы можете абсолютно на бесплатной основе полностью просмотреть эту работу через наше приложение.
Похожие работы
Введение ИС «Определение прогнозных показателей республиканского бюджета»
Информационная система налоговой службы Республики Казахстан
Создание автоматизированной информационной системы для организации выдачи кредита банка
Проектирование информационной системы диспетчера автотранспорта
Компьютерные вирусы и их виды
Тестовые вопросы по дисциплине Использование IT в образовании
Современные операционные системы
Информационные системы: основы и классификация
Разработка подсистемы Заработная плата
Разработка автоматизированного рабочего места администратора гостиничного комплекса
Дисциплины