UGParameterEstimator.optimizers package

Submodules

UGParameterEstimator.optimizers.bayesOptimizer module

class UGParameterEstimator.optimizers.bayesOptimizer.BayesOptimizer(parametermanager: ParameterManager, epsilon=0.0001, minreduction=0.0001, max_iterations=20)

Bases: Optimizer

run(evaluator, initial_parameters, target, result=<UGParameterEstimator.dataanalysis.result.Result object>)

Runs this optimizer.

Parameters
  • evaluator (Evaluator) – the evaluator to use for each Evaluation needed

  • initial_parameters (numpy array) – The initial parameters to start the optimization from

  • target (Evaluation) – The target of the calibration

  • result (Result, optional) – Results object to write metadata and iterations to, defaults to Result()

UGParameterEstimator.optimizers.gainedLevMarOptimizer module

class UGParameterEstimator.optimizers.gainedLevMarOptimizer.GainedLevMarOptimizer(maxiterations=15, tau=0.01, presteps=5, epsilon=0.001, minreduction=0.0001, initial_lam=None, differencing=Differencing.forward)

Bases: Optimizer

calculateDelta(V, r, p, lam)
calculateGainRatio(S, newS, delta, lam, grad)
run(evaluator, initial_parameters, target, result=<UGParameterEstimator.dataanalysis.result.Result object>)

Runs this optimizer.

Parameters
  • evaluator (Evaluator) – the evaluator to use for each Evaluation needed

  • initial_parameters (numpy array) – The initial parameters to start the optimization from

  • target (Evaluation) – The target of the calibration

  • result (Result, optional) – Results object to write metadata and iterations to, defaults to Result()

UGParameterEstimator.optimizers.gaussNewtonOptimizer module

class UGParameterEstimator.optimizers.gaussNewtonOptimizer.GaussNewtonOptimizer(linesearchmethod: LineSearch, maxiterations=15, epsilon=0.001, minreduction=0.0001, differencing=Differencing.forward)

Bases: Optimizer

run(evaluator, initial_parameters, target, result=<UGParameterEstimator.dataanalysis.result.Result object>)

Runs this optimizer.

Parameters
  • evaluator (Evaluator) – the evaluator to use for each Evaluation needed

  • initial_parameters (numpy array) – The initial parameters to start the optimization from

  • target (Evaluation) – The target of the calibration

  • result (Result, optional) – Results object to write metadata and iterations to, defaults to Result()

UGParameterEstimator.optimizers.gradDescOptimizer module

class UGParameterEstimator.optimizers.gradDescOptimizer.GradientDescentOptimizer(linesearchmethod: LineSearch, maxiterations=15, epsilon=0.001, minreduction=0.0001, max_error_ratio=(0.05, 0.95), differencing=Differencing.forward)

Bases: Optimizer

run(evaluator, initial_parameters, target, result=<UGParameterEstimator.dataanalysis.result.Result object>)

Runs this optimizer.

Parameters
  • evaluator (Evaluator) – the evaluator to use for each Evaluation needed

  • initial_parameters (numpy array) – The initial parameters to start the optimization from

  • target (Evaluation) – The target of the calibration

  • result (Result, optional) – Results object to write metadata and iterations to, defaults to Result()

UGParameterEstimator.optimizers.levMarOptimizer module

class UGParameterEstimator.optimizers.levMarOptimizer.LevMarOptimizer(maxiterations=15, initial_lam=0.01, nu=10, P=10, P_iteration_count=3, scaling=False, epsilon=0.001, minreduction=0.0001, differencing=Differencing.forward)

Bases: Optimizer

calculateDelta(V, r, p, lam)
run(evaluator, initial_parameters, target, result=<UGParameterEstimator.dataanalysis.result.Result object>)

Runs this optimizer.

Parameters
  • evaluator (Evaluator) – the evaluator to use for each Evaluation needed

  • initial_parameters (numpy array) – The initial parameters to start the optimization from

  • target (Evaluation) – The target of the calibration

  • result (Result, optional) – Results object to write metadata and iterations to, defaults to Result()

UGParameterEstimator.optimizers.mmaOptimizer module

class UGParameterEstimator.optimizers.mmaOptimizer.MMAOptimizer(maximum, minimum, minreduction=0.0001, max_iterations=15, epsilon=0.001, differencing=Differencing.forward)

Bases: Optimizer

run(evaluator, initial_parameters, target, result=<UGParameterEstimator.dataanalysis.result.Result object>)

Runs this optimizer.

Parameters
  • evaluator (Evaluator) – the evaluator to use for each Evaluation needed

  • initial_parameters (numpy array) – The initial parameters to start the optimization from

  • target (Evaluation) – The target of the calibration

  • result (Result, optional) – Results object to write metadata and iterations to, defaults to Result()

UGParameterEstimator.optimizers.optimizer module

class UGParameterEstimator.optimizers.optimizer.Optimizer(epsilon, differencing: Differencing)

Bases: ABC

A base class for all optimizers, defining the interface and common helper methods

class Differencing(value)

Bases: Enum

An enumeration.

central = 1
forward = 2
pure_central = 4
pure_forward = 3
getJacobiMatrix(point, evaluator, target, result)

Calculates the jacobi matrix in parallel using finite differencing. To do so, a number of jobs equal to the number of parameters will be passed to the given evaluator. As approximation the finite differencing with epsilon set via the class constructor will be used.

Parameters
  • point (numpy array) – The point in parameter space to calculate the jacobi matrix at

  • evaluator (Evaluator) – the evaluator to use

  • target (Evaluation) – the target of the calibration, needed only to convert all evaluations to the correct format

  • result (Result) – The result object to log to

Returns

the jacobi matrix, and the evaluation at ‘point’

Return type

tuple (numpy array, Evaluation)

measurementToNumpyArrayConverter(evaluations, target)

Helper function to convert an array of Evaluation. Each evaluation will be converted and interpolated using it’s getNumpyArrayLike method. None-values or Errors will be converted to None.

Parameters
  • evaluations (list of Evaluations) – the evaluations to convert

  • target – Evaluation describing the format/time steps

each evaluation should be converted/interpolated to :type target: Evaluation :return: the results of the covnertions :rtype: list of numpy arrays

abstract run(evaluator, initial_parameters, target, result=<UGParameterEstimator.dataanalysis.result.Result object>)

Runs this optimizer.

Parameters
  • evaluator (Evaluator) – the evaluator to use for each Evaluation needed

  • initial_parameters (numpy array) – The initial parameters to start the optimization from

  • target (Evaluation) – The target of the calibration

  • result (Result, optional) – Results object to write metadata and iterations to, defaults to Result()

UGParameterEstimator.optimizers.scipyOptimizers module

class UGParameterEstimator.optimizers.scipyOptimizers.ScipyMinimizeOptimizer(parametermanager, opt_method='L-BFGS-B', epsilon=0.0001, callback_root=False, callback_scaling=1, differencing=Differencing.forward)

Bases: Optimizer

run(evaluator, initial_parameters, target, result=<UGParameterEstimator.dataanalysis.result.Result object>)

Runs this optimizer.

Parameters
  • evaluator (Evaluator) – the evaluator to use for each Evaluation needed

  • initial_parameters (numpy array) – The initial parameters to start the optimization from

  • target (Evaluation) – The target of the calibration

  • result (Result, optional) – Results object to write metadata and iterations to, defaults to Result()

class UGParameterEstimator.optimizers.scipyOptimizers.ScipyNonlinearLeastSquaresOptimizer(parametermanager: ParameterManager, epsilon=0.001, differencing=Differencing.forward)

Bases: Optimizer

run(evaluator, initial_parameters, target, result=<UGParameterEstimator.dataanalysis.result.Result object>)

Runs this optimizer.

Parameters
  • evaluator (Evaluator) – the evaluator to use for each Evaluation needed

  • initial_parameters (numpy array) – The initial parameters to start the optimization from

  • target (Evaluation) – The target of the calibration

  • result (Result, optional) – Results object to write metadata and iterations to, defaults to Result()

Module contents