![]() |
DiscretizeActionModelPURPOSE
Discretizes the action space DS_DO_CA_POMDP.
SYNOPSIS
function DA_POMDP=DiscretizeActionModel(CA_POMDP,optimalAction,iteration)
DESCRIPTION
Discretizes the action space DS_DO_CA_POMDP. Discretizes the action space of a DS_DO_CA_POMDP and returns a DS_DO_DA_POMDP. The discretization affects the action space, the action model, and reward model. This function is used in Perseus (and iPerseus) in order to define a POMDP with a discre action set so that the normal backup can be executed without any issue. The discretization is 'belief' based (different for each belief and it is executed just before the backup). The parameter 'optimalAction' is the optimal action for the belief in the previous Perseus iteration. In the current implementation, this action is added to the discrete set of actions. Parameter 'iteration' is the current Perseus (or iPerseus) iteration. Right now the discretization is done sampling uniformly, but could also progressively focus toward the optimal action as 'iteration' increases. Parameters: CA_POMDP: The DS_DO_CA input POMDP. optimalAction: The previous optimal action . iteration: Current iteration (not used in this implementation). See also Perseus, iPerseus. CROSS-REFERENCE INFORMATION
This function calls:
SOURCE CODE
0001 function DA_POMDP=DiscretizeActionModel(CA_POMDP,optimalAction,iteration) 0002 % Discretizes the action space DS_DO_CA_POMDP. 0003 % 0004 % Discretizes the action space of a DS_DO_CA_POMDP and returns a 0005 % DS_DO_DA_POMDP. 0006 % The discretization affects the action space, the action model, 0007 % and reward model. 0008 % This function is used in Perseus (and iPerseus) in order to define a 0009 % POMDP with a discre action set so that the normal backup can be executed 0010 % without any issue. The discretization is 'belief' based (different for 0011 % each belief and it is executed just before the backup). 0012 % The parameter 'optimalAction' is the optimal action for the belief in the 0013 % previous Perseus iteration. In the current implementation, this action 0014 % is added to the discrete set of actions. 0015 % Parameter 'iteration' is the current Perseus (or iPerseus) iteration. 0016 % Right now the discretization is done sampling uniformly, but could also 0017 % progressively focus toward the optimal action as 'iteration' increases. 0018 % 0019 % Parameters: 0020 % CA_POMDP: The DS_DO_CA input POMDP. 0021 % optimalAction: The previous optimal action . 0022 % iteration: Current iteration (not used in this implementation). 0023 % 0024 % See also Perseus, iPerseus. 0025 0026 S=get(CA_POMDP,'StateSpace'); 0027 A=Discretize(CA_POMDP.A,CA_POMDP.nSampledActions-1,{optimalAction}); 0028 O=get(CA_POMDP,'ObsSpace'); 0029 0030 AM=DiscretizeActionModel(CA_POMDP.DS_CA_ActionModel,A); 0031 OM=get(CA_POMDP,'ObsModel'); 0032 RM=DiscretizeRewardModel(CA_POMDP.DS_CA_RewardModel,A); 0033 0034 name=get(CA_POMDP,'name'); 0035 gamma=get(CA_POMDP,'gamma'); 0036 0037 DA_POMDP=DS_DO_DA_POMDP(name,S,A,O,AM,OM,RM,gamma); 0038 |