Hi Tobias,
The 'rowexch' function in MATLAB is used for generating D-optimal designs, which are a type of experimental design. The algorithm behind 'rowexch' is based on the Modified Federov Algorithm. This algorithm iteratively improves the design by exchanging rows in a candidate set to maximize the determinant of the information matrix, which is the criterion for D-optimality.
Here's a brief overview of how the Modified Federov Algorithm works:
- Initialization: Start with an initial design, which can be randomly selected or based on some heuristic.
- Exchange Process: Iteratively exchange rows between the current design and a candidate set to improve the design's optimality.
- Convergence: Continue exchanging until no further improvement can be made, or until a specified number of iterations is reached.
The Modified Federov Algorithm is particularly suited for handling large candidate sets and is widely used for generating optimal experimental designs.
Refer the following documentation for more details.
