Function to create a CallbackAsync.
Optimization callbacks can be called from different stages of optimization process.
The stages are prefixed with on_*.
Start Optimization
- on_optimization_begin
Start Worker
- on_worker_begin
- on_worker_end
End Worker
- on_result
- on_optimization_end
End Optimization
See also the section on parameters for more information on the stages. A optimization callback works with ContextAsync.
callback_async(
id,
label = NA_character_,
man = NA_character_,
on_optimization_begin = NULL,
on_worker_begin = NULL,
on_worker_end = NULL,
on_result = NULL,
on_optimization_end = NULL
)(character(1))
Identifier for the new instance.
(character(1))
Label for the new instance.
(character(1))
String in the format [pkg]::[topic] pointing to a manual page for this object.
The referenced help package can be opened via method $help().
(function())
Stage called at the beginning of the optimization in the main process.
Called in Optimizer$optimize().
The functions must have two arguments named callback and context.
(function())
Stage called at the beginning of the optimization on the worker.
Called in the worker loop.
The functions must have two arguments named callback and context.
(function())
Stage called at the end of the optimization on the worker.
Called in the worker loop.
The functions must have two arguments named callback and context.
(function())
Stage called after result are written.
Called in OptimInstance$assign_result().
The functions must have two arguments named callback and context.
(function())
Stage called at the end of the optimization in the main process.
Called in Optimizer$optimize().
The functions must have two arguments named callback and context.
A callback can write data to its state ($state), e.g. settings that affect the callback itself.
The ContextAsync allows to modify the instance, archive, optimizer and final result.