Class

com.cra.figaro.algorithm.structured

ExpandableComponent

Related Doc: package structured

Permalink

abstract class ExpandableComponent[ParentValue, Value] extends ProblemComponent[Value]

A problem component that provides an expand method.

Linear Supertypes
ProblemComponent[Value], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ExpandableComponent
  2. ProblemComponent
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ExpandableComponent(problem: Problem, parent: Element[ParentValue], element: Element[Value])

    Permalink

    parent

    the element according to whose values this component should be expanded

    element

    the element to which this component corresponds

Abstract Value Members

  1. abstract def expand(parentValue: ParentValue): Unit

    Permalink

    Expand for a particular parent value.

  2. abstract val expandFunction: (ParentValue) ⇒ Element[Value]

    Permalink

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def constraintFactors(bounds: Bounds = Lower): List[Factor[Double]]

    Permalink

    Gets the constraint factors for this component.

    Gets the constraint factors for this component. Returns the lower bound factors unless an Upper argument is provided.

    Definition Classes
    ProblemComponent
  7. val element: Element[Value]

    Permalink
    Definition Classes
    ProblemComponent
  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  10. def expand(): Unit

    Permalink

    Expand for all values of the parent that were not previously expanded, based on the current range of the parent.

  11. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. var fullyEnumerated: Boolean

    Permalink

    A problem component is fully enumerated if its range is complete.

    A problem component is fully enumerated if its range is complete. This also means that its range cannot contain star. This is always false for components associated with elements that have infinite support.

    Definition Classes
    ProblemComponent
  13. var fullyRefined: Boolean

    Permalink

    A problem component is fully refined if any additional refinement cannot change its range or factors.

    A problem component is fully refined if any additional refinement cannot change its range or factors. One necessary condition is to be fully enumerated. Additionally, expandable components must be fully expanded (i.e. have created a subproblem for each parent value), and each subproblem must be fully refined. These conditions are necessary but not always sufficient to be fully refined.

    Definition Classes
    ProblemComponent
  14. def generateRange(): Unit

    Permalink

    Generate a range of values for this component.

    Generate a range of values for this component. Also sets the variable for this component. If an argument is not in the component collection, we do not generate the argument, but instead assume its only value is *. This doesn't change the range of any other element or expand any subproblems. The range will include * based on argument ranges including * or any subproblem not being expanded.\

    Definition Classes
    ProblemComponent
  15. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  16. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  17. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  18. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  19. def nonConstraintFactors(parameterized: Boolean = false): List[Factor[Double]]

    Permalink

    Generate the non-constraint factors based on the current range.

    Generate the non-constraint factors based on the current range. For most elements, this just generates the factors in the usual way. For a chain, this does not include subproblem factors. The parameterized flag indicates whether parameterized elements should have special factors created that use the MAP values of their arguments. This defaults to false.

    Definition Classes
    ProblemComponent
  20. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  21. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  22. val problem: Problem

    Permalink
    Definition Classes
    ProblemComponent
  23. var range: ValueSet[Value]

    Permalink

    The current range of the element.

    The current range of the element. May grow or change over time.

    Definition Classes
    ProblemComponent
  24. def setVariable(v: Variable[Value]): Unit

    Permalink

    Set the variable associated with this component to the given variable.

    Set the variable associated with this component to the given variable.

    Definition Classes
    ProblemComponent
  25. var subproblems: Map[ParentValue, NestedProblem[Value]]

    Permalink

    The subproblems nested inside this expandable component.

    The subproblems nested inside this expandable component. They are created for particular parent values.

  26. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  27. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  28. def variable: Variable[Value]

    Permalink

    The current variable representing this component in factors.

    The current variable representing this component in factors. This is set automatically when the range is updated.

    Definition Classes
    ProblemComponent
  29. final def wait(): Unit

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from ProblemComponent[Value]

Inherited from AnyRef

Inherited from Any

Ungrouped