sequential.dp {bdpopt}R Documentation

Construct A Sequential Decision Problem

Description

Construct a sequential decision problem. The object constructed is just a list with components named as the arguments to the function.

Usage

sequential.dp(n.stages, post.sample, pred.sample, update.state,
term.decisions, term.obs.decisions, cont.decisions,
term.utility.fun, term.obs.utility.fun, cont.utility.fun)

Arguments

n.stages

The number of stages in the sequential decision problem.

post.sample

A function taking a stage, a state and the simulation iteration count into a random sample from the posterior distribution of the model parameter given the value of the state when being at the given stage.

pred.sample

A function taking a stage, a list of parameter values and a decision into a list of random samples from the conditional distributions of the observable variable at the given stage. The i:th value in the list returned should be a sample from the predictive distribution conditioned on the i:th entry in the list of parameter values.

update.state

A function that takes a stage, a state, a decision d and a list of observations into a list of updated states. The updated values should be the ones obtained when combining the observations in order with the original state, given d.

term.decisions

A list the length of which must be equal to n.stages. The i:th element of the list specifies the terminal decisions available at stage i.

term.obs.decisions

A list the length of which must be equal to n.stages. The i:th element of the list specifies the terminal observation decisions available at stage i.

cont.decisions

A list the length of which must be equal to n.stages. The i:th element of the list specifies the continuation decisions available at stage i.

term.utility.fun

A list of terminal utility functions of length equal to n.stages. Each element of the list should be a function mapping a pair (d, theta) into to a numeric value, where d is a decision and theta is a parameter value.

term.obs.utility.fun

A list of terminal utility functions of length equal to n.stages. Each element of the list should be a function mapping a triple (d, X, theta) into to a numeric value, where d is a decision, X is an observation and theta is a parameter value.

cont.utility.fun

A list of terminal utility functions of length equal to n.stages. Each element of the list should be a function mapping a pair (d, X) into to a numeric value, where d is a decision and X is an observation.

Details

For any stage i, at least one of the elements of the decision lists must be nonempty, i.e., the sum of length(term.decisions[[i]]), length(term.obs.decisions[[i]]) and length(cont.decisions[[i]] must be greater than or equal to 1.

For the last stage, all decisions must be terminal decisions, i.e., length(cont.decisions[[n.stages]]) must equal 0 and the sum of length(term.decisions[[n.stages]]) and
length(term.obs.decisions[[n.stages]]) must be greater than or equal to 1.

Value

A list for which the components have the same names and are in the same order as the arguments to the function.

Author(s)

Sebastian Jobjörnsson jobjorns@chalmers.se

See Also

sequential.normal.dp


[Package bdpopt version 1.0-1 Index]