Paper and Toolbox

This toolbox contains a set of functions used to calculate the integrated
information within a network defined by a connection matrix. The neural
dynamics is modeled as linear systems.

Please read the comments carefully - the
functions will only give valid results if certain statistical assumptions
are valid.

Here are the individual functions, together
with a brief description of what they do. All of these functions should
be downloaded and moved to a single directory. These functions can
be used to reproduced the simulations presented in the paper: "Measuring
information integration" (2003) by Giulio Tononi and Olaf Sporns, published
in BMC Neuroscience 4, 31. (Download
paper)

This software is free. Use at your
own risk. Report bugs etc. to osporns@indiana.edu.

This script loads the connection matrix, sets some important parameters and then proceeds to call 'calcPHI.m' to calculate the integrated information. Then the script plots the output in a series of displays matching those used in the paper.

Function for calculating the integrated information for a connection matrix. There are several important control parameters that need to be set, including the noise levels (intrinsic and perturbation).

Various function for needed for running 'runMIB_Cij.m'. See script for details

Instead of using the effective information to calculate PHI, a simpler (but mathematically non-equivalent) way of obtaining an estimate of PHI uses the mutual information. This does not involve the use of perturbations to assess changes in entropy. To use MI instead of EI, use these three functions:

m_mib_linear_function.m

m_mib_max.m

instead of their EI-analogues (see above). Also, just substitute the function call "calcPHI_MI(...)" for "calcPHI.m" in 'runMIB_Cij.m'.

Use these connectivity sets to generate the figures in the paper by Tononi and Sporns, 2003. Each of the files listed below contains one Cij matrix. Parameters in 'runMIB_Cij.m' should be set to I_noise = 10^(-5), P_noise = 10^(-0), normalize = 0, optimize = 0, start_lvl = 1, search_clusters = 1, step_through_disp = 0.

Figure 2: **Cij_split.mat**

Figure 3: **Cij_optim_lo.mat**

Figure 4: **Cij_optim_hi.mat **** **- here set
I_noise = 10^(-1).

Figure 5: **Cij_sparse_optim_lo.mat**

Figure 6: **Cij_full.mat**

Figure 7: **Cij_4modules.mat**