/Users/fpy/titan-1-5-MBARI/Mers/Estimation/Discrete/ApproximateBeliefState/BFBSU/BFBSU.h

00001 //=============================================================================
00002 // BFBSU.h: interface for the BFBSU class.
00003 //
00004 // Copyright (c) 2005           Model-based Embedded and Robotic Systems Group
00005 // All Rights Reserved          Massachusetts Institute of Technology
00006 //
00007 // This software is provided as is. Model-based Embedded and Robotic Systems
00008 // (MERS) group does not assume any responsibility.
00009 //
00010 // Author:                      Oliver B. Martin
00011 // Organization:                Model-based Embedded and Robotic Systems Group
00012 //                              Massachusetts Institute of Technology
00013 //
00014 // The BFBSU is a HHM estimation engine that generates
00015 // estimates that are consistent with the CCA model, commands, and
00016 // observations. Estimates are generated in best-first order (highest
00017 // posterior probability first) by using Opsat to find the most likely
00018 // diagnoses. This implimentation of BFBSU tracks the k most
00019 // likely estimates in an approximate belief state using the full HMM belief
00020 // state update equations (including update) in a single Non-MPI OPSAT engine. 
00021 //=============================================================================
00022 
00023 
00024 #if !defined(_BFBSU_H_)
00025 #define _BFBSU_H_
00026 
00027 #if _MSC_VER > 1000
00028 #pragma once
00029 #endif // _MSC_VER > 1000
00030 
00031 #include <Mers/Estimation/Discrete/ApproximateBeliefState/BFBSE/BFBSE.h>
00032 
00033 namespace Mers {
00034         namespace Models {
00035                 namespace CCA {
00036                         class CCAModel;
00037                 }
00038         }
00039         namespace Estimation {
00040                 namespace Discrete {
00041 
00042                         class Trajectories;
00043 
00044                         namespace ProbabilityRules {
00045                                 class ObsProbRule;
00046                         }
00047 
00048                         namespace ApproximateBeliefState {
00049                                 namespace BFBSE {
00050 
00051                                         class BFBSE;
00052                                 }
00053                                 namespace BFBSU {
00063                                         class BFBSU : public Mers::Estimation::Discrete::ApproximateBeliefState::BFBSE::BFBSE
00064                                         {
00065 
00066                                         public:
00067                                                 //-----------------------------------------
00068                                                 // Constructors
00069                                                 //-----------------------------------------
00070 
00080                                                 BFBSU(const Mers::Models::CCA::CCAModel &cca, 
00081                                                                 std::vector<const Mers::Estimation::Discrete::ProbabilityRules::ObsProbRule *> & theObsProbRules,
00082                                                                 Mers::Estimation::Discrete::Trajectories * initialTrajectories = NULL);
00083 
00084                                                 //-----------------------------------------
00085                                                 // Destructors
00086                                                 //-----------------------------------------
00087                                                 
00091                                                 virtual ~BFBSU();
00092 
00093 
00094                                                 //-----------------------------------------
00095                                                 // Functions
00096                                                 //-----------------------------------------
00097 
00098 
00099                                         private:
00100 
00105                                         //      virtual bool                                    generateTrajectories(void);
00106 
00107                                                 //-----------------------------------------
00108                                                 // Data Members
00109                                                 //-----------------------------------------
00110 
00111                                         };
00112                                 }
00113                         }
00114                 }
00115         }
00116 }
00117 
00118 #endif // !defined(_BFBSU_H_)

Generated on Mon Dec 4 14:16:42 2006 for Mers by  doxygen 1.5.0