Résout une équation d'optimisation globale avec des contraintes de limite, et des contraintes d'égalité et d'inégalité non linéaires, en utilisant la méthode d'évolution différentielle (DE).


icon

Entrées/Sorties

  • cfxdt.png données de fonction

    données de fonction contient les données statiques dont la fonction définie par l'utilisateur a besoin à l'exécution.

  • csvrn.png fonction objectif et de contrainte

    fonction objectif et de contrainte est une référence au VI qui implémente la fonction non linéaire, la fonction de contrainte d'égalité non linéaire et la fonction de contrainte d'inégalité non linéaire en tant que sorties distinctes. Dans le VI référencé, la sortie de la fonction objectif ne peut pas être vide mais les fonctions de contrainte sont facultatives. De ce fait, la sortie des contraintes d'égalité, la sortie des contraintes d'inégalité ou les deux peuvent être vides.

    Créez ce VI en vous basant sur le VI modèle de labview\vi.lib\gmath\GlobalOptimization.llb\Global Optimization_Objective Function.vit.

  • c2ddbl.png Paramètres initiaux

    Paramètres initiaux sont les paramètres initiaux du processus d'optimisation. LabVIEW utilise Paramètres initiaux si État initial est vide. Chaque ligne de Paramètres initiaux est un ensemble de paramètres. Le nombre de colonnes de Paramètres initiaux doit être égal à la longueur de Min et de Max de Limites.

    Si le nombre de lignes de Paramètres initiaux est inférieur à taille de la population, LabVIEW initialise les ensembles de paramètres restants. Si le nombre de lignes de Paramètres initiaux est supérieur à taille de la population, LabVIEW ignore les ensembles de paramètres supplémentaires.

  • ccclst.png Limites

    Limites est un cluster qui contient les limites numériques supérieures et inférieures pour les paramètres à optimiser.

  • c1ddbl.png Min

    Min contient la valeur la plus basse possible pour les paramètres à optimiser. Min ne peut pas être vide. La longueur de Min doit être égale à celle de Max. Min n'accepte pas de valeurs exceptionnelles, comme Inf, –Inf ou NaN.

  • c1ddbl.png Max

    Max contient la valeur la plus haute possible pour les paramètres à optimiser. Max ne peut pas être vide. La longueur de Max doit être égale à celle de Min. Max n'accepte pas de valeurs exceptionnelles, comme Inf, –Inf ou NaN.

  • ccclst.png État initial

    État initial contient les valeurs initiales des populations et des indices de Pareto. État initial est généralement l'état final d'une optimisation précédente et permet un démarrage à chaud de l'optimisation. Si État initial comporte des valeurs, LabVIEW ignore Paramètres initiaux.

  • c1dcclst.png Population

    Population contient un ensemble de paramètres composé des valeurs des paramètres, des fonctions objectif, des contraintes d'égalité et inégalité, et de l'indice de base.

  • c1ddbl.png Paramètres

    Paramètres contient les valeurs des paramètres candidats.

  • c1ddbl.png Fonctions objectif

  • c1ddbl.png Contraintes d'égalité

  • c1ddbl.png Contraintes d'inégalité

  • c1di32.png Indices de Pareto

    Indices de Pareto contient l'indice qui détermine la sélection des paramètres à partir de tous les candidats.

  • cerrcodeclst.png entrée d'erreur (pas d'erreur)

    entrée d'erreur décrit les conditions d'erreur qui ont lieu avant l'exécution de ce nœud. Cette entrée fournit la fonctionnalité entrée d'erreur standard.

  • cnclst.png Paramètres DE

    Paramètres DE contient des paramètres supplémentaires spécifiques à la méthode d'évolution différentielle (DE).

  • ci32.png taille de la population

    taille de la population est le nombre d'ensembles de paramètres candidats calculés par LabVIEW à chaque itération de boucle du processus d'optimisation. Cette taille indique aussi le nombre d'appels de fonction objectif à chaque itération de boucle du processus d'optimisation. Une taille de population plus élevée produit généralement de meilleurs résultats d'optimisation mais aussi une durée d'exécution plus longue. La valeur par défaut est 10.

  • cdbl.png facteur d'échelle

    facteur d'échelle est le facteur de diversité utilisé par LabVIEW pour générer des paramètres mutants. Plus la valeur de facteur d'échelle est élevée, plus les paramètres mutants sont variés. La valeur par défaut est 0,9.

  • cdbl.png probabilité de croisement

    probabilité de croisement est la probabilité que LabVIEW hérite des paramètres d'essai des paramètres mutants. Plus la valeur de probabilité de croisement est élevée, plus la probabilité que LabVIEW accepte les paramètres mutants est élevée. La valeur par défaut est 0,95.

  • cu16.png méthode de mappage des limites

    méthode de mappage des limites est la méthode utilisée par LabVIEW pour mapper les paramètres d'essai dans les limites.

    0Aucune
    1Aléatoire entre les limites et les valeurs (valeur par défaut)
    2Réinitialisation
  • cu16.png méthode de mutation

    méthode de mutation est la méthode utilisée par LabVIEW pour générer les paramètres mutants.

    0Aléatoire (valeur par défaut)
    1L'une ou l'autre
    2La meilleure
    3Cibler la meilleure
  • cu16.png méthode de croisement

    méthode de croisement est la méthode utilisée par LabVIEW pour croiser des paramètres candidats avec des paramètres mutants.

    0Uniforme (valeur par défaut)
    1Exponentiel
  • cnclst.png critère d'arrêt

    critère d'arrêt représente l'ensemble des conditions qui déclenchent l'arrêt du processus d'optimisation.

  • ci32.png max. d'itérations

    max. d'itérations est le nombre maximal d'itérations de boucle du processus d'optimisation. Si le nombre d'itérations de boucle dépasse max. d'itérations, le processus d'optimisation s'arrête. La valeur par défaut est 50.

  • ci32.png max. d'appels de fonction

    max. d'appels de fonction est le plus grand nombre d'appels de la fonction objectif permis avant la fin du processus d'optimisation. La valeur par défaut est -1.

    -1 indique que le processus d'optimisation ne se termine jamais et qu'il ne dépend pas du nombre d'appels de la fonction objectif. La formule qui détermine le nombre réel d'appels de la fonction objectif est taille de la population * (max. d'itérations + 1).

  • cdbl.png temps max (s)

    temps max (s) est l'intervalle de temps maximal autorisé par LabVIEW entre le début et la fin du processus d'optimisation. La valeur par défaut est -1. -1 indique que le processus d'optimisation n'entre jamais en timeout.

  • ii32.png nombre d'appels de fonction

    nombre d'appels de fonction est le nombre d'appels de la fonction objectif dans le processus d'optimisation.

    Si max. d'appels de fonction est -1, nombre d'appels de fonction est égal à taille de la population * (max. d'itérations + 1).

  • i1ddbl.png Minimum

    Minimum est le minimum global déterminé parmi toutes les possibilités de minimums.

  • i1ddbl.png F(Minimum)

    F(minimum) est la valeur de la fonction objectif au Minimum.

  • icclst.png État final

    État final contient les valeurs finales des populations et des indices de Pareto à la fin du processus d'optimisation.

  • i1dcclst.png Population

    Population contient un ensemble de populations composé des valeurs des paramètres candidats, des fonctions objectif, et des contraintes d'égalité et inégalité à la fin du processus d'optimisation.

  • i1ddbl.png Paramètres

    Paramètres contient les valeurs des paramètres candidats à la fin du processus d'optimisation.

  • i1ddbl.png Fonctions objectif

    Fonctions objectif contient les valeurs des fonctions objectif aux Paramètres.

  • i1ddbl.png Contraintes d'égalité

    Contraintes d'égalité contient les valeurs des contraintes d'égalité aux Paramètres.

  • i1ddbl.png Contraintes d'inégalité

    Contraintes d'inégalité contient les valeurs des contraintes d'inégalité aux Paramètres.

  • i1di32.png Indices de Pareto

    Indices de Pareto contient l'indice qui détermine la sélection des paramètres à partir de tous les candidats.

  • ierrcodeclst.png sortie d'erreur

    sortie d'erreur contient des informations sur l'erreur. Cette sortie fournit la fonctionnalité sortie d'erreur standard.

  • Ce VI résout une équation d'optimisation globale en recherchant la valeur de x qui minimise f(x), en respectant les contraintes suivantes :

    Contraintes de limiteminxmax
    Contraintes d'égalitég(x) = 0
    Contraintes d'inégalitéh(x) ≤ 0

    x est l'ensemble de paramètres à optimiser. f(x) est l'ensemble de fonctions objectif à minimiser. Les contraintes d'égalité et d'inégalité sont optionnelles dans ce problème.

    L'évolution différentielle (DE) est une méthode utilisée pour résoudre le problème d'optimisation globale. Elle effectue une approximation de l'optimum global réel en mutant et améliorant par itération les paramètres candidats à partir des paramètres initiaux.

    Remarque La méthode DE ne peut pas garantir que l'optimum global soit trouvé. Les meilleurs paramètres renvoyés sont fonction du choix des paramètres DE et du problème même.

    Si l'évaluation de la fonction objectif prend beaucoup de temps, la méthode DE doit appeler la fonction objectif plusieurs fois, en fonction de la taille de la population, à chaque itération de la boucle du processus d'optimisation. Ce VI active les itérations de boucle en parallèle sur la boucle For pour appeler la fonction objectif afin que LabVIEW puisse tirer parti de plusieurs processeurs. Pour pouvoir utiliser les itérations de boucle en parallèle, vous devez :

    • Changer le VI qui implémente la fonction objectif en VI réentrant qui partage des clones.
    • Ouvrir une référence au VI avec l'option 0x40, comme le montre la figure suivante :

    La figure suivante montre comment le VI résout une équation d'optimisation globale.

    Exemples

    Reportez-vous aux exemples de fichiers inclus avec LabVIEW suivants.

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