atomica.optimizationΒΆ

Implements various Optimizations in Atomica

This module implements the Optimization class, which contains the information required to perform an optimization in Atomica. An Optimization effectively serves as a mapping from one set of program instructions to another.

Functions

constrain_sum_bounded

Bounded nearest constraint sum

optimize

Main user entry point for optimization

Classes

Adjustable

Class to store single optimizable parameter

Adjustment

Class to represent changes to instructions

AtLeastMeasurable

Enforce quantity exceeds a value

AtMostMeasurable

Enforce quantity is below a value

Constraint

Store conditions to satisfy during optimization

DecreaseByMeasurable

Decrease quantity by percentage

ExponentialSpendingAdjustment

Parametric overwrite example

IncreaseByMeasurable

Increase quantity by percentage

MaximizeCascadeConversionRate

Maximize overall conversion rate

MaximizeCascadeStage

MaximizeMeasurable

Measurable

Optimization objective

MinimizeMeasurable

Optimization

Instructions on how to perform an optimization

PairedLinearSpendingAdjustment

Parametric overwrite with multiple programs

SpendingAdjustment

Adjust program spending

SpendingPackageAdjustment

Adjustment to set total spending on several programs

StartTimeAdjustment

Optimize program start year

TotalSpendConstraint

Fix total spending

Exceptions

FailedConstraint

Not possible to apply constraint

InvalidInitialConditions

Invalid initial parameter values

UnresolvableConstraint

Unresolvable (ill-posed) constraint