lava.lib.optimization.problems.bayesian

lava.lib.optimization.problems.bayesian.models

digraph inheritance945b246689 { bgcolor=transparent; rankdir=TB; size=""; "ABC" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",tooltip="Helper class that provides a standard way to create an ABC using"]; "AbstractProcessModel" [URL="../../lava/lava.magma.core.model.html#lava.magma.core.model.model.AbstractProcessModel",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Represents a model that implements the behavior of a Process."]; "ABC" -> "AbstractProcessModel" [arrowsize=0.5,style="setlinewidth(0.5)"]; "AbstractPyProcessModel" [URL="../../lava/lava.magma.core.model.py.html#lava.magma.core.model.py.model.AbstractPyProcessModel",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Abstract interface for Python ProcessModels."]; "AbstractProcessModel" -> "AbstractPyProcessModel" [arrowsize=0.5,style="setlinewidth(0.5)"]; "ABC" -> "AbstractPyProcessModel" [arrowsize=0.5,style="setlinewidth(0.5)"]; "PyDualInputFunctionModel" [URL="../lava-lib-optimization/lava.lib.optimization.problems.bayesian.html#lava.lib.optimization.problems.bayesian.models.PyDualInputFunctionModel",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="A Python-based implementation of the DualInputFunction process that"]; "PyLoihiProcessModel" -> "PyDualInputFunctionModel" [arrowsize=0.5,style="setlinewidth(0.5)"]; "PyLoihiProcessModel" [URL="../../lava/lava.magma.core.model.py.html#lava.magma.core.model.py.model.PyLoihiProcessModel",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="ProcessModel to simulate a Process on Loihi using CPU."]; "AbstractPyProcessModel" -> "PyLoihiProcessModel" [arrowsize=0.5,style="setlinewidth(0.5)"]; "PySingleInputFunctionModel" [URL="../lava-lib-optimization/lava.lib.optimization.problems.bayesian.html#lava.lib.optimization.problems.bayesian.models.PySingleInputFunctionModel",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="A Python-based implementation of the SingleInput process that represents a"]; "PyLoihiProcessModel" -> "PySingleInputFunctionModel" [arrowsize=0.5,style="setlinewidth(0.5)"]; }
class lava.lib.optimization.problems.bayesian.models.PyDualInputFunctionModel(proc_params=None)

Bases: PyLoihiProcessModel

A Python-based implementation of the DualInputFunction process that represents a dual continuous input, single output, non-linear objective function.

implements_process

alias of DualInputFunction

implements_protocol

alias of LoihiProtocol

num_objectives = LavaPyType(cls=<class 'int'>, d_type=<class 'int'>, precision=None)
num_params = LavaPyType(cls=<class 'int'>, d_type=<class 'int'>, precision=None)
required_resources: ty.List[ty.Type[AbstractResource]] = [<class 'lava.magma.core.resources.CPU'>]
run_spk()

tick the model forward by one time-step

Return type:

None

tags: ty.List[str] = ['floating_pt']
x_in: PyInPort = LavaPyType(cls=<class 'lava.magma.core.model.py.ports.PyInPortVectorDense'>, d_type=<class 'numpy.float64'>, precision=None)
y_out: PyOutPort = LavaPyType(cls=<class 'lava.magma.core.model.py.ports.PyOutPortVectorDense'>, d_type=<class 'numpy.float64'>, precision=None)
class lava.lib.optimization.problems.bayesian.models.PySingleInputFunctionModel(proc_params=None)

Bases: PyLoihiProcessModel

A Python-based implementation of the SingleInput process that represents a single input/output non-linear objective function.

implements_process

alias of SingleInputFunction

implements_protocol

alias of LoihiProtocol

num_objectives = LavaPyType(cls=<class 'int'>, d_type=<class 'int'>, precision=None)
num_params = LavaPyType(cls=<class 'int'>, d_type=<class 'int'>, precision=None)
required_resources: ty.List[ty.Type[AbstractResource]] = [<class 'lava.magma.core.resources.CPU'>]
run_spk()

tick the model forward by one time-step

Return type:

None

tags: ty.List[str] = ['floating_pt']
x_in: PyInPort = LavaPyType(cls=<class 'lava.magma.core.model.py.ports.PyInPortVectorDense'>, d_type=<class 'numpy.float64'>, precision=None)
y_out: PyOutPort = LavaPyType(cls=<class 'lava.magma.core.model.py.ports.PyOutPortVectorDense'>, d_type=<class 'numpy.float64'>, precision=None)

lava.lib.optimization.problems.bayesian.processes

digraph inheritanceddf9652395 { bgcolor=transparent; rankdir=TB; size=""; "AbstractProcess" [URL="../../lava/lava.magma.core.process.html#lava.magma.core.process.process.AbstractProcess",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="The notion of a Process is inspired by the Communicating Sequential"]; "BaseObjectiveFunction" [URL="../lava-lib-optimization/lava.lib.optimization.problems.bayesian.html#lava.lib.optimization.problems.bayesian.processes.BaseObjectiveFunction",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="A base objective function process that shall be used as the basis of"]; "AbstractProcess" -> "BaseObjectiveFunction" [arrowsize=0.5,style="setlinewidth(0.5)"]; "DualInputFunction" [URL="../lava-lib-optimization/lava.lib.optimization.problems.bayesian.html#lava.lib.optimization.problems.bayesian.processes.DualInputFunction",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="An abstract process representing a dual input, single output"]; "BaseObjectiveFunction" -> "DualInputFunction" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SingleInputFunction" [URL="../lava-lib-optimization/lava.lib.optimization.problems.bayesian.html#lava.lib.optimization.problems.bayesian.processes.SingleInputFunction",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="An abstract process representing a single input/output test function."]; "BaseObjectiveFunction" -> "SingleInputFunction" [arrowsize=0.5,style="setlinewidth(0.5)"]; }
class lava.lib.optimization.problems.bayesian.processes.BaseObjectiveFunction(num_params, num_objectives, **kwargs)

Bases: AbstractProcess

A base objective function process that shall be used as the basis of all black-box processes.

class lava.lib.optimization.problems.bayesian.processes.DualInputFunction(**kwargs)

Bases: BaseObjectiveFunction

An abstract process representing a dual input, single output test function.

class lava.lib.optimization.problems.bayesian.processes.SingleInputFunction(**kwargs)

Bases: BaseObjectiveFunction

An abstract process representing a single input/output test function.