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

Конспект урока «Решение задач оптимизации в MS Excel» по информатике

Нестеренко Олеся Викторовна

Учитель математики и информатики

МАОУ СОШ №45 г. Калининграда


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

Задача 2.4. Решить симплексным методом задачу о составлении рациона питания животных, условия которой приведены в задаче 1.2.


Задача 1.2. Рацион для питания животных на ферме состоит из двух видов кормов I и II. Один килограмм корма I стоит 80 ден. ед. и содержит: 1 ед. жиров, 3 ед. белков, 1 ед. углеводов, 2 ед. нитратов. Один килограмм корма II стоит 10 ден. ед. и содержит 3 ед. жиров, 1 ед. белков, 8 ед. углеводов, 4 ед. нитратов.

Составить наиболее дешевый рацион питания, обеспечивающий жиров не менее 6 ед., белков не менее 9 ед., углеводов не менее 8 ед., нитратов не более 16 ед.



Решение:

Представим данные, содержащиеся в условии задачи, в табличном виде.


Питательное вещество

Число единиц питательных веществ на 1 кг корма

Необходимый минимум питательных веществ

I

II

Белки

3

1

9

Жиры

1

3

6

Углеводы

1

8

8

Нитраты

2

4

16 (max)

Цена 1 кг корма, р

80

10



Составим экономико-математическую модель задачи. Обозначим x1, x2 − количество кормов видов I и II, входящих в рацион питания. Тогда общая стоимость рациона (целевая функция) запишется в виде Z = 80 x1 + 10 x2 .

C учетом того, что количество единиц питательных веществ, входящих в

рацион кормления, не должно быть меньше (больше) указанного минимума

(максимума), ограничения запишутся в виде следующих неравенств:

3 x1 +x 2 ≥ 9 − для белков,

x1 + 3 x 2 ≥ 6 − для жиров,

x1 + 8 x 2 ≥ 8 − для углеводов,

2 x1 + 4 x 2 ≤ 16 − для нитратов.

Кроме того, по смыслу задачи должно выполняться условие

x1 ≥ 0, x2 ≥ 0.

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

целевой функции:

Z ( X ) = 80 x1 + 10 x2 → min

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

(1.1)


Приводим систему линейных неравенств (1.1) к каноническому виду, вводя в каждое неравенство дополнительную неотрицательную переменную. Получим систему линейных уравнений:

(1.2)

Целевая функция будет иметь вид

Векторный анализ системы ограничений:

Расширенная целевая функция:


Вектора:

P0

P1(x1)

P2(x2)

P3(x3)

P4(x4)

P5(x5)

P6(x6)

-6

-1

-3

1

0

0

0

-9

-3

-1

0

1

0

0

-8

-1

-8

0

0

1

0

16

2

4

0

0

0

1

Базис:
Базисный вектор №1: x3
Базисный вектор №2: x4
Базисный вектор №3: x5
Базисный вектор №4: x6

Расширенная целевая функция:

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

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

  1. Задача должна быть приведена к каноническому виду. Система ограничений приведена к единичному базису, т.е. разрешена относительно некоторых базисных переменных (не умоляя общности, будем считать, что относительно первых m переменных) с помощью метода Жордана – Гаусса. Получено соответствующее исходное опорное решение .

  2. Для удобства ведения вычислений записываем все в симплекс-таблицу (табл.). Столбец «Базис» содержит список базисных переменных; следующий столбец «cj базиса» содержит коэффициенты целевой функции при базисных переменных; следующие столбцы содержат коэффициенты системы ограничений при соответствующих переменных; столбец «bi» - столбец свободных членов системы ограничений. Последняя строка содержит симплекс – разности, рассчитанные по формуле и последняя ячейка содержит значение целевой функции =. Отметим, что симплекс – разности базисных переменных всегда равны нулю.


Таблица

Базис

cj базиса

с1

с2

сm

cm+1

cn

bi

x1

x2

...

xm

xm+1

xn

1

x1

с1

1

0


0



2

x2

с2

0

1


0



m

xm

сm

0

0


1






  1. Если все симплекс – разности неотрицательны, т.е. , то опорный план оптимален.

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

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

  4. Выбираем разрешающий столбец «р», которому соответствует наименьшая отрицательная оценка.

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

  6. Переходим к новой симплекс – таблице, в которой будет новый базис: базисная переменная на «к» - ом месте в старом базисе меняется на новую переменную . Соответствующий вектор новой базисной переменной нужно превратить в единичный. Для этого разрешающую строку делим на , чтобы на месте разрешающего элемента появилась единица. Умножая разрешающую строку на подходящие числа и складывая её с остальными строками получаем нули в разрешающем столбце. После этого выписываем новый опорный план и пересчитываем строчку оценок. Переходим к пункту 3.


называется симплекс – разностью или оценкой.






Составляем симплекс – таблицу:

Таблица №1

Базис

cj базиса

с1=80

с2=10

c3=0

с4=0

c5=0

c6=0

P0(bi)

P1

P2

P3

P4

P5

P6

1

P3

0

-1

-3

1

0

0

0

-6

6

2

P4

0

-3

-1

0

1

0

0

-9

3

3

P5

0

-1

8

0

0

1

0

-8

8

4

P6

0

2

4

0

0

0

1

16

8


-80

-10

0

0

0

0

S min=0


Невозможно выбрать столбец замещения, так как нет положительных dj!
Выберем столбец таким образом. Чтобы избавиться от недопустимого решения, т.е. от отрицательных значений в столбце свободных членов (Р0).
Замещаемый базисный вектор: P3 (1-я строка)
Новый базисный вектор: P1 (1-й столбец)
Заменяем базисный вектор P3 на P1.
Таблица №2

Базис

cj базиса

P0

80

10

0

0

0

0

P1

P2

P3

P4

P5

P6

1

P1

80

6

1

3

-1

0

0

0

2

P4

0

9

0

8

-3

1

0

0

3

P5

0

-2

0

-5

-1

0

1

0

4

P6

0

4

0

-2

2

0

0

1

S min =

480

0

230

-80

0

0

0








Замещаемый базисный вектор: P5 (3-я строка)
Новый базисный вектор: P2 (2-й столбец)
Заменяем базисный вектор P5 на P2.
Таблица №3

Базис

cj базиса

P0

80

10

0

0

0

0

P1

P2

P3

P4

P5

P6

1

P1

80

4,8

1

0

-1,6

0

0,6

0

2

P4

0

5,8

0

0

-4,6

1

1,6

0

3

P2

10

0,4

0

1

0,2

0

-0,2

0

4

P6

0

4,8

0

0

2,4

0

-0,4

1

S min =

388

0

0

-126

0

46

0









Замещаемый базисный вектор: P4 (2-я строка)
Новый базисный вектор: P5 (5-й столбец)
Заменяем базисный вектор P4 на P5.






Таблица №4

Базис

cj базиса

P0

80

10

0

0

0

0

P1

P2

P3

P4

P5

P6

1

P1

80

2,625

1

0

0,125

-0,375

0

0

2

P5

0

3,625

0

0

-2,875

0,625

1

0

3

P2

10

1,125

0

1

-0,375

0,125

0

0

4

P6

0

6,25

0

0

1,25

0,25

0

1

S min =

221,25

0

0

6,25

-28,75

0

0








Замещаемый базисный вектор: P6 (4-я строка)
Новый базисный вектор: P3 (3-й столбец)
Заменяем базисный вектор P6 на P3.
Таблица №5

Базис

cj базиса

P0

80

10

0

0

0

0

P1

P2

P3

P4

P5

P6

1

P1

80

2

1

0

0

-0,4

0

-0,1

2

P5

0

18

0

0

0

1,2

1

2,3

3

P2

10

3

0

1

0

0,2

0

0,3

4

P3

0

5

0

0

1

0,2

0

0,8

S min =

190

0

0

0

-30

0

-5








Невозможно выбрать столбец замещения, так как нет положительных dj!
Получено оптимальное решение.

x1

x2

x3

x4

x5

x6

2

3

5

0

18

0

Из таблицы получим значения переменных целевой функции:




Целевая функция:
S min = 80·2+10·3
И в результате:
S min = 190;
Ответ: x1=2; х2=3- количество кормов I, II, входящих в рацион питания. Общая стоимость рациона (целевая функция) при котором достигается минимум целевой функции равен 190.

Решение задачи с помощью MS EXCEL

Для решения задач оптимизации в MS Excel используют надстройку Поиск решения, которая вызывается из пункта главного меню «Сервис» (рис. 1).

Если в версии Excel, установленной на Вашем компьютере, отсутствует данный подпункт меню «Сервис», необходимо вызвать пункт меню «Надстройки» и в предложенном списке дополнительных модулей выбрать «Поиск решения» (рис. 2).


Рис. 1

Рис. 2


Рассмотрим использование данной надстройки на примере. Решим с её помощью задачу, математическая модель которой строилась. Математическая модель задачи имеет вид:

целевой функции:

Z ( X ) = 80 x1 + 10 x2 → min

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

Составим шаблон в редакторе Excel, как показано на рис. 3

Рис.3. Шаблон оформления задачи


Теперь занесём данную в задаче числовую информацию (рис. 4).


Рис.4. Исходные данные задачи

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

Ячейки B4 – С4 называются в Excel изменяемыми (в нашей модели это неизвестные переменные), т.е., изменяя их Поиск решения будет находить оптимальное значение целевой функции. Значения, которые первоначально вводят в эти ячейки, обычно нули (незаполненные клетки трактуются по умолчанию как содержащие нулевые значения).

Теперь необходимо ввести формулы. В нашей математической модели, целевая функция представляет собой произведение вектора коэффициентов на вектор неизвестных. Действительно, выражение можно рассматривать как произведение вектора (80,10) на вектор (Х12).

В Excel существует функция СУММПРОИЗВ, которая позволяет найти скалярное произведение векторов. В ячейку Е4 необходимо вызвать данную функцию, а в качестве перемножаемых векторов задать адреса ячеек, содержащих коэффициенты уравнений (в данном случае, это В5:С5) и ячеек, в которые в результате решения будут помещены значения Х1 и Х2 (ячейки В4:С4) (рис. 5).

Рис.5. Вызов функции СУММПРОИЗВ.

Каждая левая часть ограничения тоже представляет собой произведение двух векторов: соответствующей строки матрицы затрат и вектора неизвестных. То есть, выражение Х1+3Х2 (для первого ограничения Х1 + 3Х2 6) будем рассматривать как произведение вектора коэффициентов (1,3) и вектора переменных (Х12).

В ячейке, отведенной для формулы левой части первого ограничения (D9), вызовем функцию СУММПРОИЗВ. В качестве адресов перемножаемых векторов занесем адрес строки коэффициентов В9:С9 и адрес значений переменных В4:С4 (рис. 6).

Рис.6

В четыре оставшиеся ячейки графы «Левая часть» вводим аналогичные формулы, используя соответствующую строку матрицы затрат. Фрагмент экрана с введёнными формулами показан на рис.7.

Рис.7

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

В меню Сервис выбираем Поиск решения. В появившемся окне задаём следующую информацию:

    1. в качестве целевой ячейки устанавливаем адрес ячейки для значения целевой функции Е4;

    2. «флажок» устанавливаем на вариант «максимальному значению», т.к. в данном случае, целевая функция дохода подлежит максимизации;

    3. в качестве изменяемых ячеек заносится адрес строки значений переменных В4:С4;

    4. справа от окна, предназначенного для занесения ограничений, нажимаем кнопку «Добавить», появится форма для занесения ограничения (рис. 8)


Рис.8 Форма для занесения одного ограничения ЗЛП


Рис.9 Занесение первого ограничения задачи


    1. в левой части формы «Ссылка на ячейку» заносится адрес формулы для левой части первого ограничения D9, выбирается требуемый знак неравенства (в нашем случае, F9 (рис. 9).

    2. аналогично заносятся все ограничения задачи, после чего нажимается кнопка «ОК».

Таким образом, окно «Поиск решения» с занесенной информацией выглядит следующим образом (рис.10):

Рис.10.

Далее необходимо нажать кнопку Параметры, установить «флажки» «Линейная модель» и «Неотрицательные значения», поскольку в данном случае задача является ЗЛП, а ограничение 6) требует неотрицательности значений (рис.11).


Рис.11 Установка параметров

Затем следует нажать «ОК», «Выполнить», после чего появляется окно результата решения (рис.12).

Рис.12. Окно результата решения

Если в результате всех действий получено окно с сообщением «Решение найдено», то Вам предоставляется возможность получения трех типов отчета, которые полезны при анализе модели на чувствительность. В данном примере достаточно сохранить найденное решение, нажав «ОК». В результате получено решение задачи из примера 1. (рис.13).

Рис.13 Результат применения «Поиска решения»

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

Рис.14. Сообщение об ошибке

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

Ответ: x1=2; х2=3- количество кормов I, II, входящих в рацион питания. Общая стоимость рациона (целевая функция) при котором достигается минимум целевой функции равен 190.






















СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

  1. Высшая математика для экономистов / Под ред. Н.Ш. Кремера. – М.: Банки и биржи, ЮНИТИ, 1997.

  2. Горчаков А.А., Орлова И.В. Компьютерные экономико - математические модели. – М.: Компьютер, ЮНИТИ, 1995.

  3. Ерохин Н.М., Орехов Н.А., Сидоренко А.В. Статистические модели и планирование экспериментов в экономике: Методическое пособие. – Калуга: КФ МГТУ, 1994.

  4. Замков О.О., Толстопятенко А.В., Черемных Ю.Н. Математические методы в экономике. – М., 1997.

  5. Исследование операций / Под ред. М.А. Войтенко и Н.Ш. Кремера. – М.: Экономическое образование, 1992.

  6. Исследование операций в экономике: Учебное пособие для вузов / Н.Ш. Кремер, Б.А. Путко, И.М., И.М. Тришин, М.Н. Фридман; под ред. Проф. Н.Ш. Кремера. – М.: ЮНИТИ-ДАНА, 2004.

  7. Кузнецов А.В., Сакович В.А., Холод Н.И. Высшая математика. Математическое программирование. – Минск: Вышэйшая школа, 1994.

  8. Математическое программирование / Под ред. Н.Ш. Кремера. – М.: Финстатинформ, 1995.

  9. Орехов Н.А., Левин А.Г., Горбунов Е.А. Математические методы и модели в экономике: Учебное пособие для вузов / Под ред. проф. Н.А. Орехова. – М.: ЮНИТИ-ДАНА, 2004.

  10. Орехов Н.А., Сахаров Г.В., Карпушин А.А. Введение в моделирование экономических процессов и явлений. – Калуга: КФ МГЭИ, 1997.

  11. Сборник задач и упражнений по высшей математике: математическое программирование / Под ред. А.В. Кузнецова. – Минск: Высшая школа, 1995.

  12. Эконометрика: Учебник / Под ред. И.И. Елисеевой. – М.: Финансы и статистика, 2001.

Здесь представлен конспект к уроку на тему «Решение задач оптимизации в MS Excel», который Вы можете бесплатно скачать на нашем сайте. Предмет конспекта: Информатика Также здесь Вы можете найти дополнительные учебные материалы и презентации по данной теме, используя которые, Вы сможете еще больше заинтересовать аудиторию и преподнести еще больше полезной информации.

Список похожих конспектов

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

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

Тема урока. :. . «Решение задач профессиональной направленности с помощью. MSExcel. ». Цель урока. (слайд2). Образовательная:. Формирование ...
Решение задачи оптимального планирования в MS Excel

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

МБОУ «Учхозская средняя общеобразовательная школа» Краснослободского муниципального района Республики Мордовия. Конспект урока по информатике в ...
Приближенное решение уравнений с помощью табличного процессора Excel

Приближенное решение уравнений с помощью табличного процессора Excel

МБОУ ООШ №6. Урок информатики. Тема «Приближенное решение уравнений с помощью табличного процессора Excel. ». . класс: IX (общеобразовательный). ...
Табличное решение логических задач

Табличное решение логических задач

. Тема «Табличное решение логических задач». 7 класс (второй урок). Цели урока:. систематизировать и обобщить сведения, полученные учащимися ...
Таблицы. Табличное решение логических задач

Таблицы. Табличное решение логических задач

КОНСПЕКТ УРОКА для 5 класса«Таблицы. Табличное решение логических задач». . . ФИО (полностью). . Шухарова Екатерина Федоровна. . ...
Excel (транспортные задачи)

Excel (транспортные задачи)

Муниципальное общеобразовательное учреждение. «Средняя общеобразовательная школа № 93». Новокузнецкого района Кемеровской области. ...
Табличное решение логических задач

Табличное решение логических задач

Урок 16. Табличное решение логических задач. Планируемые образовательные результаты. :. предметные -. умение представлять информацию в табличной ...
Табличное решение логических задач

Табличное решение логических задач

Тема «Табличное решение логических задач». 7 класс (первый урок этой темы). Цели урока:. систематизировать и обобщить знания учащихся по ...
Решение логических задач с помощью таблиц истинности

Решение логических задач с помощью таблиц истинности

Конспект урока по теме:. . "Решение логических задач с помощью таблиц истинности". . . Андреева Наталия Алексеевна,учитель информатики и ИКТМБОУ «Сунтарская ...
Решение прикладных задач с помощью электронных таблиц

Решение прикладных задач с помощью электронных таблиц

Конспект урока в 11-м классе по теме. . ". Решение прикладных задач с помощью электронных таблиц". Цель:. осознать практическую значимость ...
Решение логических задач

Решение логических задач

Конспект урока по информатике и ИКТ. Тема: Представление информации в табличной форме. «Решение логических задач». 5 класс. ...
Решение транспортных задач на уроках информатики (пример решения задачи)

Решение транспортных задач на уроках информатики (пример решения задачи)

Автор: Нестеренко Олеся Викторовна. Место работы: г. Калининград МАОУ СОШ №45. Должность: учитель математики и информатики. Тема: Решение ...
Решение задачи по экологии с помощью электронных таблиц

Решение задачи по экологии с помощью электронных таблиц

. Учебный предмет: информатика. Класс: 9. Учебник: Семакин И.Г. «Информатика и ИКТ», БИНОМ 2011г. Тема урока: «Решение задачи по экологии с помощью ...
Решение логических задач

Решение логических задач

Решение логических задач. . Автор: учитель информатики категории МБОУ СОШ №210 г. Новосибирска Довыденко Анна Михайловна. Описание материала: ...
Решение задач с применением графа при подготовке к ЕГЭ

Решение задач с применением графа при подготовке к ЕГЭ

Муниципальное бюджетное общеобразовательное учреждение. средняя общеобразовательная школа № 177. городского округа Самара. РАЙОННЫЙ ...
Решение логических задач

Решение логических задач

Учитель:. Борисенко Ирина Владимировна. МКОУ СОШ №6, Ставропольский край, город Ипатово. Предметная область:. Информатика и ИКТ 10 класс. Тема:. ...
Решение задач на языке Паскаль

Решение задач на языке Паскаль

Разработка урока на тему: «Решение задач на языке Паскаль». Цели:. Образовательная:. -. обобщить учебный материал;. -закрепить навыки по арифметическим ...
Решение задач с помощью электронных таблиц

Решение задач с помощью электронных таблиц

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

Решение задач по теме «Системы счисления

Конспект урока на тему «Решение задач по теме «Системы счисления». . 6 класс. Тип урока. : урок изучения нового материала.Формы организации деятельности ...
Решение задач на ветвление. Программирование диалога с компьютером

Решение задач на ветвление. Программирование диалога с компьютером

Тема. : Решение задач на ветвление. Программирование диалога с компьютером. Место урока в теме:. урок предусматривает использовать знания линейных ...

Информация о конспекте

Ваша оценка: Оцените конспект по шкале от 1 до 5 баллов
Дата добавления:2 марта 2017
Категория:Информатика
Поделись с друзьями:
Скачать конспект