Dakota Reference Manual: sequential

| Dakota Reference Manual Version 6.15 Explore and Predict with Confidence

- Main Page
- Related Pages

All Pages
sequential

Methods are run one at a time, in sequence

## Specification

Alias: uncoupled

Argument(s): none

Child Keywords:

| Required/Optional | Description of Group | Dakota Keyword | Dakota Keyword Description
--- | --- | --- | --- | ---
| Required (Choose One) | Sub-method Selection (Group 1) | method_name_list | List of Dakota methods to sequentially or collaboratively run
method_pointer_list | Pointers to methods to execute sequantially or collaboratively
| Optional | iterator_servers | Specify the number of iterator servers when Dakota is run in parallel
| Optional | iterator_scheduling | Specify the scheduling of concurrent iterators when Dakota is run in parallel
| Optional | processors_per_iterator | Specify the number of processors per iterator server when Dakota is run in parallel

## Description

In the `sequential` approach, methods are run one at a time, in sequence. The best solutions from one method are used to initialize the next method.

The sequence of methods (i.e. iterators) to run are specified using either a `method_pointer_list` or a `method_name_list` (with optional `model_pointer_list`). Any number of iterators may be specified.

Method switching is managed through the separate convergence controls of each method. The number of solutions transferred between methods is specified by the particular method through its final_solutions method control.

For example, if one sets up a two-level study with a first method that generates multiple solutions such as a genetic algorithm, followed by a second method that is initialized only at a single point such as a gradient-based algorithm, it is possible to take the multiple solutions generated by the first method and create several instances of the second method, each one with a different initial starting point.

The logic governing the transfer of multiple solutions between methods is as follows:

- if one solution is returned from method A, then one solution is transferred to method B.
- If multiple solutions are returned from method A, and method B can accept multiple solutions as input (for example, as a genetic algorithm population), then one instance of method B is initialized with multiple solutions.
- If multiple solutions are returned from method A but method B only can accept one initial starting point, then method B is run several times, each one with a separate starting point from the results of method A.