sequential_dp: Construct A Sequential Decision Problem

Description Usage Arguments Details Value Author(s) See Also

Description

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

Usage

1
2
3
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<f6>rnsson jobjorns@chalmers.se

See Also

sequential.normal.dp


bdpopt documentation built on May 2, 2019, 9:18 a.m.