pyanno4rt.optimization.methods._lexicographic_optimization

Lexicographic problem.

Overview

Classes

LexicographicOptimization

Lexicographic optimization problem class.

Classes

class pyanno4rt.optimization.methods._lexicographic_optimization.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