Created
November 23, 2020 10:48
-
-
Save t-flora/432e1022154288a6cc012db2a47d3800 to your computer and use it in GitHub Desktop.
CS166 - Network metrics and percolation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# Network metrics and percolation\n", | |
"## Percolation\n", | |
"\n", | |
"\n", | |
"Following the mathematical analysis in the textbook, $n$ is defined as the number of nodes in a network, and $q$ is defined as the probability that a random node from the network is *not* part of the largest connected component (LCC) of the network. The derivation in the textbook shows that $q$ is a solution to the equation\n", | |
"\n", | |
"$$q = e^{\\langle k \\rangle (q−1)}$$\n", | |
"\n", | |
"\n", | |
"where $\\langle k \\rangle$ is the average degree of the network.\n", | |
"\n", | |
"\n", | |
"**Question**: Given the information above, what is the theoretical estimate for the number of nodes in the LCC, expressed in terms of the known variables, $n$, $q$, and $\\langle k \\rangle$?\n", | |
"\n", | |
"\n", | |
"**Task**: Plot how the size of the LCC depends on the average degree $\\langle k \\rangle$ by using the theoretical result in (1). This equation does not have a nice analytical solution, so we use a numerical root finder in `SciPy` to determine the value of $q$ that solves the equation for a given $\\langle k \\rangle$. A root finder computes a numerical solution to an equation of the form $f(x) = 0$, so we need to rewrite (1) as\n", | |
"\n", | |
"$$q-e^{\\langle k \\rangle (q-1)} = 0$$\n", | |
"\n", | |
"We give the expression on the left-hand side to the root finding function. Use the code below to compute $q$ for different values of $\\langle k \\rangle$ in the range [1, 10]. Note that $\\langle k \\rangle$ will not necessarily be an integer since it is an average degree.\n", | |
"\n", | |
"\n", | |
"Use the value of $q$ to determine the theoretical estimate for the size of the LCC in a network with average degree $\\langle k \\rangle$. Plot your results of how the size of the LCC depends on $\\langle k \\rangle$." | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"**Answer to question**:\n", | |
"\n", | |
"The number of nodes in the LCC should be given by:\n", | |
"$$n_{LCC} = n(1-q) = n(1-e^{\\langle k \\rangle(q-1)})$$\n", | |
"\n", | |
"Considering a frequentist approach to calculating the probability $q$. If $1-q$ is the probability of a node being in the LCC, then the number of nodes in the LCC should be the equivalent fraction of the total nodes in the network." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 1, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"import numpy as np\n", | |
"import matplotlib.pyplot as plt\n", | |
"\n", | |
"def calculate_q(k):\n", | |
" '''\n", | |
" Use a numerical root finder to determine q from the equation\n", | |
" q = exp(k*(q-1)).\n", | |
" '''\n", | |
" from scipy.optimize import root\n", | |
" return root(lambda q: q - np.exp(k * (q - 1)), 0).x[0]" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"n_LCC = lambda n, k, q: n*(1-np.exp(k*(q-1)))\n", | |
"ks = np.linspace(1, 10, 500)\n", | |
"\n", | |
"qs = [calculate_q(k) for k in ks]\n", | |
"\n", | |
"ns = [n_LCC(1000, k, q) for k, q in zip(ks, qs)]" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 3, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"plt.plot(ks, ns, color = 'black')\n", | |
"plt.xlabel('<k>')\n", | |
"plt.ylabel('n_LCC')\n", | |
"plt.title('LCC size by average degree of network')\n", | |
"plt.show()" | |
] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"display_name": "Python 3", | |
"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.8" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 4 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment