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).

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

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

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


 

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

34738. Ревизские сказки как источник по генеалогии непривилегированных слоев населения 15.76 KB
  Это документы именной переписи податного населения Российской Империи XVIII середины XIX вв. Проведение реформы потребовало организации подушного учета населения. Ревизские сказки являлись поимёнными списками населения в которых указывались имя отчество и фамилия владельца двора его возраст имя и отчество членов семьи с указанием возраста отношение к главе семьи.
34739. Материалы всероссийской переписи населения 1897года как источник по генеалогии непривилегированных слоев населения 13.06 KB
  дают материалы Первой всероссийской переписи населения это прямой массовый статистический учет населения проводимый с целью определения его численности состава и размещения на определенный момент. Первый подробный проект переписи населения был представлен председателем Центрального статистического комитета П. Только почти через 20 лет этот проект был утвержден императором Николаем II согласно Положению о Первой всеобщей переписи населения Российской империи изданному в 1895 г.
34740. Церковные метрические книги как источник по генеалогии непривилегированных слоев населения 13.82 KB
  Метрические книги велись в России до революции в церковных приходах духовенством или особыми гражданскими чиновниками. Во второй части метрической книги также приводился порядковый номер и дата бракосочетания. Метрические книги велись в двух экземплярах: один направлялся на хранение в архив консистории учреждение с церковноадминистративными и судебными функциями которая подчинялась епархиальному архиерею второй оставался в церкви.
34741. Методика генеалогических исследований. Генеалогические таблицы и росписи 15.71 KB
  Поколенная роспись – это нумерованное перечисление членов рода потомков родоначальника по мужской линии обоего пола по генеалогическому старшинству с выделением поколений и указанием при каждом члене рода номера его отца. Выделяются три наиболее употребительных: а все лица рода распределялись по коленам нумеровавшимся римскими цифрами перед представителем рода ставился порядковый номер арабскими цифрами а в конце строки ставился порядковый номер отца; как валовая нумерация б номер отца при сплошной нумерации переносится в начало...
34742. Историческая хронология. Предмет и задачи. Виды календарных систем. Основные понятия и термины 17.43 KB
  В этом календаре год состоял из 365 дней. по 30 дней каждый; в конце года добавлялось пять праздничных дней не входивших в состав месяцев. В течение каждых 19 лет считают 12 лет по 12 лунных месяцев по 29 30 дней и 7 лет по 13 лунных месяцев. лунносолнечный календарь является официальным в Израиле где начало года приходится на один из дней периода с 5 сентября по 5 октября.
34743. Древние календарные системы: Египет, Древняя Греция, Китай 18.83 KB
  Этот лунный календарь использовался на протяжении всей древнеегипетской истории как религиозный календарь фиксирующий время проведения праздников. Схематический гражданский календарь Новый календарь был построен по простой схеме. Поздний лунный календарь Хронологической единицей в нем как и в раннем лунном календаре служил лунный месяц начинавшийся в первый день невидимости Луны.
34744. Мусульманский календарь. Мусульманская система летоисчисления 13.08 KB
  Мусульманская система летоисчисления Мусульманский исламский календарь лунный календарь используемый в исламе для определения дат религиозных праздников а также как официальный календарь в некоторых мусульманских странах. Поэтому в мусульманских странах календарь называют календарём Хиджры. Такая система до сих пор используется в некоторых странах например в Пакистане и Бангладеш. В разных странах используются разные правила.
34745. Календарные системы в Древнем Риме. Реформа Юлия Цезаря 16.15 KB
  Последующие месяцы продолжали сохранять свои числовые обозначения: Квинтилис Quintilis пятый Секстилис Sextilis шестой Септембер September седьмой Октобер Oktober восьмой Новембер November девятый Децомбер December десятый Мартиус майус квинтилис и октобер имели по 31 дню а остальные месяцы состояли из 30 дней. Очень любопытна история распределения дней по месяцам. Первоначально год римского календаря как уже говорилось состоял из 304 дней. Чтобы...