jidt/course/Module11-InformationTransfer/HeartbeatProcess/heartBeatProcess_Solutions....

428 lines
158 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"id": "ad1dfb3c-15c9-4049-b223-dbe4031e678d",
"metadata": {},
"source": [
"# Transfer entropy for Heartbeat process\n",
"\n",
"_Copyright (C) 2023-, Joseph T. Lizier\n",
"Distributed under GNU General Public License v3_\n",
"\n",
"In this activity we will compute the local Transfer entropy on the Heartbeat (Poisson switching) process.\n",
"\n",
"1. Start by generating some sample data for this process:\n",
" 1. The function `generateHeartbeatMessages` which will generate the data is defined in the code cell below.\n",
" 2. Add a line in the next cell after that: `data = generateHeartbeatMessages(0.05, 0.2, 100000);` to generate `N=100000` time steps of sample data for a heartbeat process with transition probabilities (as defined in lecture) `lambda1 = 0.05; lambda0 = 0.2`. And run both code cells."
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "119fe2ba-71ad-47d0-b457-eff9cb0d26e0",
"metadata": {},
"outputs": [],
"source": [
"import numpy\n",
"\n",
"\"\"\"function generateHeartbeatMessages(lambda1, lambda0, N)\n",
"\n",
"Generate sample time series data, of N time steps, for two processes.\n",
"The first process s is a Poisson switching process, where the next value s_{n+1}\n",
" is a simple function of its previous value s_n:\n",
"\n",
" p(s_{n+1} = 1 | s_n = 0) = lambda1\n",
" p(s_{n+1} = 0 | s_n = 0) = 1-lambda1\n",
" p(s_{n+1} = 1 | s_n = 1) = 1-lambda0\n",
" p(s_{n+1} = 0 | s_n = 1) = lambda0\n",
"\n",
"The second process t simply copies the previous value of s.\n",
"\n",
"We have for the steady-state probabilities:\n",
" p(s_n = 0) = lambda0 / (lambda0 + lambda1)\n",
" p(s_n = 1) = lambda1 / (lambda0 + lambda1)\n",
"Proof:\n",
" p(1) = p(0).p(s_{n+1} = 1 | s_n = 0) + p(1).p(s_{n+1} = 1 | s_n = 1)\n",
" = p(0).lambda1 + p(1).(1-lambda0)\n",
" p(1) = lambda1/lambda0 . p(0)\n",
"and: p(1) + p(0) = 1\n",
"Solve these two equations to get the above result.\n",
"\n",
"Inputs:\n",
"- lambda1 - probability of switching to 1 when current value is a 0\n",
"- lambda0 - probability of switching to 0 when current value is a 1\n",
"- N - number of time steps to generate\n",
"\n",
"Output:\n",
"- data - Nx2 matrix. First column is process s, second column is process t.\n",
"\n",
"Copyright (C) 2017, Joseph T. Lizier\n",
"Distributed under GNU General Public License v3\n",
"\"\"\"\n",
"def generateHeartbeatMessages(lambda1, lambda0, N):\n",
"\n",
" s = numpy.zeros((N));\n",
" t = numpy.zeros((N));\n",
" # One can show:\n",
" p1 = lambda1 / (lambda0 + lambda1);\n",
" p0 = lambda0 / (lambda0 + lambda1);\n",
" # Now assign s[0], t[0] according to these probabilities:\n",
" s[0] = (numpy.random.rand() < p1) * 1;\n",
" t[0] = (numpy.random.rand() < p1) * 1;\n",
" # And assign the remaining time series activity based on the process\n",
" # dynamics.\n",
" # The way I've done it here is rather slow, but fast enough for\n",
" # our purposes ... and v fast to write :)\n",
" for n in range(1,N):\n",
" # Assign next value conditioned on previous:\n",
" if (s[n-1] == 0):\n",
" # Prob that s[n] switches to 1 is lambda1\n",
" s[n] = (numpy.random.rand() < lambda1) * 1;\n",
" else:\n",
" # Prob that s[n] stays at 1 is (1-lambda0)\n",
" s[n] = (numpy.random.rand() < 1 - lambda0) * 1;\n",
" # Now do the delayed copy to the target\n",
" t[1:] = s[:-1];\n",
"\n",
" data = numpy.zeros((N,2))\n",
" data[:,0] = s;\n",
" data[:,1] = t;\n",
" return data.astype(numpy.int32) # Makes sure the return values are not floats\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "fef20755-7ea5-4214-8aa6-82d81d8fc1d1",
"metadata": {},
"outputs": [],
"source": [
"# Call the generateHeartbeatMessages() function here:\n",
"data = generateHeartbeatMessages(0.05, 0.2, 100000);"
]
},
{
"cell_type": "markdown",
"id": "090269c0-85e3-4989-ad9a-b2608dfbc034",
"metadata": {},
"source": [
"2. Plot some of the sample data to make sure it's working ok, via the next code cell.\n",
"\n",
" Make sure the target lags the source by one time step, and the transition rates look somewhat ok by eye. A sample result is shown on the tutorial page (note -- yours won't precisely match, since these are generated stochastically):"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "2ba87024-b259-4896-8258-5efa8ad2e699",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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zj7uwAHfaUUxz4UyhoWd3aYzjzt32uWMSWEt50rG8Uq3Q0SM71ruw2/gfc9NU26KgsqNiIjIzedyXr9vhjd0iYiIiFwylRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMZQiLzcTJ05EXFwc/P390aBBAyxZsuRP5586dSrq1KmDwMBAREVF4ZFHHsGxY8euU1oRERG50RVpuZk+fToGDx6M4cOHY8OGDWjZsiXuvPNOJCUlXXD+pUuXonfv3nj00UexdetWzJw5E2vWrMFjjz12nZOLiIjIjapIy80777yDRx99FI899hiqVauG//73v4iNjcWkSZMuOP/KlStRrlw5DBw4EHFxcWjRogWefPJJrF279qLrcDqdyMjI8LmJiIiIcRVZucnNzcW6devQvn17n+nt27fH8uXLL/iYZs2a4cCBA5gzZw5I4vDhw/j666/RqVOni65nzJgxCAsL895iY2MLdTtERETkxlJk5ebo0aNwuVyIjIz0mR4ZGYnU1NQLPqZZs2aYOnUqevToAZvNhtKlS6NYsWIYN27cRdczbNgwpKene2/JycmFuh0iIiJyYynyC4pNJpPPv0meN+2Mbdu2YeDAgXj55Zexbt06zJ07F4mJiejfv/9Fl2+32xEaGupzExEREeOyFtWKw8PDYbFYzjtKk5aWdt7RnDPGjBmD5s2b4/nnnwcA1K5dG0FBQWjZsiVee+01REVFXfPcIiIicmMrsiM3NpsNDRo0QHx8vM/0+Ph4NGvW7IKPycrKgtnsG9lisQDwHPERERERKdLTUkOHDsXkyZPxySefYPv27RgyZAiSkpK8p5mGDRuG3r17e+fv3LkzZs+ejUmTJmHv3r1YtmwZBg4ciEaNGiE6OrqoNkNERERuIEV2WgoAevTogWPHjmHkyJFISUlBzZo1MWfOHJQtWxYAkJKS4vOZN3379kVmZibGjx+Pf/zjHyhWrBjatWuHN954o6g2QURERG4wJv7NzudkZGQgLCwM6enpurhYRETkJnE5r99F/m4pERERkcKkciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGonIjIiIihqJyIyIiIoaiciMiIiKGUuTlZuLEiYiLi4O/vz8aNGiAJUuW/On8TqcTw4cPR9myZWG321GhQgV88skn1ymtiIiI3OisRbny6dOnY/DgwZg4cSKaN2+ODz74AHfeeSe2bdsGh8Nxwcd0794dhw8fxscff4yKFSsiLS0N+fn51zm5iIiI3KhMJFlUK2/cuDHq16+PSZMmeadVq1YNXbt2xZgxY86bf+7cuXjggQewd+9elChR4pLW4XQ64XQ6vf/OyMhAbGws0tPTERoaevUbISIiItdcRkYGwsLCLun1u8hOS+Xm5mLdunVo3769z/T27dtj+fLlF3zM999/j4YNG+LNN99ETEwMKleujOeeew7Z2dkXXc+YMWMQFhbmvcXGxhbqdoiIiMiNpchOSx09ehQulwuRkZE+0yMjI5GamnrBx+zduxdLly6Fv78/vvnmGxw9ehRPP/00jh8/ftHrboYNG4ahQ4d6/33myI2IiIgYU5FecwMAJpPJ598kz5t2htvthslkwtSpUxEWFgYAeOedd3DfffdhwoQJCAgIOO8xdrsddru98IOLiIjIDanITkuFh4fDYrGcd5QmLS3tvKM5Z0RFRSEmJsZbbADPNTokceDAgWuaV0RERG4ORVZubDYbGjRogPj4eJ/p8fHxaNas2QUf07x5cxw6dAinTp3yTtu5cyfMZjPKlClzTfOKiIjIzaFIP+dm6NChmDx5Mj755BNs374dQ4YMQVJSEvr37w/Ac71M7969vfM/+OCDKFmyJB555BFs27YNixcvxvPPP49+/fpd8JSUiIiI/P0U6TU3PXr0wLFjxzBy5EikpKSgZs2amDNnDsqWLQsASElJQVJSknf+4OBgxMfH49lnn0XDhg1RsmRJdO/eHa+99lpRbYKIiIjcYIr0c26KwuW8T15ERERuDDfF59yIiIiIXAsqNyIiImIoRf45NyIiIjcil8uFvLy8oo7xt2Kz2WA2X/1xF5UbERGRc5BEamoqTp48WdRR/nbMZjPi4uJgs9muajkqNyIiIuc4U2wiIiIQGBh40U/Nl8Lldrtx6NAhpKSkwOFwXNW4q9yIiIgUcLlc3mJTsmTJoo7zt1OqVCkcOnQI+fn58PPzu+Ll6IJiERGRAmeusQkMDCziJH9PZ05HuVyuq1qOyo2IiMgf6FRU0SiscVe5EREREUNRuRERERFDUbkRERERQ7nicnPy5ElMnjwZw4YNw/HjxwEA69evx8GDBwstnIiIyE0nPR04cODC9x044LnfAFwuF9xud1HHuKArKjebNm1C5cqV8cYbb+Ctt97yftDRN998g2HDhhVmPhERkZtHejrQoQPQujWQnOx7X3KyZ3qHDtes4Hz99deoVasWAgICULJkSdx22204ffo03G43Ro4ciTJlysBut6Nu3bqYO3eu93ELFy6EyWTy+eDChIQEmEwm7Nu3DwDw2WefoVixYvjxxx9RvXp12O127N+/H06nEy+88AJiY2Nht9tRqVIlfPzxx97lbNu2DR07dkRwcDAiIyPRq1cvHD169Jps/xlXVG6GDh2Kvn37YteuXfD39/dOv/POO7F48eJCCyciInJTycwE0tKAvXuBNm3OFpzkZM+/9+713J+ZWeirTklJQc+ePdGvXz9s374dCxcuxL333guSGDt2LN5++2289dZb2LRpE+644w506dIFu3btuqx1ZGVlYcyYMZg8eTK2bt2KiIgI9O7dG1999RXee+89bN++He+//z6Cg4O9mVq3bo26deti7dq1mDt3Lg4fPozu3bsX+vb74BUIDQ3l7t27SZLBwcHcs2cPSXLfvn202+1XssjrJj09nQCYnp5e1FFEROQGk52dzW3btjE7O/vKF5KURJYvTwKe/y5b5vvvpKTCC3yOdevWEQD37dt33n3R0dEcNWqUz7RbbrmFTz/9NElywYIFBMATJ05479+wYQMBMDExkST56aefEgATEhK88+zYsYMAGB8ff8FM//73v9m+fXufacnJyQTAHTt2nDf/n43/5bx+X9EnFPv7+yMjI+O86Tt27ECpUqWuuGiJiIjc9GJjgYULzx6pad7cM718ec/02Nhrsto6derg1ltvRa1atXDHHXegffv2uO+++2CxWHDo0CE0P5OjQPPmzbFx48bLWofNZkPt2rW9/05ISIDFYkHr1q0vOP+6deuwYMEC75Gcc+3ZsweVK1e+rPVfqis6LXX33Xdj5MiR3k9yNJlMSEpKwksvvYRu3boVakAREZGbTmws8PnnvtM+//yaFRsAsFgsiI+Px88//4zq1atj3LhxqFKlChITEwGc/wF5JL3TznwTN0nv/Rf6RvSAgACf5QQEBPxpJrfbjc6dOyMhIcHntmvXLrRq1erKNvQSXFG5eeutt3DkyBFEREQgOzsbrVu3RsWKFRESEoJRo0YVdkYREZGbS3Iy0KuX77Revc6/yLiQmUwmNG/eHK+++io2bNgAm82G+fPnIzo6GkuXLvWZd/ny5ahWrRoAeM+6pKSkeO9PSEj4y/XVqlULbrcbixYtuuD99evXx9atW1GuXDlUrFjR5xYUFHSFW/nXrqjchIaGYunSpZg1axZef/11DBgwAHPmzMGiRYuuaVgREZEb3rkXD5cvDyxb5vnvHy8yLmSrVq3C6NGjsXbtWiQlJWH27Nk4cuQIqlWrhueffx5vvPEGpk+fjh07duCll15CQkICBg0aBACoWLEiYmNjMWLECOzcuRM//fQT3n777b9cZ7ly5dCnTx/069cP3377LRITE7Fw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+vUxadIk77Rq1aqha9euGDNmzCUto0aNGujRowdefvnlS5o/IyMDYWFhSE9PR2ho6BXlFhERkevrcl6/i+zITW5uLtatW4f27dv7TG/fvj2WL19+Sctwu93IzMxEiRIlLjqP0+lERkaGz01ERESMq8jKzdGjR+FyuRAZGekzPTIyEqmpqZe0jLfffhunT59G9+7dLzrPmDFjEBYW5r3FxsZeVW4RERG5sRX5BcUmk8nn3yTPm3Yh06ZNw4gRIzB9+nRERERcdL5hw4YhPT3de0tOTr7qzCIiInLjshbVisPDw2GxWM47SpOWlnbe0Zw/mj59Oh599FHMnDkTt91225/Oa7fbYbfbrzqviIiI3ByK7MiNzWZDgwYNEB8f7zM9Pj4ezZo1u+jjpk2bhr59++LLL79Ep06drnVMERERuckU2ZEbABg6dCh69eqFhg0bomnTpvjwww+RlJSE/v37A/CcUjp48CCmTJkCwFNsevfujbFjx6JJkybeoz4BAQEICwsrsu0QERGRG0eRlpsePXrg2LFjGDlyJFJSUlCzZk3MmTMHZcuWBQCkpKT4fObNBx98gPz8fDzzzDN45plnvNP79OmDzz777HrHFxERkRtQkX7OTVHQ59yIiIjcfG6Kz7kRERERuRZUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFBUbkRERMRQVG5ERETEUFRuRERExFCsRR3gppeejgW/5OK9aaWwfDlgNgOtmuaidDEn5i/zR8oR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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"plt.scatter(range(1,101), data[:100,0], marker='x', color='red', label='source')\n",
"plt.scatter(range(1,101), data[:100,1], marker='o', color='blue', facecolors='none', label='target')\n",
"plt.xlabel('n')\n",
"plt.ylabel('state')\n",
"plt.legend()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"id": "a0b47532-18fe-4be4-8817-5d476b278a51",
"metadata": {},
"source": [
"3. Open the AutoAnalyser and select Transfer Entropy. Select a Discrete estimator, select any discrete data file (e.g. `2coupledBinaryColsUseK2.txt`), leave the source and target at columns 0 and 1 respectively, uncheck `Compute result?`, and click `Generate Code`.\n",
"4. Copy and paste the generated Python code in the code cell below:"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "8299519b-055d-4eec-a5a6-91451d2cde57",
"metadata": {},
"outputs": [],
"source": [
"# Place the AutoAnalyser generated code template here, ready for editing.\n",
"# Put the import lines and JVM startup code here:\n",
"\n",
"from jpype import *\n",
"import numpy\n",
"import sys\n",
"# Our python data file readers are a bit of a hack, python users will do better on this:\n",
"sys.path.append(\"/home/joseph/JIDT/infodynamics-dist-1.6.1/demos/python\")\n",
"import readIntsFile\n",
"\n",
"if (not isJVMStarted()):\n",
" # Add JIDT jar library to the path\n",
" jarLocation = \"/home/joseph/JIDT/infodynamics-dist-1.6.1/infodynamics.jar\"\n",
" # Start the JVM (add the \"-Xmx\" option with say 1024M if you get crashes due to not enough memory space)\n",
" startJVM(getDefaultJVMPath(), \"-ea\", \"-Djava.class.path=\" + jarLocation, convertStrings=True)\n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "9e4b7424-3e52-4d16-a913-97c7a3ac31a7",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"TE_Discrete(col_0 -> col_1) = 0.3715 bits\n",
"TE_Discrete(col_0 -> col_1) = 0.3715 bits (null: 0.0000 +/- 0.0000 std dev.; p(surrogate > measured)=0.00000 from 100 surrogates)\n"
]
}
],
"source": [
"# Place the remainder of the auto-generated code here:\n",
"\n",
"# 0. Load/prepare the data:\n",
"data = generateHeartbeatMessages(0.05, 0.2, 100000);\n",
"source = JArray(JInt, 1)(data[:,0].tolist())\n",
"destination = JArray(JInt, 1)(data[:,1].tolist())\n",
"\n",
"# 1. Construct the calculator:\n",
"calcClass = JPackage(\"infodynamics.measures.discrete\").TransferEntropyCalculatorDiscrete\n",
"calc = calcClass(2, 1, 1, 1, 1, 1)\n",
"# 2. No other properties to set for discrete calculators.\n",
"# 3. Initialise the calculator for (re-)use:\n",
"calc.initialise()\n",
"# 4. Supply the sample data:\n",
"calc.addObservations(source, destination)\n",
"# 5. Compute the estimate:\n",
"result = calc.computeAverageLocalOfObservations()\n",
"\n",
"print(\"TE_Discrete(col_0 -> col_1) = %.4f bits\" %\\\n",
" (result))\n",
"\n",
"# Challenge: Add statistical significance check:\n",
"# 6. Compute the (statistical significance via) null distribution empirically (e.g. with 100 permutations):\n",
"measDist = calc.computeSignificance(100)\n",
"print(\"TE_Discrete(col_0 -> col_1) = %.4f bits (null: %.4f +/- %.4f std dev.; p(surrogate > measured)=%.5f from %d surrogates)\" %\\\n",
" (result, measDist.getMeanOfDistribution(), measDist.getStdOfDistribution(), measDist.pValue, 100))"
]
},
{
"cell_type": "markdown",
"id": "ce831d43-b74c-4f93-a884-77af72a2fa2a",
"metadata": {},
"source": [
"5. Replace the code at step 0 where the data file is loaded with the line we ran above to generate the heartbeat data sample: `data = generateHeartbeatMessages(0.05, 0.2, 100000);` (or you can load a saved sample data file as an alternative)\n",
"6. Run your code above to check that it computes an average TE ok -- the result should be close to the theoretical value of 0.3735 bits for this large data sample.\n",
" * Is this value statistically significant? (_Challenge_: can you check this?)\n",
"7. In the next code cell, add the following code to compute local TE at each time step: `locals = calc.computeLocalFromPreviousObservations(source, destination);`"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "0751089a-9af9-4b49-aa9b-d71cba84ec43",
"metadata": {},
"outputs": [],
"source": [
"# Compute the local TE at each time step here:\n",
"\n",
"locals = calc.computeLocalFromPreviousObservations(source, destination);"
]
},
{
"cell_type": "markdown",
"id": "2987c40e-4f68-4be5-8006-1f2b79e4c4b0",
"metadata": {},
"source": [
"8. In the next code cell, we will plot our results. First, replot the source and target time series (since we resampled `data`) -- copy the plotting code from step 2 above in below, and\n",
"9. Plot the local TE alongside the target variable in the next figure:\n",
"```python\n",
"plt.scatter(range(1,101), locals[:100], marker='x', color='red', label='TE (bits)')\n",
"plt.xlabel('n')\n",
"plt.ylabel('TE (bits)')\n",
"plt.legend(loc='upper left')\n",
"ax2 = plt.twinx()\n",
"ax2.scatter(range(1,101), data[:100,1], marker='o', color='blue', facecolors='none', label='target')\n",
"ax2.set_ylabel('state')\n",
"ax2.legend(loc='upper right')\n",
"plt.show()\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "9ed1746b-5d42-4940-9870-95452834e24e",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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uXPnei+bN28eBg8ejA0bNiAqKgrPPPMM+vfvf97rzMjIQFhYGNLT0xEaGnrpd6KIT3z0LgM8T6iwsFOX7dlz9jK5vIr4hGLv7ycfD8D3MTv5+6WOCQs7+/lwvtc7Sc8ZESkO57O9As5+fTr52lPCr0UXsv0u0XJTEoq93IiIiMhldyHb76vqreAiIiIif0flRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMReVGREREDEXlRkRERAxF5UZEREQMpcTLzbhx4xAfHw9/f380atQICxYs+MvxEydORL169RAYGIjIyEjcd999OHLkyBVKKyIiIv90JVpuJk+ejEGDBmHYsGFYvXo1WrdujRtvvBEpKSlFjl+4cCF69+6N+++/Hxs2bMDUqVOxYsUKPPDAA1c4uYiIiPxTlWi5eeutt3D//ffjgQceQI0aNfDOO+8gNjYW48ePL3L80qVLERcXhwEDBiA+Ph6tWrXCww8/jJUrV55zHU6nExkZGT4/IiIiYlwlVm7y8vKwatUqdOzY0Wd5x44dsXjx4iKv06JFC+zZswfTp08HSRw4cADffvstbrrppnOuZ9SoUQgLC/P+xMbGFuv9EBERkX+WEis3hw8fhsvlQkREhM/yiIgI7N+/v8jrtGjRAhMnTkSPHj1gs9lQoUIFlCpVCqNHjz7neoYOHYr09HTvT2pqarHeDxEREflnKfETik0mk8/vJM9adtLGjRsxYMAAvPDCC1i1ahVmzJiB5ORk9O/f/5y3b7fbERoa6vMjIiIixmUtqRWXK1cOFovlrL00Bw8ePGtvzkmjRo1Cy5Yt8dRTTwEA6tati6CgILRu3RojRoxAZGTkZc8tIiIi/2wltufGZrOhUaNGSExM9FmemJiIFi1aFHmd7OxsmM2+kS0WCwDPHh8RERGREj0sNWTIEEyYMAGffPIJNm3ahMGDByMlJcV7mGno0KHo3bu3d3yXLl0wbdo0jB8/Hjt37sSiRYswYMAANGnSBFFRUSV1N0REROQfpMQOSwFAjx49cOTIEQwfPhxpaWmoXbs2pk+fjooVKwIA0tLSfD7zpm/fvsjMzMSYMWPwn//8B6VKlUL79u3x2muvldRdEBERkX8YE/9lx3MyMjIQFhaG9PR0nVwsIiJylbiQ7XeJv1tKREREpDip3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihqNyIiIiIoajciIiIiKGo3IiIiIihlHi5GTduHOLj4+Hv749GjRphwYIFfzne6XRi2LBhqFixIux2OypVqoRPPvnkCqUVERGRfzprSa588uTJGDRoEMaNG4eWLVvigw8+wI033oiNGzfC4XAUeZ0777wTBw4cwMcff4zKlSvj4MGDKCgouMLJRURE5J/KRJIltfKmTZuiYcOGGD9+vHdZjRo10K1bN4waNeqs8TNmzMBdd92FnTt3okyZMue1DqfTCafT6f09IyMDsbGxSE9PR2ho6KXfCREREbnsMjIyEBYWdl7b7xI7LJWXl4dVq1ahY8eOPss7duyIxYsXF3mdn376CY0bN8brr7+O6OhoVK1aFU8++SRycnLOuZ5Ro0YhLCzM+xMbG1us90NERET+WUrssNThw4fhcrkQERHhszwiIgL79+8v8jo7d+7EwoUL4e/vj++//x6HDx/Go48+iqNHj57zvJuhQ4diyJAh3t9P7rkRERERYyrRc24AwGQy+fxO8qxlJ7ndbphMJkycOBFhYWEAgLfeegu33347xo4di4CAgLOuY7fbYbfbiz+4iIiI/COV2GGpcuXKwWKxnLWX5uDBg2ftzTkpMjIS0dHR3mIDeM7RIYk9e/Zc1rwiIiJydSixcmOz2dCoUSMkJib6LE9MTESLFi2KvE7Lli2xb98+ZGVleZdt3boVZrMZMTExlzWviIiIXB1K9HNuhgwZggkTJuCTTz7Bpk2bMHjwYKSkpKB///4APOfL9O7d2zv+7rvvRtmyZXHfffdh48aNmD9/Pp566in069evyENSIiIi8u9Toufc9OjRA0eOHMHw4cORlpaG2rVrY/r06ahYsSIAIC0tDSkpKd7xwcHBSExMxBNPPIHGjRujbNmyuPPOOzFixIiSugsiIiLyD1Oin3NTEi7kffIiIiLyz3BVfM6NiIiIyOWgciMiIiKGUuKfcyMiIvJP5HK5kJ+fX9Ix/lVsNhvM5kvf76JyIyIichqS2L9/P44fP17SUf51zGYz4uPjYbPZLul2VG5EREROc7LYhIeHIzAw8Jyfmi/Fy+12Y9++fUhLS4PD4bikeVe5ERERKeRyubzFpmzZsiUd51+nfPny2LdvHwoKCuDn53fRt6MTikVERAqdPMcmMDCwhJP8O508HOVyuS7pdlRuREREzqBDUSWjuOZd5UZEREQMReVGREREDEXlRkRERAzlosvN8ePHMWHCBAwdOhRHjx4FAPz555/Yu3dvsYUTERG56qSnA3v2FH3Znj2eyw3A5XLB7XaXdIwiXVS5Wbt2LapWrYrXXnsNb7zxhveDjr7//nsMHTq0OPOJiIhcPdLTgU6dgLZtgdRU38tSUz3LO3W6bAXn22+/RZ06dRAQEICyZcviuuuuw4kTJ+B2uzF8+HDExMTAbrejfv36mDFjhvd6c+fOhclk8vngwqSkJJhMJuzatQsA8Nlnn6FUqVL45ZdfULNmTdjtduzevRtOpxNPP/00YmNjYbfbUaVKFXz88cfe29m4cSM6d+6M4OBgREREoFevXjh8+PBluf8nXVS5GTJkCPr27Ytt27bB39/fu/zGG2/E/Pnziy2ciIjIVSUzEzh4ENi5E2jX7lTBSU31/L5zp+fyzMxiX3VaWhp69uyJfv36YdOmTZg7dy5uu+02kMS7776LN998E2+88QbWrl2LG264AV27dsW2bdsuaB3Z2dkYNWoUJkyYgA0bNiA8PBy9e/fGN998g/feew+bNm3C+++/j+DgYG+mtm3bon79+li5ciVmzJiBAwcO4M477yz2+++DFyE0NJTbt28nSQYHB3PHjh0kyV27dtFut1/MTV4x6enpBMD09PSSjiIiIv8wOTk53LhxI3Nyci7+RlJSyIQEEvD8d9Ei399TUoov8GlWrVpFANy1a9dZl0VFRfGVV17xWXbNNdfw0UcfJUnOmTOHAHjs2DHv5atXryYAJicnkyQ//fRTAmBSUpJ3zJYtWwiAiYmJRWZ6/vnn2bFjR59lqampBMAtW7acNf6v5v9Ctt8X9QnF/v7+yMjIOGv5li1bUL58+YsuWiIiIle92Fhg7txTe2patvQsT0jwLI+NvSyrrVevHjp06IA6derghhtuQMeOHXH77bfDYrFg3759aHkyR6GWLVtizZo1F7QOm82GunXren9PSkqCxWJB27Ztixy/atUqzJkzx7sn53Q7duxA1apVL2j95+uiDkvdcsstGD58uPeTHE0mE1JSUvDss8+ie/fuxRpQRETkqhMbC3z5pe+yL7+8bMUGACwWCxITE/Hbb7+hZs2aGD16NKpVq4bk5GQAZ39AHknvspPfxE3Se3lR34geEBDgczsBAQF/mcntdqNLly5ISkry+dm2bRvatGlzcXf0PFxUuXnjjTdw6NAhhIeHIycnB23btkXlypUREhKCV155pbgzioiIXF1SU4FevXyX9ep19knGxcxkMqFly5Z4+eWXsXr1athsNsyaNQtRUVFYuHChz9jFixejRo0aAOA96pKWlua9PCkp6W/XV6dOHbjdbsybN6/Iyxs2bIgNGzYgLi4OlStX9vkJCgq6yHv59y6q3ISGhmLhwoX47rvv8Oqrr+Lxxx/H9OnTMW/evMsaVkRE5B/v9JOHExKARYs8/z3zJONitmzZMowcORIrV65ESkoKpk2bhkOHDqFGjRp46qmn8Nprr2Hy5MnYsmULnn32WSQlJWHgwIEAgMqVKyM2NhYvvfQStm7dil9//RVvvvnm364zLi4Offr0Qb9+/fDDDz8gOTkZc+fOxZQpUwAAjz32GI4ePYqePXti+fLl2LlzJ2bOnIl+/fpd8vdH/aW/PSunCJ9//jlzc3PPWu50Ovn5559fzE1eMTqhWEREzuWSTyhOTS365OEzTzJOTS2+0IU2btzIG264geXLl6fdbmfVqlU5evRokqTL5eLLL7/M6Oho+vn5sV69evztt998rr9w4ULWqVOH/v7+bN26NadOnXrWCcVhYWFnrTcnJ4eDBw9mZGQkbTYbK1euzE8++cR7+datW3nrrbeyVKlSDAgIYPXq1Tlo0CC63e4ib6s4Tig2kacdYDtPFosFaWlpCA8P91l+5MgRhIeHX942dokyMjIQFhaG9PR0hIaGlnQcERH5B8nNzUVycjLi4+N9PurkvJ38nJuDB88+efjkHp3wcGDGDCAsrLhiG8Zfzf+FbL8v6t1SPO0kpNPt2bMHYXqwRETk3yoszFNcMjOBmBjfy2JjgXnzgJAQFZvL7ILKTYMGDWAymWAymdChQwdYraeu7nK5kJycjE6dOhV7SBERkatGWNi5y8uZhUcuiwsqN926dQPgOYP6hhtu8Hnfus1mQ1xcnN4KLiIiIiXqgsrNiy++CMBzdnSPHj0u7nikiIiIyGV0Uefc9OnTp7hziIiIiBSLiyo3LpcLb7/9NqZMmYKUlBTk5eX5XH706NFiCSciIiJyoS7qQ/xefvllvPXWW7jzzjuRnp6OIUOG4LbbboPZbMZLL71UzBFFREREzt9FlZuJEyfio48+wpNPPgmr1YqePXtiwoQJeOGFF7B06dLizigiIiJy3i6q3Ozfvx916tQBAAQHByM9PR0AcPPNN+PXX38tvnQiIiIiF+iiyk1MTIz3y7UqV66MmTNnAgBWrFgBu91efOlERERELtBFlZtbb70Vs2bNAgAMHDgQzz//PKpUqYLevXujX79+xRpQRETkauR2e76F4Uq9x6Zdu3YYNGjQlVnZeSjJPBf1bqlXX33V+/+33347YmNjsWjRIlSuXBldu3YttnAiIiJXm4IC4N13gbFjgeRkz7JGjYAnnwTuuqtks/2dvLw82Gy2ko5xyS5qz838+fNRUFDg/b1p06YYMmQIOnfujPnz5xdbOBERkauJywXceSfw7LNAmzbAtGnAxIlA+fJAz57Ayy9fnvX27dsX8+bNw7vvvuv9mqQdO3bg/vvvR3x8PAICAlCtWjW8++67Z12vW7duGDVqFKKiolC1alUAwOLFi1G/fn34+/ujcePG+OGHH2AymZCUlOS97saNG9G5c2cEBwcjIiICvXr1wuHDh8+ZZ9euXZfnzhfhovbcXHvttUV+K3h6ejquvfbaf/S3gouIiFwuX30FfP898PPPwM03n1p+993A//0f8MILwK23AnXrFu963333XWzduhW1a9fG8OHDAQClS5dGTEwMpkyZgnLlymHx4sV46KGHEBkZiTvvvNN73VmzZiE0NBSJiYkgiczMTHTp0gWdO3fG119/jd27d591eCktLQ1t27bFgw8+iLfeegs5OTl45plncOedd2L27NlF5ilfvnzx3um/UKzfCn7kyBEEBQVdcigREZGr0fvvAzfc4FtsTnr2WWDcOOCDDzyHrIpTWFgYbDYbAgMDUaFCBe/yl0/bVRQfH4/FixdjypQpPuUmKCgIEyZM8B6Oev/992EymfDRRx/B398fNWvWxN69e/Hggw96rzN+/Hg0bNgQI0eO9C775JNPEBsbi61bt6Jq1apF5rlSLqjc3HbbbQAAk8mEvn37+rwzyuVyYe3atWjRokXxJhQREblKbNwI/Pe/RV/m5we0a+cZc6W8//77mDBhAnbv3o2cnBzk5eWhfv36PmPq1Knjc57Nli1bULduXZ/vj2zSpInPdVatWoU5c+b4fIH2STt27PAe3iopF1Ruwgq/wp0kQkJCEBAQ4L3MZrOhWbNmPs1ORETk3yQoyPMOqXM5cMAz5kqYMmUKBg8ejDfffBPNmzdHSEgI/ve//2HZsmU+48484lLU0RmSPr+73W506dIFr7322lnrjYyMLKZ7cPEuqNx8+umnADzHzV566SUEBgYCAHbt2oUffvgBNWrUQLly5Yo/pYiIyFXgttuAL78EXnrp7BKzeTMwdy7w8ceXZ902m83nnNcFCxagRYsWePTRR73LduzY8be3U716dUycOBFOp9N7hGblypU+Yxo2bIjvvvsOcXFxsFqLrhJn5rmSLurdUqtXr8YXX3wBADh+/DiaNWuGN998E926dcP48eOLNaCIiMjVYtAg4MQJoGtXYPt2zzISWLoU6NIFSEgAevS4POuOi4vDsmXLsGvXLhw+fBiVK1fGypUr8fvvv2Pr1q14/vnnsWLFir+9nbvvvhtutxsPPfQQNm3ahN9//x1vvPEGAHj36Dz22GM4evQoevbsieXLl2Pnzp2YOXMm+vXr5y00Z+Zxu92X544X4aLLTevWrQEA3377LSIiIrB792588cUXeO+994o1oIiIyNWicmXg11+BdeuAKlU874qqWhVo3hyw2YCZM4HCgx7F7sknn4TFYkHNmjVRvnx5dOrUCbfddht69OiBpk2b4siRIz57cc4lNDQUP//8M5KSklC/fn0MGzYML7zwAgB4z8OJiorCokWL4HK5cMMNN6B27doYOHAgwsLCYDabi8yTkpJyee54EUw880DaeQgMDMTmzZvhcDhw5513olatWnjxxReRmpqKatWqITs7+3JkLRYZGRkICwtDeno6QkNDSzqOiIj8g+Tm5iI5ORnx8fE+J9ReqJwcYMoUYNkywGr1vIOqUyfAYinGsFfQxIkTcd999yE9Pd3nfNvi9lfzfyHb74t6K3jlypXxww8/4NZbb8Xvv/+OwYMHAwAOHjyowiAiIv96AQFAnz6en6vRF198gYSEBERHR2PNmjXez7C5nMWmOF3UYakXXngBTz75JOLi4tC0aVM0b94cADBz5kw0aNCgWAOKiIjIlbV//37ce++9qFGjBgYPHow77rgDH374YUnHOm8XdVgK8NzxtLQ01KtXz3t8bfny5QgNDUX16tWLNWRx0mEpERE5l+I6LCUXp0QPSwFAhQoVzvrUwTM/5EdERETkSruow1IiIiJGdpEHNeQSFde8q9yIiIgU8vPzA4B/9Lt+jSwvLw8AYLnEt5Vd9GEpERERo7FYLChVqhQOFn6HQmBgYJFfFC3Fz+1249ChQwgMDDznpx6fL5UbERGR05w8n/TgX31JlFwWZrMZDofjkgulyo2IiMhpTCYTIiMjER4ejvz8/JKO869is9m878C+FCo3IiIiRbBYLJd87oeUDJ1QLCIiIoaiciMiIiKGonIjIiIihqJyIyIiIoZS4uVm3Lhx3u+QaNSoERYsWHBe11u0aBGsVivq169/eQOKiIjIVaVEy83kyZMxaNAgDBs2DKtXr0br1q1x4403IiUl5S+vl56ejt69e6NDhw5XKKmIiIhcLS76W8GLQ9OmTdGwYUOMHz/eu6xGjRro1q0bRo0adc7r3XXXXahSpQosFgt++OEHJCUlnfc69a3gIiIiV58L2X6X2J6bvLw8rFq1Ch07dvRZ3rFjRyxevPic1/v000+xY8cOvPjii+e1HqfTiYyMDJ8fERERMa4SKzeHDx+Gy+VCRESEz/KIiAjs37+/yOts27YNzz77LCZOnHje3zsxatQohIWFeX9iY2MvObuIiIj8c5X4CcVnfn8EySK/U8LlcuHuu+/Gyy+/jKpVq5737Q8dOhTp6enen9TU1EvOLCIiIv9cJfb1C+XKlYPFYjlrL83BgwfP2psDAJmZmVi5ciVWr16Nxx9/HIDnG0RJwmq1YubMmWjfvv1Z17Pb7bDb7ZfnToiIiMg/TontubHZbGjUqBESExN9licmJqJFixZnjQ8NDcW6deuQlJTk/enfvz+qVauGpKQkNG3a9EpFFxERkX+wEv3izCFDhqBXr15o3Lgxmjdvjg8//BApKSno378/AM8hpb179+KLL76A2WxG7dq1fa4fHh4Of3//s5aLiIjIv1eJlpsePXrgyJEjGD58ONLS0lC7dm1Mnz4dFStWBACkpaX97WfeiIiIiJyuRD/npiToc25ERESuPlfF59yIiIiIXA4qNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoKjciIiJiKCo3IiIiYigqNyIiImIoJV5uxo0bh/j4ePj7+6NRo0ZYsGDBOcdOmzYN119/PcqXL4/Q0FA0b94cv//++xVMKyIiIv90JVpuJk+ejEGDBmHYsGFYvXo1WrdujRtvvBEpKSlFjp8/fz6uv/56TJ8+HatWrcK1116LLl26YPXq1Vc4uYiIiPxTmUiypFbetGlTNGzYEOPHj/cuq1GjBrp164ZRo0ad123UqlULPXr0wAsvvHBe4zMyMhAWFob09HSEhoZeVG4RERG5si5k+11ie27y8vKwatUqdOzY0Wd5x44dsXjx4vO6DbfbjczMTJQpU+acY5xOJzIyMnx+RERExLhKrNwcPnwYLpcLERERPssjIiKwf//+87qNN998EydOnMCdd955zjGjRo1CWFiY9yc2NvaScouIiMg/W4mfUGwymXx+J3nWsqJMmjQJL730EiZPnozw8PBzjhs6dCjS09O9P6mpqZecWURERP65rCW14nLlysFisZy1l+bgwYNn7c050+TJk3H//fdj6tSpuO666/5yrN1uh91uv+S8IiIicnUosT03NpsNjRo1QmJios/yxMREtGjR4pzXmzRpEvr27Yuvv/4aN9100+WOKSIiIleZEttzAwBDhgxBr1690LhxYzRv3hwffvghUlJS0L9/fwCeQ0p79+7FF198AcBTbHr37o13330XzZo18+71CQgIQFhYWIndDxEREfnnKNFy06NHDxw5cgTDhw9HWloaateujenTp6NixYoAgLS0NJ/PvPnggw9QUFCAxx57DI899ph3eZ8+ffDZZ59d6fgiIiLyD1Sin3NTEvQ5NyIiIlefq+JzbkREREQuB5UbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEUlRsRERExFJUbERERMRSVGxERETEU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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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RURERKQBFl1EREREGmDRRURERKQBFl1EREREGmDRRURERKQBFl1EREREGmDRRURERKQBFl1EREREGmDRRURERKQBpxZds2bNQtOmTeHr6wtfX1906NABf/zxhzMjEREREV0XTi26QkNDMW3aNGzbtg3btm1Djx49cNddd2HPnj3OjEVERERU4VycOfP+/fs73H/rrbcwa9YsbNq0CY0bN75ofLPZDLPZbLufk5Nz3TMSERERVYRKc06XxWLB/Pnzce7cOXTo0KHUcaZOnQqTyWS7NWrUSOOUREREROXj9KJr165d8Pb2htFoxMiRI7F48eJLFlMTJkxAVlaW7ZaQkKBxWiIiIqLycerhRQCoX78+duzYgczMTCxcuBDDhg3D6tWrSy28jEYjjEaj7X52draWUYmIiIjKzelFl5ubG+rUqQMAaN26NbZu3Yrp06fj008/dXIyIiIioorj9MOLFxIRh5PliYiIiG4GTt3T9corr6Bv374ICwtDTk4O5s+fj1WrVmHZsmXOjEVERERU4ZxadB0/fhxDhgxBWloaTCYTmjZtimXLlqF3797OjEVERERU4ZxadH355ZfOnD0RERGRZirdOV1ERERENyMWXUREREQaYNFFREREpAEWXUREREQaYNFFREREpAEWXUREREQaYNFFREREpAEWXUREREQaYNFFREREpAEWXUREREQaYNFFREREpAEWXUREREQaYNFFREREpAEWXUREREQaYNFFREREpAEWXUREREQaYNFFREREpAEWXUREREQaYNFFREREpAEWXUREREQaYNFFREREN4SPP/4YERERcHd3R6tWrbB27drLjm82mzFx4kTUrFkTRqMRtWvXxldffaVR2ou5OG3ORERERGW0YMECjBs3Dh9//DE6duyITz/9FH379kVCQgLCw8NLfc7999+P48eP48svv0SdOnWQkZGBoqIijZPb6UREnDb3a5SSkoKwsDAkJycjNDTU2XGIiIioDIq33wkJCQgJCbENNxqNMBqNpT6nXbt2aNmyJWbNmmUb1rBhQwwYMABTp069aPxly5bhgQcewJEjR1C1atWKfxHlwMOLRERE5BSNGjWCyWSy3UorngCgoKAAcXFxiImJcRgeExODDRs2lPqcX375Ba1bt8Y777yDkJAQ1KtXD88//zzy8vIq/HWUFQ8vEhERkVOUtqer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e6NGjRrw9fVFhw4dsHz5cg3TXozndBEREVGlt2DBAowbNw4TJ05EfHw8OnfujL59+yIpKanU8desWYPevXtj6dKliIuLQ/fu3dG/f3/Ex8drnNxOJyLitLlfo5SUFISFhSE5ORmhoaHOjkNERERlUJ7td7t27dCyZUvMmjXLNqxhw4YYMGAApk6dWqZpNG7cGIMGDcKkSZPKlftacU8XEREROUVOTg6ys7Ntt5I/9VdSQUEB4uLiEBMT4zA8JiYGGzZsKNO8rFYrcnJyULVq1WvOXV4suoiIiMgpGjVq5PDzfpfaY3Xy5ElYLBYEBAQ4DA8ICEB6enqZ5vW///0P586dw/3333/NucvrhroiPREREd08EhISEBISYrtf8ldnSqPT6Rzui8hFw0ozb948vP766/j555/h7+9fvrAVgEUXEREROYWPjw98fX2vOF716tVhMBgu2quVkZFx0d6vCy1YsACPPfYYfvzxR/Tq1eua8l4rHl4kIiKiSs3NzQ2tWrVCbGysw/DY2FhER0df8nnz5s3D8OHD8f3336Nfv37XO+YVcU8XERERVXrjx4/HkCFD0Lp1a3To0AGfffYZkpKSMHLkSADAhAkTkJqaijlz5gBQBdfQoUMxffp0tG/f3raXzMPDAyaTySmvgUUXERERVXqDBg3CqVOnMHnyZKSlpSEqKgpLly5FzZo1AQBpaWkO1+z69NNPUVRUhFGjRmHUqFG24c781Rtep4uIiIg0datuv3lOFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGWHQRERERaYBFFxEREZEGXJwd4IaTlQXk5AChoRc/lpIC+PgAJpP2ucjuwmVU8n7xMgLUMMDxvhbjlFw/uM4Q0fVSlr6wuO9hX6QJFl1XIysLuO02ICMDWLUKCAuzP5acDHTrBvj7A8uWccV1lguXka+v/f733wMPPghUrQrodMDx4+o5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Wa1qmTdpoob/8YdaJ4ozNm6sMj70kPpkrdOJfP65WrcMBjX/GjXUuvfSS+qLK56eIq+9ptZRPz97xuPH1bqs16t1+7HHVMbate0Z9+xR7wlAtU+fPipj585q/QREli9X7y1AvdeaNFEZBw9W6zmgTkJOTlYZO3dW7938fPVe9vVV75s33lDvdV9f1QZGo+oLpk9XGQMCRJ54QmWMjFTvT0B9SWfhQvV/gwYiffuqjB07qvc5IBIbK7Y96m3bquxWq+rLatZUw2fPVntB9HqVMSBAZXzuOdXvuLuL/Pe/at308VEZ3d1FTp4Uef999dr8/UVGjBApLBSpVUtlAET27RP58Uf1f716Iv36qfl36CDSvLka/tdfIhs3qv/btFHDrVaR++4TiYhQw+fMETl61J4xOFjEbBZ59lm1bI1GdWQhK0utn127qrY9fVq9f1xc1Dr89NMqY3i4PePBgyILFqj/69YVufNONf927dQXWgCRVavsV0do3VqkVSs1zj332DcH332n9lDrdCpjSIg6NWXsWPUeMRpFpk1TR928vFRGT0+RM2dUX+XqKlKtmsjo0SpjWJhIp05qeocOicybp+ZTp47IgAFq/m3aiLRseX7P9xqRtWvV/61aqcesVpG771bvn+IjLocPq2l+8cWV+6PXXlNZi48U5uerdhwzRr22kBC1jSg2d6593bxWV7unqzw1Q926dWXKlCkOw9atWycAJC0t7dpfRDk4regqz67CC1XktxdnzVIr04fVXpci6G3ndO0JjZGaSJRWbjvFeuzib2x076469u3b1f2tW1UnVfxmmjZNZMgQ1VE0b646ubg49WZs00a9UUePVhs7FxfVWbm6qunUqKHeTH5+6k04c6bK2LWrvTOrX191XEFBanpLlqjHundXf+fNU+P7+6sOp2ZNtQu5uHMDRN55R23svL1VZ+7npzJ6eKiO3M1NvQlfeklla99e/d22Tb1BmzRRr2vgQLWxK5nx77/VfCMjVcZ27UQWLXLMOH++fWNQp47q1NeuVRm7dFHjvPuu2tj5+KgNS5UqaqNgtarXbDSKjBt3zauBJp57TrXpokUq/+nTIlWrqnb08VEbzPffV6+7+PWvWaPasHZttb517Cjyww/qsW7d1N+fflLrT1CQfdzVq9V6WDyd6dPVxs5kUkVatWpqWRuNatm4uqqC4dlnVca2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",
"text/plain": [
"<Figure size 640x480 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Add the code to plot the results here:\n",
"\n",
"# First replotting the source and target time series:\n",
"plt.scatter(range(1,101), data[:100,0], marker='x', color='red', label='source')\n",
"plt.scatter(range(1,101), data[:100,1], marker='o', color='blue', facecolors='none', label='target')\n",
"plt.xlabel('n')\n",
"plt.ylabel('state')\n",
"plt.legend()\n",
"plt.show()\n",
"\n",
"# Then plotting the local TE alongside the target variable:\n",
"plt.scatter(range(1,101), locals[:100], marker='x', color='red', label='TE (bits)')\n",
"plt.xlabel('n')\n",
"plt.ylabel('TE (bits)')\n",
"plt.legend(loc='upper left')\n",
"ax2 = plt.twinx()\n",
"ax2.scatter(range(1,101), data[:100,1], marker='o', color='blue', facecolors='none', label='target')\n",
"ax2.set_ylabel('state')\n",
"ax2.legend(loc='upper right')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"id": "5ff7d314-170c-4e36-ba38-59bfe2eca9e1",
"metadata": {},
"source": [
"10. Examine the results (you may need to zoom in on the second figure above):\n",
" * Where did the source add the _most_ information in the context of the target past? Why?\n",
" * Where did the source add the _least_ information in the context of the target past? Why?\n",
" * We don't see any negative values of local TE here - can you explain why?\n",
"11. _Challenge task_: Compute the local lagged mutual information (across one time step from the source to the target) by adding code below (e.g. by adapting the above code). Compare the results, and discuss why they are different. (Note that the local MI values generated by JIDT here will need a 0 padded to the front in order to align them with the local TE values.)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "7976bec2-4d07-4383-9d98-767f39f2585b",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAl0AAAGwCAYAAACTsNDqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB2f0lEQVR4nO3dd3hTZf8G8DtN9wZKS0tb2lJ2GWXvIUtEpq8gIDJUREWWs/K+ojhAfyqCIqAoiCCgMlwIFGRvyqZsCh12sDooncn398dDk4YWKKEkpdyf68rV5uTJOXeec3LON+ecnGhEREBERERE95WNtQMQERERPQxYdBERERFZAIsuIiIiIgtg0UVERERkASy6iIiIiCyARRcRERGRBbDoIiIiIrIAW2sHuBf5+fk4cOAAfHx8YGPD+pGIiOhBoNfrkZycjPDwcNjaPtClyF15oF/pgQMH0Lx5c2vHICIiIjPs2bMHzZo1s3YMi3mgiy4fHx8Aaqb5+vpaOQ0RERGVRGJiIpo3b27Yjj8sHuiiq+CQoq+vL/z9/a2choiIiO7Gw3Zq0MP1aomIiIishEUXERERkQWw6CIiIiKygAf6nK6S0ul0yMvLs3YMugU7OztotVprxyCih4Rer0dubq61Y5RrXK8Xr1wXXSKCpKQkpKamWjsK3YGnpyeqVKkCjUZj7ShEVI7l5uYiJiYGer3e2lHKPa7XiyrXRVdBweXt7Q1nZ2fO+DJIRHD9+nWkpKQAAC/9QUT3jYggMTERWq0WAQEBD9035yyF6/VbK7dFl06nMxRclSpVsnYcug0nJycAQEpKCry9vblLmojui/z8fFy/fh1+fn5wdna2dpxyjev14pXbMr/gHC6+sR4MBfOJ594R0f2i0+kAAPb29lZO8nDger2oclt0FeAhxQcD5xMRWQrXN5bBfi6q3B5eLBX5+Yg5q8fMOfZYsQLIzATq1AGaNAGOHNbj0GENnJw06N0bGDsWqFXL2oEfQmlp2LExBzOWeGPzZkAEaNMGCAwENkXmIi7RFpW9bdClC5CaCmzcCOTmqnlYuzawaxdw+jTg4QF066YeW78euH4dqFcPCA8HDh0CjhwBnJ2Bzp0BR0dg3To1vtBQoHVr4ORJYN8+wNYW6NQJqFhRjSclBfD3Bzp2BOLjge3bVez27YFx41RWIqJ7lp+PvFw9Lqba4/JlQKcD7O0BV1cgJ1uPzOsaaDQauLoCdnZARgaQl6f+r1QJqFwZ4BHA+6/c7+kyW34+ti+LR8MmWixaJOjXD5gwATh7FpgxAzh8QI9xgy9i4JN6LF+uNs7r1lk79EMmLQ1fNZqHNv28cSgqD6NGAcOHA3//reYRzpzBa65z4Vs5D7NmAUuXAn36AC+9BOzcqdqkpACvvgo0aADMnQssWAB06ACMH68KqRkzgOhodb9jR+CHH4A5c1RB9tprwOXLwBdfANu2AS++CPTrB/z8M/DVV4CPj2pjYwPMnAn89RcwdCgwapQq4tq2VcOJiO5Jfj6yT15AdDSQlCRwc1PrH71ereMy0gWVNZdRwVOP1FQ1zMZGtXFyAhISgOPHVRFWVm3ZsgW9evWCn58fNBoNVq1adcfnbN68GU2aNIGjoyNCQkIwZ86c+x/0Dlh03UL2dT2eGFcV4TWv49wf0fjik1z4+gKJicC4IZdwNUMLV8d8fDotHzExaoP85JNAWpq1k9/eP//8g9q1axu+Lv3uu++iUaNGt33O8OHD0bdvX7OnmZKSgsqVKyMhIcHscRTn4K5svHL+VUzA54jW18GU5+OQnAw4OegwzPVXHMqti0Z5e7Bzry169wYCAoBjx9QnwJwc4OWXgZgYtbdq2za196l+fbX3q2JFtWIaNw64dAnw9AR271aPd+ig9liFhqoi/KWX1B6yvDy14qpaVRV3O3cCjRoBBw8Czzyj9pQlJwNTpqhC7rXX1Pj37y/VbiGih4zo9TiX7QctdAizPYEgv1y4ugLZ2YCXzWUAgE4P5OaovfEVKqgjNxUqACEh6kOkTgdcuGDlF3IbmZmZaNiwIb766qsStY+JicFjjz2Gdu3a4cCBA3j77bcxduxYLF++/D4nvQN5gMXFxQkAiYuLK/JYVlaWREdHS1ZWllnjXrhQBBA5NX+byN69IocPS6MG+dKrQ5rI3r3ydOcECamWLzqdap+QIKLVinz55b28IhEAt70NGzbstu2WLFly2/E3adJEFi5caLg/efJkadiw4W2fk5qaKlevXjXc79Chg4wbN+6uXteECRPk2WefveXj5syv554TCfDLk7zgGiKAXKzWROztdPJpxQ8lHzYSZBsrjermiIuLSFqayK+/qnlaoYLI+PFqHK1bi9SpI6LRiMTEiOzapdoEBor85z+qzYABIv7+aviOHSLnz4vY2KjntWyp2kycKOLhodr8/LNIerqIq6tIo0ZqXPn5Ip9/LmJnJ5KcrJ6Tn68eGznyrrqSiMx0r9sFEZFz50RefVWkdm2RkBC1nti4sfQy3srt1rsZGWozlXrwnGF7deZEnhzdlyX6vXslYX+SREXpZe9ekYsXRXQ6kQMHRGJjjeNISVFPzc6+9zwFbtfft9t+3wkAWbly5W3bvPHGG1K7dm2TYS+88IK0LFhpWwn3dN3Cri05CHM6ixpThgJXryInIxcHD2vRr/1l4OpV9DvyPs5d0OLi2XQAgJ8f0LKl2rtxLxITEw23L774Au7u7ibDZsyYYWg7f/58k8cSExNvu0dqx44dOH36NJ588sm7yuTh4QFPT08zX5EyYsQILF68GFevXr2n8RS2cyfQq68tbDdvAEJCsP9CReTm2aDvle+gDQlCn2c8ceq8PTp3Btzdgd69AY0GuHoVKOimfv3UOV3h4UBQENC8udrlHhtr2iY+HvD2VvO4WjV1TtiZM6ZtCvZy9ukDuLkBXbuqcffurc6V6NdP7Q0r2LOl1Rr3iBFR2bdhAxAWBsyfr45uPPGE2mvdqRMwaZL1cl27pg4XuteuCjg4ADk5uJahh6dcgcbBAZ4hFaHXa5CXlwtPT9XWw0M9r0CFCupvZqZls2dkZCA9Pd1wy8nJKZXx7ty5E926dTMZ1r17d+zbt8+q36Zk0XULWl0ucvJt1PGnF16ATUoSACDncgbwwgvISUkFANhmG5fanBu7bu9FlSpVDDcPDw9oNJoiwwoUXO238M3R0fGW4166dCm6detWbJu5c+ciICAAzs7OePLJJ02u4l/48OLw4cOxefNmzJgxAxqNOjHz/PnzuHr1KoYMGYLKlSvDyckJNWrUwPz58w3jqF+/PqpUqYKVK1feWwcVotWqPkdAAPDjj9BCfR08Bw7Ajz8ix94NNjY32kAdAhRR/xcMy8mBSRsR43kNhdsAanjBRaxzclQBd3Obguncrk3hZaQ0lhkiuv+uXgX69wfatVMfymbPBj75BDh6VP396COgBKcZmaW49e7Zs2fx7LPPIjg4GMHBTujXrxZmzJ4NBAcDADQQjH93AvpGROD/vvgUPXr44YknakKvVx/Ae/ZshEaNHNG0aVOsWrUKdnYanDx5EAVfOIyOjsZjjz0GV1dX+Pj4YOjQobh06dIt85w/f96s11a3bl14eHgYblOnTi2NLkNSUhJ8fHxMhvn4+CA/P9/wOqyBRdctdO3nhtN5wdjj1weIiYHdmBfQsda/WDwvCxITg0VOoxAelouKYX4AgBMn1LfXuna1cvDb2LJlC5o2bVpk+JkzZ/Dzzz/jjz/+wJo1a3Dw4EG8/PLLxY5jxowZaNWqFZ5//nnD3rWAgAD873//Q3R0NP7++28cP34cs2fPhpeXl8lzmzdvjq1bt5ba6+nWDVixArh+Kh4YOhQtsBtuSMciPI3sIc/i1591aNxYfTpNTAR++kk9z98fWLRIFVCLFwONG6tzvQ4eBNauBa5cUeduLVqk2i9aBNStq1a6f/8NHD6sbo0bq3Hq9aqNn58q4BYtApKSgMhI1Wb5ciArSw13dQVatFDjzcpSj3XpUmpdQkT3yYIF6j37ww+Ai4txuEYDvP66+mJMoQMRpaq49a6/vz/8/f3x888/Y//+aDz33DuY9Pbb+PnGyeLuSEcu7LFh40YcPhSNOXMiMX36n4iNzUCvXr0QHFwfa9fux/vvv48333zT8FpcXdURlw4dOqBRo0bYt28f1qxZg+TkZAwYMOCWeQICAsx6bdHR0UhLSzPcIiIiSqfTUPSSFXLjU7dVL2Vh1YOb9+h+ntOVny9Su5ZeavpfkzM+rUUA+QM9BRDpaL9NAJFFC/JERB0Xb9hQJCCg5MfDS2L+/Pni4eFR7GMAxNHRUVxcXExuZ8+eveX4PDw8TM7nElHndGm1WpM+/Pvvv8XGxkYSExNFRGTYsGHSp08fw+PFHcvv1auXjBgx4ravZ8KECdKxY8diHzNnfp07J+LooJM+zuskDW4iISHy+uB4sUeOtMR2sUe27PszUSpVEqlfX8TdXZ1/MWOGOveqfXv1d9MmkerV1a1KFZFWrYznf3XqZDxPq00b9Xj16upcji1b1LlgBeOZPl1k4EA1nQYNRCpWFImKEnFwEGnRQp3P9eqrKntamki/fiKOjiJnzpT4JRPRPbiX7UK/fiKdO9/68RkzRGxtRfT6ewh4G3c6h+rkCZ0M+M9o6fNIV5HDhyXzYqY83vMZ8aroLTt2ZEtCbJ7ExIhERMwWT89KsmNHluTkqOfOnPmtAJC//jogIiL/+9//pFu3bibjL9jenjx5skR5RKx7Tle7du1k7NixJsNWrFghtra2kpube9fTLC08sHELWl0u/vgsBl1HBaFmylZ0QSR8kAwPpGJTbhu4OOmw5pcM/LTUA2sjbeDtrS4Z4eBguYzTp09Hl5t2k9zu00ZWVlaxhxYDAwPh7+9vuN+qVSvo9XqcPHkSVapUKVGWF198EU888QT279+Pbt26oW/fvmjdurVJGycnJ1y/fr1E4yuJYLt4/FphMp5M+hJ+mkQ8VkcDfY4zdFrBLl1rVMN5fPlUFKpU7YUjR+yh0ajrb+3apebTli3q2jTffw94ealvJwLq+l2//abOy9q4Uf394w91zZskdZQZzZsD8+ap52/Zosa3Z486RyIjQ+0Jq1dPffL19VXj1mqB8+eBAQPUHrP8fHV5ierVS61LiOg+0WiMpxcUR68HLL0DZc6cOZg3bx4uXLiArMxM5OTlo2bNRjhhWw8OGTbQ2GgQEtoA9nZ2yLqYDnF1w/nzJxEa2gCuro5ISFB777y8mgNQ57MCQFRUFDZu3AhXV9ci0zx79ixq1qxpyZdpllatWuGPP/4wGbZu3To0bdoUdnZ2VkrFi6Pemo0NQkP0ODJ7O34auR7LL3fAOYRgAH5G58qHsbXVGzgU7wXHCsD06eqSAIVOt7KIKlWqIDQ0tMTtvby8SnQie8Gu17vZBdujRw9cuHABf/31F9avX4/OnTvj5Zdfxqeffmpoc+XKFVSuXLnE47wjNzf0DIrGafsu+Lb/39h0wAOSAUREaFDH+zL+iDiC06iB0OoavPaWulzDunWqKHrpJVU4rVmjToivVEmdo5GTA6xerU7lGzJEnSy7ebO6rpaTk7oml5OTKsrOngV69AAefRTYu1fd7OyADz9UhdZvv6lxt2gBvP8+cOqUKtAAdc23UaPUoU4iKvs6dVLX60tIUJeFKUxEXQewY0fLFV4///wzJkyYgM8++wytmjWD2+XL+OS777Dz+ClobW2Qk3PjwqcVneCjvYRr4gqN3gbOzgInJw2cndX6zsEB8PdXh90KLo6q1+vRq1cvfPzxx0Wma60fr7527RrOnDljuB8TE4ODBw+iYsWKCAwMREREBBISErBw4UIAwOjRo/HVV19h4sSJeP7557Fz50589913WLJkiVXyF2DRdSu2toCjI1zHP4dRl2MwKmQZ8OOPwNCPgXPnMPDIanWy0I2TFh8E4eHhiI6OLjI8NjYW//77L/z81PlpO3fuhI2NzS0/zdjb2xt+w6ywypUrY/jw4Rg+fDjatWuH119/3aToOnr0KDp27Fg6LwZQVe6aNaiakYF3/W+ueCthcL9wtZvKw/ip5sapCwZPPVV0tOPGmd4fOLBom1Gj7jye4cNvmZyIHjDPPANMnqw+jK1cafy2n06nrr23e7e6APL9cvN6d+vWrWjdujVeeuklNSA/H+c++QRaWw1q1FCD3NwAnc4G/vU81Qmntho0bVobv/22GP7+OXC4cWhm06Z9JtNq3Lgxli9fjqCgINje4ps+t9oO3C/79u1Dp06dDPcnTpwIABg2bBgWLFiAxMRExMbGGh4PDg7G6tWrMWHCBMyaNQt+fn6YOXMmnnjiCYtlLg5PpL+V+Hh1hnNMjLp63KZN6vdeNm1S92Ni1OPx8VaLmJqaiqSkJJNb5m2+79u9e3ds27atyHBHR0cMGzYMhw4dwtatWzF27FgMGDDglocWg4KCsHv3bpw/fx6XLl2CXq/HO++8g99++w1nzpzBsWPH8Oeff6JOnTqG51y/fh1RUVFFvsJ7zzw8br27yN/f8rsfiahccncHfv9dfeEmIAB4+mm1x7x6dVV0ffQR8Nhj92/6N693Q0NDsW/fPqxduxanTp3C/957D3ujoop/sr294WvSgwcPhl6vx6hRo3D8+HGsXbvW8OG44OjGyy+/jCtXrmDQoEHYs2cPzp07h3Xr1mHkyJGGQqu47cD91LFjR4hIkduCBQsAAAsWLMCmTZtMntOhQwfs378fOTk5iImJwejRo+9rxpJg0XUrbm7qwkwFBVfBuVIBAcbCy9tbtbOSESNGwNfX1+T25Zdf3rL9008/jejoaJw8edJkeGhoKPr374/HHnsM3bp1Q1hYGL7++utbjue1116DVqtF3bp1UblyZcTGxsLe3h4RERFo0KAB2rdvD61Wi6VLlxqe89tvvyEwMBDt2rW79xdORGQFbdqoX514/XV1usD27eqw4549QCl+6a5YN693H330UfTv3x8DBw5EixYtcPnyZeNer9twd3fHH3/8gYMHD6JRo0aYNGkS3nnnHQAwnPPr5+eH7du3Q6fToXv37ggLC8O4cePg4eEBGxubYvMU3stEt6YRKbhy0YMnPj4eAQEBiIuLMzkRHACys7MRExOD4ODg21676rbS0tQJQMXtSYmPv3Ho6sHak/LGG28gLS0Nc+fOteh0mzdvjvHjx2Pw4MHFPl4q84uI6Da4nine4sWLMWLECKSlpcHJyanUxnu7/r7d9rs84zldt+Phceui6gFdSCZNmoRZs2ZBp9NBa6GflE9JScF//vMfDBo0yCLTIyKiW1u4cCFCQkJQtWpVHDp0CG+++SYGDBhQqgUXFY9F10PGw8MDb7/9tkWn6e3tjTfeeMOi0yQiouIlJSXhnXfeQVJSEnx9ffHkk0/iww8/tHashwKLLiIioofIG2+8wQ/CVsIT6YmI6KHyAJ/K/EBhPxfFoouIiB4KBeex5hb8Kj3dVwW/QGLNK8CXNTy8SEREDwVbW1s4Ozvj4sWLsLOzM1z+gEqXiOD69etISUmBp6enxb609SBg0UVERA8FjUYDX19fxMTE4MKFC9aOU+55enqW+Pd7HxYsuoiI6KFhb2+PGjVq8BDjfWZnZ8c9XMVg0UVERA8VGxsbXhyVrIIHtB8iQ4cOxUcffWS4HxQUhC+++OK2z9FoNFi1apXZ0/zqq6/Qu3dvs59PRERUXrDoKoOGDx8OjUZT7I9zvvTSS9BoNBg+fLhJ+759+952nIcPH8Zff/2FV1555a6yJCYmokePHgCA8+fPQ6PR4ODBgyV+/vPPP4+9e/cW+0PbREREDxMWXSWQmZsJzXsaaN7TIDM30yLTDAgIwNKlS5GVlWUYlp2djSVLliAwMPCux/fVV1/hySefhNtd/kB3lSpV4ODgcNfTK+Dg4IDBgwff9oe4iYiIHgYsusqoxo0bIzAwECtWrDAMW7FiBQICAhAeHn5X49Lr9fjll1+KPcyXkZGBwYMHw9XVFX5+fkWKo8KHF4ODgwEA4eHh0Gg06NixIwBg06ZNaN68OVxcXODp6Yk2bdqYfDOod+/eWLVqlUkBSURE9LApM0XX1KlTodFoMH78eGtHMcjMzVS3POPercy8TMPw+23EiBGYP3++4f7333+PkSNH3vV4Dh8+jNTUVDRt2rTIY//3f/+HBg0aYP/+/YiIiMCECRMQGRlZ7Hj27NkDAFi/fj0SExOxYsUK5Ofno2/fvujQoQMOHz6MnTt3YtSoUdBoNIbnNW3aFHl5eYbnExERPYzKxLcX9+7di2+++QYNGjSwdhQTrlNdiwzz+dTH8L9Mvr8/cTB06FBEREQYzqXavn07li5dik2bNt3VeM6fPw+tVgtvb+8ij7Vp0wZvvfUWAKBmzZrYvn07pk+fjq5duxZpW7lyZQBApUqVDNdeuXLlCtLS0vD444+jevXqAIA6deqYPK9gD9j58+fRoUOHu8pORERUXlh9T9e1a9cwZMgQfPvtt6hQoYK145QpXl5e6NmzJ3744QfMnz8fPXv2hJeX112PJysrCw4ODiZ7nwq0atWqyP3jx4+XeNwVK1bE8OHD0b17d/Tq1QszZsxAYmJikXZOTk6Gn4QgIiJ6GFm96Hr55ZfRs2dPdOnS5Y5tc3JykJ6ebrhlZGTc12zXIq7hWsQ1JL+WbBiW/FqyYbgljBw5EgsWLMAPP/xg1qFFQBVv169fL/HFAIsrzm5n/vz52LlzJ1q3bo1ly5ahZs2a2LVrl0mbK1euGPaUERERPYysWnQtXboU+/fvx9SpU0vUfurUqfDw8DDc6tate1/zudi7qJudi3GYnYthuCU8+uijyM3NRW5uLrp3727WOBo1agQAiI6OLvLYzcXRrl27ULt27WLHY29vDwDQ6XRFHgsPD0dERAR27NiBsLAw/PTTT4bHzp49i+zs7Lv+AgAREVF5YrWiKy4uDuPGjcOiRYtKfGXgiIgIpKWlGW7FFRHljVarxfHjx3H8+HGzf1KhcuXKaNy4cbHXytq+fTs++eQTnDp1CrNmzcIvv/yCcePGFTseb29vODk5Yc2aNUhOTkZaWhpiYmIQERGBnTt34sKFC1i3bh1OnTplcl7X1q1bERISYjjni4iI6GFktaIrKioKKSkpaNKkCWxtbWFra4vNmzdj5syZsLW1LXZvioODA9zd3Q23u73mlLlc7F0gkwUyWSy2h6uwgtd7L0aNGoXFixcXGf7qq68iKioK4eHheP/99/HZZ5/dco+ara0tZs6ciblz58LPzw99+vSBs7MzTpw4gSeeeAI1a9bEqFGjMGbMGLzwwguG5y1ZsgTPP//8PeUnIiJ60GlE5P5+Be8WMjIyivzK+4gRI1C7dm28+eabCAsLu+M44uPjERAQgLi4OPj7+5s8lp2djZiYGAQHB/M3tqD6o1atWli6dGmRk+fvp6NHj6Jz5844deoUPDw8bpuP84uI6OFwu+13eWa1S0a4ubkVKaxcXFxQqVKlEhVcdHccHR2xcOFCXLp0yaLT/ffff7Fw4cLbFlxEREQPgzJxnS6yDGtcI6tbt24WnyYREVFZVKaKrru96CcRERHRg8Lq1+m636x0yhrdJc4nIiIq78pt0WVnZwcAvAr6A6JgPhXMNyIiovKmTB1eLE1arRaenp5ISUkBADg7O9/1ldbp/hMRXL9+HSkpKfD09DT7WmRERERlXbktugAYfpS5oPCissvT09Mwv4iIiMqjcl10aTQa+Pr6wtvbG3l5edaOQ7dgZ2fHPVxERFTuleuiq4BWq+VGnYiIiKyq3J5IT0RERFSWsOgiIiIisgAWXUREREQWwKKLiIiIyAJYdBERERFZAIsuIiIiIgtg0UVERERkASy6iIiIiCyARRcRERGRBbDoIiIiIrIAFl1EREREFsCii4iIiMgCWHQRERERWQCLLiIiIiILYNFFREREZAEsuoiIiIgsgEUXERERkQWw6CIiIiKyABZdRERERBbAoouIiIjIAlh0EREREVkAiy4iIiIiC2DRRURERGQBLLqIiIiILIBFFxEREZEFsOgiIiKiB8LXX3+N4OBgODo6okmTJti6dett2y9evBgNGzaEs7MzfH19MWLECFy+fNlCaYti0UVERERl3rJlyzB+/HhMmjQJBw4cQLt27dCjRw/ExsYW237btm145pln8Oyzz+LYsWP45ZdfsHfvXjz33HMWTm7EoouIiIisIiMjA+np6YZbTk7OLdt+/vnnePbZZ/Hcc8+hTp06+OKLLxAQEIDZs2cX237Xrl0ICgrC2LFjERwcjLZt2+KFF17Avn377tfLuSMWXURERGQVdevWhYeHh+E2derUYtvl5uYiKioK3bp1MxnerVs37Nixo9jntG7dGvHx8Vi9ejVEBMnJyfj111/Rs2fPUn8dJWVrtSkTERHRQy06OhpVq1Y13HdwcCi23aVLl6DT6eDj42My3MfHB0lJScU+p3Xr1li8eDEGDhyI7Oxs5Ofno3fv3vjyyy9L7wXcJe7pIiIiIqtwc3ODu7u74XaroquARqMxuS8iRYYViI6OxtixY/HOO+8gKioKa9asQUxMDEaPHl1q+e8W93QRERFRmebl5QWtVltkr1ZKSkqRvV8Fpk6dijZt2uD1118HADRo0AAuLi5o164dPvjgA/j6+t733Dfjni4iIiIq0+zt7dGkSRNERkaaDI+MjETr1q2Lfc7169dhY2Na5mi1WgBqD5k1sOgiIiKiMm/ixImYN28evv/+exw/fhwTJkxAbGys4XBhREQEnnnmGUP7Xr16YcWKFZg9ezbO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DHz55ZelnZGIiIjogWfWOV0BAQHYv38/IiMjceLECYgI6tatiy5dupR2PiIiIqJyocRFV8WKFXHq1Cl4eXlh5MiRmDFjBrp27YquXbvez3xERERE5UKJDy/m5uYaTpD/4YcfkJ2dfd9CEREREZU3Jd7T1apVK/Tt2xdNmjSBiGDs2LFwcnIqtu33339fagGJiIiIyoMSF12LFi3C9OnTcfbsWWg0GqSlpXFvFxEREVEJlbjo8vHxwbRp0wAAwcHB+PHHH1GpUqX7FoyIiIioPDHr24sxMTGlnYOIiIioXDOr6AKADRs2YMOGDUhJSYFerzd5jOd0EREREZkyq+h67733MGXKFDRt2hS+vr7QaDSlnYuIiIioXDGr6JozZw4WLFiAoUOHlnYeIiIionLJrJ8Bys3NRevWrUs7CxEREVG5ZVbR9dxzz+Gnn34q7SxERERE5ZZZhxezs7PxzTffYP369WjQoAHs7OxMHv/8889LJRwRERFReWFW0XX48GE0atQIAHD06FGTx3hSPREREVFRZhVdGzduLO0cREREROWaWed0EREREdHduas9Xf379y9RuxUrVpgVhoiIiKi8uquiy8PD437lICIiIirX7qromj9//v3KQURERFSu8ZwuIiIiIgtg0UVERERkASy6iIiIiCyARRcRERGRBbDoIiIiIrIAFl1EREREFsCii4iIiMgCWHQRERERWQCLLiIiIiILYNFFREREZAEsuoiIiIgsgEUXERERkQWw6CIiIiKyABZdRERERBbAoouIiIjIAlh0EREREVkAiy4iIiIiC2DRRURERGQBLLqIiIiILIBFFxEREZEFsOgiIiIisgAWXUREREQWwKKLiIiIyAJYdBERERFZAIsuIiIiIguwatG1ZcsW9OrVC35+ftBoNFi1apU14xARERHdN1YtujIzM9GwYUN89dVX1oxBREREdN/ZWnPiPXr0QI8ePUrcPicnBzk5OYb7GRkZ9yMWERERUal7oM7pmjp1Kjw8PAy3unXrWjsSERERUYk8UEVXREQE0tLSDLfo6GhrRyIiIiIqEaseXrxbDg4OcHBwMNxPT0+3YhoiIiKiknug9nQRERERPahYdBERERFZgFUPL167dg1nzpwx3I+JicHBgwdRsWJFBAYGWjEZERERUemyatG1b98+dOrUyXB/4sSJAIBhw4ZhwYIFVkpFREREVPqsenixY8eOEJEiNxZcREREdLOvv/4awcHBcHR0RJMmTbB169Zbtl2xYgW6du2KypUrw93dHa1atcLatWstmLYontNFREREZd6yZcswfvx4TJo0CQcOHEC7du3Qo0cPxMbGFtt+y5Yt6Nq1K1avXo2oqCh06tQJvXr1woEDByyc3EgjImK1qd+j+Ph4BAQEIC4uDv7+/taOQ0RERCVgzva7RYsWaNy4MWbPnm0YVqdOHfTt2xdTp04t0Tjq1auHgQMH4p133jEr973ini4iIiKyioyMDKSnpxtuhX/qr7Dc3FxERUWhW7duJsO7deuGHTt2lGhaer0eGRkZqFix4j3nNheLLiIiIrKKunXrmvy83632WF26dAk6nQ4+Pj4mw318fJCUlFSiaX322WfIzMzEgAED7jm3uR6oK9ITERFR+REdHY2qVasa7hf+1ZniaDQak/siUmRYcZYsWYJ3330Xv/32G7y9vc0LWwpYdBEREZFVuLm5wd3d/Y7tvLy8oNVqi+zVSklJKbL362bLli3Ds88+i19++QVdunS5p7z3iocXiYiIqEyzt7dHkyZNEBkZaTI8MjISrVu3vuXzlixZguHDh+Onn35Cz54973fMO+KeLiIiIirzJk6ciKFDh6Jp06Zo1aoVvvnmG8TGxmL06NEAgIiICCQkJGDhwoUAVMH1zDPPYMaMGWjZsqVhL5mTkxM8PDys8hpYdBEREVGZN3DgQFy+fBlTpkxBYmIiwsLCsHr1alSrVg0AkJiYaHLNrrlz5yI/Px8vv/wyXn75ZcNwa/7qDa/TRURERBb1sG6/eU4XERERkQWw6CIiIiKyABZdRERERBbAoouIiIjIAlh0EREREVkAiy4iIiIiC2DRRURERGQBLLqIiIiILIBFFxEREZEFsOgiIiIisgAWXUREREQWwKKLiIiIyAJYdBERERFZAIsuIiIiIgtg0UVERERkASy6iIiIiCyARRcRERGRBbDoIiIiIrIAFl1EREREFsCii4iIiMgCWHQRERERWQCLLiIiIiILYNFFREREZAEsuoiIiIgsgEUXERERkQWw6CIiIiKyABZdRERERBbAoouIiIjIAlh0EREREVmArbUDPHDS0oCMDMDfv+hj8fGAmxvg4WH5XGR08zwqfL9gHgFqGGB63xJtCi8fXGaI6H4pybqwYN3DdZFF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2JhuorRareGSEezr+6Mk/dqkSRPY2dmZtElMTMTRo0fZ93ditVP4y4iCS0Z89913Eh0dLePHjxcXFxc5f/68taM9sF588UXx8PCQTZs2SWJiouF2/fp1Q5tp06aJh4eHrFixQo4cOSKDBg3iV71LSeFvL4qwr0vTnj17xNbWVj788EM5ffq0LF68WJydnWXRokWGNuzv0jFs2DCpWrWq4ZIRK1asEC8vL3njjTcMbdjX5snIyJADBw7IgQMHBIB8/vnncuDAAcOlkkrSr6NHjxZ/f39Zv3697N+/Xx555BFeMqIEHvqiS0Rk1qxZUq1aNbG3t5fGjRsbLm1A5gFQ7G3+/PmGNnq9XiZPnixVqlQRBwcHad++vRw5csR6ocuRm4su9nXp+uOPPyQsLEwcHBykdu3a8s0335g8zv4uHenp6TJu3DgJDAwUR0dHCQkJkUmTJklOTo6hDfvaPBs3bix2HT1s2DARKVm/ZmVlyZgxY6RixYri5OQkjz/+uMTGxlrh1TxYNCIi1tnHRkRERPTweKjP6SIiIiKyFBZdRERERBbAoouIiIjIAlh0EREREVkAiy4iIiIiC2DRRURERGQBLLqIiIiILIBFFxEREZEFsOgiIiIisgAWXUREREQWwKKLiIiIyAJsrR2AiKiwjh07okGDBnB0dMS8efNgb2+P0aNH491337V2NCKie8I9XURU5vzwww9wcXHB7t278cknn2DKlCmIjIy0diwionuiERGxdggiogIdO3aETqfD1q1bDcOaN2+ORx55BNOmTbNiMiKie8M9XURU5jRo0MDkvq+vL1JSUqyUhoiodLDoIqIyx87OzuS+RqOBXq+3UhoiotLBoouIiIjIAlh0EREREVkAiy4iIiIiC+C3F4mIiIgsgHu6iIiIiCyARRcRERGRBbDoIiIiIrIAFl1EREREFsCii4iIiMgCWHQRERERWQCLLiIiIiILYNFFREREZAEsuoiIiIgsgEUXERERkQWw6CIiIiKygP8H6ju/HSsuKCAAAAAASUVORK5CYII=",
"text/plain": [
"<Figure size 640x480 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 1. Creat MI Calc with time-lag 1 (Important to set this!)\n",
"miCalcClass = JPackage(\"infodynamics.measures.discrete\").MutualInformationCalculatorDiscrete\n",
"miCalc = miCalcClass(2, 2, 1)\n",
"# 2. No other properties to set for discrete calculators.\n",
"# 3. Initialise the calculator for (re-)use:\n",
"miCalc.initialise()\n",
"# 4. Supply the sample data:\n",
"miCalc.addObservations(source, destination)\n",
"# 5. Compute the estimate:\n",
"result = miCalc.computeAverageLocalOfObservations()\n",
"# And compute the local values:\n",
"localsMI = miCalc.computeLocalFromPreviousObservations(source, destination);\n",
"\n",
"# And our localsMI don't have a result for timestep 0 (where there is no history) yet TE does,\n",
"# so align these properly:\n",
"localsMI = numpy.append([0], localsMI);\n",
"\n",
"# Now plot them all together:\n",
"plt.scatter(range(1,101), locals[:100], marker='x', color='red', label='TE (bits)')\n",
"plt.scatter(range(1,101), localsMI[:100], marker='+', color='green', label='MI (bits)')\n",
"plt.xlabel('n')\n",
"plt.ylabel('Information (bits)')\n",
"plt.legend(loc='upper left')\n",
"ax2 = plt.twinx()\n",
"ax2.scatter(range(1,101), data[:100,1], marker='o', color='blue', facecolors='none', label='target')\n",
"ax2.set_ylabel('state')\n",
"ax2.legend(loc='upper right')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"id": "9d53392d-f408-4fd1-8375-1e91a944a47b",
"metadata": {},
"source": [
"12. _Optional (and difficult!) Challenge task_: Calculate analytically the local transfer entropy for each configuration, as well as the average transfer entropy, that we expect to get here as a function of the transition probabilities $\\lambda_0$ and $\\lambda_1$. You can start with the transition probabilities $p(x_{n+1} | y_n, x_n)$ and $p(x_{n+1} | x_n)$ - and you will also need to work out the probabilities of each value $x_n = 0, 1$ of the target (the derivation for these is shown in the comments of `generateHeartbeatMessages()` if you get stuck), then plug everything through the TE equation. A full solution is available on the tutorial page.\n",
"13. _Optional Challenge task_: Can you compute and display how the average TE (not the local values) changes as a function of the transition probabilities $\\lambda_0$ and $\\lambda_1$?"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "cdffef2c-644c-45e9-8952-a93dbe8590f8",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"id": "3c0fb51c-759d-44a7-afae-2a9f69414b08",
"metadata": {},
"source": [
"There is a discussion of the results of this activity in a short video on the tutorial site."
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "6e24c173-4868-4018-bb35-944e499218f4",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.12"
}
},
"nbformat": 4,
"nbformat_minor": 5
}