Training
Surrogate training can take many different forms depending on the problem definition and the problem solving methods available. That's why JuliaSimSurrogates.jl
provides a flexible framework for posing a problem and employing various problem solving methods.
The Training
framework is composed of three parts:
- Tasks
- Strategies
- Actions
Task
A Task is a problem to solve. This is the problem definition and there can only be one. This will vary user to user, but typically it takes the form of a ModelingToolkit.jl
model or an FMU.
Strategy
A Strategy is a way to go about solving the Task. There can be many strategies for a particular Task.
<!– TODO: explain Training Graphs aka DAGs –> <!– TODO: explain Ports aka ways to ensure compatibility between nodes –>
Action
An Action is a procedural step of a Strategy to solve Task. There can (and almost certainly will) be many actions for a Strategy + Task.