Package parsimony :: Package algorithms :: Module proximal :: Class ParallelDykstrasProximalAlgorithm
[hide private]
[frames] | no frames]

Class ParallelDykstrasProximalAlgorithm

source code

         object --+        
                  |        
bases.BaseAlgorithm --+    
                      |    
bases.ExplicitAlgorithm --+
                          |
                         ParallelDykstrasProximalAlgorithm

Dykstra's projection algorithm for two or more functions. Computes the proximal operator of a sum of functions. These functions may be indicator functions for convex sets (ProjectionOperator) or ProximalOperators.

If all functions are ProjectionOperators, this algorithm finds the projection onto the intersection of the convex sets.

The functions have projection operators (ProjectionOperator.proj) onto the respective convex sets or proximal operators (ProximalOperator.prox).

Instance Methods [hide private]
 
__init__(self, eps=5e-08, max_iter=100, min_iter=1)
x.__init__(...) initializes x; see help(type(x)) for signature
source code
 
run(self, x, prox=[], proj=[], factor=1.0, weights=None)
Finds the projection onto the intersection of two sets.
source code

Inherited from bases.BaseAlgorithm: get_params, set_params

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Static Methods [hide private]

Inherited from bases.BaseAlgorithm: check_compatibility

Class Variables [hide private]
  INTERFACES = [properties.Function, properties.OR(properties.Pr...
  __abstractmethods__ = frozenset([])
  _abc_negative_cache_version = 14

Inherited from bases.ExplicitAlgorithm: __metaclass__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, eps=5e-08, max_iter=100, min_iter=1)
(Constructor)

source code 

x.__init__(...) initializes x; see help(type(x)) for signature

Overrides: object.__init__
(inherited documentation)

run(self, x, prox=[], proj=[], factor=1.0, weights=None)

source code 
Finds the projection onto the intersection of two sets.

Parameters
----------
prox : List or tuple with two or more elements. The functions that
        are ProximalOperators. Either prox or proj must be non-empty.

proj : List or tuple with two or more elements. The functions that
        are ProjectionOperators. Either proj or prox must be non-empty.

factor : Positive float. A factor by which the Lagrange multiplier is
        scaled. This is usually the step size.

x : Numpy array. The point that we wish to project.

weights : List or tuple with floats. Weights for the functions.
        Default is that they all have the same weight. The elements of
        the list or tuple must sum to 1.

Overrides: bases.ExplicitAlgorithm.run

Class Variable Details [hide private]

INTERFACES

Value:
[properties.Function, properties.OR(properties.ProjectionOperator, pro\
perties.ProximalOperator)]