АВТОМАТИЗИРОВАННЫЕ СИСТЕМЫ УПРАВЛЕНИЯ НА ВОЗДУШНОМ ТРАНСПОРТЕ: Методические указания по изучению дисциплины и выполнению контрольной работы // Университет ГА, С.-Петербург, 2007.
АВТОМАТИЗИРОВАННЫЕ СИСТЕМЫ УПРАВЛЕНИЯ НА ВОЗДУШНОМ ТРАНСПОРТЕ
Методические указания по изучению дисциплины и выполнению контрольной работы
Для студентов заочного факультета всех специализаций
Санкт-Петербург
Одобрено и рекомендовано к изданию
Учебно-методическим советом Университета
Ш 87(03)
АВТОМАТИЗИРОВАННЫЕ СИСТЕМЫ УПРАВЛЕНИЯ НА ВОЗДУШНОМ ТРАНСПОРТЕ: Методические указания по изучению дисциплины и выполнению контрольной работы // Университет ГА, С.-Петербург, 2007.
Издаются в соответствии с рабочей программой дисциплины
«АВТОМАТИЗИРОВАННЫЕ СИСТЕМЫ УПРАВЛЕНИЯ НА ВТ».
Предназначены для студентов заочного факультета всех специализаций.
Ил.4, табл. 13, библ. 5 назв.
Составитель Ю.Е. Хорошавцев, д-р. техн. наук, проф.
Рецензент Ю.И. Палагин, д-р. техн. наук, проф.
Ó Университет гражданской авиации, 2007
ОБЩИЕ МЕТОДИЧЕСКИЕ УКАЗАНИЯ
При изучении дисциплины «АСУ на воздушном транспорте» рассматриваются вопросы, связанные с информационным обеспечением выработки управленческих решений, а также методы принятия решения в различных условиях. Под решением понимается некоторый набор из ряда возможностей. В курсе рассматривается принятие решений как в условиях определенности, так и неопределенности. Большое внимание уделяется методам получения оптимальных решений.
Весь материал группируется в четыре больших раздела.
Первый посвящается информационному обеспечению процесса принятия решения и в основном дает начальные представления об организации и работе СУБД - систем управления базами данных. Во втором разделе изучаются вопросы принятия решений в условиях неопределенности. Третий, самый большой раздел, посвящен методам выработки оптимальных решений. Эти методы базируются на комплексе математических дисциплин, объединенных названием исследования операций, и включают основы линейного и динамического программирования, элементы теории матричных игр, вариационного исчисления, некоторых нелинейных задач. В четвертом разделе достаточно подробно излагаются методы теории массового обслуживания. В целом дисциплина дает полное представление об инженерных методах, составляющих методологическую базу современных АСУ.
Освоение данной дисциплины дает возможность специалисту понять работу различных АСУ, а также самостоятельно их проектировать, используя современные методы расчетов и компьютерную технику.
АСУ на ВТ является одной из основных дисциплин, формирующих студента как специалиста авиатранспортного производства. Она опирается на прикладную математику, вычислительную технику, программирование, экономику.
Изучение дисциплины целесообразно проводить последовательно, как указано в тематическом плане. Для успешной работы рекомендуется вести конспект, проверяя усвоение материала по вопросам для самопроверки, и своевременно выполнить контрольную работу.
Во время экзаменационной сессии читаются лекции по наиболее важным вопросам. После лабораторных работ и защиты отчетов по ним студент допускается к зачету или экзамену. Лабораторные работы выполняются, как правило, в период сессии.
Каждый студент должен представить по дисциплине контрольную работу.
Литература
1. Глушков В.М. Введение в АСУ. Киев: Техника, 1972.
2. Хорошавцев Ю.Е. Основы АСУ транспортными системами: Учебное пособие / Академия ГА. СПб., / 1999.
3. Вентцель Е.С. Исследование операций. Задачи, принципы, методология. М.: Наука, 1980.
4. Аков Р., Сасиени М. Основы исследования операций / Под ред. И.А.Ушакова. М.: Мир, 1971.
5. Визе Манс. Microsoft Access 2.0 / Под ред. С.А. Каратыгина. М.: Бином, 1996.
6. Любая новейшая литература, относящаяся к Microsoft Office и Интернету.
МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ
Тема 1. Автоматизированные системы управления (АСУ). Общие сведения.
В этой теме изучаются общие представления об АСУ, характер решаемых задач и проблемы, стоящие перед разработчиком таких систем. Необходимо знать принципы построения, структуру, аппаратные средства АСУ, функции блоков.
Литература: [1]; [2, п.1].
Тема 2. Информационная база АСУ
При изучении этой темы следует уяснить понятия базы данных и системы управления базами данных (СУБД) как объектов, сугубо ориентированных на компьютерную технику. Необходимо понимать суть реляционных баз данных и условий установления связей между электронными таблицами и файлами баз данных, что такое формат dBASE и каковы особенности работы с системой ACCESS. Известные системы продажи и бронирования авиабилетов «Амадеус» и «Габриэль» по сути являются примером специализированных СУБД.
Литература: [2, п.2]; [5].
Тема 3. Использование экспертных систем в АСУ
Здесь необходимо усвоить отличие экспертных систем (ЭС) от остальных вычислительных программ: наличие базы знаний, которая в процессе пользования ЭС может модифицироваться. Студент также должен знать структуру типовой ЭС и функции блоков, в чем заключаются особенности двух основных режимов работы ЭС: наполнения знаний и решения задач, из правил какого вида может составляться база знаний.
Литература: [2, п.3].
Тема 4. Принятие решения в условиях неопределенности
При изучении этой темы студенту необходимо освежить в памяти основные положения (в начальном объеме) теории вероятности, знать определения случайных величин и их характеристик: закона распределения, математического ожидания, дисперсии. Студент должен понимать, как факторы случайности могут влиять на принимаемые решения и какие существуют приемы для снижения этого влияния, в чем суть метода статистических оценок, в каких случаях он оправдан, почему замена случайных величин их средними значениями наиболее правомерна при многократно проводимых операциях.
Студент должен знать метод максимального правдоподобия, в каких случаях он оказывается полезным, что он позволяет получить.
Для определения влияния одной случайной величины на другую, некоторого фактора на исследуемый показатель студент должен уметь пользоваться аппаратом дисперсионного факторного анализа, понимать смысл формулируемых и проверяемых статистических гипотез, знать, что такое доверительная вероятность и как интерпретировать результаты расчетов по данному методу.
Особое внимание следует уделить изучению регрессионных моделей, составляющих неотъемлемую часть всех статистических расчетов. Уметь пользоваться методом наименьших квадратов при определении параметров регрессионной модели.
Все рассмотренные методы необходимо уметь иллюстрировать примерами работы транспортных систем, подверженных влиянию случайных факторов. В частности, примерами построения прогнозов экономических или эксплуатационных показателей транспортных компаний.
Литература: [2, п.4]; [3].
Тема 5. Оптимальное управление в АСУ
Необходимо со всей серьезностью отнестись к изучению этой важной и сложной темы, без которой нельзя понять работу современных АСУ.
Студент должен знать, как формулируется математически оптимизационные задачи, как практические задачи представляются в математической форме в виде различных моделей, в чем заключается особенность линейных и нелинейных моделей и задач с целочисленными и нецелочисленными решениями.
Особое внимание нужно уделить методам линейного программирования как наиболее распространенным. Уметь практические задачи записывать в виде линейных моделей. Знать основные методы решения линейных задач: симплекс-метод, метод потенциалов в транспортной задаче (в постановочном плане). Из сетевых потоковых моделей студент более всего должен обратить внимание на задачу коммивояжера, входящую в контрольную работу.
Помимо линейных задач студент должен хорошо усвоить суть метода динамического программирования, заключающегося в пошаговой оптимизации (без оглядки на последствия от решения в данном шаге), метод динамического программирования на каждом шаге решения задачи учитывает последствия от сделанного шага, поэтому оптимизация продвигается “пятясь”.
Кроме того, студент должен иметь достаточные представления о вариационных методах решения оптимизационных задач и начальные знания об элементах выпуклого программирования. Для этого достаточно разобрать несколько простейших примеров из соответствующих разделов дисциплины, приведенных в [2].
Важным элементом подготовки студента является приобретение навыков перехода от практических задач к математическим методам их решения. Студент должен ясно понимать, что одни и те же практические задачи могут быть формализованы с использованием различных моделей (линейных, сетевых, динамических), соответственно методы их решения будут различными. Не случайно в учебном пособии [2] задача об оптимальной нагрузке самолета сначала формулируется как целочисленная в линейном программировании, а затем та же задача решается методом динамического программирования.
Литература: [1]; [2, п.6-9]; [3]; [4].
Тема 6. Введение в игровые методы принятия решений
Данная тема служит для получения начальных знаний о достаточно новой и специфичной области в теории принятия решений, а именно, описывающей ситуации, называемые в теории конфликтами. Студент должен понимать, что значит решение задачи в чистых и смешанных стратегиях, каков их смысл, какая существует связь между теориями матричных игр и линейного программирования.
Литература: [2, п.7]; [3].
Тема 7. Управление транспортными потоками с позиций теорий массового обслуживания
Студенту следует разобраться, какие задачи, относящиеся к транспорту, связи, обслуживанию, могут быть решены с позиций теории СМО. Для понимания методов решения задач необходимо твердо уяснить, что такое марковские процессы, какие потоки событий являются простейшими и почему. Студент должен рассчитывать с помощью полученных знаний основные характеристики эффективности работы СМО, уметь приводить различные практические случаи к одной из рассматриваемых в теме моделей: одноканальной или многоканальной, без очереди или с очередью (с отказами или без).
Литература: [2, п.10]; [3].
ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ
1. Какие задачи решаются с помощью АСУ и на каких методах базируется получение решений?
2. Что такое базы данных?
3. Какие базы данных являются реляционными?
4. В чем заключается основное отличие экспертных систем от остальных компьютерных программ?
5. Что такое принятие решения в условиях неопределенности?
6. Какие величины называются случайными? Что у случайных величин не случайно?
7. Какую задачу решает метод максимального правдоподобия? Как на практике получается функция распределения плотности вероятности?
8. Почему проверка фактора на значимость в дисперсионном факторном анализе формируется в виде проверки гипотезы о равенстве средних?
9. Как с помощью регрессионных моделей строить прогноз по данным наблюдений?
10. Когда следует прибегать к методам экспертных оценок?
11. Что необходимо знать, решая задачу методами (любыми) оптимального управления?
12. Какой вывод из геометрической интерпретации задачи линейного программирования положен в основу симплекс-метода?
13. Что такое метод “северо-западного угла” в транспортной задаче?
14. Как решаются транспортные задачи с неправильным балансом?
15. В чем заключаются задачи о назначениях и как в них записываются искомые неизвестные?
16. Возможно ли применение сетевых (потоковых) моделей в случае нарушения условия непрерывности потока?
17. Для чего в задаче коммивояжера предусмотрена процедура возврата?
18. В чем суть принципа минимакса? Какие стратегии называются минимаксными?
19. Как в принципе пошаговой оптимизации в динамическом программировании учитываются последствия от сделанного шага?
20. Почему в динамическом программировании решаемую задачу приходиться решать как бы дважды: сначала от конца к началу, затем опять к концу?
21. Что общего и в чем отличие в записях уравнений Беллмана и Эйлера, относящегося к простейшей задачи вариационного исчисления?
22. Как прямыми методами решаются задачи оптимизации?
23. Какие процессы называются марковскими? Приведите примеры из практики.
24. Что такое финальные вероятности и когда они возможны?
25. В чем особенность схемы гибели и размножения и почему она так распространена?
26. Как понимать неограниченность очереди в системе массового обслуживания?
27. Какое состояние в СМО с неограниченной очередью наиболее вероятно?
28. Какое условие необходимо соблюсти, чтобы в СМО с очередью смог осуществиться установившийся режим? Как это можно физически интерпретировать?
МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫПОЛНЕНИЮ
КОНТРОЛЬНОЙ РАБОТЫ
Назначением контрольной работы является закрепление у студентов основных понятий, составляющих предмет АСУ, а также проверка способности практического применения инженерных методов расчета транспортных задач, изложенных в курсе.
В задании требуется определить оптимальный маршрут перевозки коммерческого груза и оптимальную загрузку самолета, приносящих максимальный выигрыш.
Для решения задачи следует использовать метод ветвей и границ задачи коммивояжера и симплекс-метод задачи линейного программирования. В методических целях решение выполняется вручную (поэтому задание выбрано предельно простым). Решение, полученное симплекс-методом, должно быть дополнено геометрическим построением.
Условия задания, состоящего из двух задач, следующие.
Для данного типа самолета известны предельная коммерческая загрузка Q и полезный объем V в условных единицах. Самолет должен одним рейсом (с промежуточными посадками) обслужить 5 пунктов маршрута и возвратиться в исходный пункт, получив при этом максимальную прибыль. Матрица стоимости перелета из пункта в пункт задается (табл.1). Вследствие различных скидок она не симметрична.
В задаче 1 определяется оптимальный маршрут, а в задаче 2 – оптимальная загрузка.
Определение оптимальной загрузки ВС. Требуется определить самую прибыльную загрузку самолета. Рейсом может быть перевезено два вида груза: один дорогой, но тяжелый, второй менее прибыльный, зато полегче. При загрузке следует учесть ограничения на габариты и вес. Стоимость единицы веса груза первого вида составляет S1 , второго S2. Отношение удельных объемов грузов , где a – последняя цифра шифра студента. Отношение полезного объема к : , где b – предпоследняя цифра шифра. Предельная коммерческая загрузка Q равна 100 + 10c , где c – третья с конца цифра шифра. Соответственно S1=13/(a +2) , S2=6/(b+1).
Определение оптимального маршрута ВС. Требуется определить самый дешевый путь облета всех пунктов с возвратом в исходный.
Таблица 1
Пункты (узлы) | Исх.1 | |||||
Исх.1 | - | 25+a | 45+b | 15+c | 30+a | 25+b |
5+c | - | 15+b | 1+a | 30+c | 30+b | |
20+a | 15+b | - | 35+c | 5+b | a | |
20+b | 15+c | 25+a | - | 20+a | 20+c | |
10+b | 45+a | 25+c | 50+b | - | 5+a | |
25+a | 5+b | 5+c | 10+a | 5+b | - |
По шифру студента находятся: a – последняя цифра, b – предпоследняя, c – третья с конца.
Задание следует начать выполнять с поиска оптимального маршрута. В этом случае определяются тарифы на перевозку груза (правда, в данной работе они непосредственно не потребуются). Из условия задачи следует, что она является классическим выражением задачи коммивояжера, для которой имеется эффективный метод решения - ветвей и границ. Им и надо воспользоваться. Покажем метод на примере.
Пусть матрица стоимостей Cij перелета из i-го пункта в j-й задана (табл.2) .
Таблица 2
Пункты | ||||||
- | ||||||
- | ||||||
- | ||||||
- | ||||||
- | ||||||
- |
Метод заключается в пошаговой оптимизации, когда последовательно на каждом шаге выбирается по одному звену в оптимальный маршрут Т. Оптимальность понимается как минимальная стоимость Z(T). Выбор производится из соображения сиюминутной выгоды, т.е. без учета возможных последствий. На каждом шаге выбирается то звено, которое имеет наибольшее значение штрафа (который бы пришлось заплатить, если это звено не взять в оптимальный маршрут). Однако такая тактика выбора звеньев сопряжена с риском отвергнуть тот маршрут (содержащий отброшенные звенья), который впоследствии окажется самым дешевым. Поэтому тактика сиюминутной выгоды подстраховывается вычислением так называемых нижних границ стоимостей маршрутов, в том числе отвергнутых на каждом шаге выбора. Затем после вычисления всего маршрута, претендующего на оптимальность, его стоимость сравнивается с нижними границами отвергнутых маршрутов, которые графически изображаются ветвями. Если окажется, что какая-то нижняя граница будет меньше стоимости маршрута, то соответствующая ветвь анализируется точно так же, как до этого строился первоначальный маршрут. Такая процедура называется возвратом. При возврате соответствующая ветвь сама начинает ветвиться. Ветвление может прекратиться, когда все нижние границы ветвей превысят стоимость ранее найденного маршрута.
1. Приступим к решению. Определим верхнюю границу маршрута ZB(T) (вообще-то, ее вычисление не обязательно, но в некоторых случаях позволяет сократить расчеты). Верхняя граница – это стоимость взятого наугад маршрута. Пусть он будет состоять из звеньев (1,4)(4,5)(5,3)(3,6)(6,2)(2,1). Тогда в соответствии с табл.2 ZВ(T) = 16+18+27+0+5+7=73. Отсюда заключаем, что стоимость оптимального маршрута
.
2. Найдем нижнюю границу всего маршрута Н . Для этого проводится так называемая редукция строк и столбцов матрицы (см. табл.2). Редукция строк заключается в вычитании из каждой строки матрицы числа, равного минимальному значению элемента этой строки. В первой строке – это число С1=16. Результат редукции представлен в табл.3.
Таблица 3
Пункты | Сi | ||||||
Бесконечные стоимости C11 =C22 =…=C66 = – это математический прием, запрещающий перелет к самому себе.
В результате редукции в каждой строке будет не меньше одного нулевого элемента.
Аналогичным образом проводится редукция столбцов, в результате которой в каждом столбце будет, по крайней мере, по одному нулевому элементу (табл.4).
Таблица 4
Пункты | Сi | ||||||
Qi | H=48 |
После редукции в каждой строке и столбце будет не меньше, чем по одному нулю. Если бы вдруг оказалось в каждой строке и столбце ровно по одному нулю, то они образовали бы тогда замкнутый маршрут с очевидно нулевой редуцированной стоимостью. А чтобы вернуться к настоящей стоимости, нужно к этой нулевой стоимости прибавить то, что мы уже вычли при редукции, т.е. нижняя граница вычисляется по формуле:
.
Это легко понять, если учесть, что в каждой строке и в каждом столбце есть только один элемент любого маршрута Т.
3. В табл.4 в строках и столбцах есть по несколько элементов с Cij=0, поэтому необходимо рассмотреть варианты и сделать выбор, какое первое звено включить в маршрут. Выбирается то звено, которое имеет минимальную стоимость и максимальное значение штрафа Фij . Штраф определяет ту цену, которую мы заплатим, если не включим звено (i, j) в маршрут Т. Поэтому если мы включим звено (i, j), которое назовем опорным, а не включим какое-то другое, то за это другое заплатим меньший штраф.
Штраф вычисляется по формуле
Фij =Ai+Bj ,
где Аi=min , j-кроме опорного; Вj= min , i-кроме опорного.
На каждом шаге мы выбираем звено с максимальным выигрышем (min{Cij} и max{Фij}). Поскольку min{Cij} – это обязательно ноль, полученный в результате редукции, то Ai и Bj – это следующие минимальные после нуля числа. Если в строке несколько нулей, то Аi = 0. Аналогично обстоит дело и с Вj . Покажем это для нашего примера. Рассчитаем штраф для всех звеньев, претендующих на то, чтобы быть включенными в маршрут Т . Это все звенья с нулевой стоимостью (табл.5).
Таблица 5
Пункты | Сi | Аi | ||||||
Qj | H=48 | |||||||
Bj |
По найденным Ai и Bj рассчитываем штрафы Фij для звеньев с нулевой стоимостью, т.е. для (1,4), (2,4), (3,6) и т.д. Эти звенья с полученными штрафами сведем в табл. 6.
Таблица 6
Звено (i,j) | 1,4 | 2,4 | 3,6 | 4,1 | 4,2 | 5,6 | 6,2 | 6,3 | 6,5 |
Фij =Ai+Bj |
Из табл. 6 замечаем, что {Фij}=Ф14=10. Следовательно, в качестве опорного звена выбираем (1,4).
Если максимальное значение Фij имеет несколько звеньев, то в маршрут можно включать любое из них.
4. Пересчет нижней границы стоимости. Мы выяснили, что на данном (первом) шаге выгоднее всего взять звено (1,4). Но мы можем его и не брать, предполагая, что в дальнейшем это даст большой выигрыш. Если в маршруты мы не включаем звено (1,4), что записывается Т: – с чертой сверху, то нижней границей будет
Z(T: )= 48+10 = 58 .
Действительно, поскольку штраф рассчитывается по минимальным значениям элементов матрицы, то меньше, чем Ф14 мы не заплатим, если возьмем какое-либо другое звено в Т. А какой-то элемент из строки 1 и столбца 4 обязательно должен войти в маршрут: мы обязательно должны куда-то улететь из пункта 1 и откуда-то прилететь в пункт 4.
5. Для определения нижней границы стоимости маршрутов, включающих звено (1,4), надо преобразовать матрицу стоимости. Раз звено (1,4) включено в маршрут, то из дальнейшего рассмотрения надо исключить строку 1 и столбец 4 (кроме как в пункт 4 из пункта 1 мы никуда не полетим), а также обратный перелет - звено (4,1), поэтому принимается С41= . Вычеркиваем в табл.5 строку 1 и столбец 4 и получаем табл.7.
Таблица 7
Пункты | |||||
Проведем редукцию табл.7, как в п.2, и укажем Аi, Вj. Получаем табл.8.
Таблица 8
Пункты | Сi | Аi | |||||
Qj | Н1=1 | ||||||
Bj |
Новая нижняя граница для Т , включающего (1,4) равна:
Z(T:1,4) = 48 + 1 = 49 .
Теперь можно приступить к изображению дерева решений (пока содержащего две короткие ветви) (рис.1).
Рис.1
В узлах дерева указаны звенья, включенные или нет в маршруты, и рядом – нижние границы этих маршрутов.
6. Проводится вторая итерация решения во второй матрице (табл.8). Как в п.3 рассчитываются штрафы Фij, (табл.9).
Таблица 9
( i, j) | 2,1 | 3,6 | 4,2 | 5,6 | 6,2 | 6,3 | 6,5 |
Фij |
Максимальный штраф у звена (2,1): Ф21=16.
Следовательно, после (1,4) выбирается (2,1).
Новая нижняя граница для Т: равна:
Z(T : ) = 49 + 16 = 65 .
Новая нижняя граница для (T: ) находится, как в п.5: в табл.8 вычеркивается строка 2 и столбец 1, кроме того, С12= (но в таблице его не будет).
Теперь необходимо указать на появление новой процедуры – проверки оставшихся звеньев на возможность подмаршрутов, т.е. маршрутов, включающих не все узлы (пункты). В нашем случае подмаршрутом может быть следующий: (1,4), (4,2), (2,1) для уже выбранных звеньев (1,4) и (2,1). Чтобы его исключить, надо сделать звено (4,2) запрещенным, а для этого положить С42= . Данную процедуру следует проводить при каждом последующим выборе (правда, не всегда будут появляться запрещенные звенья) кроме конца (надо вернуться домой).
В результате указанных действий приходим к третьей матрице решений (табл.10).
Таблица 10
Пункты | ||||
Далее нужно провести ее редукцию, которая дает для маршрутов, включающих звено (2,1), нижнюю границу Н+Н1=49+2=51 и т.д.
Если все проделать правильно, повторяя изложенный алгоритм расчетов, то в конце получим следующее дерево решений (рис.2).
Рис. 2
Полученный маршрут включает звенья: (1,4); (2,1); (5,6); (3,5); (4,3); (6,2). Остается проверить, является ли он самым дешевым. Для этого предусмотрена процедура возврата, и нам пригодятся рассчитанные стоимости для звеньев с черточками.
7. Построенный полный маршрут будет оптимальным, если его стоимость не превосходит стоимости любого маршрута, соответствующего другим ветвлениям дерева.
Мы замечаем, что Z(T)=63 > Z(T: )=58 .
Отсюда следует, что необходимо исследовать подмножество маршрутов, не содержащих звена (1,4). Для исключения звена (1,4) из рассмотрения надо в табл. 2 принять C14= , затем повторить изложенный алгоритм поиска оптимального маршрута. Правда, если в последствии окажется, что нижние границы исследуемого ветвления превысят Z(Т) (в нашем случае 63), то исследование данной ветви прекращается.
Продолжаем разбор нашего примера. Опять возвращаемся к табл. 2, в которой теперь полагаем C14= . Данные для расчета матрицы стоимости возврата представляются в табл.11.
Таблица 11
Пункты | ||||||
Проведем редукцию табл.11 и приходим к табл.12. В табл.12 для краткости одновременно указана редукция строк и столбцов. Вам всегда редукцию следует производить порознь.
Таблица 12
Пункты | Сi | Аi | ||||||
Qj | Н=58 | |||||||
Bj |
Новая нижняя граница Z(T: )= 58, что совпадает с ранее найденным значением.
По значениям Ai и Bj рассчитываются штрафы (табл.13).
Таблица 13
( i, j) | 1,6 | 2,4 | 3,6 | 4,2 | 5,6 | 6,2 | 6,3 | 6,5 |
Фij |
Максимальный штраф у звена (6,3) Ф63 = 9 поэтому выбираем звено (6,3). Если вспомнить табл.6, то в ней звено (6,3) «вплотную» приближалось к (1,4).
Все дальнейшие действия полностью повторяют изложенный ранее метод расчета. Дерево окончательного решения приведено на рис. 3.
| Рис. 3 |
Оптимальным маршрутом перевозки (см. рис.3) является последовательность звеньев: (1,4); (4,3); (3,5); (5,6); (6,2); (2,1). Стоимость перевозки единицы груза по нему составляет 63. Это значение меньше нижних границ всех остальных ветвлений дерева решений.
Теперь можно приступить ко второй части задания.
Определение оптимальной загрузки ВС
Для решения этой задачи данной методички недостаточно. Необходимо обратиться к [2, п.5.3].
Определим количество груза первого и второго типов, дающее максимальную стоимость (прибыль). Обозначим вес груза первого типа – x1 второго – x2 .
Тогда по условию задачи
x1+ x2 .
Ограничение на габариты груза приводит к неравенству
или .
Для примера положим, что Q = 150, , . В численной форме условия–ограничения запишутся:
(1)
где x1 0 ; x2 0 .
Стоимость груза составляет S1x1+S2x2 .
Пусть S1=2 , S2=1. Тогда условие максимального выигрыша запишется как
f1(x)=2x1+x2 max . (2)
Мы получили математическую запись задачи линейного программирования: ограничения (1) и целевую функцию (2). Для решения воспользуемся симплекс-методом, но предварительно нужно условия задачи записать в каноническом виде. Чтобы от неравенств перейти к равенствам введем слабые переменные:
(3)
где x3 0 ; x4 0 .
Чтобы от максимума перейти к минимуму целевой функции, условие экстремума перепишем в форме:
f= - 2x1 - x2 min . (4)
Запись задачи в виде условий (3) и (4) позволяет применить симплекс-метод. В равенствах (3) переменные х3 и x4 составляют базис, а х1 и x2 - свободные переменные. Базисным решением будет X1=(0,0,300,150), для него f1=0.
Из условия (4) видно, что f можно уменьшить, увеличивая x2. Разрешая систему (3), переведем х2 из свободных в базисные, а х4 - в свободные переменные. В новом базисе х2, х3 перепишем задачу в виде:
(5)
Ей соответствует следующее базисное решение:
X2=(0, 150,150,0) и f2 = - 150 .
Теперь для минимизации f следует увеличивать x1, но так, чтобы x2 и x3 оставались неотрицательными. Из системы (5) ясно, что х1 увеличиваем до 75. При этом переменная х3 из базисных становится свободной (зато x1- базисной). В новом базисе x1 x2 система (5) будет выглядеть:
Ей отвечает решение X3 = (75,75,0,0) и f 3= - 225.
Поскольку в целевой функции все коэффициенты при неизвестных положительные, то возможность дальнейшей минимизации f исчерпана, и мы пришли к оптимальному решению
.
Возвращаясь к исходной функции f1 = - f(x) = 225, заключаем, что при загрузке х1=75 и х2=75 мы получаем максимальный выигрыш в 225 единиц.
Этот же результат мы получим геометрически. Введем прямоугольную систему х10х2. Множество допустимых решений системы (1) изобразится заштрихованной областью (рис.4).
Рис. 4
Для построения проведем сначала прямую 3x1+x2=300 по двум точкам: пусть x1=0, тогда x2=300, при x2=0 x1=100. Нанесём точки (0; 300) и (100; 0) на график и проведём прямую АВ. Чтобы определить, какая часть плоскости определяется неравенством (1), подставим в него координаты точки (0; 0). Получили верное неравенство, определяющее полуплоскость, содержащую начало координат. Стрелки на прямой АВ указывают эту полуплоскость. Аналогично строится прямая и для второго неравенства.
Для построения линейной функции воспользуемся следующим приемом: - запишем её в виде
2х1+х2=С ,
где С можно произвольно менять для того, чтобы она приняла максимальное значение, не нарушая при этом ограничения (1).
Пусть для начала С=100, тогда прямая пройдёт через точки (0;100) и (50;0). Изобразим её пунктирной линией, показывая, что изменяя С линия будет перемещаться параллельно самой себе. Из рис. 4 следует, что решением системы неравенств при условии max{f} является точка Р(75;75). Ей отвечает максимум f=225. Таким образом, аналитическое и геометрическое решения совпали.