pyanno4rt.optimization.methods

Optimization methods module.


This module aims to provide different types of optimization methods.

Overview

Classes

LexicographicOptimization

Lexicographic optimization problem class.

ParetoOptimization

Pareto problem class.

WeightedSumOptimization

Weighted-sum optimization problem class.

Attributes

method_map

-

Classes

class pyanno4rt.optimization.methods.LexicographicOptimization(backprojection, objectives, constraints)[source]

Lexicographic optimization problem class.

This class provides methods to perform lexicographic optimization. It features a component tracker and implements the respective objective, gradient, constraint and constraint jacobian functions.

Parameters:

backprojection (object of class)

:param DoseProjection ConstantRBEProjection: The object representing the type of backprojection. :param objectives: Dictionary with the internally configured objectives. :type objectives: dict :param constraints: Dictionary with the internally configured constraints. :type constraints: dict

backprojection
Type:

object of class

:class:`~pyanno4rt.optimization.projections._dose_projection.DoseProjection`    :class:`~pyanno4rt.optimization.projections._constant_rbe_projection.ConstantRBEProjection`

See ‘Parameters’.

objectives

Dictionary with the rank-ordered objectives.

Type:

dict

constraints

Dictionary with the rank-ordered constraints.

Type:

dict

tracker

Dictionary with the iteration-wise component values.

Type:

dict

Overview

Methods

objective(fluence, layer, track)

Compute the objective function value.

gradient(fluence, layer)

Compute the gradient function value.

constraint(fluence, layer, track)

Compute the constraint function value(s).

jacobian(fluence, layer)

Compute the constraint jacobian function value.

Members

objective(fluence, layer, track=True)[source]

Compute the objective function value.

Parameters:
  • fluence (ndarray) – Fluence vector.

  • layer (int) – Current layer of the lexicographic order.

  • track (bool, default=True) – Indicator for tracking the single objective function values.

Returns:

Objective function value.

Return type:

float

gradient(fluence, layer)[source]

Compute the gradient function value.

Parameters:
  • fluence (ndarray) – Fluence vector.

  • layer (int) – Current layer of the lexicographic order.

Returns:

Gradient function value.

Return type:

ndarray

constraint(fluence, layer, track=True)[source]

Compute the constraint function value(s).

Parameters:
  • fluence (ndarray) – Fluence vector.

  • layer (int) – Current layer of the lexicographic order.

  • track (bool, default=True) – Indicator for tracking the constraint function value(s).

Returns:

Constraint function value(s).

Return type:

float

jacobian(fluence, layer)[source]

Compute the constraint jacobian function value.

Parameters:
  • fluence (ndarray) – Fluence vector.

  • layer (int) – Current layer of the lexicographic order.

Returns:

Constraint jacobian function value.

Return type:

ndarray

class pyanno4rt.optimization.methods.ParetoOptimization(backprojection, objectives, constraints)[source]

Pareto problem class.

This class provides methods to perform pareto optimization. It implements the respective objective and constraint functions.

Parameters:

backprojection (object of class)

:param DoseProjection ConstantRBEProjection: The object representing the type of backprojection. :param objectives: Dictionary with the internally configured objectives. :type objectives: dict :param constraints: Dictionary with the internally configured constraints. :type constraints: dict

backprojection
Type:

object of class

:class:`~pyanno4rt.optimization.projections._dose_projection.DoseProjection`    :class:`~pyanno4rt.optimization.projections._constant_rbe_projection.ConstantRBEProjection`

See ‘Parameters’.

objectives

See ‘Parameters’.

Type:

dict

constraints

See ‘Parameters’.

Type:

dict

Overview

Methods

objective(fluence)

Compute the objective function value(s).

constraint(fluence)

Compute the constraint function value(s).

Members

objective(fluence)[source]

Compute the objective function value(s).

Parameters:

fluence (ndarray) – Fluence vector.

Returns:

Objective function value(s).

Return type:

list

constraint(fluence)[source]

Compute the constraint function value(s).

Parameters:

fluence (ndarray) – Fluence vector.

Returns:

Constraint function value(s).

Return type:

list

class pyanno4rt.optimization.methods.WeightedSumOptimization(backprojection, objectives, constraints)[source]

Weighted-sum optimization problem class.

This class provides methods to perform weighted-sum optimization. It features a component tracker and implements the respective objective, gradient, constraint and constraint jacobian functions.

Parameters:

backprojection (object of class)

:param DoseProjection ConstantRBEProjection: The object representing the type of backprojection. :param objectives: Dictionary with the internally configured objectives. :type objectives: dict :param constraints: Dictionary with the internally configured constraints. :type constraints: dict

backprojection
Type:

object of class

:class:`~pyanno4rt.optimization.projections._dose_projection.DoseProjection`    :class:`~pyanno4rt.optimization.projections._constant_rbe_projection.ConstantRBEProjection`

See ‘Parameters’.

objectives

See ‘Parameters’.

Type:

dict

constraints

See ‘Parameters’.

Type:

dict

tracker

Dictionary with the iteration-wise component values.

Type:

dict

Overview

Methods

objective(fluence, track)

Compute the objective function value.

gradient(fluence)

Compute the gradient function value.

constraint(fluence, track)

Compute the constraint function value(s).

jacobian(fluence)

Compute the constraint jacobian function value.

Members

objective(fluence, track=True)[source]

Compute the objective function value.

Parameters:
  • fluence (ndarray) – Fluence vector.

  • track (bool, default=True) – Indicator for tracking the single objective function values.

Returns:

Objective function value.

Return type:

float

gradient(fluence)[source]

Compute the gradient function value.

Parameters:

fluence (ndarray) – Fluence vector.

Returns:

Gradient function value.

Return type:

ndarray

constraint(fluence, track=True)[source]

Compute the constraint function value(s).

Parameters:
  • fluence (ndarray) – Fluence vector.

  • track (bool, default=True) – Indicator for tracking the constraint function value(s).

Returns:

Constraint function value(s).

Return type:

float

jacobian(fluence)[source]

Compute the constraint jacobian function value.

Parameters:

fluence (ndarray) – Fluence vector.

Returns:

Constraint jacobian function value.

Return type:

ndarray

Attributes

pyanno4rt.optimization.methods.method_map