Skip to content

Instantly share code, notes, and snippets.

@Jessime
Created June 29, 2017 04:02
Show Gist options
  • Save Jessime/99cd344602df4303acaff569c95d07d8 to your computer and use it in GitHub Desktop.
Save Jessime/99cd344602df4303acaff569c95d07d8 to your computer and use it in GitHub Desktop.
Algorithm Complexity in the Jupyter Notebook
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Algorithm Complexity in the Jupyter Notebook"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As scientist, one of the most important things you can learn is how to tell a data-driven story thats compelling. In some regard, your research will never be important if you can't convince others of it's importantance.\n",
"\n",
"This Jupyter Notebook is a great way to tell stories about your computational experiments. \n",
"\n",
"It's also good for a variety of other things:\n",
"\n",
"* It will help you stay organized. \n",
"* It can help you share code. \n",
"* It makes your findings reproducible.\n",
"* It allows for rapid prototyping of code.\n",
"\n",
"Because of these benefits, it has become a standard tool for Python data scientists. Today, we're going to use it to simultaneously introduce the concept of \"time complexity\" as well as poke around in Python's plotting libraries.\n",
"\n",
"The problem we're going to look at is adapted from a Google Foobar Challenge question:\n",
"\n",
"## The question\n",
"\n",
"Imagine your PI comes to you says:\n",
"\n",
"> I'm interested in protein-protein interactions along actin filiments. Specifically, I want to know how many reactions occur in a given scenario. These particular proteins only interact as they pass by each other while heading in opposite directions along the filiments. To make this intuitive, I've been encoding proteins that head in one direction with the greater-than symbol \">\" and proteins heading in the opposite direction with the less-than symbol \"<\". That way, any possible scenario can be encoded as a single string and passed to a function.\n",
"\n",
"> For example, \"><\" would represent two proteins heading in the opposite direction. That means \"1\" reaction would occur. Similarly, \"><<\" and \"><><\" show \"2\" and \"3\" reactions occuring. On the other hand, \"<<>>>\" doesn't have any reactions. A slightly larger example would be \"><>><>><<><>\" which has 5+4+4+3+3+1=20 reactions. \n",
"\n",
"> I've thought of a pretty simple way to write this function using nested for loops, but I potentially want to run this on very long strings and am wondering if you have a better way. Let me know what you find out.\n",
"\n",
"To tackle this task, you need a two stage approach. First, you need to write the nested for loop approach your PI mentioned, and explore how quickly it runs with different parameters. Only after that can you write your own approach and quantify the differences."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Nested for loops\n",
"\n",
"Let's start by getting a quick-and-dirty function written."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def interaction_counter1(condition):\n",
" count = 0\n",
" for i, protein in enumerate(condition):\n",
" if protein == '<':\n",
" continue\n",
" for j, second_protein in enumerate(condition[i+1:]):\n",
" if second_protein == '<':\n",
" count += 1\n",
" return count"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Before thinking about timing, let's make sure that this runs correctly."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"test_cases = ['><', '><<', '><><', '<<>>>', '><>><>><<><>']\n",
"expected = [1, 2, 3, 0, 20]\n",
"expected == [interaction_counter1(tc) for tc in test_cases]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Excellent, we have a working prototype like our PI described. So how long does this take to run? First, we'll build some longer test cases."
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import random"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[1000, 2000, 3000, 4000, 5000, 6000, 7000, 8000, 9000, 10000]"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def build_test(n):\n",
" return ''.join(random.choice('<>') for i in range(n))\n",
"\n",
"long_tests = [build_test(n) for n in range(1000, 11000, 1000)]\n",
"lengths = [len(lt) for lt in long_tests]\n",
"lengths"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now that we have a variety of lengths for the test cases, we can take advantage of Ipython's line magic function to generate timings."
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"100 loops, best of 3: 18.4 ms per loop\n",
"10 loops, best of 3: 82.2 ms per loop\n",
"10 loops, best of 3: 188 ms per loop\n",
"1 loop, best of 3: 330 ms per loop\n",
"1 loop, best of 3: 515 ms per loop\n",
"1 loop, best of 3: 763 ms per loop\n",
"1 loop, best of 3: 1.04 s per loop\n",
"1 loop, best of 3: 1.34 s per loop\n",
"1 loop, best of 3: 1.66 s per loop\n",
"1 loop, best of 3: 2.07 s per loop\n"
]
},
{
"data": {
"text/plain": [
"[0.01838414859240629,\n",
" 0.0821906567425799,\n",
" 0.18806557873042493,\n",
" 0.32961647399804406,\n",
" 0.5152786303490302,\n",
" 0.7630036586987217,\n",
" 1.0361235091804701,\n",
" 1.3379105488710366,\n",
" 1.6606749110186456,\n",
" 2.074372143383812]"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"results = []\n",
"for lt in long_tests:\n",
" res = %timeit -o interaction_counter1(lt)\n",
" results.append(res)\n",
"results = [r.best for r in results]\n",
"results"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So even at 10,000 proteins, it still only takes a couple seconds to run. Not bad, right?\n",
"\n",
"Let's go ahead and plot these timings as a function of the input string length.\n",
"\n",
"We can import matplotlib for all of our core plotting functions and use seaborn to pretty up our graphs some. We won't do anything too fancy with these packages, but it's very easy to get started."
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"plt.style.use('seaborn-whitegrid')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"At first pass, we only need one line to make a plot:"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAhUAAAFoCAYAAADgsAn8AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAAPYQAAD2EBqD+naQAAIABJREFUeJzt3Xl4U2XaBvA76ZKmdKUbbQELrV2gpaGlrC2MDMugIKgo\n4zauU2Ac0VEZt/lERRFl3B0BxQ8VBj8QEQUUB1R2BigFWmgLNF2g0C2Fli5p0ibv90cgEgvSQNqT\nk96/6+Lq5D0nOc8zSZvbs7xHIYQQICIiIrpGSqkLICIiItfAUEFEREQOwVBBREREDsFQQURERA7B\nUEFEREQOwVBBREREDsFQQURERA7BUEFEREQOwVBBREREDmFXqKisrMSsWbMwZMgQjBo1CvPnz4fR\naLzkujNnzkR8fDwSEhKsP7du3eqQoomIiMj5uNuz8qxZsxAQEIAVK1agtrYWzz33HNzc3DB79uw2\n6xYVFeHNN9/E0KFDrWN+fn7XXjERERE5pXaHiqKiIuTk5GDnzp3o3r07AEvIeOONN9qECqPRiLKy\nMiQmJiIoKMixFRMREZFTavfhj5CQECxZssQaKABACIH6+vo26xYXF0OhUKBXr16OqZKIiIicXrtD\nha+vL0aMGGF9LITA8uXLMXz48DbrarVa+Pj4YPbs2UhPT8ftt9+Obdu2OaZiIiIickp2nVNxsTfe\neAMFBQX46quv2iwrKiqCwWBARkYGMjMzsWnTJsycOROrVq1C//792/X6ra2tqKurg0qlglLJi1SI\niIjay2w2w2AwwN/fH+7uV/1VbzeFEELY+6QFCxbgs88+wzvvvIMxY8Zccp36+nr4+vpaH8+YMQOh\noaF4+eWX27WNmpoalJSU2FsaERERnRcVFdWp5zbaHV/mzp2LlStXYsGCBZcNFABsAgUAREdHQ6vV\ntns7KpUKABAcHAwfHx97y3Q6BoMB5eXlCA8Pt/YmV67UC8B+nJkr9QKwH2fmSr0AQENDA3Q6Xaf3\nYleo+OCDD7By5Uq8/fbbGDt27GXXe/bZZ6FQKDBv3jzrWEFBAWJjY9u9rQuHPHx8fFziCpKmpiaU\nl5cjICAA3t7eUpdzTVypF4D9ODNX6gVgP87MlXq5QKfTdfrpA+3emlarxcKFC5GZmYmBAwdCp9NZ\n/wGW4g0GAwBg9OjRWLduHdauXYsTJ07ggw8+QHZ2Nu69996O6YKIiIgk1+49FT/++CPMZjMWLlyI\nhQsXArBcAaJQKJCfn4/09HTMnz8fU6ZMwdixYzFnzhwsXLgQFRUViImJwZIlSxAREdFhjRAREZG0\n2h0qMjMzkZmZednlBQUFNo+nTp2KqVOnXn1lREREJCu8VpOIiIgcgqGCiIiIHIKhgoiIiByCoYKI\niIgcgqGCiIiIHIKhgoiIiByCoYKIiIgcgqGCiIiIHIKhgoiIiByCoYKIiIgcgqGCiIiIHIKhgoiI\niByCoYKIiIgcgqGCiIiIHIKhgoiIiByCoYKIiIgcgqGCiIiIHIKhgoiIiByCoYKIiIgcgqGCiIiI\nHIKhgoiIiByCoYKIiIgcgqGCiIiIHIKhgoiIiByCoYKIiIgcgqGCiIiIHIKhgoiIiByCoYKIiIgc\ngqGCiIiIHIKhgoiIiByCoYKIiIgcgqGCiIiIHIKhgoiIiByCoYKIiIgcgqGCiIiIHIKhgoiIiByC\noYKIiIgcgqGCiIiIHIKhgoiIiByCoYKIiIgcgqGCiIiIHIKhgoiIiByCoYKIiIgcgqGCiIiIHIKh\ngoiIiByCoYKIiMjFmMxCku0yVBAREbmQExXnsODfByXZtrskWyUiIiKHKy0/h+cX7YS3B/dUEBER\n0VUqOR8o6hqMgEKaGhgqiIiIZK74dB2eX2gJFAoFcPsN0ZLUYVeoqKysxKxZszBkyBCMGjUK8+fP\nh9FovOS6eXl5uOOOO6DRaHD77bfjyJEjDimYiIiIfmEJFLtwrtESKB7/YwpS4oIlqcWuUDFr1iwY\nDAasWLECb731Fn7++We8++67bdbT6/XIzMxEWloa1qxZA41Gg+nTp6O5udlhhRMREXV1RacsgaK+\nyQilAvjbnSkYPaiXZPW0O1QUFRUhJycHr732GqKjo5GamopZs2Zh/fr1bdbdsGED1Go1Zs+ejb59\n++L5559Ht27dsHHjRocWT0RE1FVpy2rxj0U7fwkUd6XihlTpAgVgR6gICQnBkiVL0L17d+uYEAL1\n9fVt1s3JyUFqaqrNWEpKCg4cOHANpRIREREAFJbV4h+LdqG+qQVKBfDk3an4XUpPqctqf6jw9fXF\niBEjrI+FEFi+fDmGDx/eZt2qqiqEhobajAUFBaGysvIaSiUiIqLCk5ZA0aBvgVKpwFN3D8LIgdIH\nCuAa5ql44403UFBQgK+++qrNsubmZnh6etqMeXp6Xvakzt9iMBjQ1NR0tWU6Db1eb/NTzlypF4D9\n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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x26e0b7e7d30>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(lengths, results);"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Do you see a potential problem in these timings?\n",
"\n",
"While the length of the tests grew by a factor of 10000/1000=10, the time it took to run grew by 2.0/.02=100. Thinking about our code and using a little intuition, this makes perfect sense. The growth in run time is n^2 with respect to the input length of the sequence. \n",
"\n",
"**When we're considering real experiments with millions or billions of proteins, this is going to be a huge problem.**\n",
"\n",
"Before we go on though, let's make this graph a little nicer and more informative so we can show our PI our findings."
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x26e0b809ef0>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(lengths, results, linewidth=5)\n",
"plt.locator_params(nbins=6)\n",
"plt.title('Nested for-loop algorithm', fontsize=28)\n",
"plt.xlabel('Test length', fontsize=24)\n",
"plt.ylabel('Runtime (s)', fontsize=24)\n",
"plt.tick_params(labelsize=18)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from collections import deque"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def interaction_counter2(condition):\n",
" positions = {'>':deque(), '<':deque()}\n",
" for i, c in enumerate(condition):\n",
" positions[c].append(i)\n",
"\n",
" count = 0\n",
" next_right = positions['<'].popleft()\n",
" for pos in positions['>']:\n",
" while next_right < pos:\n",
" try:\n",
" next_right = positions['<'].popleft()\n",
" except IndexError:\n",
" break\n",
" count += len(positions['<']) + 1\n",
"\n",
" return count"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1000 loops, best of 3: 232 µs per loop\n",
"1000 loops, best of 3: 481 µs per loop\n",
"1000 loops, best of 3: 724 µs per loop\n",
"1000 loops, best of 3: 972 µs per loop\n",
"1000 loops, best of 3: 1.22 ms per loop\n",
"1000 loops, best of 3: 1.46 ms per loop\n",
"1000 loops, best of 3: 1.71 ms per loop\n",
"1000 loops, best of 3: 1.98 ms per loop\n",
"100 loops, best of 3: 2.19 ms per loop\n",
"100 loops, best of 3: 2.41 ms per loop\n"
]
},
{
"data": {
"text/plain": [
"[0.00023175012724504994,\n",
" 0.0004810020995100786,\n",
" 0.0007242644255820778,\n",
" 0.0009715100049934336,\n",
" 0.0012218860153093373,\n",
" 0.001461352528166117,\n",
" 0.001714030255006037,\n",
" 0.0019763930914750744,\n",
" 0.0021878029516119567,\n",
" 0.0024115196723232656]"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"new_results = []\n",
"for lt in long_tests:\n",
" res = %timeit -o interaction_counter2(lt)\n",
" new_results.append(res)\n",
"new_results = [r.best for r in new_results]\n",
"new_results"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Wow! Much better.**\n",
"\n",
"So, once again, we have scaled our input condition length by 10. This time though, our runtime scales at 0.0024/.00023~=10. \n",
"\n",
"Let's see what this graph looks like too."
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x26e0bfc5a58>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(lengths, new_results, linewidth=5)\n",
"plt.locator_params(nbins=6)\n",
"plt.title('Index queue algorithm', fontsize=28)\n",
"plt.xlabel('Test length', fontsize=24)\n",
"plt.ylabel('Runtime (s)', fontsize=24)\n",
"plt.tick_params(labelsize=18)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This algorithm scales linearly. It's a little hard to tell how this compares to the old version though, so let's put them on the same graph."
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x26e0bd54ba8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(lengths, results, linewidth=5, label='n-square')\n",
"plt.plot(lengths, new_results, linewidth=5, label='linear')\n",
"plt.locator_params(nbins=6)\n",
"plt.title('Index queue algorithm', fontsize=28)\n",
"plt.xlabel('Test length', fontsize=24)\n",
"plt.ylabel('Runtime (s)', fontsize=24)\n",
"plt.tick_params(labelsize=18)\n",
"plt.legend(loc='best', fontsize=18)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Again, imagine what happens if you try inputting 1M proteins. Or, better yet, do the math and calculate the running time for each algorithm...\n",
"\n",
"Anyway, you can now go back to your PI and definitively show him that you have a better solution to his problem."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"anaconda-cloud": {},
"kernelspec": {
"display_name": "Python [default]",
"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.5.2"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment