Interface Optimizer
public interface Optimizer
Interface implementing optimization procedure.
Procedure exchanges ProbePoints. Controller makes measurements and for each input in probe provides measured output.
Optimizer tries to guess next input point to zoom in on those inputs, that bring outputs closest to 0.
- Author:
- igor@scictrl.com
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetBest()
Returns best point so farReturns array of ProbePoint object with inputs for which optimizer wishes controller to provide outputs.double
getMax()
Returns max allowed value for inputs.double
getMin()
Returns min allowed value for inputs.getState()
operation status.void
initialize
(double inputMin, double inputMax, double inputPrecision, double outputPrecision) Sets expected boundaries for inputs.nextStep
(ProbePoint[] points) Called by Controller to provide output values for requested inputs and asks for next step evaluation.
-
Method Details
-
initialize
void initialize(double inputMin, double inputMax, double inputPrecision, double outputPrecision) Sets expected boundaries for inputs. This sets optimizer intoOptimizer.State.INITIAL
state.- Parameters:
inputMin
- min allowed inputinputMax
- max allowed inputinputPrecision
- input values precisionoutputPrecision
- output values precision, defines how close to 0 algorithm iterates
-
getState
Optimizer.State getState()operation status.- Returns:
- a
Optimizer.State
object
-
getInputs
ProbePoint[] getInputs()Returns array of ProbePoint object with inputs for which optimizer wishes controller to provide outputs.- Returns:
- an array of
ProbePoint
objects
-
nextStep
Called by Controller to provide output values for requested inputs and asks for next step evaluation. Returned is status of optimizers.- Parameters:
points
- an array ofProbePoint
objects- Returns:
- a
Optimizer.State
object
-
getBest
ProbePoint getBest()Returns best point so far- Returns:
- a
ProbePoint
object
-
getMin
double getMin()Returns min allowed value for inputs.- Returns:
- min allowed value for inputs.
-
getMax
double getMax()Returns max allowed value for inputs.- Returns:
- max allowed value for inputs.
-