Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

605

.pdf
Скачиваний:
5
Добавлен:
06.12.2022
Размер:
2.47 Mб
Скачать

7. Теперь необходимо связать каждый счетчик с соответствующей ячейкой ввода. Чтобы связать счетчик в ячейке D2 с ячейкой C2, щелкните счетчик в ячейке D2 правой клавишей мыши и выберите в контекстном меню команду Формат объекта. Заполните открывшееся диалоговое окно «Формат элемента управления» в соответствии с рис. 4.30 и нажмите кнопку OK. Значение в поле Текущее значение:, задаваемое в этом окне, не играет роли. Остальные параметры окна указывают, что данный счетчик связан со значениями в ячейке C2 (продажи в первый год) и что каждый щелчок по стрелке "вверх" счетчика увеличивает значение счетчика на 1000, а по стрелке "вниз" — уменьшает на 1000. Когда значение в ячейке C2 достигнет 30000, увеличить его, щелкая стрелку "вверх", не удастся; когда значение в C2 станет равным 5000, уменьшить его, щелкая стрелку "вниз" счетчика, также не удастся.

8. Далее аналогично свяжите счетчик в ячейке D4 с ценой автомобиля в первый год (ячейка C4). В поле Текущее значение: введите 9, Минимальное значение: — 6, Максимальное значение:

— 20, Шаг изменения: — 1. Свяжите аналогично счетчик в ячейке D5 с себестоимостью автомобиля в первый год (ячейка С5), задав при этом в поле Текущее значение: — 6, Минимальное значение: — 2, Максимальное значение: — 15, Шаг изменения: — 1.

9. Чтобы связать счетчик в ячейке D3 с ежегодным ростом продаж (ячейка C3), нужно проявить изобретательность. Пусть нам требуется, чтобы счетчик изменял значение ежегодного роста продаж от 0 до 50 % с шагом 0,5 %. Проблема в том, что минимальный допустимый для счетчика шаг равен 1. Поэтому мы связываем наш

Рис. 4.30. Диалоговое окно «Формат элемента управления» счетчик с фиктивным значением в для счетчика в ячейке D2

ячейке E3 (рис. 4.31) и помещаем в ячейку C3 формулу =E3/2. Фиктивное значение в ячейке E3 задаем равное 0. Теперь, поскольку значение ячейки E3 изменяется от 0 до 100 с шагом 1, наше значение роста продаж в ячейке C3 изменяется от 0 до 50 % с шагом 0,5 %. Теперь, щелкая кнопку счетчика, мы сможем легко наблюдать, как изменение одной ячейки ввода (при условии, что в модели есть ссылки на значения других ячеек ввода) будет изменять «чистую приведенную стоимость (ЧПС)» проекта продаж автомобиля (рис. 4.32).

10. Для

более

эффективного

 

восприятия результатов

моделирова-

 

ния можно выбрать и оставить види-

 

мой в окне экрана только самую важ-

 

ную для принятия решения часть ма-

 

тематической

модели.

Это верхняя

Рис. 4.31. Диалоговое окно «Формат элемента

 

 

 

управления» для счетчика в ячейке D3

71

часть модели (см. рис. 4.32, строки 18), строка 19 и столбцы левее G (A– F). Остальную часть модели можно временно скрыть. Чтобы оценить полученный эффект, нужно выделить ячейку G9, затем выполнить в меню команду Окно, Закрепить области. Эта команда фиксирует данные, расположенные выше строки 9 и левее столбца G. Теперь с помощью полос прокрутки окна можно изменить представление информации на экране (рис. 4.33).

11. Принимая во внимание значения ключевых входных параметров, увеличьте ежегодный рост продаж с 10 % до 11 % (рис. 4.34). Чистая приведенная стоимость проекта продаж (ЧПС) увеличится примерно на 1210 тыс. $. Чтобы отменить фиксацию областей, выполните в меню команду Окно, Снять закрепление области.

Рис. 4.32. Связь счетчика в ячейке D3 со значениями роста продаж при помощи формулы, которая ссылается на ячейку E3

Рис. 4.33. Результаты закрепления областей рабочего листа

72

Рис. 4.34. Значение ЧПС проекта продаж при ежегодном росте продаж 11 %

Контрольные задания

1.В примере с ЧПС проекта продаж автомобиля (см. рис. 4.29) добавьте счетчик, изменяющий значение ставки налога на прибыль с 30 % до 50 %. Определите ЧПС проекта продаж автомобиля при ставке налога на прибыль 35 %.

2.В примере с ЧПС проекта продаж автомобиля (см. рис. 4.29) добавьте счетчик, изменяющий значение годовой процентной ставки между 5 % и 20 %. Определите ЧПС проекта продаж автомобиля при годовой процентной ставке 8 %.

3.В диалоговом окне «Формат элемента управления» для поля Минимальное значение: допустимо значение, равное 0. Можно ли несмотря на это ограничение найти способ изменять с помощью счетчика значение ежегодного роста продаж от –10 % до 20 %?

4.5.Информационная технология «Поиск решения»

вмоделировании оптимизационных задач

Среда моделирования MS Excel обеспечивает решение задач линейного и нелинейного программирования ограниченной размерности [7]. В этих задачах речь идет о выборе из множества допустимых вариантов развития исследуемой деловой ситуации наилучшего по заданному признаку. Каждый допустимый вариант развития определяется набором значений переменных, которые должны удовлетворять заданным ограничениям. Ограничения задаются в виде функций от неизвестных задачи. Признак, по которому сравнивают допустимые варианты решений между собой, называется критерием оптимальности. Он имеет количественную оценку и задается в виде функции от неизвестных задачи. Вид экстремума функции установлен. Такие задачи называют оптимизационными.

Для реализации оптимизационных расчетов в среде моделирования MS Excel необходимо установить надстройку Поиск решения (если она не установлена) с помощью команды меню Сервис, Надстройки и правильно подготовить на листе рабочей книги данные математической модели решаемой задачи. При этом для искомых переменных надо назначить диапазон ячеек листа, для целевой функции определить ячейку, в которую записать соответствующую формулу, а также определить ячейки для левых и правых частей каждого ограничения. Функции ограничений (левые части) должны быть записаны в этих ячейках в виде формул, а правые части ограничений — в виде формул или числовых констант.

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

73

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

Дополнительные настройки оптимизации выполняются в диалоговом окне «Параметры поиска решения». В частности, можно ограничить время поиска решения и выполнения промежуточных вычислений (максимальное время — не более 9 ч), точность, с которой найденное решение соответствует целевому значению, допустимое отклонение для переменных от оптимального значения. Для задач с нелинейной целевой функцией задается параметр сходимости, который влияет на прекращение поиска. Если относительные изменения значения целевой функции за последние пять итераций меньше указанного числа, поиск прекращается. Здесь же выполняется установка типа модели — линейная, если целевая функция линейная, и может задаваться условие неотрицательности искомых переменных. Можно выводить результаты итераций, выполнять автоматическое масштабирование параметров модели.

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

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

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

Информационные технологии решения оптимизационных задач в среде моделирования MS Excel рассмотрим на примерах приведенного ниже задания.

Задание 22

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

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

Требуется перевезти однородный груз от трех поставщиков — А1, А2, А3 трем потребителям — B1, B2, B3 (табл. 4.3). Запасы груза у каждого поставщика ai и потребности bj каждого

потребителя в грузе на заданный плановый период известны. Известна также себестоимость перевозки единицы груза от каждого поставщика каждому потребителю — cij (усл. ден. ед.).

Составить план перевозок, при котором суммарные транспортные расходы на перевозку груза будут минимальными.

 

 

 

 

 

Таблица 4.3

 

Экономическое содержание транспортной задачи

 

 

 

 

 

 

Потребители

 

B1

B2

B3

Запасы ai груза у поставщиков, т

Поставщики

 

 

 

 

 

 

A1

 

2

1

8

200

A2

 

6

4

5

400

A3

 

1

3

5

400

Потребности bj потребите-

500

200

300

1000

лей в грузе, т

 

 

 

 

 

 

74

Неизвестными в транспортной задаче являются объемы перевозок груза от каждого поставщика каждому потребителю — xij, где i — номер поставщика, j — номер потребителя. Согласно свойствам транспортной задачи [2] они являются целыми числами. Из табл. 4.3 видно, что суммарное предложение груза (1000) равно суммарному спросу (1000) на него. Соответствующую модель транспортной задачи называют закрытой.

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

m n

— целевой функции f = ∑∑xijcij (суммарные транспортные расходы на перевозку гру-

i=1 j=1

за), минимум которой надо получить в результате решения;

— ограничений по запасам груза у поставщиков, задаваемых уравнениями (каждый поставщик должен вывезти весь имеющийся у него груз; другими словами, сумма поставок по

n

каждой строке равна мощности этой строки: xij = ai , i = 1,..., m ); число таких ограни-

j =1

чений равно количеству поставщиков m ;

— ограничений по потребностям потребителей в грузе, задаваемых уравнениями (сумма

m

поставок по каждому столбцу равна потребности этого столбца: xij = bj , j =1,...,n ); число

i=1

таких ограничений равно количеству потребителей n ;

— ограничений на неотрицательность всех mn неизвестных задачи ( xij >= 0 ) .

Порядок решения задачи

1. Разработайте на листе рабочей книги Excel информационную модель задачи (рис. 4.35).

Рис. 4.35. Информационная модель задачи

75

Для этого:

выделите на листе место для искомых результатов решения (например, диапазон ячеек A2: C4);

далее выделите на листе место для затрат на перевозку единицы груза от каждого поставщика каждому потребителю (например, диапазон ячеек A7:C9); в этот диапазон по i-й строке (i = 1, 2, 3) запишите значения затрат на перевозку единицы груза от i-го поставщика j-му потребителю (j = 1, 2, 3);

затем определите на листе место для ограничений по запасам поставщиков: для левых частей ограничений диапазон D12:D14, для правых частей — F12:F14; правые части ограничений задайте числовыми константами (запасы груза у каждого поставщика), в диапазон F12:F14 для каждого поставщика запишите формулу, которая определяет суммарное количество груза, предъявленного им к перевозке потребителям;

аналогично выделите на листе место для ограничений по потребностям потребителей: для левых частей ограничений диапазон D17:D19, для правых частей — F17:F19; правые части ограничений задайте числовыми константами (потребности в грузе каждого потребителя); левые части ограничений задайте формулами, определяющими фактическое количество груза, полученное каждым потребителем;

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

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

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

Параметры.

Рис. 4.36. Математическая модель транспортной задачи

3.В диалоговом окне «Параметры поиска решения» установите параметры для решения задачи (рис. 4.37), включите флажки Линейная модель, Неотрицательные значения и нажмите кнопку ОК.

4.В диалоговом окне «Поиск решения» (см. рис. 4.36) запустите решение задачи, нажав на кнопку Выполнить. Если оптимальное решение существует и оно найдено, на экран выводится окно «Результаты поиска решения», в нем сообщение: Решение найдено. Все ограничения

иусловия оптимальности выполнены (рис. 4.38). Если в этом окне нажать кнопку ОК, то результаты решения будут сохранены на листе в соответствующих ячейках информационной модели (рис. 4.39). Можно также по результатам решения сформировать отчет Результаты, выбрав этот вид отчета в списке отчетов и нажав кнопку ОК.

5.Сверьте полученное решение с приведенным на рис. 4.39.

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

76

Рис. 4.37. Диалоговое окно «Параметры поиска решения»

Рис. 4.38. Диалоговое окно «Результаты поиска решения»

Рис. 4.39. Результаты решения, выведенные на рабочий лист с информационной моделью

77

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

m

открытой моделью. Если суммарное предложение груза ai превышает суммарный спрос

i=1

n

bj , то ограничения по запасам поставщиков задаются линейными неравенствами типа <=.

j=1

Чтобы привести модель к закрытому виду, вводят фиктивный пункт потребления с потребно-

m

n

 

стью bn+1 = ai

bj . Величина bn+1

определяет суммарный объем не предъявленного к пе-

i=1

j=1

 

ревозке груза. Размеры остатков xi,n+1

у разных поставщиков можно регулировать в зависимо-

сти от введенного штрафа ci,n+1 за единицу невывезенного груза [2].

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

n

m

фиктивного поставщика с запасами am+1 = bj

ai , а значения cm+1, j задают равными rj ,

j=1

i=1

где rj — величина ущерба j-го потребителя (в денежных единицах), возникающего в результа-

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

n m

n

m

требителей ∑∑cij xij

+ rj yj , где

yj = bj xij , j =1,2,...,n, означает разность между по-

j=1 i=1

j=1

i=1

m

требностями bj потребителя и поставками xij груза ему [2].

i=1

II.Задача выбора инвестиционных проектов

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

Предположим, что компания Microsoft, являясь крупнейшим в мире разработчиком программного обеспечения для персональных компьютеров, пытается определить, какие из 13 имеющихся инвестиционных проектов заслуживают внимания [13]. Чистая приведенная стоимость (в млн дол.), приносимая каждым проектом, а также финансовые средства (в млн дол.) и трудовые ресурсы (число программистов), доступные для выделения на все проекты по годам, показаны на рис. 4.40. Например, проект 2 приносит $908 млн чистой приведенной стоимости, однако потратить на него придется в 1-й год $151 млн финансовых ресурсов, $269 млн во 2-й год и $248 млн в 3-й год. Помимо этого потребуется 139 программистов в 1-й год, 86 — во 2-й и 83 — в 3-й год. На все проекты выделено финансовых средств $2,5 млрд и 900 программистов в 1-й год, во 2-й год соответственно $2,8 млрд и 900 программистов и в 3-й год компания располагает $2,9 млрд финансовых средств и 900 программистами.

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

Порядок решения задачи

1. Создайте на листе рабочей книги MS Excel информационную модель задачи (рис. 4.40). Изменяемые ячейки: диапазон A6 :A18. Тип переменных: двоичные, задается ограниче-

ниями в окне «Поиск решения». Значения двоичных переменных: 0 либо 1. Если 1, то соответствующий проект будет реализован, иначе — не будет реализован.

Целевая ячейка B2 — суммарная чистая приведенная стоимость инвестиции, вычисляется как сумма произведений диапазона двоичных значений (0, 1), соответствующих каждому проекту, и диапазона C6:C18 значений ЧПС каждого проекта.

78

Рис. 4.40. Информационная модель задачи выбора инвестиционных проектов (начало)

79

80

Рис. 4.40. Информационная модель задачи выбора инвестиционных проектов (окончание)

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