{ "cells": [ { "cell_type": "markdown", "metadata": { "tags": [] }, "source": [ "# Quiz 5\n", "\n", "BEFORE YOU START THIS QUIZ:\n", "\n", "1. Click on \"Copy to Drive\" to make a copy of the quiz\n", "\n", "2. Click on \"Share\",\n", " \n", "3. Click on \"Change\" and select \"Anyone with this link can edit\"\n", " \n", "4. Click \"Copy link\" and\n", "\n", "5. Paste the link into [this Canvas assignment](https://canvas.olin.edu/courses/315/assignments/5149).\n", "\n", "Copyright 2021 Allen Downey, [MIT License](http://opensource.org/licenses/MIT)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "try:\n", " import empiricaldist\n", "except ImportError:\n", " !pip install empiricaldist" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from os.path import basename, exists\n", "\n", "def download(url):\n", " filename = basename(url)\n", " if not exists(filename):\n", " from urllib.request import urlretrieve\n", " local, _ = urlretrieve(url, filename)\n", " print('Downloaded ' + local)\n", " \n", "download('https://github.com/AllenDowney/ThinkComplexity2/raw/master/notebooks/utils.py')\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import networkx as nx\n", "\n", "from utils import decorate" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The Constitution of Knowledge\n", "\n", "This question is inspired by Jonathan Rauch's book *The Constitution of Knowledge*, which talks about ways science works as a social enterprise.\n", "Reading it, I thought of an agent-based model we could use to study the dynamics of knowledge creation and dissemination.\n", "\n", "In the model, an agent represents a scientist with a belief about whether a hypothesis is true.\n", "Beliefs are represented in the form of probabilities, so one scientist might say there is a 25% chance the hypothesis is true; another might say there is a 75% chance.\n", "\n", "In my implementation, these probabilities are stored and computed using\n", "log-odds rather than probabilities.\n", "Log-odds and probabilities are equivalent in the sense that if you are given either, you can compute the other.\n", "To convert from log-odds to probabilities, we can use the `expit` function.\n", "\n", "As an example, suppose there are five people with different beliefs, like this:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "beliefs = [-2, -1, 0, 1, 2]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can convert their beliefs to probabilities like this:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.11920292, 0.26894142, 0.5 , 0.73105858, 0.88079708])" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from scipy.special import expit\n", "\n", "probs = expit(beliefs)\n", "probs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "On the log-odds scale, the value `-2` corresponds to a probability around 12%, which represents the belief that the hypothesis is probably false.\n", "The value `2` corresponds to probability 88%, which is probably true.\n", "\n", "The log-odds scale makes it easy to update beliefs in light of new evidence.\n", "For example, suppose someone does an experiment that provides evidence in favor of the hypothesis with a log-odds ratio of `0.5`.\n", "\n", "In light of this evidence, the scientists can update their beliefs by adding `0.5` to their prior beliefs." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-1.5, -0.5, 0.5, 1.5, 2.5])" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "new_beliefs = np.array(beliefs) + 0.5\n", "new_beliefs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Again, we can use `expit` to compute the corresponding probabilities." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0.18242552, 0.37754067, 0.62245933, 0.81757448, 0.92414182])" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "new_probs = expit(new_beliefs)\n", "new_probs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Having seen the new evidence, all of the the scientists are more confident that the hypothesis is true (although some still believe it is likely to be false)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Agents\n", "\n", "I'll use the following class to represent the scientists.\n", "Each scientist starts with a baseline belief, which is a random value from a normal distribution with mean `0` and standard deviation `1`.\n", "\n", "In addition, each scientist has a dictionary of evidence where each item is\n", "\n", "* An integer that uniquely identifies a piece of evidence, which maps to\n", "\n", "* A floating-point number that quantifies the strength of the evidence as a log-odds ratio." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "class Agent:\n", " def __init__(self):\n", " self.baseline = np.random.normal(0, 1)\n", " self.evidence = dict()\n", " \n", " def belief(self):\n", " return self.baseline + sum(self.evidence.values())\n", " \n", " def update(self, evidence):\n", " self.evidence.update(evidence)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The `belief` method computes the agent's degree of belief in a hypothesis, which is the sum of their baseline belief and the total of all evidence they have seen.\n", "\n", "The `update` method updates an agent's belief by adding entries to their `evidence` dictionary.\n", "Because the keys in a dictionary are unique, a scientist who sees the same evidence twice will only add it to their dictionary once.\n", "\n", "To show how this works, I'll make 100 agents with random baseline beliefs:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "agents = [Agent() for i in range(100)]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can extract their total beliefs like this:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "beliefs = [agent.belief() for agent in agents]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Because the agents haven't seen any evidence yet, the distribution of belief is normal with mean `0` and standard deviation `1`." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAmxElEQVR4nO3deXxddZ3G8c83afaka9I1bRNoSxdoSxuKBZRFwQIKyK4MIqKAisvgMDA66jg64wKjowNYEQFRoKxChQKisihL27R0L4XQLWlamjZt2uzJvd/54962IaRNl5ycm9zn/XrllXt/59zkySXk6Tn33N/P3B0REZFEkxJ2ABERkY6ooEREJCGpoEREJCGpoEREJCGpoEREJCH1CTvAocrPz/eioqKwY4iISBdZtGjRNncvaD/e4wqqqKiI0tLSsGOIiEgXMbMNHY3rFJ+IiCQkFZSIiCQkFZSIiCQkFZSIiCQkFZSIiCQkFZSIiCSkwArKzO4xs61mtmI/283MfmlmZWa2zMymBZVFRER6niCPoO4DZh1g+9nA2PjHtcCvAswiIiI9TGBv1HX3V8ys6AC7nA/c77EFqd4ws/5mNszdNweVSUREYqJRp665ldqmVuqaWtnd2EpdU4TaphZqmyLUNrZQ1xyJj8f2q21qpbaxNfa4xtj9cycP43ufnBRIxjBnkhgBlLe5XxEf+0BBmdm1xI6yGDVqVLeEExFJNNGoU98S2VsO7y+XNiWyp0iaWtnd1EHBNLVS1xzpkkzba5u75Ot0JMyCsg7GOlze193vAu4CKCkp0RLAItIjuTu1Ta3UNLSws76FXQ0tsdt7PtfHPtc0NFPT0NKuiCLUNrV2aZ7s9FRyM/rEPjL7kJMe+7xnLCejD3mZfchJTyU3M43cjFRyM9LIyUiNjWf0oW9mWpdmaivMgqoARra5XwhUhpRFROSgNbZE4kWyr1R21sdKZVeHhbPvIxI9sn9jZ6WltiuRWGnkZsTGczL6kBcvl7bl874iyoiVUWpKR8cJiSPMgpoL3GBmc4ATgRq9/iQi3S0adXY2tFC1uyn2Udu493Z13fuPaPYUTlNr9LC/X1ZaKv2z0+iXlUbfrDT6Z8Vu7xnrl5VGv+x0+mWlkdfuaCYnPZU+qcnz7qDACsrMHgJOA/LNrAL4HpAG4O6zgXnAOUAZUA9cHVQWEUk+Dc2RvYWzdVcTVbVN+0po977722qbaIkc2lFNWqrtK5OsNPrHC+X9Y+//3Dc+ntEnNaCfuPcJ8iq+T3ey3YGvBPX9RaT3qm9u5d2tdZRV7aZyZ2OHxXMor9f0zexDQV5G/COTgtwM8vPSyc/J2FssbQsnKy0Vs8Q+PdYb9Lj1oEQkedTUt1BWtZuyrbW8814tZVWxz5t2NnT62PQ+KRTkZrQpnoz33R8c/5yfm0Fmmo5qEpEKSkRC5+4s2rCDVZt3va+MqnY3dbh/WqpRNCiHsUNyGTkg+30lNDh+FNQ3s4+Ocno4FZSIhO6xRRXc9NiyD4xnpqUwZnAuYwpyGTskj6MLchk7JJdRA7NJS6KLBZKVCkpEQhWNOr96+V0APj5pCCWjB8ZKaXAuI/pnkZLgl0JLcFRQIhKqR0rLWVtVx4j+Wdz+mWk6MpK99JsgIqF5rWwb//5kbMGDb3xsrMpJ3kdHUCLSrVojURasr+bZ5Vt4YnEFrVHnC6cUc0nJyM4fLElFBSUigWuJRHn93e08u2ILf165he11+yYYPW/KcL51zoQQ00miUkGJSKAenL+Rnzz3FjUNLXvHivNzOOe4oZx97DAmDe+ry8GlQyooEQnMrsYW/uNPK2lujTJ2cC5nHzeMc44byjFD8lRK0ikVlIgE5sk3N9HcGuXE4oE8fN3MsONID6OCEpEuV9fUyk+fe4vfvb4BgIumF4acSHoiFZSIdKmF66u58ZEllFc30CfF+PLpY7h4mgpKDp0KSkS6THl1PZ+7ZwF1zREmDOvLbZdMZtLwfmHHkh5KBSUiXSIadf7l0aXUNUc4a+IQ7rhCs0LIkdFvj4h0iWdXbGH+umryc9P50YXHqZzkiOk3SESOmLvz/MotAFz3kaMZlJsRciLpDXSKT0QOSn1zK+XVDZRX11O+o56KHXtuN1BRXc/u+Aq2Z0wYHHJS6S1UUCICQHNrlMqdDZTvqI8V0Y769xVQ2+mJOpKdnsrHJw3lqPycbkosvZ0KSiSJbalp5Jnlm/nT0kqWVewk6vvfNz01hREDsigckMXIgdmMHJDNyIFZjByQTeGALAbmpGt2COlSKiiRJFNd18y8eCktWF+Nx0spxWBE/1gBFbYpn5EDY7eH5GVq8UDpViookSTRGonyr48t46mllUTih0rpfVI4/ZgCPjllOGeMH0x2uv4kSOLQb6NIkvj1K2t54s1NpKYYp46LldJZk4bQNzMt7GgiHVJBiSSBsq21/OIv7wBw7+dO4CPjCkJOJNI5vQ9KJAn8+uV3aY5EubSkUOUkPYYKSqSXq2tq5ZnlmwH40mljQk4jcvBUUCK93Lzlm6lvjjB99ACK9R4l6UFUUCK93COl5QBcVjIy5CQih0YXSYj0Uu7OnS+9y8L1O8hJT+XcycPCjiRySFRQIr1QSyTKt/+4nEdKKzCDfztnAjkZ+t9dehb9xor0Mu7OTY8u5ckllWSmpfC/lx3PrGOHhh1L5JCpoER6mccWVfDkkkqy01N58IsfYurI/mFHEjksKiiRXmB3YwsvranihVXv8Vx8Xab/PP9YlZP0aCookR5qS00jL6x+jxdWvcfr726jJbJvKvIrThzFRdNGhJhO5MgFWlBmNgv4BZAK3O3uP263vR/wB2BUPMtt7n5vkJlEerqq3U189aHFvLG2eu9YisGMooGcOXEIZ04cQpHe7yS9QGAFZWapwB3AmUAFsNDM5rr7qja7fQVY5e6fNLMCYI2ZPeDuB14ZTSRJ1Ta1cvV9C1ixaReZaSl8eGwBZ04cwkfHD9Yy69LrBHkENQMoc/e1AGY2BzgfaFtQDuRZbJWzXKAaaA0wk0iPFY06X3lgMSs27WL0oGweu/4kCvJUStJ7BTmTxAigvM39ivhYW7cDE4BKYDnwdXePtv9CZnatmZWaWWlVVVVQeUUS2uKNO3j57Sr6Z6fxu6tnqJyk1wuyoDpaerP9gtIfB5YAw4GpwO1m1vcDD3K/y91L3L2koEAzMUty+utbWwG48PhCvcYkSSHIgqoA2k7+VUjsSKmtq4EnPKYMWAeMDzCTSI/1+rvbATjtGP0jTZJDkAW1EBhrZsVmlg5cDsxtt89G4KMAZjYEOAZYG2AmkR7J3Xnnvd0AHDeiX8hpRLpHYBdJuHurmd0APE/sMvN73H2lmV0f3z4b+AFwn5ktJ3ZK8GZ33xZUJpGeaN22On749CrqmiPk52YwICc97Egi3SLQ90G5+zxgXrux2W1uVwJnBZlBpKeqbWrl//72Dvf8Yx0tESc3ow/fP29S2LFEuo1mkhBJQLsaW7h09uu8tSV2Wu/SkkJu+vh4XbknSUUFJZJgmlujXHf/It7aspuj8nP4+WVTmaI59SQJqaBEEsxtf17D62u3U5CXwe8+P4ORA7PDjiQSCi35LpJgXl4TezP6zy+dqnKSpKaCEkkgkaizblsdAMeP6h9uGJGQqaBEEsjO+maaI1H6Z6dpiXZJeiookQSyuzE2V3JWWmrISUTCp4ISSRArK2u46t4FAIzSa08iuopPJBE8tWQTNz22jObWKBOH9eWnF08OO5JI6FRQIiGLRJ1vPbGc5tYon54xku99chKZOsUnooISCduWXY1759n70YU6chLZQ69BiYTsxfg6T0WD9LqTSFsqKJEQbdxez4/mrQbgypmjQ04jklh0ik+km0Wjzvx11Ty6qJxnl2+hoSXCuccN47wpw8OOJpJQVFAi3aS8up7HF1fw+OIKyqsb9o6fMiafH15wLGYWYjqRxKOCEukGL6x6j2t/X4p77P7wfplcNL2Qi6YVUpSfE244kQSlghLpBn97ayvucPKYQVx/6tGcdHQ+qSk6YhI5EBWUSDdYVVkDwFdOG8NJY/JDTiPSM+gqPpGAzVu+maUVNWSnpzJpRL+w44j0GCookQBtr23iO0+uAODfzh5Pv6y0kBOJ9BwqKJEAffeplWyva2bmUYO44kS9z0nkUKigRAIyd2klzyzfTE56Kj+9eDIpuihC5JCooEQC8GrZNm56dCkA3zp3gpZuFzkMKiiRLrZgXTVf+F0pTa1RPj1jFJ+ZMSrsSCI9kgpKpAttr23i+j8soqElwiXTC/kvzRAhcthUUCJd6LtzV1Jd18zJYwbx44v0upPIkVBBiXSRBeuqeWbZZrLTU/nxhZM1U4TIEVJBiXSRZ1dsBuDKD43WRREiXUBTHYkcoYbmCA8u2MjjiyoAOGvSkJATifQOKiiRw1TX1MoD8zdw1ytr2VbbDMCHx+YzdeSAkJOJ9A4qKJHDsLKyhqvuWbC3mCYX9uOrZ4zlYxMG66o9kS6ighI5RLVNrdzw4Jtsq21mSmE//vnMcZw6rkDFJNLFVFAih+j7c1eyblsd44fm8fB1M8lMSw07kkivpKv4RA5B2dZaHl1UQXqfFG7/zPEqJ5EABVpQZjbLzNaYWZmZ3bKffU4zsyVmttLMXg4yj8iRcHfufKkMgIumFTJmcF7IiUR6t8BO8ZlZKnAHcCZQASw0s7nuvqrNPv2BO4FZ7r7RzAYHlUfkSGyrbeLmx5bx17e2kmJwzSnFYUcS6fWCfA1qBlDm7msBzGwOcD6wqs0+nwGecPeNAO6+NcA8IofllberuPGRJWyrbaZvZh9+fNFkxgzODTuWSK8XZEGNAMrb3K8ATmy3zzggzcxeAvKAX7j7/QFmEjkkjS0RvvzAYmqbWpl51CD+59IpDO+fFXYskaQQZEF1dM2td/D9pwMfBbKA183sDXd/+31fyOxa4FqAUaO0dIF0n/nrqqltamX80Dwe+MKJmvxVpBsFeZFEBTCyzf1CoLKDfZ5z9zp33wa8Akxp/4Xc/S53L3H3koKCgsACi7T319XvAXD6+MEqJ5FuFmRBLQTGmlmxmaUDlwNz2+3zFPBhM+tjZtnETgGuDjCTyEFrbInw5JubADj3uGEhpxFJPoGd4nP3VjO7AXgeSAXucfeVZnZ9fPtsd19tZs8By4AocLe7rwgqk8ihuPfV9exqbGVKYT+OHdEv7DgiSSfQmSTcfR4wr93Y7Hb3bwVuDTKHyKF6bsVmfvr8WwB8+fQxIacRSU6aSUKknfLqer4+ZwnucNPHj+Hjk4aGHUkkKamgRNpZUr6TptYoM48axJdPOzrsOCJJSwUl0kZjS4Ql5TsBGNw3QzOUi4RIs5mLAFt3NfL7NzbwwPyNVNfF1ngaOUDLtouESQUlSa01EuU7T63ksUXltERi7yM/bkQ/rjmlmE9M1qXlImFSQUlSe2b5Zh5asJEUg1mThnLNh4spGT1Ap/ZEEoAKSpLawvXVANx45jhuOGNsyGlEpC1dJCFJy935+zvbADjxqEEhpxGR9g5YUGZ2X5vbVwWeRqQbLVhXzYbt9Qztm8m0UQPCjiMi7XR2BNV24tavBxlEpLs9s3wzABdNH0GqJoIVSTidFVT75TFEeo1ttU0ATBjWN+QkItKRzi6SKDSzXxJb22nP7b3c/WuBJRMJkLuzaUcDANnpqSGnEZGOdFZQN7W5XRpkEJHu9Nt/rGNpRQ39stKYOlKvP4kkogMWlLv/rruCiHSXsq27+clzsZnKf3rxZAbmpIecSEQ60ull5mZ2lZktNrO6+EepmX22O8KJBOHxxZtoiTgXTSvUTOUiCeyAR1DxIvoGcCOwmNhrUdOAW80Md78/8IQiXcjdeTZ+9d7F0wtDTiMiB9LZEdSXgU+5+4vuXuPuO939b8BF8W0iPco/yraxfns9g/MymFE8MOw4InIAnRVUX3df334wPqZrc6VHiUadX730LgBXnVSk9z6JJLjOCqrhMLeJJJSm1ghfm/Mmr727ndyMPlxx4qiwI4lIJzq7zHyCmS3rYNyAowLII9Llaptaue73pbxaFiunX185nf7ZunJPJNF1VlBTgCFAebvx0UBlIIlEulBjS4Qv/q6U19duJz83g/uuPoFjR/QLO5aIHITOTvH9HNjl7hvafgD18W0iCaslEuWGB9/k9bXbKcjL4LHrZ6qcRHqQzgqqyN0/cIrP3UuBokASiXQBd+eWx5fzl9Xv0T87jT9ccyJF+TlhxxKRQ9DZKb7MA2zL6sogIl0lGnVu+/MaHl9cQVZaKvd+7gSOGZoXdiwROUSdFdRCM/uiu/+m7aCZXQMsCi6WyMFrbImwrKKGheurWbRhB4s27KCmoYXUFOPOK6ZxvNZ6EumROiuobwB/NLMr2FdIJUA68KkAc4ns1/baJhZt2EHphh2Urq9m+aYaWiLvXxlmeL9MbjlnAqePHxxSShE5Up1NFvsecJKZnQ4cGx9+Jj6bhEi3+/0bG/juUyvwNn1kBuOH5nFC0UBKigZQUjSQEf11Blqkp+vsCAoAd38ReDHgLCIHVN/cym3Pr8EdTiweyIzigUwfPYBpowfQNzMt7Hgi0sUOqqBEEsFTSyqpaWhh6sj+PHzdzLDjiEjAOl1uQyRRLFxXDcBFmoVcJCmooKTHeG93IwCjBmaHnEREuoMKSnqE5tYoKyt3ASookWShgpIe4S+r32NnfQvjh+ZRrBkhRJKCLpKQhBaNOve8uo6fPr8G0Cq4IslEBSUJa3NNA9+Ys4T58YsjLpleyJUzR4ecSkS6S6Cn+MxslpmtMbMyM7vlAPudYGYRM7s4yDzSs/zg6VXMX1dNfm46v/lsCbdeMoWMPqlhxxKRbhLYEZSZpQJ3AGcCFcTm9Zvr7qs62O8nwPNBZZGeaWN1PQCz/2k6JUUDQ04jIt0tyCOoGUCZu69192ZgDnB+B/t9FXgc2BpgFumBdta3ANAvS7NEiCSjIAtqBO9fibciPraXmY0gNuns7AN9ITO71sxKzay0qqqqy4NK4llZWUPFjgb6Z6cxapAuKxdJRkEWlHUw5u3u/y9ws7tHDvSF3P0udy9x95KCgoKuyicJ7InFmwA4f8pwve4kkqSCvIqvAhjZ5n4hUNlunxJgjpkB5APnmFmruz8ZYC7pAdZs2Q3AacdouQyRZBVkQS0ExppZMbAJuBz4TNsd3L14z20zuw94WuUkAFvj0xoN6XugRZ1FpDcLrKDcvdXMbiB2dV4qcI+7rzSz6+PbD/i6kySvqt1NlG2tJS3VGDlQ6zqJJKtA36jr7vOAee3GOiwmd/9ckFmk53h6WSVRhzPGFZCndZ5Ekpbm4pOEUtPQwp0vvQvABceP6GRvEenNVFCSUH7y3FtU7W5i+ugBnHPssLDjiEiIVFCSMO7++1oenL+RPinGjy48jpSUjt6pICLJQgUlCeGhBRv54TOrAfjvC49j3JC8kBOJSNhUUBK6nfXNfPepFQB8/7xJXFoyspNHiEgyUEFJ6Bau30FLxJlRNJCrTioKO46IJAgVlIRu7tLYBCMzijVjuYjso4KSUD2xuII/La0kMy2FT03TZeUiso8KSkKzdXcj//7kvteeji7IDTmRiCQSFZSE5tHSCuqbI5x2TIEujBCRD1BBSSiiUefR0thyYZ+dOZr4jPYiInupoCQUL67Zyvrt9Qzrl8lHxmqNLxH5IBWUhOLuv68D4OqTi+iTql9DEfkg/WWQUMxftx2Ay04YFXISEUlUKijpdpGoE3Uwg35ZWk5DRDqmgpJut2BdNQB5GYEuRyYiPZwKSrpVU2uE782NvffpmlOOCjmNiCQyFZR0m1WVuzj/9ld5+71aRg/K5rpTVVAisn86xyKBa2yJ8JtX1vLLv71DS8QZPSibOz4zjcy01LCjiUgCU0FJYFZv3sXDC8v545ubqGloAeCqmaO5+ezxZKfrV09EDkx/JaRL7W5s4U9LN/Pwwo0srajZOz5peF++dc4ETh6TH2I6EelJVFDSZZpbo8z637+zaWcDAHmZfbhg6gguO2Ekx47oF3I6EelpVFDSZd5+bzebdjYwMCed73xiArMmDSMrXa8zicjhUUFJl1m9eRcAM48axKeOLww5jYj0dLrMXLrMG2tjb8CdXKjTeSJy5FRQ0iWaWiO8/HYVAKcdMzjkNCLSG6ig5IhFo86NjyxlW20Txfk5jBuilXFF5MjpNSg5IlW7m7jt+TU8s2wzuRl9uOMz07T4oIh0CRWUHJblFTXc+9o6nl66meZIlLRU49dXTmfi8L5hRxORXkIFJYfkxbe2cvuLZSzasAOILZlx5sQhfOm0o5k2akDI6USkN1FByUH7zStr+a95q4HYm3AvKxnJZ2cWMWpQdsjJRKQ3UkFJp9ydHz/3Fr9+eS0A3zxzHJ8/pZgcreckIgHSXxjp1B/f3MSvX15LnxTjtkumcMHxI8KOJCJJQJeZywFFo84dL5YB8IMLjlU5iUi3CbSgzGyWma0xszIzu6WD7VeY2bL4x2tmNiXIPHLo5iws592qOkb0z+Li6Zq+SES6T2AFZWapwB3A2cBE4NNmNrHdbuuAU919MvAD4K6g8sihK11fvXd59m+eNY60VB1wi0j3CfIvzgygzN3XunszMAc4v+0O7v6au++I330D0D/RE0RjS4Tr/7CYlojzuZOKuHCa/tOISPcKsqBGAOVt7lfEx/bnGuDZjjaY2bVmVmpmpVVVVV0YUfZnbVUd22qbKByQxbfPnRB2HBFJQkEWVEfz3XiHO5qdTqygbu5ou7vf5e4l7l5SUFDQhRFlf+qaWwEY0jdTp/ZEJBRBXmZeAYxsc78QqGy/k5lNBu4Gznb37QHmkUNQsaMegEE56SEnEZFkFeQ/jRcCY82s2MzSgcuBuW13MLNRwBPAle7+doBZ5BDsqGtm3vItAEwd1T/cMCKStAI7gnL3VjO7AXgeSAXucfeVZnZ9fPts4LvAIODO+AzYre5eElQm2b9I1Hm1bBsPl5bzwsr3aI5EATixeFDIyUQkWQU6k4S7zwPmtRub3eb2F4AvBJlBDqwlEmX2S+8yZ2E5m3Y2ALEJYE8dV8AVJ45imo6gRCQkmuooyf3yr+/wf3+LzRQxcmAWl04fyUXTCxnePyvkZCKS7FRQSWz9trq9E8DeecU0Zk0aSkqKFhsUkcSggkpSZVtr+eL9pTRHolw0rZBzjhsWdiQRkfdRQSWhl9+u4oYHF7O7sZUJw/rqjbgikpBUUEnm0dJybn58GVGHWZOG8rPLppCdrl8DEUk8+suURO75xzr+8+lVAHzl9KP55pnH6DUnEUlYKqgkEIk6tz6/htkvvwvAdz4xkWtOKQ45lYjIgamgerndjS18Y84S/vrWVlJTjB996jguPWFk5w8UEQmZCqqXqthRzzPLNvPQgo2s315Pv6w07rxiGiePyQ87mojIQVFB9SKVOxuYt3wzTy/bzJLynXvHxw7O5e6rShg9KCe8cCIih0gF1Qss3riD/3pmNYs27Ng7lpWWykcnDOYTk4dz+vgCMvqkhphQROTQqaB6uBWbarjqtwvY3dRKZloKZ4yPl9Ixg8lKVymJSM+lgurBVmyq4bP3xMrp3MnD+OlFk8nJ0H9SEekd9NesB9pe28TPXnibhxZsJOqxmcd/fulU0vto5VsR6T1UUD1IbVMrD83fyC//9g67G1tJTTE+N3M0N88ar3ISkV5HBZXg3J1FG3bw8MJynlm+mfrmCAAfGVfAd86dwNgheSEnFBEJhgoqQW2vbeLRRRU8UlrO2qq6veMnFA3gy6eN4fTxg0NMJyISPBVUAmpsiXDBna9SXh1b4XZwXgYXTS/kkumFHFWQG3I6EZHuoYJKQM+v3EJ5dQOjB2XznXMnctoxBfRJ1WtMIpJcVFAJpnJnA3e+GJvU9QunFPOxiUNCTiQiEg4VVAJ5cc1Wbnx4CTvqWxjRP4vzpo4IO5KISGhUUCGIRp1NOxso21rLu1Wxj7KttSxcH5uq6NRxBfz8sqn0y0oLOamISHhUUAFqbImwtqpubwHFyqiOtVW1NLVGP7B/aopx45nj+NKpR2shQRFJeiqoIxSNOlt2NbJuWx1rt9WxrqqOtdtiZVSxowH3jh83OC+DMYNzObogl6MLchgzOI/xw/LIz83o3h9ARCRBqaAO0s765r0FtG5b3d5CWr+tjoaWSIePSU0xRudnM6Ygl6PjZTRmcC5HFeTQN1On70REDkQF1YHaplaeWVbJwvU79pZRdV3zfvfPz02nOD+Ho/JzKS7IoWhQDmMG5zJqYLamIBIROUwqqDh3583ynTy8oJw/LavcO6XQHtnpqRTn58SLKIejCnIpzs+hKD9HFzOIiAQg6QsqEnX+8MYGHpy/kTXv7d47PqN4IJ+YPIyxg/M4qiCHwXkZmOnCBRGR7pL0BfWzF9ZwR/yNsYNy0rl4eiGXnjCSozWlkIhIqJK6oNZW1XLXK2sBuO2SKZw3ZbheMxIRSRBJW1A765v52pw3aYk4l5YUcvH0wrAjiYhIG0lZUDvqmvmn385nZeUuRg/K5pazJ4QdSURE2km681nuznW/X8TKyl0UDcpmzrUfYmBOetixRESknaQ7girdsIMF66sZkJ3GnGtnMrRfZtiRRESkA4EeQZnZLDNbY2ZlZnZLB9vNzH4Z377MzKYFmQfgvtfWA3DFiaNVTiIiCSywgjKzVOAO4GxgIvBpM5vYbrezgbHxj2uBXwWVB2KTty6r2ElqinHFh0YF+a1EROQIBXmKbwZQ5u5rAcxsDnA+sKrNPucD97u7A2+YWX8zG+bum4MIlJmWyovfPI2lFTUM65cVxLcQEZEuEuQpvhFAeZv7FfGxQ90HM7vWzErNrLSqquqIQvVJTWH66AFH9DVERCR4QRZUR/MCtV984mD2wd3vcvcSdy8pKCjoknAiIpLYgiyoCmBkm/uFQOVh7CMiIkkoyIJaCIw1s2IzSwcuB+a222cu8Nn41XwfAmqCev1JRER6lsAuknD3VjO7AXgeSAXucfeVZnZ9fPtsYB5wDlAG1ANXB5VHRER6lkDfqOvu84iVUNux2W1uO/CVIDOIiEjPlHRTHYmISM+gghIRkYSkghIRkYRksZeBeg4zqwI2HOTu+cC2AOP0JHouYvQ87KPnYh89F/uE8VyMdvcPvMm1xxXUoTCzUncvCTtHItBzEaPnYR89F/voudgnkZ4LneITEZGEpIISEZGE1NsL6q6wAyQQPRcxeh720XOxj56LfRLmuejVr0GJiEjP1duPoEREpIdSQYmISELq9QVlZrea2VtmtszM/mhm/cPOFAYzu8TMVppZ1MwS4hLS7mZms8xsjZmVmdktYecJi5ndY2ZbzWxF2FnCZGYjzexFM1sd/3/j62FnCouZZZrZAjNbGn8uvh92JkiCggJeAI5198nA28C/hZwnLCuAC4FXwg4SBjNLBe4AzgYmAp82s4nhpgrNfcCssEMkgFbgm+4+AfgQ8JUk/p1oAs5w9ynAVGBWfAmkUPX6gnL3P7t7a/zuG8QWRUw67r7a3deEnSNEM4Ayd1/r7s3AHOD8kDOFwt1fAarDzhE2d9/s7ovjt3cDq4ER4aYKh8fUxu+mxT9Cv4Ku1xdUO58Hng07hIRiBFDe5n4FSfrHSD7IzIqA44H5IUcJjZmlmtkSYCvwgruH/lwEuh5UdzGzvwBDO9j0bXd/Kr7Pt4kd0j/Qndm608E8D0nMOhgL/V+IEj4zywUeB77h7rvCzhMWd48AU+Ov0//RzI5191Bfp+wVBeXuHzvQdjO7CvgE8FHvxW/86ux5SHIVwMg29wuBypCySIIwszRi5fSAuz8Rdp5E4O47zewlYq9ThlpQvf4Un5nNAm4GznP3+rDzSGgWAmPNrNjM0oHLgbkhZ5IQmZkBvwVWu/vPws4TJjMr2HOFs5llAR8D3go1FElQUMDtQB7wgpktMbPZnT2gNzKzT5lZBTATeMbMng87U3eKXyhzA/A8sRfDH3H3leGmCoeZPQS8DhxjZhVmdk3YmUJyMnAlcEb8b8MSMzsn7FAhGQa8aGbLiP1j7gV3fzrkTJrqSEREElMyHEGJiEgPpIISEZGEpIISEZGEpIISEZGEpIISEZGEpIKSpGVmkfilxUvNbLGZnXQQj6mNfx5uZo8dxP63xmeHvrWDbReY2Xfjt//DzP7lcH6Ow7XnZ+lg/D4zu/gAj7vBzK4OLplITK+YSULkMDW4+1QAM/s48CPg1IN5oLtXAvv9I97GdUCBuzd1sO1fgfMOLmpCuQd4Fbg37CDSu+kISiSmL7Bjzx0zu8nMFsbXEfvA2jhmVrRnPaX4JJu3ttn/uvj4XCAHmG9ml7V7/Digyd23dfC1p5rZG23WMBsQHz8hPvZ6/Pt1OA2NmY02s7/G9/2rmY2KjxfHH7vQzH7QZn8zs9vNbJWZPQMMbrPtx/HxZWZ2G0B8Rpb1ZjbjYJ9ckcOhgpJklhU/xfcWcDfwAwAzOwsYS2yJjqnAdDP7yAG+zjVAjbufAJwAfNHMit39POJHae7+cLvHnAws3s/Xux+4Ob6G2XLge/Hxe4Hr3X0mEDlAntuB++OPfwD4ZXz8F8Cv4jm3tNn/U8AxwHHAF4GTAMxsYHzbpPjX+mGbx5QCHz5ABpEjpoKSZLanPMYTmxjz/vj8bGfFP94kViLjiRXW/pwFfDa+VMF8YFAn+0Nsapmq9oNm1g/o7+4vx4d+B3wkPk9anru/Fh9/8ABfe2ab7b8HTonfPhl4qM34Hh8BHnL3SPzU5d/i47uARuBuM7sQaDuX5VZg+AF/QpEjpNegRAB3f93M8oECYktz/Mjdf32QDzfgq+5+KPMbNgD9DmH/jpYLiW0wu5fYWkaV7t7RXHK+n9v72yc24N4aP433UWKT694AnBHfnEnsZxAJjI6gRAAzGw+kAtuJTSj7+fg6QZjZCDMbfICHPw98Kb50A2Y2zsxyOvmWq4Ex7QfdvQbYYWZ7Tp9dCbzs7juA3W2W4b68zWOujh8J7imn19psvwL4R/z2q+3G93gFuDz+Wtow4PT4z5EL9HP3ecA3iJ3u3GMcIS/FIL2fjqAkmWXFT8tB7AjlqviibX82swnA67EzftQC/0TstFZH7gaKgMXxU4RVwAWdfO9XgP8xM+tgjbKrgNlmlg2sBfZc0n0N8BszqwNeAmr287W/BtxjZjfFs+x5/NeBB83s68TWQNrjj8SOjJYDbwN7Ti/mAU+ZWSax5+ef2zzmZOADF4+IdCXNZi4SEjP7BfAnd//LQe6f6+573od1CzDM3b8eZMb95DgeuNHdr+zu7y3JRaf4RMLz30D2Iex/bvyqwxXErqD7YWcPCEg+8J2QvrckER1BiYhIQtIRlIiIJCQVlIiIJCQVlIiIJCQVlIiIJCQVlIiIJKT/B2fVm2mAzbH0AAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from empiricaldist import Cdf\n", "\n", "cdf = Cdf.from_seq(beliefs)\n", "cdf.plot()\n", "decorate(xlabel='Belief (log-odds)',\n", " ylabel='CDF')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can convert the beliefs to probabilities like this:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "probs = expit(beliefs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And here's what the distribution looks like." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "cdf = Cdf.from_seq(probs)\n", "cdf.plot()\n", "decorate(xlabel='Belief (probability)',\n", " ylabel='CDF')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The mean of this distribution is initially near 50%." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.5038731825472533" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "probs.mean()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Experiment 1\n", "\n", "Now let's see what happens if the scientists run experiments and gather evidence.\n", "\n", "The following function simulates a world where the hypothesis is true and every experiment yields evidence in favor of the hypothesis, with a log-odds ratio of `0.1` (which is one decibel).\n", "\n", "During each time step, one randomly-chosen agent does an experiment and uses the result to update their belief. " ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "def run_simulation1(agents):\n", " for key in range(100):\n", " value = 0.1\n", " agent = np.random.choice(agents)\n", " agent.update({key: value})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I'll use the following function to plot the distribution of probabilities before and after the simulation." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "def plot_prob_dist(agents):\n", " beliefs = [agent.belief() for agent in agents]\n", " probs = expit(beliefs)\n", " Cdf.from_seq(probs).plot()\n", " decorate(xlabel='Belief (probability)',\n", " ylabel='CDF')\n", " return np.mean(beliefs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's what the results look like:" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(-0.10235374073439502, -0.0023537407343950305)" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "num_steps = 100\n", "agents = [Agent() for i in range(num_steps)]\n", "\n", "mean_before = plot_prob_dist(agents)\n", "run_simulation1(agents)\n", "mean_after = plot_prob_dist(agents)\n", "\n", "mean_before, mean_after" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As you might expect, the experimental results shift the distributions to the right and increase the \"center of mass\", represented by the mean belief in log-odds.\n", "\n", "In this simulation, the scientists don't share information, so beliefs don't change very fast." ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.001" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "velocity = (mean_after - mean_before) / num_steps\n", "velocity" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The average change in belief is only 0.001 bels per time step." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Experiment 2\n", "\n", "The previous experiment simulates a world where scientists work in isolation and do not share the evidence they discover with anyone.\n", "At the opposite extreme, suppose everyone broadcasts the results of their experiments and everyone else updates their beliefs accordingly.\n", "\n", "The following function simulates this behavior." ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "def run_simulation2(agents):\n", " for key in range(100):\n", " value = 0.1\n", " for agent in agents:\n", " agent.update({key: value})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's what the results look like." ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.059053906573010656, 10.059053906572991)" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "num_steps = 100\n", "agents = [Agent() for i in range(num_steps)]\n", "\n", "mean_before = plot_prob_dist(agents)\n", "run_simulation2(agents)\n", "mean_after = plot_prob_dist(agents)\n", "\n", "mean_before, mean_after" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this utopia of scientific discourse, even the most skeptical scientist is quickly convinced that the hypothesis is likely to be true." ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.09999999999999981" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "velocity = (mean_after - mean_before) / num_steps\n", "velocity" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And the average velocity is 0.1 bels per timestep, which is the rate at which new evidence enters the system." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Experiment 3\n", "\n", "Of course, there are many ways the real world does not live up to this ideal.\n", "\n", "* For example, not every experiment is perfect; due to error and randomness, we expect variation in the strength of evidence and some possibility of finding evidence against the hypothesis, even if it is true.\n", "\n", "* The ways we have for sharing evidence are not perfect; not every scientist reads every paper.\n", "\n", "* And scientists themselves are not perfect; they are subject to the same biases and systematic errors as any other human.\n", "\n", "To get us started, I will explore the effect of the first phenomenon, imperfect experiments, and you will have a chance to explore one or more of the others.\n", "\n", "The following function simulates a world where the evidence we get from an experiment follows a normal distribution with mean 0.1 and standard deviation 0.1 (which means that it is sometimes negative).\n", "\n", "As in the previous simulation, all results are broadcast to all scientists." ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "def run_simulation3(agents, stddev=0.1):\n", " for key in range(100):\n", " value = np.random.normal(0.1, stddev)\n", " for agent in agents:\n", " agent.update({key: value})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's what the results look like." ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.00675761354618579, 10.727807387174472)" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "num_steps = 100\n", "agents = [Agent() for i in range(num_steps)]\n", "\n", "mean_before = plot_prob_dist(agents)\n", "run_simulation3(agents)\n", "mean_after = plot_prob_dist(agents)\n", "\n", "mean_before, mean_after" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this version of the model, average velocity varies from one run to the next, but it is usually close to 0.1 bels per timestep." ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.10721049773628286" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "velocity = (mean_after - mean_before) / num_steps\n", "velocity" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's see how it depends on the variability of evidence." ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0. , 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1. ])" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "stddev_array = np.linspace(0, 1, 11)\n", "stddev_array" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "def mean_belief(agents):\n", " return np.mean([agent.belief() for agent in agents])" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "num_steps = 100\n", "velocities = []\n", "\n", "for stddev in stddev_array:\n", " mean_before = mean_belief(agents)\n", " agents = [Agent() for i in range(num_steps)]\n", " run_simulation3(agents, stddev)\n", " mean_after = mean_belief(agents)\n", " velocity = (mean_after - mean_before) / num_steps\n", " velocities.append(velocity)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAA5/ElEQVR4nO3dd3wc5bX/8c9XknvFtix3bMAVm2IEAUINmACBa3pICC0k/EhCEpKbwk0v9+aSnpuEEicxJYHQiyGmmhpasCnuDWNsY2PLvTfp/P54ZuW1vJJW0u7O7uq8X699bZvZObuW9+w8c+Y8MjOcc865fFMSdwDOOedcKp6gnHPO5SVPUM455/KSJyjnnHN5yROUc865vFQWdwC51KtXLxs8eHDcYTjnnEsybdq01WZWXvfxVpWgBg8ezNSpU+MOwznnXBJJ76d6PNYhPkmnS5onaaGk61M8f4mk6dHlFUmHJj23WNIMSW9L8qzjnHNFJrY9KEmlwI3AOGAZ8IakSWY2O2mx94ATzWydpDOACcBHkp4/2cxW5yxo55xzORPnHtRRwEIzW2RmO4G7gfHJC5jZK2a2Lrr7GjAgxzE655yLSZwJqj+wNOn+suix+lwFPJ5034CnJE2TdHUW4nPOORejOIsklOKxlI0BJZ1MSFDHJT38UTNbLqk38LSkuWb2Yop1rwauBhg0aFDLo3bOOZcTce5BLQMGJt0fACyvu5CkQ4C/AOPNbE3icTNbHl2vAh4iDBnuw8wmmFmlmVWWl+9Txeiccy5PxZmg3gCGShoiqS1wMTApeQFJg4AHgUvNbH7S450kdUncBk4DZuYscuecc1kX2xCfme2WdC3wJFAKTDSzWZKuiZ6/BfgB0BO4SRLAbjOrBCqAh6LHyoC7zOyJGN6Gc861XtW7oTR7aUStaT6oyspK8xN1nXMuQx65FhY9D2f+Eoaf0eyXkTQt2vnYi/fic8451zwfzoANS6F9t6y8vCco55xzTVe9C1ZFfRUqRmdlE56gnHPONd3q+VC9E/YbAu27ZmUTnqCcc8413Yrp4brPmKxtwhOUc865pvtwRrjue0jWNuEJyjnnXNN9mNiD8gTlnHMuX5glJSgf4nPOOZcvNiyF7RugYy/o0jdrm/EE5ZxzrmkSx5/6jAGl6vudGZ6gnHPONU0OKvjAE5Rzzrmmqq3gOzSrm/EE5ZxzrmlyUCABnqCcc841xda1oUiirAP0PCirm/IE5ZxzLn0ro6n3Kg6GktKsbsoTlHPOufTlqEACPEE555xrihy0OErwBOWccy59tedAeYJyzjmXL3Zth6q5oBLoPSrrm4s1QUk6XdI8SQslXZ/i+UskTY8ur0g6NN11nXPOZVjVHLBq6DkU2nbM+uZiS1CSSoEbgTOAUcCnJNVNye8BJ5rZIcBPgQlNWNc551wm5bBAAuLdgzoKWGhmi8xsJ3A3MD55ATN7xczWRXdfAwaku65zzrkMy2GBBMSboPoDS5PuL4seq89VwONNXVfS1ZKmSppaVVXVgnCdc66VS24SmwNxJqhULXAt5YLSyYQE9e2mrmtmE8ys0swqy8vLmxWoc861ejU1e07SzUEFH0BZTraS2jJgYNL9AcDyugtJOgT4C3CGma1pyrrOOecyZN17sHMzdOkHnXrlZJNx7kG9AQyVNERSW+BiYFLyApIGAQ8Cl5rZ/Kas65xzLoNy1CA2WWx7UGa2W9K1wJNAKTDRzGZJuiZ6/hbgB0BP4CaFSbF2R8N1KdeN5Y0451xrkOMKPoh3iA8zmwxMrvPYLUm3Pwd8Lt11nXPOZUmOK/jAO0k455xLRwxDfJ6gnHPONWzTSti8Etp1he6Dc7ZZT1DOOecatjIa3qsYDSW5SxueoJxzzjUshgIJ8ATlnHOuMTEUSIAnKOecc43JcYujBE9Qzjnn6rdjM6xZCCVlUD4ip5v2BOWcc65+q2YDBuUjoaxdTjftCco551z9VrwTrnM8vAeeoJwrPBuXw5zH4o7CtRYxFUiAJyjnCs/9V8E9l8Dif8UdiWsNYiqQAE9QzhWWdYthySvh9rI3Yg3FtQLVu6NjUISTdHPME5RzhWTmA3tuJ37ZOpctaxbA7u3QfX/o0D3nm/cE5VwhmXH/ntsfzowvDtc6xDi8B56gnCscK2eF4Zb23UGl4dftrm1xR+WKWW0FX+4LJMATlHOFY8Z94frgc6HXULCaPccHnMuGGCv4wBOUc4XBDGZEx5/GXLjngLUP87lsMYtlDqhksSYoSadLmidpoaTrUzw/QtKrknZI+kad5xZLmiHpbUlTcxe1czFY+m/YsAS69odBx+z5wljpCcplycYPYNs66NAj/N3FILYp3yWVAjcC44BlwBuSJplZ8pjFWuArwDn1vMzJZrY6q4E6lw8Sw3ujzw/z8fTxPSiXZckFElIsIcS5B3UUsNDMFpnZTuBuYHzyAma2yszeAHbFEaBzeaF6F8x6KNwec2G4rkjagzKLJy5X3GKaAypZnAmqP7A06f6y6LF0GfCUpGmSrq5vIUlXS5oqaWpVVVUzQ3UuRotegK2rodfwPV8WXSqgUzns2Ajr3483PlecEsef+h4aWwhxJqhU+4xN+Sn4UTMbC5wBfEnSCakWMrMJZlZpZpXl5eXNidO5eCWG98ZcuPdQSyJZ+TCfy4aYz4GCeBPUMmBg0v0BwPJ0Vzaz5dH1KuAhwpChc8Vl51aYGzWGHXP+3s8lKvm8UMJl2rb1Yc+8rD30HBpbGHEmqDeAoZKGSGoLXAxMSmdFSZ0kdUncBk4D/H+pKz7zn4Cdm6F/JfQ4YO/navegvOWRy7DEj57eo6A0tlq6+Kr4zGy3pGuBJ4FSYKKZzZJ0TfT8LZL6AFOBrkCNpOuAUUAv4CGF4Y4y4C4zeyKGt+FcdiVaG425YN/nPEG5bMmDAgmIMUEBmNlkYHKdx25Juv0hYeivro1AfEfunMuFbetgwVOgktA9oq6eQ6G0XRiK2b4B2nfLfYyuOMXcQSLBO0k4l69mT4KaXTDkBOjSZ9/nS8ug94hwe+Ws3MbmilttgYQnKOdcKjMTw3sX1r9MhVfyuQzbvQOq5gAKx6Bi1GiCktRR0vcl/Tm6P1TSWdkPzblWbOMKeO+lMIQ38uz6l6tteeTHoVyGVM2Fmt3Q8yBo1znWUNLZg7oV2AEcE91fBvx31iJyzsGsBwGDYac1fGzJWx65TMuD858S0klQB5rZL4jaDZnZNlKfZOucy5Tkk3MbUnFwuF41O0zP7VxL5UkFH6SXoHZK6kDU5UHSgYQ9KudcNqxeCMvfgnZdYehpDS/bYT/oNihMy7323dzE54pbnlTwQXoJ6ofAE8BASXcCU4BvZTUq51qzRHHEyLOhTYfGl68d5vPjUK6FamrypoIP0khQZvY0cB5wBfAPoNLMns9uWM61UmZ7T62RjgpPUC5D1i+GnZugcx/o3DvuaBo/UVfS2Ojmiuh6kKRuwPtm5oPezmXSirdhzcLQqXzIiemt08d78rkMyaMCCUivk8RNwFhgOqE4YnR0u6eka8zsqSzG51zrkmhtdPB56fdA867mLlPyqEAC0jsGtRg4PJqy4gjgcEJj1lOBX2QxNudal5pqmPlAuN1Y9V6y7oOhbWfY/CFs9jnPXAvkUYEEpJegRphZbR+VaEr2w81sUfbCcq4Vev8V2LQCuu8PAyrTX6+kZE+5uZ+w61oijwokIL0ENU/SzZJOjC43AfMltcOnYncuc+qbmDAdFX7CrmuhLath0/KwN77fkLijAdJLUFcAC4HrgK8Bi6LHdgEnZyku51qX3Ttg9iPhdlOG9xJqWx55gnLNlJjivWJ02CvPA40ehY06R/w6utS1OeMROdcaLZwC29eH5q+JDuVN4YUSrqXyrEACGkhQkmYQdY9IxczyY5DSuWJQO7yXYmLCdPQeCQhWzwt7Y2XtMhaaayXyrMQcGt6DSnQs/1J0/bfo+hJga9Yicq612bEJ5j0ebqd7cm5dbTuF7tNrFoRu1H19Pk/XRHlWwQcNHIMys/fN7H3go2b2LTObEV2uBz6euxCdK3JzJ8PubTDoGOg+sPmv453NXXPt3Bp+3KgUykfGHU2tdI6EdZJ0XOKOpGOBTpnYuKTTJc2TtFDS9SmeHyHpVUk7JH2jKes6VzBaOryX4C2PXHOtmg1WA+UjoE37uKOplc6p6lcBE6P2RgZsAD7b0g1LKgVuBMYR5ph6Q9Kk6DyrhLXAV4BzmrGuc/lvy2p491koKYNR57bstbySzzXXh/lXIAHpVfFNAw6V1BWQmW3I0LaPAhYmTviVdDcwHqhNMma2Clgl6RNNXde5gjD7YbBqOOg06NSzZa9VW8k3IzSdbeq5VK71ysMKPkhvyvcKSX8F7jGzDZJGSboqA9vuDyxNur8seiyj60q6WtJUSVOrqrwNjMszid57zTn3qa4ufaFDj1CuvvGDlr+eaz3ysEAC0jsGdRvwJNAvuj+fcNJuS6X6eVdvWXtz1zWzCVEfwcry8vK0g3Mu69YvgSWvQlkHGH5my19P8rmhXNPVVMPKqJtd4jhmnkgnQfUys3uBGoBoio3qDGx7GZBcsjQAWJ6DdZ3LD4nGsCPOhHadM/OaFX7CrmuiNQtDFWm3gdCxR9zR7CWdBLVFUk/2TPl+NKFQoqXeAIZKGiKpLXAxMCkH6zqXHzI5vJdQWyjhe1AuTXnWIDZZOlV8Xyd8+R8o6WWgHGhhPWzYE5N0LWH4sBSYaGazJF0TPX+LpD7AVKArUCPpOmCUmW1MtW5LY3IuZ1bODtV27bvDgadk7nV9iM811Yp3wnWeFUhAelV8b0o6ERhOOPYzz8wy0sXczCYDk+s8dkvS7Q8Jw3dpretcwZgZ7T2NGg9lbTP3ur2GQ0kbWPse7NicuaFDV7zytEACGu7Fd149Tw2ThJk9mKWYnCtuZntPrZFJZW3DyZYrZ4STLwceldnXd8XFLC978CU0tAd1dgPPGeAJyrnmWPZGqODr0g/2Pzbzr99ndEhQH87wBOUatmkFbF0dhpq7taDNVpbUm6DM7MpcBuJcq5HYexp9HpSUZv71veWRS1fy3lMentjd6DEoSe8CrwEvAS96OyHnWqB6N8x6KNzO9PBeQqJQwlseucbUdpDIv+NPkF6Z+SjgT0BP4FeSFkl6KLthOVek3nsBtlRBz6HZmxIjcS7UytlQU5OdbbjikKc9+BLSSVDVhOndqwkn664EVmUzKOeKVvK5T9kaUunUMxzf2rUF1r2XnW244pDHFXyQ3nlQG4EZwG+AP5vZmuyG5FyR2rUN5jwabrd0ao3G9BkNm5aHX8g9D8zutlxh2r4h/IApbQe9hsUdTUrp7EF9CngR+CJwt6QfS8rgmYXOtRLzn4Sdm6Df2OwnjT7e8sg1ItF/r/dIKG0Tbyz1SOdE3UeARySNAM4gNIr9FtAhu6E5V2Syde5TKhVeKOEakcfnPyWkM93GA1El3/8BnYHLgP2yHZhzRWXbeljwFCA4uIUTE6YjeW4o51LJ8wo+SO8Y1A3Am2aWiQ7mzrVOcx6F6p0w5ATo2jf72+txQJjGY+MHsHVt3nWpdnkgUcGXpwUSkN4xqLeBL0m6P7p8WVJ+Dlg6l69yObwH4QTgioPDbR/mc3Xt3gmr5oTbib+TPJROgroZOAK4KbqMjR5zzqVj04ew+CUobQsjG+oglmG1nc09Qbk6Vs+Dml1hT7tdl7ijqVc6Q3xHmlnyGYXPSnonWwE5V3RmPQRWA0NPgw45PHzrLY9cffJ4DqhkaZ2oK6m2JlbSAWRmRl3nWofa4b0sn/tUl09e6OqzIr87SCSkswf1TeA5SYsI80HtD3gjWefSseZd+GAatO0Mw07P7bYTxxaq5oVjDpmcd8oVttoOEllqt5Uh6ZwHNUXSUPZMWDjXzHZkPTLnisHMB8L1yLOhTY5PHWzXBfYbEroFrJ6/55iUa93yfA6oZOkM8UEokhgNHAp8UtJlmdi4pNMlzZO0UNL1KZ6XpN9Hz0+XNDbpucWSZkh6W9LUTMTjXEaZwfR7w+1cD+8leGdzV9f692HHBuhUDp0r4o6mQemcqPs34FfAccCR0aWypRuWVArcSOhOMQr4lKRRdRY7AxgaXa5m3+rBk83sMDNrcTzOZdyH02HNAujYC4acFE8MiYPgXijhEpILJPJwDqhk6RyDqgRGmZlleNtHAQvNbBGApLuB8UDyfFPjgTuibb8mqbukvma2IsOxOJd5ieKIg8+F0nT+q2WBtzxydRVIgQSkN8Q3E+iThW33B5Ym3V8WPZbuMgY8JWmapKvr24ikqyVNlTS1qqoqA2E7l4aaGpgRHX/K1cm5qfRJKjXP+G9MV5AK5PgTpLcH1QuYLenfQG1xhJn9Rwu3nWrfsu7/oIaW+aiZLZfUG3ha0lwze3Gfhc0mABMAKisr/X+oy40lr4TpLroPgoFHxRdHt4HQvhtsXRNOGM5FmyWX3wqkgg/SS1A/ytK2lwEDk+4PAJanu4yZJa5XRTP8HkWYFsS5+CUmJhx9Qbzj/FKYYff9f4VhPk9QrdvWtbBxGbTpGLpI5Ll0hvg6mtkLyRdgZAa2/QYwVNIQSW2Bi4FJdZaZBFwWVfMdDWwwsxWSOknqAiCpE3AaYSjSufjt3gmzHw634xzeS6gd5psebxwufom/gYrRoV9jnktnD+r7knaY2bMAkr4NnATc0pINm9luSdcCTwKlwEQzmyXpmuj5W4DJwJnAQmAre04QrgAeUvhlWgbcZWZPtCQe5zLm3Wdh2zrofTBU1C1MjUGF9+RzkQI6/gTpJaj/AB6T9E3gdGBE9FiLmdlkQhJKfuyWpNsGfCnFeosI52Q5l3/iam1UHz8XyiUUUAUfpDHEZ2arCQnpRqAfcIGZ7cp2YM4VpB2bYV70m2v0+fHGklA+ElQKaxbCzq1xR+PiVFsgkd9NYhPqTVCSNknaKGkjYYhtGHAhkHjMOVfXvMdh11YYeDTst3/c0QRt2kOvYaGjemIOINf67NoWWl6pBHrnwdBzGupNUGbWxcy6Jl3am1nnxOO5DNK5gpFvw3sJtcN83lGi1Vo1G6w6/FjJdV/IZkq3F59zrjFb1sC7U8Jw2qhz4o5mb4ljDl4o0XoVyBxQyTxBOZcpsx+Gmt1w4MnQuTzuaPbmLY9cgRVIQMPHoIbkMhDnCt7MPGhtVJ/kPaiamnhjcfEosAIJaHgP6n4ASVNyFItzhWvDMnj/ZShrDyM+EXc0++rcGzr1hp2bwnQLrnWpqYaVs8LtisLZg2roPKgSST8Ehkn6et0nzew32QvLuQKT2HsafkaYKDAf9RkTjpGtnAk9fICkVVm7CHZtga79oVPPuKNJW0N7UBcD2wlJrEuKi3MuobZ6Lw+H9xKSO5u71iXR4qiACiSggT0oM5sH/FzSdDN7PIcxOVdYVs0NX/rtu8FBp8YdTf0qvJKv1SrAAglIr4rvFUm/ScypJOnXkrplPTLnCsXMqHP5qPFQ1i7eWBri50K1XgXWgy8hnQQ1EdgEXBRdNgK3ZjMo5+pVvTt0C88XZnuG90bn2cm5dfUcCqXtYP0S2LY+7mhcLhVgBR+kl6AONLMfmtmi6PJjIP8nEnHFZ8V0uPEo+Pn+8MDnYP6TUB1zW8gPpsG6xdC5Dww+Lt5YGlNaBr2jmXISFV2u+G36ELasgnZdoXuetN9KUzoJapuk2v95kj4KbMteSM7VYQbTboO/nApr3w297mbcB3ddBL8aBo99Dd5/NZ7ze2r3ns4viPl1vLN5K5Q8vBfn5JnNkM50G9cAdyQdd1oHXJ69kJxLsnMLPPZ1mH53uH/EFXD0F2HOoyE5VM2FqRPDpdvAkCjGXLjnizibqnfDzAfD7XzrvVefRBWXV/K1HgVawQdpJCgzewc4VFLX6L53Mne5UTUf7r0MquaEKarP+h0c+snwXPlwOP4/w1DVjHthxgOwYSm8/Ltw6T0qJI3RF2Svq/jil8LQSY8Dod/h2dlGplV4qXmrU6AVfJDeHhTgicnl2Iz7YdJXwsmFvYbBRXfsOX6SIIU9pT6j4ZQfwdLXwl7VrIdC5+YpPwmXgR8Je1Wjzslsj7wZUfXemAsLZ+ik4uBwvWpO2AMsTfsrwBWqAi2QgJibxUo6XdI8SQslXZ/ieUn6ffT8dElj0123qNRUw+qFMHcyrHk37miya/eOMKT3wFUhOY25ED7/3L7Jqa6SEtj/WDjrt/Cf8+HT94a9pzYdYenrMPkb8Ovh8Pfz4Z17YMemlsW5azvMmRRuF8rwHkCH7tBtEFTvCBMYuuK2Y1M4blvSBnoNjzuaJovt55OkUsIsveOAZcAbkiaZ2eykxc4AhkaXjwA3Ax9Jc93CYxZ6uq2aE/YAEter58Pu7WEZlcJH/h+c+O3wZVNM1i2Gey+HFW9DaVs4/Qao/GzT907K2sKwj4fLjs1hEsEZ94U2PwufCZeyDqEt0ZgLw8m1ZW2bto0FT8GOjdD3MOg1tGnrxq3PGNiwJBRK9B4RdzQumxLVmr1HNP1vPA80mqAkTSWc93SXma3L4LaPAhaa2aJoO3cD44HkJDMeuMPMDHhNUndJfYHBaayb3zZX7Z2EVs0Jl531/LLvOiAcS1nyKrx2E0y/F075ARz+mcKoHmvM3Mnw8DWwfUMohb3o9swc12nXGQ65MFy2rIHZD4WhuSWvwqwHw6V9dzj4nJCsBh0b9sYaUwitjerTZzTM+2c4eF5Ie3+u6Wor+A6NN45mSmcP6mLgSsJeSiJZPRUljZboDyxNur+MsJfU2DL901wXAElXA1cDDBo0qGURN8f2jaHSrG4y2lKVevmOPcMB/t6jwrBW71Hh10/7qIhyxXR4/Nuw5BV49Cuheu3MX8LAo3L3njKpelc4TvTK78P94WfCOTdBh/0yv61OPeHIz4XL+iWhweuM+8OexLTbwqVLPxiTqAQ8JPXe2/YN4RwsBKPPy3yc2VZbKOGl5kVvxTvhugALJCC9Kr6FwHclfR84i9BZokbSROD/zGxtM7edatymbtKrb5l01g0Pmk0AJgBUVla2NKnWb9e2MBRXd49ow9LUy7ftnJSAkpJRYwfx+x4CV04OX65PfT8Mh/11HBxyMYz7MXTpk/G3ljUbl8P9nw17MyqFU38Ix34lNwUH3QfBcV8Ll5WzQ7uiGfeFxPXKH8Kl17CQqMZcAD2Szk2f81g4hjP4eOjaL/uxZlriy8rPhSp+BdriKCGtY1CSDiHsRZ0JPADcCRwHPAsc1sxtLwMGJt0fACxPc5m2aaybHdW7Q+v6VbP2TkZrF4GlOFG0tB2UD6uzRzQynLPT3C9iKXxpDj8DXvpN2PuYfjfMfQxO/BZ85Av5P9787nOhG8TW1dClL1wwMRQ5xKFiFFT8AD72fVj676gS8MHwg+O5/wmX/pUhWR18btLwXoEOj3XfH9p2gc0rYfOqMFeUKz7Vu8J3E+TmvMAsUGMjdZKmAeuBvwIPmNmOpOceNLNmjXFIKgPmA6cAHwBvAJ82s1lJy3wCuJaQGD8C/N7Mjkpn3VQqKytt6tSpzQkXnvgveO8lWD0PqlP0glMJ9Dxo7yTUexTsNyT7pbxrF8GT3wvHFSDEcfoNMHRcdrfbHDU18OIv4fn/BQyGnAjn/zX/pkiv3gWLXgjJaO5jsHNzeFwloZilpAy+MR869og3zub668dDWf5nHoSDTok7GpcNK2fBzcfCfoPhq+/EHU2DJE0zs8q6j6fzzXlhohgh6cWGmNl7zU1OAGa2W9K1wJNAKTDRzGZJuiZ6/hZgMiE5LQS2Evbi6l23ubGkpWreni7Q3QaFX93JyajnUGjTPqsh1KvHAfCpu0J12uPXw5oFcOcFMOx0+PjPoOeB8cRV15bV8ODn4d1nAYVKxBO/nZ9FHqVtYOip4bJzK8x/PByvWvA02K6w91qoyQnCL+qlr4VhPk9Qxal2eK/wzn9KSGcP6k0zG1vnsWlmdkRWI8uCFu1BLZsafjmXD4f2XTMbWCbt3gn/ngDP3xAqAkvbwjFfguO/ESra4rLkdbjvCti0PBSCnPfnwvxi3Lo2HDMbdExhJ6hpt8GjX4UxF8H5f447GpcNT3wHXrsRTv4enPjNuKNpUJP3oCSNAA4GuklK3lPqCsS0qxCjAft8dvmprC0ce204XjLlx/D2nfCv38I7d8O4n+S+64EZvHojPPNDqNkdujpccCt065+7GDKpYw8Y8Ym4o2i52skLveVR0artwVeYBRLQcCeJ4YSqve7A2UmXscDnsx6Za5kuFaFc+3NToN9Y2LQiDK9NPB2Wv52bGLath3s+A099NySnY66FK/5ZuMmpmPQeGY6nrZ4fumIUmlkPwU96wd8vgIVTwg8ht4dZQbc4SmhoyvdHgEckHWNmr+YwJpdJAypDknrnLnjmR+G4w4ST4IjLQ9Vap17Z2e6Kd0Kj13WLwzw059wEI8/OzrZc07XtGJrcrlkQztPrd1jcEaXPDF74BdTsgoVPh0v5iNBh5ZCLw3tr7TYshe3rw3B6l75xR9Ns9e5BSfpWdPPTUT+8vS45is9lQklJ6Djx5WlhL6akNByD+MNYeP1PoXQ+U8xg6q3wl3EhOfU5BP7fC56c8lGhng+19PVweken3uFHVpe+Ick+9jX47ajwQ2zDB3FHGa8CngMqWUNDfFEBPVOBaSkurtC07wYf/x/4witwwMmhI8Lj34I/HQ/vvdjy19+5BR66Bh67LpzIesQVcNXTe5/k6vJH4tyYQjsONXViuB57KZzwDbhuRjhVoX8lbFsXjrn+bgzcdyUsfSPeWONSBBV80PAQ36PR9e25C8flRPlwuPQhmDc5nN+1ajbcfnaYjuK0n4YuC01VNS80ek01d5PLT7WFEgW0B7VlTTj+hGBsNG9qaZtw0vSYC0JCev1mmPXwnl6L/Y8Ik1yOGh+WbQ1q54Aq7ATVaFdMSU9L6p50fz9JT2Y1Kpd9UqhG+9K/QxlqWQeY/TD88Sh4/uehdVO6pt8HE04OyanXcPj8s56cCkHtEN+MwikyePvOcKL80HGpJ6IceGToSnLdDDju66Gn4wfTwvQtvxsDL/4qJLliVwQFEpDefFDlZrY+cSfqaO69UYpFm/bhHIkvT4WDz4Pd2+D5n4VENXtSw19cu7aHcf8HP5c0d9Ozjc/d5PJDlz7hIPr2DfX3jMwnNTUw7dZwu/KzDS/brX/o7fi12WFvvnxEqGR99qfhONWkL4cejMVo69ownUpZh9BVpoClk6CqJdWO+Ujan3oas7oC1m0AXHhrKAOvGB3+wO+9FO4Yv6efV7K178HE08LxgNK28InfhJNv4zwZ2DWNVFidzd97IbT16joAhp6W3jptO0LllfDF18Kw9tDTwtxqb94BNx8T/r7nPRGSX7FIFL1UjMrPLi1NkE6C+i7wL0l/k/Q34EXgv7IblovN4OPg6hfgzF+FeZLeewFu/mhoobRtfVhm7j/hTyeGUvLu+8NVT8GRVxV0tVCrVUiVfIniiCOuaPoXrwQHfgwuuQ+unQpHfh7adIJFz8M/Pgl/rITXJ7R8puV8UCQFEpBGgjKzJwgn594TXY4wMz8GVcxKy+Coz8NX3oLKqwALB57/MDZ0IL/707BjAwz/RCghz8TEgi4eiQSV75V8G1eEH0YqDdV7LdFrKHziV/D12XDaf4femmvfhce/Cb8ZBU9+N5wiUahWFH4HiYR09qAAjgVOii5HZysYl2c69oCzfhP2qAYdC1vXhO7eKoVxP4WL78zOxIIudyoKpNT8rb+DVYfCnkzNedahOxz75fBD7KI7wt/4jo3w6h/h94fD3ZfA4pcLp4AkoYj2oNKZ8v0G4EjCHFAAX5X0UTPzYb7WInmSxNkPw9Ffgv2PiTsqlwm9hkFJG1j3Xhjeatcl7oj2VVMdTiyHxosjmqO0LJSgjxof2oC9fkvoXD/3sXDpMyaUqY8+H8raZX77mbRre5gSSCVQcXDc0bRYOntQZwLjzGyimU0ETgeKoFuma5LEJImf/Lsnp2JS1jZUuEH+VrUteAo2LgsnfA85Mbvb6ncYnHsLfG1WmAqmY6+wR/LwF+C3B8Nz/xsmecxXVXNC38ueBxVFy6d0h/i6J93uloU4nHNxST4fKh/VFkdcGdp25UKXCjj5OyFRjb8pnNS8pQpeuCEkqoe+EIqE8k0RDe9Begnqf4G3JN0m6XZCm6OfZTcs51zO5HPLo3Xvh0kiS9vCYZfkfvtt2sPhl8A1L4VTMEacFWZbfucu+NMJcMc5sGFZ7uOqTxEVSEB6VXz/IBRGPBhdjjGzu7MdmHMuR/L5XKg3bwcstOHq1DO+OKRwCsbFd4aiiqO/BG27wKLn4JbjYf5T8cWWLLlJbBFoqJv52MQF6AssA5YC/aLHnHPFIPFltmp2KEjIF7t3wpt/C7ePvCreWJL1GAKn/wy++g4cdCpsWwt3XQhP/zDsXcWlpmbP+WxFMsTXUBXfrxt4zoCPNXejknoQzqkaDCwGLopaKNVd7nTg/4BS4C9mdkP0+I8IkyZWRYt+x8wmNzce51q1jj2ga3/Y+EHo1NBraNwRBfP+CVtWQe9RYSbmfNOpJ3z6Pnj5d/Dsf4frJa+FXoBxTMq57j3YuTlMP9K5PPfbz4J696DM7OQGLs1OTpHrgSlmNhSYEt3fi6RS4EbgDGAU8ClJo5IW+a2ZHRZdPDk51xL5eD5Uojii8rP526WkpASO/zpc8Rh06RcmBP3T8bDgmdzHUgRTvNeVTjfzjpK+J2lCdH+opLNauN3xQGIaj9uBc1IscxSw0MwWmdlO4O5oPedcpiUKJfKl5dHqBWGOsjYd4ZCL4o6mcfsfGwopDjo1nNB+5/nwzI8zOxloY4qsgg/Sq+K7FdhJ6CYB4VjUf7dwuxVmtgIguk7VHb0/4ZhXwrLosYRrJU2XNFFSve0MJF0taaqkqVVVVfUt5lzrVtvyKE8S1NSoa/mYC8JEm4WgU68w5HfKD8KJsv/6Ddx+FmxcnpvtF1kFH6SXoA40s18AuwDMbBvQ6P62pGckzUxxSXcvKNU2Ej1HbgYOBA4DVtDA8TIzm2BmlWZWWV5eHOOyzmVcRR715Nu1Lcz7BNnpHJFNJSVw/H/C5Y+FY0FLXoVbjsvNkF+RzAGVLJ0EtVNSB6LkIOlAYEdjK5nZqWY2OsXlEWClpL7R6/UFUp2avQwYmHR/ALA8eu2VZlZtZjXAnwnDgc655uoxJAynbVoe5hOK06yHYfv60IS4UBsRD/4o/L+XQgf1xJDflJ9kb8hv8yrY/GEofe8+ODvbiEE6CepHwBPAQEl3EooavtXC7U4CovmauRx4JMUybwBDJQ2R1Ba4OFovkdQSzgXyZFzCuQJVUrqnd1vce1G1xRF5VFreHJ3L4ZIH4GPfD0N+L/0abj87O0N+tQUSo3PXbSMHGjoP6o+SjjWzp4DzgCuAfwCVZvZ8C7d7AzBO0gJgXHQfSf0kTQYws93AtcCTwBzgXjObFa3/C0kzJE0HTga+1sJ4nHP5UMn34QxY9m9o1w1GnxdfHJlSUgInfCMM+XXuA0teCUN+CzM85FeEBRLQ8HlQC4BfR3sr9wD/MLO3M7FRM1sDnJLi8eWE5rSJ+5OBfUrIzayFE8I45/aRD5V8ieKIQy+Gtp3iiyPTBn8UrvkXPHQ1vPss/P2CcKzqpP8K3dRbqggLJKDh86D+z8yOAU4E1gK3Spoj6QeShuUsQudcblTEXMm3YxNMvyfcrrwynhiyqXbI73vhvK6XfgV3/EeYjLGliqzFUUI6vfjeN7Ofm9nhwKcJx3zmZD0y51xuVYwCBFVzQ5uhXJtxf+iEMOhY6D0y99vPhZISOOGbcPmjYcjv/ZejIb8pzX/NnVtgzUIoKSu6zy2dE3XbSDo7KpB4HJgPnJ/1yJxzudWuS6jmq9kVJr3LJTOY+tdwu9BKy5tj8HHhxN4DToKtq+Hv54d2Sc2p8ls5C7Awr1e+T6jYRA0VSYyTNJFQ7n014VjQgWb2STN7OEfxOedyKa7O5h9MC8NUHXvCqP/I7bbj0rk3fOZBODka8nvxl3DH+KYP+dVW8BVXgQQ0vAf1HeBVYKSZnW1md5rZlhzF5ZyLQ+3khTlOUInS8sMuKbq9gAaVlMKJ34TLJkHnCnj/X2HI791n03+NIi2QgMabxf7ZzGI+a885lzN9YugosW0dzHwg3C7G4oh0DDk+VPklhvz+dh48+z/pTX9SpAUSkP6U78651iD5XCizhpfNlHfuht3bQ9eFHgfkZpv5qHbI77vRkN8vwpDfpg/rX6d6d5jHCzxBOeeKXLcBoTnrtrWwKQPlz40x23tajdaupBRO/BZc9kgY8lv8UjTk91zq5dcsCMm9+yDo0D2noeaCJyjn3B7SnoPtuSiUeP9lWD0/NFYddnr2t1cohpwQhvyGnAhbquBv58JzP9t3yK9IO0gkeIJyzu2tdphveva39UZUWj72Mihtk/3tFZLOveHSh+Ck74T7L/x83yG/Iq7gA09Qzrm6ctXyaPMqmPNoaKQ69rLsbqtQlZTCSd8OQ36dekdDfsfDoufD80VcwQeeoJxzdeXqXKi3/h5OCh52ejj25ep3wInRkN8JsGUV3HEOPPe/RTkHVDJPUM65vZWPCG1z1iwMbXSyoaYGpkWNYb04Ij1dKuDSh0ODWYAXbgjFLB32g679G1y1UHmCcs7trU176DUMMFiVpbab7z4L65eE6rMD95nYwNWnpBROuh4uezgM+UE4/qRGJzkvSJ6gnHP7yvbcUInS8iOuLKoJ9nLmgJPCkN8x18IpP4w7mqzxvwzn3L6yWSix4QOY/ziUtIHDP5P5128tulTAx/8HBhwRdyRZ4wnKObevbLY8evMOsBoYeXYopXauHrEkKEk9JD0taUF0vV89y02UtErSzOas75xrpsTkhStnhYKGTKneBW/eHm57cYRrRFx7UNcDU8xsKDAlup/KbUCq08vTXd851xydy0OrnZ2bYf3izL3u/CdCC6WeQ8OcSM41IK4ENR6IfkZxO3BOqoXM7EXCdPPNWt851wJ9sjAFfHLfvSKtPHOZE1eCqjCzFQDRdVMHotNeX9LVkqZKmlpVVdXsgJ1rdTJdybd2USgvL2sPh16cmdd0Ra0sWy8s6RmgT4qnvputbaZiZhOACQCVlZU5mj/AuSKQ6ckLp90WrkefDx17ZOY1XVHLWoIys1Pre07SSkl9zWyFpL7Aqia+fEvXd841JpMtj3bvCK2NwIsjXNriGuKbBFwe3b4ceCTH6zvnGtPzoDAct2EJbFvfstea8yhsXRP2yvoX73k7LrPiSlA3AOMkLQDGRfeR1E/S5MRCkv4BvAoMl7RM0lUNre+cy6DSMug9Mtxu6TCfF0e4ZsjaEF9DzGwNsE8DLjNbDpyZdP9TTVnfOZdhFaNh+VthmK+5ZeGr5oSJCdt2hjEXZjY+V9S8k4Rzrn61hRItqOSbGnUtP+QiaNel5TG5VsMTlHOufi1tebRzC7xzd7jtxRGuiTxBOefqV3FwuF41F6p3N339mQ/Cjg0w4MiinfXVZY8nKOdc/dp3C3M2Ve+ANQuavn5tccRVDS/nXAqeoJxzDesTTSfe1POhlr8Fy9+E9t3h4HMyHZVrBTxBOecaVnvC7vSmrZcojjjsEmjTIbMxuVbBE5RzrmHNmbxw+waYcX+4XXll5mNyrYInKOdcw5rT8mj6vbBrCww+HnoNzU5cruh5gnLONaz7/tCuK2xZBZtWNr682d6dI5xrJk9QzrmGlZTsKTdP54Tdpa/DqtnQqRxGnJXd2FxR8wTlnGtcU4b5EntPh18KZW2zF5Mrep6gnHONS3duqC1rYNbDgOCIK7IclCt2nqCcc43rk+bsuu/cFU7qHToO9ts/+3G5ouYJyjnXuN6jQCWwegHs2p56mZqaPec+eXGEywBPUM65xrXpECYwtGqompN6mcUvwtp3oesAGHpabuNzRckTlHMuPbWdzes5DvXGX8P1EZdDSWluYnJFzROUcy49FQ0ch9q4Aub+E1Qaqvecy4BYEpSkHpKelrQgut6vnuUmSlolaWadx38k6QNJb0eXM1Ot75zLoIYq+d76exj+G3EmdO2b27hc0YprD+p6YIqZDQWmRPdTuQ04vZ7nfmtmh0WXyVmI0TmXLPlcKLM9j9dUw7Tbwm0vjnAZFFeCGg/cHt2+HTgn1UJm9iKwNkcxOeca0qUPdOwVJiBcv2TP4wueho3LoMcBMOSkuKJzRSiuBFVhZisAouvezXiNayVNj4YBUw4ROucySErd2TzROeKIK0NbJOcyJGt/TZKekTQzxWV8Bl7+ZuBA4DBgBfDrBuK4WtJUSVOrqqoysGnnWrG6LY/WL4EFT0Fp2zDvk3MZVJatFzazU+t7TtJKSX3NbIWkvsCqJr52bUtlSX8GHmtg2QnABIDKykqrbznnXBoSs+smmsZOux0wGHUOdOoZV1SuSMW1Pz4JuDy6fTnwSFNWjpJawrlAE+eids41S3LLo9074c07wn0vjnBZEFeCugEYJ2kBMC66j6R+kmor8iT9A3gVGC5pmaSroqd+IWmGpOnAycDXchu+c61Ur2FhOG/dYph+d5gjqnwkDDo67shcEcraEF9DzGwNcEqKx5cDZybd/1Q96/uZgM7FobQNlA8Pe1BTfhIeq/xsKKBwLsO85MY51zSJ41BbqqBNRzj0k/HG44qWJyjnXNMkKvkAxlwA7bvFF4srap6gnHNN0ycpQXlxhMuiWI5BOecKWL+x0G0g9B4J/Q6POxpXxDxBOeeapl1nuG4GWE3ckbgi5wnKOdd0Uphaw7ks8mNQzjnn8pInKOecc3nJE5Rzzrm85AnKOedcXvIE5ZxzLi95gnLOOZeXPEE555zLS56gnHPO5SWZtZ5JZiVVAe+34CV6AaszFE6h8s8g8M/BPwPwzwAy8xnsb2bldR9sVQmqpSRNNbPKuOOIk38GgX8O/hmAfwaQ3c/Ah/icc87lJU9Qzjnn8pInqKaZEHcAecA/g8A/B/8MwD8DyOJn4MegnHPO5SXfg3LOOZeXPEE555zLS56gUpB0uqR5khZKuj7F85L0++j56ZLGxhFnNqXxGVwSvffpkl6RdGgccWZTY59B0nJHSqqWdEEu48uVdD4HSSdJelvSLEkv5DrGbEvj/0M3SY9Keif6DK6MI85skTRR0ipJM+t5PjvfiWbml6QLUAq8CxwAtAXeAUbVWeZM4HFAwNHA63HHHcNncCywX3T7jNb4GSQt9ywwGbgg7rhj+lvoDswGBkX3e8cddwyfwXeAn0e3y4G1QNu4Y8/gZ3ACMBaYWc/zWflO9D2ofR0FLDSzRWa2E7gbGF9nmfHAHRa8BnSX1DfXgWZRo5+Bmb1iZuuiu68BA3IcY7al83cA8GXgAWBVLoPLoXQ+h08DD5rZEgAzK7bPIp3PwIAukgR0JiSo3bkNM3vM7EXCe6pPVr4TPUHtqz+wNOn+suixpi5TyJr6/q4i/HoqJo1+BpL6A+cCt+QwrlxL529hGLCfpOclTZN0Wc6iy410PoM/AiOB5cAM4KtmVpOb8PJCVr4Ty1r6AkVIKR6rW4ufzjKFLO33J+lkQoI6LqsR5V46n8HvgG+bWXX44VyU0vkcyoAjgFOADsCrkl4zs/nZDi5H0vkMPg68DXwMOBB4WtJLZrYxy7Hli6x8J3qC2tcyYGDS/QGEX0VNXaaQpfX+JB0C/AU4w8zW5Ci2XEnnM6gE7o6SUy/gTEm7zezhnESYG+n+f1htZluALZJeBA4FiiVBpfMZXAncYOGAzEJJ7wEjgH/nJsTYZeU70Yf49vUGMFTSEEltgYuBSXWWmQRcFlWuHA1sMLMVuQ40ixr9DCQNAh4ELi2iX8rJGv0MzGyImQ02s8HA/cAXiyw5QXr/Hx4BjpdUJqkj8BFgTo7jzKZ0PoMlhD1IJFUAw4FFOY0yXln5TvQ9qDrMbLeka4EnCdU7E81slqRroudvIVRsnQksBLYSfj0VjTQ/gx8APYGboj2I3VZEXZ3T/AyKXjqfg5nNkfQEMB2oAf5iZinLkQtRmn8LPwVukzSDMNz1bTMrmmk4JP0DOAnoJWkZ8EOgDWT3O9FbHTnnnMtLPsTnnHMuL3mCcs45l5c8QTnnnMtLnqCcc87lJU9Qzjnn8pInKBc7Sd+NOkBPjzpifyR6/LrovJpMbWexpF4tWP8KSX/M5nYkvdLI890lfTHpfj9J9zdnW02I6fjo3+dtSR1a+Fop35+k24q1G7xrPk9QLlaSjgHOAsaa2SHAqezp6XUdkLEE1VSSSnO9TTM7tpFFugO1CcrMlptZtr/YLwF+ZWaHmdm2lrxQGu/PuVqeoFzc+hLa5OwAMLPVZrZc0leAfsBzkp4DkHSzpKnRr/kfJ14g2mP5saQ3Jc2QNCJ6vKekpyS9JelPJPULk/Rw1Nh0lqSrkx7fLOknkl4HjpF0paT5CnMcfTTVG2hkO5+R9O9o7+NPkkolfUHSL5KWuULSHxLbj647S5qS9J4S3bNvAA6MXu+XkgYrmqNHUntJt0bLv6XQJzHx+g9KekLSguRt13kfp0TrzVCY/6edpM8BFwE/kHRninWa+/4k6Y+SZkv6J9A7afkjJL0Q/fs8qagrtkIz2p9H25sv6fjo8VJJv4rini7pyw29jisgcc8z4pfWfSFMTfA2oW/bTcCJSc8tBnol3e8RXZcCzwOHJC335ej2FwmdDAB+D/wguv0JQvPKXnVeqwMwE+gZ3Tfgouh2X0ILm3LCPEAvA39M8R5SbofQ3fpRoE303E3AZdHrLUxa/3HguOj25ui6DOga3e5FOENfwGCS5uRJvg/8J3BrdHtEFHt74ApC251u0f33gYF13kN7wp7rsOj+HcB10e3bSDHXVQvf33nA09G/ZT9gPXABoTvBK0B5tNwnCZ0biP7Nfx3dPhN4Jrr9BcKUJ2WJf9uGXscvhXPxVkcuVma2WdIRwPHAycA9kq43s9tSLH5RtLdTRkgeowjtdSD0BQSYRvjygzDJ2nnRdv4paV3Sa31F0rnR7YHAUGANUE34soPQU+55M6sCkHQPYWqJuurbzimELt9vKLSD6gCsMrMqSYsUepYtIPRte7nOawr4maQTCO2D+gMVKbad7DjgD1EccyW9nxTvFDPbEL2P2cD+7D09wnDgPdvTV/F24EuEju31acn7OwH4h5lVA8slPZsUx2hCN3AICSy5p1vyv/Pg6PapwC1mtjt672sljW7kdVwB8ATlYhd9ST0PPK/Qy+xywq/2WpKGAN8AjjSzdZJuI/zqT9gRXVez99/1Pr28JJ1E+FI7xsy2Sno+6bW2R/HUu359byPFYwJuN7P/SvHcPYShs7nAQ2ZWd/1LCHsiR5jZLkmL2fv9ptLQnB87km7X/YwaW7eh7TX3/UH9n9ksMzumnm2m+ndWitdq7HVcAfBjUC5WkoZLGpr00GGEISiATUCX6HZXYAuwQaFb9BlpvPyLhC96JJ0B7Bc93g1YFyWnEYQpqlN5HTgpOsbUBriwiduZAlwgqXf0XA9J+0fPPQicA3yK8GVeVzfC3siu6FhSYr3kz6ShOIYBg4B59Sxb11xgsKSDovuXAi80sk5L3t+LwMXR8aO+hL1nonjLFYpnkNRG0sGNxPEUcI2kskQczXwdl2c8Qbm4dQZujw6WTycM2/0oem4C8Lik58zsHeAtYBYwkX2HjFL5MXCCpDeB0wjHZACeAMqi7f2UMGX9PixMF/Aj4FXgGeDNpmzHzGYD3wOeirb1NGFoEjNbB8wG9jezVHMG3QlUSppKSDpzo/XWAC9Lminpl3XWuQkojfZC7wGusKj4pDFmtp3Qgfq+aP0aGpkpuIXv7yHC8N8M4GaiZGhhSvULgJ9LeodwfLKxyr+/ED7z6dE6n27m67g8493MnXPO5SXfg3LOOZeXPEE555zLS56gnHPO5SVPUM455/KSJyjnnHN5yROUc865vOQJyjnnXF76/25zkpD42oKBAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(stddev_array, velocities, 'C1')\n", "decorate(xlabel='Standard deviation of evidence',\n", " ylabel='Velocity of knowledge')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The standard deviation of evidence does not increase or decrease the velocity of knowledge, but it makes progress more variable from one run to the next, with the possibility of going in the wrong direction, at least for a while." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Experiment 4\n", "\n", "Run an experiment that adds a feature to this model and tests its effect on the velocity of knowledge.\n", "\n", "* To model imperfections in the dissemination of knowledge, you could arrange the agents in space, or on a network, where they only share knowledge with neighbors.\n", "\n", "* To model imperfections in human behavior, you could model a phenomenon like confirmation bias, which is the tendency to accept new evidence only if it is consistent with your current beliefs. Or the possibility of counting the same piece of evidence more than once if you hear it from more than one source.\n", "\n", "Whatever feature you add, you should:\n", "\n", "1) Explain what behavior or structure in the real world the feature is meant to represent.\n", "\n", "2) Explain your implementation, that is, what changes you made in the code to add the feature,\n", "\n", "3) Run the experiment and compare the velocity of knowledge with and without the new feature.\n", "\n", "If possible, you should also:\n", "\n", "4) Define a parameter that quantifies the strength or severity of the new feature (like standard deviation in Experiment 3),\n", "\n", "5) Run the experiment with a range of values for that parameter, and\n", "\n", "6) Plot the velocity of knowledge as a function of the parameter.\n", "\n", "Finally, you should interpret the results in the context of the original question: what does your experiment tell us about the \"Constitution of Knowledge\"; that is, how does our ability to learn about the world depend on the behavior of scientists and how they share evidence?\n" ] }, { "cell_type": "code", "execution_count": null, "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.7.11" } }, "nbformat": 4, "nbformat_minor": 4 }