Löst mit Hilfe der Methode zur differentiellen Evolution (DE) eine Gleichung zur globalen Optimierung mit Randwertbedingungen sowie nicht linearen Gleichheits- und Ungleichheitsbedingungen.


icon

Ein-/Ausgänge

  • cfxdt.png Funktionswerte

    Funktionswerte enthält statische Daten, die von der benutzerdefinierten Funktion während der Ausführung benötigt werden.

  • csvrn.png Ziel- und Bedingungsfunktion

    Ziel- und Bedingungsfunktion ist die Referenz auf das VI, mit dem die nicht lineare Funktion sowie die nicht lineare Gleichheits- und Ungleichheitsbedingungsfunktion als separate Ausgänge implementiert werden. Im VI, auf das verwiesen wird, darf die Zielfunktion nicht leer sein. Die Parametergrenzen sind hingegen optional. Daher kann sowohl der Ausgang der Gleichheits- als auch der Ungleichheitsbedingungen leer sein.

    Für dieses VI gibt es unter labview\vi.lib\gmath\GlobalOptimization.llb\Global Optimization_Objective Function.vit eine Vorlage.

  • c2ddbl.png Anfangsparameter

    Anfangsparameter sind die Anfangsparameter der Optimierung. Die Anfangsparameter werden verwendet, wenn kein Anfangszustand angegeben ist. Jede Zeile von Anfangsparameter entspricht einem Parameterset. Die Spaltenanzahl von Anfangsparameter muss mit der Länge von Min. und Max. in Begrenzungen übereinstimmen.

    Wenn die Zeilenanzahl in Anfangsparameter kleiner als die Größe der Grundgesamtheit ist, initialisiert LabVIEW die verbleibenden Parametersets. Wenn die Zeilenanzahl in Anfangsparameter größer als die Größe der Grundgesamtheit ist, werden die verbleibenden Parametersets ignoriert.

  • ccclst.png Randwerte

    Randwerte ist ein Cluster mit dem oberen und unteren Grenzwert für die zu optimierenden Parameter.

  • c1ddbl.png Min.

    Min. enthält den kleinsten zulässigen Wert der zu optimierenden Parameter. Min. darf nicht leer sein. Die Länge von Min. muss der Länge von Max. entsprechen. Min. darf nicht Inf („unendlich“), –Inf („negativ unendlich“) oder NaN („keine Zahl“) sein.

  • c1ddbl.png Max.

    Max. enthält den größten zulässigen Wert der zu optimierenden Parameter. Max. darf nicht leer sein. Die Länge von Max. muss der Länge von Min. entsprechen. Max. darf nicht Inf („unendlich“), –Inf („negativ unendlich“) oder NaN („keine Zahl“) sein.

  • ccclst.png Anfangszustand

    Anfangszustand enthält die Anfangswerte der Grundgesamtheiten und Pareto-Indizes. Der Anfangszustand ist üblicherweise der Endzustand einer vorherigen Optimierung, mit dessen Hilfe sofort wieder mit der Optimierung begonnen werden kann. Wenn unter Anfangszustand ein Wert angegeben ist, ignoriert LabVIEW die Anfangsparameter.

  • c1dcclst.png Grundgesamtheit

    Grundgesamtheit enthält eine Reihe von Parametern, u. a. die Parameterwerte, Zielfunktionen, Gleichheitsbedingungen, Ungleichheitsbedingungen und den Grundindex.

  • c1ddbl.png Parameter

    Parameter enthält die Werte der Kandidatenparameter.

  • c1ddbl.png Zielfunktionen

  • c1ddbl.png Gleichheitsbedingungen

  • c1ddbl.png Ungleichheitsbedingungen

  • c1di32.png Pareto-Indizes

    Pareto-Indizes enthält den Index, der die Parameterauswahl von allen Kandidaten festlegt.

  • cerrcodeclst.png Fehler (Eingang, kein Fehler)

    Fehler (Eingang) beschreibt Fehlerbedingungen, die vor der Ausführung des Knotens auftreten. An Fehler (Eingang) werden Standardfehlerdaten übergeben.

  • cnclst.png DE-Einstellungen

    DE-Einstellungen enthält zusätzliche, für die differentielle Evolution (DE) benötigte Einstellungen.

  • ci32.png Menge

    Größe der Grundgesamtheit gibt an, wie viele Reihen von Kandidatenparametern LabVIEW in jeder Schleifeniteration des Optimierungsprozesses berechnet. Darüber hinaus gibt diese Einstellung die Anzahl der Zielfunktionsaufrufe in jeder Schleifeniteration des Optimierungsprozesses an. Mit zunehmender Größe der Grundgesamtheit verlängert sich die Ausführungsdauer und es werden bessere Optimierungsergebnisse erzielt. Der Standardwert lautet 10.

  • cdbl.png Skalierungsfaktor

    Skalierungsfaktor ist der Verschiedenheitsfaktor, anhand dessen LabVIEW mutierende Parameter erzeugt. Je größer der Skalierungsfaktor, desto unterschiedlicher sind die mutierten Parameter. Der Standardwert lautet 0,9.

  • cdbl.png Rekombinationswahrscheinlichkeit

    Rekombinationswahrscheinlichkeit ist die Wahrscheinlichkeit, mit der LabVIEW die Versuchsparameter aus den mutierten Parametern ableitet. Mit zunehmender Rekombinationswahrscheinlichkeit ist die Wahrscheinlichkeit größer, dass LabVIEW die mutierten Parameter akzeptiert. Der Standardwert lautet 0,95.

  • cu16.png Randwert-Umrechnungsmethode

    Randwert-Umrechnungsmethode ist die Methode, mit der die Versuchsparameter in Randwerte umgerechnet werden.

    0Keine
    1Zufallswert zwischen Begrenzungen und Werten (Standard)
    2Neu initialisieren
  • cu16.png Mutationsmethode

    Mutationsmethode ist die Methode, mit der die mutierten Parameter erzeugt werden.

    0Zufällig (Standard)
    1Entweder oder
    2Am besten
    3Bestmöglich
  • cu16.png Rekombinationsmethode

    Rekombinationsmethode ist die Methode, mit deren Hilfe die Kandidatenparameter mit den mutierten Parametern neu kombiniert werden.

    0Gleichverteilung (Standard)
    1Exponential
  • cnclst.png Stoppkriterien

    Stoppkriterien sind die Bedingungen, die zum Abbruch des Optimierungsprozesses führen.

  • ci32.png Max. Iterationen

    Max. Iterationen ist die maximale Anzahl von Schleifeniterationen während des Optimierungsprozesses. Wenn die Iterationsanzahl Max. Iterationen überschreitet, wird der Optimierungsprozess abgebrochen. Der Standardwert lautet 50.

  • ci32.png Max. Funktionsaufrufe

    Max. Funktionsaufrufe ist die maximale Anzahl an zulässigen Zielfunktionsaufrufen, bevor der Optimierungsprozess beendet wird. Der Standardwert lautet -1.

    -1 bedeutet, dass der Optimierungsprozess nicht enden soll und dass der Prozess nicht auf der Anzahl von Zielfunktionsaufrufen beruht. Die tatsächliche Anzahl von Zielfunktionsaufrufen wird nach der Formel Größe der Grundgesamtheit * (Max. Iterationen + 1) berechnet.

  • cdbl.png Max. Zeit (s)

    Max. Zeit (s) gibt an, wie viel Zeit für die Optimierung gewährt wird. Die Standardeinstellung lautet -1. -1 bedeutet, dass der Optimierungsprozess keinem Zeitlimit unterliegt.

  • ii32.png Anzahl der Funktionsaufrufe

    Anzahl der Funktionsaufrufe gibt an, wie oft die Zielfunktion während des Optimierungsprozesses aufgerufen wird.

    Wenn Max. Funktionsaufrufe auf -1 eingestellt wird, ist die Anzahl der Funktionsaufrufe gleich Größe der Grundgesamtheit * (Max. Iterationen + 1).

  • i1ddbl.png Minimum

    Minimum ist das berechnete globale Minimum aller möglichen Minima.

  • i1ddbl.png F(Minimum)

    F(Minimum) ist der Funktionswert der Zielfunktion am Minimum.

  • icclst.png Endzustand

    Endzustand enthält die endgültigen Werte der Grundgesamtheiten und Pareto-Indizes nach Abschluss der Optimierung.

  • i1dcclst.png Grundgesamtheit

    Grundgesamtheit enthält eine Reihe von Grundgesamtheiten, u. a. Werte von Kandidatenparametern, Zielfunktionen sowie von Gleichheits- und Ungleichheitsbedingungen am Ende des Optimierungsprozesses.

  • i1ddbl.png Parameter

    Parameter enthält die Werte der Kandidatenparameter nach Abschluss des Optimierungsprozesses.

  • i1ddbl.png Zielfunktionen

    Zielfunktionen enthält die Werte von Zielfunktionen an den Parametern.

  • i1ddbl.png Gleichheitsbedingungen

    Gleichheitsbedingungen enthält die Werte von Gleichheitsbedingungen an den Parametern.

  • i1ddbl.png Ungleichheitsbedingungen

    Ungleichheitsbedingungen enthält die Werte von Ungleichheitsbedingungen an den Parametern.

  • i1di32.png Pareto-Indizes

    Pareto-Indizes enthält den Index, der die Parameterauswahl von allen Kandidaten festlegt.

  • ierrcodeclst.png Fehler (Ausgang)

    Fehler (Ausgang) enthält Angaben zum Fehler. Dieser Ausgang ist ein Standardausgang zur Fehlerausgabe.

  • Das VI löst eine Gleichung der globalen Optimierung. Dabei ermittelt das VI den Wert x zur Minimierung von f(x), das seinerseits folgenden Beschränkungen unterliegt:

    Randwertbedingungenminxmax
    Gleichheitsbedingungeng(x) = 0
    Ungleichheitsbedingungenh(x) ≤ 0

    x ist die Reihe zu optimierender Parameter. f(x) ist die Reihe zu optimierender Zielfunktionen. Die Gleichheits- und die Ungleichheitsbedingung sind bei diesem Problem optional.

    Die differentielle Evolution (DE) ist eine Möglichkeit zum Lösen von Problemen zur globalen Optimierung. Mit ihrer Hilfe wird durch wiederholtes Mutieren und Verbessern der Kandidatenparameter eine Näherung an das tatsächliche globale Optimum erzielt.

    Hinweis Es besteht keine Garantie, dass das globale Optimum mit dem DE-Verfahren gefunden wird. Die Güte der ausgegebenen Parameter richtet sich nach den gewählten DE-Einstellungen und dem Problem selbst.

    Bei langwierigen Berechnungen der Zielfunktion muss die DE-Methode die Zielfunktion je nach Größe der Grundgesamtheit mehrmals pro Schleifeniteration aufrufen. Das VI kann jedoch Zielfunktionsaufrufe auf parallel ausgeführte For-Schleifen und somit auf mehrere Prozessoren verteilen. Für parallele Schleifeniterationen müssen Sie folgende Vorbereitungen treffen:

    • Ändern Sie das VI für die Berechnung der Zielfunktion in ein ablaufinvariantes VI, in dem Kopien von den Instanzen gemeinsam verwendet werden.
    • Erstellen Sie mit der Option 0x40 eine Referenz auf das VI (vgl. folgende Abbildung):

    In der folgenden Abbildung wird dargestellt, wie das VI eine Gleichung zur globalen Optimierung löst.

    Beispiele

    Die folgenden Beispieldateien sind in LabVIEW enthalten.

    • labview\examples\Mathematics\Optimization\Find Global Min on Surface.vi
    • labview\examples\Mathematics\Optimization\Two Circles Optimization.vi