mixpp: BDM Use - Control and Design of Decision Making Strategy

BDM Use - Control and Design of Decision Making Strategy

Bayesian estimation as introduced in Section BDM Use - Estimation and Bayes Rule is a special case of Decision Strategy, see. .... A more demanding scenario is to design a control strategy that will influence the system operating under uncertainty, this is implemented as scenario closedloop.

Table of content: Design of DM strategy Control of ARX models Naive distributed control

The function of the closedloop is graphically illustrated:

inline_dotgraph_3
The numer of controllers in not limited, however, they can not influence the same variable. Thus, it is limited by the number of available actions.

Here,

  • Data Source is an object (class DS) providing sequential data, $ [d_1, d_2, \ldots d_t] $ and accepting input actions $[u_{1,t},\ldots u_{m,t}]$
  • Controller is an object (class Controller) performing adaptive control. Typically is has some internal Bayesian Estimator.
  • Result Logger is an object (class logger) dedicated to storing important data from the experiment.
Since objects datasource and the logger has already been introduced in section BDM Use - System, Data, Simulation, it remains to introduce object Controller (bdm::Controller).

Design of DM strategy

The object bdm::Contoller has two principal methods: redesign, which (re)designs the control strategy - this may be computationally costly operation, ctrlaction, which evaluates the current decision strategy and returns a numerical value of the action variable.

At the most general class, we do not prescribe any technique how to design the strategy in redesign(). Most of the implemented techniques are, however, variants and approximations of dynamic programming (or optimal control), see [].

TODO...

Control of ARX models

Autoregressive models has already been introduced in ug_arx_sim and Estimation of ARX models where their simulator and estimator has been presented. Control of an ARX model under the qudratic loss function is known as LQG control. This is implemented in object bdm::LQG_ARX.

The following code is from bdmtoolbox/tutorial/userguide/lqg_arx_example.m

This is the minimal configuration of an LQG_ARX estimator. Optional elements of bdm::ARX::from_setting() were set using their default values:

Naive distributed control

In the example above, only one controller was influencing the system. We extend this approach to a scenario where more controllers is acting independently.

A trivial example how this can be done is presented in file bdmtoolbox/tutorial/userguide/lqg_arx_distrib_example.m. The code extends previous example as follows:


Generated on 2 Dec 2013 for mixpp by  doxygen 1.4.7