0001 function P=DS_CO_CA_POMDP(varargin)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030 switch nargin
0031 case 1
0032 if isa(varargin{1},'DS_CO_CA_POMDP')
0033 P=varargin{1};
0034 else
0035 error('Wrong parameter type in DS_CO_CA_POMDP');
0036 end
0037
0038 case 10
0039
0040 if isa(varargin{2},'CSpace')
0041 P.S=varargin{2};
0042 else
0043 error('Wrong parameter type in DS_CO_CA_POMDP');
0044 end
0045
0046 if isa(varargin{3},'CSpace')
0047 P.A=varargin{3};
0048 else
0049 error('Wrong parameter type in DS_CO_CA_POMDP');
0050 end
0051
0052 if isa(varargin{4},'CSpace')
0053 P.O=varargin{4};
0054 else
0055 error('Wrong parameter type in DS_CO_CA_POMDP');
0056 end
0057
0058 if isa(varargin{5},'DS_CA_ActionModel')
0059 AM=varargin{5};
0060 else
0061 error('Wrong parameter type in DS_CO_CA_POMDP');
0062 end
0063
0064 if isa(varargin{6},'DS_CO_ObsModel')
0065 OM=varargin{6};
0066 else
0067 error('Wrong parameter type in DS_CO_CA_POMDP');
0068 end
0069
0070 if isa(varargin{7},'DS_CA_RewardModel')
0071 RM=varargin{7};
0072 else
0073 error('Wrong parameter type in DS_CO_CA_POMDP');
0074 end
0075
0076 P.nSampledActions=max(1,varargin{8});
0077
0078 PBase=DS_CO_POMDP(varargin{1},varargin{9},varargin{10});
0079
0080 P=class(P,'DS_CO_CA_POMDP',PBase,AM,OM,RM);
0081
0082 otherwise
0083 error('Wrong number of parameters in DS_CO_CA_POMDP');
0084 end
0085