основый матем. Методические указания к выполнению лабораторных работ 14 по дисциплине "Основы математического моделирования" для студентов направления подготовки бакалавров
Скачать 0.84 Mb.
|
ФГБОУ ВО «Воронежский государственный технический университет» Кафедра технологии машиностроения - 2017 МЕТОДИЧЕСКИЕ УКАЗАНИЯ к выполнению лабораторных работ № 1-4 по дисциплине "Основы математического моделирования" для студентов направления подготовки бакалавров 15.03.05 «Конструкторско-технологическое обеспечение машиностроительных производств» (направленности «Конструкторско-технологическое обеспечение кузнечно-штамповочного производства», «Металлообрабатывающие станки и комплексы», «Технология машиностроения») всех форм обучения Воронеж 2017 1 Составитель канд. техн. наук А.В. Перова УДК 51:621(075.8) ББК 22.1:34.00Я7 Методические указания к выполнению лабораторных работ № 1-4 по дисциплине "Основы математического моде- лирования" для студентов направления подготовки бакалав- ров 15.03.05 «Конструкторско-технологическое обеспечение машиностроительных производств» (направленности «Конструк- торско-технологическое обеспечение машиностроительных про- изводств», «Металлообрабатывающие станки и комплексы», «Технология машиностроения») всех форм обучения / ФГБОУ ВО "Воронежский государственный технический универси- тет"; сост. А.В. Перова. Воронеж, 2017. 37 с. Методические указания включают краткие теоретиче- ские сведения по основам математического моделирования, методику и порядок выполнения лабораторных работ, снабже- ны перечнем рекомендуемой литературы и конкретными при- мерами моделирования с использованием численных методов. Табл. 5. Ил. 29. Библиогр.: 6 назв. Рецензент д-р техн. наук, проф. А.И. Болдырев Ответственный за выпуск зам. зав. кафедрой д-р техн. наук, проф. Е.В. Смоленцев Печатается по решению учебно-методического совета Воронежского государственного технического университета ФГБОУ ВО «Воронежский государственный технический университет», 2017 2 ЛАБОРАТОРНАЯ РАБОТА № 1 ОПРЕДЕЛЕНИЕ ЭКСТРЕМУМА ФУНКЦИИ МЕТОДОМ НЬЮТОНА Цель работы: Теоретическое изучение и получение практических навыков численного решения дифференциаль- ных уравнений методом Ньютона. Теоретические сведения Если существует функция f(x) действительной пере- менной x непрерывная в каждой точке своей области опреде- ления и ее производная f’(x), то для приближенного решения уравнения f’(x) = 0 (т.е. для нахождения точек экстремума) можно построить приблизительный эскиз кривой y = f’(x). При этом можно найти два значения а и в, таких, что f`(a), f`(b) имеют противоположные знаки, то тогда в силу непрерывно- сти функции и ее производной, существует корень С уравне- ния f`(x) = 0, отвечающий условию (рис. 1.1): a < c < b (1.1) В прямоугольной системе координат изобразим график функции y = f`(x) (рис.2.2). Решением уравнения y = f’(x) = 0 является точка К с координатами (x k ,0), которые необходимо определить. В точке Р, принадлежащей кривой f’(x), проведем касательную к этой кривой - прямую РТ. Проекцией точки Р на ось абсцисс является точка А с координатами (x 0 ,0). Можно сказать, что точка А является аппроксимацией точки К, а зна- чение координаты x 0 - аппроксимацией корня уравнения y = f’(x) = 0. Однако из анализа рис. 1.2. можно сделать вывод, что точка Т с координатами (x 1 ,0) аппроксимирует корень, лежа- щий в точке К лучше, чем точка А. Для точки Т можно записать следующее равенство: OT = OA - TA = x 0 – TA (1.2) С другой стороны для касательной РТ к кривой f`(x) справедливо: 3 ) ( 0 x f tg TA PA (1.3) Проведя преобразования выражения (1.3) можно запи- сать: ) ( ) ( ) ( 0 0 0 x f x f x f PA TA (1.4) В равенстве (1.2), заменив длину отрезка ОТ на коорди- наты точки Т, получим: Рис. 1.1. Определение корня уравнения кривой y = f’(x) Рис. 1.2. Аппроксимация корня дифференциального уравнения 4 x 1 = x 0 - TA (1.5) Подставив в (1.5) выражение (1.4), имеем: ) ( ) ( 0 0 0 1 x f x f x x (1.6) Как видно из выражения (1.6) можно определить коор- динату точки Т, являющейся аппроксимацией корня К с опре- деленной точностью. Для повышения точности аппроксимации в точке Т восстанавливают перпендикуляр к оси абсцисс (рис. 1.2), ко- торый пересекается с кривой y = f`(x) в точке P 1 . В этой точке строят вторую касательную к кривой f`(x), которая пересекает ось абсцисс в точке T 1 . После этого вся последовательность аппроксимации повторяется: ) ( ) ( 1 1 1 2 x f x f x x (1.7) Количество аппроксимаций зависит от требуемой сте- пени точности результата и в общем виде записывается как: ) ( ) ( 1 i 1 i 1 i i x f x f x x (1.8) Точность аппроксимаций определяется требуемой точ- ностью результата по соотношению: 1 i i x x e (1.9) где e - требуемая точность результата. Если начальная аппроксимация корня выбрана неудач- но, то возможно расхождение результата аппроксимаций (рис. 1.3) y = f'(x) P2 P0 T2 T0 P 1 T1 0 X Y Рис.1.3. Расходящаяся аппроксимация 5 После того как было найдено решение x k уравнения f`(x) = 0 определяется знак второй производной f``(x) в этой точке: если f``(x k ) > 0, то в точке x k достигается минимум функции f(x); если f``(x k ) < 0, то в точке x k достигается максимум функции f(x). Алгоритм нахождения экстремума функции по методу Ньютона представлен на рис.1.4. Порядок выполнения работы 1. Задание на лабораторную работу студент выбирает из таблицы в соответствии со своим порядковым номером в списке группы. 2. Опираясь на теоретические сведения студент состав- ляет программу на любом языке программирования для реше- ния задачи поиска экстремума функции методом Ньютона. Программа и ее результаты после отладки и проверки должны быть приложены к отчету. 3. Составляется программа построения кривой функции f(x) с масштабом, достаточным для проверки результатов рас- четов по п.2 (можно использовать средства построения графи- ков функций других приложений - Excel или MathcadPLUS). Содержание отчета 1. Название и цель работы, краткие теоретические све- дения о методе Ньютона. 2. Заданная функция, ее первая и вторая производные. 3. Блок-система алгоритма. 4. "Листинг" программы и результаты ее выполнения. 5. Результат выполнения программы построения кривой заданной функции и сравнение полученных данных со значе- ниями, полученными с помощью любого стандартного про- граммного обеспечения. 6. Выводы по работе. 6 Контрольные вопросы 1. Поясните порядок поиска точки экстремума функции методом Ньютона. 2. Ни каких соображений выбирается значение началь- ной точки для аппроксимации корня? 3. По какому выражению ищется каждое последующее значение аппроксимируемого корня? Варианты задания для лабораторной работы № 1 № варианта Функция № варианта Функция 1 Sinx 2 x 2 15 Cosx e x 2 Cosx 4 x 2 16 Cosx e x 3 Sinx 4 x 2 17 x 2 Sin e x 4 tgx 4 x 3 18 Sinx e x 5 Cosx x 19 Sinx e x 6 Cosx x 4 2 20 x 2 Cos 4 e x 7 3 Sinx x 2 21 Sinx e x 8 tgx 3 0 x 85 0 5 0 , , , 22 x e x 9 2 1 x x ) ( 23 Sinx e x x 2 10 1 x x 2 24 x e tgx 11 2 1 x x ) ( 25 2 x 1 x tg ) ( 12 ) ( 1 x x 2 26 2 x 2 tgx 13 1 x 27 x x Sin 2 14 1 x x 2 28 Cosx x 7 Рис. 1.4 8 ЛАБОРАТОРНАЯ РАБОТА № 2 ЭТАПЫ МОДЕЛИРОВАНИЯ Цель работы: Теоретическое изучение основных эта- пов моделирования, классификации моделей и получение практических навыков создания моделей различных видов. Теоретические сведения При исследовании любой системы посредством матема- тического моделирования возможно наличие многих альтерна- тивных вариантов моделей. Каждая из них в чем-то лучше остальных, а чем-то хуже. Поэтому процесс разработки наилучшего, как правило компромиссного варианта модели, достаточно сложен. Системный подход предполагает наличие следующих этапов создания модели. 1. Синтез модели – создание возможных ее вариантов. Различают а) структурный синтез – разработка структуры модели: ее общего вида (например, в виде многочлена, или другой функции), определение числа параметров и т. п. б) параметрический синтез – поиск числовых значений параметров модели либо на основании справочных данных, либо исходя из условия максимального совпадения результа- тов, найденных по модели, с экспериментальными. 2. Анализ модели – определение качества синтезиро- ванного варианта по критериям: а) универсальности – полноты отображаемых свойств объекта; б) точности – степени совпадения реальных данных с предсказанными моделью; в) адекватности – способности правильно отображать свойства объекта; г) экономичности – затрат на разработку и реализацию модели. 9 3. Выбор и принятие решений – общая оценка полез- ности вариантов и выбор лучшего. В процессе перехода от словесного описания к получе- нию результатов исследования модель объекта претерпевает следующие изменения формы своего представления. Аналитическая модель описания – описание свойств объекта виде совокупности математических зависимостей. Модель решения – система математического моделирования соотношений, позволяющих найти решение поставленной за- дачи. Существует несколько альтернативных типов этой моде- ли: а) аналитическая модель решения – явное выражение, позволяющее вычислить искомую величину; б) численная модель – запись решения в виде числен- ных схем, позволяющих найти решение в виде набора чисел; в) имитационная модель – переложение ан язык ЭВМ набора формальных правил функционирования объекта иссле- дования при заданном входном воздействии. 3. Алгоритмическая модель – реализация модели ре- шения в виде алгоритма. 4. Программная модель – реализация алгоритмической модели на языке программирования. Если при разработке какой-либо из перечисленных форм возникают альтернативные варианты моделей, то появ- ляется необходимость в реализации процедур синтеза, анализа, принятия решения. Пример задачи моделирования В качестве примера разберем следующую задачу. Необходимо спроектировать емкость заданного объема V 0 оп- тимальных размеров: r – радиуса основания и h – высоты, имеющую форму прямого цилиндра с кромкой по периметру верхнего основания заданной высоты h 0 . В качестве критериев оптимальности можно выбрать любой из параметров (или оба одновременно): 10 S = S бок + 2S осн – площадь поверхности емкости; L = 2L осн + (h +h 0 ) – длина сварного шва. Т. к. на поверхность затрачивается листовой материал, а при сваривании расходуется электроэнергия, электроды и т. д., то в целях экономии значения обоих критериев должны быть минимальны. Кроме того , станок на котором будет реализован заказ, позволяет вырезать днище ограниченного радиуса: R1 r R2. Основные этапы решения задачи 1) Составление аналитической модели описания. Обозначим Q- выбранный критерий оптимальности (S или L). Возможны два варианта структуры модели. а) Двухпараметрическая Q(r, h) min, (2.1) V(r, h) = 0, (2.2) R1 r R2. (2.3) Необходимо учитывать условный минимум функции двух переменных. б) однопараметрическая h = h(r,V), (2.4) подставим в (1) получим Q(r, h(r, V)) min. (2.5) Требуется найти минимум функции одной переменной на отрезке. Проверим анализ каждого варианта. Очевидно, что вто- рая модель лучше с позиций критерия экономичности, если существует аналитическое решение уравнения (2.2) в виде (2.4). В этом случае выбрать надо модель описания (б), т. к. по остальным критериям обе модели эквивалентны. В противном случае надо остановиться на модели (а). В предлагаемой зада- че решение (2.4) существует, поэтому в дальнейшем рассмат- ривается однопараметрическая модель. Для параметрического синтеза модели описания надо в выражения (2.3) – (2.5) при 11 конкретном критерии оптимальности подставлять указанные в вариантах задания значения V, h 0 , R 1 , R 2 2) Разработка модели принятия решения. Минимум функции, как известно, достигается в стационарной точке, т. е. где 0 r ) r ( Q (2.6) Возможны следующие варианты: 1) Стационарная точка принадлежит интервалу [R 1 , R 2 ] и аналитическое решение уравнения (2.6) существует. В этом случае необходимо применять аналитическую модель решения, т. к. с точки зрения точности и экономичности она лучше. 2) Стационарная точка принадлежит интервалу [R 1 , R 2 ] и аналитического решения уравнения (2.6) не существует, или не приемлемо с позиции критерия экономичности. В этом случае необходимо применять численную модель решения. 3) Стационарная точка не принадлежит интервалу [R 1 , R 2 ]. Это означает, что как аналитическая, так и численная модели, основанные на уравнении (2.6), не адекватны объекту моделирования и необходима имитационная модель. Таким образом, для выбора модели решения необходи- мо проверить выполнение условия (2.3). Это можно сделать с помощью леммы Больцмана-Коши: если 0 r Q & 0 r Q 2 R r 1 R r , (2.7) то на отрезке (2.3) есть хотя бы одна стационарная точка. Для проверки отношения (2.7) надо найти производную ∂Q/∂R , вычислить ее значение при r=R 1 и r=R 2 и определить, знаки полученных значений. Если (2.7) выполняется, то использует- ся аналитическая или численная модель в зависимости от су- ществования аналитического решения уравнения (2.6). Если же хотя бы одно из условий не верно, то нужна имитационная модель. 12 Аналитическая модель представляет собой формулу вида: ) , ( 0 h V r r opt , (2.8) которая получается, если из уравнения (2.6) выразить r. В качестве численной модели решения уравнения (2.6) предлагается метод Ньютона, применяемый для решения уравнения f(x)=0. выбрав некоторое начальное значение х=х(0), по формуле Ньютона )) k (x( f / f(x(k)) x(k) 1) x(k (2.9) последовательно получают все более точные решения х(1), х(2), …, х(n). Имитационная модель решения представляет собой ре- ализацию метода проб. Для ее применения необходимо в фор- мулу (2.5) подставлять различные значения r из интервала (2.3) и из полученных значений критерия q надо выбрать мини- мальное. Для решения данной задачи приемлемая точность будет достигнута, если взять 10 равноотстоящих точек из ин- тервала [R 1 , R 2 ]. 3) Составление алгоритмической модели. Алгорит- мы аналитической и имитационной моделей достаточно про- сты, поэтому приведем только алгоритм численной модели. 4) Программная модель аналитического решения представляет собой запрограммированную формулу (2.8) для вычисления решения уравнения (2.6). В случае численного решения необходимо составить программу реализации метода Ньютона (2.9). При использовании имитационной модели программи- руется формула (2.5). Во все варианты программной модели необходимо включить операторы ввода исходных данных: V, h 0 , R1, R2, операторы вычисления h и операторы вывода полученного решения. 13 Порядок выполнения работы 1.Задание на лабораторную работу студент выбирает из таблицы в соответствии с номером варианта, выданным пре- подавателем . 2. Построить аналитическую модель описания для ука- занного критерия S или L, записать еѐ в отчѐт. Проверить условие (2.7), результат записать в отчѐт В зависимости от (2.7) и разрешимости уравнения (2.6) выбрать аналитическую, численную или имитационную мо- дель решения. Указать в отчѐте обоснование выбора. Если необходима аналитическая модель, то записать (2.8) для кон- кретного критерия. Составить и отладить необходимую программную мо- дель, записать еѐ текст в отчѐт. Получить и записать в отчѐт решение задачи: опти- мальное r и значение h, найденное по формуле (2.4). Контрольные вопросы 1. Проклассифицировать полученную модель аналитического описания по следующим признакам назначение степень детализа- ции способ получения характер отображаемых свойств 2. Почему при решении задачи не использовано расчленение объекта как это принято при системном подходе? 3. Дать определение понятий "структура", "функция", "эффектив- ность системы". 4. Что называется аналитической, численной, имитаци- онной моделями решения? 5. Дайте определение понятий модель и математическое моделирование. 6. Перечислите основные методы оптимизации. 14 Исходные данные № min V R1 R2 h 0 1 S 5 0.5 1.5 0.05 2 L 7 0.5 1.5 0.1 3 S 8 1.2 2 0.1 4 L 9 1.2 2 0.15 5 S 10 0.5 1.5 0.15 6 L 11 0.5 1.5 0.05 7 S 12 1.4 2 0.1 8 L 13 1.4 2 0.15 9 S 14 1 1.8 0.25 ЛАБОРАТОРНАЯ РАБОТА № 3 РЕШЕНИЕ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ С ИСПОЛЬЗОВАНИЕМ СРЕДСТВ EXСEL Цель работы: изучить основные возможности исполь- зования табличного процессора EXСEL для решения задач ли- нейного программирования, а также параметрического иссле- дования с целью получить наилучший результат и его графи- ческое представление. Постановка задачи. Требуется определить, в каком количестве необходимо выпускать продукцию четырех типов Прод1, Прод2, Прод3, Прод4 для изготовления которой тре- буются ресурсы трех видов: трудовые ресурсы, сырье, финан- сы. Нормы расхода ресурсов каждого вида для выпуска едини- цы продукции, а также прибыль, получаемая от реализации единицы каждого типа продукции, приведены в табл. 3.1. Ко- 15 личество расходуемых ресурсов не должно превышать имею- щихся запасов. Данная задача относится к задаче планирования при ограничениях на ресурсы, распределительного типа. Таблица 3.1 Ресурсы Виды продукции Запасы ресурсов Прод.1 Прод.2 Прод.3 Прод.4 Трудовые 3 1 2 4 440 Сырье 1 8 6 2 200 Финансы 1 4 7 2 320 Прибыль 7 3 6 12 Математическая модель для решения данной задачи бу- дет иметь следующий вид: F=7x 1 +3x 2 +6x 3 +12x 4 max; 3x 1 +x 2 +2x 3 +4x 4 440; x 1 +8x 2 +6x 3 +2x 4 200; x 1 +4x 2 +7x 3 +2x 4 320; x j 0, j= 4 , 1 Рассмотрим последовательность работ при решении этой задачи средствами Exсel. Форма для ввода условий дан- ной задачи может иметь следующий вид: Рис. 3.1 16 Весь текст на рис.3.1 (и в дальнейшем) является ком- ментарием и на решение задачи не влияет. Далее необходимо ввести в сформированную форму исходные данные (коэффи- циенты в целевой функции и ограничениях, а также направле- ние оптимизации целевой функции и знаки ограничений (рис.3.2) Рис. 3.2 При этом ячейки B3:E3 являются изменяемыми и в них будут заноситься значения переменных. Ввод функциональных зависимостей для целевой функции и ограничений осуществляется с использованием Мастера функций. Для этого необходимо активизировать требуемую ячейку (F6) и вызвать Мастер функций. В левой части появившегося диалогового окна нужно выбрать катего- рию функции Математическая, а в правом окне выделить функцию СУММПРОИЗВ и нажать клавишу ОК. Затем на экране отобразится диалоговое окно второго шага (рис. 3.3), где требуется ввести как первый (B$3:E$3), так и второй мас- сивы (B6:E6). При вводе первого массива используются абсо- лютные ссылки на ячейки, при вводе второго - относительные, что в дальнейшем будет удобно при копировании формул. Во все окна адреса ячеек удобно вводить не с клавиатуры, а про- таскивая мышь по ячейкам, адреса которых необходимо вве- сти. 17 Рис. 3.3 Зависимости для левых частей ограничений вводятся аналогично. При этом необходимо лишь менять адреса ячеек. Для ускорения и удобства ввода можно скопировать содержи- мое ячейки F6 в ячейки F9, F10 и F11 (при этом все относи- тельные ссылки изменятся автоматически). Окончательная таблица с исходными данными пред- ставлена на рис. 3.4 (для наглядности выбран режим представ- ления формул, который использовать не обязательно). Рис. 3.4 18 После окончания ввода исходных данных осуществляется вы- зов программы Поиск решения. Для этого необходимо вы- брать в меню пункт Сервис (или Данные), а в нем – Поиск решения, в результате чего на экране появится окно поиска решения (рис. 3.5). Рис. 3.5 В окне Установить целевую ячейку требуется ввести имя ячейки, в которую введена зависимость для целевой функции (в данном случае F6). В качестве направления опти- мизации выбирается максимизация. В окне Изменяя ячейки вводятся адреса ячеек, соответствующих варьируемым пере- менным задачи (B3:E3). Далее необходимо ввести ограниче- ния. Для добавления ограничений выбирается пункт Доба- вить, после чего появляется окно добавления ограничений (рис. 3.6) Рис. 3.6 19 Вводятся граничные условия для переменных (Прод1 - Прод4) 0: B3>= B4, C3 >= C4, D3 >= D4, E3 >= E4 (нулевые значения ячеек B4-E4 можно не устанавливать). Ограничения можно также ввести в виде B3 >= 0, C3 >= 0, D3 >= 0, E3 >= 0. Затем вводятся ограничения на ресурсы: F9 <= H9, F10 <= H10, F11 <= H11. Ограничения вводят по- следовательно. Сначала выбирается пункт Добавить,далее в появившихся диалоговых окнах вводится левая часть, знак и правая часть каждого ограничения. После ввода последнего ограничения и нажатия OK произойдет возврат в окно Поиск решения. Заполненная в результате ввода ограничений форма по- иска решений представлена на рис. 3.10. Решение задачи про- изводится сразу же после ввода данных, когда на экране нахо- дится диалоговое окно Поиск решения. Перед началом реше- ния необходимо установить параметры решения, для чего в окне поиска решения выбрать команду параметры. Диалого- вое окно параметров поиска решения представлено на рис. 3.7. Рис. 3.7 20 С помощью команд, находящихся в этом диалоговом окне, можно вводить условия для решения задач оптимизации всех классов. Рассмотрим наиболее важные команды, приме- няемые при решении конкретных задач. Команды, используе- мые по умолчанию, подходят для решения большей части практических задач. Максимальное время Служит для назначения времени в секундах, выделяе- мого на поиск решения задачи. В поле можно ввести время, не превышающее 32767 с (более 9 часов!). Значение 100, исполь- зуемое по умолчанию, подходит для решения большинства за- дач. Предельное число итераций Служит для назначения числа итераций. Используемое по умолчанию число 100 подходит для решения большинства задач. Относительная погрешность Используется для задания точности, с которой опреде- ляется соответствие ячейки целевому значению или прибли- жение к указанным границам. Поле должно содержать число из интервала от 0 (нуля) до 1. Низкая точность соответствует введенному числу, содержащему меньшее количество деся- тичных знаков, чем число, используемое по умолчанию ѕ например, 0,0001. Высокая точность увеличит время, которое требуется для того, чтобы сошелся процесс оптимизации. Допустимое отклонение Используется для задания допуска на отклонение от оп- тимального решения, если множество значений влияющей ячейки ограничено множеством целых чисел. При указании большего допуска поиск решения заканчивается быстрее. Сходимость Когда относительное изменение значения в целевой ячейке за последние пять итераций становится меньше числа, указанного в поле Сходимость, поиск прекращается. Сходи- 21 мость применяется только к нелинейным задачам, условием служит дробь из интервала от 0 (нуля) до 1. Лучшую сходи- мость характеризует большее количество десятичных знаков. Лучшая сходимость требует больше времени на поиск опти- мального решения. Линейная модель Используется для решения линейной задачи оптимиза- ции или линейной аппроксимации нелинейной задачи. Показывать результаты итераций Используется для приостановки поиска решения для просмотра результатов отдельных итераций. Автоматическое масштабирование Служит для включения автоматической нормализации входных и выходных значений, качественно различающихся по величине, например, максимизация прибыли в процентах по отношению к вложениям, исчисляемым в миллионах руб- лей. Значения не отрицательны Позволяет установить нулевую нижнюю границу для тех влияющих ячеек, для которых она не была указана в поле Ограничение диалогового окна Добавить ограничение. Остальные команды будут рассмотрены позже при изу- чении соответствующих классов задач. Для решения задачи линейного программирования необходимо установить флажок Линейная модель в окне Па- раметры поиска решения, что обеспечит использование сим- плексного метода. Далее после выбора OK произойдет возврат в окно Поиск решения. Запуск процесса решения задачи осу- ществляется командой Выполнить. Решение задачи занимает несколько секунд, после чего на экране появляется диалоговое окно Результаты поиска решения. При решении рассматриваемой задачи производ- ственного планирования в окне появится сообщение о том, что решение найдено. В данном окне предоставляется возмож- 22 ность или сохранить найденное решение во влияющих ячейках модели, или восстановить исходные данные. Для этого необ- ходимо отметить нужный пункт. Результирующие значения всех переменных записы- ваются в ячейки B3-E3 исходной задачи. Соответствующее значение целевой функции заносится в ячейку F6, а значения левых частей ограничений – в ячейки F9-F11. Таблица с ре- зультатами решения задачи представлена на рис. 3.8. Рис. 3.8 Рис. 3.8 показывает, что в оптимальном решении Прод1 = В3 = 40; Прод2 = С3 = 0; Прод3 = D3 = 0; Прод4 = Е3 = 80. При этом максимальная прибыль будет составлять F6 = 1240, а количество использованных ресурсов равно: 23 трудовых = F9 = 440, сырья = F10 = 200, финансов = F11 = 200. Однако решение задачи находится не всегда. Если условия задачи несовместны, на экране появится надпись - Поиск не может найти подходящего решения. Если целевая функция не ограничена, то в окне результатов поиска решения появится сообщение: Значения целевой функции не сходят- ся. Кроме этого, из окна Результаты поиска решения возможно создание отчѐтов трех типов: по результатам, устой- чивости и пределам, каждый из которых записывается на от- дельном листе. Отчеты используются при анализе полученно- го оптимального решения. Рассмотрим более подробно их со- держание. Отчет по результатам (рис. 3.9) состоит из трех таб- лиц. В таблице 1 (целевая ячейка) приведены сведения о це- левой функции, в столбце "Исходно" - указывается значение целевой функции до вычислений, "Результат" - указывается значение целевой функции после вычислений. Таблица 2 (изменяемые ячейки) содержит сведения о значениях искомых переменных, до и после решения задачи. Таблица 3 (ограничения) показывает результаты опти- мального решения для ограничений и для граничных условий. Здесь в графе "Формула" приведены зависимости, которые были введены в диалоговом окне "Поиск решения"); в графе "Разница" показано количество неиспользованного ресурса. Если ресурс используется полностью, то в графе "Состояние" указывается связанное; при неполном использовании ресурса в этой графе указывается не связан. 24 Рис. 3.9 Отчет по устойчивости (рис. 3.10) состоит из двух таблиц. В таблице 1 (изменяемые ячейки) приводятся следу- ющие значения для переменных: - результат решения задачи; - редуцированная стоимость, т.е. дополнительные двой- ственные переменные v j , которые показывают, насколько из- меняется целевая функция при принудительном включении единицы этой продукции в оптимальное решение; - коэффициенты целевой функции; -предельные значения приращения коэффициентов c j целевой функции при которых сохраняется набор переменных, входящих в оптимальное решение. В таблице 2 (ограничения) приводятся аналогичные значения для ограничений: - величины использованных ресурсов; 25 - теневые цены, т.е. двойственные оценки y i , которые показывают, как изменится целевая функция при изменении ресурсов на единицу; - значения приращения ресурсов b i , при которых со- храняется оптимальный набор переменных, входящих в опти- мальное решение. Рис. 3.10 Отчет по пределам (рис. 3.11) показывает, в каких пределах может изменяться выпуск продукции, вошедшей в оптимальное решение, при сохранении структуры оптималь- ного решения: - рассматриваются значения x j в оптимальном решении; - рассматриваются нижние пределы изменения значе- ний x j Кроме этого, в отчете указаны значения целевой функ- ции при выпуске данного типа продукции на нижнем пределе. Далее приводятся верхние пределы изменения x j и значения целевой функции при выпуске продукции, вошедшей в опти- мальное решение на верхних пределах. 26 Рис. 3.11 Графическое представление результатов решения Важным фактором, помогающим принять оптимальное решение, является наглядное представление полученного ре- зультата. Результат решения задачи, рассмотренной выше, примем в качестве исходных данных при рассмотрении вопро- сов построения диаграмм.Для построения диаграмм необхо- димо выделить те ячейки, значения которых должны быть представлены на диаграмме (B3:E3). Затем вызывается Ма- стер диаграмм (рис. 3.12). В появившемся диалоговом окне вы бирается нужный тип диаграммы. Выберем, например, объем- ный вариант гистограммы. После выбора типа диаграммы осуществляется переход к следующему этапу построения диаграммы. В диалоговом окне Исходные данные (рис. 3.13) сначала необходимо ввести диапазон данных, которые отображаются на диаграмме (в нашем примере ячейки B3:E3), а затем, выбрав команду Ряд, ввести названия рядов (например, “Количество продукции”), а также подписи под осью X (Прод1, Прод2, Прод3, Прод4). Для ввода подписей можно выделить соответствующие ячейки таблицы (B2:E2) или ввести подписи непосредственно в диа- логовом окне через двоеточие. После окончания работы с ок- 27 ном Исходные данные необходимо выбрать пункт Далее и перейти в диалоговое окно Параметры диаграммы (рис. 3.14). В данном окне, если необходимо, вводится заголовок диаграммы, размещается легенда, подписываются оси, опреде- ляются линии сетки. Все вводимые изменения отображаются на диаграмме. Затем осуществляется переход в диалоговое ок- но Размещение диаграммы и выбирается тип размещения: на отдельном рабочем листе или на имеющемся рабочем листе. После выбора пункта Готово диаграмма размещается на ука- занном листе. Построенная гистограмма для рассматриваемой задачи представлена на рис. 3.15. Рис. 3.12 28 Рис. 3.13 Возможно перемещение данной диаграммы, изменение еѐ размеров, перестройка параметров. Для этого необходимо активизировать нужную диаграмму с помощью мыши и в ре- жиме форматирования диаграммы выполнить необходимые действия. Рис. 3.14 29 Рис. 3.15 Варианты заданий к лабораторной работе № 3 Предприятие может выпустить три вида продукции: П 1 , П 2 , П 3 . Для выпуска продукции требуются ресурсы трех видов: трудовые, станочное оборудование и полуфабрикаты. Объемы и нормы расхода ресурсов приведены в условных величинах в табл. 3.2, цифровые значения - в табл. 3.3. Таблица 3.2 0 20 40 60 80 прод1 прод2 прод3 прод4 Оптимальное решение 30 Таблица 3.3 № вар а 1 а 2 а 3 а в 1 в 2 в 3 в с 1 с 2 с 3 с р 1 р 2 р 3 1 8 5 7 280 6 7 4 480 9 6 5 360 8 7 5 2 15 18 9 420 6 4 4 360 4 5 8 540 90 80 90 3 3 3 2 360 2 4 3 240 6 9 8 180 24 25 18 4 6 8 9 360 1 3 2 240 3 2 3 180 18 12 15 5 2 5 6 240 3 7 7 420 4 4 2 300 12 18 16 6 2 4 2 120 6 5 1 280 7 7 4 300 16 12 18 7 15 8 6 420 9 7 9 120 6 9 9 240 12 18 20 8 10 12 6 200 4 8 9 200 9 8 6 420 20 12 18 9 8 5 2 120 2 4 7 150 4 3 8 180 3 6 7 10 8 5 2 120 7 2 4 180 4 3 9 150 12 16 20 11 2 4 3 180 6 9 8 240 1 3 2 180 12 15 25 12 3 1 2 60 4 3 2 90 9 8 3 150 45 75 60 13 2 2 1 120 2 6 5 420 7 3 7 240 18 16 12 14 3 7 7 420 2 2 1 120 2 4 2 120 20 10 15 15 12 9 7 240 6 9 9 120 8 4 8 200 18 20 12 16 14 12 8 420 9 7 9 240 9 8 8 120 16 20 24 17 12 13 8 250 9 8 8 300 8 7 9 350 12 15 18 18 16 8 9 240 4 1 8 120 6 9 8 180 24 18 30 19 15 25 9 400 9 8 9 350 5 8 9 300 30 20 25 20 4 3 1 60 1 5 2 50 6 2 8 100 10 12 18 Требуется найти, сколько и какого вида продукции необ- ходимо выпускать, чтобы план был оптимальным по критерию прибыли, т.е. таким, при котором получаемая прибыль была бы максимальной. 31 ЛАБОРАТОРНАЯ РАБОТА № 4 ПАРАМЕТРИЧЕСКИЙ АНАЛИЗ Цель работы: провести параметрическое исследование задачи линейного программирования с целью получить наилучший результат и его графическое представление. Под параметрическим анализом будем понимать реше- ние задачи оптимизации при различных значениях того пара- метра, который ограничивает улучшение целевой функции. Параметрический анализ будем выполнять для рас- сматриваемой задачи производственного планирования (см. лабораторную работу №3), решая еѐ при различных значениях имеющегося сырья. Составим таблицу вариантов: Вариант 1 2 3 4 5 Сырье 100 150 200 250 300 Для выполнения параметрических расчетов в таблице с результатами решения задачи (рис. 3.8) необходимо удалить результат решения, находящийся в ячейках B3:E3. Далее ре- шить задачу для первого варианта по описанной выше схеме, предварительно введя в ячейку H10 значение 100. После ре- шения задачи в диалоговом окне Результаты поиска реше- ния выбирается команда Сохранить сценарий. При этом на экране появится диалоговое окно Сохранение сценария (рис. 4.1). В появившемся диалоговом окне необходимо ввести имя сценария “Сырье=100” и подтвердить ввод выбором кнопки OK. Рис. 4.1 32 Результат решения задачи для данного варианта пред- ставлен на рис. 4.2. Далее необходимо аналогично решить за- дачу для всех оставшихся вариантов, последовательно вводя в ячейку H10 значения 150, 200, 250, 300. При этом нужно со- хранять каждый сценарий и вводить его имя, соответствующее текущему значению сырья. Рис. 4.2 Для представления результатов решения вызывается пункт меню Сервис, Сценарии (или Анализ данных, «Что? Если?») и в появившемся диалоговом окне Диспетчер сцена- риев (рис. 4.3) выбирается пункт Отчет. Рис. 4.3 33 При выборе в диалоговом окне Отчет по сценарию (рис. 4.4) типа отчета Структура создается итоговый сценарий (рис. 4.5), который размещается на отдельном листе с названи- ем “Структура сценария”. Рис. 4.4 Рис. 4.5 34 Для удобства дальнейшей работы полученный сценарий можно отредактировать и представить следующем виде: Рис. 4.6 Для наглядного представления результатов параметрического анализа построим гистограммы: Рис. 4.7 Оптимальное решение 140 40 0 0 0 5 80 110 110 100 0 20 40 60 80 100 120 140 160 сырье=100 сырье=150 сырье=200 сырье=250 сырье=300 Прод1 Прод2 Прод3 Прод4 Значение прибыли 700 1040 1240 1320 1320 0 200 400 600 800 1000 1200 1400 сырье=100 сырье=150 сырье=200 сырье=250 сырье=300 Прибыль 35 Решения по заказу При решении по заказу пользователь задает значения тех величин, которые он хотел бы видеть в оптимальном ре- шении. Такие задачи могут быть трех видов: назначение величины целевой функции; назначение величин искомых переменных; назначение величин используемых ресурсов. Рассмотрим возможные варианты на примере решаемой задачи производственного планирования. В первом случае для получения результата необходимо в ячейку, соответствующую целевой функции (F6), ввести тре- буемую величину, а затем, вызвав программу Поиск решения, решить задачу по рассмотренной выше схеме. Во втором случае в ячейки B4:D4, соответствующие нижним границам значений переменных задачи, вводятся тре- буемые значения переменных. Далее вызывается программа Поиск решения, в появившемся диалоговом окне осуществ- ляется переход к окну Ограничения, курсор устанавливается на ограничение $B$3>=$B$4, вызывается команда Изменить и вместо знака >= вводится знак =. Аналогичные изменения производятся и с ограничениями $C$3>=$C$4, $D$3>=$D$4, $E$3>=$E$4, после чего осуществляется решение задачи. В третьем случае в таблицу с исходными данными вво- дятся требуемые значения используемых ресурсов (при этом необходимое значение для трудовых ресурсов заносится в ячейку F9, для сырья - в ячейку F10, для финансов - в ячейку F11) и задача решается обычным образом. Решение при условных исходных данных Некоторые задачи оптимизации можно решать с помо- щью логических функций, используя условие ЕСЛИ . Такие задачи будем называть задачами оптимизации при условных исходных данных. Решение этих задач начинается с опти- мизации условной целевой функции . Основной логической 36 функцией, применяемой при такой оптимизации , является логическая функция ЕСЛИ , имеющая формат записи: =ЕСЛИ (A;C3;C4), где А - логическое условие или адрес ячей- ки с условием; С3 - адрес ячейки , где записана целевая функ- ция, по которой производится оптимизация при выполнении условия А; С4 - адрес ячейки , где записана целевая функция, которая оптимизируется при невыполнении условия А. Данная функция может быть введена с помощью Ма- стера функций. Пример рассматриваемой задачи производ- ственного планирования с условной целевой функцией приве- ден на рис. 4.8. На рис. 4.9 представлено решение данной зада- чи. Рис. 4.8 Рис. 4.9 37 В общем случае условные целевые функциимогут быть составными и для записи условий включать , кроме ло- гической функции ЕСЛИ , логические функции И и ИЛИ , которые вводятся в формате И(A;B) , ИЛИ(A;B) , где А , В - назначаемые условия . Формат записи условных вычислений при этом будет иметь вид : =ЕСЛИ (И(A;B); адрес ЦФ1; адрес ЦФ2), =ЕСЛИ (ИЛИ(A;B); адрес ЦФ1; адрес ЦФ2). При решении практических задач довольно часто могут возникать логические цепочки. EXCEL допускает применение функции ЕСЛИ в цепочке до 7 раз. Аналогично можно вводить условные ограничения. Условные исходные данные для левых частей (ЛЧ) огра- ничений вводятся в формате : =ЕСЛИ (условие; адрес ЛЧ1; адрес ЛЧ2), для правых частей (ПЧ) ограничений формат ввода аналогичен предыдущему, только вместо ЛЧ1 и ЛЧ2 записы- ваются ПЧ1и ПЧ2. В одной и той же задаче условия для целевой функции, левых и правых частей ограничений могут вводиться одновре- менно. БИБЛИОГРАФИЧЕСКИЙ СПИСОК 1. Аверченков В.И. Основы математического модели- рования технических систем / В.И. Аверченков, В.П. Федоров, М.Л. Хейфец. – Лань, 2011. 2. Вентцель Е.С. Исследование операций. Задачи, прин- ципы, методология: учеб. пособие для вузов / Е.С. Вентцель. – М.: Дрофа, 2004. 3. Волков И.К. Исследование операций: учеб. для вузов / И.К. Волков, Е.А. Загоруйко. – М.: Изд-во МГТУ им. Н.Э. Баумана, 2000. 4. Гельман В.Я. Решение математических задач сред- 38 ствами Excel: практикум / В.Я. Гельман. – СПб.: Питер, 2003. 5. Пантелеев А.В. Методы оптимизации в примерах и задачах: учеб. пособие / А.В. Пантелеев, Т.А. Летова. – М.: Высш. шк., 2002. 6. Перова А.В. Основы математического моделирова- ния / А.В. Перова. ГОУ ВПО ВГТУ.- Воронеж, 2010. СОДЕРЖАНИЕ 1. Лабораторная работа № 1. Определение экстремума функции методом Ньютона …………...…………1 2. Лабораторная работа № 2. Этапы моделирования …………………………………….……..7 3. Лабораторная работа № 3. Решение задач линейного программирования с использованием средств EXСEL……..………………………13 4. Лабораторная работа № 4. Параметрический анализ………...……..………………………30 Библиографический список…………….………………….…...35 39 МЕТОДИЧЕСКИЕ УКАЗАНИЯ к выполнению лабораторных работ № 1-4 по дисциплине "Основы математического моделирования" для студентов направления подготовки бакалавров 15.03.05 «Конструкторско-технологическое обеспечение машиностроительных производств» (направленности «Конструкторско-технологическое обеспечение кузнечно-штамповочного производства», «Металлообрабатывающие станки и комплексы», «Технология машиностроения») всех форм обучения В авторской редакции Компьютерный набор А.В. Перовой Подписано в печать .09.2017. Формат 60×84/16. Бумага для множительных аппаратов. Усл. печ. л. 2,5. Уч.-изд. л. 2,3. Тираж экз. “C” Зак. № ФГБОУ ВО "Воронежский государственный технический университет" 394026 Воронеж, Московский просп., 14 Участок оперативной полиграфии издательства ВГТУ 394026 Воронеж, Московский просп., 14 40 |