68013

Поиск решения

Доклад

Информатика, кибернетика и программирование

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

Русский

2014-09-17

991 KB

6 чел.

Поиск решения

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

Формулировка задачи

Прежде чем обращаться к инструменту Поиск решения, нужно проанализировать задачу и построить математическую модель. Для построения модели необходимо:

а) определить, каковы переменные модели;

б) выбрать целевую функцию;

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

При подготовке рабочего листа к решению задачи нужно:

  1.  отвести диапазон ячеек для хранения переменных величин;
  2.  в отдельную ячейку ввести функцию цели. Функция цели всегда зависит от переменных, поэтому в ячейке с целевой функцией будут использованы ссылки на ячейки, где хранятся переменные;
  3.  подготовить значения и формулы для задания ограничений. Поскольку ограничения накладываются на переменные, то в формулах для задания ограничений будут использованы ссылки на ячейки, где хранятся переменные.

Элементы диалогового окна Поиск решения

После построения математической модели можно обратиться к средству Поиск решения. Для этого нужно воспользоваться командой Tools|Solver – Сервис|Поиск решения. (Если эта команда недоступна, то сначала нужно выполнить следующую последовательность действий: вызвать диалоговое окно Надстройки с помощью команды Tools|Add-Ins – Сервис|Надстройки и установить флажок Solver Add-in – Поиск решения.) На экране появится окно диалога Поиск решения (рис. 1).

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

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

Список Ограничения представляет все ограничения, накладываемые на переменные. Чтобы добавить ограничение, нужно воспользоваться кнопкой Добавить. На экране появится диалоговое окно (рис. 2).

Поле Ссылка на ячейку появившегося окна предназначено для указания ссылки на ячейки, где хранятся переменные или формулы, используемые для задания ограничений. В поле Ограничение можно задать константу, ссылку на ячейки со значениями или формулами. Значения из полей Ссылка на ячейку и Ограничение сравниваются с помощью операции («>=», «<=», «=», «цел», «двоич»), которою можно выбрать из списка, расположенного между этими двумя полями.

Кнопка Добавить позволит задать несколько ограничений, кнопка ОК добавляет ограничение и закрывает это окно.

Кнопка Изменить диалогового окна Поиск решения позволяет модифицировать выделенное в списке Ограничения ограничение. При этом на экране появится диалоговое окно Добавление ограничение
(рис. 2) с уже заполненными элементами управления.

Кнопка Удалить диалогового окна Поиск решения позволяет удалить выделенное ограничение.

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

Параметры поиска решения

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

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

Таблица 1. Параметры поиска решения

Название

Описание

Поле Максимальное время

Определяет время, отпускаемое на решение задачи

Поле Предельное число итераций

Позволяет ограничить число промежуточных вычислений 

Поле Относительная погрешность

Задает точность выполнения ограничений. Чем ближе значение к 1, тем ниже точность

Поле Допустимое отклонение

Служит для указания значения отклонения от оптимального решения (используется в задачах с целочисленными ограничениями)

Поле Сходимость

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

Флажок Линейная модель

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

Флажок Автоматическое масштабирование

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

Флажок Показывать результаты итераций

Может быть использован для просмотра процесса нахождения решения

Группы Оценки, Разности, Метод поиска

Служат для выбора метода экстраполяции, метода численного дифференцирования и алгоритма оптимизации соответственно

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

Транспортная задача

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

Заводы

Производство цемента (т/сут)

Стоимость перевозки 1т цемента, руб.

Комбинат 1

Комбинат 2

Комбинат 3

1

40

10

15

25

2

60

20

30

30

Потребности
в цементе

50

20

30

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

Решение. В качестве неизвестных величин выступают объемы перевозок. Пусть xij объем перевозки цемента с iго завода на jй комбинат, pij  стоимость перевозки 1т цемента с iго завода на jй комбинат. Тогда функция цели представляет собой суммарные транспортные расходы:. Эту функцию надо минимизировать.

Неизвестные в данной задаче должны удовлетворять следующим ограничениям.

  1.  Объемы перевозок не могут быть отрицательными, т.е. .
  2.  Весь цемент с заводов должен быть вывезен. Пусть аi  объем производства цемента на i-ом заводе. Тогда это ограничение выглядит следующим образом: .
  3.  Потребности всех комбинатов в цементе должны быть удовлетворены. Если за bj обозначить потребность в цементе j-го комбината, то это условие может быть записано так: .

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

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

После нажатия кнопки Выполнить средство Поиск решения найдет оптимальный план суточных перевозок цемента (рис. 6).

Замечание. В рассмотренном примере задача является сбалансированной: суммарный объем произведенной продукции равен суммарному объему потребности в ней. Поэтому в этой модели не надо учитывать издержки, связанные со складированием (при перепроизводстве) или с недопоставками (при дефиците). В противном случае в модель нужно было бы ввести:

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

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


 

А также другие работы, которые могут Вас заинтересовать

41317. Изучение команд SSE и SSE2 1.24 MB
  Практически изучить команды SSE и SSE2 для МП. Методические материалы и литература: Методические указания по выполнению практических работ; Иллюстративный материал: команды управления на языке SM для МП. При этом использовать описание работы лабораторный блок ПК иллюстрационный материал; В практической части отработать следующие подразделы: Рассмотреть примеры использования команд ХММрасширения Выполнить пример формирования кода операции и порядок следования операндов команд ХММрасширения...
41318. Изучение команд обращения к портам. Реализа-ция последовательного и параллельного обмена данными 149.5 KB
  Основные теоретические положения Организация ввода вывода в микропроцессорной системе Вводом выводом ВВ называется передача данных между ядром ЭВМ включающим в себя микропроцессор и основную память и внешними устройствами ВУ. Управляющие данные от процессора называемые также командными словами или приказами инициируют действия не связанные непосредственно с передачей данных например запуск устройства запрещение прерываний и т. Управляющие данные от внешних устройств называются словами состояния; они содержат информацию об...
41319. Изучение команд пересылки данных МК МС 68HC908GP32 1.63 MB
  Практически изучить команды пересылки данных МК МС 68HC908GP32 ПК ПО. Методические материалы и литература: Методические указания по выполнению практических работ; Иллюстративный материал: команды управления на языке SM для МП. При запуске МК процедура RЕSЕТ в РС автоматически загружается адрес первой команды выполняемой программы вектор начального запуска из двух...
41320. Изучение команд передачи управления 4.09 MB
  Практически изучить команды передачи управления . Методические материалы и литература: Методические указания по выполнению практических работ; Иллюстративный материал: команды операций над числами . При этом использовать описание работы лабораторный блок ПК иллюстрационный материал; В практической части отработать следующие подразделы: Рассмотреть команды передачи управления; Выполнить примеры и отразить их в отчёте; Проанализировать результаты выполненных примеров. Основные теоретические положения Способы...
41321. Изучение программной модели команд управления на языке SM для МП 1.1 MB
  Практически изучить программную модель команд управления на языке SM для МП. Методические материалы и литература: Методические указания по выполнению практических работ; Иллюстративный материал: команды управления на языке SM для МП. При этом исполнение текущей последовательности команд приостанавливается прерывается а вместо нее начинает выполняться другая последовательность соответствующая данному прерыванию.
41322. Изучение команд операций над числами 1.62 MB
  Основные теоретические положения Структура команд Любая команда ЭВМ обычно состоит из двух частей: операционной и адресной. Трехадресная команда легко расшифровывалась и была удобна в использовании но с ростом объемов ОЗУ ее длина становилась непомерно большой. Пример программы в командах процессора Перед вами короткая программа для процессора семейства 1п1е1 которая увеличивает число находящееся в регистре ах. Пример программы в командах процессора Несмотря на то что приведенная программа по длине явно больше чем...
41323. Изучение команд операций с битами 5.5 MB
  Каждая команда МК подгруппы РIС16F8Х представляет собой 14битовое слово разделенное на код операции ОРСОDЕ и поле для одного и более операндов которые могут участвовать или не участвовать в этой команде.1 Основные форматы команд МК Команды работы с битами Отличительной особенностью данной группы команд является то что они оперируют с однобитными операндами в качестве которых используются отдельные биты регистров МК. отрицание логическое НЕ логическая операция над одним операндом результатом которой является...
41324. Исследование состава и возможностей ИС РПО для семейства МК АVR 3.63 MB
  Основные теоретические положения Программная среда АVR Studio Фирма Аtmel разработчик микроконтроллеров АVR очень хорошо позаботилась о сопровождении своей продукции. Для написания программ их отладки трансляции и прошивки в память микроконтроллера фирма разработала специализированную среду разработчика под названием АVR Studio Программная среда АVR Studio это мощный современный про граммный продукт позволяющий производить все этапы разработки программ для любых микрокон троллеров серии АVR ....
41325. Работа с ИС РПО для семейства МК АVR 5.99 MB
  Если уже есть файл с текстом программы на Ассемблере и просто необходимо создать проект а затем подключить туда готовый программный файл снимите соответствующую галочку. Оно должно содержать имя файла куда будет записываться текст программы. При выборе этого элемента диалог создания проекта будет автоматически запускаться каждый раз при запуске программы VR Studio.ps; файл куда будет помещен текст программы на Ассемблере Prog1.