POMDPLayer.h
Go to the documentation of this file.
00001 #ifndef POMDPLAYER_H
00002 #define POMDPLAYER_H
00003 
00004 // the following are codes to handle different cases
00005 // they are here as OfflineEngine.cc, POMDP.cc and
00006 // FactoredPomdp.cc require them
00007 // Added by Won Kok Sung 11 Feb 2009
00008 #define FULLY_OBSERVED 0
00009 #define FULLY_UNOBSERVED 1
00010 #define MIXED 2
00011 #define MIXED_REPARAM 3
00012 
00013 using namespace std;
00014 
00015 class POMDPLayer {
00016     public:
00017 
00018         std::vector<std::vector<SharedPointer<SparseMatrix> > > TX, TXtr, O, Otr;
00019 
00020         std::vector<std::vector<SharedPointer<SparseMatrix> > > TY, TYtr;
00021         std::vector<std::vector<std::vector<SharedPointer<SparseMatrix> > > > TY_reparam, TYtr_reparam;
00022 
00023         std::vector<std::vector<int> > isPOMDPTerminalState;
00024         std::vector<SharedPointer<SparseMatrix> > R;
00025 
00026         SharedPointer<SparseMatrix>  terminalStateReward;
00027 
00028         SparseVector initialBeliefX;
00029         int initialStateX;
00030 
00031         SparseVector initialBeliefY;
00032         vector<SparseVector> initialBeliefY_reparam;
00033 
00034 
00035         /* SparseVector initialBeliefXNew; */
00036         /* int initialStateXNew; */
00037         /* SparseVector initialBeliefYNew; */
00038 
00039 
00040         double discount;
00041         int numActions;
00042         int numObservations;
00043         int numStatesObs;
00044         int numStatesUnobs;
00045 
00046         //POMDP information
00047         // R(s,a)
00048         SharedPointer<SparseMatrix>  pomdpR;
00049         //T[a](s,s'), Ttr[a](s',s), O[a](s',o)
00050         std::vector<SharedPointer<SparseMatrix> > pomdpT, pomdpTtr, pomdpO, pomdpOtr;
00051 
00052         std::vector<int> pomdpIsPOMDPTerminalState;
00053         SparseVector pomdpInitialBelief;
00054         double pomdpDiscount;
00055         int pomdpNumActions, pomdpNumObservations, pomdpNumStates;
00056 
00057                 POMDPLayer()
00058                 {
00059                         pomdpR = NULL;
00060 
00061                 }
00062 
00063 };
00064 
00065 #endif


appl
Author(s): petercai
autogenerated on Tue Jan 7 2014 11:02:29