ObservationBasedFiniteStateController

class ObservationBasedFiniteStateController[ValueType]

Observation-based finite-state controller for a POMDP

Template arguments:

  • ValueType (type)

Available specializations:

  • ObservationBasedFiniteStateController[float]

  • ObservationBasedFiniteStateController[stormpy.numbers.Rational]

Members

ObservationBasedFiniteStateController.get_action(
self: stormpy.pomdp.ObservationBasedFiniteStateController[ValueType],
node: SupportsInt | SupportsIndex,
observation: SupportsInt | SupportsIndex,
) → int

Local action chosen for the observation in the memory node (deterministic outputs only)

ObservationBasedFiniteStateController.get_action_distribution(
self: stormpy.pomdp.ObservationBasedFiniteStateController[ValueType],
node: SupportsInt | SupportsIndex,
observation: SupportsInt | SupportsIndex,
) → dict[int, ValueType]

Distribution over local actions for the observation in the memory node, as a dict from action to probability

ObservationBasedFiniteStateController.get_action_name(
self: stormpy.pomdp.ObservationBasedFiniteStateController[ValueType],
observation: SupportsInt | SupportsIndex,
action: SupportsInt | SupportsIndex,
) → str

Name of the local action of the observation

ObservationBasedFiniteStateController.get_successor(
self: stormpy.pomdp.ObservationBasedFiniteStateController[ValueType],
node: SupportsInt | SupportsIndex,
observation: SupportsInt | SupportsIndex,
) → int

Successor memory node for the observation in the memory node

ObservationBasedFiniteStateController.has_action_name(
self: stormpy.pomdp.ObservationBasedFiniteStateController[ValueType],
observation: SupportsInt | SupportsIndex,
action: SupportsInt | SupportsIndex,
) → bool

Whether the local action of the observation has a name

ObservationBasedFiniteStateController.has_output(
self: stormpy.pomdp.ObservationBasedFiniteStateController[ValueType],
node: SupportsInt | SupportsIndex,
observation: SupportsInt | SupportsIndex,
) → bool

Whether an output is defined for the observation in the memory node

property ObservationBasedFiniteStateController.initial_node

Initial memory node

ObservationBasedFiniteStateController.is_deterministic(
self: stormpy.pomdp.ObservationBasedFiniteStateController[ValueType],
) → bool

Whether all outputs are deterministic

ObservationBasedFiniteStateController.is_randomised(
self: stormpy.pomdp.ObservationBasedFiniteStateController[ValueType],
node: SupportsInt | SupportsIndex,
observation: SupportsInt | SupportsIndex,
) → bool

Whether the output for the observation in the memory node is randomised

ObservationBasedFiniteStateController.to_dot(
self: stormpy.pomdp.ObservationBasedFiniteStateController[ValueType],
) → str

Graphviz DOT representation

ObservationBasedFiniteStateController.to_json(
self: stormpy.pomdp.ObservationBasedFiniteStateController[ValueType],
) → str

JSON representation