Метод прямого пошуку

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Метод прямого пошуку — це метод математичної оптимізації, який не використовує інформацію про похідну в її класичному розумінні для пошуку оптимальних рішень: іноді інформація про похідну цільової функції f недоступна, ненадійна або непрактична для використання. Наприклад, функція f може бути негладкою, трудомісткою для оцінки, або якимось чином спотвореною шумами, тому методи, що спираються на похідні або їх наближення за допомогою скінченних різниць, є малопридатними. Проблема пошуку оптимальних точок у таких ситуаціях називається оптимізацією без похідних, алгоритми, які не використовують похідні або скінченні різниці, називаються алгоритмами прямого пошуку.[1]

Вступ[ред. | ред. код]

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

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

У методах прямого пошуку застосовуються різні способи для розв'язання цих проблем, використовуючи лише значення функції , без похідних. Можна довести, що деякі з цих способів виявляють оптимуми, а деякі є скоріше метаевристичними, оскільки, як правило, проблеми складніше розв'язувати у порівнянні з опуклою оптимізацією. Для них мета полягає в тому, щоб ефективно знайти «добрі» значення параметрів, які можуть бути майже оптимальними за наявності достатньої кількості ресурсів, але гарантії оптимальності зазвичай не можуть бути надані. Слід мати на увазі, що задачі різноманітні, тому зазвичай не можна використовувати один алгоритм для вирішення всіх видів задач.

Алгоритми[ред. | ред. код]

До відомих алгоритмів прямого пошуку належать:

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. Conn, A. R.; Scheinberg, K.; Vicente, L. N. (2009). Introduction to Derivative-Free Optimization. MPS-SIAM Book Series on Optimization. Philadelphia: SIAM. Архів оригіналу за 28 червня 2022. Процитовано 18 січня 2014.

Посилання[ред. | ред. код]