2297

Система Mathcad. Розв’язування задач оптимізації

Лекция

Математика и математический анализ

Пошук екстремуму функції. Екстремум функції багатьох змінних. Локальний екстремум. Умовний екстремум. Приклад вирішення транспортної задачі в середовищі Mathcad. Зміна чисельного методу. Вікно діалогу Advanced Options.

Украинкский

2013-01-06

92.14 KB

66 чел.

Лекція 12. Система Mathcad. Розв’язування задач оптимізації

План

1. Пошук екстремуму функції.

1.1. Локальний екстремум.

1.2. Умовний екстремум.

1.3. Екстремум функції багатьох змінних.

2. Приклад розв’язування транспортної задачі в середовищі Mathcad.

1. Пошук екстремуму функції

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

Для розв’язування задач пошуку максимуму та мінімуму в системі Mathcad є вбудовані функції Minerr, Minimize и Maximize. Всі вони використовують градієнтні чисельні методи.

Mathcad пропонує три різних градієнтних методи . Щоб змінити чисельний метод, потрібно:

  1.  Клацнути правою кнопкою миші на імері функції Find.
  2.  Навести вказівку миші на пункт Nonlinear( Нелинейный) в контекстному меню.
  3.  В меню, що з'явиться, вибрати один із трьох методів: Conjugate Gradient (Спряжених градієнтів), Quasi-Newton (Квазі-Ньютоновський) або Levenberg (Левенберга).

Рис. 1. Зміна чисельного методу

Щоб повернути автоматичний вибір типу чисельного методу, потрібно в контекстному меню вибрати пункт Autoselect (Автоматичний вибір). Крім вибору самого методу , в Mathcad є можливість встановлювати деякі їх параметри. Для цього потрібно за допомогою того ж контекстного меню викликати вікно діалогу Advanced Options (Додаткові параметри), вибравши для цього пункти Nonlinear/ Advanced Options (Нелінійний/Додаткові параметри).

Рис. 2. Вікно діалогу Advanced Options

В цьому вікні є п’ять груп перемикачів, по два в кожній. В першому рядку Derivative estimation (Аппроксимація похідної) визначаєься метод обчислення похідної Forward (Вперед) або Central (Центральна). Вони відповідають апроксимації похідної або правою, або центральною скінченною різницею. В другому рядку Variable estimation (Апроксимація змінних) можна визначити тип апроксимації рядом Тейлора. Для апроксимації дотичною прямою лінією виберіть перемикач Tangent (Дотична), для більш точної квадратичної апроксимації (параболою) встановіть перемикач Quadratic (Квадратична). Наступна група перемикачів Linear variable check (Перевірка лінійності) дозволяє в специфічних задачах зекономити час обчислень. Якщо нелінійності всіх функцій, що входять в рівняння, мало впливають на значення всіх їх частинних похідних, то потрібно встановити перемикач Yes (Так). В цьому випадку похідні будуть прийняті рівним константам і не будуть обчислюватися на кожному кроці. Але потрібно дуже обережно змінювати параметри чисельних методів і тоді, коли розв’язок не знаходиться при заданих за замовчування параметрах або коли обчислення займають багато часу. Пара перемикачів Multistart (Сканування) задають опцю пошуку глобального або локального мінімуму або максимуму. Якщо встановлений перемикач Yes (Так), Mathcad буде намагатися знайти найбільш глибокий екстремум в області, близькій до початкового наближення. Нарешті, останній перемикач Evolutionary (Эволюційний алгоритм) дозволяє використовувати модифікацію чисельного методу для розв’язування рівнянь, визначених не обов’язково гладкими функціями, якщо його встановити в положення Yes (Так). Правильний вибір чисельного методу та його параметрів може допомогти при розв’язуванні нестандартних задач.

Локальний екстремум.

Пошук екстремуму включає в себе задачі знаходження локального та глобального екстремуму.

В Mathcad за допомогою вбудованих функцій розв’язується тільки задача пошуку локального екстремуму. Щоб знайти глобальний максимум (або мінімум), потрібно спочатку обчислити всі їх локальні значення і потім серед них вибрати найбільший (найменший), або попередньо просканувати з деяким кроком задану область, щоб виділити з неї підобласть найбільших (найменших) значень функції і здійснити пошук глобального екстремуму, уже знаходячись в його околі. 

Для пошуку лкальних екстремумів є дві вбудовані функції, які можуть використовуватися як в межах обчислювального блоку, так і автономно.

Minimize (f, x1, ... ,хм) — вектор значень аргументів, при яких функція досягає мінімуму;

Maximize (f, х1, ... ,хм) — вектор значень аргументів, при яких функція досягає максимуму;

f (x1, ... , хм,...) — функція;

x1, ... , xм — аргументи, за якими виконується мінімізація (максимізація).

Всім аргументам функції f попередньо потрібно присвоїти деякі значення, причому для тих змінних, за якими виконується мінімізація, вони будуть сприйматися як початкові наближення.

Розглянемо приклади обчислення екстремуму функції однієї змінної без додаткових умов. Так як ніякиї додаткових умов не накладається, пошук екстремуму виконується для будь-яких значень.

Приклад 1. Знайти мінімум функції однієї змінної

Приклад 2. Знайти максимум функції однієї змінної

Умовний екстремум

В задачах на умовний екстремум функції мінімізації та максимізації повинні бути включені в обчислювальний блок , тобто перед функціями повинно бути записане ключове слово Given. В проміжку між Given і функцією пошуку екстремуму за допомогою бульових операторів записуються логічні вирази, які задають обмеження на значення аргументів функції. Розглянемо приклад пошуку умовного екстремуму функції. Порівняйте результати цього прикладу з результатами двох попередніх.

Приклад 3. Три приклади пошуку умовного екстремуму функції

Екстремум функції багатьох змінних

Обчислення екстремуму функції багатьох змінних принципово не відрізняється від обчислення екстремуму функції однієї змінної. Тому обмежимося розглядом прикладу знаходження максимуму та мінімуму функції

Приклад 4. Екстремум функції двох змінних

2. Приклад розв’язування транспортної задачі в середовищі Mathcad

Постановка ТЗ

При організації та плануванні перевезень вантажів виникає широкий клас задач, пов'язаних з мінімізацією затрат на перевезення, які розв'язують за допомогою математичного апарату лінійного програмування.

Розглянемо постановку ТЗ в загальному вигляді. Нехай маємо m постачальників А1 , А2 ,..., Аm із запасами однорідних вантажів a1 , a2 ,..., am та n споживачів B1 , B2 ,..., Bn з потребами b1 , b2 ,..., bn. Тарифи перевезень вантажів, що можуть виражатись різними показниками (відстань, вартість або час) між постачальниками та споживачами, задані у вигляді матриці

Необхідно скласти такий план перевезень вантажів, при якому сумарна вартість перевезень мінімальна.

Якщо ввести такі позначення: xij - обсяг перевезень вантажів від і-го постачальника до j-го споживача та Z - сумарна вартість перевезень вантажів, то при розв'язанні ТЗ ми повинні мінімізувати вартість перевезень вантажів . 

Матрицю X = (xij ), називають матрицею перевезень.

В залежності від співвідношення запасів вантажів у постачальників та сумарних потреб споживачів розрізняють закриту та відкриту ТЗ.

Означення 1. Транспортна задача називається закритою (ЗТЗ), якщо сума запасів вантажів у постачальників дорівнює сумі потреб споживачів, тобто виконується умова .

Необхідна умова розв’язання ТЗ — ТЗ має розв’язок лише тоді, коли вона є закритою.

Означення 2. Транспортна задача називається відкритою (ВТЗ), якщо сума запасів вантажів у постачальників не дорівнює сумі потреб споживачів, тобто виконується умова .

Розглянемо два випадки:

1) якщо сума запасів у постачальника менша, ніж сума потреб споживачів, тобто виконується умова то вводять додаткового фіктивного постачальника із запасами = . Тарифи перевезень (відстані) від цього постачальника до споживачів дорівнюють нулю.

2) якщо сума запасів у постачальника більша, ніж сума потреб споживачів, тобто виконується умова  то вводять додаткового фіктивного споживача із потребами = . Тарифи перевезень (відстані) від цього споживача до постачальників дорівнюють нулю.

Приклад 1. Приклад розв’язування транспортної задачі в середовищі Mathcad.


 

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

32687. Прогноз развития производства молока в СПК «Нива» Уренского района Нижегородской области 357 KB
  Цель настоящего исследования – на основании нормативных, законодательных материалов, научной и специальной литературы, изучить проблему планирования на предприятии, а в частности, рассчитать и проанализировать прогноз развития производства молока.
32688. История развития аудита 194.5 KB
  История развития аудита достаточно длинная и интересная. Впервые учет появляется еще в 5 тысячелетии до нашей эры. Тогда появляется своеобразная система учетов фактов всей хозяйственной жизни людей. Естественно, аудит тогда только зарождался, и учет проводился на примитивном уровне, но при этом он уже существовал.
32689. Проектування стрілочного переводу 1.16 MB
  проекті було виконано розрахунок вантажообороту та вагоноообороту та побудовані діаграми добового вантажообороту та вагонообороту; визначено розміри руху і розкладання передаточних потягів, розраховано норми часу на розформування та формування потягів, та час ходу потягів та маневрових пересувань
32690. Технології. Всі визначення для уроків 1.07 MB
  Аналіз існуючих виробів та визначення завдань проекту. Аналіз та компонування інформації для проекту. Загальні відомості про дизайн. Стадії дизайну об’єктів технологічної діяльності. Технологія створення дизайн-проекту.
32691. Размножение. Индивидуальное развитие организмов 709.5 KB
  Каждая новая особь, прежде чем достигнуть стадии, на которой она будет способна к размножению, должна пройти ряд стадий роста и развития. Некоторые особи погибают, не достигнув репродуктивной стадии (или половозрелости) в результате уничтожения хищниками
32692. Радиоэлектроника и доступное жильё 146.5 KB
  Парки будут полны здоровых, дающих прохладную тень, деревьев. В особенно крупных из них будут располагаться открытые спортивные объекты такие как баскетбольные площадки, теннисные корты и площадки с тренажёрами, использующими в качестве нагрузки вес спортсмена.
32693. Система управления демонстратора патронного керамического фильтра 1.14 MB
  Автоматическое управление системой водоочистки; увеличение надежности работы очистного оборудования, составляющего ДПКФ благодаря возможности контроля всех его элементов в частности и всей системы в целом; уменьшение затрат на затрачиваемые при очистке воды ресурсы за счет более оптимального их использования; увеличение точности и оперативности получения информации о состоянии системы водоочистки, а также о расходе ресурсов, с целью принятия значимых управленческих решений...
32694. Всі уроки з англійської мови 169.01 KB
  Повторення тем «Привітання. Знайомство», «Алфавіт». Шкільні речі. Кольори. Пори року. Частини тіла. Домашні улюбленці. Країни Європи. Літній табір відпочинку...
32695. Ведение регистров бухгалтерского учета 238 KB
  Регистры бухгалтерского учета – это важная составляющая ведения на предприятии бухгалтерского учета. Именно в них отражается вся информация, которая находится в принятых первичных документах.