КОНТРОЛЬНЫЕ ЗАДАНИЯ. Контрольная работа состоит из реферата по одной из тем лекционного курса (по выбору студента) и решения четырёх из следующих десяти задач. Номера задач выбираются по следующему правилу: N1=N; N2=N+2; N3=N+4; N4=N+6, где N1, N2, N3, N4 – номера задач, N – последняя цифра номера зачётной книжки судента. Например, если N=7, то N1=7, N2=9, N3=1, N4=3. 1. Электростанция мощностью в 1000МВт покрывает базисную часть графика нагрузки энергосистемы. Определить количество угля, потребляемое станцией ежесуточно. Сколько вагонов угля требуется для топливоснабжения станции в течение месяца, если один вагон может перевести 100 тонн. Коэффициент полезного действия станции 40%, норма потерь угля при транспортировке 1,5%. 2. Для снабжения ЭС мощностью 500МВт требуется спроектировать нефтепровод. По техническим условиям скорость транспортировки нефти не может превышать 0,2 м/с. Оценить диаметр труб при двух параллельных ветках, если станция загружена на 85% в течение двух часов в сутки, на 70% - десять часов и на 50% в оставшуюся часть суток. 3. Требуется разработать проект ГАЭС для покрытия 20% суммарной потребности в электроэнергии потребителей экономического района в течение двух часов в сутки при совмещённом максимуме нагрузки 800 МВт. Определить, какое количество воды необходимо ежедневно закачивать в верхнее водохранилище. Кпд ГАЭС в режиме генерации 90%. 4. Уголь с содержанием углерода 80% и теплотой сгорания 7,4 МДж/кг, используется в качестве топлива на электростанции мощностью 10 МВт с кпд 40%. Если в процессе горения 85% улерода превращается в углекислый газ, сколько CO2 образуется ежесуточно ? Определите интенсивность поступления CO2 в атмосферу. 5. Средняя плотность солнечной энергии у поверхности земли составляет 250 Вт/м2. Оцените общую площадь солнечного коллектора для солнечной электростанции мощностью 100 кВт, если кпд фотоэлектрического преобразования 10%. Оцените стоимость основных фондов станции, если удельная стоимость материала для солнечных панелей составляет 1000, 500 и 100 $/м2. Сопоставьте по стоимости с автомобильным двигателем такой же мощности. Определите срок окупаемости инвестиций при цене на электроэнергию 0,5 руб/кВтчас. 6. ГЭС с напором 30 м имеет установленную мощность 500 МВт. Какова должна быть площадь зеркала, чтобы уровень воды не снижался более чем на 1 5 см за день работы станции? Предположите, что в водохранилище отсутствует приток воды, а кпд составляет 90%. 7. Различные способы отопления зданий требуется сравнить по эксплуатационным издержкам. Оцените средние переменные издержки производства 1 МДж теплоты в день при использовании: 1) нагревателя на мазуте, кпд 60%; 2) на природном газе, кпд 60%; 3) электронагревателя с кпд 95%. Используйте следующие значения стоимости: Электроэнергия – 4 цент/кВтчас, газ – 9 цент/м3, мазут – 16 цент/л. 8. Предприятие производит два вида продукции – X и Y. Удельные затраты на производство каждого из них приведены в таблице. Определить стоимость потерь электроэнергии, если ожидаемая удельная прибыль от реализации X равна 6000 руб., Y – 8000 руб. Ресурс X Y Количество ресурса (оплаченное) Сырьё типа А, кг 2 4 8000 Сырьё типа Б, м 3 1 5000 Сырьё типа В, м2 10 12 15000 Электроэнергия, кВтчас. 10 8 8000 9. Фирма производит три вида продукции с одинаковой ожидаемой удельной прибылью в 120 руб. Затраты ресурсов на производство приведены в таблице. Определить максимальную цену дополнительной электроэнергии, допустимую с точки зрения фирмы. Ресурс Сырьё и материалы, кг Труд, челчас. Энергия, кВтчас. П1 4 П2 5 П3 6 Кол-во ресурса (оплаченное) 600 000 500 500 450 5 млн. 20 15 25 1 500 10.Районная энергосистема располагает 16 топливоснабжение которых может быть 2 электростанциями осуществлено с (ЭС), пяти угледобывающих предприятий (П1 – П5). Удельные затраты на добычу и транспортировку до каждой электростанции приведены в таблице. Найти план добычи и распределения топлива, обеспечивающий минимально возможную в данных условиях себестоимость электроэнергии, если известно, что отпуск электроэнергии электростанциями составляет соответственно 2.5, 3, 3, 1, 5, 1, 1.5, 2, 2, 1, 1.5,1.5, 4, 2.5, 2.5, 1.5 ГВтчас в месяц, объёмы добычи угледобывающих предприятий не могут превышать для П1 и П2 – 3 тыс. тонн, П3 – 1 тыс. тонн, П4 и П5 по 1,5 тыс. тонн в месяц. П1 П2 П3 П4 П5 ЭС1 45 70 52 55 60 ЭС2 70 78 47 50 65 ЭС3 80 60 60 72 75 ЭС4 88 82 80 100 120 ЭС5 56 56 52 47 50 ЭС6 60 70 60 70 60 ЭС7 50 45 45 55 45 ЭС8 50 55 50 42 60 ЭС9 44 44 44 44 44 ЭС10 70 50 50 80 80 ЭС11 52 55 80 82 70 ЭС12 60 45 40 50 125 ЭС13 50 45 60 70 70 ЭС14 65 65 45 65 65 ЭС15 75 60 70 75 75 ЭС16 65 70 65 65 50 ОСНОВЫ ТЕОРИИ ОПТИМИЗАЦИИ. РАСПРЕДЕЛЕНИЕ РЕСУРСОВ-5ч. Рассмотрим для примера простейшую задачу оптимального распределения ограниченных ресурсов. Некоторое предприятие может производить два вида продукции – X и Y, используя при этом ресурсы трёх типов: А – электроэнергия, В – капитальные ресурсы, С – трудовые ресурсы. Технология и организация производства таковы, что матрица норм расхода имеет следующий вид: Удельный Удельный расход ресурса расход ресурса на производство на производство продукта X продукта Y Электроэнергия, 5 15 3 кВтчас. Стоимости 3 2 основных фондов, руб. Труд, чел-час. 8 4 Найти план производства, обеспечивающий наибольшую прибыль при условии, что предприятие располагает оплаченным объёмом ресурсов (складской запас) соответственно 1500 кВтчас, 150 руб. и 700 чел-час., а удельная прибыль продуктов равны 10 и 12 руб/ед Математическая модель задачи: 5x1 15x 2 1500 3x1 2x 2 150 8x1 4x 2 700 x 0, x 0 2 1 Z 10x1 12x 2 max Графическая интерпретация: X2 175 С 100 75 А В X1 50 90 300 Известно [1], что оптимальное решение находится в одной из вершин области допустимых решений, представляющей собой в двумерном случае выпуклый многоугольник - симплекс, в данном случае треугольник. Подставив в целевую функцию Z поочередно координаты вершин треугольника, образованного прямой В (ограничение по капитальному ресурсу) и осями Оx1 , Ox2 , получаем искомый оптимальный план производства: x1 0; x2 75. В математическом программировании наиболее теоретически разработанными, проверенными и широко используемыми на практике являются задачи линейного программирования. Основная математическая задача линейного программирования формулируется следующим образом: найти неотрицательное решение (последовательный набор переменных, вектор) системы линейных ограничении (уравнений или неравенств) 4 (где под подразумевается знак =, <: или >), максимизирующее (или минимизирующее) линейную (или целевую) функцию Решение задачи называется также планом. В сокращенном виде система ограничений и целевая функция могут быть записаны следующим образом: Стандартной формой основной задачи линейного программирования будем называть такой вид задачи (1.1)—(1.3), в которой ограничения (1.2) представлены уравнениями, а целевая функция (1.3) минимизируется. При этом свободные члены b i должны быть неотрицательными (в противном случае обе части уравнения умножаем на —1). Отметим, что решение задачи симплексным методом, реализованным на ЭВМ, начинается со стандартной формы. В случае максимизации целевой функции, изменив знаки коэффициентов cij при переменных на противоположные, мы снова приходим к задаче минимизации. Любая совокупность переменных, удовлетворяющая условиями (1.1) и (1.2), называется допустимым решением. Допустимое решение, минимизирующее целевую функцию, называется оптимальным решением (или оптимальным планом). Система (1.2), представленная в стандартной форме, путем элементарных преобразований может быть приведена к виду который будем называть канонической системой. В такой системе для каждого i базисная переменная x i имеет коэффициент единицу в i-м уравнении и нуль в остальных уравнениях. Задачу линейного программирования часто представляют в векторноматричном виде. Обозначим через А—матрицу коэффициентов системы линейных уравнений, через х и b — векторы-столбцы переменных и свободных членов соответственно: Введем также n-мерный вектор с с1, с2 ,, сn , компонентами которого являются коэффициенты целевой функции. Тогда стандартную форму рассматриваемой задачи можно записать следующим образом: найти вектор при ограничениях 5 такой, что целевая функция Указанные три формы записи основной задачи линейного программирования позволяют выбирать наиболее эффективную форму представления задачи. Модели задач линейного программирования кроме обычных условий неотрицательности переменных часто содержат ограничения на переменные сверху или с обеих сторон, т. е. двусторонние ограничения, что записывают следующим образом: когда все переменные или часть из них ограничены сверху, и в случае двусторонних ограничении на переменные. Следует отметить, что задача с двусторонними ограничениями , заменой переменных может быть сведена к задаче только с верхними границами где -верхняя граница на новую переменную u i . К задаче линейного программирования сводятся многие плановоэкономические модели. Приведем простейшие из них. Модель задачи планирования производства называют также задачей планирования сырья или производственных мощностей. Предположим, что предприятие выпускает n наименований продукции. Обозначим через a ij затраты i-го вида ресурсов (i= 1,2,..., m) на производство единицы продукции j-го вида (j= 1,2,...,n), через b i —объемы имеющихся ресурсов (i= 1,2,..., m), через c j —прибыль, получаемую предприятием при реализации единицы j-го вида продукции. Требуется составить план производства продукции, который удовлетворял бы заданным ограничениям по ресурсам на выпуск каждого вида продукции с имеющимися технологическими способами производства и давал бы наибольшую прибыль предприятию. Математическая формулировка задачи состоит в следующем: найти план производства продукции при ограничениях и при этом общая прибыль от производства и реализации продукции была бы максимальной, т. е. Если предприятию наперед заданы нижняя α j и верхняя β j границы по объему выпуска j-ой продукции, то в модель задачи войдут ограничения типа 6 Простейшей и наиболее известной моделью планирования перевозок является транспортная задача планирования перевозок. Рассмотрим эту задачу в матричной постановке по критерию стоимости. Пусть имеется Ai , i=1,2,...,m пунктов производства (поставщиков) некоторого однородного продукта и Bj, j=1,2,...,n пунктов его потребления. Для каждого пункта производства Ai известен объем производства аi , а для каждого пункта потребления Bj — объем потребления bj. При этом предполагается, что суммарное производство и суммарное потребление сбалансированы. т. е. Затраты на перевозку единицы продукта от каждого пункта производства Ai до каждого пункта потребления Bj составляют cij. Требуется составить план перевозок, равный производительности поставщиков и полиостью обеспечивающий потребителей, дающий минимум издержек транспортных затрат на перевозку, т. е. Задача определяется следующими условиями: где переменные xij представляют собой объемы перевозок от каждого поставщика A i к каждому потребителю B j .Стоимость с можно рассматривать и как расстояние cij от пункта A i до пункта B j . Забегая вперед скажем, что при целочисленных исходных данных транспортная задача всегда обладает целочисленными решениями-планами. СИМПЛЕКС-МЕТОД-3ч. Основным алгоритмом решения задач линейного программирования является симплекс-метод. Его можно применять в том случае, когда задача программирования задана в специальном, каноническом виде. Каждую задачу линейного программирования с непустой допустимой областью можно привести к такому виду. Уравнения ЗЛП имеют канонический вид, если каждое i-е уравнение содержит переменное x такое, что коэффициент перед ним в этом уравнении равен 1, а во всех других уравнениях равен 0. Если при этом b i 0 для всех i, то говорят о допустимом каноническом виде. Переменные x называются базисными, остальные — свободными. В следующем примере, относящемся к допустимому каноническому виду, мы отметим базисные переменные подчеркиванием: i i 7 Здесь 1 2, 2 5, 3 4 . Если уравнения заданы в канонической форме, то целевая функция легко может быть выражена через свободные переменные. Если целевая функция имеет вид то вычитанием из этого выражения первого уравнения, умноженного на 13 (так как там выделено переменное x 2 , а в целевой функции x 2 имеет коэффициент 13), второго уравнения, умноженного на 3, и, наконец, третьего уравнения, умноженного на 17, получим целевую функцию Qx 52x1 35x 3 109 . Вместе с уравнениями канонического вида и условиями знака она описывает ЗЛП в каноническом виде: имеют канонический вид, если каждое i-е уравнение содержит переменное x такое, что коэффициент перед ним в этом уравнении равен 1, а во всех других уравнениях равен 0. Если при этом b i 0 для всех i, то говорят о допустимом каноническом виде. Переменные x называются базисными, остальные — свободными. В следующем примере, относящемся к допустимому каноническому виду, мы отметим базисные переменные подчеркиванием: i i Здесь 1 2, 2 5, 3 4 . Если уравнения заданы в канонической форме, то целевая функция легко может быть выражена через свободные переменные. Если целевая функция имеет вид то вычитанием из этого выражения первого уравнения, умноженного на 13 (так как там выделено переменное x 2 , а в целевой функции x 2 имеет коэффициент 13), второго уравнения, умноженного на 3, и, наконец, третьего уравнения, умноженного на 17, получим целевую функцию Qx 52x1 35x 3 109 . Вместе с уравнениями канонического вида и условиями знака она описывает ЗЛП в каноническом виде: 8 Значение величины Qmin при нулевых значениях свободных переменных обозначим через Q0 . Здесь Q0 109 . Симплекс-таблица. ЗЛП канонического вида может быть записана в таблице следующего вида. Левый крайний столбец содержит Для примера (6.3) номера i , базисных переменных, верхняя строчка — номера m j свободных переменных. В точке пересечения строки, соответствующей значению i и столбца, соответствующего m j стоит коэффициент a i, . при свободной m j переменной в уравнении i, в котором выделена базисная переменная x . Соответственно справа записаны постоянные члены уравнений, внизу — коэффициенты целевой функции от свободных переменных, а в правом нижнем углу записано значение Q0 . Симплекс-метод при заданной начальной таблице. Так как решение ЗЛП достигается по крайней мере в одной вершине допустимой области, то достаточно рассмотреть значения целевой функции только в вершинах. Данной допустимой симплекс-таблице соответствует одно базисное решение, т. е. одна вершина. Проверка выделяет ту вершину, которую следует считать оптимальной. В других случаях способ ведет или к заключению, что задача неразрешима (т. е. минимальное значение целевой функции в допустимой области равно ), или к новому базисному решению, в котором значение целевой функции не больше, чем в первом. В общем случае после конечного числа шагов достигается вершина, в которой целевая функция имеет оптимальное значение. При наличии вырожденных вершин в очень редких, исключительных случаях может оказаться, что мы i 9 снова и снова будем проходить один и тот же цикл базисных решений, относящихся к одной и той же вырожденной вершине. Этот особый случай будет рассмотрен ниже. Допустимой симплекс-таблице соответствует точка минимума, если все коэффициенты целевой функции неотрицательны: Тогда минимальное значение целевой функции равно Q0 . (Этот критерий становится понятным, если вспомнить, что все переменные в целевой функции могут принимать только неотрицательные значения.) Если все коэффициенты целевой функции положительны, то вершина, соответствующая таблице, является единственной оптимальной точкой. Если критерий не выполнен, т. е. не все коэффициенты целевой функции неотрицательны, то следует перейти от одного допустимого базисного решения к соседнему допустимому, т. е. такому, в котором множества базисных и свободных переменных изменены на один элемент. В невырожденном случае этому геометрически соответствует переход от одной вершины к другой вдоль ребра допустимой области (обе вершины принадлежат одному ребру). Этот процесс называют также симплекс-шагом или заменой базиса. Опишем последовательно его этапы. 1) Выбор разрешающего столбца: среди элементов последней строки таблицы выбирается любой p j 0 , и соответствующий столбец называется разрешающим. В качестве p j рекомендуется выбирать минимальное p j . 2) Выбор разрешающей строки: если для всех элементов a ij 0 разрешающего столбца, то минимума не существует (целевая функция в допустимой области не ограничена снизу). Если это не так, то для всех положительных a ij нужно вычислить отношения bi / a ij . Строка i, для которой отношение минимально, называется разрешающей строкой i*: общий элемент a i j разрешающего столбца и разрешающей строки называется разрешающим элементом. 3) Замена базиса при помощи разрешающего элемента a i j — процесс, производящий в таблице преобразования канонического вида, при котором базисное переменное x i становится свободным и одновременно свободное переменное x j становится базисным. Если w — какое-либо значение в таблице, то через ŵ будем обозначать значение, стоящее в новой таблице на том же самом месте: 10 Отметим, что элементы правого столбца и нижней строки пересчитываются по тому же принципу, что и элементы в центральной части таблицы. То же имеет место и в г) и д). При вычислениях вручную рекомендуется проделать вычисления г) по столбцам для каждого j j Заметим, что «То, что уже стоит в новом столбце после выполнения в) » есть число â i j постоянное при пересчете каждого столбца. Правый столбец таблицы преобразуется аналогично нормальному разрешающему столбцу, остается неизменным также правило преобразования такого столбца, сформулированное в г). Единое для столбца число, уже имеющееся после в), здесь есть b̂i . 11 Всегда должно получаться b̂i 0 и Q̂0 Q0 . Пример 2. ЗЛЛ задана в канонической форме. Запишем соответствующую симплекстаблицу: Выбор разрешающего столбца: имеется только один отрицательный коэффициент в целевой функции (—6). Следовательно, j 3 (разрешающий столбец есть 1,0,0,1,1Т ). 1) Разрешающий столбец содержит положительные элементы a 63 1, a 53 1 . min 6 : 1, 2 : 1 2 b5 a 53 . 2) Выбор разрешающей строки: найдем Следовательно, j 3 . Разрешающий элемент a 53 1 . Он обведен рамкой. 3) Замена базиса: а) В левом столбце новой таблицы на место 5 ставится 3. Наоборот, в верхней строке вместо 3 запишем 5. Остальные индексы остаются на своих местах. б) Место элемента a 53 в новой таблице занимает â 53 1 : a 53 1 . в) В новой таблице место разрешающего столбца (кроме разрешающего элемента) займет столбец: (то, что уже стоит в новом столбце после выполнения б)) (разрешающий столбец, кроме разрешающего элемента), т.е. â83 1 1 1, â 23 1 0 0, â 73 1 0 0, â 63 1 1 1, p̂3 1 6 6 . В новой таблице место разрешающей строки (кроме разрешающего элемента) займет строка: (то, что уже стоит в новой строке после выполнения б)) (разрешающая строка, кроме разрешающего элемента), т.е. â 51 1 2 2, â 54 1 3 3, b̂5 1 2 2 . Таким образом, мы получили следующие элементы новой таблицы: 12 г) В столбец, стоящий под 1 (j = 1), мы должны внести в новой таблице следующие элементы (кроме элемента —2, уже стоящего там после в)): Пересчитав оставшиеся два столбца, получим полную таблицу: Пока критерий минимальности не выполнен, необходимы дальнейшие замены базисов. Они приводят к следующим таблицам: 13 В последней таблице все коэффициенты целевой функции неотрицательны (даже положительны). Следовательно, в точке x1 2, x 2 2, x 3 6, x 4 0, x 5 0, x 6 0, x 7 2, x8 3 целевая функция принимает минимальное значение Q 0 38 38 . (Переменным, индекс которых стоит в верхней строке, в базисном решении приписывается значение 0; это свободные переменные. Каждое из переменных, индекс которых стоит в левом столбце, приравнивается к числу, записанному в правом столбце той же самой строки: это базисные переменные.) Вырожденный случай и его рассмотрение при помощи симплекс-метода. Как было упомянуто выше, применение симплекс-метода может натолкнуться на трудности, если вершина, соответствующая симплекстаблице, вырождена и имеет несколько базисных решений. В этом случае при некотором i в таблице b i 0 . Тогда в качестве разрешающей строки обычно следует выбирать как раз строку, в которой b i 0 ; значение целевой функции при замене базиса не изменяется. Теоретически (в практических примерах чрезвычайно редко!) может случиться, что после нескольких замен базиса мы снова придем к такой же таблице и, следовательно, никогда не достигнем оптимального значения (это явление называется зацикливанием). Если симплекс-метод снова и снова приводит к вырожденным таблицам без изменения при этом целевой функции, он дополняется таким образом, чтобы препятствовать появлению таких циклов. Метод дополнения геометрически может быть истолкован как предварительное внесение малых изменений в правые части условий, посредством чего граничные гиперплоскости допустимой области сдвигаются так, что вырожденных вершин больше не существует. Лексикографический порядок векторов. Вектор x x1 ,, x k T называется лексикографически меньшим, чем вектор y y1 ,, y k (обозначается х≺у), если существует такое j, что x 1 y1 ,, x j1 y j1 ; x j y j . Тогда пишут также у≻х. Дополнение к симплекс-таблице. Каждая правая часть bi , дополняется до вектора b i , b i1 ,, b im T при помощи m других чисел так, чтобы векторы удовлетворяли условию bi1 ,, bim T 0 и были линейно независимы. Это условие выполнено, например, если положить bii 1 и bik 0 при i j . Далее, Q 0 дополняется до вектора T 14 Q0 ,Q1 ,,Qm T произвольными числами (например, нулями). Получаем таблицу Дополнение к симплекс-методу. 2. 2.Частные b i a ij , образованные для всех i таких, что a ij 0 , T b b b объединяются в векторы-частные i , i1 ,, im , a a a ij ij ij минимальный среди них соответствует строке i . 3.б. b̂ik bika ij для всех k. лексикографически З.д. b̂ik bik bi ka ij для всех i i и всех k; Q̂ k Q k b̂i k p j для всех k. Этот расширенный симплекс-метод может применяться в общем случае. ЛИНЕЙНАЯ ТРАНСПОРТНАЯ ЗАДАЧА-3ч. Линейные транспортные задачи составляют особый класс задач линейного программирования. Задача заключается в отыскании такого плана перевозок продукции с m складов к n потребителям, который требовал бы минимальных затрат. Если потребитель j получает единицу продукции (по прямой дороге) со склада i, то возникают издержки p ij . Предполагается, что транспортные расходы пропорциональны перевозимому количеству продукции, т. е. перевозка k единиц продукции вызывает расходы k p ij . Далее, предполагается, что где bi есть количество продукции, находящееся на складе i, и a j — потребность потребителя j. Обозначим через x ij количество продукции, поставляемое со склада i потребителю j. Транспортную задачу мы можем характеризовать транспортной таблицей и таблицей издержек: 15 Допустимый план перевозок будем представлять в виде транспортной таблицы: Сумма элементов строки i должна быть равна bi , а сумма элементов столбца j должна быть равна a ij и все x ij должны быть неотрицательны. Пример 19. Такие задачи целесообразно решать при помощи особого варианта симплекс-метода — так называемого транспортного метода. Если все значения a i и b j в условии транспортной задачи целочисленны, то переменные x ij во всех базисных решениях (а также и в любом оптимальном базисном решении) имеют целочисленные значения. Отыскание начального решения. В транспортной таблице выберем ячейку (i*, j*) и запишем в ней x i j min{ b i , a j } (в случае x i j min{ b i , a j } в таблицу вносится 0, причём следует различать внесение 0 и невнесение какого-либо числа вообще): а) Если b i a j , то остальные ячейки строки i вычеркиваются (все содержимое склада i* поставляется в j*) и a j заменяется на a i b j , а b j - на 0. б) Если b i a j , то остальные ячейки столбца j* вычеркиваются (потребитель 16 j* уже получил всю продукцию) и b j заменяется на b j a i , а a j — на 0. Полученная таблица содержит на одну строку или на один столбец меньше, чем предыдущая. В полученной таблице выбирают новую ячейку и повторяют предыдущие рассуждения до тех пор, пока в таблице не окажется ни одной свободной ячейки. В результате каждой ячейке исходной таблицы можно сопоставить либо зачеркнутую ячейку, либо ячейку, в которую внесено число x ij . Тем самым найдено базисное решение: переменные, соответствующие зачеркнутым ячейкам, называются свободными переменными; остальные называются базисными. В каждой строке и в каждом столбце будет стоять по меньшей мере одно базисное переменное (возможно, со значением 0, что соответствует вырожденному случаю). Для того чтобы найти наиболее экономичное начальное базисное решение, обычно выбирают ячейку (i*,j*), которой соответствуют минимальные транспортные издержки: min p ij p i j . i, j Найдем min p ij 1 p 34 . В ячейку (3, 4) запишем min {20, 10} = 10 и остаток i, j четвертого столбца вычеркнем. Найдем min p ij 2 p 31 . В ячейку (3, 1) j 4 запишем min {10, 20} = 10 и остаток третьей строки вычеркнем. Найдем min p ij 2 p 31 . В ячейку (1, 3) запишем min {15, 10} = 10 и вычеркнем j 4 остаток третьего столбца. Продолжая таким образом дальше, получим таблицу ТРАНСПОРТНЫЙ МЕТОД-2ч. Пусть имеется транспортная таблица, соответствующая начальному решению, x ij x ij для базисных переменных, x ij 0 для свободных переменных (ячейки, соответствующие свободным переменным, остаются пустыми). Далее, нам требуется таблица расходов с заданными p ij . (Ниже мы постоянно будем ссылаться на пример 19). Отыскание симплекс-множителей. Заполним таблицу расходов, оставив ячейки, соответствующие свободным переменным, пустыми. В крайний правый столбец внесем значения неизвестных u1 ,, u m , в нижнюю строку — значения неизвестных v 1 ,, v n . Эти m n неизвестных для всех (i, j), соответствующих базисным переменным, должны удовлетворять линейной системе уравнений u i v j p ij . Для всех базисных решений эта система имеет треугольный вид, ранг ее 17 матрицы равен n m 1 . Следовательно, систему всегда можно решить следующим способом. Полагаем v n 0 . Если значения k неизвестных 1 k n m 1 определены, то в системе всегда имеется уравнение, одно из неизвестных в котором уже найдено, а другое еще нет. Переменные u i и v j , называются симплекс-множителями. Иногда они называются также потенциалами, а транспортный метод - методом потенциалов. Пример 20. v 5 0 u 3 8, так как u 3 v 5 p 35 8, v 4 7 , так как u 3 v4 p34 1, v3 5, так как u 3 v 3 3 , u 2 12 , v2 8 v1 6 u1 11. Симплекс-множители нужны для того, чтобы найти свободную ячейку ( i , j ), которая при замене базиса переходит в базисную (это соответствует отысканию разрешающего столбца в симплекс-методе). После определения симплекс-множителей мы вносим на свободные места в таблице значения p ij p ij u i v j (коэффициенты целевой функции, пересчитанные для свободных переменных). Если все pij 0 , то базисное решение оптимально. В противном случае мы выбираем произвольное p 0 , чаще всего наименьшее. Индексом помечено свободное переменное x αβ , которое должно войти в базис. Соответствующую ячейку транспортной таблицы мы отметим знаком +. Пример 21. 18 Минимальный элемент равен -7 , 2,5 . Кроме ячейки , транспортной таблицы, мы пометим знаками - и + другие занятые числами ячейки таким образом, чтобы в каждой строке и каждом столбце транспортной таблицы число знаков + было равно числу знаков —. Это всегда можно сделать единственным образом, причем в каждой строке и каждом столбце будет содержаться максимум по одному знаку + и по одному знаку —. Затем мы определяем минимум М из всех элементов, помеченных знаком —, и выбираем ячейку (, ), где этот минимум достигается. В нашем примере с М = 5 можно выбрать (, ) = (2, 3); при этом (, ) определяет базисное переменное, которое должно стать свободным, т. е. базисное переменное, соответствующее индексу разрешающей строки симплекс-метода. Переход к новой транспортной таблице (замена базиса) происходит следующим образом: а) В ячейку (, ) новой таблицы записывается число М. б) Ячейка (, ) остается пустой. в) В других ячейках, помеченных знаками — или +, число М вычитается из стоящего в ячейке числа (-) или складывается с ним (+). Результат вносится в соответствующую ячейку новой таблицы. г) Непомеченные числа переносятся в новую таблицу без изменений. Остальные ячейки новой таблицы остаются пустыми. Получается новая транспортная таблица, и повторяется ход предыдущих рассуждений. После конечного числа шагов критерий минимальности будет выполнен. ПРИБЛИЖЕННЫЙ МЕТОД ФОГЕЛЯ-2ч. Для каждого источника (строки) и каждого стока(столбца) вычисляется минимальный штраф за отказ воспользоваться наиболее экономным маршрутом, исходящим из этого источника (заходящим в этот сток). Затем среди вычисленных значений минимального штрафа определяется наибольшее и выбирается соответствующий этому значению источник или сток. Наиболее экономному маршруту, исходящему из выбранного источника (или заходящему в выбранный сток), назначается максимально допустимый поток. Смысл такого назначения заключается в том, что оно позволяет избежать наибольшего из минимальных значений штрафа. После 19 “насыщения” выбранного маршрута необходимо выполнить проверку условий, касающихся предложения и спроса соответственно в начальном и конечном узлах этого маршрута. Источник или сток, для которого соответствующее условие выполнено, исключается, и вычисляются новые значения штрафа. Данная процедура повторяется до тех пор, пока не будут исключены все источники и стоки. Штраф для каждого источника или стока легко вычисляется. Он равен разности между двумя минимальными стоимостями. Если эти стоимости равны между собой, то штраф равен нулю. Кроме того, если на множестве источников и стоков существует несколько максимальных значений минимального штрафа, то можно выбрать произвольный узел, соответствующий одному из этих значений. Задача о назначениях является частным случаем транспортной задачи, соответствующим единичным значениям параметров a i и b j . Поэтому для решения задачи о назначениях можно воспользоваться любым алгоритмом линейного программирования или симплексным алгоритмом для транспортной задачи. Однако метод, описанный в следующем разделe, является более эффективным, поскольку он использует специфику математической постановки данной задачи. ВЕНГЕРСКИЙ МЕТОД-2ч. Рассмотрим задачу о назначениях с матрицей стоимостей [ C [сij ] . Венгерский алгоритм работает следующим образом: из элементов каждой строки и каждого столбца матрицы стоимостей вычитаются их наименьшие элементы, после чего ведется поиск допустимого решения, единичным элементам которого соответствуют нулевые элементы модифицированной матрицы стоимостей. Если такое допустимое решение существует, то оно является оптимальным назначением. В противном случае матрица стоимостей модифицируется еще раз с целью получить в ней большее число нулевых элементов. Алгоритм состоит из следующих трех шагов: (1) редукция строк и столбцов; (2) определение назначения; (3) модификация редуцированной матрицы. Ниже дается краткое описание каждого шага. Шаг 1. Редукция строк и столбцов. Цель данного шага состоит в получении максимально возможного числа нулевых элементов в матрице стоимостей. Для этого можно из всех элементов каждой строки вычесть минимальный элемент соответствующей строки, а из всех элементов каждого столбца вычесть минимальный элемент соответствующего столбца. Затем можно исходную матрицу стоимостей заменить редуцированной матрицей стоимостей и перейти к поиску назначения. Шаг 2. Определение назначений. Если после выполнения процедуры редукции в каждой строке и каждом столбце матрицы стоимостей можно выбрать по одному нулевому элементу, так что соответствующее этим элементам решение будет допустимым, то данное назначение будет оптимальным. Если назначения нулевой стоимости для редуцированной матрицы не существует, то данная матрица подлежит дальнейшей 20 модификации (см. шаг. 3). Шаг 3. Модификация редуцированной матрицы. Если нулевых элементов в матрице стоимостей не достаточно для того, чтобы построить назначение нулевой стоимости, то с помощью следующей простой процедуры можно получить новые нулевые элементы. Определим для редуцированной матрицы стоимостей минимальное множество строк и столбцов, содержащих все нулевые элементы, и найдем минимальный элемент вне данного множества. Если значение этого элемента вычесть из всех остальных элементов матрицы, то на месте нулей будут стоять отрицательные величины и по крайней мере один элемент, не принадлежащий выделенному множеству строк и столбцов, станет равным нулю. Однако теперь назначение нулевой стоимости может не быть оптимальным, поскольку матрица содержит отрицательные элементы. Для того чтобы матрица не содержала отрицательных элементов, прибавим абсолютную величину наименьшего отрицательного элемента ко всем элементам выделенных строк и столбцов. Отметим, что к элементам, расположенным на пересечении выделенных строк и столбцов, данная величина будет прибавляться дважды. Кроме того, как и раньше, все отрицательные элементы будут преобразованы в нулевые или положительные элементы. В результате выполнения данной процедуры новая редуцированная матрица стала содержать больше нулей, расположенных вне строк и столбцов, соответствующих нулевым элементам текущего неоптимального решения. 21 Учебная литература. 1. Экономика энергетики. – Учебник для энерг. спец. вузов//Прузнер С.Л., Златопольский А.Н., Некрасов А.М. – М.: ВШ, 1984 г. 2. Современная экономика. – учебник для вузов//Под ред. Мамедова О.Ю. – Ростов н/Д.: «Феникс», 1998. Методическая литература. 1. Дудов М.Х. Методические указания по дисциплине «Математические задачи электроэнергетики». Справочно-нормативная литература. 1. Применение ЭВМ для проектирования систем электроснабжения.// Щукин Б.Д., Лыков Ю.Ф. – М.: Энергоиздат, 1982 г. Программное обеспечение. 1. Стандартный пакет математических программ MathCAD. 2. Блок подпрограмм по математической статистике и электронные таблицы Microsoft Excel. 22