c

com.cra.figaro.algorithm.structured

ComponentCollection

class ComponentCollection extends AnyRef

A collection of problem components. This data structure manages all the components being used in the solution of a top-level problem and its nested subproblems. Every element exists in at most one component. To create a new component for an element, you need to say what problem it belongs to.

This class is intended for models that do not use chain function memoization recursively; for this purpose, use RecursiveComponentCollection.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ComponentCollection
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ComponentCollection()

Type Members

  1. type Expansion = Tuple2[Function1[_, Element[_]], _]

    An expansion is defined by a generative process (a function) that produces an element, and a parent value used as the argument to the function.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def apply[T](atomic: Atomic[T]): AtomicComponent[T]

    Get the component associated with this element in this collection.

    Get the component associated with this element in this collection. Throws an exception if the element is not associated with any component.

  5. def apply[T](makeArray: MakeArray[T]): MakeArrayComponent[T]

    Get the component associated with this element in this collection.

    Get the component associated with this element in this collection. Throws an exception if the element is not associated with any component.

  6. def apply[T](apply: Apply[T]): ApplyComponent[T]

    Get the component associated with this element in this collection.

    Get the component associated with this element in this collection. Throws an exception if the element is not associated with any component.

  7. def apply[P, T](chain: Chain[P, T]): ChainComponent[P, T]

    Get the component associated with this element in this collection.

    Get the component associated with this element in this collection. Throws an exception if the element is not associated with any component.

  8. def apply[T](element: Element[T]): ProblemComponent[T]

    Get the component associated with this element in this collection.

    Get the component associated with this element in this collection. Throws an exception if the element is not associated with any component.

  9. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  10. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. val components: Map[Element[_], ProblemComponent[_]]

    All the components in the collection, each associated with an element.

  12. def contains[T](element: Element[T]): Boolean

    Does the element have a component in this collection?

  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  15. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  17. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  18. var intermediates: Set[Variable[_]]

    Intermediate variables defined during the construction of factors.

    Intermediate variables defined during the construction of factors. These are not associated with any element or component and are to be eliminated wherever they appear.

  19. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  20. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. final def notify(): Unit
    Definition Classes
    AnyRef
  22. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  23. var rangingStrategy: RangingStrategy

    Ranging strategy for atomic components.

    Ranging strategy for atomic components. Initially uses the default non-lazy method that samples infinite atomics.

  24. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  25. def toString(): String
    Definition Classes
    AnyRef → Any
  26. var useSingleChainFactor: Boolean

    Indicates whether to create chain factors by decomposing the chain into several factors or a single factor This defaults to false since all the existing code a decomposition

  27. val variableParents: Map[Variable[_], Set[Variable[_]]]

    Maps a variable to the parents needed for creating blocks using Gibbs sampling.

    Maps a variable to the parents needed for creating blocks using Gibbs sampling. TODO: test if this variable causes memory leaks.

  28. val variableToComponent: Map[Variable[_], ProblemComponent[_]]

    Returns the problem component associated with a particular variable.

    Returns the problem component associated with a particular variable. Not valid for intermediate variables.

  29. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped