Nature inspired optimization algorithms (NOA) are stochastic search methods that simulate how nature solves its own problems. optiSLang provides Evolutionary Algorithms, Particle Swarm Optimization, Stochastic Design Improvement and Covariance Matrix Adaptation. For each of these algorithms a start population is generated randomly using Latin Hypercube Sampling or several designs can be selected from previous analyses. In the ideal case, optimal designs are taken from a preceding sensitivity analysis. If you provide more start designs than in Start population size specified, optiSLang will take them all. Out of this start population as much best designs as needed are chosen to create the next generation.
Evolutionary Algorithms (EA) are stochastic search methods that mimic processes of natural biological evolution like adaption, selection and variation. optiSLang uses a flexible implementation of genetic algorithm (GA) and evolutionary strategy (ES) which allows you to scale between pure GA, which performs a global search, and pure ES, which searches locally. Evolutionary algorithms can be used for discrete and continuous design variables, for single and multi-objective optimization tasks, problems with a large ratio of failed designs. EA are significant more efficient than gradient-based and response surface based methods if the number of design variables and constraint conditions is large.
Particle Swarm Optimization (PSO) is a population based global optimization algorithm, where each population consists of a given number of particles which move through the design space. Based on an initial position, which is chosen out of the start population, the position of each particle is updated in each iteration step with respect to the best global position and its own best position found in previous steps. The PSO works similarly to the Evolutionary Algorithms for single and multi-objective optimization problems and problems with a large amount of failed designs. It is less efficient compared to Evolutionary Algorithms if discrete design variables and many constraint conditions are investigated. For optimization tasks with continuous design variables the PSO converges generally very close to the global optimum.
Stochastic Design Improvement (SDI) is a local, single-objective optimization procedure using a simple stochastic approach. Based on an initial design, which is the best one out of the start population, new samples are generated by Latin Hypercube Sampling within a given range. In each iteration step, the best design is taken as new center point for the sampling of the next iteration. The ranges of the sampling scheme are adapted in each iteration step. Due to its pure stochastic design improvement the SDI is very robust and works for a high amount of failed designs, discrete and continuous parameter, and a high number of design variables and constraint conditions. Nevertheless, its efficiency is significantly lower compared to Evolutionary Algorithms and Particle Swarm Optimization.
Covariance Matrix Adaptation (CMA) is a stochastic, or randomized, evolution strategy for real-parameter (continuous domain) optimization of non-linear, non-convex functions. Randomized search algorithms are regarded to be robust in a rugged search landscape, which can comprise discontinuities, (sharp) ridges, or local optima. The CMA in particular is designed to tackle, additionally, ill-conditioned and non-separable problems. It is a method to update the covariance matrix of the distribution new candidate solutions are sampled according to. In contrast to most classical methods, fewer assumptions on the nature of the underlying objective function are made. Only the ranking between candidate solutions is exploited for learning the sample distribution and neither derivatives nor even the function values themselves are required by the method.
Further information about methods of multidisciplinary optimization used in optiSLang can be found here.
Relevant Parameters
Only parameters with deterministic properties (Optimization or Opt.+Stoch. parameter) are relevant for optimization.
Algorithm Settings
Algorithm Settings
To access the options shown in the following table, double-click the Nature Inspired Optimization system on the Scenery pane and switch to the NOA tab.
Common Settings
Option | Description |
---|---|
Algorithm type | Selects the algorithm to run. |
Maximum number of samples | Specifies the maximum number of samples to be computed. |
Search strategy |
Sets the search strategy of the algorithm. This selection and some further conditions, like number of inputs and objectives, adjusts the settings of the chosen algorithm. The global setting is recommended for a first exploration of the search space, local is recommended for improvements of a pre-optimized design. |
Population
This section contains parameters required for initialization and convergence.
Option | Description |
---|---|
Population size | Specifies the number of individuals of all populations except the first. |
Maximum number of generations | Specifies the number of generations after the optimization stops at the latest. |
Number of stagnation generations | Stops the optimization no improvement of the best individual is seen after this number of generations. The value must be between 2 and the value in Maximum Number of Generations. |
Start population size | Specifies the number of individuals of the first population. |
Fitness
This section provides parameters which influence the selection mechanism and for constraint handling methods.
Option | Description |
---|---|
Constraint handling | Defines the treatment of violated constraints or failed designs when calculating the fitness values. |
Fitness method | Specifies how to evaluate fitness values out of objective values in order to find the best individuals. Weighted sum is recommended for single-objective and Pareto dominance for multi-objective problems. |
Special settings for Evolutionary Algorithm
These settings are available only when you have selected
as the algorithm type.Selection
This section provides parameters which influence the parent selection mechanism, and the archive.
Option | Description |
---|---|
Archive size | Specifies the number of archive individuals. Archive size best individuals from the old population are marked as archive individuals. Together with the offspring they form the set, the parents for the next generation are selected from. |
Number of parents | Specifies the number of best individuals which are selected from the current population and the archive. They form the pool for reproduction. |
Ranking method | Performs the ranking method of fitness values before parent selection to overcome the scaling problem. You can choose between linear and exponential ranking. For multi-objective problems the pareto method is also available. |
Selection method | Sets the selection method for reproduction. Population size individuals are selected by the chosen method out of the parents. These individuals are then used to form new offspring by recombination and mutation. |
Tournament size | Refers to the tournament selection operator only. It specifies how many individuals are selected for each tournament. This value is in a range of one to number of parents. |
Recombination
The crossover operator is a method of recombination where two parent individuals produce two offspring by sharing information between chromosomes. This section provides various parameters for choosing and adjusting the crossover mechanism.
Option | Description |
---|---|
Crossover method | Sets the method for recombining genes of pairwise parent individuals. |
Crossover probability | Available when Crossover method drop-down list. It sets the probability that two genes are crossed. | or is selected from the
Number crossover points | Available when Crossover method drop-down list. It specifies the number of crossover points for the multipoint crossover operator. Its value is dependant on the number of optimization variables. | is selected from the
Distribution parameter | Available when Crossover method drop-down list. A small value allows solutions far from the parents to be generated, while a large value restricts the operator to generate offspring individuals in a close neighbourhood of the parents. | is selected from the
second | If this check box is selected, you can choose a second crossover operator to combine different characteristics of both operators for the offspring creation mechanism. The recombination method is chosen randomly between the two specified methods for every recombination procedure. |
Mutation
Mutation introduces random variation to the genes of the offspring chromosome.
Option | Description |
---|---|
Mutation method | Selects a mutation operator. To deactivate mutation, select | .
Mutation rate | Sets the probability that a gene mutates. |
Standard deviation begin | Defines the standard deviation for the normal distributed mutation or minimum value for the initial standard deviation for the self adaptive mutation. The standard deviation is not expressed as an absolute value, but as a factor of the corresponding variable range. |
Standard deviation end | Defines the standard deviation for the normal distributed mutation at the end of the optimization or the maximum value for the initial standard deviation for the self adaptive mutation. For the normal distributed mutation, start and end values are linear interpolated over the maximum number of generations. |
Special Settings for Particle Swarm Optimization
These settings are available only when you have selected
as the algorithm type.Swarm Behavior
This section contains various parameters for the swarm movement.
Option | Description |
---|---|
Inertia weight | Sets the scaling factor for the velocity of each individual in the previous generation. |
Personal acceleration | Specifies the influence of the personal best for searching. The personal acceleration coefficient is a scaling factor for the cognitive component of the movement equation. |
Global acceleration | Specifies the influence of the global best for searching. The global acceleration coefficient is a scaling factor for the social component of the movement equation. |
Passive congregation | Specifies the influence of a randomly chosen individual of the swarm. Passive congregation is an important biological force preserving swarm integrity. By introducing passive congregation, information can be transferred among individuals. |
Special Settings for Stochastic Design Improvement
These settings are available only when you have selected
as the algorithm type.Option | Description |
---|---|
Mutation | |
Sampling bounds width | Specifies the size of the sampling area. It is used as a factor for the global search space. |
Special Settings for Covariance Matrix Adaptation
These settings are available only when you have selected
as the algorithm type.Option | Description |
---|---|
Selection | |
Number of parents | Specifies the number of best individuals which are selected from the current population. They define the mean value and the adaptation of the covariance matrix which are used to sample the next generation. |
Mutation | |
Initial standard deviation | Specifies the standard deviation of the initial sampling. It is used as a factor for the global search space. |
Additional Options
To access the options shown in the following table, in any tab, click
.Option | Description |
---|---|
Limit maximum in parallel |
Controls the resource usage of nodes in the system. When the check box is cleared (default), a value is chosen to ensure the best possible utilization of the child nodes. When the check box is selected, set the value manually to specify how many designs are sent to child nodes, limiting the maximum degree of parallelism for all children. Ansys recommends keeping the check box clear. |
Auto-save behavior |
Select one of the following options:
The project, including the database, is auto-saved (depending on defined interval) after calculating this node/system (either when the calculation succeeds or fails). By default, all parametric and algorithm systems have selected, all other nodes have selected. |