Симплекс метод в excel пакет

Skip to content

Рассмотрим решение задачи линейного программирования с помощью симплекс-метода в Excel на примере

Целевая функция имеет вид
Z = 35∙x1+25∙x2+10∙x3+20∙x4→ max
Ограничения, записанные в виде системы линейных уравнений

4∙x1+1∙x2+2∙x3+0∙x4 ≤ 120
1∙x1+3∙x2+1∙x3+1∙x4 ≤ 160∙
2∙x1+1∙x2+1∙x3+3∙x4 ≤ 130
x1, x2, x3, x4 ≥ 0 – целые

Теперь данную задачу для решения запишем в ExcelПример задачи линейного программирования в Excel

отображение формул

В ячейке E4 вставим формулу
=A4*A5+B4*B5+C4*C5+D4*D5

Для ячейки E7, E8 и E9 формула будет иметь вид

=$A$4*A7+$B$4*B7+$C$4*C7+$D$4*D7
=$A$4*A8+$B$4*B8+$C$4*C8+$D$4*D8
=$A$4*A9+$B$4*B9+$C$4*C9+$D$4*D9

Также можно воспользоваться формулой:
=СУММПРОИЗВ(A4:D4;A7:D7)

На вкладке данные переходим в Поиск решения

Выбираем ячейку с целевой функцией, ставим галочку максимум, далее выбираем ячейки изменяемых переменных ($A$4:$D$4) и добавляем ограничения при помощи кнопки Добавить. Также ставим галочку переменные без ограничений неотрицательные, выбираем, выбираем метод решения – симплекс-метод решения линейных задач.

симплекс-метода в Excel поиск решения линейной задачи

Ограничения больше меньше или равно Excel Ограничения для целых чисел Excel

Можно также перейти в параметры и настроить точность.

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

Результат поиска решения Excel

В итоги получили решения задачи

Z=2015
x1=19; x2=42; x3=0; x4=15

Результат решения задачи симплекс методом в Excel

21607


В Excel 2007 для включения пакета анализа надо нажать перейти в блок Параметры Excel, нажав кнопку в левом верхнем углу, а затем кнопку «Параметры Excel» внизу окна:



Если данная команда отсутствует в списке, необходимо выполнить команду Сервис / Надстройки

  • В диалоговом окне укажите:
    вид поиска (максимальное значение)
    в поле изменяя ячейки : $B$2:$D$2
    в поле Ограничения добавьте заданные ограничения
    Поле должно иметь следующее содержание:
    $B$2:$D$2>=0
    $G$6 Выполнить
  • Иногда задание звучит следующим образом: расчеты осуществить на ЭВМ, привести распечатку полученных результатов.

    MS Excel позволяет представить результаты поиска решения в форме отчета. Существует три типа таких отчетов:

    1. Результаты (Answer). В отчет включаются исходные и конечные значения целевой и влияющих ячеек, дополнительные сведения об ограничениях.
    2. Устойчивость (Sensitivity). Отчет, содержащий сведения о чувствительности решения к малым изменениям в изменяемых ячейках или в формулах ограничений.
    3. Пределы (Limits). Помимо исходных и конечных значений изменяемых и целевой ячеек в отчет включаются верхние и нижние границы значений, которые могут принимать влияющие ячейки при соблюдении ограничений.

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

    ПРОИЗВОДИТЕЛЬНОСТЬ БАБУШЕК м 2 . /мин
    Баба Аня Белла Петровна Баба Варя Баба Галя Домна Ивановна Евгения Карловна Площадь работ
    Мытье окон 2 1 46
    Мытье полов 1 300
    Протирка столов 2 0.2 1 50
    Чистка дорожек 2 4 100

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

    Для упрощения процесса вычислений при решении ЗЛП симплекс-методом можно использовать Microsoft Excel.

    Найдем решение нашей задачи симплекс-методом с помощью Microsoft Excel.

    Запустите Excel и подготовьте начальную симплекс таблицу по образцу:

    Вычислим значение и запишем результат в ячейку D7. Известно, что значение в начальной симплекс таблице определяется по формуле:

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

    СУММПРОИЗВ(массив1, [массив2], [массив3]. ),

    В ячейку D7 вводится формула, вычисляющая значение :

    Для вычисления оценок используется формула .

    Выделите ячейку D7 и введите формулу:

    Аналогично вычислите значения других оценок.

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

    Скопируйте формулу на диапазон K4 : K6

    Таким образом, разрешающий столбец – столбец и разрешающая строка –

    Создайте вторую симплекс-таблицу (скопируйте предыдущую и удалите все ненужно). Произведите замену в базисе вектора (разрешающий столбец) на вектор (разрешающая строка):

    Выделите диапазон D12:I15 и укажите смените формат числовых данных на дробный

    Вычислите новые элементы разрешающей строки: разделить элементы разрешающей строки на разрешающий элемент.

    В ячейку D14 введите формулу

    Скопируйте формулу на диапазон E14 : I14:

    В ячейку D12 введите формулу: =D14*(-$F$4)+D4 Скопируйте формулу на диапазон E12:I12. В ячейку D13 введите формулу: =D14*(-$F$5)+D5 Скопируйте формулу на диапазон E13:I13. В ячейку D15 введите формулу: =D14*(-$F$5)+D5 Скопируйте формулу на диапазон E15:I15.

    Так как строка оценок содержит отрицательное число, и соответствующий столбец содержит положительные числа, то план можно улучшить.

    Выбираем разрешающую строку и разрешающий столбец:

    Строим новую симплекс-таблицу и заменяем вектор (разрешающая строка) на вектор (разрешающий столбец). Заполняем таблицу аналогично предыдущей итерации:

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

    при плане

    Ответ: при плане

    Не нашли то, что искали? Воспользуйтесь поиском:

    Лучшие изречения: Для студентов недели бывают четные, нечетные и зачетные. 9622 — | 7515 — или читать все.

    91.146.8.87 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.

    Отключите adBlock!
    и обновите страницу (F5)

    очень нужно

    Для решения задач линейного программирования симплекс-методом в среде MS Excel заполняются ячейки исходными данными в режиме чисел и формулами математической модели.

    MS Excel позволяет получить оптимальное решение без ограничения размерности системы неравенств целевой функции.

    Решим задачу о выпускаемых изделиях симплекс-методом применяя надстройку «Поиск решения» в MS Excel.

    1. Заполните таблицу Excel в режиме чисел (рис.1)

    2. Заполните таблицу Excel в режиме формул (рис.2)

    Рис.1 Таблица в режиме чисел

    Рис.1 Таблица в режиме формул

    Здесь: В9:С9 – результат (оптимальное количество изделий каждого вида);

    В6:С6 – коэффициенты целевой функции;

    В10 – значение целевой функции;

    В3:С5 – коэффициенты ограничений;

    D12:D14 – правая часть ограничений;

    B12:B14 – вычисляемые (фактические) значения левой части ограничений.

    Решим задачу с помощью команды Данные/Поиск решения. На экране появляется диалоговое окно Поиск решения.

    В поле Установить целевую функция будет показана ссылка на активную ячейку, т.е. на В10. Причем эта ссылка абсолютная. В секции Равной устанавливаем переключатель Максимальному (минимальному) значению в зависимости от целевой функции. Ограничения устанавливаются с помощью кнопки Добавить, которая вызывает диалоговое окно их ввода Добавление ограничения.

    В поле ввода Ссылка на ячейку: указывается адрес ячейки, содержащей формулу левой части ограничения. Затем выбирается из списка знак соотношения. В поле Ограничение указывается адрес ячейки, содержащей правую часть ограничения. Щёлкаем на кнопку Добавить и повторяем до следующего ограничения. После ввода всех ограничений нажимаем ОК.

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

    Устанавливаем флажок Сделать переменные без ограничений неотрицательными и выбрать Метод решения Поиск решения линеных задач симплекс-методом. Щёлкаем на кнопке Найти решение.

    Excel предъявит окно Результаты поиска решения с сообщением о том, что решение найдено, или о том, что не может найти подходящего решения.

    Если вычисления оказались успешными, Excel предъявит следующее окно итогов. Их можно сохранить или отказаться. Кроме того, можно получить один из трёх видов отчётов (Результаты,Устойчивость,Пределы), позволяющие лучше осознать полученные результаты, в том числе, оценить их достоверность.

    После найденного решения, в ячейках В9:С9 появится оптимальное количество изделий каждого вида.

    При сохранении отчета выберите – Отчет по результатам (рис.3).

    Из отчета видно, что ресурс 1 не используется полностью на 150 кг, а ресурс 2 и 3 используется полностью.

    В результате получен оптимальный план, при котором изделий 1 вида необходимо выпустить в количестве 58 шт., а изделий 2 вида в количестве 42 шт. При этом прибыль от их реализации максимальная и составляет 4660 тыс.руб.

    Рис.3 Отчет по результатам

    1. Со станции формирования ежедневно отправляются пассажирские и скорые поезда, составленные из плацкартных, купейных и мягких вагонов. Число мест в плацкартном вагоне – 54, в купейном – 36, в мягком – 18. В таблице указаны состав поезда каждого типа и количество имеющихся в парке вагонов различного типа. Определить число скорых и пассажирских поездов, которые необходимо формировать ежедневно, чтобы число перевозимых пассажиров было максимальным.

    1 плац куп мягк
    скор 2 6 2
    пасс 5 3 2
    парк 50 60 26
    2 плац куп мягк
    скор 2 6 2
    пасс 5 4 2
    парк 50 66 26
    3 плац куп мягк
    скор 2 6 2
    пасс 5 3 2
    парк 55 60 26
    4 плац куп мягк
    скор 2 6 2
    пасс 5 4 2
    парк 55 66 26
    5 плац куп мягк
    скор 2 7 2
    пасс 5 4 2
    парк 55 77 28
    6 плац куп мягк
    скор 2 7 2
    пасс 5 5 2
    парк 55 84 28
    7 плац куп мягк
    скор 4 6 2
    пасс 5 3 2
    парк 60 60 26
    8 плац куп мягк
    скор 4 6 2
    пасс 5 4 2
    парк 60 66 26
    9 плац куп мягк
    скор 4 6 2
    пасс 5 2 2
    парк 60 72 26
    10 плац куп мягк
    скор 2 7 2
    пасс 5 6 2
    парк 55 91 28
    11 плац куп мягк
    скор 3 7 2
    пасс 5 3 2
    парк 60 70 28
    12 плац куп мягк
    скор 2 6 2
    пасс 5 5 2
    парк 50 72 26
    13 плац куп мягк
    скор 3 7 2
    пасс 5 4 2
    парк 60 70 28
    14 плац куп мягк
    скор 3 7 2
    пасс 5 5 2
    парк 60 84 28
    15 плац куп мягк
    скор 3 6 2
    пасс 5 5 2
    парк 55 72 26
    16 плац куп мягк
    скор 3 7 2
    пасс 5 6 2
    парк 60 91 28
    17 плац куп мягк
    скор 2 8 2
    пасс 5 5 2
    парк 60 96 30
    18 плац куп мягк
    скор 2 8 2
    пасс 5 5 2
    парк 60 96 30
    19 плац куп мягк
    скор 2 8 2
    пасс 5 6 2
    парк 60 104 30
    20 плац куп мягк
    скор 2 8 2
    пасс 5 7 2
    парк 60 112 30
    21 плац куп мягк
    скор 1 8 2
    пасс 5 5 2
    парк 55 96 30
    22 плац куп мягк
    скор 1 8 2
    пасс 5 6 2
    парк 55 104 30
    23 плац куп мягк
    скор 4 7 2
    пасс 5 6 2
    парк 65 91 28
    24 плац куп мягк
    скор 4 7 2
    пасс 5 5 2
    парк 65 84 28
    25 плац куп мягк
    скор 4 7 2
    пасс 5 3 2
    парк 65 70 28
    26 плац куп мягк
    скор 4 7 2
    пасс 5 4 2
    парк 65 77 28
    27 плац куп мягк
    скор 1 7 2
    пасс 5 3 2
    парк 50 70 28
    28 плац куп мягк
    скор 1 7 2
    пасс 5 4 2
    парк 50 77 28
    30 плац куп мягк
    скор 1 7 2
    пасс 5 6 2
    парк 50 91 28
    29 плац куп мягк
    скор 1 7 2
    пасс 5 5 2
    парк 50 84 28

    Решение транспортных задач

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

    b1 b2 bk bg
    a1 [c11 x11 [c12 x12 [c1k x1k [c1g x1g
    a2 [c21 x21 [c22 X22 [c2k x2k [c2g x2g
    ai [ci2 xi2 [ci2 xi2 [cik xik [cig xig
    ap [cp2 xp2 [cp2 xp2 [cpk xpk [cpg xpg

    Если закрытая модель транспортной задачи

    Переменные должны удовлетворять условиям

    Суммарные затраты на перевозки

    Решение такой задачи разбивается на два этапа:

    1. Определение опорного (базисного) решения;

    2. Построение последовательных итераций, т.е. приближение к оптимальному решению.

    Для каждого из этих этапов существует несколько методов.

    Для построения опорного решения чаще всего используют метод «северо-западного угла» и метод минимальных тарифов.

    Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого.

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

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

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

    В Excel 2007 для включения пакета анализа надо нажать перейти в блок Параметры Excel, нажав кнопку в левом верхнем углу, а затем кнопку «Параметры Excel» внизу окна:


    Для того чтобы решить задачу ЛП в табличном процессоре Microsoft Excel , необходимо выполнить следующие действия:
    1. Ввести условие задачи:
    a) создать экранную форму для ввода условия задачи:
    · переменных,
    · целевой функции (ЦФ),
    · ограничений,
    · граничных условий;
    b) ввести исходные данные в экранную форму:
    · коэффициенты ЦФ,
    · коэффициенты при переменных в ограничениях,
    · правые части ограничений;
    c) ввести зависимости из математической модели в экранную форму:
    · формулу для расчета ЦФ,
    · формулы для расчета значений левых частей ограничений;
    d) задать ЦФ (в окне «Поиск решения» ):
    · целевую ячейку,
    · направление оптимизации ЦФ;
    e) ввести ограничения и граничные условия (в окне «Поиск решения» ):
    · ячейки со значениями переменных,
    · граничные условия для допустимых значений переменных,
    · соотношения между правыми и левыми частями ограничений.
    2. Решить задачу:
    a) установить параметры решения задачи (в окне «Поиск решения» );
    b) запустить задачу на решение (в окне «Поиск решения» );
    c) выбрать формат вывода решения (в окне «Результаты поиска решения» ).

    Рассмотрим подробно использование MS Excel на примере решения следующей задачи.

    Фабрика «GRM pic» выпускает два вида каш для завтрака — «Crunchy» и «Chewy». Используемые для производства обоих продуктов ингредиенты в основ­ном одинаковы и, как правило, не являются дефицитными. Основным ограничением, накладываемым на объем выпуска, является наличие фонда рабочего времени в каждом из трех цехов фабрики.

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

    Цех Необходимый фонд рабочего времени
    чел.-ч/т
    Общий фонд рабочего времени
    чел.-ч. в месяц
    «Crunchy» «Chewy»
    А. Производство 10 4 1000
    В. Добавка приправ 3 2 360
    С. Упаковка 2 5 600

    Доход от производства 1 т «Crunchy» составляет 150 ф. ст., а от производства «Chewy» — 75 ф, ст. На настоящий момент нет никаких ограничений на возможные объемы продаж. Имеется возможность продать всю произведенную продукцию.

    а) Сформулировать модель линейного программирования, максимизи­рующую общий доход фабрики за месяц.

    б) Решить ее c помощью MS Excel.

    Ввод исходных данных
    Создание экранной формы и ввод исходных данных

    Экранная форма для решения в MS Excel представлена на рисунке 1.

    В экранной форме на рисунке 1 каждой переменной и каждому коэффициенту задачи поставлена в соответствие конкретная ячейка на листе Excel. Имя ячейки состоит из буквы, обозначающей столбец, и цифры, обозначающей строку, на пересечении которых находится объект задачи ЛП. Так, например, переменным задачи 1 соответствуют ячейки B4 (x1), C4 (x2), коэффициентам ЦФ соответствуют ячейки B6 (c1=150), C6 (c2=75), правым частям ограничений соответствуют ячейки D18 (b1=1000), D19 (b2=360), D20 (b3=600) и т.д.

    Ввод зависимостей из формальной постановки задачи в экранную форму

    Для ввода зависимостей определяющих выражение для целевой функции и ограничений используется функция MS Excel СУММПРОИЗВ , которая вычисляет сумму попарных произведений двух или более массивов.

    Одним из самых простых способов определения функций в MS Excel является использование режима «Вставка функций» , который можно вызвать из меню «Вставка» или при нажатии кнопки fx (рисунок 2) на стандартной панели инструментов.

    Рисунок 2

    Так, например, выражение для целевой функции из задачи 1 определяется следующим образом:
    · курсор в поле D6;
    · нажав кнопку fx , вызовите окно «Мастер функций — шаг 1 из 2»;
    · выберите в окне «Категория» категорию «Математические»;
    · в окне «Функция» выберите функцию СУММПРОИЗВ (рис. 3);

    Рисунок 3
    · в появившемся окне «СУММПРОИЗВ» в строку «Массив 1» введите выражение B$4:C$4 , а в строку «Массив 2» — выражение B6:C6 (рис. 4);

    Левые части ограничений задачи (1) представляют собой сумму произведений каждой из ячеек, отведенных для значений переменных задачи ( B3, C3 ), на соответствующую ячейку, отведенную для коэффициентов конкретного ограничения ( B13, C13 — 1-е ограничение; B14, С14 — 2-е ограничение и B15, С15 — 3-е ограничение). Формулы, соответствующие левым частям ограничений, представлены в табл.1.
    Таблица 1.

    Формулы, описывающие ограничения модели (1)

    Левая часть ограничения Формула Excel
    10x1+4x2 или B3×B13+C3×C13 =СУММПРОИЗВ(B4:C4;B13:C13))
    3x1+2x2 или B3×B14+C3×C14 =СУММПРОИЗВ(B4:C4;B14:C14))
    2x1+5x2 или B3×B15+C3×C15 =СУММПРОИЗВ(B4:C4;B15:C15)

    Дальнейшие действия производятся в окне «Поиск решения» , которое вызывается из меню «Сервис» (рис.5):

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

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

    · введите направление оптимизации ЦФ, щелкнув один раз левой клавишей мыши по селекторной кнопке «максимальному значению».

    Ввод ограничений и граничных условий
    Задание ячеек переменных

    В окно «Поиск решения» в поле «Изменяя ячейки» впишите адреса $B$4:$С$4 . Необходимые адреса можно вносить в поле «Изменяя ячейки» и автоматически путем выделения мышью соответствующих ячеек переменных непосредственно в экранной форме.
    Задание граничных условий для допустимых значений переменных

    В нашем случае на значения переменных накладывается только граничное условие неотрицательности, то есть их нижняя граница должна быть равна нулю (см. рис. 1).
    · Нажмите кнопку «Добавить» , после чего появится окно «Добавление ограничения» (рис.6).
    · В поле «Ссылка на ячейку» введите адреса ячеек переменных $B$4:$С$4 . Это можно сделать как с клавиатуры, так и путем выделения мышью всех ячеек переменных непосредственно в экранной форме.
    · В поле знака откройте список предлагаемых знаков и выберите ≥ .
    · В поле «Ограничение» введите 0.

    Рис.6 — Добавление условия неотрицательности переменных задачи (1)

    Задание знаков ограничений ≤ , ≥ , = .
    · Нажмите кнопку «Добавить» в окне «Добавление ограничения» .
    · В поле «Ссылка на ячейку» введите адрес ячейки левой части конкретного ограничения, например $B$18 . Это можно сделать как с клавиатуры, так и путем выделения мышью нужной ячейки непосредственно в экранной форме.
    · В соответствии с условием задачи (1) выбрать в поле знака необходимый знак, например, ≤ .
    · В поле «Ограничение» введите адрес ячейки правой части рассматриваемого ограничения, например $D$18 .
    · Аналогично введите ограничения: $B$19 , $B$20 .
    · Подтвердите ввод всех перечисленных выше условий нажатием кнопки OK .

    Окно «Поиск решения» после ввода всех необходимых данных задачи (1) представлено на рис. 5.
    Если при вводе условия задачи возникает необходимость в изменении или удалении внесенных ограничений или граничных условий, то это делают, нажав кнопки «Изменить» или «Удалить» (см. рис. 5).

    Решение задачи
    Установка параметров решения задачи

    Задача запускается на решение в окне «Поиск решения» . Но предварительно для установления конкретных параметров решения задач оптимизации определенного класса необходимо нажать кнопку «Параметры» и заполнить некоторые поля окна «Параметры поиска решения» (рис. 7).

    Рис. 7 — Параметры поиска решения, подходящие для большинства задач ЛП

    Параметр «Максимальное время» служит для назначения времени (в секундах), выделяемого на решение задачи. В поле можно ввести время, не превышающее 32 767 секунд (более 9 часов).
    Параметр «Предельное число итераций» служит для управления временем решения задачи путем ограничения числа промежуточных вычислений. В поле можно ввести количество итераций, не превышающее 32 767.
    Параметр «Относительная погрешность» служит для задания точности, с которой определяется соответствие ячейки целевому значению или приближение к указанным границам. Поле должно содержать число из интервала от 0 до 1. Чем меньше количество десятичных знаков во введенном числе, тем ниже точность. Высокая точность увеличит время, которое требуется для того, чтобы сошелся процесс оптимизации.
    Параметр «Допустимое отклонение» служит для задания допуска на отклонение от оптимального решения в целочисленных задачах. При указании большего допуска поиск решения заканчивается быстрее.
    Параметр «Сходимость» применяется только при решении нелинейных задач.Установка флажка «Линейная модель» обеспечивает ускорение поиска решения линейной задачи за счет применение симплекс-метода.
    Подтвердите установленные параметры нажатием кнопки «OK» .

    Запуск задачи на решение
    Запуск задачи на решение производится из окна «Поиск решения» путем нажатия кнопки «Выполнить» .

    После запуска на решение задачи ЛП на экране появляется окно «Результаты поиска решения» с сообщением об успешном решении задачи, представленном на рис. 8.

    Рис. 8 -. Сообщение об успешном решении задачи

    Появление иного сообщения свидетельствует не о характере оптимального решения задачи, а о том, что при вводе условий задачи в MS Excel были допущены ошибки, не позволяющие MS Excel найти оптимальное решение, которое в действительности существует.
    Если при заполнении полей окна «Поиск решения» были допущены ошибки, не позволяющие MS Excel применить симплекс-метод для решения задачи или довести ее решение до конца, то после запуска задачи на решение на экран будет выдано соответствующее сообщение с указанием причины, по которой решение не найдено. Иногда слишком малое значение параметра «Относительная погрешность» не позволяет найти оптимальное решение. Для исправления этой ситуации увеличивайте погрешность поразрядно, например от 0,000001 до 0,00001 и т.д.
    В окне «Результаты поиска решения» представлены названия трех типов отчетов: «Результаты», «Устойчивость», «Пределы» . Они необходимы при анализе полученного решения на чувствительность. Для получения же ответа (значений переменных, ЦФ и левых частей ограничений) прямо в экранной форме просто нажмите кнопку «OK» . После этого в экранной форме появляется оптимальное решение задачи (рис. 9).

    Источник

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

    Рассмотрим решение задачи линейного программирования с помощью симплекс-метода в Excel на примере

    Целевая функция имеет вид
    Z = 35∙x1+25∙x2+10∙x3+20∙x4→ max
    Ограничения, записанные в виде системы линейных уравнений

    4∙x1+1∙x2+2∙x3+0∙x4 ≤ 120
    1∙x1+3∙x2+1∙x3+1∙x4 ≤ 160∙
    2∙x1+1∙x2+1∙x3+3∙x4 ≤ 130
    x1, x2, x3, x4 ≥ 0 – целые

    Теперь данную задачу для решения запишем в Excel

    В ячейке E4 вставим формулу
    =A4*A5+B4*B5+C4*C5+D4*D5

    Для ячейки E7, E8 и E9 формула будет иметь вид

    =$A$4*A7+$B$4*B7+$C$4*C7+$D$4*D7
    =$A$4*A8+$B$4*B8+$C$4*C8+$D$4*D8
    =$A$4*A9+$B$4*B9+$C$4*C9+$D$4*D9

    Также можно воспользоваться формулой:
    =СУММПРОИЗВ(A4:D4;A7:D7)

    На вкладке данные переходим в Поиск решения

    Выбираем ячейку с целевой функцией, ставим галочку максимум, далее выбираем ячейки изменяемых переменных ($A$4:$D$4) и добавляем ограничения при помощи кнопки Добавить. Также ставим галочку переменные без ограничений неотрицательные, выбираем, выбираем метод решения – симплекс-метод решения линейных задач.

    Можно также перейти в параметры и настроить точность.


    Итак, нажимаем Найти решение, появляется окно результаты поиска решений, выбираем сохранить найденное решение.

    В итоги получили решения задачи

    Z=2015
    x1=19; x2=42; x3=0; x4=15

    Источник

    Алгоритм Симплекс-метода:

    1.
    Преобразовываем неравенства в равенства

    2.
    Находим начальное допустимое базисное
    решение

    3.
    На основе условия оптимальности
    определяется вводимая переменная. Если
    вводимых переменных нет, то процесс
    закончен.

    4.
    На основе условия допустимости выбираем
    исключаемая переменная

    5.
    Вычисляем элементы новой ведущей строки

    новая
    ведущая строка = текущая строка/ведущий
    элемент

    6.
    Вычисляем элементы остальных строк,
    включая z-строку

    новая
    строка = текущая строка – ее коэффициенты
    в ведущем столбце * новую ведущую строку

    Переходим
    к шагу 3.

    Для
    удобства записи итерационного процесса
    все значения записываем в Симплекс-таблицу.

    2. Пример решения задачи лп с использованием пакета ms excel

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

    Для
    нахождения решения в подобных моделях,
    можно использовать средство MS
    EXCEL
    – ПОИСК РЕШЕНИЯ.

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

    2.1. Постановка задачи

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

    станки

    Время
    обработки деталей (час)

    Время
    работы станка за цикл производства
    (час)

    А

    Б

    I

    1

    2

    16

    II

    1

    1

    10

    III

    3

    1

    24

    Прибыль
    на одну деталь (тыс. р)

    4

    2

    2.2. Построение математической модели

    Обозначим
    через х1
    и х2
    количество единиц деталей видов А и Б,
    планируемое к выпуску. Тогда время
    обработки х1
    деталей вида А на первом станке составляет
    1* х1;
    х2
    деталей вида Б соответственно 2*х2.
    Суммарное время работы станка I
    для изготовления планируемого количества
    деталей равно х1
    +2*х2,
    оно ограничено 16 часами работы этого
    станка в течение одного цикла производства.
    Поэтому должно выполняться неравенство:

    х1
    +2*х2<=16;

    Аналогично
    для станков II
    и III
    получаем неравенства соответственно:

    х1
    + х2<=10;

    3*х1
    + х2<=24;

    Кроме
    того, по смыслу определения веденных
    величин х1
    и х2
    ,
    должны выполняться условия: х1>=0;
    х2>=0;

    Таким
    образом, получаем систему неравенств,
    называемую системой ограничений задачи:

    Любое
    решение (х1;
    х2)
    системы ограничений называется планом
    выпуска продукции или допустимым планом
    задачи.

    Прибыль
    от реализации х1
    единиц
    деталей вида А равна 4.х1,

    а прибыль от реализации х2
    единиц
    деталей вида Б равна 2х2.
    Суммарная
    прибыль от реализации продукции,
    выпущенной согласно плану (х1;
    х2)
    равна:

    F1;
    х
    2)=4х1+2х2
    (тыс.
    руб).

    Линейная
    функция F1;
    х
    2)
    называется
    целевой функцией задачи.

    По
    условию задачи требуется найти такой
    план (х1;
    х2)
    при котором прибыль была бы максимальной.

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

    F1;
    х
    2)=4х1+2х2max

    Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

    • #
    • #
    • #
    • #
    • #
    • #
    • #
    • #
    • #
    • #
    • #

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

    Содержание

    • Как включить функцию “Поиск решения”
    • Подготовительный этап
    • Применение функции и ее настройка
    • Заключение

    Как включить функцию “Поиск решения”

    Несмотря на свою эффективность, функция “Поиск решения” не находится в первых рядах панели инструментов или контекстного меню. Многие пользователи, работающие в Excel годами, даже не подозревают о ее существовании. Дело в том, что по умолчанию она вообще отключена и для ее добавления на ленту нужно проделать следующие шаги:

    1. Открываем меню “Файл”, кликнув по соответствующему названию.Как включить функцию
    2. Кликаем по разделу “Параметры”, который находится внизу вертикального перечня с левой стороны.Как включить функцию
    3. Далее щелкаем по подразделу “Надстройки”. Здесь отображаются все надстройки программы, а внизу будет надпись “Управление”. Справа от нее представлено выпадающее меню, в котором должны быть выбраны “Надстройки Excel”, обычно уже установленные по умолчанию. Нажимаем кнопку “Перейти”.Как включить функцию
    4. На экране появится новое вспомогательное окно “Надстройки”. Устанавливаем флажок напротив опции “Поиск решения” и нажимаем ОК.Как включить функцию
    5. Все готово. Требуемая функция появится на ленте в правой части вкладки “Данные”.Как включить функцию

    Подготовительный этап

    Добавить функцию на ленту программы – половина дела. Нужно еще понять принцип ее работы.

    Итак, у нас есть данные про продаже товаров, представленные в табличном виде.

    Подготовительный этап перед использованием фукнции

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

    Подготовительный этап перед использованием фукнции

    Наша задача – вычислить скидку, на которую будут умножены все суммы по продажам всех наименований. Она и будет найдена с помощью функции “Поиск решения”, а ячейка с этой скидкой будет называется искомой.

    Данные ячейки (искомая и целевая) связываем вместе формулой, которую пишем в целевой ячейке следующим образом: =D13*$G$2, где ячейка D13 содержит итоговую сумму по продажам всех товаров, а ячейка $G$2 – абсолютные (неизменные) координаты искомой ячейки.

    Подготовительный этап перед использованием фукнции

    Применение функции и ее настройка

    Формула готова. Теперь нужно применить саму функцию.

    1. Переключаемся во вкладку “Данные” и нажимаем кнопку “Поиск решения”.Применение функции
    2. Откроются “Параметры”, где необходимо задать нужные настройки. В поле “Оптимизировать целевую функцию:” указываем адрес целевой ячейки, где планируется вывести сумму по всем скидкам. Можно прописать координаты вручную, либо выбрать из таблицы, для чего сначала кликаем по области ввода, затем – по нужной ячейке.Применение функции
    3. Переходим к настройке других параметров. В пункте “До:” можно задать максимальную границу, минимальную границу или же точное число. Исходя из поставленной задачи ставим отметку рядом с опцией “Значение” и набираем “4500000” – сумма скидок по всем наименованиям.Применение функции
    4. Следующее для заполнения поле – “Изменяя значения переменных:”. В него нужно внести координаты искомой ячейки, содержащей определенное значение. Это значение и есть та самая скидка, которую мы пытаемся вычислить. Также, как и с выбором целевой ячейки, координаты можно написать вручную, либо кликнуть по нужной ячейке в самой таблице.Применение функции
    5. Теперь нужно отредактировать раздел “В соответствии с ограничениями:”, в котором задаем ограничения используемых данных. Например, можно исключить десятичные дроби или, скажем, отрицательные числа. Это делается через кнопку “Добавить”. Применение функции
    6. Откроется вспомогательно окно, позволяющее добавить ограничения во время вычислений. В первом поле указываем координаты определенной ячейки или области ячеек, для которых это условие должно действовать. Согласно нашей задаче, указываем координаты искомой ячейки, в которой будет выводиться значение скидки. Следующий шаг – определить знак сравнения. Устанавливаем “больше или равно”, чтобы итоговое число не могло быть отрицательным. “Ограничение”, которое устанавливается в третьем поле, в этом случае будет равно цифре 0, поскольку именно относительно этого значения задается условие.Применение функции Можно установить еще одно ограничение с помощью кнопки “Добавить”. Дальнейшие действия по его настройке будут аналогичными. По готовности щелкаем OK.
    7. После выполнения описанных выше действий в самом большом поле окна появится установленное только что ограничение. Список может быть довольно большим и зависит от сложности предполагаемых расчетов, но в данном случае будет достаточно и одного условия.Применение функции Под этим полем также есть опция, позволяющая делать все остальные переменные, не затрагиваемые ограничениями, неотрицательными. Однако, будьте внимательны и проследите за тем, чтобы между этим параметром и поставленными ограничениями не было противоречия, иначе при расчете в программе может возникнуть конфликт.
    8. Также можно задать немалое количество дополнительных настроек. Чуть ниже справа есть кнопка “Параметры”, позволяющая это сделать. Нажимаем на нее и открываем новое окно.Применение функции
    9. В этих настройках у нас есть возможность установить “Точность ограничения” и “Пределы решения”. В нашем случае задавать данные параметры нет необходимости, поэтому после ознакомления с представленным окном, его можно закрыть, нажав OK.Применение функции
    10. Итак, все настройки выполнены и параметры установлены. Пора запускать функцию – для этого нажимаем кнопку “Найти решение”.Применение функции
    11. После этого программа сделает все необходимые расчеты и выдаст результаты в нужных ячейках. При этом сразу же откроется окно “Результаты поиска решения”, где можно сохранить/отменить результаты или настроить параметры поиска заново. Если результаты нас устраивают, оставляем отметку напротив опции “Сохранить найденное решение” и нажимаем ОК. При этом, если мы предварительно установим галочку слева от надписи “Вернуться в диалоговое окно параметров поиска решения”, после того, как мы щелкнем OK, мы обратно переключимся к настройке функции поиска решения.Применение функции
    12. Вполне вероятно, что расчеты могут показаться неправильными, либо возникнет желание немного изменить исходные данные и получить другой результат. В этом случае нужно снова открыть окно с параметрами поиска решения и внимательно посмотреть поля с введенными данными.
    13. Если с данными все нормально, можно попробовать задействовать другой метод решения. Для этого щелкаем по текущему варианту и из раскрывшегося перечня выбираем способ, который нам кажется наиболее подходящим:
      • Первый – ищет решение методом обобщенного приведенного градиента (ОПГ) для нелинейных задач. Стандартно выбран именно этот вариант, но можно попробовать и другие.
      • Второй – пытается отыскать решение для линейных задач, используя симплекс-метод.
      • Третий – для выполнения поставленной задачи использует эволюционный поиск.
      • В том случае, если ни один из методов не принес удовлетворительных результатов, стоит проверить данные в таблице и параметрах еще раз, поскольку именно это является самой частой ошибкой в подобного рода задачах.Применение функции
    14. Теперь, когда мы получили требуемую скидку, осталось ее применить, чтобы рассчитать суммы скидок по всем наименованиям. Для этого отмечаем первую ячейку столбца “Сумма скидки”, пишем в ней формулу “=D2*$G$2” и нажимаем Enter. Знаки доллара ставятся для того, чтобы при растягивании/копировании формулы на другие строки, ячейка G2 со скидкой оставалась неизменной в расчетах.Применение функции
    15. Мы получили сумму скидки для первого наименования. Теперь наводим курсор на нижний правый угол ячейки с результатом, как только он поменяет форму на крестик, зажав левую кнопку мыши растягиваем формулу на все строки, по которым хотим посчитать аналогичную сумму.Применение функции
    16. Теперь наша таблица полностью готова в соответствии с поставленной задачей.Применение функции

    Заключение

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

    Понравилась статья? Поделить с друзьями:
  • Символы для word 2016
  • Символьный тип данных объявляется служебным словом char string byte word
  • Символьный тип данных excel
  • Символьная строка в excel
  • Символы цифрами в excel