| |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Description | |||||||||||||||||||||||||||||||||||||||||||||||||||

This Haskell library implements the algorithm for simplifying sequential teams presented Aditya Mahajan and Sekhar Tatikonda, A graphical modeling approach to simplifying sequential teams, proceedings of 7th International Symposium on Modeling and Optimization in Mobile, Ad Hoc, and Wireless Networks (WiOpt), Control over Communication Channels (ConCom) Workshop, Seoul, South Korea, June 27, 2009. The paper can be obtained from http://pantheon.yale.edu/~am894/publications.html#concom-2009. See http://pantheon.yale.edu/~am894/code/teams/ for a usage example. A team is a multi-agent stochastic control problem in which all agents have a common objective. A team is sequential if and only if there is a partial order between all the system variables. These partial order relationship can be represented using a directed graph, in particular, using a directed factor graph. The variable nodes of the factor graph represent the system variables and the factor nodes represent the system dynamics and control functions. The structural results for these system are equivalent to simplification of the factor graph. An automated algorithm for graph simplification is presented in the Data.Teams.Structure module. | |||||||||||||||||||||||||||||||||||||||||||||||||||

Synopsis | |||||||||||||||||||||||||||||||||||||||||||||||||||

Classes | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Types | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Time | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

A generic node of a graph | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

An edge in a graph | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

A sequential team as a directed acyclic factor graph (DAFG) | |||||||||||||||||||||||||||||||||||||||||||||||||||

Constructors for nodes | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Create a sequence of nodes of a specific type | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Create a sequence of reward nodes | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Create a sequence of non reward nodes | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Create a sequence of system dynamics nodes | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Create a sequence of control nodes | |||||||||||||||||||||||||||||||||||||||||||||||||||

Constructor for edges | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Used with
| |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Used with
| |||||||||||||||||||||||||||||||||||||||||||||||||||

Constructors for teams | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Construct a DAFG from a set of edges. For example, f = | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

To make a time homogeneous system. As an example, an MDP can be created as follows x = | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Select specific nodes | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Select nodes whose label satisfy a particular predicate | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

All variable nods | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

All reward nodes | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

All factors | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

All control factors | |||||||||||||||||||||||||||||||||||||||||||||||||||

Graph elements | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

find indices of parents from the index of a node | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

find indices of children from the index of a node | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

find indices of ancestors from the index of a node | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

find the indices of the ancestoral set from the indices of a given set. | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

find indices of descendants from the index of a node | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

find the indices of future nodes that satisfy a particular predicate | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

find the indices of past nodes that satisfy a particular predicate | |||||||||||||||||||||||||||||||||||||||||||||||||||

Display functions | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Pretty print the team specification | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Pretty print the team specification | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Convert the graph to a dot file | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Convert the dot file to a pdf | |||||||||||||||||||||||||||||||||||||||||||||||||||

Utility functions for Data.Graph.Inductive | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Extensions of Data.Graph.Inductive Label of a particular node | |||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||

Labels of a list of nodes | |||||||||||||||||||||||||||||||||||||||||||||||||||

Produced by Haddock version 2.4.2 |