Znaczenie metod wyszukiwania i metod optymalizacji

9

Zastanawiałem się, jakie są różnice i relacje między „metodami wyszukiwania” a „metodami optymalizacji”?

Zwłaszcza podczas rozwiązywania problemu optymalizacji? Podkreślam kontekst rozwiązywania problemów optymalizacyjnych, ponieważ myślę, że metody wyszukiwania służą nie tylko do rozwiązywania problemów optymalizacyjnych, ale także do problemów nieoptymalizacyjnych?

Moje zamieszanie wynika z następujących faktów:

  1. Istnieje kilka metod optymalizacji, o nazwie „xxx szukaj”, takie jak wyszukiwanie lokalne , stochastyczny wyszukiwania , .... Co to znaczy „szukaj” oznaczają w rzeczywistości? Zastanawiam się, czy istnieją metody optymalizacji, które nie są „wyszukiwaniem”?
  2. Również w tej książce Wprowadzenie do Stochastic Search and Optimization firmy Spall nie do końca rozumiem różnicę między „Search” a „Optimization” zarówno w tytule, jak i w treści. Dlaczego trzeba rozróżniać między „wyszukiwaniem” a „optymalizacją”, jeśli mają to samo znaczenie? Czy też „optymalizacja” oznacza stochastyczne zadania / problemy optymalizacji zamiast metod optymalizacji, w przeciwieństwie do „wyszukiwania” oznacza metody rozwiązywania zadań / problemów optymalizacji?
  3. Również brak darmowego lunchu w wyszukiwaniu i optymalizacji ponownie odróżnia wyszukiwanie i optymalizację.

Dziękuję i pozdrawiam!

Tim
źródło

Odpowiedzi:

11

szukaj = próba znalezienia możliwego do spełnienia punktu, który spełnia wszystkie ograniczenia (i dla optymalizacji lepszy punkt niż dotychczas znaleziony), ogólnie przy użyciu wyłącznie wartości funkcji.

wyszukiwanie lokalne: poprawa wykonalnego punktu (lub odległości do miary wykonalności) poprzez wyszukiwanie między sąsiednimi punktami.

wyszukiwanie stochastyczne: wyszukiwanie przy użyciu niedeterministycznego kryterium wyboru punktów próbnych.

Jest to niezależne od tego, czy podano kryterium optymalizacji. W szczególności w „Brak darmowego lunchu w wyszukiwaniu i optymalizacji” wyszukiwanie odnosi się do poszukiwania wykonalności, podczas gdy optymalizacja odnosi się do poszukiwania optymalności.

Ogólnie rzecz biorąc, w przypadku problemu optymalizacji wyszukiwanie i optymalizacja są równoważne. Mają jednak konotacje, które wpływają na użycie tego terminu.

metoda optymalizacji = metoda rozwiązania problemu optymalizacji, często (ale niekoniecznie) z wykorzystaniem informacji gradientowej (lub podskładnikowej, a nawet Heskiej).

Możliwość korzystania z gradientów znacznie zwiększa efektywność metod optymalizacji. W tym kontekście (tj. Ze znanymi gradientami) używa się wyszukiwania terminu tylko w kombinacji „wyszukiwanie linii”, co oznacza wyszukiwanie lepszego punktu wzdłuż wybranego kierunku.

Arnold Neumaier
źródło
Dzięki! W przypadku problemów z optymalizacją: (1) W szerszym znaczeniu wyszukiwanie jest równoznaczne z metodami optymalizacji. (2) Czy w węższym tego słowa znaczeniu wyszukiwanie „na ogół używa tylko wartości funkcji” oznacza „oznacza” {metody wyszukiwania} = {metody optymalizacji wykorzystujące tylko wartości funkcji}{metody wyszukiwania linii} „Czy„ wyszukiwanie linii ”jest jedyną„ metodą wyszukiwania ”, która wykorzystuje rzeczy wykraczające poza wartości funkcji? Jeśli dodam pewne zaburzenia do gradientu w metodzie opartej na gradiencie, to czy metoda ta stanie się metodą„ wyszukiwania stochastycznego ”? Czy wyszukiwanie lokalne i wyszukiwanie stochastyczne używają tylko wartości funkcji?
Tim
(3) Czy metody wyszukiwania w wąskim znaczeniu są metaheurystyczne?
Tim
@Tim: Wyszukiwanie liniowe może, ale nie musi, wykorzystywać do wyszukiwania gradienty (np. Wyszukiwanie linii Wolfe ich potrzebuje). Nie powinieneś przypisywać tym słowom zbyt precyzyjnego znaczenia; sugerują coś, a nie matematyczne pojęcia o ściśle określonym znaczeniu. - Metoda Newtona wykorzystuje gradienty i Hesy. - Metoda jest stochastyczna, gdy wyszukiwanie obejmuje generator liczb losowych. - wyszukiwanie lokalne może być stosowane w ogólnym sensie metody, która nie gwarantuje konwergencji do globalnego optimum, lub oznacza bezpośrednie wyszukiwanie oparte na sprawdzeniu lokalnych dzielnic tylko w obecnym najlepszym punkcie.
Arnold Neumaier
Metaheurysta musi zawierać zasady bardziej szczegółowe niż tylko „lokalne poszukiwanie”, aby zasłużyć na swoją naiwność; Nigdy nie słyszałem, żeby to dotyczyło ogólnie. Ale terminologia nie jest zbyt precyzyjna
Arnold Neumaier
4

Różnica w terminologii między „wyszukiwaniem” a „optymalizacją” wynika z faktu, że wyszukiwanie odnosi się do procesu znajdowania x tak dla danego g(x) mamy g(x)=0, tzn. szukamy roota. W optymalizacji chcemy znaleźćx po to aby f(x)min!. Przynajmniej jeślif jest płynne, a następnie znalezienie tego minimum jest zwykle konwertowane na problem ze znalezieniem roota g(x)=f(x). Innymi słowy, termin „wyszukiwanie” pochodzi od bardziej ogólnego problemu, ale w przypadku problemów związanych z optymalizacją rzeczy zajmujące się optymalizacją są często sprowadzane do rzeczy związanych z wyszukiwaniem.

Wolfgang Bangerth
źródło
Wyszukiwanie jest bardziej ogólnie stosowane do układów równań i nierówności. W szczególności w przypadku optymalizacji szuka się rozwiązaniag(x)=0,f(x)fbest. Ale metody bezpośredniego wyszukiwania w optymalizacji nie mają dostępug(x)dlatego nie można po prostu zastosować algorytmu wyszukiwania do tego zestawu ograniczeń.
Arnold Neumaier