КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Оптимізація
Під оптимізацією розуміють вибір найкращого варіанта із багатьох можливих. Це може бути вибір найкоротшого шляху, або найкращого шляху для доставки товару, найшвидшого виконання і т.д. Задача оптимізації описується деякою функцією f залежною від n- параметрів.
Параметри від яких залежить функція називаються проектними параметрами, а сама функція називається цільовою. В економіці проектними називають параметри плану. В інженерних та наукових задачах під оптимізацією функції розуміють знаходження їх максимальних та мінімальних значень. Цільова функція може залежати від одного параметра Безумовні задачі оптимізації – це задачі, в яких визначають оптимальні значення проектних параметрів в деякій області їх значень. На параметри не накладається обмеження. Якщо на параметри накладаються деякі обмеження, то такі задачі називаються умовними. Обмеження можуть накладатися в 2 – ох формах:
Цільових функцій, які описують дану задачу оптимізації може бути декілька, тоді серед них віддається перевага одній. Тоді кількість параметрів, від яких залежить цільова функція вдається зменшити. Приклад, нехай треба визначити форму контейнера у вигляді паралелепіпеда, яка потребує найменшої витрати матеріалу.
X2 X3
X1 Площа всіх стінок Нехай задана 1 умова: його об’єм V=1м3. Це означає, що на проектні параметри цільової функції накладена умова Із (2) х3=1/(х1х2) (3)
Одномірна оптимізація. Ця задача формулюється так: на відрізку [a,b] задана деяка функція f(x). Треба знайти її максимальне або мінімальне значення. Як правило, шукають мінімальне значення функції. Задача знаходження максимальної функції зводиться до знаходження мінімальної функції, якщо знак цільової функції змінити на протилежний. Існування мінімуму функції випливає з теореми Веєрштраса: якщо функція неперервна на [a,b], то вона обов’язково приймає на ньому максимальне або мінімальне значення, тобто існує така точка х, що виконується
Просто знаходити мінімум функції, якщо вона диференційована і задана в простій аналітичній формі. Тоді Але аналітично знайти мінімальну функцію вдається знайти в рідкісних випадках. Переважно це роблять за допомогою ПК. Нехай функція f(x) задана на [a,b] і нехай відомо, що на цьому відрізку знаходиться мінімальна функція. Відрізок [a,b], на якому знаходиться мінімум функції називається інтервалом невизначеності. В задачах оптимізації ставиться вимога знаходження мінімальної функції з точністю ε. Це означає, що b-a<ε. Найбільш простий метод знаходження мінімуму такий: Відрізок [a,b] розбивають на дрібні відрізки з кроком Обчислюють значення функції у всіх точках хі. Це означає, що інтервал невизначеності має розмір відрізка Є кілька методів ефективного знаходження мінімуму функції. Розглянемо один із них, який вимагає меншої кількості обчислень значень функції.
Метод золотого перетину. Метод золотого перетину полягає в послідовному знаходженню інтервалів невизначеності. [a0,b0],….. [ak,bk] при мінімальних затратах на обчислення значень функції. Геометрично: Нехай початковий інтервал невизначеності - відрізок [a0,b0]. В середині відрізку обчислюємо значення функції в двох точках х1 і х2. Нехай
На ньому знаходять значення функції в точці х3. Нехай Ідея методу полягає в спеціальному вибору цієї точки на черговому інтервалі невизначеності. Нехай заданий відрізок довжиною l. Поділимо його на 2 частини, причому l1> l2
l=l1+l2 Точкою золотого перетину називається точка, яка ділить відрізок так, що відношення довжини
Нас цікавить тільки “+” корінь. Тоді
В нашому видку точки вибираємо так, що
Аналогічно на наступному кроці:
Тобто отримуємо зв'язок між інтервалами невизначеності
На кожному кроці Координати відрізків на k+1 кроці визначаються так
В ролі точки мінімуму можна взяти
Термін – апроксимація – означає наближення. Інтерполяція є частковим випадком точкової апроксимації. Значення функції можна знаходити не тільки всередині відрізка Задача інтерполяції формулюється так: треба знайти такий многочлен φ(х), значення якого у всіх точках хі співпадає із значеннями табличних даних чи експериментальних φ(хі)=уі і=0,1...n (1) Вважається, що серед всіх точок хі немає співпадаючих хі Умову (1) записують для всіх n – експериментальних точок і отримують систему n- рівнянь. Розв’язуючи її знайдемо а0,а1...аn. Випадок, коли степінь многочлена φ(х) m=n називається глобальною інтерполяцією. В цьому випадку многочлен φ(х) проходить через всі експериментальні точки. Многочленом φ(х) можна наближувати експериментальні дані не на всьому відрізку Лінійна інтерполяція є видом локальної інтерполяції. Нехай задані таблиці значень Алгоритм знаходження відповідного значення функції у випадку лінійної інтерполяції такий: знаходять дві сусідні точки (хі-1, уі-1) та (хі, уі) такі, що
Звідси знаходять рівняння прямої, яка з’єднує дві точки Маючи рівняння (2), яке наближає експериментальну залежність на відрізку [хі-1, хі] легко знайти значення функції для заданого значення аргументу. Лінійна інтерполяція означає, що експериментальна залежність на кожному відрізку [хі-1, хі] наближено замінюється лінійною. На всьому відрізку [х0, хn] експериментальна залежність наближується ламаною лінією. Квадратична інтерполяція y=aix2+bix+ ci
Y yi y1
Лінійна та квадратична є локальними інтерполяціями. Це означає, що експериментальне значення функції наближається рівнянням прямої чи параболи на деяких локальних ділянках. На цих ділянках рівняння прямої чи параболи різні. Program Linia; Label lab1,lab2, Const n=20 Var x: array [1..n] of real; Y: array [1..n] of real; I, k: integer Ak, bk, a, f: real; Begin For i:=1 to n do Begin Write (‘x(’,I,’)=’); readln (x[i]), Write (‘y(’,I,’)=’); readln (y[i]), Write (‘введіть значення x=’); readln (a); End;
K:=1; Lab1: k:=k+1; If (a>x[k-1]) and (a<x(k)) then begin Ak: =(y[k]-y[k-1])/((x[k]-x[k-1]); Bk:= (y[k-1]-ak*x[k-1]); F:=ak*a+bk Go to lab2; end Else go to lab1; Lab2: Write (‘a=’,a,’y=’,f); End
Локальне згладжування даних Так як експериментальні дані містять помилки, то використовувати точні значення експериментальних даних недоцільно. Їх стараються згладити. Це згладжування роблять для кожної експериментальної точки хі. По обидві сторони від експериментальної точки хі вибирають Найкращі формули, які використовуються для згладження такі: m=1,k=2→
або Вибираємо у0=3,4>
Алгоритми наближення функції Способи задання функції: Аналітичний, графічний, табличний. Основними характеристиками таблиць є назва функції, об’єм, крок, кількість вірних знаків табульованої функції; кількість входів, число аргументів, кінцеві різниці При користувані таблицями основною задачею є знаходження значення функції для тих значень аргументу, які знаходяться між тими, що є в таблиці. Цю задачу називають інтерполяцією Лінійна інтерполяція:
Схема Ейткіна
Якщо функція у=f(x) задана, то тим самим будь-якому допустимому значення х співставляється значення у. Але частіше всього можна отримати невелике число значень функції. А для розрахунку функції бажано мати достатню просту аналітичну залежність. Тоді функцію замінюють наближеною формулою φ(х) близькою до f(x) в деякому змісті і зручною для обчислень Розрізняють два зручних способи вибору наближення функції: інтерполяцію і апроксимацію Нехай f(x) задана таблицею її значень у=у0, у1, у2...уn в точках х=х0,х1,х2...хn, що називаються вузлами інтерполяції. Задача інтерполяції полягає у виборі такої функції φ(x), яка б у вузлах хі приймала ті ж значення, що й f(x), тобто φ(xі)=уі. Як правило в якості інтерполюючих функцій вибирають багаточлен. Так як число вузлів дорівнює (n+1), то степінь інтерполяційного багаточлену дорівнює n. У багатьох випадках, коли значення функції отримані експериментально і містять похибки, немає необхідності точного спів падання значень φ(x) і f(x) в вузлових точках. Більше того, для практики можна користуватись багаточленах меншого степення m (m<n) або аналітичної залежністю іншого вигляду аби тільки її графік проходив достатньо близько від точок (хі, уі) на всьому проміжку інтервалу зміни х. Процедура побудови функції виходячи із наперед введеного поняття близькості називається апроксимацією. В числовому аналізі широке застосування мають три групи апроксимуючих функцій. 1- функції виду 1, х,...,хn, лінійні комбінації яких народжують клас всіх багаточленів степені m<n 2- тригонометричні функції sin aix i cos aix, що народжують ряди Фур’є та інтеграл Фур’є. 3 – експоненціальна функції Багаточленна апромаксимація
Питання про критерій близькості: критерій Чебішева заснований на понятті віддалі як мах величини відхилення функції φ(x) від f(x) у вузлах хі
Якщо ρ1=0, то маємо інтерполяцію. Ще одним критерієм узгодження є
В якості апроксимованої функції вибирають ту, для якої ρ мінімальне. Цей критерій варто використовувати у випадку великої кількості інформації заданої з невисокою точністю. Метод апроксимації заснований на даному критерії часто називають методом найменших квадратів. Вибір методу і критерію повинен бути підпорядкований – необхідній точності. Інтерполювання за допомогою багаточленів
Введемо поняття роздільних різниць:
Багаточлен другої степені
звідси
інтерполяційний багаточлен Ньютона це: Pn(x) = f(x0) + A10(x0, x1)(x-x0) + A20(x0, x1, x2)(x-x0)(x – x1) + …+ An0(x0, x1, x2…,xn)(x-x0) (x – x1)… (x – xn-1) (1) Цей многочлен в точках x0, x1, x2…,xn приймає ті ж зачення, що функція f(x). Приклад. Приведені в прикладі значення є значеннями функції f(x)=1/(1+x); f(2) = 1/3 - точне
Ai розраховується так: А10= А(x0,x1) = (y1- y0)/ (x1 – x0) = -0.5 А11= А(x1,x2) = (y2 - y1)/ (x2 – x1) = -0.125 А12= А(x2,x3) = (y3- y2)/ (x3 – x2) = -0.05 Елементи стовпця А2 А20= (А11 – А10)/(x2 – x0) = 0.125 m=2 i=0 А21= (А12 – А11)/(x3 – x1) = 0.025 i А30= (А21 – А20)/(x3 – x0) = - 0.025 m=3 i=0 Отримаємо P3(x) = 1- 0.5x+ 0.125x(x-1) – 0.025x(x-1)(x-3) P3(2) = 0.3 – наближено Для рівновіддалених вузлів розділені різниці розраховуються як: Аmi = (Аm-1,i+1 - Аm-1,i)/(mh), де m = 1,n-1 h – крок інтерполяції Тоді (1) Þ Pn(x) = (...((An0(x-xn-1) + An-1,0)(x - xn-2) + An-2,0)....)(x-x0) +A0; A0= y1 Створення інтерполяційної формули Ньютона длля великого числа точок пов’язана з тим, що по мірі просування від початкової точки накопичуються похибки зумовлені обчисленням розділених різниць. Із-за втрати точності ввикористання розділених різниць великих порядків є неоправданим.
Дата добавления: 2015-05-23; Просмотров: 860; Нарушение авторских прав?; Мы поможем в написании вашей работы! |