Реализацию алгоритма вычислительной задачи в
электронных таблицах Excel возможно, так как они
выполняют необходимые требования, предъявляемые
к среде реализации алгоритма [Глущенко Ю. В.
Обоснование использования языка
программирования в учебном процессе (в печати)].
Для реализации вычислительных алгоритмов
необходимо уметь реализовывать базовые
структуры алгоритмов. На примерах задач,
приводящих к базовым структурам, разберемся с
реализацией вычислительного процесса базовых
структур в электронных таблицах. Можно
предложить следующий алгоритм:
- Составление спецификаций переменных заданного
алгоритма в виде таблицы, в столбцах которой
будут Имя переменной в алгоритме, назначение,
тип, диапазон, адрес в Excel, вид реализации. - Разработка таблиц ВводаИнформации.
- Разработка таблицы подзадачи
ОбработкаИнформации. - Разработка таблицы ВыводаРезультата.
- Тестирование построенных таблиц.
Линейные алгоритмы
ЗАДАЧА. Задан алгоритм в виде:
НАЧАЛО_АЛГОРИТМА
- Ввести значения сторон треугольника а, в, с.
- Вычислить значение полупериметра р = (а+в+с)/2
- Вычислить площадь треугольника S=(p*(p-а)*(р-в)*(р-с)).
- Вывести значение S.
КОНЕЦ_АЛГОРИТМА
Реализовать вычисления по заданному алгоритму
в Excel.
РЕШЕНИЕ.
1. Спецификация переменных исходного
алгоритма:
№ п/п. |
Имя перем. в алгоритме |
Назначение |
Тип |
Диапазон |
Адрес |
Вид реализации |
Переменные входного потока |
||||||
1 | А | Сторона тр-ка | Вещ | 0, + | B3 | <число> |
2 | В | Сторона тр-ка | Вещ | 0, + | B4 | <число> |
3 | С | Сторона тр-ка | Вещ | 0, + | В5 | <число> |
Переменные блока |
||||||
4 | Р | полупериметр | Вещ | 0, + | Е3 | <формула> |
5 | S | Площадь тр-ка | Вещ | 0, + | Е4 | <формула> |
Переменные выходного |
||||||
6 | S | Площадь тр-ка | Вещ | 0, + | Н3 | <формула> |
2. Разработка таблицы ВводаИнформации
Таблица ВводаИнформации должна содержать
значения переменных входного потока. Ее
реализация показана на Рис. 1.
3. Разработка таблицы подзадачи
ОбработкаИнформации
В данной таблице необходимо провести
вычисления полупериметра и площади. Оба эти
параметра вводятся с помощью формул в
соответствующие ячейки. Реализация данной
таблицы приведено на Рис. 1.
4. Разработка таблицы ВыводаРезультатов
Таблица ВыводаРезультатов должна содержать
значения переменных выходного потока. Ее
реализация показана на Рис. 1.
5. Тестирование разработанных таблиц
Для тестирования полученных таблиц строим
таблицу теста по следующему шаблону:
№ п/п. | Имя | Назначение | Значение/результат | ||||
1 | А | Входной поток | 1 | 3 | 1 | ||
2 | В | 1 | 4 | 1 | |||
3 | С | 4 | 5 | 2 | |||
4 | Р | Промежуточные | 3 | 6 | 2 | ||
5 | S | Выходной поток | Ошибка | 6 | 0 |
ЗАДАЧА РЕШЕНА.
Задачи для самостоятельной работы можно найти
в Приложении 1.
Алгоритм ветвления
ЗАДАЧА. Задан алгоритм в виде:
НАЧАЛО_АЛГОРИТМА
- Ввести значение переменной Х.
- ЕСЛИ Х не больше 0,
ТО Y:=Х*Х, ИНАЧЕ Y:=Х+1. - Вывести значение переменной Y.
КОНЕЦ_АЛГОРИТМА
Реализовать вычисления по заданному алгоритму
в Excel.
РЕШЕНИЕ.
1. Спецификация переменных исходного
алгоритма:
2. Разработка таблицы ВводаИнформации
Таблица ВводаИнформации должна содержать
значения переменных входного потока. В нашем
случае значение X. Ее реализация показана на Рис. 2.
3, 4. Разработка таблицы подзадачи
ОбработкаИнформации.
В данной задаче можно (и нужно) объединить
задачи ОбработкиИнфориации и ВыводаРезультатов,
построив только таблицу ВыводаРезультатов. Ее
реализация показана на Рис. 2.
5. Тестирование разработанной таблицы.
Для тестирования полученной таблицы
необходимо взять минимум три значения Х:
- слева от ветвления,
- в точке ветвления,
- справа от точки ветвления.
Значения берутся так, чтобы просто было
проверить результат. Поэтому построим таблицу
тестирования в виде:
Имя переменной | ЗНАЧЕНИЕ/РЕЗУЛЬТАТ | ||
Слева от точки ветвления | В точке ветвления | Справа от точки ветвления | |
X | -5 | 0 | 2 |
Y | 25 | 0 | 3 |
ЗАДАЧА РЕШЕНА.
Задачи для самостоятельной работы можно найти
в Приложении 2.
Циклические алгоритмы
ЗАДАЧА. Задан алгоритм в виде:
НАЧАЛО_АЛГОРИТМА
- Ввести значение целочисленной переменной
1<=N<=10. - S:= 0 {Начальное значение
сумматора равно нулю}. - I:= 0 {Начальное
значение индекса цикла равно нулю}. - I:=I+1 {Текущее значение индекса
цикла}. - S:=S+I
{накопление
суммы}. - ЕСЛИ N>I то идти на п.4
{конец цикла с постусловием} - Вывести значение
S
{Вывод результата}.
КОНЕЦ_АЛГОРИТМА
Реализовать вычисления по заданному алгоритму
в Excel.
РЕШЕНИЕ.
1. Спецификация переменных исходного
алгоритма:
№ п/п. | Имя переменной в алгоритме. | Назначение | Тип | Диапазон | Адрес | Реализация |
Переменные входного потока | ||||||
1 | N | ПВхП | ц | 1..10 | B3 | <число> |
Индекс цикла | ||||||
1 | i | индекс | ц | 1..N | А10:A50 | <массив> |
5 | S | ПВхдП | ц | <=55 | B10:B50 | <формула> |
Переменные выходного потока. | ||||||
5 | S | ПВхдП | ц | <=55 | Е3 | <формула> |
2. Разработка таблицы ВводаИнформации
Таблица ВводаИнформации должна содержать
значения переменных входного потока. В нашем
случае значение N. Ее реализация показана на Рис. 3.
3. Разработка таблицы подзадачи
ОбработкаИнформации
Реализация обработки информации возможна лишь
с использованием циклического алгоритма.
В случае с Excel данную задачу необходимо разбить
на три:
- Построение столбца индексов цикла.
- Построение столбца элементов массива.
ЗАДАЧА №1 ПОСТРОЕНИЕ СТОЛБЦА ИНДЕКСА ЦИКЛА.
Данную задачу сформулируем в виде:
Построить столбец значений индекса цикла в
интервале [1..N (задано)]. При этом с изменением
значения N в ячейке В3 должно изменяться и
количество значений индекса цикла в расчетной
таблице.
Эта задача решается в столбце А начиная со строки
№10.
Важно отметить, что протяжку можно вести до
любого номера строки лишь бы при всех изменениях
N протяжка формулы захватывала все строки
изменения значения индекса цикла. Необходимо
только помнить, что при протяжке увеличивается
объем файла, то есть чем глубже протянем формулу,
тем большим будет объем полученного файла и,
возможно, медленнее будет работать Excel с этим
файлом.
Рис. 3.
ПЕРВАЯ ЗАДАЧА РЕШЕНА
ЗАДАЧА №2. ПОСТРОЕНИЕ СТОЛБЦА ЭЛЕМЕНТОВ ЦИКЛА.
Здесь под элементом цикла будем понимать
текущее значение S, зависящее от значения индекса
цикла.
Сформулируем задачу в следующем виде:
Для каждого значения индекса цикла определить
текущее значение S.
Столбец В дает нам текущие значения S=f(<индекс
цикла>), при этом протяжка формулы в столбце В
должна быть не меньше протяжки в столбце А.
Рис. 3.
ВТОРАЯ ЗАДАЧА РЕШЕНА.
4. Разработка таблицы подзадачи
ВыводРезультатов
Для решения данной задачи следует понять, что
выходным значением S будет наибольшее из
значений в ячейках В [10…]. Конечное значение
интервала в В определяется протяжкой формул в
задачах №№1, 2. Пусть формулы протянули до строки
№50. Естественно, наибольшим S будет для
наибольшего значения индекса цикла, так как на
каждом шаге прибавляется число большее 1.
Следовательно, в ячейку Е3 необходимо ввести
формулу
Е3 =>[=МАКС(b10:b50)]
Рис. 3.
И если помнить, что значение пустой ячейки Excel
воспринимает как «0», то…
ТРЕТЬЯ ЗАДАЧА РЕШЕНА.
5. Тестирование полученных таблиц
Для тестирования полученной таблицы строим
таблицу теста по следующему шаблону:
№ п/п. | Имя | назначение | Значение/результат | ||||
1 | N | Вход | 1 | 5 | 7 | 9 | 10 |
2 | S | Выход | 1 | 15 | 28 | 45 | 55 |
ЗАДАЧА РЕШЕНА.
Задачи для самостоятельной работы можно найти
в Приложении 3.
Линейные алгоритмы в MS Excel
В рамках табличного процессора MS Excel возможна реализация линейных алгоритмов, главным назначением которых является вычисление функций зависящих от одного и более параметра. Для реализации линейного алгоритма в раках MS Excel используются формулы, записанные в рамках синтаксиса программы.
Формулы – это математические выражения, записанные в ячейки листа MS Excel используя стандартный для него синтаксис в рамках которых выполняется вычисления. В MS Excel формулы начинаются со знака равенства (=). Например, формула вычисления разницы меду 10 и отношением 12 к 3 имеет вид «=10-12/3». Формула может содержать такие элементы, как: функция, ссылка, оператор, контакта.
Функция – это стандартная формула, которая возвращает результат выполнения определенных действий над значениями, выступающими в качестве аргументов. Например, функция COS(ЧИСЛО) – возвращает косинус от заданного числа. Использование функции позволяет упростить линейное выражение в ячейках листа, что значительно уменьшает длину формул.
Константа – это постоянное (не вычисляемое) значение. Например, число 2 или текст «Сумма» являются константами. Выражение или результаты вычисления заданного выражения константами не являются, контактна может быть прописана в отдельной ячейке листа MS Excel.
Основные функции, которые могут понадобиться при выполнении практических заданий в MS Excel при изучении дисциплины, представлены в таблице 1.
Основные функции MS Excel
Функция | Результат выполнения функции | Пример |
ABS(число) | Модуль числа или модуль от результата вычисления выражения, записанного в качестве аргумента функции | = ABS(-2) функция вернет значение 2 = ABS(10-3*2) функция вернет значение 4 |
ПИ() | Возвращает число 3,14159265358979, которое является математической константой π с точностью до 15 цифр. | = ПИ() функция вернет значение 3,14159265358979 |
COS(число) | Возвращает косинус заданного числа или косинус от результата вычисления выражения, записанного в качестве аргумента функции. Считается, что аргументом функции является угол в радианах. | = COS(0) функция вернет значение 1 = COS(ПИ()) функция вернет значение -1 |
SIN(число) | Возвращает синус заданного числа или синус от результата вычисления выражения, записанного в качестве аргумента функции. Считается, что аргументом функции является угол в радианах. | = SIN(0) функция вернет значение 0 = SIN(ПИ()/2) функция вернет значение 1 |
TAN(число) | Возвращает тангенс заданного числа или тангенс от результата вычисления выражения, записанного в качестве аргумента функции. Считается, что аргументом функции является угол в радианах. | = TAN(0) функция вернет значение 0 = TAN(ПИ()/4) функция вернет значение 1 |
EXP(число) | Возвращает значение «e», возведенное в степень, которая записана в аргументе функции как число или выражение. | = EXP(0) функция вернет значение 1 = EXP(1) функция вернет значение числа «е» приблизительно 2,71828 |
LN(число) | Возвращает натуральный логарифм числа или натуральный логарифм от результата вычисления выражения, записанного в качестве аргумента функции. Аргумент функции должен быть положительным вещественным числом. | =LN(EXP(1)) функция вернет значение 1 =LN(3) функция вернет значение натурального логарифма от 3 (1,098612) |
КОРЕНЬ(число) | Возвращает положительное значение квадратного корня числа или выражения, записанного в качестве аргумента функции. Аргумент функции должен быть больше 0. | =КОРЕНЬ(4) функция вернет значение 2 =КОРЕНЬ(16+ABS(-9)) функция вернет значение 5 |
В таблице 1 приведен далеко не полный список математических и тригонометрических функций, являющихся стандартными для MS Excel. Более подробную информацию о функциях можно получить в справке программы.
В формулах используются простые математические операции:
Сложение в MS Excel – «+», пример «=В3+143» (складывает значение ячейки B3 и число 143).
Вычитание в MS Excel – «-», пример «=B3-143» (вычитает из значения ячейки B3 и число 143).
Умножение в MS Excel – «*», пример «=B3*143» (умножает значение ячейки B3 на число 143).
Деление в MS Excel – «/», пример «=B3/143» (делит значение ячейки B3 на число 143).
Возведение в степень в MS Excel – «^»,«=B3^143» (возводит значение ячейки B3 в степень 143).
Пример реализации линейного алгоритма в MS Excel
Рассмотрим на примере реализацию линейного алгоритма в MS Excel: необходимо рассчитать по формулам величину значений функций и : , , отрезок разбивает с шагом 0,5.
Реализация линейного алгоритма в MS Excel:
1. Создадим на листе 1 в ячейках А1, B1, C1 заголовок таблицы данных для реализации линейного алгоритма X, F1, F2 соответственно (рис. 3).
2. Заполним столбец А значениями аргумента функции X с шагом 0,5 (рис. 3) начиная с ячейки A2.
Рис. 3. Структура линейного алгоритма в MS Excel
3. Запишем выражение используя синтаксис MS Excel в ячейке В2. Для формулы выражения записанного в В2 аргументом x является значение, записанное в ячейке A2. Выражение в ячейке В2 имеет вид (рис. 4): =(SIN(A2)+EXP(1))/(COS(A2)^2-SIN(A2)).
Рис. 4. Вычисление
После записи формулы выражения в ячейке В2, нажимаем Enter и растягиваем формулу на весь диапазон аргумента x.
4. Запишем выражение используя синтаксис MS Excel в ячейке С2. Для формулы выражения записанного в С2 аргументом является значение, вчисленное в ячейке В2. Выражение в ячейке С2 имеет вид (рис. 5): =3*(B2^3+B2^2-2*B2).
Рис. 5. Вычисление
После записи формулы выражения в ячейке C2, нажимаем Enter и растягиваем формулу на весь диапазон аргумента x.
После завершения реализации линейного алгоритма о вычислении двух функций и структура вычисления линейного алгоритма имеет вид представленный на рис. 6.
Рис. 6. Результат реализации линейного алгоритма
Рассмотренный выше пример, является примером реализации части задания № 1 самостоятельной работы, в рамках задания 1 еще необходимо построить и отформатировать диаграммы, что будет рассмотрено в разделе 4 (см. раздел 4, Построение простой точечной диаграммы в MS Excel).
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ — конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой.
Папиллярные узоры пальцев рук — маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни.
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций.
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰).
Источник
РЕАЛИЗАЦИЯ АЛГОРИТМОВ С ПОМОЩЬЮ МАКРОСОВ В EXCEL
Цель работы: получить практические навыки разработки функций для реализации линейных, разветвляющихся и простейших циклических алгоритмов с помощью макросов в Excel.
Теоретические сведения
Реализация линейных и разветвляющихся алгоритмов
В Visual Basic for Application для задания значения переменной используется оператор присваивания. Этот оператор имеет следующий вид:
Выражение может быть арифметическим, текстовым или логическим.
Для записи выражений используются арифметические, текстовые и логические операции (операторы).
Арифметические операторы служат для выполнения арифметических действий над числами (таблица 16.1).
Таблица 16.1 ‑ Арифметические операторы
Арифметический оператор | Действие | Пример |
+ (знак плюс) | Сложение | 3+3 |
– (знак минус) | Вычитание Унарный минус | 3–1 –1 |
* (звездочка) | Умножение | 3*3 |
/ (косая черта) (обратная черта) | Деление Целочисленное деление | 5/8 (результат 0.625) 58 (результат 0) |
% (знак процента) | Процент | 20% |
^ (крышка) | Возведение в степень | 3^2 (аналогично 3*3) |
Для объединения нескольких текстовых строк в единую последовательность букв служит текстовый оператор &. Например, выражение «Энергетический » & «факультет» эквивалентно записи «Энергетический факультет».
Для записи разветвляющихсяалгоритмов используется оператор If(Если), который имеет две формы записи.
1. Однострочная запись:
Ifусловие Then [оператор]
If условие Then [оператор 1] [Elseоператор 2]
2. Многострочная запись:
If условие Then
End If
В однострочном операторе условие и выполняемые при соблюдении условия действия располагаются в одной строке. В том случае, если при выполнении условия требуется выполнение блока операторов, используется многострочный оператор.
После имени конструкции If должно следовать логическое выражение, содержащее условие. Для создания сложных условий используются логические операции And (И) и Or (Или). В качестве условия могут выступать следующие логические выражения: сравнение переменной с другой переменной, константой или функцией; любая переменная; выражение; поле базы данных; функция, принимающие значения True (Истина) или False (Ложь).
Конструкция If…Then (Тогда)…Else (Также)аналогична конструкции If. Then, но позволяет задать действия, исполняемые как при выполнении условий, так и в случае их невыполнения.
Команда Ifможет проверить только одно условие. Если требуется осуществить переход управления в зависимости от результатов проверки нескольких условий, то дополнительное условие можно задать с помощью оператора Else If (Также Если). Оно будет анализироваться только в том случае, если предыдущее условие ложно.
Ключевое слово End If обозначает конец многострочной конструкции и его наличие в команде в этом случае обязательно. Если указанное условие выполняется, то есть результат проверки равен True (Истина), то выполняются операторы, следующие за ключевым словом Then. Если условие не выполняется, то Visual Basic переходит к выполнению операторов, следующих за указанным оператором.
В качестве примера приведем функцию определения корней квадратного уравнения:
Function Корни(a, b, c)
d = b ^ 2 — 4 * a * c
x1 = (-b + d ^ (1 / 2)) / (2 * a)
x2 = (-b — d ^ (1 / 2)) / (2 * a)
Корни = «x1=» + str(x1) + «; x2=» + str(x2)
Корни = «корней нет»
Конструкция Select Сase позволяет обрабатывать в программе несколько условий и аналогична блоку конструкций If…Then…Else. Эта конструкция состоит из анализируемого выражения и набора операторов Case (в случае) на каждое возможное значение выражения. Работает эта конструкция следующим образом. Сначала вычисляется значение заданного в конструкции выражения. Затем полученное значение сравнивается со значениями, задаваемыми в операторах Сase конструкции. Если найдено искомое значение, выполняются команды, приписанные данному оператору Case. После завершения выполнения конструкций управление будет передано конструкции, следующей за ключевым словом End Select. Запись конструкции Select Case следующая:
Select Case сравниваемое значение
CASE значение 1
CASE значение 2
End Select
В начале конструкции расположены ключевые слова Select Case, указывающие, что расположенный рядом с ними параметр “сравниваемое значение” будет проверяться на несколько значений. Далее следуют группы команд, начинающиеся с ключевого слова Case. Если параметр “сравниваемое значение” равен значению, указанному в текущем операторе Case, то будут выполняться команды, расположенные между этим и следующим ключевым словом Case.
В качестве примера воспользуемся конструкцией Select Case для выбора удельного активного сопротивления и расчета полного активного сопротивления R в зависимости от заданной марки провода воздушной линии электропередачи:
Источник
Большинство типовых
вычислительных алгоритмов в Excel оформлены
в виде стандартных функций и вызываются
с помощью программы Мастер функций (см.
подразд. 1.9). Самые популярные
из них:
-
ЕСЛИ() – позволяет
предусмотреть разные варианты заполнения
ячейки; -
СУММ(), ПРОИЗВЕД()
– соответственно суммирование и
перемножение значений из одного или
нескольких блоков; -
СУММПРОИЗВ() –
суммирование произведений соответствующих
элементов двух или нескольких массивов; -
СРЗНАЧ(), СРГЕОМ()
– расчет соответственно среднего
арифметического и геометрического по
числам в заданных блоках; -
СЧЕТ() – определение
количества чисел в заданном блоке.
Более сложные
алгоритмы оформлены в виде команд и
заказываются через меню Сервис. Наиболее
важные из них:
-
Подбор параметра…
– нахождение аргумента, при котором
функция примет нужное значение; -
Поиск решения…
– решение систем уравнений и задач
оптимизации; -
Пакет анализа –
содержит программы, необходимые при
статистической обработке данных.
Если нужная для
вычислений команда отсутствует в меню,
ее можно установить с помощью команды
Сервис Надстройки…
6.1. Общие сведения о функции если()
Функция ЕСЛИ()
позволяет предусмотреть разные способы
заполнения одной и той же ячейки. То,
каким из них следует воспользоваться
в данный момент, Excel определяет
самостоятельно по тому, выполняется
или нет при введенных данных указанное
в функции условие. Стандартный формат
функции имеет следующий вид:
ЕСЛИ(Логическое_выражение;
Значение_если_истина;Значение_если_ложь)
Здесь:
-
Логическое_выражение
– это условие, которое при одних
значениях введенных данных выполняется,
при других – нет; -
Значение_если_истина
– алгоритм, по которому определяется
значение функции, когда условие
оказывается правильным; -
Значение_если_ложь
– алгоритм, по которому определяется
значение функции, когда условие
оказывается неправильным.
В роли алгоритмов,
которые выбирает функция ЕСЛИ(), могут
выступать расчетные выражения, другие
функции, ссылки на ячейки, где находится
нужная информация, текстовые строки и
т. п.
Рассмотрим действие
этой функции на конкретных примерах.
6.2. Выбор из двух вариантов по одному условию
Пример
Поставщик ввел
оптовую скидку на цену для больших
партий товара. Надо составить шаблон
для расчета стоимости любой партии
товара.
Составим таблицу
из констант, необходимых для расчета.
В ячейки А1:А4 введем названия констант:
«ОбъемПартии», «ОптБарьер»,
«РознЦена», «ОптЦена». Присвоим
ячейкам В1:В4 такие же имена (удобно
пользоваться командой Вставка
Имя
Создать…). В ячейку С1 введем
текст «СтоимПартииТовара».
Сделаем активной
ячейку С2 и вызовем через Мастер функций
функцию ЕСЛИ(). В окне аргументов в
текстовые поля введем следующие значения:
-
В поле
«Логическое_выражение:» вводится
условие, по которому Excel будет выбирать
нужный вариант действий. Его можно
составить так:
ОбъемПартии<=ОптБарьер
-
В поле
«Значение_если_истина:» указывается
способ, по которому следует рассчитывать
функцию, если условие оказалось
правильным при тех данных, которые
введены во влияющие ячейки в данный
момент. Для нашего примера этот аргумент
выглядит следующим образом:
ОбъемПартии*
РознЦена
-
В поле
«Значение_если_ложь:» указывается,
как рассчитывать функцию, если условие
не выполняется. Для нашего примера
следует ввести
ОбъемПартии*ОптЦена
Расчетный шаблон
готов. Чтобы проверить его, введите
удобные для устных расчетов числа в
ячейки В1:В4 и проверьте, правильно ли
функция ЕСЛИ() выбрала формулу для
заполнения ячейки С2. Введите в В1 другой
объем партии, при котором требуется
использовать другую цену при расчете
стоимости покупки. Если в обоих случаях
получены верные результаты, можно
красиво отформатировать ячейки А1:С4
(см.
подразд. 1.13–1.16) и пользоваться
этим шаблоном, меняя только значения
констант в В1:В4.
Пример
В таблице значений
функции y = 2cos(x
+ 2)e0,5xнадо отметить символом «*» строку
с минимальным значением.
Введем в ячейки
А1 и В1 подписи «X» и
«Y», в блок А2:А11 –
значения аргументов, в блок В2:В11 –
формулу расчета функции. Столбец С
зарезервируем для заказанной в условии
метки. В ячейкуD1 введем
текст «минимум», в ячейкеD2
с помощью функции МИН() найдем это
значение в блоке В2:В11.
Выделим ячейку С2
и вызовем через Мастер функций функцию
ЕСЛИ(). Условие, по которому Excel выбирает
нужный вариант действий, составим так:
В2=$D$2. В строку второго
аргумента вводим символ «*» (без
кавычек), в третий – пробел и нажмем
после этого <ОК>. С помощью протяжки
скопируем полученную формулу на блок
С2:С11.
Задание
Посмотрите, какой
вид приняла функция в разных ячейках
этого блока.
Рассмотрим функцию
ЕСЛИ() в той строке, в которой появилась
«*». Значение функции y
в этой строке минимально. Левая и
правая части условия оказались
одинаковыми, т. е. первый аргумент –
правильный. Поэтому для заполнения
своей ячейки функция ЕСЛИ выбрала то,
что указано во втором аргументе. Для
значений функцииув других строках
условие, введенное в функцию ЕСЛИ(),
оказывается неверным, поэтому она
заполняет свои ячейки по варианту
третьего аргумента. В нашем случае это
пробел, который невидим на экране,
поэтому ячейки кажутся пустыми.
Измените аргументы,
введенные в А2:А11. «*» переместилась
в другую строку, хотя формулы в С2:С11 не
были изменены (после изменения данных
каждая функция ЕСЛИ() автоматически
проверила свой первый аргумент заново
и приняла новое управляющее решение,
каким правилом пользоваться для
заполнения своей ячейки).
Задание
В ячейку А1 введите
формулу:
=ЕСЛИ(С3=37;»СЕНО»;»СОЛОМА»)
Определите влияющую
ячейку (команда
Сервис
Зависимости
Влияющие ячейки) и введите в
нее такое число, при котором СОЛОМА
превратится в СЕНО.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
Пользователи Excel давно и успешно применяют программу для решения различных типов задач в разных областях.
Excel – это самая популярная программа в каждом офисе во всем мире. Ее возможности позволяют быстро находить эффективные решения в самых разных сферах деятельности. Программа способна решать различного рода задачи: финансовые, экономические, математические, логические, оптимизационные и многие другие. Для наглядности мы каждое из выше описанных решение задач в Excel и примеры его выполнения.
Решение задач оптимизации в Excel
Оптимизационные модели применяются в экономической и технической сфере. Их цель – подобрать сбалансированное решение, оптимальное в конкретных условиях (количество продаж для получения определенной выручки, лучшее меню, число рейсов и т.п.).
В Excel для решения задач оптимизации используются следующие команды:
Для решения простейших задач применяется команда «Подбор параметра». Самых сложных – «Диспетчер сценариев». Рассмотрим пример решения оптимизационной задачи с помощью надстройки «Поиск решения».
Условие. Фирма производит несколько сортов йогурта. Условно – «1», «2» и «3». Реализовав 100 баночек йогурта «1», предприятие получает 200 рублей. «2» — 250 рублей. «3» — 300 рублей. Сбыт, налажен, но количество имеющегося сырья ограничено. Нужно найти, какой йогурт и в каком объеме необходимо делать, чтобы получить максимальный доход от продаж.
Известные данные (в т.ч. нормы расхода сырья) занесем в таблицу:
На основании этих данных составим рабочую таблицу:
- Количество изделий нам пока неизвестно. Это переменные.
- В столбец «Прибыль» внесены формулы: =200*B11, =250*В12, =300*В13.
- Расход сырья ограничен (это ограничения). В ячейки внесены формулы: =16*B11+13*B12+10*B13 («молоко»); =3*B11+3*B12+3*B13 («закваска»); =0*B11+5*B12+3*B13 («амортизатор») и =0*B11+8*B12+6*B13 («сахар»). То есть мы норму расхода умножили на количество.
- Цель – найти максимально возможную прибыль. Это ячейка С14.
Активизируем команду «Поиск решения» и вносим параметры.
После нажатия кнопки «Выполнить» программа выдает свое решение.
Оптимальный вариант – сконцентрироваться на выпуске йогурта «3» и «1». Йогурт «2» производить не стоит.
Решение финансовых задач в Excel
Чаще всего для этой цели применяются финансовые функции. Рассмотрим пример.
Условие. Рассчитать, какую сумму положить на вклад, чтобы через четыре года образовалось 400 000 рублей. Процентная ставка – 20% годовых. Проценты начисляются ежеквартально.
Оформим исходные данные в виде таблицы:
Так как процентная ставка не меняется в течение всего периода, используем функцию ПС (СТАВКА, КПЕР, ПЛТ, БС, ТИП).
Заполнение аргументов:
- Ставка – 20%/4, т.к. проценты начисляются ежеквартально.
- Кпер – 4*4 (общий срок вклада * число периодов начисления в год).
- Плт – 0. Ничего не пишем, т.к. депозит пополняться не будет.
- Тип – 0.
- БС – сумма, которую мы хотим получить в конце срока вклада.
Вкладчику необходимо вложить эти деньги, поэтому результат отрицательный.
Для проверки правильности решения воспользуемся формулой: ПС = БС / (1 + ставка)кпер. Подставим значения: ПС = 400 000 / (1 + 0,05)16 = 183245.
Решение эконометрики в Excel
Для установления количественных и качественных взаимосвязей применяются математические и статистические методы и модели.
Дано 2 диапазона значений:
Значения Х будут играть роль факторного признака, Y – результативного. Задача – найти коэффициент корреляции.
Для решения этой задачи предусмотрена функция КОРРЕЛ (массив 1; массив 2).
Решение логических задач в Excel
В табличном процессоре есть встроенные логические функции. Любая из них должна содержать хотя бы один оператор сравнения, который определит отношение между элементами (=, >, <, >=, <=). Результат логического выражения – логическое значение ИСТИНА или логическое значение ЛОЖЬ.
Пример задачи. Ученики сдавали зачет. Каждый из них получил отметку. Если больше 4 баллов – зачет сдан. Менее – не сдан.
- Ставим курсор в ячейку С1. Нажимаем значок функций. Выбираем «ЕСЛИ».
- Заполняем аргументы. Логическое выражение – B1>=4. Это условие, при котором логическое значение – ИСТИНА.
- Если ИСТИНА – «Зачет сдал». ЛОЖЬ – «Зачет не сдал».
Решение математических задач в Excel
Средствами программы можно решать как простейшие математические задачки, так и более сложные (операции с функциями, матрицами, линейными уравнениями и т.п.).
Условие учебной задачи. Найти обратную матрицу В для матрицы А.
- Делаем таблицу со значениями матрицы А.
- Выделяем на этом же листе область для обратной матрицы.
- Нажимаем кнопку «Вставить функцию». Категория – «Математические». Тип – «МОБР».
- В поле аргумента «Массив» вписываем диапазон матрицы А.
- Нажимаем одновременно Shift+Ctrl+Enter — это обязательное условие для ввода массивов.
Скачать примеры
Возможности Excel не безграничны. Но множество задач программе «под силу». Тем более здесь не описаны возможности которые можно расширить с помощью макросов и пользовательских настроек.
Изучив алгоритмы «ручного» решения задач линейного программирования, полезно познакомиться и со способом упростить этот процесс. Ясно, что чем сложнее задача, чем больше в ней переменных и условий, тем утомительнее и дольше ее решать. В таких случаях удобно использовать специальные математические пакеты, или доступную многим программу MS Excel (версии 2003, 2007, 2010, 2013 и др.).
Решить задачи линейного программирования в Excel достаточно просто:
- составить математическую модель задачи,
- внести исходные данные задачи и ограничения,
- выделить место под ячейки решения и целевую функцию, ввести ее формулу,
- запустить надстройку Поиск решения,
- установить нужные параметры решения и запустить выполнение.
Программа подберёт оптимальное решение и покажет его в нужных ячейках, вычислит значение целевой функции. При необходимости можно построить отчеты для анализа решения задачи.
Подробнее все эти этапы с пояснениями и скриншотами разобраны ниже в примерах на разных задачах линейного программирования — изучайте, ищите похожие, решайте.
Помогаем студентам: Работы по линейному программированию на заказ
Лучшее спасибо — порекомендовать эту страницу
Линейное программирование: примеры в Excel
Задача 1. Построить математическую модель задачи и решить её средствами Excel. Записать сопряжённую задачу. Провести анализ и сделать выводы по полученным результатам.
Для производства столов и шкафов мебельная фабрика использует различные ресурсы. Нормы затрат ресурсов на одно изделие данного вида, прибыль от реализации одного изделия и общее количество имеющихся ресурсов каждого вида приведены в таблице.
Определить, сколько столов и шкафов фабрике следует выпускать, чтобы прибыль от реализации была максимальной.
Задача 2. Цех производит 8 различных видов деталей для двигателей A, B, C1, C2, C3, D, E6, F имея в своем распоряжении перечисленный ниже парк из 7 видов универсальных станков: 2 шт. -ADF, 3 шт. -SHG, 3 шт. -BSD, 1 шт. -AVP, 1 шт. -BFG, 3 шт. -ABM, 2 шт. -RL.
Время, требуемое для обработки единицы каждого продукта на каждом станке, вклад в прибыль от производства единицы каждого продукта и рыночный спрос на каждый продукт за месяц даны в таблице.
Цех работает 12 часов в день. Каждый месяц содержит 26 рабочих дней. Для упрощения задачи считаем, что возможен произвольный порядок обработки деталей на различных станках.
Составьте оптимальный план производства.
Определите, производство каких продуктов лимитировано рынком, и каких – техническими возможностями цеха. Какие машинные ресурсы должны быть увеличены в первую очередь, чтобы добиться максимального увеличения прибыли (при заданных потребностях рынка)?
Есть ли продукт, который невыгодно производить? Почему? Что нужно изменить, чтобы все продукты стало выгодно производить?
Может пригодиться: транспортные задачи в Excel
Задача 3. Необходимо составить самый дешевый рацион питания цыплят, содержащий необходимое количество определенных питательных веществ тиамина Т и ниацина Н. Пищевая ценность рациона (в калориях) должна быть не менее заданной. Смесь для цыплят изготавливается из двух продуктов — К и С. Известно содержание тиамина и ниацина в этих продуктах, а также питательная ценность К и С (в калориях). Сколько К и С надо взять для одной порции куриного корма, чтобы цыплята получили необходимую им дозу веществ Н и Т и калорий (или больше), а стоимость порции была минимальна? Исходные данные для расчетов приведены в таблице.
Задача 4. Фирма «Компьютер-сервис» поставляет компьютеры под ключ четырех базовых комплектаций: «домашний», «игровой», «офисный» и «экстрим». Известны средние затраты времени на сборку, проверку и подключение компьютеров. Каждый компьютер приносит определенный уровень прибыли, но спрос ограничен. Кроме того, в плановом периоде ограничен ресурс человеко-часов, отведенных на выполнение каждой производственной операции. Определить, сколько компьютеров каждого типа необходимо произвести в плановом периоде, имея целью максимизировать прибыль.
Задача 5. На лесопилку поступают доски длиной 10 м. По контракту лесопилка должна поставить клиенту не менее 100 досок длиной 5 м, не менее 200 досок длиной 4 м и не менее 300 досок длиной 3 м. Как работникам лесопилки выполнить условия контракта, разрезав наименьшее количество досок?
Помогаем с контрольными по линейному программированию
Задача 6. Компания «Евростройтур» организует экскурсионные автобусные туры по странам Европы. Компания получила 4 новых автобуса и предполагает направить их на маршруты во Францию, Италию, Чехию и Испанию.
Каждый автобус обслуживают 2 водителя. Компанией приглашены 8 водителей, в различной степени знакомых с дорогами европейских стран (в % от экскурсионного маршрута).
Необходимо распределить водителей так, чтобы общий показатель освоения маршрутов был максимальным.
Задача 7. Решить задачу методом ветвей и границ, решая отдельные задачи линейного нецелочисленного программирования с помощью функции «Поиск решения» в Microsoft Excel (в случае, если первая же задача ЛП выдает целочисленное решение, не позволяя ветвить задачу, немного изменить начальные условия).
Состав еды рядовых регламентируется верховной ставкой главнокомандующего, которая устанавливает нижние нормы питания в сутки по основным компонентам: 1500 килокалорий, 100 г белков, 280 г углеводов, 90 г жиров, 1 кг воды. На складах есть 4 вида продуктов, которые выдают защитникам Родины сухим пайком: лимонад, тушенка в маленьких банках, унифицированные наборы горбушек и пирожки с ежевикой. Стоимость этих четырех продуктов соответственно 12 руб., 34 руб., 3 руб. и 20 руб. Какова минимальная сумма, которую должен затратить прапорщик на питание одного солдата?
Задача 8. Предприятие выпускает два вида продукции: Изделие 1 и Изделие 2. На изготовление единицы Изделия 1 требуется затратить a11 кг сырья первого типа, a21 кг сырья второго типа, a31 кг сырья третьего типа.
На изготовление единицы Изделия 2 требуется затратить a12 кг сырья первого типа, a22 кг сырья второго типа, a32 кг сырья третьего типа.
Производство обеспечено сырьем каждого типа в количестве b1 кг, b2 кг, b3 кг соответственно.
Рыночная цена единицы Изделия 1 составляет c1 тыс. руб., а единицы Изделия 2 — c2 тыс.руб.
Требуется:
1) построить экономико – математическую модель задачи;
2) составить план производства изделий, обеспечивающий максимальную выручку от их реализации при помощи графического метода решения задачи линейного программирования.
3) составить план производства изделий, обеспечивающий максимальную выручку от их реализации при помощи табличного симплекс – метода решения задачи линейного программирования.
4) составить план производства изделий, обеспечивающий максимальную выручку от их реализации, используя надстройку «Поиск решения» в среде MS EXCEL.
Полезные ссылки
|
|
Задачи линейного программирования относятся к широко распространённому классу задач, встречающихся в различных сферах деятельности: в бизнесе, на производстве, в быту. Как оптимально распорядиться бюджетом или за минимальное время добраться до нужного места в городе, как наилучшим образом спланировать деловые встречи, минимизировать риски капитальных вложений, определить оптимальные запасы сырья на складе – это те задачи, в которых нужно найти наилучшее из всех возможных решений.
Если что-то непонятно — вы всегда можете написать мне в WhatsApp и я вам помогу!
Линейное программирование
Линейное программирование – это раздел математики, занимающийся разработкой методов отыскания экстремальных значений функции, на аргументы которой наложены ограничения. Слово «программирование» заимствовано из зарубежной литературы, где оно используется в смысле «планирование».
Решение задач линейного программирования с использованием microsoft excel
Цель работы
Приобретение навыков решения задач линейного программирования (ЛП) в табличном редакторе Microsoft Excel.
Порядок выполнения работы
Для модели линейного программирования, соответствующей номеру Вашего варианта, найдите оптимальное решение в табличном редакторе Microsoft Excel и продемонстрируйте его преподавателю.
Инструкция по использованию microsoft excel для решения задач линейного программирования
Для того чтобы решить задачу линейного программирования в табличном редакторе Microsoft Excel, необходимо выполнить следующие действия.
Ввести условие задачи:
a) создать экранную форму для ввода условия задачи:
- переменных,
- целевой функции (ЦФ),
- ограничений,
- граничных условий;
b) ввести исходные данные в экранную форму:
- коэффициенты ЦФ,
- коэффициенты при переменных в ограничениях,
- правые части ограничений;
c) ввести зависимости из математической модели в экранную форму:
- формулу для расчета ЦФ,
- формулы для расчета значений левых частей ограничений;
d) задать ЦФ (в окне «Поиск решения»):
- целевую ячейку,
- направление оптимизации ЦФ;
e) ввести ограничения и граничные условия (в окне «Поиск решения»):
- ячейки со значениями переменных,
- граничные условия для допустимых значений переменных,
- соотношения между правыми и левыми частями ограничений.
Решить задачу:
a) установить параметры решения задачи (в окне «Поиск решения»);
b) запустить задачу на решение (в окне «Поиск решения»);
с) выбрать формат вывода решения (в окне «Результаты поиска решения»).
Возможно эта страница вам будет полезна:
Одноиндексные задачи линейного программирования
Рассмотрим пример нахождения решения для следующей одноиндексной задачи ЛП:
Ввод исходных данных
Создание экранной формы и ввод в нее условия задачи
Экранная форма для ввода условий задачи (1.1) вместе с введенными в нее исходными данными представлена на рис. 1.1.
В экранной форме на рис. 1.1 каждой переменной и каждому коэффициенту задачи поставлена в соответствие конкретная ячейка в Excel. Имя ячейки состоит из буквы, обозначающей столбец, и цифры, обозначающей строку, на пересечении которых находится объект задачи линейного программирования. Так, например, переменным задачи (1.1) соответствуют ячейки , коэффициентам ЦФ соответствуют ячейки
правым частям ограничений соответствуют ячейки
Ввод зависимостей из математической модели в экранную форму
Зависимость для ЦФ
В ячейку F6, в которой будет отображаться значение ЦФ, необходимо ввести формулу, по которой это значение будет рассчитано. Согласно (1.1) значение ЦФ определяется выражением
Используя обозначения соответствующих ячеек в Excel (см. рис. 1.1), формулу для расчета ЦФ (1.2) можно записать как сумму произведений каждой из ячеек, отведенных для значений переменных задачи (ВЗ, СЗ, D3, ЕЗ), на соответствующую ячейку, отведенную для коэффициентов ЦФ (В6, С6, D6, Е6), то есть
Чтобы задать формулу (1.3) необходимо в ячейку F6 ввести следующее выражение и нажать клавишу «Enter»
где символ $ перед номером строки 3 означает, что при копировании этой формулы в другие места листа Excel номер строки 3 не изменится;
символ : означает, что в формуле будут использованы все ячейки, расположенные между ячейками, указанными слева и справа от двоеточия (например, запись В6:Е6 указывает на ячейки В6, С6, D6 и Е6). После этого в целевой ячейке появится 0 (нулевое значение) (рис. 1.2).
Примечание 1.1. Существует другой способ задания функций в Excel с помощью режима «Вставка функций», который можно вызвать из меню «Вставка» или при нажатии кнопки «» на стандартной панели инструментов. Так, например, формулу (1.4) можно задать следующим образом:
• курсор в поле F6;
• нажав кнопку ««, вызовите окно «Мастер функций — шаг 1 из 2»;
• выберите в окне «Категория» категорию «Математические»;
• в окне «Функция» выберите функцию СУММПРОИЗВ;
• в появившемся окне «СУММПРОИЗВ» в строку «Массив 1» введите выражение В$3:Е$3, а в строку «Массив 2» — выражение В6:Е6 (рис. 1.3);
• после ввода ячеек в строки «Массив 1» и «Массив 2» в окне «СУММПРОИЗВ» появятся числовые значения введенных массивов (см. рис. 1.3), а в экранной форме в ячейке F6 появится текущее значение, вычисленное по введенной формуле, то есть 0 (так как в момент ввода формулы значения переменных задачи нулевые).
Зависимости для левых частей ограничений
Левые части ограничений задачи (1.1) представляют собой сумму произведений каждой из ячеек, отведенных для значений переменных задачи (ВЗ, СЗ, D3, ЕЗ), на соответствующую ячейку, отведенную для коэффициентов конкретного ограничения (В 10, СЮ, D10, ЕЮ — 1-е ограничение; В11, С11, D11, El 1 — 2-е ограничение и В12, С12, D12, Е12 — 3-е ограничение). Формулы, соответствующие левым частям ограничений, представлены в табл. 1.1.
Как видно из табл. 1.1, формулы, задающие левые части ограничений задачи (1.1), отличаются друг от друга и от формулы (1.4) в целевой ячейке F6 только номером строки во втором массиве. Этот номер определяется той строкой, в которой ограничение записано в экранной форме. Поэтому для задания зависимостей для левых частей ограничений достаточно скопировать формулу из целевой ячейки в ячейки левых частей ограничений. Для этого необходимо:
• поместить курсор в поле целевой ячейки F6 и скопировать в буфер содержимое ячейки F6 (клавишами «Ctrl-Insert»);
• помещать курсор поочередно в поля левой части каждого из ограничений, то есть в F10, F11 и F12, и вставлять в эти поля содержимое буфера (клавишами «Shift-Insert») (при этом номер ячеек во втором массиве формулы будет меняться на номер той строки, в которую была произведена вставка из буфера);
• на экране в полях F10, F11 и F12 появится 0 (нулевое значение) (см. рис. 1.2).
Проверка правильности введения формул
Для проверки правильности введенных формул производите поочередно двойное нажатие левой клавиши мыши на ячейки с формулами. При этом на экране рамкой будут выделяться ячейки, используемые в формуле (рис. 1.4 и 1.5).
Задание ЦФ
Дальнейшие действия производятся в окне «Поиск решения», которое вызывается из меню «Сервис» (рис. 1.6):
• поставьте курсор в поле «Установить целевую ячейку»;
• введите адрес целевой ячейки $F$6 или сделайте одно нажатие левой клавиши мыши на целевую ячейку в экранной форме — это будет равносильно вводу адреса с клавиатуры;
• введите направление оптимизации ЦФ, щелкнув один раз левой клавишей мыши по селекторной кнопке «максимальному значению».
Ввод ограничений и граничных условий
Задание ячеек переменных
В окно «Поиск решения» в поле «Изменяя ячейки» впишите адреса $BS3:$E$3. Необходимые адреса можно вносить в поле «Изменяя ячейки» и автоматически путем выделения мышью соответствующих ячеек переменных непосредственно в экранной форме.
Задание граничных условий для допустимых значений переменных
В нашем случае на значения переменных накладывается только граничное условие неотрицательности, то есть их нижняя граница должна быть равна нулю (см. рис. 1.1).
• Нажмите кнопку «Добавить», после чего появится окно «Добавление ограничения» (рис. 1.7).
• В поле «Ссылка на ячейку» введите адреса ячеек переменных $BS3:$E$3. Это можно сделать как с клавиатуры, так и путем выделения мышью всех ячеек переменных непосредственно в экранной форме.
• В поле знака откройте список предлагаемых знаков и выберите >.
• В поле «Ограничение» введите адреса ячеек нижней границы значений переменных, то есть $В$4:$Е$4. Их также можно ввести путем выделения мышью непосредственно в экранной форме.
Задание знаков ограничений <. >, =
• Нажмите кнопку «Добавить» в окне «Добавление ограничения».
• В поле «Ссылка на ячейку» введите адрес ячейки левой части конкретного ограничения, например $F$10. Это можно сделать как с клавиатуры, так и путем выделения мышью нужной ячейки непосредственно в экранной форме.
• В соответствии с условием задачи (1.1) выбрать в поле знака необходимый знак, например =.
• В поле «Ограничение» введите адрес ячейки правой части рассматриваемого ограничения, например $Н$10.
• Аналогично введите ограничения: $F$11>=$Н$11, $F$12<=$H$12.
• Подтвердите ввод всех перечисленных выше условий нажатием кнопки ОК.
Окно «Поиск решения» после ввода всех необходимых данных задачи (1.1) представлено на рис. 1.6.
Если при вводе условия задачи возникает необходимость в изменении или удалении внесенных ограничений или граничных условий, то это делают, нажав кнопки «Изменить» или «Удалить» (см. рис. 1.6).
Решение задачи
Установка параметров решения задачи
Задача запускается на решение в окне «Поиск решения». Но предварительно для установления конкретных параметров решения задач оптимизации определенного класса необходимо нажать кнопку «Параметры» и заполнить некоторые поля окна «Параметры поиска решения» (рис. 1.8).
Параметр «Максимальное время» служит для назначения времени (в секундах), выделяемого на решение задачи. В поле можно ввести время, не превышающее 32 767 секунд (более 9 часов).
Параметр «Предельное число итераций» служит для управления временем решения задачи путем ограничения числа промежуточных вычислений. В поле можно ввести количество итераций, не превышающее 32 767.
Параметр «Относительная погрешность» служит для задания точности, с которой определяется соответствие ячейки целевому значению или приближение к указанным границам. Поле должно содержать число из интервала от 0 до 1. Чем меньше количество десятичных знаков во введенном числе, тем ниже точность. Высокая точность увеличит время, которое требуется для того, чтобы сошелся процесс оптимизации.
Параметр «Допустимое отклонение» служит для задания допуска на отклонение от оптимального решения в целочисленных задачах. При указании большего допуска поиск решения заканчивается быстрее.
Параметр «Сходимость» применяется только при решении нелинейных задач.
Установка флажка «Линейная модель» обеспечивает ускорение поиска решения линейной задачи за счет применение симплекс-метода.
Подтвердите установленные параметры нажатием кнопки «ОК».
Запуск задачи на решение
Запуск задачи на решение производится из окна «Поиск решения» путем нажатия кнопки «Выполнить».
После запуска на решение задачи линейного программирования на экране появляется окно «Результаты поиска решения» с одним из сообщений, представленных на рис. 1.9, 1.10 и 1.11.
Иногда сообщения, представленные на рис. 1.10 и 1.11, свидетельствуют не о характере оптимального решения задачи, а о том, что при вводе условий задачи в Excel были допущены ошибки, не позволяющие Excel найти оптимальное решение, которое в действительности существует (см. ниже подразд.1.3.5).
Если при заполнении полей окна «Поиск решения» были допущены ошибки, не позволяющие Excel применить симплекс-метод для решения задачи или довести ее решение до конца, то после запуска задачи на решение на экран будет выдано соответствующее сообщение с указанием причины, по которой решение не найдено. Иногда слишком малое значение параметра «Относительная погрешность» не позволяет найти оптимальное решение. Для исправления этой ситуации увеличивайте погрешность поразрядно, например от 0,000001 до 0,00001 и т.д.
В окне «Результаты поиска решения» представлены названия трех типов отчетов: «Результаты», «Устойчивость», «Пределы». Они необходимы при анализе полученного решения на чувствительность (см. ниже подразд.3.3). Для получения же ответа (значений переменных, ЦФ и левых частей ограничений) прямо в экранной форме просто нажмите кнопку «ОК». После этого в экранной форме появляется оптимальное решение задачи (рис. 1.12).
Целочисленное программирование
Допустим, что к условию задачи (1.1) добавилось требование целочисленности значений всех переменных. В этом случае описанный выше процесс ввода условия задачи необходимо дополнить следующими шагами.
• В экранной форме укажите, на какие переменные накладывается требование целочисленности (этот шаг делается для наглядности восприятия условия задачи) (рис. 1.13).
• В окне «Поиск решения» (меню «Сервис»—>»Поиск решения»), нажмите кнопку «Добавить» и в появившемся окне «Добавление ограничений» введите ограничения следующим образом (рис.1.14):
- в поле «Ссылка на ячейку» введите адреса ячеек переменных задачи, то есть $В$3:$Е$3;
- в поле ввода знака ограничения установите «целое»;
- подтвердите ввод ограничения нажатием кнопки «ОК».
На рис. 1.13 представлено решение задачи (1.1), к ограничениям которой добавлено условие целочисленности значений ее переменных.
Двухиндексные задачи линейного программирования
Двухиндексные задачи линейного программирования вводятся и решаются в Excel аналогично одноиндексным задачам. Специфика ввода условия двухиндексной задачи ЛП состоит лишь в удобстве матричного задания переменных задачи и коэффициентов ЦФ.
Рассмотрим решение двухиндексной задачи, суть которой заключается в оптимальной организации транспортных перевозок штучного товара со складов в магазины (табл. 1.2).
Целевая функция и ограничения данной задачи имеют вид
Экранные формы, задание переменных, целевой функции, ограничений и граничных условий двухиндексной задачи (1.5) и ее решение представлены на рис. 1.15, 1.16, 1.17 и в табл. 1.3.
Задачи с булевыми переменными
Частным случаем задач с целочисленными переменными являются задачи, в результате решения которых искомые переменные могут принимать только одно из двух значений: 0 или 1. Такие переменные в честь предложившего их английского математика Джорджа Буля называют булевыми. На рис. 1.18 представлена экранная форма с решением некоторой двухиндексной задачи с булевыми переменными.
Рис. 1.18. Решение двухиндексной задачи с булевыми переменными
Помимо задания требования целочисленности (см. подразд.1.3.2) при вводе условия задач с булевыми переменными необходимо:
• для наглядности восприятия ввести в экранную форму слово «булевы» в качестве характеристики переменных (см. рис. 1.18);
• в окне «Поиск решения» добавить граничные условия, имеющие смысл ограничения значений переменных по их единичной верхней границе (рис. 1.19).
Вид окна «Поиск решения» для задачи с булевыми переменными, представленной на рис. 1.18, приведен на рис. 1.20.
Возможные ошибки при вводе условий задач линейного программирования
Если при решении задачи линейного программирования выдается сообщение о невозможности нахождения решения, то возможно, что причина заключается в ошибках ввода условия задачи в Excel.
Как решить задачу линейного программирования в excel
Цель работы
Приобретение навыков решения задач линейного программирования (ЗЛП) в табличном редакторе Microsoft Excel. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ
Для модели линейного программирования, соответствующей номеру Вашего варианта, найдите оптимальное решение в табличном редакторе Microsoft Excel и продемонстрируйте его преподавателю.
Инструкция по использованию microsoft excel для решения задач линейного программирования
Для того чтобы решить ЗЛП в табличном редакторе Microsoft Excel, необходимо выполнить следующие действия. 1. Ввести условие задачи:
a) создать экранную форму для ввода условия задачи:
- • переменных,
- • целевой функции (ЦФ),
- • ограничений,
- • граничных условий;
b) ввести исходные данные в экранную форму:
- • коэффициенты ЦФ,
- • коэффициенты при переменных в ограничениях,
- • правые части ограничений;
c) ввести зависимости из математической модели в экранную форму:
- • формулу для расчета ЦФ,
- • формулы для расчета значений левых частей ограничений; с!) задать ЦФ (в окне «Поиск решения»):
- • целевую ячейку,
- • направление оптимизации ЦФ;
е) ввести ограничения и граничные условия (в окне «Поиск решения»):
- • ячейки со значениями переменных,
- • граничные условия для допустимых значений переменных,
- • соотношения между правыми и левыми частями ограничений. 2. Решить задачу:
a)установить параметры решения задачи (в окне «Поиск решения»,);
b) запустить задачу на решение (в окне «Поиск решения»,);
c) выбрать формат вывода решения (в окне «Результаты поиска решения»).
Одноиндексные ЗЛП
Рассмотрим пример нахождения решения для следующей одноиндексной ЗЛП:
- Ввод исходных данных
Создание экранной формы и ввод в нее условия задачи
Экранная форма для ввода условий задачи (1) вместе с введенными в нее исходными данными представлена на рис.1.
В экранной форме на рис. 1 каждой переменной и каждому коэффициенту задачи поставлена в соответствие конкретная ячейка в Excel. Так, например, переменным задачи (1) соответствуют ячейки
коэффициентам ЦФ соответствуют ячейки
правым частям ограничений соответствуют ячейки
- Ввод зависимостей из математической модели в экранную форму
Зависимость для ЦФ.
В ячейку F6, в которой будет отображаться значение ЦФ, необходимо ввести формулу, по которой это значение будет рассчитано. Согласно (1 (значение ЦФ определяется выражением
Используя обозначения соответствующих ячеек в Excel (см. рис. 1), формулу для расчета ЦФ (2) можно записать как сумму произведений каждой из ячеек, отведенных для значений переменных задачи (ВЗ, СЗ, D3, ЕЗ), на соответствующую ячейку, отведенную для коэффициентов ЦФ (В6, С6, D6,E6):
После этого в целевой ячейке появится 0 (нулевое значение) (рис. 2).
Зависимости для левых частей ограничений
Левые части ограничений задачи (1) представляют собой сумму произведений каждой из ячеек, отведенных для значений переменных задачи(ВЗ, СЗ, D3, ЕЗ), на соответствующую ячейку, отведенную для коэффициентов конкретного ограничения (B10, С10, D10, Е10 — 1-е ограничение; В11, C11,D11, Е11 — 2-е ограничение и В12, С12, D12, Е12 — 3-е ограничение). Формулы, соответствующие левым частям ограничений, записать самостоятельно. Проверка правильности введения формул
Для проверки правильности введенных формул производите поочередно двойное нажатие левой клавиши мыши на ячейки с формулами. При этом на экране рамкой будут выделяться ячейки, используемые в формуле. Дальнейшие действия производятся в окне «Поиск решения», которое вызывается из меню «Сервис». Решение задачи
Установка параметров решения задачи
Задача запускается на решение в окне «Поиск решения». Но предварительно для установления конкретных параметров решения задач оптимизации определенного класса необходимо нажать кнопку «Параметры»и заполнить некоторые поля окна «Параметры поиска решения».
Параметр «Максимальное время» служит для назначения времени (в секундах), выделяемого на решение задачи. В поле можно ввести время, не превышающее 32 767 секунд (более 9 часов).
Параметр «Предельное число итераций» служит для управления временем решения задачи путем ограничения числа промежуточных вычислений. В поле можно ввести количество итераций, не превышающее32 767. Параметр «Относительная погрешность» служит для задания точности, с которой определяется соответствие ячейки целевому значению или приближение к указанным границам. Поле должно содержать число из интервала от 0 до 1. Чем меньше количество десятичных знаков во введенном числе, тем ниже точность. Высокая точность увеличит время, которое требуется для того, чтобы сошелся процесс оптимизации.
Параметр «Допустимое отклонение» служит для задания допуска на отклонение от оптимального решения в целочисленных задачах. При указании большего допуска поиск решения заканчивается быстрее. Параметр «Сходимость» применяется только при решении нелинейных задач. Установка флажка «Линейная модель» обеспечивает ускорение поиска решения линейной задачи за счет применение симплекс-метода. Подтвердите установленные параметры нажатием кнопки «ОК». Запуск задачи на решение
Запуск задачи на решение производится из окна «Поиск решения» путем нажатия кнопки «Выполнить».
После запуска на решение задачи линейного программирования на экране появляется окно «Результаты поиска решения» с одним из сообщений:
• Сообщение об успешном решении задачи
• Сообщение при несовместной системе ограничений задачи
• Сообщение при неограниченности ЦФ в требуемом направлении Иногда второе и третье сообщения свидетельствуют не о характере оптимального решения задачи, а о том, что при вводе условийзадачи в Excel были допущены ошибки, не позволяющие Excel найти оптимальное решение, которое в действительности существует.
Если при заполнении полей окна «Поиск решения» были допущены ошибки, не позволяющие Excel применить симплекс-метод для решения задачи или довести ее решение до конца, то после запуска задачи на решение на экран будет выдано соответствующее сообщение с указанием причины, по которой решение не найдено. Иногда слишком малое значение параметра»Относительная погрешность» не позволяет найти оптимальное решение. Для исправления этой ситуации увеличивайте погрешность поразрядно, например от 0,000001 до 0,00001 и т.д.
В окне «Результаты поиска решения» представлены названия трех типов отчетов: «Результаты», «Устойчивость», «Пределы». Они необходимы при анализе полученного решения на чувствительность (будет рассмотрено позже). Для получения же ответа (значений переменных, ЦФ и левых частей ограничений) прямо в экранной форме просто нажмите кнопку «ОК». После этого в экранной форме появляется оптимальное решение задачи (рис.3).
Целочисленное программирование
Допустим, что к условию задачи (1) добавилось требование целочисленности значений всех переменных. В этом случае описанный выше процесс ввода условия задачи необходимо дополнить следующими шагами.
• В экранной форме укажите, на какие переменные накладывается требование целочисленности (этот шаг делается для наглядности восприятия условия задачи) (рис. 4).
• В окне «Поиск решения» (меню «Сервис»—►»Поиск решения»), нажмите кнопку «Добавить» и в появившемся окне «Добавление ограничений» введите ограничения целочисленности. Сравните результаты.
Получите у преподавателя индивидуальные задания.
Примеры решения экономических задач Задача 1.
Средства очистки пола оценивают по следующим трем показателям:
- • очищающие свойства;
- • дезинфицирующие свойства;
- • раздражающее воздействие на кожу.
Каждый из этих показателей измеряется по линейной шкале от 0 до 100. Продукт на рынке должен иметь по крайней мере 60 ед. очищающих свойств и по крайней мере 60 ед. дезинфицирующих свойств по соответствующей шкале. При этом раздражающее воздействие на кожу должно быть минимальным. Конечный продукт должен быть смесью трех основных очистителей, характеристики которых приведены в таблице.
Составим математическую модель задачи. Пусть — доля очистителя в конечном продукте, — доля очистителя в конечном продукте, — доля очистителя в конечном продукте.
Целевая функция: (т.е. минимизируем раздражающее воздействие на кожу конечного продукта).
Ограничения:
Решение задачи с помощью MS Excel.
Заполним таблицу, содержащую исходные данные. Заполним диалоговое окно
«Поиск решения».
Щелкнув по кнопке ОК, мы получаем на месте исходной таблицы — таблицу с найденными оптимальными значениями. В результате в таблице получим значение целевой функции — 31,4 ед. раздражающего воздействия на кожу при
(т.е. очистители нужно брать в долях 30%, 10% и 60% соответственно).
Задача 2.
Фирме требуется уголь с содержанием фосфора не более 0,03% и с примесью пепла не более 3,25%. Доступны 3 сорта угля по следующим ценам (за тонну):
Как следует их смешать, чтобы удовлетворить ограничениям на примеси и минимизировать цену?
Решение задач математического программирования с помощью надстройки «Поиск решения» ЭТ Excel
Задачи линейного программирования, целочисленного программирования и ряд задач нелинейного программирования могут быть решены с помощью стандартного прикладного программного обеспечения. Например, в ЭТ MS Excel для этого имеется модуль «Поиск решения», вызываемый командой меню «Сервис/Поиск решения». Для активизации данного модуля необходимо выполнить команду «Сервис/Надстройки» и установить флажок напротив строки меню «Поиск решения».
Рассмотрим пример применения «Поиска решения» на основе решения задачи оптимизации портфеля ценных бумаг — одной из классических задач управления финансовыми средствами.
Постановка задачи. Перед инвестором стоит задача на основе информации, представленной в таблице 1, разместить имеющиеся средства так, чтобы получить максимальную прибыль за 1 период планирования (1 год), при этом должны быть выполнены следующие условия:
- Суммарный объем капитала составляет 100 000 $;
- доля средств, вложенная в один из объектов, не может превышать 25%;
- более 40% всех средств должны быть вложены в долгосрочные активы;
- доля высокорисковых активов не может превышать трети от суммарного объема.
Таблица 1 — Информация об объектах инвестирования
Построим экономико-математическую модель задачи.
Искомые переменные — объемы средств, вложенные в активы: .
Прибыль, которую получит инвестор, задается целевой функцией:
Сформируем ограничения:
Ограничения на суммарный объем активов —
Ограничение на размер доли каждого актива
Необходимость долгосрочного инвестирования (например, более 3 лет)
Учет необходимости снижения риска —
Естественное экономическое ограничение — неотрицательность искомых переменных —
Для решения задачи выполним следующие шаги.
- На рабочем листе представим необходимую для решения информацию, согласно рисунку 1.
Ячейки В13, Н9-Н11 должны содержать формулы, отражающие зависимость между искомыми переменными и условиями задачи. В данном случае целесообразно использовать функцию Суммпроизв(…), аргументами которой являются диапазоны B4-G4 и диапазоны соответствующих параметров.
Рисунок 1 — Исходные данные для решения ЗЛП
- Выполнить команду Сервис/Поиск решения и заполнить все поля диалогового окна:
Указать адрес ячейки (В 13), содержащей целевую функцию, указать тип целевой функции,
В поле «изменяя ячейки» указать адреса всех искомых переменных (от В4 до G4).
Затем последовательно заполнить все ограничения (Пример на рисунке 2.)
Если возникли ошибки ввода, то изменить или добавить ограничение можно с помощью командных кнопок «Добавить, изменить, удалить».
Далее, если это необходимо, устанавливаются особые значения параметров (кнопка «Параметры»).
Результаты отражаются на рабочем листе. Результаты решения представлены на рисунке 5.
Рисунок 5 — Результаты решения задачи
На рисунке 6 представлена структура инвестиционного портфеля.
На основе решения проводится анализ, и принимаются соответствующие управленческие решения.
Технология решения транспортной задачи
1. На рабочем листе представим необходимую для решения информацию, согласно рисунку 7.
Ячейки В15 содержит формулу Суммпроизв(…), аргументами которой являются диапазоны В4-Е6 и В9-Е11. Ячейки F9-F11 должны содержать формулы, отражающие зависимость между искомыми переменными и условиями задачи. В данном случае целесообразно использовать функцию Сумм(…), аргументами которой являются диапазоны В9-Е9, В10-Е 10 и В11 -Е11. Аналогично определяются формулы в В12-Е 12.
Рисунок 7 — Исходные данные для решения ЗЛП
- Выполнить команду Сервис/Поиск решения и заполнить все поля диалогового окна:
Указать адрес ячейки (В 15), содержащей целевую функцию, указать тип целевой функции (минимум),
В поле «изменяя ячейки» указать адреса всех искомых переменных (от В9 до Е11).
Затем последовательно заполнить все ограничения (Пример на рисунке 8.)
Если возникли ошибки ввода, то изменить или добавить ограничение можно с помощью командных кнопок «Добавить, изменить, удалить». Результаты отражаются на рабочем листе. Результаты решения представлены на рисунке 9.
Технология решения задачи нелинейного программирования
Построить математическую модель и решить задачу потребительского выбора для заданной функции полезности на товары , ценах и
доходе I. Найти максимальное значение функции полезности.
Построим математическую модель задачи потребительского выбора:
где — число потребляемых товаров или благ, — потребительский набор, — функция полезности потребителя.
Набор, который является решением задачи потребительского выбора, называется оптимальным потребительским набором, или точкой локального рыночного равновесия потребителя. Поставленная задача — задача потребительского выбора — является задачей нелинейного программирования.
- На рабочем листе представим необходимую для решения информацию, согласно рисунку 10.
Ячейки В5, В6 должны содержать формулы, отражающие зависимость между искомыми переменными и условиями задачи. В данном случае ячейка В5 содержит формулу «=D2B2+E2C2», а ячейка В6 содержит формулу «=2В2Л(3/4)(С2-4)А(1/4)».
Рисунок 10 — Исходные данные для решения ЗНП
- Выполнить команду Сервис/Поиск решения и заполнить все поля диалогового окна:
Аналитическое решение задачи нелинейного программирования.
В рассматриваемом случае ограничение можно записать в виде строгого равенства, так как оптимальное решение достигается при полном использовании имеющихся средств.
Для решения классической задачи нелинейного программирования применим метод множителей Лагранжа, для этого составим функцию Лагранжа:
Найдем точки экстремума функции Лагранжа.
Приравняем каждое уравнение к 0:
С помощью преобразований — разделим первое уравнение системы на второе, перейдем к системе:
Подставим второе уравнение в первое и построим аналитические функции спроса:
Максимальное значение функции полезности-
Решением задачи потребительского выбора будет набор
Возможно эти страницы вам будут полезны:
- Решение задач по математическому программированиюПримеры решения задач по математическому программированиюЗаказать работу по математическому программированиюПомощь по математическому программированиюЗадачи математического программированияЗадача линейного программированияРешение задач по линейному программированиюМетоды решения задач линейного программированияГрафическое решение задач линейного программированияГрафический метод решения задач линейного программированияЗаказать работу по линейному программированиюПомощь по линейному программированиюКонтрольная работа по линейному программированиюКурсовая работа по линейному программированию
Найденные решения (значения изменяемых ячеек) можно сохранить в качестве сценария. Для этого нужно:
- В диалоговом окне Результаты поиска решения выбрать Сохранить сценарий.
- В поле Название сценария ввести имя сценария. Просмотреть сценарии можно с помощью команды Данные > Работа с данными > Анализ что-если > Диспетчер сценариев > Сценарии.
С помощью программы Поиск решения можно создать три типа отчетов по результатам, полученным при успешном завершении процедуры решения.
Каждый отчет создается на отдельном листе текущей рабочей книги.
Для создания отчета надо в диалоговом окне Результаты поиска решения выбрать нужный тип отчета в поле Тип отчета. Можно выбрать сразу несколько типов (при выделении нескольких строк используется клавиша ).
- Результаты – отчет содержит целевую ячейку, список изменяемых ячеек, их исходные и конечные значения, ограничения и сведения о них.
- Устойчивость – отчет содержит сведения о степени зависимости модели от изменений величин, входящих в формулы, применяемые в задаче (формулы модели и формулы ограничений).
- Пределы – выводится целевая ячейка и ее значение, а также список изменяемых ячеек, их значений, нижних и верхних пределов и целевых результатов.
Рассмотрим применение процессора Excel для решения ЗЛП на примерах.
Задача 1. Планирование производства
Модель линейного программирования дает возможность определить наиболее выгодную производственную программу выпуска нескольких видов продукции при заданных ограничениях на ресурсы.
МП выпускает товары х1,х2,х3,х4, получая от реализации каждого прибыль в 60,70,120,130 руб. соответственно. Затраты на производство приведены в таблице.
Затраты | х1 | х2 | x3 | х4 | Всего |
---|---|---|---|---|---|
Трудовые | 1 | 1 | 1 | 1 | 16 |
Сырьевые | 6 | 5 | 4 | 1 | 110 |
Финансы | 4 | 6 | 10 | 13 | 100 |
- Максимум прибыли в зависимости от оптимального распределения затрат.
- Минимум ресурсов, необходимых для получения максимальной прибыли.
Решение задачи средствами Excel состоит из 4 этапов:
- Создание математической модели задачи ЛП.
- Создание формы для ввода условий задачи, ввод в неё исходных данных и зависимостей из математической модели.
- Ввод данных из формы в окно Excel Поиск решения из меню Данные.
- Задание параметров поиска и решение задачи.
Создание математической модели задачи
Составим математическую модель процесса по описанию задачи:
— целевая функция прибыли.
— граничные условия модели, так как количество производимых товаров не может быть отрицательной величиной.
Для решения данной задачи c помощью программы MS Excel создадим новую книгу с именем Линейное программирование и изменим имя ее первого рабочего листа на Задача о производстве.
Создание формы
- Составление формы в виде:
A | B | C | D | E | F | G | H | |
---|---|---|---|---|---|---|---|---|
1 | Переменная | х7 | х2 | x3 | х4 | Формула | Знак | Св.член |
2 | Значение | |||||||
3 | Коэф. ЦФ | 60 | 70 | 120 | 130 | =СУММПРОИЗВ(В$2:Е$2;В3:Е3) | Max | |
4 | Трудовые | 1 | 1 | 1 | 1 | =СУММПРОИЗВ(В$2:Е$2;В4:Е4) | 16 | |
5 | Сырьевые | 6 | 5 | 4 | 1 | =СУММПРОИЗВ(В$2:Е$2;В5:Е5) | 110 | |
6 | Финансы | 4 | 6 | 10 | 13 | =СУММПРОИЗВ(В$2:Е$2;В6:Е6) | 100 |
- Запись в ячейки В3:Е3 коэффициентов целевой функции F (1), в В4:Е6 коэффициентов из системы ограничений (2) и в ячейки Н4:Н6 – свободных членов из системы (2).
- Ввод формул с помощью fx – Мастера функций.
Для ввода формулы в целевую ячейку (целевой функции): щелкнуть левой клавишей мыши по ячейке F3 , затем по значку Мастера функций fx на панели инструментов, в появившемся окне «Мастер функций, Шаг 1» выбрать категорию «Математические», далее выбрать функцию СУММПРОИЗВ, нажать клавишу ОК, в окне «Мастер функций Шаг 2» в поле Массив 1 ввести с клавиатуры В2:Е2 (ячейки, в которых будут варьироваться х1..х4), в поле Массив 2 ввести В3:Е3 (коэффициенты целевой функции ЦФ).
Примечание. Можно вводить В2:Е2 не с клавиатуры, а поставить курсор в окно Массив 1, а затем протащить курсор при нажатой левой клавише мыши по ячейкам В2:Е2, имена ячеек сами запишутся в окно. Аналогично поступить с полем Массив 2.
Нажать клавишу ОК, в ячейку F3 запишется формула 60х1+70х2+120х3+ 130х4 в виде СУММПРОИЗВ(В2:Е2;В3:Е3).
Чтобы не вводить формулы в другие ячейки, необходимо изменить тип адресации для ячеек В2:Е2 с относительной на абсолютную $B$2:$E$2 , установив курсор перед нужным адресом B2 и нажав функциональную клавишу F4 , затем повторить эти действия для адреса E2 . Формула примет следующий вид:
После внесенных изменений необходимо скопировать формулу в ячейки F4:F6 c помощью маркера заполнения. Для этого необходимо выделить ячейку F3 , содержащую нужную формулу, установить указатель мыши на черный квадратик в правом нижнем углу ячейки (он примет форму черного крестика) и протащить с помощью левой кнопки мыши на весь требуемый диапазон.
В результате копирования мы увидим следующие формулы:
- в ячейке F4 – СУММПРОИЗВ($В$2:$Е$2;В4:Е4),
- в ячейке F5 – СУММПРОИЗВ($В$2:$Е$2;В5:Е5),
- в ячейке F6 – СУММПРОИЗВ($В$2:$Е$2;В6:Е6).
Заполнение окна Поиск решения
Выбрать в пункте меню Данные команду Поиск решения, поставить курсор в поле целевой функции, выделить ячейку F3 в форме (или ввести F3 с клавиатуры), поставить переключатель в положение «Максимальному значению» (см. рис. 12.1 рис. 12.1). В поле «Изменяя ячейки» ввести $В$2:$Е$2(с клавиатуры или протащив мышью).
Нажать клавишу «Добавить», в окне «Добавление ограничения» в поле «Ссылка на ячейку» ввести F4 , выбрать через «стрелка вниз» знак ««, в поле справа ввести Н4 (рис. 12. рис. 12.2).
Аналогично через «Добавить» ввести , для системы ограничений (2), а также , , и .
Также необходимо добавить ограничения для получения целочисленных величин по количеству товаров: B2=цел, C2=цел, D2=цел и Е2=цел.
После ввода последнего граничного условия вместо «Добавить» нажать клавишу ОК, появится окно «Поиск решения».
Для изменения или удаления ограничений и граничных условий используются клавиши Изменить, Удалить.
Параметры поиска
В окне «Поиск решения» нажать клавишу «Параметры», выбрать по умолчанию Максимальное время – 100 с, число итераций – 100 (для большинства задач это количество просчётов подходит с большим запасом), установить флажок в строке «Линейная модель», нажать ОК, в появившемся окне Поиск Решения нажать Выполнить (рис. 12. рис. 12.3).
Результаты поиска решения с таблицей результатов:
A | B | C | D | E | F | G | H | |
---|---|---|---|---|---|---|---|---|
1 | Переменная | X1 | X2 | X3 | X4 | Формула | Знак | Св.член |
2 | Значение | 10 | 0 | 6 | 0 | |||
3 | Коэф. ЦФ | 60 | 70 | 120 | 130 | 1320 | Max | |
4 | Трудовые | 1 | 1 | 1 | 1 | 16 | 16 | |
5 | Сырьевые | 6 | 5 | 4 | 1 | 84 | 110 | |
6 | Финансы | 4 | 6 | 10 | 13 | 100 | 100 |
Таким образом оптимальный план Х(Х1,Х2,Х3,Х4)=(10,0,6,0) при минимальном использовании ресурсов
- Трудовые – 16 (У1)
- Сырьевые – 84 (У2)
- Финансы – 100 (У3)
даёт максимум прибыли F в 1320 руб.
Вывод: Максимальная прибыль F в 1320 руб. получается при выпуске только товаров Х1 и Х3 в количестве 10 и 6 штук соответственно, товары Х3 и Х4 выпускать не нужно (это приведёт к снижению прибыли). Трудовые (У1) и финансовые (У3) ресурсы используются полностью, по сырьевым ресурсам (У2) есть запас в 110-84=26 ед.
Кроме того, это означает, что изменение трудовых ( y1 ) и финансовых ( y3 ) ресурсов приведёт к изменению прибыли F , а изменение сырьевых ресурсов ( y2 ) – нет.
Разности между плановыми ресурсами и использованными являются двойственными переменными y1, y2 и y3 сопряжённой задачи линейного программирования. В данном случае y1=y3=0 , а y2=26 ед. Таким образом, ресурс y2 можно уменьшить на 26 ед., тогда план по сырью тоже будет оптимальным.
Задача 2. Задача об оптимальной диете
Имеется n видов продуктов питания, в которых содержится m типов питательных веществ (белки, жиры, углеводы). В одной весовой единице продукта i-го типа содержится аi единиц питательного вещества j-го вида . Известна минимальная суточная потребность b j (j in <1,2. т>) человека в каждом из видов питательных веществ. Задана калорийность сi одной весовой единицы i-го продукта ( i принадлежит <1, 2, . n>).
Требуется определить оптимальный состав рациона продуктов, такой, чтобы каждое питательное вещество содержалось в нем в необходимом количестве, обеспечивающем суточную потребность человека, и при этом суммарная калорийность рациона была минимальной.
Ведем в рассмотрение следующие переменные: х – весовое количество продукта питания i-го типа в суточном рационе.
Тогда в общем случае математическая постановка задачи об оптимальной диете может быть сформулирована следующим образом:
где множество допустимых альтернатив формируется следующей системой ограничений типа неравенств:
Для решения задачи об оптимальной диете с помощью программы MS Excel необходимо задать конкретные значения параметрам исходной задачи.
Для определенности предположим, что в качестве исходных типов продуктов рассматриваются: хлеб, мясо, сыр, бананы, огурцы, помидоры, виноград ( n = 7), а в качестве питательных веществ рассматриваются белки, жиры, углеводы ( m = 3).
Калорийность одной весовой единицы каждого из продуктов следующая:с1 = 2060,с2= 2430,с3= 3600,с4= 890,с5= 140,с6= 230, с7 = 650. Содержание питательных веществ в каждом из продуктов может быть задано в форме нижеприведенной таблицы.
Минимальная суточная потребность в питательных веществах следующая: в белках b 1 = 100, в жирах b 2= 70, в углеводах b3 = 400.
Для решения данной задачи c помощью программы MS Excel создадим новую книгу с именем Линейное программирование и изменим имя ее второго рабочего листа на Задача о диете.
Таблица 1. Содержание питательных веществ в продуктах питания
Продукты/питательные вещества | Хлеб ржаной | Мясо баранина | Сыр «Российский» | Банан | Огурцы | Помидоры | Виноград |
---|---|---|---|---|---|---|---|
Белки | 61 | 220 | 230 | 15 | 8 | 11 | 6 |
Жиры | 12 | 172 | 290 | 1 | 1 | 2 | 2 |
Углеводы | 420 | 0 | 0 | 212 | 26 | 38 | 155 |
Создание математической модели задачи
Составим математическую модель процесса по описанию задачи:
– целевая функция (суммарная калорийность продуктов).
– граничные условия
Создание формы
Для решения поставленной задачи выполним следующие подготовительные действия:
- Внесем необходимые надписи в ячейки A1:I1, A2:A7, B4, I4, J4 .
- В ячейки ВЗ:НЗ введем значения коэффициентов целевой функции: с1 = 2060, с2 = 2430, с3 = 3600, с4 = 890, с5 = 140, с6 = 230, с7 = 650.
- В ячейку I2 введем формулу: =СУММПРОИЗВ( b 2:Н2;B3:H3), которая представляет целевую функцию (4).
- В ячейки В5:Н7 введем значения коэффициентов ограничений, взятых из таблицы.
- В ячейки J5 :J7 введем значения правых частей ограничений, соответствующих минимальной суточной потребности в питательных веществах: в белках b 1=100 , жирах b 2= 70 и углеводах b3 = 400.
- В ячейку I5 введем формулу: =СУММПРОИЗВ($B$2:$H$2;В5:Н5), которая представляет левую часть первого ограничения (5).
- Скопируем формулу, введенную в ячейку I5 , в ячейки I6 и I7 .
- Внешний вид рабочего листа MS Office Excel с исходными данными для решения задачи об оптимальном рационе питания имеет следующий вид (pиc. 12.4).
Для отображения формул в ячейках рабочего листа необходимо выполнить команду меню: Формулы и на панели инструментов в группе Зависимости формул выбрать Показать формулы.
Заполнение окна Поиск решения
Для дальнейшего решения задачи следует вызвать мастер поиска решения, для чего необходимо выполнить операцию: Данные > Поиск решения.
После появления диалогового окна Поиск решения следует выполнить следующие действия:
- В поле с именем Установить целевую ячейку: ввести абсолютный адрес ячейки $I$2 .
- Для группы Равной: выбрать вариант поиска решения – минимальному значению.
- В поле с именем Изменяя ячейки: ввести абсолютный адрес ячеек $B$2:$H$2 .
- Добавить 3 ограничения, представляющие минимальные суточные потребности в питательных веществах. С этой целью выполнить следующие действия:
- для задания первого ограничения в исходном диалоговом окне Поиск решения нажать кнопку с надписью Добавить (рис. 12.5 рис. 12.5, а);
- в появившемся дополнительном окне выбрать ячейку $I$5 , которая должна отобразиться в поле с именем Ссылка на ячейку;
- в качестве знака ограничения из выпадающего списка выбрать нестрогое неравенство » «;
- в качестве значения правой части ограничения выбрать ячейку $J$5 ;
- для добавления первого ограничения в дополнительном окне нажать кнопку с надписью Добавить;
- аналогичным образом задать оставшиеся два ограничения (рис. 12.5 рис. 12.5, б).
Параметры
В окне «Поиск решения» нажать клавишу «Параметры», выбрать «Поиск решения Линейных задач симплекс-методом», нажать ОК, затем нажать Найти Решение (рис. 12.6 рис. 12.6, б).
После задания ограничений и целевой функции можно приступить к поиску численного решения, для чего следует нажать кнопку Выполнить. После выполнения расчетов программой MS Excel будет получено количественное решение, которое имеет вид, представленный на рис. 12. рис. 12.7.
Результатом решения задачи об оптимальной диете являются найденные оптимальные значения переменных: х1 = 0, х2 = 0,211, 3 = 0,109, х4= 1,887, х5 = 0, х6 = 0, х7 = 0, которым соответствует значение целевой функции: fопт= 2587,140. При выполнении расчетов для ячеек В2:I2 был выбран числовой формат с 3 знаками после запятой.
Анализ найденного решения показывает, что для удовлетворения суточной потребности в питательных веществах (белки, жиры, углеводы) следует использовать 211 г мяса баранины, 109 г сыра и 1887 г бананов, совсем отказавшись от хлеба, огурцов, помидоров и винограда. При этом общая калорийность найденной оптимальной диеты будет приближенно равна 2590 ккал, что вполне соответствует малоактивному образу жизни без серьезных физических нагрузок. Напомним, что согласно медицинским данным, энергетические затраты работников интеллектуального труда (юристы, бухгалтера, врачи, педагоги) лежат в пределах 3000 ккал.
ЗАДАНИЕ
- Составить математическую модель задачи линейного программирования.
- Решить задачу линейного программирования в Excel с помощью Поиска решения.
- Сохранить в виде модели установочные параметры.
Предприятие легкой промышленности выпускает две модели машин, причем каждая модель производится на отдельной технологической линии. Суточный объем производства первой линии – 80 изделий, второй линии – 85 изделий. На машину первой модели расходуются 12 однотипных элементов электронных схем, на машину второй модели – 6 таких же элементов. Максимальный суточный запас используемых элементов равен 800 единицам. Прибыль от реализации одной машины первой и второй моделей равна $30 и $40 соответственно. Определить оптимальный суточный объем производства первой и второй моделей.
Процесс изготовления двух видов промышленных изделий состоит в последовательной обработке каждого из них на трех приборах. Время использования этих приборов для производства данных изделий ограничено 10 ч. в сутки. Найти оптимальный объем производства изделий каждого вида.
Фирма имеет возможность рекламировать свою продукции, используя местные радио- и телевизионную сеть. Затраты на рекламу в бюджете фирмы ограничены $1000 в месяц. Каждая минута радиорекламы обходится в $5, а минута телерекламы – в $100. Фирма хотела бы использовать радиосеть, по крайней мере, в два раза чаще, чем сеть телевидения. Опыт прошлых лет показал, что объем сбыта, который обеспечивает каждая минута телерекламы, в 25 раз больше сбыта, обеспечиваемого одной минутой радиорекламы. Определить оптимальное распределение ежемесячно отпускаемых средств между радио- и телерекламой.
Фирма производит два вида продукции – А и B . Объем сбыта продукции вида A составляет не менее 70% общего объема реализации продукции обоих видов. Для изготовления продукции А и В используется одно и то же сырье, суточный запас которого ограничен величиной 120 кг. Расход сырья на единицу продукции A составляет 3 кг, а на единицу продукции В – 5 кг. Цены продукции А и В равны $20 и $60 соответственно. Определить оптимальное распределение сырья для изготовления продукции А и В.
Фирма выпускает женские шляпы двух фасонов. Трудоемкость изготовления шляпы фасона 1 вдвое выше трудоемкости изготовления шляпы фасона 2. Если бы фирма выпускала только шляпы фасона 1, суточный объем производства мог бы составить 60 шляп. Суточный объем сбыта шляп обоих фасонов ограничен диапазоном от 50 до 100 штук. Прибыль от продажи шляпы фасона 1 равна $6, а фасона 2 – $7. Определить какое количество шляп каждого фасона следует изготавливать, чтобы максимизировать прибыль.
Изделия четырех типов проходят последовательную обработку на двух станках. Время обработки одного изделия каждого типа на каждом из станков:
Затраты на производство одного изделия каждого типа определяются как величины, прямо пропорциональные времени использования станков (в машино-часах). Стоимость машино-часа составляет $10 и $15 для станка 1 и 2 соответственно. Допустимое время для использования станков для обработки изделий всех типов ограничено следующими значениями: 500 машино-часов – для станка 1 и 380 машино-часов для станка 2. Цены изделий типов 1,2,3 и 4 равны $65, $70, $55 и $45 соответственно. Составить план производства, максимизирующий чистую прибыль.
Завод выпускает изделия трех моделей ( I, II III ) Для их изготовления используется два вида ресурсов (А и В), запасы которых составляют – 5000 и 6000 единиц. Расходы ресурсов на одно изделие каждой модели:
Трудоемкость изготовления модели I вдвое больше, чем изделия модели II , и втрое больше, чем изделие модели III . Численность рабочих завода позволяет выпускать 1500 изделий I . Анализ условий сбыта показывает, что минимальный спрос на продукцию завода составляет 200, 200 и 150 изделий моделей I,II и III соответственно. Однако соотношение выпуска изделий моделей I,II и III должно быть равно 3:2:5. Удельная прибыль от реализации изделий моделей I,II и III составляет $30, $20 и $50 соответственно. Определить выпуск изделий, максимизирующий прибыль.
Требуется распределить имеющиеся денежные средства по четырем альтернативным вариантам. Игра имеет три исхода. Ниже приведены размеры выигрыша (или проигрыша) на каждый доллар, вложенный в соответствующий альтернативный вариант, для любого из трех исходов. У игрока имеется $500, причем, использовать в игре их можно только один раз. Точный исход игры заранее неизвестен, и, учитывая эту неопределенность, игрок решил распределить деньги так, чтобы максимизировать максимальную отдачу от этой суммы.
Бройлерное хозяйство птицеводческой фермы насчитывает 80000 цыплят, которые выращиваются до 8-недельного возраста и после соответствующей обработки поступают в продажу. Хотя недельный рацион цыплят зависит от их возраста, в дальнейшем будем считать, что в среднем (за 8 недель) он составляет 1 фунт.
Для того чтобы цыплята достигли к восьмой неделе необходимых весовых кондиций, кормовой рацион должен удовлетворять определенным требованиям по питательности. Этим требованиям могут соответствовать смеси различных видов кормов или ингредиентов. Ограничим наше рассмотрение только тремя ингредиентами: известняком, зерном и соевыми бобами. Ниже приведены данные, характеризующие содержание (по весу) питательных веществ в каждом из ингредиентов и удельную стоимость каждого ингредиента.
Смесь должна содержать:
- не менее 0.8%, но не более 1.2% кальция;
- не менее 22% белка;
- не более 5% клетчатки.
Необходимо определить количество каждого из трех ингредиентов, образующих смесь минимальной стоимости при соблюдении требований к общему расходу кормовой смеси и ее питательности.
Имеется n видов продуктов питания, в которых содержится m типов питательных веществ (белки, жиры, углеводы). В одной весовой единице продукта i-го типа содержится аi единиц питательного вещества j-го вида . Известна минимальная суточная потребность b j человека в каждом из видов питательных веществ. Задана калорийность сi одной весовой единицы i-го продукта ( i принадлежит <1, 2, . n >). Требуется определить оптимальный состав рациона продуктов, такой, чтобы каждое питательное вещество содержалось в нем в необходимом количестве, обеспечивающем суточную потребность человека, и при этом суммарная калорийность рациона была минимальной.
Для решения задачи об оптимальной диете с помощью программы MS Excel необходимо задать конкретные значения параметрам исходной задачи. Для определенности предположим, что в качестве исходных типов продуктов рассматриваются: хлеб, мясо, сыр, бананы, огурцы, помидоры, виноград ( n = 7), а в качестве питательных веществ рассматриваются белки, жиры, углеводы ( m = 3). Калорийность одной весовой единицы каждого из продуктов следующая:с1 = 2060,с2= 2430,с3= 3600,с4= 890,с5= 140,с6= 230, с7 = 650. Содержание питательных веществ в каждом из продуктов может быть задано в форме следующей таблицы (см. табл.).
Таблица 1. Содержание питательных веществ в продуктах питания
Продукты/питательные вещества | Хлеб ржаной | Мясо баранина | Сыр «Российский» | Банан | Огурцы | Помидоры | Виноград |
---|---|---|---|---|---|---|---|
Белки | 66 | 225 | 235 | 20 | 13 | 16 | 11 |
Жиры | 17 | 177 | 295 | 1 | 1 | 7 | 7 |
Углеводы | 425 | 0 | 0 | 217 | 31 | 43 | 200 |
Минимальная суточная потребность в питательных веществах следующая: в белках b 1 = 105, в жирах b 2 = 75, в углеводах b 3 = 405.
Определить суточную потребности в питательных веществах (белки, жиры, углеводы) и общую калорийность оптимальной диеты.
Предприятие электронной промышленности выпускает две модели радиоприемников, причем каждая модель производится на отдельной технологической линии. Суточный объем производства первой линии – 60 изделий, второй линии – 75 изделий. На радиоприемник первой модели расходуются 10 однотипных элементов электронных схем, на радиоприемник второй модели – 8 таких же элементов. Максимальный суточный запас используемых элементов равен 800 единицам. Прибыль от реализации одного радиоприемника первой и второй моделей равна $30 и $20 соответственно. Определить оптимальный суточный объем производства первой и второй моделей.
Процесс изготовления двух видов промышленных изделий состоит в последовательной обработке каждого из них на трех станках. Время использования этих станков для производства данных изделий ограничено 10 ч. в сутки. Найти оптимальный объем производства изделий каждого вида.
Фирма имеет возможность рекламировать свою продукции, используя местные радио- и телевизионную сеть. Затраты на рекламу в бюджете фирмы ограничены $1000 в месяц. Каждая минута радиорекламы обходится в $5, а минута телерекламы – в $100. Фирма хотела бы использовать радиосеть, по крайней мере, в два раза чаще, чем сеть телевидения. Опыт прошлых лет показал, что объем сбыта, который обеспечивает каждая минута телерекламы, в 25 раз больше сбыта, обеспечиваемого одной минутой радиорекламы. Определить оптимальное распределение ежемесячно отпускаемых средств между радио- и телерекламой.
Фирма производит два вида продукции – A и B . Объем сбыта продукции вида A составляет не менее 60% общего объема реализации продукции обоих видов. Для изготовления продукции А и В используется одно и то же сырье, суточный запас которого ограничен величиной 100 кг. Расход сырья на единицу продукции A составляет 2 кг, а на единицу продукции В – 4 кг. Цены продукции А и В равны $20 и $40 соответственно. Определить оптимальное распределение сырья для изготовления продукции А и В.
Фирма выпускает ковбойские шляпы двух фасонов. Трудоемкость изготовления шляпы фасона 1 вдвое выше трудоемкости изготовления шляпы фасона 2. Если бы фирма выпускала только шляпы фасона 1, суточный объем производства мог бы составить 60 шляп. Суточный объем сбыта шляп обоих фасонов ограничен диапазоном от 50 до 100 штук. Прибыль от продажи шляпы фасона 1 равна $8, а фасона 2 – $5. Определить какое количество шляп каждого фасона следует изготавливать, чтобы максимизировать прибыль.
Изделия четырех типов проходят последовательную обработку на двух станках. Время обработки одного изделия каждого типа на каждом из станков:
Затраты на производство одного изделия каждого типа определяются как величины, прямо пропорциональные времени использования станков (в машино-часах). Стоимость машино-часа составляет $10 и $15 для станка 1 и 2 соответственно. Допустимое время для использования станков для обработки изделий всех типов ограничено следующими значениями: 500 машино-часов – для станка 1 и 380 машино-часов для станка 2. Цены изделий типов 1,2,3 и 4 равны $65, $70, $55 и $45 соответственно. Составить план производства максимизирующий чистую прибыль.
Завод выпускает изделия трех моделей ( I, II III ). Для их изготовления используется два вида ресурсов (А и В), запасы которых составляют – 4000 и 6000 единиц. Расходы ресурсов на одно изделие каждой модели:
Трудоемкость изготовления модели I вдвое больше, чем изделия модели II , и втрое больше, чем изделие модели III . Численность рабочих завода позволяет выпускать 1500 изделий I . Анализ условий сбыта показывает, что минимальный спрос на продукцию завода составляет 200, 200 и 150 изделий моделей I,II и III соответственно. Однако соотношение выпуска изделий моделей I,II и III должно быть равно 3:2:5. Удельная прибыль от реализации изделий моделей I,II и III составляет $30, $20 и $50 соответственно. Определить выпуск изделий, максимизирующий прибыль.
Некоторое производственное предприятие выпускает три вида клея. Для производства клея используется 4 типа химических веществ: крахмал, желатин, квасцы и мел. Расход этих веществ в кг для получения 1 кг каждого вида клея и их запас на складе предприятия представлены в таблице.
Таблица 1. Расход химических веществ на изготовления клея, их запас на складе
Вид клея /Химические вещества | Клей № 1 | Клей № 2 | Клей № 3 | Запас на складе |
---|---|---|---|---|
Крахмал | 0,4 | 0,3 | 0,2 | 20 |
Желатин | 0,2 | 0,3 | 0,4 | 35 |
Квасцы | 0,05 | 0,07 | 0,1 | 7 |
Мел | 0,01 | 0,05 | 0,15 | 10 |
Стоимость каждого вида клея для оптовых покупателей следующая:с1 = 380 руб/кг,с2 =430 руб/кг,с3 = 460 руб/кг. Требуется определить оптимальный объем выпуска клея каждого вида, обеспечивающий максимум общей стоимости готовой продукции.
Бройлерное хозяйство птицеводческой фермы насчитывает 20000 цыплят, которые выращиваются до 8-недельного возраста и после соответствующей обработки поступают в продажу. Хотя недельный рацион цыплят зависит от их возраста, в дальнейшем будем считать, что в среднем (за 8 недель) он составляет 1 фунт.
Для того чтобы цыплята достигли к восьмой неделе необходимых весовых кондиций, кормовой рацион должен удовлетворять определенным требованиям по питательности. Этим требованиям могут соответствовать смеси различных видов кормов или ингредиентов. Ограничим наше рассмотрение только тремя ингредиентами: известняком, зерном и соевыми бобами. Ниже приведены данные, характеризующие содержание (по весу) питательных веществ в каждом из ингредиентов и удельную стоимость каждого ингредиента.
Смесь должна содержать:
- не менее 0.8%, но не более 1.2% кальция;
- не менее 22% белка;
- не более 5% клетчатки.
Необходимо определить количество каждого из трех ингредиентов, образующих смесь минимальной стоимости при соблюдении требований к общему расходу кормовой смеси и ее питательности.
Имеется конечное число видов продуктов питания: ананас, арбуз, грейпфрут, язык говяжий, сардельки говяжьи, хлеб «Бородинский», картофель ( n = 7), а в качестве питательных веществ рассматриваются белки, жиры, углеводы ( m = 3). Калорийность 1 кг каждого из продуктов следующая:с1 = 470,с2= 380,с3 = 350,с4 = 1460,с5 = 2150,с6 = 2070, с7 = 800. Минимальная суточная потребность в питательных веществах следующая: в белках b 1 = 100, в жирах b 2 = 70, в углеводах b3 = 400. Содержание питательных веществ в каждом из продуктов может быть задано в форме нижеприведенной таблицы (табл.).
Требуется определить такой рацион питания, чтобы каждое питательное вещество содержалось в нем в необходимом количестве, обеспечивающем суточную потребность человека, и при этом суммарная калорийность рациона была минимальной.
Поиск решения задач в Excel с примерами
Пользователи Excel давно и успешно применяют программу для решения различных типов задач в разных областях.
Excel – это самая популярная программа в каждом офисе во всем мире. Ее возможности позволяют быстро находить эффективные решения в самых разных сферах деятельности. Программа способна решать различного рода задачи: финансовые, экономические, математические, логические, оптимизационные и многие другие. Для наглядности мы каждое из выше описанных решение задач в Excel и примеры его выполнения.
Решение задач оптимизации в Excel
Оптимизационные модели применяются в экономической и технической сфере. Их цель – подобрать сбалансированное решение, оптимальное в конкретных условиях (количество продаж для получения определенной выручки, лучшее меню, число рейсов и т.п.).
В Excel для решения задач оптимизации используются следующие команды:
Для решения простейших задач применяется команда «Подбор параметра». Самых сложных – «Диспетчер сценариев». Рассмотрим пример решения оптимизационной задачи с помощью надстройки «Поиск решения».
Условие. Фирма производит несколько сортов йогурта. Условно – «1», «2» и «3». Реализовав 100 баночек йогурта «1», предприятие получает 200 рублей. «2» — 250 рублей. «3» — 300 рублей. Сбыт, налажен, но количество имеющегося сырья ограничено. Нужно найти, какой йогурт и в каком объеме необходимо делать, чтобы получить максимальный доход от продаж.
Известные данные (в т.ч. нормы расхода сырья) занесем в таблицу:
На основании этих данных составим рабочую таблицу:
- Количество изделий нам пока неизвестно. Это переменные.
- В столбец «Прибыль» внесены формулы: =200*B11, =250*В12, =300*В13.
- Расход сырья ограничен (это ограничения). В ячейки внесены формулы: =16*B11+13*B12+10*B13 («молоко»); =3*B11+3*B12+3*B13 («закваска»); =0*B11+5*B12+3*B13 («амортизатор») и =0*B11+8*B12+6*B13 («сахар»). То есть мы норму расхода умножили на количество.
- Цель – найти максимально возможную прибыль. Это ячейка С14.
Активизируем команду «Поиск решения» и вносим параметры.
После нажатия кнопки «Выполнить» программа выдает свое решение.
Оптимальный вариант – сконцентрироваться на выпуске йогурта «3» и «1». Йогурт «2» производить не стоит.
Решение финансовых задач в Excel
Чаще всего для этой цели применяются финансовые функции. Рассмотрим пример.
Условие. Рассчитать, какую сумму положить на вклад, чтобы через четыре года образовалось 400 000 рублей. Процентная ставка – 20% годовых. Проценты начисляются ежеквартально.
Оформим исходные данные в виде таблицы:
Так как процентная ставка не меняется в течение всего периода, используем функцию ПС (СТАВКА, КПЕР, ПЛТ, БС, ТИП).
- Ставка – 20%/4, т.к. проценты начисляются ежеквартально.
- Кпер – 4*4 (общий срок вклада * число периодов начисления в год).
- Плт – 0. Ничего не пишем, т.к. депозит пополняться не будет.
- Тип – 0.
- БС – сумма, которую мы хотим получить в конце срока вклада.
Вкладчику необходимо вложить эти деньги, поэтому результат отрицательный.
Для проверки правильности решения воспользуемся формулой: ПС = БС / (1 + ставка) кпер . Подставим значения: ПС = 400 000 / (1 + 0,05) 16 = 183245.
Решение эконометрики в Excel
Для установления количественных и качественных взаимосвязей применяются математические и статистические методы и модели.
Дано 2 диапазона значений:
Значения Х будут играть роль факторного признака, Y – результативного. Задача – найти коэффициент корреляции.
Для решения этой задачи предусмотрена функция КОРРЕЛ (массив 1; массив 2).
Решение логических задач в Excel
В табличном процессоре есть встроенные логические функции. Любая из них должна содержать хотя бы один оператор сравнения, который определит отношение между элементами (=, >, =, Пример задачи. Ученики сдавали зачет. Каждый из них получил отметку. Если больше 4 баллов – зачет сдан. Менее – не сдан.
- Ставим курсор в ячейку С1. Нажимаем значок функций. Выбираем «ЕСЛИ».
- Заполняем аргументы. Логическое выражение – B1>=4. Это условие, при котором логическое значение – ИСТИНА.
- Если ИСТИНА – «Зачет сдал». ЛОЖЬ – «Зачет не сдал».
Решение математических задач в Excel
Средствами программы можно решать как простейшие математические задачки, так и более сложные (операции с функциями, матрицами, линейными уравнениями и т.п.).
Условие учебной задачи. Найти обратную матрицу В для матрицы А.
- Делаем таблицу со значениями матрицы А.
- Выделяем на этом же листе область для обратной матрицы.
- Нажимаем кнопку «Вставить функцию». Категория – «Математические». Тип – «МОБР».
- В поле аргумента «Массив» вписываем диапазон матрицы А.
- Нажимаем одновременно Shift+Ctrl+Enter — это обязательное условие для ввода массивов.
Возможности Excel не безграничны. Но множество задач программе «под силу». Тем более здесь не описаны возможности которые можно расширить с помощью макросов и пользовательских настроек.
источники:
http://intuit.ru/studies/courses/3659/901/lecture/32717
http://exceltable.com/vozmojnosti-excel/poisk-resheniya-v-excel