- Main Page
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# Mers::Estimation::Discrete::BFTEObjectiveFunction Class Reference

`#include <BFTEObjectiveFunction.h>`

Inheritance diagram for Mers::Estimation::Discrete::BFTEObjectiveFunction:

[legend]
Collaboration diagram for Mers::Estimation::Discrete::BFTEObjectiveFunction:

[legend]
List of all members.

## Public Member Functions
| BFTEObjectiveFunction (Mers::Models::Base::BaseModelVariableArray const *dVs, const std::map< unsigned int, unsigned int > pMap, std::vector< double > allTransProbs, std::map< unsigned int, double > sProbs)
virtual | ~BFTEObjectiveFunction ()
## Protected Member Functions
virtual double | calculateUtility (std::vector< Mers::Models::Base::BaseModelAssignment const * > &bmAssignments, int sourceStateIndex=-1) const
virtual double | calculatePropagationUtility (std::vector< Mers::Models::Base::BaseModelAssignment const * > &bmAssignments, int sourceStateIndex=-1) const

## Detailed Description

The Best-First Trajectory Enumeration Objective Function

This class sets of the OCSP objective function for belief state enumeration based on the HMM belief state propagation equation. This objective function is used by BFIG to enumerate estimates in best-first order with respect to state trajectory likelihood.

Author:
  Oliver Martin

Date:
  04/20/05

Definition at line 46 of file BFTEObjectiveFunction.h.

## Constructor & Destructor Documentation

Mers::Estimation::Discrete::BFTEObjectiveFunction::BFTEObjectiveFunction | ( | Mers::Models::Base::BaseModelVariableArray const * | dVs,
|  | const std::map< unsigned int, unsigned int > | pMap,
|  | std::vector< double > | allTransProbs,
|  | std::map< unsigned int, double > | sProbs |
| ) |  |  |

Creates a new Best-First Trajectory Enumeration Objective Function. Gathers all the relevant information and sets up the optimistic estimate h(x) for unassigned variables

Parameters:

  | pMap | is a mapping from BaseModeVariableUID to the index of the probability for the first element in that variable's domain.
  | allTransProbs | all the transition probabilities to every mode in every component from every source mode. This vector can be decomposed using pMap
  | sProbs | are the current posterior state probabilities

BFTEObjectiveFunction::~BFTEObjectiveFunction | ( |  | ) | `[virtual]`

Destroys this object

Definition at line 58 of file BFTEObjectiveFunction.cpp.

## Member Function Documentation

virtual double Mers::Estimation::Discrete::BFTEObjectiveFunction::calculateUtility | ( | std::vector< Mers::Models::Base::BaseModelAssignment const * > & | bmAssignments,
|  | int | sourceStateIndex = `-1` |
| ) |  |  | const`[protected, virtual]`

Evaluates the objective function to determine the utiltiy of the implicant. This is where the actual objective function is specified.

Parameters:

  | implicantAssignments | the current assignments from which to calculate the utility based on the objective function.
  | sourceStateIndex | is an optional argument as required by BFTE

Returns:
  the utility

Implements Mers::Estimation::Discrete::MEObjectiveFunction.

virtual double Mers::Estimation::Discrete::BFTEObjectiveFunction::calculatePropagationUtility | ( | std::vector< Mers::Models::Base::BaseModelAssignment const * > & | bmAssignments,
|  | int | sourceStateIndex = `-1` |
| ) |  |  | const`[protected, virtual]`

Evaluates the objective function based only on the HMM propagation equation. This will be identical to BFTE utility function.

Parameters:

  | implicantAssignments | the current assignments from which to calculate the utility based on the objective function.
  | sourceStateIndex | is an optional argument as required by BFTE

Returns:
  the utility

Implements Mers::Estimation::Discrete::MEObjectiveFunction.

The documentation for this class was generated from the following files:

- /Users/fpy/titan-1-5-MBARI/Mers/Estimation/Discrete/BFTEObjectiveFunction.h
- /Users/fpy/titan-1-5-MBARI/Mers/Estimation/Discrete/BFTEObjectiveFunction.cpp