Nonlinear Opt.: Gold section search 2

Aus Operations-Research-Wiki
Wechseln zu: Navigation, Suche

General

The Golden Section Search is an algorithm/technique for finding the extremum of an unimodal function over an interval without using derivatives. The advantage towards other section search methods is the need of only one new evaluation instead of two, because the one intermediate point from the previous iteration that isn't used as a new interval boundary is also the first new intermediate point. The name of the search method is based on the calculation of the two intermediate points by using the Golden Ratio.


Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden
Golden Ratio Spiral

Golden Ratio: Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \varphi=\frac{a}{b}=\frac{1+\sqrt{5}}{2}= 1,618



Golden Section Algorithm

Finding a maximum:


Step 1:

Let a and b be the end points of the initial interval. Compute the intermediate points:

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{1}=a+\frac{b-a}{\varphi ^{2}}


Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{2}=b-(x_{1}-a)


Set k=2


Step 2:

(1) If

  Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): f(x_{1}^{k-1})>f(x_{2}^{k-1})
                                                    In order to find a minimum:    Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): f(x_{1}^{k-1})<f(x_{2}^{k-1})


, then

                      Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): a_{k}=a_{k-1}
    and    Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): b_{k}=x_{2}^{k-1}


                      Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{1}^{k}=a_{k}+(x_{2}^{k-1}-x_{1}^{k-1})
  and  Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{2}^{k}=x_{1}^{k-1}


(2) If

  Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): f(x_{1}^{k-1})\leq f(x_{2}^{k-1})
                                                    In order to find a minimum:    Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): f(x_{1}^{k-1})\geq   f(x_{2}^{k-1})
        
         

, then

                         Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): a_{k}=x_{1}^{k-1}
    and   Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): b_{k}=b_{k-1}


                        Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{1}^{k}=x_{2}^{k-1}
  and   Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{2}^{k}=b_{k}-(x_{2}^{k-1}-x_{1}^{k-1})


Step 3:

Stop when Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): (b_{k}-a_{k})<\varepsilon

, arbitrarily small and let the optimal Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x^{*}
be equal to the point  with the maximum function value. Otherwise, let  go to  and return to Step 2.




Graphical illustration for finding the minimum of the function: Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): f(x)=(x-2)^2-2

with an initial interval of Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): [-10 ; 10]



Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden

Example

Function:

Initial interval: Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): [-0,5 ; 0,5]


Which option to choose for Step n depends on the previous iteration.


Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden















Explanation:


Step 1:

- We have -0,5 and +0,5 as the initial interval

- Use -0,5 for variable and +0,5 for variable

With this two starting points we calculate and as explained above.

               Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_1^1=(-0,5)+\frac{0,5-(-0,5)}{(1,618)^{2}}=0,118


               Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_2^1=0,5-(x_{1}-(-0,5))=(-0,118)



Step 2:

- After calculating and , check if the condition is complied. For minimum of the function, set the condition to:

   

- is not smaller than

- Now set the new boundaries:

   Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): a_2\mapsto x_{1}^{1}=(-0,118)
 
                                               and
   Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): b_2\mapsto b_1=0,5


   Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{1}^{2}\mapsto x_{2}^1 = 0,118


- The only variable which has to recalculate is:

   Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): x_{2}^{2}=b_{2}-(x_{2}^{1}-x_{1}^{1})=0,264



Step n:

- For the next and all following steps check the condition again

- If the condition is complied, as for , use the upper restrictions for Step n, shown in the tableau. If not, use the lower restrictions.


References

Daellenbach, Hans G.(1988)-"Introduction to operations research techniques"

M. Asghar Bhatti(1998)-"Practical Optimization Methods"

Klaus Neumann, Martin Morlock(2002)-"Operations Research"

"http://en.wikipedia.org/wiki/Golden_section_search"- Aufruf 27.06.2013


Authors

381745

381604