ConstraintTolerance | Determina la fattibilità rispetto ai vincoli non lineari. Inoltre, max(sqrt(eps),ConstraintTolerance) determina la fattibilità rispetto ai vincoli lineari. Per una struttura di opzioni, utilizzare TolCon . | Scalare non negativo | {1e-3} |
CreationFcn
| Funzione che crea la popolazione iniziale. Specificare come nome di una funzione di creazione incorporata o di una funzione handle. Vedi Population Options . | {'gacreationuniform'} | {'gacreationlinearfeasible'}* | 'gacreationnonlinearfeasible' | {'gacreationuniformint'} I* per ga | {'gacreationsobol'} I* per gamultiobj | Funzione di creazione personalizzata
|
CrossoverFcn
| Funzione utilizzata dall'algoritmo per creare children crossover. Specificare come nome una funzione crossover incorporata o una funzione handle. Vedi Crossover Options . | {'crossoverscattered'} per ga , {'crossoverintermediate'}* per gamultiobj | {'crossoverlaplace'} I* | 'crossoverheuristic' | 'crossoversinglepoint' | 'crossovertwopoint' | 'crossoverarithmetic' | Funzione crossover personalizzata
|
CrossoverFraction
| La frazione della popolazione nella generazione successiva, esclusi i children dell'élite, creata dalla funzione di crossover. | Scalare non negativo | {0.8} |
Display
| Livello di visualizzazione. | 'off' | 'iter' | 'diagnose' | {'final'}
|
DistanceMeasureFcn
| Funzione che calcola la misura della distanza degli individui. Specificare come nome una funzione di misura della distanza incorporata o una funzione handle. Il valore si applica alla variabile decisionale o allo spazio di progettazione (genotipo) o allo spazio funzionale (fenotipo). Il valore predefinito 'distancecrowding' si trova nello spazio funzionale (fenotipo). Solo per gamultiobj . Vedi Multiobjective Options . Per una struttura di opzioni, utilizzare una funzione handle, non un nome. | {'distancecrowding'} significa lo stesso di {@distancecrowding,'phenotype'} | {@distancecrowding,'genotype'} | Funzione di distanza personalizzata
|
EliteCount
| NM Numero intero positivo che specifica quanti individui della generazione attuale hanno la garanzia di sopravvivere alla generazione successiva. Non utilizzato in gamultiobj . | Intero non negativo | {ceil(0.05*PopulationSize)} | {0.05*(default PopulationSize)} per problemi misti interi |
FitnessLimit
| NM Se la funzione di fitness raggiunge il valore di FitnessLimit , l'algoritmo si arresta. | Scalare | {-Inf} |
FitnessScalingFcn
| Funzione che scala i valori della funzione di fitness. Specificare come nome di una funzione di ridimensionamento integrata o di una funzione handle. Opzione non disponibile per gamultiobj . | {'fitscalingrank'} | 'fitscalingshiftlinear' | 'fitscalingprop' | 'fitscalingtop' | Funzione di ridimensionamento fitness personalizzata
|
FunctionTolerance | L'algoritmo si arresta se la variazione relativa media del valore della migliore funzione di fitness su MaxStallGenerations generazioni è minore o uguale a FunctionTolerance . Se StallTest è 'geometricWeighted' , l'algoritmo si arresta se la variazione relativa media ponderata è minore o uguale a FunctionTolerance . Per gamultiobj , l'algoritmo si arresta quando la media geometrica della variazione relativa del valore dello spread su options.MaxStallGenerations generazioni è inferiore a options.FunctionTolerance e lo spread finale è inferiore allo spread medio sulle ultime options.MaxStallGenerations generazioni. Vedi gamultiobj Algorithm . Per una struttura di opzioni, utilizzare TolFun . | Scalare non negativo | {1e-6} per ga , {1e-4} per gamultiobj |
HybridFcn
| I* Funzione che continua l'ottimizzazione dopo la terminazione di ga . Specificare come nome o function handle. In alternativa, un array di celle che specifica la funzione ibrida e le sue opzioni. Vedi ga Hybrid Function . Per gamultiobj , l'unica funzione ibrida è @fgoalattain . Vedi gamultiobj Hybrid Function . Quando il problema presenta vincoli interi, non è possibile utilizzare una funzione ibrida. Vedi Quando utilizzare una funzione ibrida . | Nome funzione o handle | 'fminsearch' | 'patternsearch' | 'fminunc' | 'fmincon' | {[]} O Matrice di celle 1 per 2 | {@solver, hybridoptions} , dove solver = fminsearch , patternsearch , fminunc o fmincon {[]} |
Penalità Iniziale | NM I* Valore iniziale del parametro di penalità | Scalare positivo | {10} |
InitialPopulationMatrix
| Popolazione iniziale utilizzata per generare l'algoritmo genetico. Ha fino a PopulationSize righe e N colonne, dove N è il numero di variabili. È possibile passare una popolazione parziale, ovvero una con meno di PopulationSize righe. In tal caso, l'algoritmo genetico utilizza CreationFcn per generare i membri rimanenti della popolazione. Vedi Population Options . Per una struttura di opzioni, utilizzare InitialPopulation . | Matrice | {[]} |
InitialPopulationRange
| Matrice o vettore che specifica l'intervallo degli individui nella popolazione iniziale. Si applica alla funzione di creazione gacreationuniform . ga sposta e ridimensiona l'intervallo iniziale predefinito per adattarlo a eventuali limiti finiti. Per una struttura di opzioni, utilizzare PopInitRange . | Matrice o vettore | {[-10;10]} per componenti illimitate, {[-1e4+1;1e4+1]} per componenti illimitate di problemi con vincoli interi, {[lb;ub]} per componenti limitate, con l'intervallo predefinito modificato per corrispondere ai limiti unilaterali |
InitialScoresMatrix
| Punteggi iniziali utilizzati per determinare l'idoneità. Ha fino a PopulationSize righe e Nf colonne, dove Nf è il numero di funzioni di fitness (1 per ga , maggiore di 1 per gamultiobj ). È possibile passare una matrice di punteggi parziali, ovvero una con meno di PopulationSize righe. In tal caso, il risolutore inserisce i punteggi quando valuta le funzioni di idoneità. Per una struttura di opzioni, utilizzare InitialScores . | Vettore colonna per obiettivo singolo | matrice per multiobiettivo | {[]} |
MaxGenerations
| Numero massimo di iterazioni prima che l'algoritmo si arresti. Per una struttura di opzioni, utilizzare Generations . | Intero non negativo |{100*numberOfVariables} per ga , {200*numberOfVariables} per gamultiobj |
MaxStallGenerations
| L'algoritmo si arresta se la variazione relativa media del valore della migliore funzione di fitness su MaxStallGenerations generazioni è minore o uguale a FunctionTolerance . Se StallTest è 'geometricWeighted' , l'algoritmo si arresta se la variazione relativa media ponderata è minore o uguale a FunctionTolerance . Per gamultiobj , l'algoritmo si arresta quando la media geometrica della variazione relativa del valore dello spread su options.MaxStallGenerations generazioni è inferiore a options.FunctionTolerance e lo spread finale è inferiore allo spread medio sulle ultime options.MaxStallGenerations generazioni. Vedi gamultiobj Algorithm . Per una struttura di opzioni, utilizzare StallGenLimit . | Intero non negativo | {50} per ga , {100} per gamultiobj |
MaxStallTime
| NM L'algoritmo si arresta se non si verifica alcun miglioramento nella funzione obiettivo per MaxStallTime secondi, come misurato da tic e toc . Per una struttura di opzioni, utilizzare StallTimeLimit . | Scalare positivo | {Inf} |
MaxTime
| L'algoritmo si arresta dopo un'esecuzione di MaxTime secondi, come misurato da tic e toc . Questo limite viene applicato dopo ogni iterazione, quindi ga può superarlo quando un'iterazione richiede molto tempo. Per una struttura di opzioni, utilizzare TimeLimit . | Scalare non negativo | {Inf} |
Direzione della migrazione | Direzione della migrazione. Vedi Migration Options . | 'both' | {'forward'}
|
Frazione di Migrazione | Scalare da 0 a 1 che specifica la frazione di individui in ciascuna sottopopolazione che migra verso una sottopopolazione diversa. Vedi Migration Options . | Scalare | {0.2} |
Intervallo di migrazione | Numero intero positivo che specifica il numero di generazioni che hanno luogo tra le migrazioni di individui tra sottopopolazioni. Vedi Migration Options . | Numero intero positivo | {20} |
MutationFcn
| Funzione che produce mutation children. Specificare come nome una functionName di mutation incorporata o una unctionHandle funzione handle. Vedi Mutation Options . | {'mutationgaussian'} per ga senza vincoli | {'mutationadaptfeasible'}* per gamultiobj e per ga con vincoli | {'mutationpower'} I* | 'mutationpositivebasis' | 'mutationuniform' | Funzione di mutation personalizzata.
|
NonlinearConstraintAlgorithm
| Algoritmo di vincolo non lineare. Vedi Nonlinear Constraint Solver Algorithms for Genetic Algorithm . Opzione non modificabile per gamultiobj . Per una struttura di opzioni, utilizzare NonlinConAlgorithm . | {'auglag'} per ga , {'penalty'} per gamultiobj
|
OutputFcn
| Funzioni che ga richiama a ogni iterazione. Specificare come funzione handle o come array di celle di funzione handle. Vedi Output Function Options . Per una struttura di opzioni, utilizzare OutputFcns . | Funzione handle o array di celle di funzione handle | {[]} |
ParetoFraction
| Scalare da 0 a 1 che specifica la frazione di individui da mantenere sul primo fronte di Pareto mentre il risolutore seleziona gli individui dai fronti superiori, solo per gamultiobj . Vedi Multiobjective Options . | Scalare | {0.35} |
Penalty Factor | NM I* Parametro di aggiornamento della penalità. | Scalare positivo | {100} |
PlotFcn
| Funzione che traccia i dati elaborati dall'algoritmo. Specificare come nome una funzione di grafico incorporata, una funzione handle o una matrice di celle di nomi incorporati o funzioni handle. Vedi Plot Options . Per una struttura di opzioni, utilizzare PlotFcns . | ga oppure gamultiobj : {[]} | 'gaplotdistance' | 'gaplotgenealogy' | 'gaplotselection' | 'gaplotscorediversity' |'gaplotscores' | 'gaplotstopping' | 'gaplotmaxconstr' | Funzione di tracciamento personalizzata
Solo ga : 'gaplotbestf' | 'gaplotbestindiv' | 'gaplotexpectation' | 'gaplotrange' Solo gamultiobj : 'gaplotpareto' | 'gaplotparetodistance' | 'gaplotrankhist' | 'gaplotspread' |
Intervallo di Trama | Numero intero positivo che specifica il numero di generazioni tra chiamate consecutive alle funzioni di tracciamento. | Numero intero positivo | {1} |
PopulationSize
| Dimensione della popolazione. | Intero positivo | {50} quando numberOfVariables <= 5 , {200} altrimenti | {min(max(10*nvars,40),100)} per problemi misti interi |
PopulationType
| Tipo di dati della popolazione. Deve essere 'doubleVector' per i problemi misti interi. | 'bitstring' | 'custom' | {'doubleVector'}
ga ignora tutti i vincoli quando PopulationType è impostato su 'bitString' o 'custom' . Vedi Population Options .
|
SelectionFcn
| Funzione che seleziona i genitori di crossover e mutation children. Specificare come nome di una funzione di selezione incorporata o di una funzione handle. gamultiobj utilizza solo 'selectiontournament' .
| {'selectionstochunif'} per ga , {'selectiontournament'} per gamultiobj | 'selectionremainder' | 'selectionuniform' | 'selectionroulette' | Funzione di selezione personalizzata
|
Test di Stallo | NM Interruzione del tipo di test. | 'geometricWeighted' | {'averageChange'}
|
UseParallel | Calcolare in parallelo le funzioni di idoneità e di vincolo non lineare. Vedere Vectorize and Parallel Options (User Function Evaluation) e How to Use Parallel Processing in Global Optimization Toolbox . | true | {false}
|
UseVectorized
| Specifica se le funzioni sono vettorializzate. Vedere Vectorize and Parallel Options (User Function Evaluation) e Vectorize the Fitness Function . Per una struttura di opzioni, utilizzare Vectorized con i valori 'on' o 'off' . | true | {false}
|