User profiles overview

  • [DUC] Development Use Case: MetaGen’s is used by a developer to program a new metaheuristic algorithm, simplifying the development process and making it accessible to any user who wants to optimize a problem.

  • [SUC] Solving Use Case: MetaGen’s is used by a solver to define an optimization problem and use a metaheuristic to find the best hyperparameter configuration for a specific machine or deep learning model.

Development Use Case

Figure 2 DUC: Development Use Case.

The core of MetaGen is located in the metagen.framework package; it contains the logic to support both use cases.

Solving Use Case

Figure 3 SUC: Solving Use Case.

The Solving Use Case figure shows how the metagen.framework package helps a solver to define its own hyperparameter application domains by setting the range of variable values through the Domain class and to define a fitness function using the standard interface with potential solutions treated by the metaheuristic, provided by the Solution class. The metagen.metaheuristics package includes several developed metaheuristics. A solver defines a problem using the Domain class and solves it with one of these available metaheuristics (or another implemented by a third-party developer).