Accueil technologie Algorithme génétique

Algorithme génétique



introduction

Theoriginofgeneticalgorithmscanbetracedbacktotheearly1960s.In1967, Bagley, astudentofProfessorJ.HollandattheUniversityofMichiganintheUnitedStates, firstproposedthetermgeneticalgorithminhisdoctoralthesisanddiscussedtheapplicationofgeneticalgorithmingames.Thedevelopmentofcomputingtools.In1975, J.Hollandetal.proposedamodeltheorythatisextremelyimportantforthetheoreticalresearchofgeneticalgorithms.Thedevelopmentofgeneticalgorithms.Afterthe1980s, geneticalgorithmsenteredaperiodofprosperousdevelopmentandwerewidelyusedinresearchfieldssuchasautomaticcontrol, productionplanning, ImageProcessing, androbotics.

Cadre de base

Codage

Parce que les algorithmes génétiques ne peuvent pas traiter directement les paramètres de l'espace problème, le problème à résoudre doit être exprimé comme un chromosome dans l'espace génétique par le biais du codage ou de l'individu.

Les 3 critères suivants sont souvent utilisés pour évaluer les stratégies de codage :

a) Intégralité : tous les points (solutions candidates) dans l'espace problème peuvent être utilisés comme points dans les performances de l'espace GA (chromosome).

b) Solidité : Les chromosomes dans l'espace GA peuvent correspondre à toutes les solutions candidates dans l'espace problème.

c) Non redondance (non redondant) : Le chromosome correspond à la solution candidate un à un.

Fonction de remise en forme

L'aptitude en théorie de l'évolution signifie l'aptitude d'un individu à s'adapter à l'environnement et l'aptitude de l'individu à produire une descendance.

Geneticalgorithmsgenerallydonotneedotherexternalinformationinthesearchandevolutionprocess, andonlyuseevaluationfunctionstoevaluatetheprosandconsofindividualsorsolutions, andserveasthebasisforfuturegeneticoperations.Inthegeneticalgorithm, thefitnessfunctionneedstobecomparedandrankedandtheselectionprobabilityiscalculatedonthisbasis, sothevalueofthefitnessfunctionmusttakeapositivevalue.Itcanbeseenthat, inmanycases, itisnecessarytomaptheobjectivefunctionintoafitnessfunctionwithamaximumvalueandanon-negativefunctionvalue.

La conception de la fonction fitness répond principalement aux conditions suivantes :

a) valeur unique, continue, non négative, maximisée

b) Raisonnable et cohérent

c) Petite quantité de calcul

d)Forte polyvalence.

Dans des applications spécifiques, la conception de la fonction de fitness doit être combinée avec les exigences de résolution du problème lui-même.

Sélection de population initiale

Dans le gorithme génétique, les individus de la population initiale sont générés de manière aléatoire.

a)Selon laconnaissanceinhérenteduproblème,essayezde saisirlaplagededistributiondel'espaceoccupéparlasolutionoptimaledanstoutl'espaceproblème,puis,définissezicilapopulationinitialedanslaplagededistribution.

b)générer d'abord au hasard un certain nombre d'individus, puis sélectionner les meilleurs individus parmi la population initiale et les ajouter à la population initiale.

Opération en cours

Le processus de base de l'algorithme génétique est le suivant :

(1)Initialisation :Définirlecompteurgébriqueévolutif=0,définirlagébréeévolutivemaximaleT,Générer aléatoirementMindividuscommepopulationinitialeP(0).

(2)Évaluation individuelle : Calculez l'aptitude de chaque individu du groupe P(t).

(3)Opération de sélection : L'opérateur de sélection s'applique au groupe. La finalité de la sélection est d'hériter les individus optimisés directement à la génération suivante ou de générer de nouveaux individus par appariement et croisement, puis de les hériter à la génération suivante.

(4)Opération de croisement : l'opérateur de croisement est appliqué au groupe. Le rôle clé dans l'algorithme génétique est l'opérateur de croisement.

(5)Opération de mutation : L'opérateur de mutation est appliqué à la population. Cela permet de modifier la valeur génétique de certains locus du cluster d'individus de la population.

(6) Jugement des conditions de cessation d'emploi : Ift=T, la personne ayant la forme physique maximale obtenue dans le processus d'évolution est utilisée comme sortie de solution optimale et le calcul est annulé.

Les opérations génétiques comprennent les trois opérateurs génétiques de base suivants : sélection ; croisement ; mutation.

Sélection

Theoperationofselectingsuperiorindividualsfromthegroupandeliminatinginferiorindividualsiscalledselection.Selectionoperatorsaresometimescalledreproductionoperators.Thepurposeofselectionistoinherittheoptimizedindividual (orsolution) directlytothenextgenerationortogenerateanewindividualthroughpairingandcrossoverandtheninheritittothenextgeneration.Theselectionoperationisbasedonthefitnessevaluationofindividualsinthegroup.Thecommonlyusedselectionoperatorsareasfollows: fitnessratiomethod, randomtraversalsamplingmethod, andlocalselectionmethod.

Croisement

L'organisation(plusmutation)desgènesgénétiquesbiologiquesjoueunrôlecentraldansl'évolutiondesorganismesnaturels.

Mutation

Le contenu de base de l'opérateur de mutation modifie la valeur du gène à certains endroits des chaînes individuelles de la population. Selon les différents modes de représentation des codes individuels, les algorithmes suivants peuvent être utilisés :

a) Mutation à valeur réelle.

b) Mutation binaire.

D'une manière générale, les étapes de base de l'opérateur de mutation sont les suivantes :

a) Déterminer s'il faut effectuer une mutation en fonction de la probabilité de mutation prédéfinie pour tous les individus du groupe

b)Sélectionnez au hasard la position mutée pour l'individu muté à muter.

Geneticalgorithmintroducesmutationfortwopurposes: oneistomakegeneticalgorithmhavelocalrandomsearchability.Whenthegeneticalgorithmisclosetotheoptimalsolutionneighborhoodthroughthecrossoveroperator, thelocalrandomsearchabilityofthemutationoperatorcanacceleratetheconvergencetotheoptimalsolution.Obviously, theprobabilityofmutationinthiscaseshouldbeasmallvalue, otherwisethebuildingblocksclosetotheoptimalsolutionwillbedestroyedduetomutation.Thesecondistoenablegeneticalgorithmstomaintaingroupdiversitytopreventimmatureconvergence.Atthistime, theconvergenceprobabilityshouldtakealargervalue.

Condition de résiliation

Lorsque l'aptitude de l'individu optimal atteint un seuil, ou l'aptitude de l'individu optimal et lorsque l'algorithme se termine, l'algorithme se termine. Le nombre prédéfini de générations est généralement réglé sur 100-500 générations.

Caractéristiques

L'gorithme génétique est un algorithme général pour résoudre des problèmes de recherche, qui peut être utilisé pour divers problèmes généraux. Les caractéristiques communes des algorithmes de recherche sont :

(1)Premier ensemble de solutions des candidats

(2) Mesurer l'adéquation des solutions des candidats en fonction de certaines conditions d'adaptabilité

(3)Conserver certainessolutionscandidatesbaséessurl'aptitudeetjeterlesautressolutionscandidates

(4)Effectuer certaines opérations sur les solutions candidates retenues pour générer de nouvelles solutions candidates.

Les algorithmes génétiques, les caractéristiques mentionnées ci-dessus sont combinés d'une manière spéciale : la recherche parallèle basée sur des groupes de chromosomes, les opérations de sélection avec propriétés de devinette, les opérations d'échange et les opérations de mutation.

Le gorithme génétique a également les caractéristiques suivantes :

(1) L'algorithme part de l'ensemble des solutions aux problèmes, plutôt que d'une solution unique. C'est une grande différence entre l'algorithme d'optimisation génétique et l'algorithme d'optimisation traditionnel.

(2)Le gorithme génétique traite plusieurs individus dans le groupe en même temps, c'est-à-dire évalue plusieurs solutions dans l'espace de recherche, réduisant le risque de chute vers des solutions locales optimales, et l'algorithme lui-même est facile à paralléliser.

(3)Les algorithmes génétiques n'utilisent fondamentalement pas les connaissances de l'espace de recherche ou d'autres informations auxiliaires, mais n'utilisent que les valeurs de la fonction de fitness pour évaluer des individus et effectuer des opérations génétiques sur cette base.

(4) L'algorithme génétique n'utilise pas de règles déterministes, mais utilise des règles transitoires probabilistes pour guider sa direction de recherche.

(5)Auto-organisation,auto-adaptationetauto-apprentissage.Lorsque legorithmegénétique utilise lesinformationsobtenuesdansleprocessusd'évolutionpour organiser lui-même la recherche, les individus en meilleure forme physique ont une probabilité de survie plus élevée et acquièrent une structure génétique plus adaptée à l'environnement.

(6)En outre, l'algorithme lui-même peut également utiliser une technologie adaptative dynamique pour régler automatiquement les paramètres de contrôle de l'gorithme et la précision du codage au cours du processus d'évolution, par exemple en utilisant la méthode adaptative floue.

Désavantages

(1)Le codage n'est pas standardisé et le codage n'est pas précis.

(2)Un seul code de gorithmegénétique ne peut pas exprimer pleinement les contraintes du problème d'optimisation.Unefaçondeconsidérerlescontraintesestdesseuilspourdessolutionsimpossibles.De cette façon,le temps de calcul augmenterainévitablement.

(3)L'efficacitédugorithmegénétiqueestgénéralementinférieureàcelledesautresméthodesd'optimisationtraditionnelles.

(4)Les algorithmes génétiques ont tendance à converger prématurément.

(5) L'algorithme génétique n'a pas de méthode d'analyse quantitative efficace pour la précision, la faisabilité et la complexité de calcul de l'algorithme.

Application

Parce quelastratégiederechercheglobaleetlaméthodederechercheoptimiséedel'gorithmegénétiquenedépendentpasd'informationsdegradientouautresconnaissancesauxiliairesdanslecalcul,seulelafonctionobjectifetcorrespondant.

Optimisation des fonctions

L'optimisation des fonctions est un domaine d'application classique de l'algorithme génétique, et c'est également un exemple courant d'algorithme génétique pour l'évaluation des performances.

Optimisation combinatoire

Astheproblemsizeincreases, thesearchspaceofcombinatorialoptimizationproblemsalsoincreasessharply, andsometimesitisdifficulttofindtheoptimalsolutionusingenumerationincalculations..Forsuchcomplexproblems, peoplehaverealizedthatthemainenergyshouldbefocusedonseekingsatisfactorysolutions, andgeneticalgorithmisoneofthebesttoolsforseekingsuchsatisfactorysolutions.PracticehasprovedthatgeneticalgorithmisveryeffectiveforNPproblemsincombinatorialoptimization.Forexample, geneticalgorithmhasbeensuccessfullyappliedinsolvingtravelingsalesmanproblem, problème du sac à dos, packingproblem, graphpartitionproblemandsoon.

En outre, GA a également été largement utilisé dans les problèmes de planification de production, de contrôle automatique, de robotique, de traitement d'images, de vie artificielle, de codage génétique et d'apprentissage automatique.

Planning des ateliers

TheproblemofworkshopschedulingisatypicalNP-Hardproblem.Asaclassicintelligentalgorithm, geneticalgorithmiswidelyusedinworkshopscheduling.ManyscholarsarecommittedtousingThegeneticalgorithmsolvestheproblemofworkshopschedulingandhasachievedveryfruitfulresultstoday.Fromtheoriginaltraditionaljobshopscheduling (JSP) problemtotheflexiblejobshopschedulingproblem (FJSP), geneticalgorithmshaveexcellentperformanceandhaveobtainedoptimalornear-optimalsolutionsinmanyexamples.

Cet article provient du réseau, ne représente pas la position de cette station. Veuillez indiquer l'origine de la réimpression
HAUT