Решение прямой и двойственной задачи линейного программирования средствами Python. Целевые функции

    Для нахождения максимума целевой функции используйте функцию maximize, формат которой следующий maximize(<функция>, <система ограничений>, <опции>);

При этом условие неотрицательности переменных удобно указать опцией NONNEGATIVE.

> optimum:=maximize(f,syst_ogr,NONNEGATIVE);

    Используйте команду subs, которая позволяет подставить значения переменных x 1 и x 2 в функцию f .

> fmax:=subs(x1=83/17,x2=19/17,f);

    Примените функцию evalf для представления ответа в форме действительного числа с 4 значащими цифрами.

> fmax:=evalf(fmax,4);

Ознакомиться с вариантом решения задачи ЛП без пояснений можно в приложении.

Решение оптимизационных задач в специализированном пакете SimplexWin. Http://www.Simplexwin.Narod.Ru/

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

Задача . Найти значения переменных x 1 и x 2 , при которых

при ограничениях

Порядок выполнения работы :

    Запустите программу SimplexWin и установите требуемый размер матрицы ограничений, выбрав в меню команду Настройки – Размер матрицы (рис. 13).

Рис. 13 . Определение размера матрицы.

    Введите данные (рис. 14). Если задача вводится не в канонической форме, то дополнительные переменные и искусственные базисы (а также соответствующие им коэффициенты целевой функции) добавляются автоматически.

Рис.14 . Ввод данных.

II. Нахождение оптимального плана и оптимального значения целевой функции.


Рис. 15 . Форма Результаты.

    В форме Результаты нажмите кнопку Результат, которая позволяет произвести решение задачи в автоматическом режиме и отобразить на экране последнюю симплексную таблицу и результат (рис. 16).

Рис. 16 . Решение задачи.

Решение оптимизационных задач в Excel

Рассмотрим пример нахождения для следующей задачи линейного программирования.

Задача . Найти значения переменных x 1 и x 2 , при которых

при ограничениях

Порядок выполнения работы :

I. Оформление исходных данных.

    Создайте экранную форму для ввода условий задачи (переменных, целевой функции, ограничений) и введите в нее исходные данные (коэффициенты целевой функции, коэффициенты при переменных в ограничениях, правые части ограничений) (рис. 17).

Рис. 17 . Экранная форма задачи (курсор в ячейке D6).

Замечание : В экранной форме на рис. 17 каждой переменной и каждому коэффициенту задачи поставлена в соответствие конкретная ячейка в Excel. Так, например, переменным задачи соответствуют ячейки B3 (), C3 (),коэффициентам целевой функции соответствуют ячейки B6 (
), C6 (
), правым частям ограничений соответствуют ячейки F10 (
), F11 (
),F12 (
)и т.д.

    Введите зависимости из математической модели в экранную форму, т.е. введите формулу для расчета целевой функции и формулу для расчета значений левых частей ограничений.

Согласно условию задачи значение целевой функции определяется выражением
. Используя обозначения соответствующих ячеек вExcel, формулу для расчета целевой функции можно записать как сумму произведений каждой из ячеек, отведенных для значений переменных задачи (B3, C3), на соответствующие ячейки, отведенные для коэффициентов целевой функции (B6, C6).

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

– поставьте курсор в ячейку D6 ;

– вызовите окно Мастер функций – шаг 1 из 2 , нажав кнопку на стандартной панели инструментов;

– в окне Функция выберите функцию СУММПРОИЗВ ;

– в появившемся окне СУММПРОИЗВ в строку Массив 1 введите выражение B$3:C$3 , а в строку Массив 2 – выражение B6 :С6 ;

– нажмите кнопку OK .

Рис. 18 . Ввод формулы для расчета ЦФ в окне Мастер функций.

После ввода ячеек в строки Массив 1 и Массив 2 в окне СУММПРОИЗВ появятся числовые значения введенных массивов (рис. 18), а в экранной форме появится текущее значение, вычисленное по введенной формуле, то есть 0 (так как в момент ввода формулы значения переменных задачи нулевые) (рис. 19).

Замечание : Символ $ перед номером строки означает, что при копировании этой формулы в другие места листа Excel номер строки 3 не изменится. Символ : означает, что в формуле использованы все ячейки, расположенные между ячейками, указанными слева и справа от двоеточия.

Левые части ограничений задачи представляют собой сумму произведений каждой из ячеек, отведенных для значений переменных задачи (B3, C3), на соответствующую ячейку, отведенную для коэффициентов конкретного ограничения (B10, C10 – 1 ограничение; B11, C11 – 2 ограничение; B12, C12 – 3 ограничение).

Формулы, задающие левые части ограничений задачи, отличаются друг от друга и от формулы в целевой ячейке D6 только номером строки во втором массиве. Этот номер определяется той строкой, в которой ограничение записано в экранной форме. Поэтому для задания зависимостей для левых частей ограничении достаточно скопировать формулу из целевой ячейки в ячейки левых частей ограничений.

Для расчета значений левых частей ограничений выполните следующее:

– поставьте курсор в ячейку D6 и скопируйте в буфер содержимое ячейки (клавишами Ctrl+C);

– поставьте курсор поочередно в поля левой части каждого из ограничений, то есть D 10 ,D 11 , D 12 , и вставляйте в эти поля содержимое буфера (клавишами Ctrl+V) (при этом номер ячеек во втором массиве формулы будет меняться на номер той строки, в которую была произведена вставка из буфера).

После ввода на экране в полях D 10 ,D 11 , D 12 появится 0 (нулевое значение) (рис. 19).

Рис. 19 . Экранная форма задачи после вода

всех необходимых формул.

    Проверьте правильность введения формул.

Для этого:

– произведите поочередно двойное нажатие левой клавиши мыши на ячейки с формулами, при этом на экране рамкой будут выделяться ячейки, используемые в формуле (рис. 20 и рис. 21).

Рис. 20

формулы в целевую ячейку D6.

Рис. 20 . Проверка правильности введения

формулы в ячейку D10 для левой части ограничений.

    Задайте целевую функцию и введите ограничения в окне Поиск решения (рис. 21).

Для этого:

– поставьте курсор в ячейку D6 ;

– вызовите окно Поиск решения , выбрав на панели инструментов Данные – Поиск решения ;

– поставьте курсор в поле Установить целевую ячейку ;

– введите адрес целевой ячейки $D$6 или сделайте одно нажатие левой клавишей мыши на целевую ячейку в экранной форме, что будет равносильно вводу адреса с клавиатуры;

– укажите направление оптимизации целевой функции, щелкнув один раз левой клавишей мыши по селекторной кнопке максимальному значению ;

– в окне Поиск решений в поле Изменяя ячейки введите ячейки со значениями переменных $B$3:$C$3 , выделив их в экранной форме, удерживая левую кнопку мыши;

Рис. 21 . Окно Поиск решения.

– нажмите кнопку Добавить ;

– в соответствии с условием задачи выберите в поле знака необходимый знак, например, для 1 ограничения это знак ;

– в поле Ограничение введите адрес ячейки правой части, рассматриваемого ограничения, например $F$10 ;

– аналогичным образом установите соотношения между правыми и левыми частями других ограничений ($D$ 11$F$1 1 , $D$ 12$F$1 2) ;

– подтвердите ввод всех перечисленных условий нажатием кнопки OK (рис. 22 и рис. 23).

Рис. 22 . Добавления условия.

Замечание : Если при вводе условия задачи возникает необходимость в изменении или удалении внесенных ограничений, то это можно сделать на жав на кнопки Изменить или Удалить .


Целевая функция. Если доход от реализации одного стола равен С 1 рублей, то от реализации столов в объеме х 1 штук месячный доход

составит С 1 х 1 рублей. Аналогично месячный доход от реализации шкафов составит С 2 х 2 рублей. Обозначив общий доход (в руб.) через Z , можно дать следующую математическую формулировку целевой функции: определить (допустимые) значения х 1 , и х 2 , максимизирующие величину общего дохода Z = С 1 х 1 + С 2 х 2 =


2



j=1

C j x j .

Ограничения. При решении рассматриваемой задачи должны быть учтены ограничения на расход ресурсов. Пиломатериал идет на изготовление и столов и шкафов. На один стол идет а 11 (м 3) пиломатериала, тогда на столы в количестве x 1 штук потребуется а 11 x 1 (м 3) пиломатериала. На изготовление шкафов в количестве х 2 штук потребуется а 12 х 2 (м 3) пиломатериала. Всего пиломатериала потребуется а 11 х 1 + а 12 x 2 (м 3). Расход его не должен превышать величины b 1 (м 3). Тогда ограничение на пиломатериал запишем в виде неравенства

На переменные задачи х 1 и х 2 должны быть наложены условия неотрицательности и неделимости, т.е. введем ограничения

х 1 ≥ 0, х 2 ≥ 0,

где х 1 , х 2 - целые числа.

Итак, математическую модель задачи можно записать следующим образом: определить месячные объемы производства столов х 1 и шкафов х 2 , при которых достигается

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

Для определения переменных рассмотренной модели могут использоваться методы линейного программирования. Базовым методом ЛП является симплекс-метод, разработанный Г. Данцигом . Задачу ЛП можно решить и графически. Графическое представление решения задачи поможет понять и идею симплекс-метода. Конкретизируем задачу, представив исходные данные в табл. 3.1 (данные приводятся условные).

Таблица 3.1


Ресурсы

Расход ресурсов на единицу продукции

Запас ресурсов

Стол

Шкаф

Пиломатериалы (м 3)

0,06

0,07

42

Шурупы (кг)

0,04

0,085

34

Краска (кг)

0,035

0,12

42

Цена единицы продукции (руб.)

500

750

-

Запишем модель задачи с приведенными данными:

В дальнейшем ограничение (3.5) учитывать не будем, а решение задачи получим округлением найденных переменных задачи (3.0-3.4).

44 :: 45 :: 46 :: 47 :: Содержание

47 :: 48 :: 49 :: 50 :: 51 :: Содержание

3.2.2. Графический способ решения ЗЛП

Для определения решения ЗЛП с двумя переменными выполним следующие действия.

1. Построим множество допустимых решений Ω задачи. Данное множество Ω образуется в результате пересечения полуплоскостей (ограничений) (3.1-3.4). На рис. 3.2 множество допустимых решений показано в виде пятиугольника. Области, в которых выполняются соответствующие ограничения в виде неравенств, указываются стрелками, направленными в сторону допустимых значений переменных. Полученный многогранник Ω называют симплексом. Отсюда и название метода поиска оптимального решения.

2. Построим вектор-градиент С, составленный из производных целевой функции по переменным задачи, который указывает направление возрастания целевой функции по этим переменным. С = (С 1 , С 2) = (500,750). Начало этого вектора лежит в точке с координатами (0, 0), а конец - в точке (500, 750). Ряд параллельных штриховых линий, перпендикулярных вектору-градиенту, образует множество целевых

Функций при произвольно выбранных значениях Z . При Z = 0 прямая (целевая функция) проходит через точку (0, 0), а целевая функция Z принимает минимальное значение.


Рис. 3 2 Геометрическая интерпретация ЗЛП

3. Переместим прямую, характеризующую доход Z , в направлении вектор-градиента (для задачи max Z ) до тех пор, пока она не сместится в область недопустимых решений. На рис. 3.2 видно, что оптимальному решению соответствует точка X* = (х 1 *, х 2 *). Так как точка X* является точкой пересечения прямых (3.1) и (3.2), значения х 1 * и х 2 * определяются решением системы двух уравнений:

Решение указанной системы уравнений дает результат х 1 * = 517,4 и х 2 * =156,5. Полученное решение означает, что месячный объем производства столов должен составить 517 шт., а шкафов - 156 шт. Доход, полученный в этом случае, составит:

Z = 517 · 500 + 156 · 750 = 375500 рублей

ЗЛП со многими переменными можно решить графически, если в ее канонической записи число неизвестных n и число линейно независимых уравнений m связано соотношением n-m ≤ 2. Запишем каноническую форму ЗЛП, рассмотренную выше. Для этого введем новые переменные x 3 , x 4 и x 5 .

Для данной ЗЛП число переменных n = 5, а число линейно-независимых уравнений m = 3. Эта и другие ЗЛП в канонической форме могут быть решены графически, если n-m ≤ 2.

Выберем любые m неизвестные и выразим каждую из них через оставшиеся (n-m ) переменные. В нашем случае удобно взять переменные x 3 , x 4 и x 5 и выразить их через x 1 и x 2 .

Учитывая неотрицательность всех переменных, в том числе х 3 ≥ 0, х 4 ≥ 0 и х 5 ≥ 0, а также зависимость последних от двух переменных x 1 и х 2 , можно графически показать решение расширенной задачи с проекцией на переменные x 1 и х 2 . Полуплоскость х 3 ≥ 0 (см. рис. 3.2) совпадает с ограничением (3.1), полуплоскость х 4 ≥ 0 - с ограничением (3.2), а полуплоскость х 5 ≥ 0 - с ограничением (3.3). Точка оптимума в координатах x 1 и х 2 образуется в результате пересечения полуплоскостей х 3 и х 4: x 1 * = 517,4; х 2 = 156,5. Соответственно значения переменных х 3 Ä х 4 будут нулевыми: x 3 * =0; х 4 * = 0. Тогда из (3.9) следует, что x 5 * = 42 - 0,035·517,4 - 0,12·156,5 = 5,1. Решением ЗЛП (3.6-3.10) будет вектор X* = (517,4; 156,5; 0; 0; 5,1).

Геометрическое представление ЗЛП отражает следующее:

1) множество допустимых решений Ω выпуклое;

2) оптимальное решение не существует, если множество Ω пустое или неограниченное в направлении перемещения семейства гиперплоскостей уровня цели поиска экстремума;

3) решение находится в одной из угловых точек (вершин) множества допустимых решений Ω, получивших название базисных;

4) для канонической ЗЛП базисные решения характеризуются вектором X - (x 1 , x 2 ,..., х n), в котором значения m переменных отличны от нуля, где m - число линейно независимых уравнений задачи (число базисных переменных угловой точки множества Ω).

Для оптимального решения X* рассмотренного примера базисными переменными стали переменные x 1 , х 2 и х 5 . Оставшиеся переменные (n - m ) называют небазисными или свободными. Их значения в угловой точке равны нулю.

Обратите внимание на то, что любая базисная переменная может быть выражена через небазисные, и базисная переменная в модели (3.6)-(3.10) записывается один раз с коэффициентом единица.

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

47 :: 48 :: 49 :: 50 :: 51 :: Содержание

50 :: 51 :: 52 :: 53 :: 54 :: 55 :: 56 :: 57 :: 58 :: 59 :: 60 :: 61 :: Содержание

3.2.3. Алгебраический (симплексный) метод решения ЗЛП

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

Экстремальное решение достигается не внутри области допустимых решений Ω, а на границе ее (см. рис. 3.2); если быть еще точнее, то в одной из вершин угловых точек многоугольника, образованного в результате пересечения прямых, связанных с определенными ограничениями, либо на отрезке между двумя соседними угловыми точками. Так как экстремум обязательно достигается в одной или двух угловых точках допустимых планов, то нужно просто вычислить значения целевых функций во всех угловых точках (в нашем примере их пять) и

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

К точке оптимума можно подобраться последовательно, переходя от одной угловой точки к соседней, например, каждый раз от исходной (опорной) точки X 0 (х 1 = 0, х 2 = 0) последовательно к той соседней, которая ближе и быстрее приближает к X*. Перебор точек решения по такой схеме позволяет предложенный Р. Данцигом симплекс-метод . Для нашего примера на первом шаге (итерации) от опорной точки X 0 мы перейдем по схеме симплекс-метода к точке X 1 с координатами (700, 0) и на втором шаге перейдем к точке X*. По другому же пути к точке X* можно добраться лишь за три шага. С вычислительной точки зрения симплекс-метод реализуется через так называемые симплекс-таблицы, которые рассчитываются для каждой угловой точки, начиная с опорной. Симплекс-таблицы позволяют определить оптимальность принимаемого решения, значения переменных, оценить ресурсные параметры (ограничения) на предмет их дефицитности, и в случае неоптимального решения, указывают, как перейти к соседней точке (следующей таблице). В силу различных особенностей и постановок задач ЛП симплекс-метод имеет различные модификации: прямой, двойственный, двухэтапный .

Для реализации любого из симплекс-методов необходимо построение начального опорного плана .

Пусть система ограничений такова:

Добавив к левым частям неравенства дополнительные переменные x n+i ≥ 0, i = 1, m , получим каноническую (расширенную) задачу, стратегически эквивалентную исходной, с системой ограничений:

Тогда начальным опорным планом будет вектор

Который удовлетворяет допустимости решения (он является базисным, т.к. число ненулевых элементов равно m , и опорным, т.к. все x j ≥ 0). Пусть система ограничений такова:

Вычтя из левых частей неравенства дополнительные переменные x n+i ≥ 0, i = 1, m , получим расширенную задачу, стратегически эквивалентную исходной, с системой ограничений:

Однако теперь дополнительные переменные входят в левую часть ограничений с коэффициентами, равными минус единице. Поэтому план

не удовлетворяет условиям допустимости решения (он базисный, но не опорный).

Как в первом, так и во втором случае при добавлении дополнительных переменных (они же становятся базисными переменными) в систему ограничений эти же переменные вводятся в целевую функцию с коэффициентами, равными нулю: C n+i ≥ 0, i = 1, m , т.е. в целевой функции при базисных переменных стоят нулевые коэффициенты, а при небазисных - коэффициенты С j , j = 1, n . Пусть целевая функция стремится к минимуму. Тогда значение целевой функции может быть уменьшено, если в базис вводить ту переменную x j , при которой коэффициент С j целевой функции имеет знак минус. И если все коэффициенты в целевой функции имеют знак плюс, то уменьшить ее значение не представляется возможным. Поэтому признаком оптимальности решения ЗЛП служат коэффициенты (оценки) в целевой функции при небазисных переменных.

В зависимости от выполнения условий оптимальности и допустимости применяют ту или иную схему решения ЗЛП .

Методы решения ЗЛП разбиваются на две группы:

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

Точке за конечное число шагов (итераций). К этой группе относятся прямой симплекс-метод, метод потенциалов и другие;

2) методы последовательного сокращения невязок. В основу их заложено движение от исходной условно-оптимальной точки, лежащей вне области допустимых решений, но удовлетворяющей признаку оптимальности решения, к оптимальной и допустимой точке. К этой группе относятся двойственный симплекс-метод, венгерский метод и другие. Все алгоритмы решения ЗЛП опираются на каноническую форму задачи. Поэтому число искомых переменных канонической задачи будет больше, чем в исходной.

При выборе алгоритма решения задачи ЛП исходят из следующих данных. Пусть ЗЛП приведена к каноническому виду, решается на минимум и свободные коэффициенты b i ≥ 0, i = 1, m . Тогда, если в целевой функции задачи имеются отрицательные коэффициенты (условие оптимальности решения задачи не выполняется), а начальный план задачи не имеет отрицательных значений переменных (условие допустимости решения задачи выполняется), то для решения предлагаемой задачи следует воспользоваться алгоритмом прямого симплекс-метода (табл. 3.2). Двойственный симплекс-метод применяется, если условие оптимальности решения задачи выполняется, а допустимости - нет. Двухэтапный симплекс-метод применяется, если условия и оптимальности и допустимости решения задачи не выполняются.

Таблица 3.2

Рассмотрим прямой симплекс-метод решения задач ЛП на следующем примере.

Пример 3.1

Минимизировать функцию Z = -x 1 - х 2 при ограничениях: 0,5х 1 + х 2 ≤ 1;

2х 1 + х 2 ≤ 2;

х 1 , х 2 ≥ 0.

Графическое представление задачи (3.11-3.14) показано на рис. 3.3.


Рис. 3.3. Графическое представление задачи (3.11) - (3.14)

Начальной базисной опорной точкой задачи будет вектор Х 0 = (0; 0; 1; 2). Значение целевой функции в этой точке Z (X 0) = 0.

Перенесем в целевой функции (3.11) переменную Z за знак равенства и данную задачу запишем в виде табл. 3.3, называемой симплекс-таблицей (нулевая итерация).

Таблица 3.3

В литературе описаны и другие формы записи симплекс-таблицы . По симплекс-таблице всегда можно сказать, является ли найденное решение оптимальным. В данном случае решение х 1 = 0; х 2 = 0; х 3 = 1; х 4 = 2 не является наилучшим, так как можно ввести в базис одну из переменных х 1 или х 2 (при этих переменных стоят коэффициенты со знаком минус с 1 = -1 и с 2 = - 1), уменьшив значение целевой функции. Тогда вводя в базис одну из небазисных переменных х 1 или х 2 (увеличив ее значение), следует вывести из базиса переменную х 3 или х 4 (доведя ее значение до нуля). В прямом симплекс-методе рассматриваются последовательно вопросы:




  • переход к новой канонической форме ЗЛП (к следующей итерации симплекс-таблицы).
. Целесообразно включить в базис ту переменную, коэффициент при которой имеет наименьшее значение. Коэффициенты при небазисных переменных в неоптимальном решении имеют отрицательные значения. Пусть это будет переменная x s , для которой C s = min j , с j < 0, j не∈ базису. В нашем примере c 1 = c 2 = -1, поэтому включим в базис любую переменную х 1 или х 2 (пусть х 1). Столбец в симплекс-таблице с переменной x s назовем ведущим столбцом, в нашем случае s = l.

. Если в базис включаем переменную x 1 , то это значит, что увеличиваем ее значение с нуля до каких-то определенных пределов. До каких? Обратимся к рис. 3.3. Крайним значением для переменной х 1 будет единица, при этом переменная (прямая) х 4 в ограничении (3.13) примет значение, равное нулю, то есть из базиса выйдет х 4 , а ее место займет переменная x 1 . Из уравнения (3.12) определим значение х 3 = 1 - 0,5 · 1 = 0,5. Таким образом, на следующей итерации (шаге) допустимым решением будет вектор X 1 = (1; 0; 0,5; 0). Значение целевой функции в этой точке Z (1) = -1.

Не прибегая к графическому представлению задачи, определение предельного значения x l и определение переменной х 4 , которую следует вывести из базиса, можно провести на следующем распределении. Если вывести из базиса переменную х 3 , т.е. должно быть х 3 = 0, то из (3.12) следует x l = b 1 /а 1 s = 1/0,5 = 2. Если вывести из базиса переменную х 4 , т.е. сделать х 4 = 0, то из (3.13) x l = b 2 /а 2 s = 1/1 = 1. Получается, что значение x l = 1 или x l = 2. Но при x l = 2 в уравнении (3.13) переменная х 4 = 1 - 2 - 0,5 · 0 = -1, что противоречит условию допустимости решения (3.14). Поэтому включаем в базис x l с наименьшим значением, которое определено из второго ограничения. В этом ограничении находится исключаемая переменная из базиса х 4 . В общем случае переменная x s , включаемая в базис, может увеличиваться до значения

Пусть максимум достигается в строке r , т.е. x s = b r /a rs , тогда в этой строке базисная переменная обращается в нуль, т.е. выводится из базиса. Строку r называют ведущей строкой , а элемент а rs - ведущим элементом . Если в ведущем столбце не найдутся положительные a is , то это означает, что ЗЛП не имеет области допустимых решений.

Переход к новой канонической форме ЗЛП . В табл. 3.4 показаны переходы от нулевой итерации к последующим методам последовательного исключения вновь вводимой базисной переменной из неведущих строк. Новая строка на последующей итерации с вновь введенной базисной переменной получается путем деления элементов ведущей строки на ведущий элемент, относительно полученной строки далее производится исключение новой базисной переменной из других строк. В табл. 3.4 на итерации 1’ указаны коэффициенты при базисных переменных, под которые осуществляется соответствующий переход. Ведущие элементы в таблице помечены звездочкой.

Расчет коэффициентов на очередной итерации можно производить по правилу четырехугольника .

Эта таблица на итерации 2 соответствует оптимальному решению X* = X 2 = (2/3; 2/3; 0; 0).

Значение целевой функции Z (X*) = -4/3.

Таблица 3.4

Рассмотрим двойственный симплекс-метод решения задачи ЛП на следующем примере.

Пример 3.2

Максимизировать функцию Z = -х 1 - х 2 при ограничениях:

0,5х 1 + х 2 ≤ 1;

2х 1 + х 2 ≥ 2;

х 1 , х 2 ≥ 0.

В канонической форме ЗЛП примет вид

Графическое представление задачи показано на рис. 3.4.


Рис. 3.4. Графическое представление задачи (3.15) - (3.18)

Составим симплекс-таблицу 3.5.

Таблица 3.5

Нулевая строка в табл. 3.5 указывает на то, что признак оптимальности решения задачи выполнен (нет отрицательных коэффициентов).

Однако начальное решение Х 0 = (0; 0; 1; -2) является отрицательным.

Попытаемся решить задачу (в противоположность прямому симплекс-методу) последовательным движением от исходной недопустимой точки Х 0 к X*, рассматривая вопросы:


  • поиск переменной для исключения из базиса;

  • поиск переменной для включения в базис;

  • переход к новой форме ЗЛП (последующей итерации решения).
Поиск переменной для исключения из базиса . Из базиса исключается переменная из ведущей строки r , имеющая наименьшее отрицательное значение. Если все переменные, расположенные в базисе, будут положительными, то вычисления заканчиваются, так как решение

Будет и оптимальным и допустимым. В нашем примере исключаем переменную х 4 = -2.

Поиск переменной для включения в базис . Какую небазисную переменную включить в базис х 1 или х 2 ? В принципе любую можно включить в базис с целью движения в область допустимых решений. Из графического представления задачи (см. рис. 3.4) видно, что при включении в базис переменной х 2 мы попадаем сразу в допустимую и оптимальную точку X*. В литературе показано, что к оптимальному решению можно добраться быстрее, если выбирать для включения в базис переменную x s такую, что для нее отношение C s /|a rs | для всех элементов a rs ведущей строки будет минимальным:

Если все элементы a rj · ≥ 0, то это будет означать, что задача не имеет допустимых решений. В нашем примере минимальное отношение (3.19) достигается для переменной х 1 и равно 1/2. Решим задачу табличным способом (табл. 3.6).

Таблица 3.6

Оптимальное решение: X* = (1; 0; 1/2; 0;); Z (X* ) = -z" = -1.

Предположим, что при решении предыдущего примера (см. табл. 3.6) в базис включили бы не х 1 , а переменную х 2 , то получили бы на итерации 1 следующую табл. 3.7.

Таблица 3.7

Нулевая строка в табл. 3.7 указывает на то, что признак оптимальности решения задачи не выполнен, и промежуточное решение X 1 = (0; 2; -1; 0) является недопустимым. Далее задачу можно решать двухэтапным симплекс-методом, методом больших штрафов и другими . Рассмотрим двухэтапный симплекс-метод .

1. Вводим дополнительно по одной переменной, делая их базисными, в те уравнения, в которых не выполнялись условия допустимости. В нашем случае вводим переменную х 5 в строку (1), прежде изменив знаки на противоположные (табл. 3.8), и столбец под х 5:

3/2 х 1 - х 3 - х 4 + х 5 = 1.

2. Вводим новую (фиктивную) целевую функцию W как сумму вновь вводимых дополнительных переменных, выраженную через небазисные переменные. В нашем случае W = х 5 = 1 - 3/2 x 1 + х 3 + х 4 . Вносим дополнительно строку (3) в табл. 3.8 с фиктивной целевой функцией -W - 3/2 х 1 + х 3 + х 4 = -1.

3. Применяем прямой симплекс-метод для минимизации фиктивной целевой W с пересчетом всех коэффициентов. Первый этап заканчивается, если фиктивная целевая функция W обратится в нуль W = 0, а следовательно, и дополнительные переменные тоже будут с нулевыми значениями. Далее строка с фиктивной целевой функцией и столбцы с дополнительными переменными не рассматриваются. Если в результате минимизации целевой W получим оптимальное значение W , отличное от нуля W ≠ 0, то это будет означать, что исходная ЗЛП не имеет допустимых решений.

Применяем прямой симплекс-метод для оптимизации основной

целевой функции Z . Включаем в базис переменную х 3 вместо переменной х 2 . Делаем пересчет коэффициентов на итерации 3 и получаем оптимальное решение: X* = (1; 0; 1/2; 0;); Z (X*) = -z" = -1.

Таблица 3.8

50 :: 51 :: 52 :: 53 :: 54 :: 55 :: 56 :: 57 :: 58 :: 59 :: 60 :: 61 :: Содержание

61 :: 62 :: 63 :: 64 :: 65 :: 66 :: 67 :: 68 :: 69 :: 70 :: Содержание

3.2.4. Анализ модели задачи линейного программирования

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

Рассмотрим задачу линейного программирования (3.20)-(3.22) на примере задачи использования ресурсов. Если для этой исходной ЗЛП (назовем ее прямой) ввести переменные y i для оценки ресурсных ограничений (3.21) и сделать переход к математической постановке другой задачи (двойственной или обратной) вида (3.23)-(3.25), то решения прямой и двойственной задач будут находиться во взаимной зависимости, выраженной через соответствующие теоремы двойственности .

Очевидно, задача, двойственная двойственной, совпадает с исходной. Поэтому нет разницы, какую принять в качестве прямой, а какую - двойственной. Говорят о паре взаимно двойственных задач.

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

Примеры

Гладкие функции и системы уравнений

\left\{ \begin{matrix} F_1(x_1, x_2, \ldots, x_M) = 0 \\ F_2(x_1, x_2, \ldots, x_M) = 0 \\ \ldots \\ F_N(x_1, x_2, \ldots, x_M) = 0 \end{matrix} \right.

может быть сформулирована как задача минимизации целевой функции

S = \sum_{j=1}^N F_j^2(x_1, x_2, \ldots, x_M) \qquad (1)

Если функции гладкие, то задачу минимизации можно решать градиентными методами .

Для всякой гладкой целевой функции можно приравнять к 0 частные производные по всем переменным. Оптимум целевой функции будет одним из решений такой системы уравнений. В случае функции (1) это будет система уравнений метода наименьших квадратов (МНК). Всякое решение исходной системы является решением системы МНК. Если исходная система несовместна, то всегда имеющая решение система МНК позволяет получить приближённое решение исходной системы. Число уравнений системы МНК совпадает с числом неизвестных, что иногда облегчает и решение совместных исходных систем.

Линейное программирование

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

Комбинаторная оптимизация

Типичным примером комбинаторной целевой функции является целевая функция задачи коммивояжёра . Эта функция равна длине гамильтонова цикла на графе . Она задана на множестве перестановок n-1 вершины графа и определяется матрицей длин рёбер графа. Точное решение подобных задач часто сводится к перебору вариантов.

Напишите отзыв о статье "Целевая функция"

Примечания

См. также

Литература

  • Бурак Я. И., Огирко И. В. Оптимальный нагрев цилиндрической оболочки с зависящими от температуры характеристиками материала // Мат. методы и физ.-мех. поля. - 1977. - Вып. 5. - С.26-30

Отрывок, характеризующий Целевая функция

Бедный муж мой переносит труды и голод в жидовских корчмах; но новости, которые я имею, еще более воодушевляют меня.
Вы слышали, верно, о героическом подвиге Раевского, обнявшего двух сыновей и сказавшего: «Погибну с ними, но не поколеблемся!И действительно, хотя неприятель был вдвое сильнее нас, мы не колебнулись. Мы проводим время, как можем; но на войне, как на войне. Княжна Алина и Sophie сидят со мною целые дни, и мы, несчастные вдовы живых мужей, за корпией делаем прекрасные разговоры; только вас, мой друг, недостает… и т. д.
Преимущественно не понимала княжна Марья всего значения этой войны потому, что старый князь никогда не говорил про нее, не признавал ее и смеялся за обедом над Десалем, говорившим об этой войне. Тон князя был так спокоен и уверен, что княжна Марья, не рассуждая, верила ему.
Весь июль месяц старый князь был чрезвычайно деятелен и даже оживлен. Он заложил еще новый сад и новый корпус, строение для дворовых. Одно, что беспокоило княжну Марью, было то, что он мало спал и, изменив свою привычку спать в кабинете, каждый день менял место своих ночлегов. То он приказывал разбить свою походную кровать в галерее, то он оставался на диване или в вольтеровском кресле в гостиной и дремал не раздеваясь, между тем как не m lle Bourienne, a мальчик Петруша читал ему; то он ночевал в столовой.
Первого августа было получено второе письмо от кня зя Андрея. В первом письме, полученном вскоре после его отъезда, князь Андрей просил с покорностью прощения у своего отца за то, что он позволил себе сказать ему, и просил его возвратить ему свою милость. На это письмо старый князь отвечал ласковым письмом и после этого письма отдалил от себя француженку. Второе письмо князя Андрея, писанное из под Витебска, после того как французы заняли его, состояло из краткого описания всей кампании с планом, нарисованным в письме, и из соображений о дальнейшем ходе кампании. В письме этом князь Андрей представлял отцу неудобства его положения вблизи от театра войны, на самой линии движения войск, и советовал ехать в Москву.
За обедом в этот день на слова Десаля, говорившего о том, что, как слышно, французы уже вступили в Витебск, старый князь вспомнил о письме князя Андрея.
– Получил от князя Андрея нынче, – сказал он княжне Марье, – не читала?
– Нет, mon pere, [батюшка] – испуганно отвечала княжна. Она не могла читать письма, про получение которого она даже и не слышала.
– Он пишет про войну про эту, – сказал князь с той сделавшейся ему привычной, презрительной улыбкой, с которой он говорил всегда про настоящую войну.
– Должно быть, очень интересно, – сказал Десаль. – Князь в состоянии знать…
– Ах, очень интересно! – сказала m llе Bourienne.
– Подите принесите мне, – обратился старый князь к m llе Bourienne. – Вы знаете, на маленьком столе под пресс папье.
M lle Bourienne радостно вскочила.
– Ах нет, – нахмурившись, крикнул он. – Поди ты, Михаил Иваныч.
Михаил Иваныч встал и пошел в кабинет. Но только что он вышел, старый князь, беспокойно оглядывавшийся, бросил салфетку и пошел сам.
– Ничего то не умеют, все перепутают.
Пока он ходил, княжна Марья, Десаль, m lle Bourienne и даже Николушка молча переглядывались. Старый князь вернулся поспешным шагом, сопутствуемый Михаилом Иванычем, с письмом и планом, которые он, не давая никому читать во время обеда, положил подле себя.

Если ограничивающий фактор один (например, дефицитный станок), решение может быть найдено с применением простых формул (см. ссылку в начале статьи). Если же ограничивающих факторов несколько, применяется метод линейного программирования.

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

Скачать заметку в формате , рисунки в формате

Линейное программирование предусматривает построение математической модели рассматриваемой задачи. После чего решение может быть найдено графически (рассмотрено ниже), с использованием Excel (будет рассмотрено отдельно) или специализированных компьютерных программ.

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

Рассмотрим пример построения математической модели линейного программирования

Николай Кузнецов управляет небольшим механическим заводом. В будущем месяце он планирует изготавливать два продукта (А и В), по которым удельная маржинальная прибыль оценивается в 2500 и 3500 руб., соответственно.

Изготовление обоих продуктов требует затрат на машинную обработку, сырье и труд (рис. 1). На изготовление каждой единицы продукта А отводится 3 часа машинной обработки, 16 единиц сырья и 6 единиц труда. Соответствующие требования к единице продукта В составляют 10, 4 и 6. Николай прогнозирует, что в следующем месяце он может предоставить 330 часов машинной обработки, 400 единиц сырья и 240 единиц труда. Технология производственного процесса такова, что не менее 12 единиц продукта В необходимо изготавливать в каждый конкретный месяц.

Рис. 1. Использование и предоставление ресурсов

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

Линейная модель может быть построена в четыре этапа.

Этап 1. Определение переменных

Существует целевая переменная (обозначим её Z), которую необходимо оптимизировать, то есть максимизировать или минимизировать (например, прибыль, выручка или расходы). Николай стремится максимизировать маржинальную прибыль, следовательно, целевая переменная:

Z = суммарная маржинальная прибыль (в рублях), полученная в следующем месяце в результате производства продуктов А и В.

Существует ряд неизвестных искомых переменных (обозначим их х 1 , х 2 , х 3 и пр.), чьи значения необходимо определить для получения оптимальной величины целевой функции, которая, в нашем случае является суммарной маржинальной прибылью. Эта маржинальная прибыль зависит от количества произведенных продуктов А и В. Значения этих величин необходимо рассчитать, и поэтому они представляют собой искомые переменные в модели. Итак, обозначим:

х 1 = количество единиц продукта А, произведенных в следующем месяце.

х 2 = количество единиц продукта В, произведенных в следующем месяце.

Очень важно четко определить все переменные величины; особое внимание уделите единицам измерения и периоду времени, к которому относятся переменные.

Этап. 2. Построение целевой функции

Целевая функция – это линейное уравнение, которое должно быть или максимизировано или минимизировано. Оно содержит целевую переменную, выраженную с помощью искомых переменных, то есть Z выраженную через х 1 , х 2 … в виде линейного уравнения.

В нашем примере каждый изготовленный продукт А приносит 2500 руб. маржинальной прибыли, а при изготовлении х 1 единиц продукта А, маржинальная прибыль составит 2500 * х 1 . Аналогично маржинальная прибыль от изготовления х 2 единиц продукта В составит 3500 * х 2 . Таким образом, суммарная маржинальная прибыль, полученная в следующем месяце за счет производства х 1 единиц продукта А и х 2 единиц продукта В, то есть, целевая переменная Z составит:

Z = 2500 * х 1 + 3500 *х 2

Николай стремится максимизировать этот показатель. Таким образом, целевая функция в нашей модели:

Максимизировать Z = 2500 * х 1 + 3500 *х 2

Этап. 3. Определение ограничений

Ограничения – это система линейных уравнений и/или неравенств, которые ограничивают величины искомых переменных. Они математически отражают доступность ресурсов, технологические факторы, условия маркетинга и иные требования. Ограничения могут быть трех видов: «меньше или равно», «больше или равно», «строго равно».

В нашем примере для производства продуктов А и В необходимо время машинной обработки, сырье и труд, и доступность этих ресурсов ограничена. Объемы производства этих двух продуктов (то есть значения х 1 их 2) будут, таким образом, ограничены тем, что количество ресурсов, необходимых в производственном процессе, не может превышать имеющееся в наличии. Рассмотрим ситуацию со временем машинной обработки. Изготовление каждой единицы продукта А требует трех часов машинной обработки, и если изготовлено х 1 , единиц, то будет потрачено З * х 1 , часов этого ресурса. Изготовление каждой единицы продукта В требует 10 часов и, следовательно, если произведено х 2 продуктов, то потребуется 10 * х 2 часов. Таким образом, общий объем машинного времени, необходимого для производства х 1 единиц продукта А и х 2 единиц продукта В, составляет 3 * х 1 + 10 * х 2 . Это общее значение машинного времени не может превышать 330 часов. Математически это записывается следующим образом:

3 * х 1 + 10 * х 2 ≤ 330

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

16 * х 1 + 4 * х 2 ≤ 400

6 * х 1 + 6 * х 2 ≤ 240

Наконец следует отметить, что существует условие, согласно которому должно быть изготовлено не менее 12 единиц продукта В:

Этап 4. Запись условий неотрицательности

Искомые переменные не могут быть отрицательными числами, что необходимо записать в виде неравенств х 1 ≥ 0 и х 2 ≥ 0. В нашем примере второе условия является избыточным, так как выше было определено, что х 2 не может быть меньше 12.

Полная модель линейного программирования для производственной задачи Николая может быть записана в виде:

Максимизировать: Z = 2500 * х 1 + 3500 *х 2

При условии, что: 3 * х 1 + 10 * х 2 ≤ 330

16 * х 1 + 4 * х 2 ≤ 400

6 * х 1 + 6 * х 2 ≤ 240

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

Этот метод подходит только для задач с двумя искомыми переменными. Модель, построенная выше, будет использована для демонстрации метода.

Оси на графике представляют собой две искомые переменные (рис. 2). Не имеет значения, какую переменную отложить вдоль, какой оси. Важно выбрать масштаб, который в конечном итоге позволит построить наглядную диаграмму. Поскольку обе переменные должны быть неотрицательными, рисуется только I-й квадрант.

Рис. 2. Оси графика линейного программирования

Рассмотрим, например, первое ограничение: 3 * х 1 + 10 * х 2 ≤ 330. Это неравенство описывает область, лежащую ниже прямой: 3 * х 1 + 10 * х 2 = 330. Эта прямая пересекает ось х 1 при значении х 2 = 0, то есть уравнение выглядит так: 3 * х 1 + 10 * 0 = 330, а его решение: х 1 = 330 / 3 = 110

Аналогично вычисляем точки пересечения с осями х 1 и х 2 для всех условий-ограничений:

Область допустимых значений Граница допустимых значений Пересечение с осью х 1 Пересечение с осью х 2
3 * х 1 + 10 * х 2 ≤ 330 3 * х 1 + 10 * х 2 = 330 х 1 = 110; х 2 = 0 х 1 = 0; х 2 = 33
16 * х 1 + 4 * х 2 ≤ 400 16 * х 1 + 4 * х 2 = 400 х 1 = 25; х 2 = 0 х 1 = 0; х 2 = 100
6 * х 1 + 6 * х 2 ≤ 240 6 * х 1 + 6 * х 2 = 240 х 1 = 40; х 2 = 0 х 1 = 0; х 2 = 40
х 2 ≥ 12 х 2 = 12 не пересекает; идет параллельно оси х 1 х 1 = 0; х 2 = 12

Графически первое ограничение отражено на рис. 3.

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

Любая точка в пределах выделенного треугольника или на его границах будет соответствовать этому ограничению. Такие точки называются допустимыми, а точки за пределами треугольника называются недопустимыми.

Аналогично отражаем на графике остальные ограничения (рис. 4). Значения х 1 и х 2 на или внутри заштрихованной области ABCDE будут соответствовать всем ограничениям модели. Такая область называется областью допустимых решений.

Рис. 4. Область допустимых решений для модели в целом

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

Z = 2500 * х 1 + 3500 *х 2

разделим (или умножим) коэффициенты перед х 1 и х 2 на одно и тоже число, так чтобы получившиеся значения попали в диапазон, отражаемый на графике; в нашем случае такой диапазон – от 0 до 120; поэтому коэффициенты можно разделить на 100 (или 50):

Z = 25х 1 + 35х 2

затем присвоим Z значение равное произведению коэффициентов перед х 1 и х 2 (25 * 35 = 875):

875 = 25х 1 + 35х 2

и, наконец, найдем точки пересечения прямой с осями х 1 и х 2:

Нанесем это целевое уравнение на график аналогично ограничениям (рис. 5):

Рис. 5. Нанесение целевой функции (черная пунктирная линия) на область допустимых решений

Значение Z постоянно на всем протяжении линии целевой функции. Чтобы найти значения х 1 и х 2 , которые максимизируют Z, нужно параллельно переносить линию целевой функции к такой точке в границах области допустимых решений, которая расположена на максимальном удалении от исходной линии целевой функции вверх и вправо, то есть к точке С (рис. 6).

Рис. 6. Линия целевой функции достигла максимума в пределах области допустимых решений (в точке С)

Можно сделать вывод, что оптимальное решение будет находиться в одной из крайних точек области принятия решения. В какой именно, будет зависеть от угла наклона целевой функции и от того, какую задачу мы решаем: максимизации или минимизации. Таким образом, не обязательно чертить целевую функцию – все, что необходимо, это определить значения х 1 и х 2 в каждой из крайних точек путем считывания с диаграммы или путем решения соответствующей пары уравнений. Найденные значения х 1 и х 2 затем подставляются в целевую функцию для расчета соответствующей величины Z. Оптимальным решением является то, при котором получена максимальная величина Z при решении задачи максимизации, и минимальная – при решении задачи минимизации.

Определим, например значения х 1 и х 2 в точке С. Заметим, что точка С находится на пересечении линий: 3х 1 + 10х 2 = 330 и 6х 1 + 6х 2 = 240. Решение этой системы уравнений дает: х 1 = 10, х 2 = 30. Результаты расчета для всех вершин области допустимых решений приведены в таблице:

Точка Значение х 1 Значение х 2 Z = 2500х 1 + 3500х 2
А 22 12 97 000
В 20 20 120 000
С 10 30 130 000
D 0 33 115 500
E 0 12 42 000

Таким образом, Николай Кузнецом должен запланировать на следующий месяц производство 10 изделий А и 30 изделий В, что позволит ему получить маржинальную прибыль в размере 130 тыс. руб.

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

  1. Начертите на графике две оси, представляющие собою два параметра решения; нарисуйте только I-й квадрант.
  2. Определите координаты точек пересечения всех граничных условий с осями, подставляя в уравнения граничных условий поочередно значения х 1 = 0 и х 2 = 0.
  3. Нанести линии ограничений модели на график.
  4. Определите на графике область (называемую допустимой областью принятия решения), которая соответствует всем ограничениям. Если такая область отсутствует, значит, модель не имеет решения.
  5. Определите значения искомых переменных в крайних точках области принятия решения, и в каждом случае рассчитайте соответствующее значение целевой переменной Z.
  6. Для задач максимизации решение – точка, в которой Z максимально, для задач минимизации, решение – точка, в которой Z минимально.

Переменные задачи

Построим модель задачи.

Решение

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

1) Что является искомыми величинами задачи?

2) Какова цель решения? Какой параметр задачи служит критерием эффективности (оптимальности) решения, к примеру, прибыль, себестоимость, время и т.д. В каком направлении должно изменяться значение этого параметра (к max или к min) для достижения наилучших результатов?

3) Какие условия в отношении искомых величин и ресурсов задачи должны быть выполнены?

Эти условия устанавливают, как должны соотноситься друг с другом различные параметры задачи, к примеру, количество ресурса, затраченного при производстве, и его запас на складе; количество выпускаемой продукции и емкость склада, где она будет храниться; количество выпускаемой продукции и рыночный спрос на эту продукцию и т.д.

Только после экономического ответа на всœе эти вопросы можно приступать к записи этих ответов в математическом виде, ᴛ.ᴇ. к записи математической модели.

В задаче требуется установить, сколько краски каждого вида нужно производить. По этой причине искомыми величинами, а значит, и переменными задачи являются суточные объёмы производства каждого вида красок:

x1 – суточный объём производства краски 1-го вида, [т краски/сутки];

x2 – суточный объём производства краски 2-го вида, [т краски/сутки].

В условии задачи сформулирована цель – добиться максимального дохода от реализации продукции. Т.е. критерием эффективности служит параметр суточного дохода, который должен стремиться к максимуму. Чтобы рассчитать величину суточного дохода от продажи красок обоих видов, крайне важно знать объёмы производства красок, ᴛ.ᴇ. x1 и x2 т краски в сутки, а также оптовые цены на краски 1-го и 2-го видов – согласно условию, соответственно 3 и 2 тыс. руб. за 1 т краски. Τᴀᴋᴎᴍ ᴏϬᴩᴀᴈᴏᴍ, доход от продажи суточного объёма производства краски 1-го вида равен 3 x 1 тыс. руб. в сутки, а от продажи краски 2-го вида – 2x 2 тыс. руб. в сутки. По этой причине запишем целœевую функцию в виде суммы дохода от продажи красок 1-го и 2-го видов (при допущении независимости объёмов сбыта каждой из красок)

Целевая функция - понятие и виды. Классификация и особенности категории "Целевая функция" 2017, 2018.

  • - Основные понятия. Критерии эффективности. Целевая функция

    ГЛАВА 16. ЭФФЕКТИВНОСТЬ МЕНЕДЖМЕНТА КОНТРОЛЬНЫЕ ВОПРОСЫ 1. Чем вызвана необходимость внешнеэкономической деятельности предприятия? 2. Что благоприятствует внешнеэкономической деятельности предприятия? 3. Что является препятствием для... .


  • - В нашем примере целевая функция имеет вид

    F(X) = 75X1 + 800/X1 + 78X2 + 1600/X2 . Функция выпукла, если F"(x)>0 для любого x. Проверим: ; ; ; . Значит, функция выпукла, поскольку "x>0. Следовательно, выбор оптимального числа поездов на двух участках оказывается задачей выпуклого программирования, которая может быть решена... .


  • - Целевая функция потребления и моделирование поведения потребителей

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



  • Статьи по теме