{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Constrained and Non-Convex Optimization\n", "====\n", "\n", "## Unit 11, Lecture 2\n", "\n", "*Numerical Methods and Statistics*\n", "\n", "----\n", "\n", "#### Prof. Andrew White, April 12th, 2018" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Goals:\n", "---\n", "\n", "1. Learn how to perform non-convex optimization\n", "2. Be able to bound optimization and root-finding problems\n", "3. Add constraints to optimization and root-finding\n", "4. Put all these skills together into one example" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "%matplotlib inline\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "from math import sqrt, pi\n", "import scipy.optimize" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Non-Convex Optimization\n", "====\n", "\n", "A highly-challenging, unsolvable problem. There is no general purpose non-convex optimization tool. Scipy uses a sort-of OK method called basin-hopping" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def non_convex(x):\n", " return np.cos(14.5 * x - 0.3) + (x + 0.2) * x\n", "\n", "x = np.linspace(-1,1, 100)\n", "plt.plot(x, non_convex(x))\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " fun: -1.0008761844426555\n", " lowest_optimization_result: fun: -1.0008761844426555\n", " hess_inv: array([[ 0.00471235]])\n", " jac: array([ 1.51991844e-06])\n", " message: 'Optimization terminated successfully.'\n", " nfev: 21\n", " nit: 3\n", " njev: 7\n", " status: 0\n", " success: True\n", " x: array([-0.19506755])\n", " message: ['requested number of basinhopping iterations completed successfully']\n", " minimization_failures: 0\n", " nfev: 23745\n", " nit: 1000\n", " njev: 7915\n", " x: array([-0.19506755])\n" ] } ], "source": [ "ret = scipy.optimize.basinhopping(non_convex, x0=1, niter=1000)\n", "print(ret)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Notice you have to specify how long to try for. There is no way that basin hopping will know it's finished. Thus, try a few different iteration numbers and see if it changes." ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX8AAAD8CAYAAACfF6SlAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJztnXl0Y3eV579XmxctXuV9X8pL7VWuqpAdSAgBkgqdAAnNEJow6QzN0H2YDYYZZoY+nG6a000P3dDpsDShoUnoQEgRwqSzEhJSiyu1e1/Li2TLmzbLWn/zh95zFJdsS9bTe0/S73OOj7U8vXf9LH113733dy8xxsDhcDic3EKjtAEcDofDkR8u/hwOh5ODcPHncDicHISLP4fD4eQgXPw5HA4nB+Hiz+FwODkIF38Oh8PJQbj4czgcTg7CxZ/D4XByEJ3SBmxGeXk5a2pqUtoMDofDySjOnj27wBizbredasW/qakJvb29SpvB4XA4GQURTSayHQ/7cDgcTg7CxZ/D4XByEC7+HA6Hk4OkLP5EVE9ErxBRPxFdIaI/jbMNEdG3iGiEiC4S0aFUj8vhcDicnSNFwjcE4D8xxt4iIjOAs0T0AmOsL2abOwG0Cz/HAPyD8JvD4XA4CpCy588YszHG3hJuuwH0A6jdsNlxAD9iUU4CKCai6lSPzeFwOJydIWnMn4iaABwEcGrDU7UApmLuT+PaLwgQ0cNE1EtEvQ6HQ0rTOBwOhxODZOJPRCYAPwfwZ4wx18an47zkmvmRjLHHGGM9jLEeq3XbNQocDoejOtaCYfzk1CTmXGtKm7Ilkog/EekRFf6fMMZ+EWeTaQD1MffrAMxKcWwOh8NRC8Nzbtzz7Tfw5acv44HvnsSix6+0SZsiRbUPAfg+gH7G2N9sstkJAJ8Uqn6uA+BkjNlSPTaHw+GohZ+evoq7/v51ONx+fOnOTsws+/DgP52Gey2otGlxkaLa5wYA/w7AJSI6Lzz23wE0AABj7FEAzwH4AIARAKsA/kiC43I4HI4qODOxhC/94hJuai/HX390PyrM+WivNOHhH53FZx7vxeOfPop8vVZpM99ByuLPGHsd8WP6sdswAH+S6rE4HA5HjfzLqasw5+nwj//uMAoNUVl9T2cl/vqj+/FnT57Hd14dxRdu36Wwle+Er/DlcDicFHCuBvHcJRuOH6xZF36R4wdqcVO7FT8/O41I5JoaF0Xh4s/hcDgp8PS5afhDEdx/pCHu8/ceqsXMig8nxxdltmxruPhzOBzODmGM4YkzU9hbW4Q9tUVxt3lfdxVMeTr84q0Zma3bGi7+HA6Hs0POT61gwO7GA0fje/0AUGDQ4oN7q/GbSzasBkIyWrc1XPw5HA5nhzxxegqFBi3uPlCz5XZ/cKgW3kAYz1+xy2TZ9nDx53A4nB3gXgvixIVZ3LWvBqa8rQsnjzSVor60AD8/q57QDxd/DofD2QGvDy/AFwzj3sN1226r0RA+fLAOb4wuwOb0yWDd9nDx53A4nB1wemIJ+XoNDtQXJ7T9vYdqwRjwzHl1dLbh4s/hcDg74MzEEg7Wl8CgS0xGG8uM6Kq24HfD6uhYzMWfw+FwksS9FkTfrAtHmkuTet11LaU4O7mMQCiSJssSh4s/h8PhJMlbV1cQYcDRpuTE/1hzGdaCEVycXkmTZYnDxZ/D4XCS5Mz4ErQawsGGxOL9IseEK4VT40vpMCspuPhzOBxOkpyeWMKeGguM25R4bqTEaEBnlRknx5Rv9cDFn8PhcJLAHwrj/NQKjiQZ8hG5rqUMvRPLCIaVjftz8edwOJwkuDTtRCAUQc8Oxf9Ycyl8wTAuTjsltiw5uPhzOBxOEpyeiMbrjzSV7Oj1R9fj/sqGfrj4czgcThKcGV9Cq9WIMlPejl5fZspDR6UZJ8eUTfpy8edwOJwECUcYeieX1733nXKspRS9E0uKxv25+HM4HE6CDNrdcK+FdpzsFbmupQyrgTAuzygX9+fiz+FwOAkiLs461LCzeL+IeOWgZOiHiz+Hw+EkyIDdDaNBi4bSwpT2U27KQ6vViLOTXPw5HA5H9fTbXNhVZYZGQynva39dMS7xsA+Hw+GoG8YYBufc6KyySLK/vXVFmHP5Medak2R/ycLFP0G8/hBG5j1Km8HhcBRizuXHymoQXdVmSfa3ry468P2SQou9JBF/IvoBEc0T0eVNnr+ViJxEdF74+YoUx5WLcIThocfP4La/+S3+4Dtv4JnzM6poycrhcOSj3+4CAMk8/+7qImgIuKhQ6Ecqz/+HAN6/zTa/Y4wdEH6+KtFxZeE7r4zg5NgSPtZTj+XVIP70ifO4429fgy8QVto0DocjEwM2NwCgo0oaz7/AoMWuSjMuKdTeWRLxZ4y9BkD5HqVpoHdiCX/70jDu3l+Dv7x3L176wi345sf2Y3zBi5+/Na20eRwORyYG7C7UFhegqEAv2T731Bbh0owTjDHJ9pkocsb830VEF4joN0S0W8bj7hin4OXXFhfgax/eAyKCRkO450At9tUV4QevjyMSkf+fxuFw5GfA5kanRF6/yL66Iix4ArA55U/6yiX+bwFoZIztB/B3AH4ZbyMiepiIeomo1+FQfs7lN/5tAHOuNXzrgYMw57/9bU9EeOjGZowtePHywLyCFnI4HDnwh8IYdXjQKVGyV2RvbTTpq0SHT1nEnzHmYox5hNvPAdATUXmc7R5jjPUwxnqsVqscpm1KMBzBry7Y8KF91ThQf+20ng/srUZNUT6+9/qYAtZxOBw5GZ33IhRhkiV7RbqqLdBpCJdm5I/7yyL+RFRFRCTcPiocV/lRNlvwxsgCnL4gPrSvJu7zeq0Gn7qhCSfHlhTtz8HhcNLPgFDpI1WZp0i+Ppr0zVjPn4h+CuBNAB1ENE1EDxHRI0T0iLDJfQAuE9EFAN8CcD9TIsORBL++aIM5T4ebdl1zgbLOx440wGjQ4nu/494/h5PNDNjdMOg0aCozSr7vfXXKJH2TG0C5CYyxB7Z5/u8B/L0Ux5KDQCiC56/YcXt3JfJ02k23KyrQ42NHGvCjNyfwv+7ajRKjQT4jORyObPTbXNhVaYJOK32wZG9dEZ44M4XpZR/qU+wZlAx8hW8c3hhdgGsthA/uq9522w/uq0IowlQxkJnD4aSHAbsbHZXSxvtF9tVGc4pyh364+MdBDPnc2L55yEdkX10xCg1a/H6Uiz+Hk40sePxwuP2Sx/tFdlWZYNBqcFHmpC8X/w0EQhH82xU7bt+9dchHRK/V4EhTKd7knj+Hk5UM2qMre6Wu9BHJ02nRUWWWvXCEi/8G3hiJhnw+lEDIR+T61jKMzHswr1B3Pg6Hkz5E8d9VZUrbMXbXWNA365I16cvFfwPPXbLBnK/DjW2JrzN4V2sZAHDvn8PJQsYWPDDn62Dd4cD2ROiusWB5NQi7jA4kF/8N/H50ETe2lcOgS/zU7K4pgjlfhzd53J/DyTrGHF60WE0Qliqlhe7qaEip3+ZK2zE2wsU/BpvTh5kVX9LDmbUawrHmMu75czhZyJjDi9Zy6ev7Y+kUxL9vlou/IvROLAMAepqSH858fWsZJhdXMbPik9osDkf1vDI4j5+cmsy6Nudefwh21xparOkVf1OeDk1lhejjnr8y9E4sodCgXb8ES4b1uD8P/XByjL5ZF/74n8/iy09fxo1ffxnffmUErrWg0mZJwviCFwDQak1fslekW0j6ygUX/xh6J5dxsKF4R6v4OirNKDUauPhzcgqvP4TP/ctbKC7Q43uf7MGe2iJ84/lBfPTRN7Oi3fmoIzq6tUUO8a+2YGJxFR5/KO3HArj4r+NeC6Lf5sLhxuTi/SIaDeG6llK8ObqgyGAGDkduGGP4H7+8jIlFL/7v/QdxW3clHv/0UXzjvn0YsLvxUha0Ox9zeEEENJalv+1Cd0004jAgU+iHi7/AuasriDDgyA7i/SLvainDrHMNU0s87s/Jfp46O42nz83g8+9tXw97AsCHD9aitrgA330t8xseji14UVdSgHz99gs+U6W7OtrbX664Pxd/gd7JZWgIONiwc/E/UB997eVZ3uKZk91EIgx//W9DONxYgv/4nvZ3PKfTavBHNzTh9MQSzk8pM59WKsYcHrSUpz/kAwCVljyUGg2yxf25+Av0Tiyhq9oCU97OG522V5qg1ZCsSRsORwnOTa3A7lrDJ65rgFZzbf37/UcbYM7X4bsZ3O6cMYbxBW/aK31EiAjd1Rbu+ctJMBzBuasrSdf3byRfr0Wb1SRruRaHowTPX7FDryW8p7My7vOmPB0+frQBv7lkw9TSqszWSYPdtYbVQFiWZK9Id40FA3Y3QuFI2o/FxR/RVXW+YBiHG3ce8hHprrHgCg/7cLIYxhh+c9mGG9rKUVSg33S7T93QBA0R/umNCfmMk5DReaHMM80LvGLpqjYjEIpgTCgxTSdc/AGcSWFx10Z211gw5/JjweNPeV8cjhq5MuvC1JIP799dteV21UUF+NC+avxr7xSCMniyUjO2IF+Zp8h60leG0DEXfwBnJ5dQW1yA6qKClPelRI8ODkdOnr9ih4aA27vjh3xied/uKrj9IVzIwMTvmMMLo0GLSkv6GrptpMVqhEGnkSV0zMUfwIUpJw42FEuyry4FenRwOHLym8t2HG0uRVkCXS6vby0DEfD6yIIMlknLqMODZqsxrQ3dNqLXatBRaeaevxwsewOYWfFhb22RJPsrMRpQU5SPK1z8OVnIyLwbI/Me3LknsXkXxYUG7K0twuvDmSf+Yw6vbGWesdx3uA4379p+imCq5Lz4iyK9u0Ya8QeA7poiXvHDyUr+32U7AOCObeL9sdzYVo5zUytwZ1C/n7VgGLNOn2xlnrE8eH0THr65Ne3HyXnxFxdk7a6RbkRbd40FYw5P1nU4FPEFwvir/zeAV7Jg+T4nOZ6/MoeDDcWoKspP+DU3tpcjHGE4NbaURsukZXzBC8bkTfbKTc6L/5VZF2qLC1BiNEi2z+5qCyIMGJxzS7ZPtTCx4MWHv/MGvvPqKB7+517+BZBDePwhXJ514qb2xKfcAcDhxhLk6zUZFfcfc0RLLVtkLPOUGy7+M05JvX7g7auIbKv3f6FvDnf93euwu9bw7Y8fQmeVBY/8+Cx+P5o5H2rOzrk4vQLGkHRxRJ5Oi6PNZfjdsCNNlknP+HqZJxf/LSGiHxDRPBFd3uR5IqJvEdEIEV0kokNSHDdVPP4Qxhe9ksb7AaCupADmfF1WVfzMu9bw2Z+cRVO5Eb/63I344L5qPP7po2gsK8RnHu/FuavLSpvISTNin54DdclXxt3UVo5Rhxc2Z2Y0PRxfWEWlJQ+Fhp23e1E7Unn+PwTw/i2evxNAu/DzMIB/kOi4KdFvc4ExYE+ttJ6/3D065OBfz04jGGb41gMHUV8abW9bajTgxw8dQ3GBHl/7db/CFnLSzbmrK2guN+4oRHpDW7R6JVOqfiYXvWgqy16vH5BI/BljrwHYKptzHMCPWJSTAIqJKLFasTRyZUZM9krr+QNCjw6bG+EsGGgRiTD89PRVXN9ahuYNMdAKSz7+8LpG9E4uZ2wPF872MMZwfmoFB+p3th6ms8qMcpMhY+L+E4urXPwlohbAVMz9aeExRbk860K5yZCWFXzd1Rb4guH1MXCZzOsjC5he9uGBow1xnz9+oAYAcOLCrJxmKc7wnBvPXpzF3700jD9/ti+jShmTZWbFB4fbv+PFkBoN4Ya2crwxov5hR+61IBY8fjSWp3+Ai5LIFdCKt0TumncAET2MaFgIDQ3xhUZKrsy60F1TlJYVfJ1V0VDS8JwbbRWZXS7209NXUWo04H274y/nryspxJGmEjx9bgafvbVV1hWRSvHkmav4bz+/9I7HGAO+cle3Qhall/V4/w49fwA42lyKZ87PYmrJhwYZJmPtlMnF6BVsM/f8JWEaQH3M/ToA17iJjLHHGGM9jLEeqzW5crJk8YfCGJ5zS17pI9JaEX3jjMx70rJ/uZh3r+GFvjncd7gOebrNpxndc7AWI/OenFjZvBYM429eGMLBhmI89/mb0PfVO/DxYw14/M2JrO3pdP7qCvJ0mnWnZifsq41+cVycUXefn4nF6NV6Ixd/STgB4JNC1c91AJyMMZtMx47LkN2DUIRhTxri/QBQaNChtrhgfQB0pvLU2WmEIgz3H6nfcrsP7q2GXkt45vyMTJYpx09OXcWcy4//ckcHumssKDTo8F/v6IAlX4f/+cvLWTG4fCPnplawp7YIBt3OJaOjygyDVoOL0+ougRY9/6YsD/tIVer5UwBvAuggomkieoiIHiGiR4RNngMwBmAEwHcBfFaK46bClTSs7N1Ii9WIkQwW/0iE4YnTU7iupXTblY7FhQbcsqsCJy7MZkWSezNWAyH8w6sjuL61DNe3vt1/pbjQgC/e2YneyWX84lx2fQEGwxFcnnGmFPIBAINOg64aCy5Oq9zzX/CiwpzdZZ6AdNU+DzDGqhljesZYHWPs+4yxRxljjwrPM8bYnzDGWhljexljvVIcNxUuzzphztOhoTR93+5tFSaMznsz1hMcsLtxdWkV9x6qS2j7ew7WYM7lx8mxxTRbphw/enMSC54A/tP7dl3z3EcO1+NgQzH+4rl+OH3Zk/wdsLnhD0Uk6Xy7r7YIl2dcqv5MTCx60ZTFK3tFcnaF75VZF7pqLNDEmT8qFa1WE3zBMGyutbQdI52IIn59W2IdBm/rqoQpT5e1oR/3WhCP/nYUt+yy4nDjtSM/NRrC/7prNxa9ATx7MXsqn85NRRfwper5A8C+uiJ4/CFZJlXtlGiZZ3aHfIAcFf9whGHA5l4fvJIuxCqfTE36nhxbRENpIWqLExtyk6/X4uZd5XhjJDs9/6fOTmNlNYgv3H6t1y+yv64I9aUFeKk/e3oenb+6Aqs5L+H3wVbsE1YHqzX04/GH4HD7sz7ZC+So+F9dWoUvGJZN/EczUPwjEYZT40u4riW5ofaHG0sxs+KD3ZmZVztb8fLAPFqtRuzfwgMmIry3sxJvjCxgNRCS0br0cU5Y3CVFCW9bhQkFeq1qk76TQqXPxsWM2UhOiv+AUI7XWW1O63HKjAYUFegzMuk7YHfD6QviupaypF7X0xidg9w7mTntexNhLRjG6fEl3Lxr+xLk27sr4Q9FMqaVwVZ4/SGML3ixT6JhR1oNYU+tepO+YqVPIw/7ZCf9djc0BLRXpFf8iUhI+mae+Ivx/mNJin93jQUFei16J7Kr0dup8SX4QxHckoD4H2kqhTlPlxWhnyGhLXlHlXSflX11xbgy61LlUHdxRX62t3YAclT8B2wuNJUbUWDYfNGSVLRZTRlZ659svF9Er9Vgf30Rzk5ml/j/dtABg06DY83bfxkadBrc3GHFSwPzqq5qSYT0iH8R/KEIhufU97mYXPTCas6DMS+7yzyBXBV/uxtdKaxUTIbWCiMWPAGsrAZkOZ4URCIMpyeSj/eL9DSWos/mgtefHTFvAHht2IFjzaUJOwy3d1ViwePHBZWGNxJl0O5Bvl6D+hLpwiBqTvpOLORGpQ+Qg+Lv8YdwdWkVXWmO94usJ30zyPsfnHNjZTX5eL/I4aYShCMs44VPZHbFh5F5D25OYoLVrR1WaDWU8aGfoTk3dlWaJS2JbiorhDlfh4sz6kv6TuRAK2eRnBP/QXv0MjaVHiXJ0GaNfslkUrnnTuP9Iofqo0nfs1kS939tKDqBKpFkr0hxoQE9jSV4sX8uXWbJwuCcGx2V0jpKRIR9dUWq8/xXAyHMu/05scALyEHxH7DLU+kjUltSAINOg1GHehe1bGSn8X6RokI9dlWa0Jslcf/Xhh2osuRjV2Vy3Vlv66rEgN2N6eXMnHOw5A3A4fZLGu8X2VdXjAGbG2vBsOT73ikTC0JPH+75ZycDNjfMeTpJFqwkglZDaCk3Zoznv9P6/o0cbizFW1eXMz7hGQpH8LvhBdy8qzzpOvd3d1YAAF4bysyST/EqeZfEnj8A7KkpQijCVPW5mFzv5slj/llJv82FzmqzrD3n2ypMqnqTb8WIw4OV1SCOJlDVshU9jSVwr4UwNO+WyDJluDC9AvdaKKmQj0ir1YiSQj0uTKkrvJEo6aj0ERGvvAfs6nl/jAviz8M+WQhjDAN2t2zxfpFWqwlTy6uqusTdjMtCEm5/XWqLenqahMVeGR73f314EUTAjQn2N4qFiLC/vnh9EEqmMTjnRlGBHhVm6SfdNZUZkafTrC+4VAOTC6soNxlgyoEyTyDHxH962QePPyRbvF+krcIExpARIx0vz7iQr9ds28J5OxpKC1Fuysv4ev8L0ytorzChuDD5oeVAtBna0Lwbngwsex2yu9FRlZ6rZK2G0FFlVp3nnyvxfiDHxH9A5kofkVZr5pR7Xp51orvaAm2KpX1EhEMNmev1AtErxYvTTuxJobXB/vpiMKbOmvatYIylpdInls4q83oBhhqYWMiNVs4iuSX+wiVmOmKYWyE2iZpQuecfiTD0zbpSErtYumssmFj0ZmyDM7trDQsef0p9bQ4IC5oy7UvQ5lyDey2EXWn8rHRWWbDgiVYUKY1Y5pkLDd1Eckv87W40lhXKHtMrMGhRXZSv6h7mADC5tAqPPyTZaMvOKgsYA4ZUuIw/EcTOk3vrdt7HvsRoQFNZIc5fzSzxHxSTven0/NeTvsp7/2KZZ65U+gA5Jv79dhc6Zfb6RZrKjKr3/MVk7+5aacJi4ipqNSX1kuHyjBNaDaXc+vtAfXHGrXYesssg/kL4dcCmfNxfHNrOY/5ZyGog2ppW7ni/SLPVqPqE7+VZJwxajWTdTutLCmE0aFWV1EuGi9NOtFeYUm4AeKC+GHMuP2xOn0SWpZ/BOTeqLPkoKtSn7RilRgMqLXnoV4Pnn2NlnkAOif+g3Q3GgK40D3DZjJZyI5ZXg6pu8HZlxoWOKjMMOmneFhqhoqMvAz1/xhguzTixL8WSVwA40BAte82k0M+g3Z3WeL9IZ5VFHZ7/ghflprycKfMEckj8+4U32O4aZcRfvJxUq/fPGMPlWSf2SBTyEemstmDA5gJjmbXSd2bFhyVvAHslSH53VZth0GoyJukbFlbe7qpIrdw3ETqrzRiZ9yje239iYRXN5bkT7wdySPz7bE6Y83SoK5GnrcNGmq3qFv+ZFR9WVoPYLVGyV6SrygzXWgi2DBvreEmCZK9Ink6LrhoLzmWI+E8vr8IfiqA9yV5GO6GryoJAOKL45yKXunmK5Iz499vc6Kq2yNrWIZb6kkJoSL3if3kmGpqRqsxTpFMIs6mhoiMZLs44odOQZAUCB+uLcWnaiZAKp1dtZExoQtia4kK/RBArfvoVDA16/bnVzVMkJ8Q/EmEYsLlk6+EfD4NOg/rSQtWK/5XZaGWL1NVQ4pqKfhXEdZPh8owTHVVm5OulmfZ2oL4YvmAYwxnQ40lcjJjqKu9EaCk3Qa8lRYsCcrHSB8gR8b+6tApvIIxuheL9Is3l6q34uTzjRJvVJJnYiVjy9agrKVDUs0sWcWWvFMlekQP1mbPYa9ThRXGhHqXGnbW0SAaDToNWq0nRcmBxaHsTj/knDxG9n4gGiWiEiL4Y5/lPEZGDiM4LP5+R4riJIgqPUpU+ImKtvxqTn5dnXZLV92+ks8qSUeWeU0s+OH1B7K1NPd4vIi4uzIQvwTGHR5aQj0hXtbLvD9Eha+Sef3IQkRbAtwHcCaAbwANE1B1n0ycZYweEn++letxk6LO5oNVQWvqSJ0OL1QhvIKyK5eyxzLvW4HD7JVvZu5HuajPGHJ6M6GoKABdnot65FJU+IkTqa2S2GWMLXrTIGP/urDLD5lxTrAx6YiE6tD2XyjwBaTz/owBGGGNjjLEAgCcAHJdgv5LRb3OhpdwoeUgjWcSYotraPFwRvNF0hcU6qy2IMGA4Q9o8XJp2Qq8l7KqS1vvtqDKrvuzVtRaEw+1HqwxlniJiXkipL8bJxVU055jXD0gj/rUApmLuTwuPbeReIrpIRE8RUX28HRHRw0TUS0S9DodDAtOi9M26FI/3A+pt8Da03u00PVdG4n7VsJIzEQbsbrRXmJGnk9ZZEMte7S71lr2KlT7yev7Rz+agQuI/vujNqZ4+IlKIf7zayY2uza8ANDHG9gF4EcDj8XbEGHuMMdbDGOuxWpOfnBSPldUAZp1risf7AaCmODrPV21J38E5NyoteTvuWb8djWVG5Os1qljJmQhDc+6k5/UmQoeKetlsxui8fJU+IpWWPBQV6NebycmJxx+CIwfLPAFpxH8aQKwnXwdgNnYDxtgiY0wMdH8XwGEJjpsQYolhqs25pECrITSWFqou7BMVu/TlQ6KDOywZkex0rQVhc66lpbVBRwZcAY0teKDTkKyesJgPUcLzF+f25lIrZxEpxP8MgHYiaiYiA4D7AZyI3YCIqmPu3g2gX4LjJkSfSip9RJrL1dXdMxxhGJ7zpLV7IwB0VprXZ8KqmeE0tjIuKtCjpihfsfBGIow5vGgoLYReK28VeEelGUN2t+z5kFxs5SyS8n+YMRYC8DkAzyMq6j9jjF0hoq8S0d3CZp8noitEdAHA5wF8KtXjJkq/zQWrOQ/WNMwh3QnN5UZMLq4iHFFH0m9y0Qt/KJL2ATdtFSYsegNY9qq3sR3w9uyBdF0JRXsdqVf8Rx0etFjl94I7qsxw+0OYWZG382muLvACJKrzZ4w9xxjbxRhrZYx9TXjsK4yxE8LtLzHGdjPG9jPG3s0YG5DiuInQN+tSjdcPRMU/EI5gVuY3+WaI3rgc4g8AIyofZTlod6PQoEVtcXp6QHVUmTHq8CAQUl+bh3CEYWJxVdYafxGxKEDuq8PxBS8qzHkw5liZJ5DlK3wDoQhG5j2KtnXYiJhYUkvSd9DuAdHb4pwu1sVf5e0NhubcaK80Q5PiDOPN6KwyIxRhqpznPLPsQyAUUcTz36VQuafcC9rURFaL/4DdhUA4gv0SdGaUihaVif/QnBsNpYUoNKTX86ktLkC+XpMB4u9BRxq7WSpd1rgVcvb02YglX/58CGMMow4vWityL+QDZLn4i31UxL4qasBqzoPRoFWN+A/YXWlP9gLRwS4t5SZVerwiS94AFjz+tFY+tViN0GtVsk+yAAAgAElEQVRJlRU/4v9GKU9Y7oqfRW8ATl+Qe/7ZyPmpFVjNeaguylfalHWISDUjHdeCYUwsrqY93i/SWmFStecvxpvTKf56rQZtFcqUNW7H2IJ8Dd3i0VFlwahDvsEu4poGLv5ZyPmpFeyvK1ash/9mNJWpQ/zHHF6EI0y2nkdtVhNmVnzwBdTZ40eu5HdnlVmVFT+j8x5ZV/ZupLPKjGCYyfbZGBXnFsjYykJNZK34O31BjDm8ONignpCPSEu5EdPLq4pXfMgldiJtFSYwBtWGfgbtbljydahIc1lwZ5UZdpdyjcw2Y2zBq6gXLDohciV9Rx0eFOi1qLaoJzIgJ1kr/heno/F+NSV7RZqtRkRYdM6AkgzOuaHXkmyrG8WKH7WK//CcBx1V5rRfKSrdyCweYkM3JZK9Iq0VRmg1hEGZ8iHimoZ0VXapnawV/wtCsnevhAM5pEItw9wH7W60Wk2yreZsKo+OslRj3J8xhsE0t7kQEdedKDnAZCPjYkM3Bco8RfJ0WrSUG2XLh4zM526ZJ5DF4n9+yolWqxFFBXqlTbkGtXT3HLTLI3YieTotGsuMqvT8HW4/nL6gLOejwhxtZDakoi9B0RFRMuYPCBU/Miz08gXCmFnxcfHPNhhj0WSviko8YykuNKDUaFC0wZt7LYiZFZ9s8X6RVqs6K34GZaj0ESEitFeYMKKi+QZjC15oCGhQuMdNR6UZU0s+ePyhtB5nfMELxpCzNf5Alor/rHMNCx6/qur7NxKd56vch18cJC5HjX8srRXRSqeQTOV8iSKGGtLRyjke7ZVmDM3L38hsM8YcHtSVFEo+wyBZRGck3aEfpdc0qIGsFP/zV9W3uGsjSpd7Dtnl83RjabOaEAwzxZPdGxme86DcZECZSZ4GgO0VJqysBrGokkZ34wteVbQ1Focupbv996gj2tZEDX+zUmSl+F+YXoFBq1lfSq9GWqxGzLn88Kb58nYzhuaiZW51JelpYLYZau3xMzzvTnt/o1jahSsMNbS5ZoypRvxriwtgyU//oPtRhxd1JQWKj3ZVkqwU//NTK+iuscCgU++ft570XVTG+x+ed6O90iR7mVurCrt7MsYwMu+RV/wroldcavgSnHf7sRoIK1rpI0JE6Kq2rM/hSBejOV7pA2Sh+IfCEVyadqo65AMoX+45KMyplRtLvh6VljyMziu/wllkwROAay2ENplHF5rzdKoYar/e0K1cHWLYXROdeZCumReRCMPYAhf/rBP/ebcfVnOe+sW/PFpVoUS5p3M1iHm3X7bk5kbaKkyq8vxF71vOZf5EhLZKE4bnlQ/7iA5Iswo8fyA6ctUXDKftqnjW6cNaMMLFX2kDpKamuACv/dd34/iBGqVN2ZJCgw7VRfmKlHsOzSuT7BVps5owOu9RTaWL+EUkZ9gHiCZ91RD2GXd4kafTqKbNgZj07ZtNT+hnvaePSr7slCLrxF9Ebc3c4hEt91RA/IUkY7tCnn+L1QSPPwSH26/I8TcyOu+B0aBFlczit6vSjAVPAEsKV/yIyV61tDlorzBDr6W0xf1HFbjSUyNZK/6ZQJNCw9yH7G4Y0ziqcDvEy221hH5GHR60VphkdxjUUvk0tuBVRbJXxKCLtr1On+fvQVGBHmUKta5WC1z8FaSl3Ijl1aDsQ82H5jxor0x/A7PNEIVmzKGOpO/IvEfWZK9IuxB2UzLuHwxHcHVpVRVlnrF0p7HiZ3guWtmVCdGBdMLFX0HED9y4zOWew/NuxZK9AFBlyUehQauKHj8efwg255oiIYCaonwYDVpFK36mllYRjjA0q6TSR6S7xgKH2y95aDASYeizudBdrd41QHLBxV9BmhRo8BYdVRhQLNkLREc6NpcbVeH5jym4zJ+I0FahbMXPeqWPCj1/QPqVvtPL0b5BYlI5l+HiryANpYXQaUhWD/jtZK9y4g9ExVYNnr8Yb5e70kekrcKsqOc/ptLKF1H8pQ799Nmc79h/LsPFX0H0Wg0aywplTfitT+9SWPxbrEbMrPiwFlR2pOPIvAc6DaFRoW6W7ZUmzLv9cK4GFTn+2IIXJYV6FBeqK/lZVKhHbXGB5EnfvlkXNCTf9Do1I4n4E9H7iWiQiEaI6Itxns8joieF508RUZMUx80G2mSu9R6ac8Ocr0OlRZ4GZpvRao2OdFR6oM2ow4PGskLZBtpsRMy9jDiUCf2ML3hUF/IRSUebhz6bC61WU0739BFJ+R1PRFoA3wZwJ4BuAA8QUfeGzR4CsMwYawPwTQBfT/W42UJbhQmTi6sIytTieGjOg10KVvqIqKXiR+6ePhsRW2woFfqJ1virK9kr0l1jwZjDA19AuqvDvlkXj/cLSOHuHAUwwhgbY4wFADwB4PiGbY4DeFy4/RSA95LS6qMS2ipMCEUYJmWo+GGMYXhO2UofEbGPjJJx/2A4gsnFVUXFv7a4APl6DYYUEH+PP4Q5l19VNf6xdFdbEGHAgEQzfZe9Acw613i8X0AK8a8FMBVzf1p4LO42jLEQACeAso07IqKHiaiXiHodDocEpqmfNqt83R0XPAEsrwYVaei2kQJhkdmYguI/uehFKMIU7fGi0ShX8TOh0kofEXH+9sVppyT7EyuHuOcfRQrxj+fBb2zaksg2YIw9xhjrYYz1WK1WCUxTP+IYOTku+9eTvSpJdrVYjYqOshwROosq6fkDwC6FKn6UrnTajpqifFRa8vDW1WVJ9ifmD7q45w9AGvGfBlAfc78OwOxm2xCRDkARgCUJjp3xFBp0qC0ukKXVgTgaT6mePhtpVbjBm1pG+bVXmmF3rcHpk7fiZ9ThgYagWKXTdhARDjeWSCf+sy5UWvJQLtO0NrUjhfifAdBORM1EZABwP4ATG7Y5AeBB4fZ9AF5mamnpqAJaZar4GbC7UG4yoMKsju6NrVYjvIEw5hVq8DYy70F1UT6MeTpFji/SrlCPn2ilk1Hxub1bcaihBFNLPsy711LeF1/Z+05SFn8hhv85AM8D6AfwM8bYFSL6KhHdLWz2fQBlRDQC4AsArikHzWXaK6ILniJpGl4hMmB3q2q0ZYvgcY8q1NhM6UofEXG19bDMIx1H5j2qW9y1kYMNJQCAtyZXUtqPPxTGyLyHx/tjkKS4mTH2HGNsF2OslTH2NeGxrzDGTgi31xhjH2GMtTHGjjLGxqQ4brbQVmHCWjCCmRVf2o4RCkcwaHejUyXxfuDtcMuoAnH/SIRFu3mqYKBHdJasvBU/oXAEEwurqm9rvKfWAoNWk3LoZ3jOg1CEobu6SCLLMh++wlcFtMkw13ZicRX+UERVya5KSx6MBq0inr/NtYbVQFgV+Q8lKn6ml30IhNU/zSpPp8WeWgvemkxN/Pt4pc81cPFXAW0yhD/EWunOavV4/kSEFqtJkYofMcSiRCvneMhd8bM+ulIlf/9WHGoowcUZJwKhnS+E7Jt1odCgRWOpOpPbSsDFXwWUGA0oMxrSmvDrt7mgEzxMNdFiNSri+autzFHuih+x0kktX35bcbixBIFQBFdmd17vf3nGic4qs2qmlakBLv4qobXChOF0ev42N1qtJtVVdrRaTZh1+iRdwp8Iow4PSo0GlKmk7O/tih95Qj+jDg/KTXkoKtTLcrxUONQoJH2v7izpuxoI4cL0Co42X7OuNKfh4q8SxAZv6aqAHbC7VRXyEWmriDZ4k7vNw/CcMtO7NuPtih95zkMmVPqIVFryUVtcsOOkb+/EMoJhhutbufjHwsVfJbRZTXD6gljwSD/S0bkaxMyKT1VlniJKzLFljGHE4UGbCpK9InJW/DDGMOrwqibklQiHGkt2nPT9/egi9FpCT1OJxFZlNlz8VUI6RVBM9nap0PNvKjNCqyFZxX/RG8DKalBVnr+cFT+L3gCcvmBGJHtFDjUUw+Zcg82ZfDn0m6MLOFhfgkKDsov51AYXf5XQXpm+cs8Boa2Dmso8RQy66EAbOcsc1ZbsFZGr4me90kdlf/9WHBIWe52ZSM77d/qCuDTjxLt4yOcauPirhCpLPsx5OgzZpRfBAbsLJYV6VJjVkdzcSLvMA23ExLoaavxjkaviZ73SJ4PEf09tEUqNBrzYN5fU606PLyHCwMU/Dlz8VQIRoavaklI522b02dzoqrYoPsBlM9oqTJhYXE2pjjsZRuc9MOXpUGVRR48jEbkqfkbmPSjQa1Gtsr9/K7Qawm1dFXhlYD6p98nvRxeQp9PgYENxGq3LTLj4q4jdtRb029wIS9jjJxxhGFJZT5+NtFeYEZZpoA3wdqWL2r4MxYqfdCd9Rx1etFiNGVfzfsfuKrj9Ifx+dCHh17w5uogjTaWqK3FWA1z8VcTumiL4gmFJ59peXVqFLxhWZZmniBh+SOc6h1iG591oU8FAm42IFT/pjvuPqqShXbLc0FYOo0GL568kFvpZ8PgxYHfzkM8mcPFXEbuFviNShn7WpxepMNkr0mo1gUieck/XWhBzLr8qxU+jIbRXmCUbWxiP1UAIMyu+jKr0EcnXa3FrRwVe6JtL6Or45NgiAPD6/k3g4q8i2ipMMOg0uDIr3Yf/8oxTlW0dYhFHOsrh+Y+qtNJHpLvagn6bK22L/cYc0avKTBR/ALhjTxUWPH6cS2DB15ujizDl6bC3lnfyjAcXfxWh12rQWWWW1PM/P7WCrmoL8vXqjnnKVfGzXumjUvHvqjZjeTV6dZIOxGluu1RW6ZQo7+6wwqDV4Pkr9i23C4YjeHlgHseaS6HTcpmLBz8rKmN3jQWXZ6Tx/MIRhgtTKxlR6dAmDLSRMtkdj9F5Dww6DepV2t2xuybqpfbZpK/6AqJlvwadRrVD27fDnK/H9W1leP7K3JafkWcvzsLmXMMDRxtktC6z4OKvMrpriuD0BSUZ7DIy74E3EMaBevWLf3uFGYFQBNPLq2k9zsi8By3l0VXFakRMzPfb0lPu2W9zo6PSnNHe8B27q3B1aXXTc8QYwz/+dgztFSa8p7NCZusyh8x9B2Qpe9aTvqnH/cW4aCaIv7jaNN2VLkPzbtXG+wHAkq9HfWnB+vARqRmwu1Q1zW0n3N5dCZ2G8N3fxR8I+OqQAwN2N/74ltaMK2eVEy7+KqOzygINAVdmUr/sPz+1gqICfUZc4stR7uleC2JqyafKNhexdFVZ0C9h0l9k3r2GBU9A9X//dpSb8vDZW1vx9LkZvDxwbdnno6+OorooH3fvr1HAusyBi7/KKDBo0Wo1SeL5n59awYH6YtUtZopHUUG0/UQ6k75Dc2KPI3V7vt01FowverEaCEm63wEhTKLmNR+J8rn3tKOj0owv/eLSO9phnLu6jFPjS3joxmYYdFzetoKfHRWyu8aSsvh7/CEMzrkzIuQj0l5pSmtrAzFGrObVzkC0AR9jbzfkk4pMWPORKAadBt/4yD443H587dd9iEQYzl1dxl/8ZgCWfB3u54nebeE9TlXIntoi/PL8LBY8fpTvcNLUxekVMIaMqPQRabOa8NTZaTDG0nK1MmB3wZKvQ3WRunvaiOLcb3Otd7OUgn6bC9VF+SguNEi2TyXZV1eMh29uxaO/HcXLA/NY8ASgIeArH+qGKY9L23bwM6RCumOSvrfssu5oH+enoiPvMsnzb6s0wxsIY2bFh7oS6UsxB2xudKq4wZ1IXUkBzPk69Ekc9x+wuzM+2buRP7utHcNzbuQbtLi9qxK3dliz5sst3XDxVyG7q6O13ldmnTsW/3NXV9BcbsyoD0J3TJmj1OIfiTAM2N2491CtpPtNB2KH134JK378oTBG5j1ZV/qYr9fi+586orQZGUlKMX8iKiWiF4hoWPgd9xqViMJEdF74OZHKMXOBokI9GssKdzy2jjGG81MrOJhBXj8AdFRZQARJRU9kZsUHjz+EzgyJd3dXWzBgdyMi0aK30XkvQhGWMX8/J/2kmvD9IoCXGGPtAF4S7sfDxxg7IPzcneIxc4LrW8txcmwJoXDyPe5nVnxwuP04kEHxfgAw5enQVGaUPNwBvP2Fkilhj+5qC1YDYUwuSbPo7e1kb2b8/Zz0k6r4HwfwuHD7cQD3pLg/jsCNbeXw+EO4MJ18vX8mxvtFuqstaVngNGB3g+jtnvlqpysm6SsFYluHpjL1r/ngyEOq4l/JGLMBgPB7s4BiPhH1EtFJIuJfEAlwfWsZiIA3RhIfXCFyenwJ+XqN6ksa49FdY8HVpVW41qQdZThgd6GxtBDGDKkCaa80Qashya6CsqGtA0datn0nENGLRHQ5zs/xJI7TwBjrAfBxAH9LRK2bHOth4Uui1+FwJLH77KPEaMCemiK8Ppyc+DPG8FL/PG5ss2bkIhexzHFA4t42AzZ1TzPbSL5ei1arUZIOr4wx9Ntcql/cxpGXbdWBMXYbY2xPnJ9nAMwRUTUACL/nN9nHrPB7DMCrAA5ust1jjLEexliP1bqzKpds4oa2crx1dRlef+IrPQfsbsys+HB7d2ZWdYhlrn0StrX2BcIYX/Rm3MrWA/XFODe1knLS1+HxY9EbyKgvP076SdU1PAHgQeH2gwCe2bgBEZUQUZ5wuxzADQD6UjxuTnBjWzlCEYbT40sJv+bFvmivk3dnaElfhTkPZUaDpHH/oTk3GFP/yt6N9DSVYmU1iLGF1FpeiKGjTPvy46SXVMX/LwHcTkTDAG4X7oOIeojoe8I2XQB6iegCgFcA/CVjjIt/AvQ0lSBPp8HrScT9X+yfw4H6YlSY1b2KdTOICN010iZ9xbGImRb26GmMVk6fmdhZya/IW1dXoCHwiVacd5CS+DPGFhlj72WMtQu/l4THexljnxFu/54xtpcxtl/4/X0pDM8F8vVaHGkqTTjuP+daw4VpJ27vrkyzZemlu8aCIbsHwR2Uucaj3+ZGoUGL+jSsGk4nzeVGlBkN6E1R/M+ML6G7xgJzvl4iyzjZQOZlBHOMG9rKMTjnxrx7bdttX+qPplxu68pw8a+2IBCOYNQhTYfPAbsLHVXmjOvtTkQ43FiC3snEw34bCYQiODe1jCNNpRJaxskGuPirnJvaywEAvx9Z3Hbbl/rnUFdSkLHzWUV2ryd9Uw/9RCIMV2ZdGdvJ8khTKSYXVxP68o/H5Vkn1oIRHOXiz9kAF3+V011tQXGhHi8PxC2kWmc1EMLrIwu4ratS9Y3LtqO53IR8vUYS8R9xeOBeC+GghN0x5eRwU9TuszsM/ZwRigV6uPhzNsDFX+VoNIR7DtTiuUs2TG2x1P/14QX4Q5GMj/cDgFZD6KiSJukr9kc63JiZ4r+npgh5Os2Ok75nJpbQUm6E1byz1uCc7IWLfwbwyC2t0BDhO6+ObrrNk2emYM7XZU1sV2zzwFhqNe5nJ5dRajSgqSyzkr0iBp0G++uLcXYHcf9IhOHMBI/3c+LDxT8DqCrKx8eO1OOps1OYWfFd8/yLfXN4aWAen721LSNX9caju8aCldUgZp07i3WLvHV1GYcaMmOU5WYcaSrB5VlX0mMdh+c9cPqCONLMxZ9zLdmhFDnAI7dGO2I8usH79wXC+N+/uoK2ChMeurFZCdPSgtiOundi55UuK6sBjDq8GRvvF+lpLEU4wtYb9iXKaeHc8WQvJx5c/DOE2uIC3He4Hk+emYI9xhv+zqsjmF724c+P78karx+IdrU05+twcmzn4n/ualQsMzXeL3KooQRESLre/8z4EioteagvLUiTZZxMJnvUIgf47K2tiDCGzz9xDt9/fRy/vmjDP/52DB8+WIt3tZYpbZ6kaDWEI02lODW+fYnrZpydXIZWQ9hXl9krW4sK9dhVYcaZJK6CGGM4M7GEI02lGR3y4qQPLv4ZRH1pIf7LHR0Yc3jw58/24U/+5S3k6TT40gc6lTYtLRxrLsWYw7vjGve3ri6ju9qCQkNmtHHeipt3lePk2CJWVgMJbT+97IPNuYajPN7P2YTM/1TkGH98Syv++JZWONx+9NtcsJrzMraPz3Yca4lezZweX8KH9tUk9dpQOILzUyv4yOG6dJgmO8cP1OK7vxvHc5fs+Pixhm23f3MsesXEK304m8E9/wzFas7Dzbus6xOfspE9NRYYDVqc2kHcf3DOjdVAGIcyPN4vsrvGgharEc+cn0lo+5+fnUZjWSE6MmRyGUd+uPhzVItOq8HhHcb9xcVdhzK80keEKLrY79T4EmbjlPvGMrHgxanxJXy0pz7j+hlx5IOLP0fVHGsuxdCcB0vexGLdIm9dXUGFOQ91JdlT6XL3/mjo68SF2S23+1nvFDQE3JclIS9OeuDiz1E117VEY9ank/T+eyeXhBLJ7PF8m8qNOFBfjGfOby7+oXAET52dxrs7KlBpyc5cEEcauPhzVM3e2mLk6zVJ1fsPzbkxteTD9W3ZVf4KAPccqEG/zYWhufgzjl8ddGDe7cdHj9TLbBkn0+Diz1E1Bp0GhxtLcHIscc//2Ys2aAh4/56qNFqmDB/cVwOthjZN/D7ZO4VyUx7ek6FjPDnywcWfo3qONZdhcM6dUI07YwzPXpzFseayrCyBtZrzcENbOZ48M4Xp5Xd2eZ13reHlgXnce7gWei3/aHO2hr9DOKrnhrYyMAa8IAyn34oBuxtjDi8+uK9aBsuU4csf6EIgFMEnv38aix4/AMDpC+KLv7iEcIThoz085MPZHi7+HNVzqKEErVYj/uX01W23ffbiLDQE3JmFIR+Rjiozvv+pI5hZ8eGPfngGp8YWcdffvY7Xhhz4P3fvRqs1sye5ceSBiz9H9RAR/vBYI85dXcGVWeem2zHG8OuLNlzfWo4yU3YPLznSVIrv/OEhXJl14WOPnUQoHMHPHnkXHry+SWnTOBkCF39ORnDvoTrk6TT4yanNvf8rsy5MLK7iQ1kc8onlvV2V+Nb9B/HRnjo8+/mbsmZBG0ceuPhzMoKiQj3u2l+DZ87NwOOPP9Tk2Ys26DSEO3Znb8hnIx/cV42/um8/So0GpU3hZBhc/DkZwyeua4Q3EMYvz11b5hgMR/DsxVnc0FaOEi6EHM62pCT+RPQRIrpCRBEi6tliu/cT0SARjRDRF1M5Jid32V9XhN01Fvz45OQ1s33//Nk+TC/7Eup4yeFwUvf8LwP4AwCvbbYBEWkBfBvAnQC6ATxARN0pHpeTgxARPnFdIwbsbnz/1RFEvvENoLwcZ//0y/jxG2P49zc151TIh8NJhZT6+TPG+gFs1z/lKIARxtiYsO0TAI4D6Evl2Jzc5MMHa3HupdN41/3vR2BlFvmBNXT9w1/j5epG1D/0K6XN43AyBjli/rUApmLuTwuPcThJk6/X4uvf/Cy6FiaQH4hO+CoM+tE4PQLtTTcqbB2HkzlsK/5E9CIRXY7zczzBY8S7LGBxHgMRPUxEvUTU63A4Etw9J9eg3buhiUTe+VgkAuzZo5BFHE7msW3YhzF2W4rHmAYQu968DkDcnrSMsccAPAYAPT09cb8gOBw89BDQ2wt4PG8/ZjIBn/60cjZxOBmGHGGfMwDaiaiZiAwA7gdwQobjcrKVu+4CdBv8Fp0u+jiHw0mIVEs9P0xE0wDeBeDXRPS88HgNET0HAIyxEIDPAXgeQD+AnzHGrqRmNienKSoClpcBxt7+WV6OPs7hcBIi1WqfpwE8HefxWQAfiLn/HIDnUjkWh8PhcKSDr/DlcDicHISLP4fD4eQgXPw5HA4nB+Hiz+FwODkIF38Oh8PJQWhjd0S1QEQOAJMp7KIcwIJE5kgJtys5uF3Jwe1Kjmy0q5ExZt1uI9WKf6oQUS9jbNM200rB7UoObldycLuSI5ft4mEfDofDyUG4+HM4HE4Oks3i/5jSBmwCtys5uF3Jwe1Kjpy1K2tj/hwOh8PZnGz2/DkcDoezCRkt/qkOkBfaTJ8iomEielJoOS2FXaVE9IKw3xeIqCTONu8movMxP2tEdI/w3A+JaDzmuQNy2SVsF4459omYx5U8XweI6E3h/32RiD4W85xk52uz90rM83nC3z4inIummOe+JDw+SER37NSGHdr1BSLqE87NS0TUGPNc3P+njLZ9iogcMTZ8Jua5B4X/+zARPSijTd+MsWeIiFZinkvb+SKiHxDRPBFd3uR5IqJvCXZfJKJDMc9Je64YYxn7A6ALQAeAVwH0bLKNFsAogBYABgAXAHQLz/0MwP3C7UcB/AeJ7PorAF8Ubn8RwNe32b4UwBKAQuH+DwHcl4bzlZBdADybPK7Y+QKwC0C7cLsGgA1AsZTna6v3Ssw2nwXwqHD7fgBPCre7he3zADQL+9FKdH4SsevdMe+f/yDatdX/U0bbPgXg7+O8thTAmPC7RLhdIodNG7b/jwB+INP5uhnAIQCXN3n+AwB+g+gExOsAnErXucpoz58x1s8YG9xms/UB8oyxAIAnABwnIgLwHgBPCds9DuAeiUw7Luwv0f3eB+A3jLFViY6/GcnatY7S54sxNsQYGxZuzwKYB7DtQpYkifte2cLWpwC8Vzg3xwE8wRjzM8bGAYwI+5PFLsbYKzHvn5OITsyTg0TO2WbcAeAFxtgSY2wZwAsA3q+ATQ8A+KkEx90WxthriDp6m3EcwI9YlJMAiomoGmk4Vxkt/gmy2QD5MgArLDpsJvZxKahkjNkAQPhdsc329+PaN9/XhMu+bxJRnsx25VN0lvJJMRQFFZ0vIjqKqEc3GvOwFOdrs/dK3G2Ec+FE9Nwk8tqdkuy+H0LUexSJ9/+UikRtu1f4/zxFROJY13Sds4T3K4THmgG8HPNwOs/Xdmxmu+TnKqVhLnJARC8CqIrz1JcZY88ksos4j7EtHk/ZrkT3IeynGsBeRCediXwJgB1RgXsMwH8D8FUZ7WpgjM0SUQuAl4noEgBXnO2UOl//DOBBxpg4xX3H52vj7uM8tvFvTMv7aRsS3jcRfQJAD4BbYh6+5v/JGBuN9/o02fYrAD9ljPmJ6BFEr5zek+Br02WTyP0AnmKMhWMeS+f52g7Z3l+qF3+WvgHyC4heUi7C1okAAAJtSURBVOkED27TwfLJ2kVEc0RUzRizCWI1v8WuPgrgacZYMGbfNuGmn4j+CcB/ltMuIawCxtgYEb0K4CCAn0Ph80VEFgC/BvA/hEticd87Pl8b2Oy9Em+baSLSAShC9DI+kdfulIT2TUS3IfplegtjzC8+vsn/Uyox29Y2xthizN3vAvh6zGtv3fDaV+WwKYb7AfxJ7ANpPl/bsZntkp+rXAj7xB0gz6JZlFcQjbcDwIMAErmSSIQTwv4S2e818UZBAMU4+z0A4lYGpMMuIioRwyZEVA7gBgB9Sp8v4X/3NKLx0H/d8JxU5yvue2ULW+8D8LJwbk4AuJ+i1UDNANoBnN6hHUnbRUQHAfwjgLsZY/Mxj8f9f0pkV6K2VcfcvRvRWd5A9Gr3fYKNJQDeh3deAafNJsGuDkSTp2/GPJbu87UdJwB8Uqj6uQ6AU3BupD9X6cpqy/ED4MOIfiP6AcwBeF54vAbAczHbfQDAEKLf3l+OebwF0Q/oCIB/BZAnkV1lAF4CMCz8LhUe7wHwvZjtmgDMANBseP3LAC4hKmI/BmCSyy4A1wvHviD8fkgN5wvAJwAEAZyP+Tkg9fmK915BNIR0t3A7X/jbR4Rz0RLz2i8LrxsEcKfE7/Xt7HpR+AyI5+bEdv9PGW37CwBXBBteAdAZ89pPC+dyBMAfyWWTcP9/A/jLDa9L6/lC1NGzCe/laUTzM48AeER4ngB8W7D7EmKqGKU+V3yFL4fD4eQguRD24XA4HM4GuPhzOBxODsLFn8PhcHIQLv4cDoeTg3Dx53A4nByEiz+Hw+HkIFz8ORwOJwfh4s/hcDg5yP8HT1oyIIqxYaAAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = np.linspace(-1,1, 100)\n", "plt.plot(x, non_convex(x))\n", "plt.plot(ret.x, ret.fun, 'rp')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Basin-Hopping\n", "====\n", "\n", "**Type:** Non-convex wrapper to minimize\n", "\n", "**Discrete/Continuous:** Continuous\n", "\n", "**Dimensions:** N\n", "\n", "**Derivative:** optional\n", "\n", "**Convex:** not required\n", "\n", "**Python:** `basinhopping`\n", "\n", "**Notes:** Pass `minimize` arguments with a `minimizer_kwargs=min_args`, where `min_args` is a dictionary of arguments to the `minimize` function." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Bounded Optimization\n", "====\n", "\n", "Often we want to restrict the domain of our objective function. This is done differently for root finding and minimization. There is no good method for bounded root finding in N-dimensions implemented in scipy." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "1D Root finding with bounds\n", "====" ] }, { "cell_type": "code", "execution_count": 103, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "0.0" ] }, "execution_count": 103, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scipy.optimize.brentq(lambda x: np.sin(x), a=-pi / 2., b = pi / 2)\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Brent's Method\n", "====\n", "\n", "**Type:** Bounded Root-finding\n", "\n", "**Discrete/Continuous:** Continuous\n", "\n", "**Dimensions:** 1\n", "\n", "**Derivative:** No\n", "\n", "**Convex:** yes\n", "\n", "**Python:** `brentq`\n", "\n", "**Notes:** a and b are two points on the function such that $b > a$ and the signs of $f(a)$ and $f(b)$ are opposite." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Let's try with $\\sin(x)$" ] }, { "cell_type": "code", "execution_count": 104, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "ename": "ValueError", "evalue": "f(a) and f(b) must have different signs", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mscipy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0moptimize\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mbrentq\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;32mlambda\u001b[0m \u001b[0mx\u001b[0m\u001b[1;33m:\u001b[0m \u001b[0mnp\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msin\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0ma\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m0.25\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mb\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;36m0.5\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[1;32m/home/whitead/.local/lib/python3.4/site-packages/scipy/optimize/zeros.py\u001b[0m in \u001b[0;36mbrentq\u001b[1;34m(f, a, b, args, xtol, rtol, maxiter, full_output, disp)\u001b[0m\n\u001b[0;32m 436\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mrtol\u001b[0m \u001b[1;33m<\u001b[0m \u001b[0m_rtol\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 437\u001b[0m \u001b[1;32mraise\u001b[0m \u001b[0mValueError\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"rtol too small (%g < %g)\"\u001b[0m \u001b[1;33m%\u001b[0m \u001b[1;33m(\u001b[0m\u001b[0mrtol\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0m_rtol\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 438\u001b[1;33m \u001b[0mr\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0m_zeros\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_brentq\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mf\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mb\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mxtol\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mrtol\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mmaxiter\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mfull_output\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mdisp\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 439\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mresults_c\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfull_output\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mr\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 440\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;31mValueError\u001b[0m: f(a) and f(b) must have different signs" ] } ], "source": [ "scipy.optimize.brentq(lambda x: np.sin(x), a=0.25, b = 0.5)\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Must have different signs!" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "0.0" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scipy.optimize.brentq(lambda x: np.sin(x), a=-0.5, b = 0.5)\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Reaction equilibrium example\n", "====\n", "\n", "Consider the reaction:\n", "\n", "HA + H$_2$O $\\rightarrow$ H$_3$O$^+$ + A$^{-1}$\n", "\n", "Let's say that $k=32.5$. If we add 1 M of weak acid, then what is the equilibrium concentration?\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "$$ \\frac{[H+][A-]}{[HA]} = \\frac{x\\times x}{1 - x} = 32.5$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "$$\\frac{x^2}{1-x} - 32.5 = 0$$" ] }, { "cell_type": "code", "execution_count": 107, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ " fjac: array([[ 1.]])\n", " fun: array([ 0.])\n", " message: 'The solution converged.'\n", " nfev: 8\n", " qtf: array([ -1.22213351e-12])\n", " r: array([-0.99915843])\n", " status: 1\n", " success: True\n", " x: array([-33.4709901])" ] }, "execution_count": 107, "metadata": {}, "output_type": "execute_result" } ], "source": [ "k = 32.5\n", "\n", "def Q(x):\n", " return x ** 2 / (1 - x)\n", "def obj(x):\n", " return Q(x) - k\n", "\n", "scipy.optimize.root(obj, x0=0)" ] }, { "cell_type": "code", "execution_count": 108, "metadata": { "scrolled": true, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "ename": "ZeroDivisionError", "evalue": "float division by zero", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mZeroDivisionError\u001b[0m Traceback (most recent call last)", "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mscipy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0moptimize\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mbrentq\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mobj\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0ma\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mb\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[1;32m/home/whitead/.local/lib/python3.4/site-packages/scipy/optimize/zeros.py\u001b[0m in \u001b[0;36mbrentq\u001b[1;34m(f, a, b, args, xtol, rtol, maxiter, full_output, disp)\u001b[0m\n\u001b[0;32m 436\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mrtol\u001b[0m \u001b[1;33m<\u001b[0m \u001b[0m_rtol\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 437\u001b[0m \u001b[1;32mraise\u001b[0m \u001b[0mValueError\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"rtol too small (%g < %g)\"\u001b[0m \u001b[1;33m%\u001b[0m \u001b[1;33m(\u001b[0m\u001b[0mrtol\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0m_rtol\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 438\u001b[1;33m \u001b[0mr\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0m_zeros\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_brentq\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mf\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mb\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mxtol\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mrtol\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mmaxiter\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mfull_output\u001b[0m\u001b[1;33m,\u001b[0m\u001b[0mdisp\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 439\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mresults_c\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mfull_output\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mr\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 440\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32m\u001b[0m in \u001b[0;36mobj\u001b[1;34m(x)\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mx\u001b[0m \u001b[1;33m**\u001b[0m \u001b[1;36m2\u001b[0m \u001b[1;33m/\u001b[0m \u001b[1;33m(\u001b[0m\u001b[1;36m1\u001b[0m \u001b[1;33m-\u001b[0m \u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mobj\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mQ\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;33m-\u001b[0m \u001b[0mk\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 7\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 8\u001b[0m \u001b[0mscipy\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0moptimize\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mroot\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mobj\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mx0\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32m\u001b[0m in \u001b[0;36mQ\u001b[1;34m(x)\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mQ\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 4\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mx\u001b[0m \u001b[1;33m**\u001b[0m \u001b[1;36m2\u001b[0m \u001b[1;33m/\u001b[0m \u001b[1;33m(\u001b[0m\u001b[1;36m1\u001b[0m \u001b[1;33m-\u001b[0m \u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mobj\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mQ\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;33m-\u001b[0m \u001b[0mk\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;31mZeroDivisionError\u001b[0m: float division by zero" ] } ], "source": [ "scipy.optimize.brentq(obj, a=0, b=1)" ] }, { "cell_type": "code", "execution_count": 109, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "0.9709900992940665" ] }, "execution_count": 109, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scipy.optimize.brentq(obj, a=0, b=1 - 10**-9)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "So the equilibrium concentration of the acid is $1 - x = 0.03\\textrm{M}$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "1D Minimization with bounds\n", "====" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's try *minimization* with $\\sin x$ bound on the interval $[-\\pi, \\pi]$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Sequential Least SQuares Programming (SLSQP)\n", "====\n", "\n", "**Type:** Bounded or Bounded and Constrained Minimization\n", "\n", "**Discrete/Continuous:** Continuous\n", "\n", "**Dimensions:** N\n", "\n", "**Derivative:** optional\n", "\n", "**Convex:** yes\n", "\n", "**Python:** `minimize` with bounds argument\n", "\n", "**Notes:** bounds look like `bounds=[(min_1, max_1), (min_2, max_2), ...]`. One for each dimension" ] }, { "cell_type": "code", "execution_count": 105, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ " fun: array([-1.])\n", " hess_inv: <1x1 LbfgsInvHessProduct with dtype=float64>\n", " jac: array([ 0.])\n", " message: b'CONVERGENCE: NORM_OF_PROJECTED_GRADIENT_<=_PGTOL'\n", " nfev: 12\n", " nit: 4\n", " status: 0\n", " success: True\n", " x: array([-1.57079634])" ] }, "execution_count": 105, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scipy.optimize.minimize(lambda x: np.sin(x), x0=[0], bounds=[(-pi, pi)])" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "2D Minimization with bounds\n", "====" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Minimzie $\\sin x\\cos y$ to be on interval $[-\\pi, \\pi]$ for both $x$ and $y$" ] }, { "cell_type": "code", "execution_count": 106, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ " fun: -1.0\n", " hess_inv: <2x2 LbfgsInvHessProduct with dtype=float64>\n", " jac: array([ 0., 0.])\n", " message: b'CONVERGENCE: NORM_OF_PROJECTED_GRADIENT_<=_PGTOL'\n", " nfev: 18\n", " nit: 4\n", " status: 0\n", " success: True\n", " x: array([-1.57079634, 0. ])" ] }, "execution_count": 106, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scipy.optimize.minimize(lambda x: np.sin(x[0]) * np.cos(x[1]), x0=[0, 0], bounds=[(-pi, pi), (-pi, pi)])" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Bounded Minimization Example\n", "====\n", "\n", "The entropy of a discrete probability distribution is given by:\n", "\n", "$$S = -\\sum_Q p_i \\ln p_i$$\n", "\n", "where the sum is over the sample space of the distribution. Find the maximum entropy binomial distribution $p$ for $N = 5$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "We're saying we know all but one parameter, $p$, so we'll find a $p$ such that entropy is maximized. This is a common technique in statistical learning, machine learning, and statistical mechanics. Much of my own research uses this idea of solving underdetermined problems by maximizing entropy." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 0.32768 0.4096 0.2048 ]\n" ] } ], "source": [ "from scipy.special import comb\n", "import numpy as np\n", "\n", "#P(n)\n", "def binomial(n, p, N):\n", " return comb(N, n) * (1 - p) ** (N - n) * p**n\n", "\n", "#Make sure this function works with numpy arrays\n", "test = np.arange(3)\n", "print(binomial(test, 0.2, 5))" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "-1.2430241623118781" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#We need to use negative entropy, so it's a minimization problem\n", "def negative_entropy(x):\n", " p = x\n", " N = 5\n", " ps = binomial(np.arange(N + 1), p, N)\n", " return np.sum(ps * np.log(ps))\n", "negative_entropy(0.2)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ " fun: -1.5236708720427921\n", " hess_inv: <1x1 LbfgsInvHessProduct with dtype=float64>\n", " jac: array([ 4.44089210e-08])\n", " message: b'CONVERGENCE: NORM_OF_PROJECTED_GRADIENT_<=_PGTOL'\n", " nfev: 2\n", " nit: 0\n", " status: 0\n", " success: True\n", " x: array([ 0.5])" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scipy.optimize.minimize(negative_entropy, x0=0.5, bounds=[(10**-9, 1 - 10**-9)])" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "np_negative_entropy = np.frompyfunc(negative_entropy, 1, 1)\n", "x = np.linspace(0.01, 0.99, 25)\n", "plt.plot(x, np_negative_entropy(x))\n", "plt.xlabel('$p$')\n", "plt.ylabel('S')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "So each $p$ value corresponds to an entire binomial distribution. Let's see how to plot each of them" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.cm as cm #import some colors\n", "\n", "#need this to color based on entropy. It converts entropy to a number between 0 and 1\n", "def entropy_to_01(x):\n", " return (x - 0.1) / (1.5 - 0.1)\n", "\n", "color_grad = cm.jet #my color scheme\n", "n = np.linspace(0, 5, 6)\n", "#plot the binomial for different ps, but colored by their entropy\n", "for pi in np.linspace(0.01,0.99,25):\n", " plt.plot(n, binomial(n, pi, 5), lw=1.5, color=color_grad(entropy_to_01(-negative_entropy(pi))))\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Constrained Minimization\n", "====\n", "\n", "Constraints are much more general than bounds. We can use arbitrary numbers of equality and inequality constraints that must be obeyed for a solution." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Consider $x$, $y$ which lie on the circle $x^2 + y^2 = 1$. Find the $x$, $y$ which is as close as possible to the point $(3,4)$. " ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = np.linspace(-1, 1, 100)\n", "\n", "#make sure it's square\n", "plt.figure(figsize=(6,6))\n", "\n", "#have to plot the circle in two steps\n", "plt.plot(x, np.sqrt(1 - x**2), color='blue')\n", "plt.plot(x, -np.sqrt(1 - x**2), color='blue')\n", "\n", "#now the point\n", "plt.plot(3, 4, 'ro')\n", "\n", "plt.xlim(-5, 5)\n", "plt.ylim(-5, 5)\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3.1622776601683795\n" ] } ], "source": [ "from math import sqrt\n", "\n", "def dist(x1, x2):\n", " return sqrt(np.sum((x1 - x2)**2))\n", "\n", "x1 = np.array([1,5])\n", "x2 = np.array([-2,4])\n", "print(dist(x1, x2))" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0\n" ] } ], "source": [ "def circle(x):\n", " return x[0] ** 2 + x[1] ** 2 - 1\n", "\n", "print(circle([0, 1]))" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1.0\n" ] } ], "source": [ "def obj(x):\n", " return dist(x, np.array([3,4]))\n", "print(obj(np.array([2,4])))" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " fun: 3.9999999598768268\n", " jac: array([-0.59999996, -0.80000007])\n", " message: 'Optimization terminated successfully.'\n", " nfev: 24\n", " nit: 6\n", " njev: 6\n", " status: 0\n", " success: True\n", " x: array([ 0.60000024, 0.79999987])\n" ] } ], "source": [ "my_constraints = {'type': 'eq', 'fun': circle}\n", "result = scipy.optimize.minimize(obj, x0=[0,1], constraints=my_constraints)\n", "print(result)" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "(-5, 5)" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = np.linspace(-1, 1, 100)\n", "\n", "#make sure it's square\n", "plt.figure(figsize=(6,6))\n", "\n", "#plot the circle in 2 steps\n", "plt.plot(x, np.sqrt(1 - x**2), color='blue')\n", "plt.plot(x, -np.sqrt(1 - x**2), color='blue')\n", "plt.plot(3, 4, 'ro')\n", "plt.plot(result.x[0], result.x[1], 'go')\n", "plt.xlim(-5, 5)\n", "plt.ylim(-5, 5)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "L-BFGS-B\n", "====\n", "\n", "**Type:** Constrained Minimization\n", "\n", "**Discrete/Continuous:** Continuous\n", "\n", "**Dimensions:** N\n", "\n", "**Derivative:** optional\n", "\n", "**Convex:** yes\n", "\n", "**Python:** `minimize` with constraint arguments" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Python Dictionaries - Quick Refresher\n", "====" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2015\n" ] } ], "source": [ "date = {'year': 2015, 'month':'October', 'day': 3}\n", "\n", "print(date['year'])" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "October\n" ] } ], "source": [ "print(date['month'])" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Footober\n" ] } ], "source": [ "date['month'] = 'Footober'\n", "\n", "print(date['month'])" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Python dictionaries are used when you want to store multiple numed variables together. " ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "my_constraints = {'type': 'eq', 'fun': circle}" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "my_constraints = {'type': 'ineq', 'fun': circle} #An inequality constraint" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Constraints\n", "====\n", "\n", "The constraints are like our work with the `newton` function, one side of the equation is always 0." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "$$x^2 + y^2 = 1$$\n", "$$x^2 + y^2 - 1 = 0$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "**Inequality means the quantity is always non-negative**" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "$$x^2 - 2y > 4$$\n", "$$x^2 - 2y - 4 > 0$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "$$ y < 34$$\n", "$$ y - 34 < 0$$\n", "$$ 34 - y > 0$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Non-Convex Optimization with Constraints\n", "====\n", "\n", "Now that we're good with constraints, let's try to do the ultimate optimization problem: Non-convex with constraints" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "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37NnT193d/e/RqPR54mIrzmxi8LBzYYNER0EUGM0Gr98ww03bJo5c+aYJ554wlpdXa13aYylhP7+fqxatUrZvHlzLBaLrQiHw8/w0i52qXhyGht2qqru8/l8lS+++OLSOXPmnF26dKl86tQpvctiTDf9/f1YuXJlYtKkSf0bN25c4/f7PaFQaB2HNvss+Bo3G1FCCJPdbr+tqKjoyRkzZhTU19fbampq9C4rK/E17tEXCoWwatWq+PPPPy8nEomfBYPBnxJRj951sfTGwc1GhRBCGAyG+V6vd/2ECROuWLlypb22tlbvsrIKB/foaW9vR319vdzQ0BCTZXlVKBR6hoiietfFMgNf42ajggbOEF8C8JIQYnZzc/PP3G73uLq6OvsNN9ygd3mMDYumpiasWLFCeuutt/p6enp+1N/fv4WHw9lw4x43040QYsrYsWPX5+bmTnv44YdtixcvFkajUe+yMhb3uEfO/v37sXLlSunIkSNdwWDw+4qi/I5nibORwsHNdJdcB77aYDB8dcmSJdZly5aZXC6X3mVlHA7u4aUoCrZs2ULPPPOMFAqFTrW1tX0PwBvEX6pshHFws5QhhCgoLi7+rs1me2jmzJk5P/jBD6zXXHON3mVlDA7u4eH3+7FmzRpl165dcQC/a29v//fkXgaMjQoObpZyBuaxGa4rLy9/Ij8/v/ree++13XPPPQaHw6F3aWmNg/uz0zQNL7/8Mp566qnY0aNH+yKRyOO9vb0biCiid20s+3Bws5QmhBjr9XofAXDHvHnzrMuWLbNOnTpV77LSEgf3pevs7MT69esT27dvj2ua9s7p06cfBfAOD4czPXFws7QghDAbjcabysrKVubk5IxdtGiR5d577zV5PB69S0sbHNwXJxaLYdu2bbR58+ZYS0tLXzQafTocDv+ciMJ618YYwMHN0pAQwl1YWHi30+l80OPxFNx11132O++8U+Tm5updWkrj4P5kqqqioaEBGzdujL333ntxg8Gwy+fzPUVEh/SujbELcXCztCaEuMrj8TwIYMmUKVNsd911l33BggWwWCx6l5ZyOLj/FhFh//79+OUvfynv3btXMZlMf2ppaflPAH/kpVwslXFws4wghBAAZlZWVi5XVfWrs2fPttx2223W+fPnc4gncXAPTDI7cOAAtm3bprz00kuKqqpNbW1tq1RVfYmIJL3r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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from math import atan, sqrt, sin\n", "x = np.linspace(-1, 1, 100)\n", "\n", "#make sure it's square and make it polar\n", "plt.figure(figsize=(8,8))\n", "ax = plt.subplot(111, polar=True)\n", "theta = np.linspace(0, 2 * pi, 500)\n", "r = 1 + 0.3 * np.sin(7 * (theta + 4))\n", "ax.plot(theta, r)\n", "ax.plot(atan(2 / 1.), sqrt(2**2 + 1**2), 'bo')\n", "\n", "ax.set_rmax(3)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "We want to find a point on the flower that is as close as possible to the red dot. This is non-convex because there are many local minima. " ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-0.152546225676\n" ] } ], "source": [ "def circle_constraint(s):\n", " x = s[0]\n", " y = s[1]\n", " r = sqrt(x**2 + y**2)\n", " theta = atan(y / x)\n", " return 1 + 0.3 * np.sin(7 * (theta + 4)) - r\n", "print(circle_constraint(np.array([1,1])))" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "def dist(x1, x2):\n", " return sqrt(np.sum((x1 - x2)**2))" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1.4142135623730951\n" ] } ], "source": [ "def obj(x):\n", " return dist(x, np.array([1,2]))\n", "print(obj(np.array([0,1])))" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Basin-hopping is like a wrapper around one of the minimization techniques we've learned. So to communicate with the technique which basin-hopping is using, we have to wrap our constraint dictionary in another dictionary." ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "my_constraints = {'type':'eq', 'fun':circle_constraint}\n", "minimizer_args = {'constraints':my_constraints}\n", "ret = scipy.optimize.basinhopping(obj, x0=[1,1], niter=1000, minimizer_kwargs=minimizer_args)" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " fun: 1.1131024276840382\n", " lowest_optimization_result: fun: 1.1131024276840382\n", " jac: array([-0.09772378, -0.99521358])\n", " message: 'Optimization terminated successfully.'\n", " nfev: 20\n", " nit: 5\n", " njev: 5\n", " status: 0\n", " success: True\n", " x: array([ 0.89122342, 0.89222535])\n", " message: ['requested number of basinhopping iterations completed successfully']\n", " minimization_failures: 0\n", " nfev: 37362\n", " nit: 1000\n", " njev: 8748\n", " x: array([ 0.89122342, 0.89222535])\n", "-6.36809861732e-07\n", "[ 0.89122342 0.89222535]\n" ] } ], "source": [ "print(ret)\n", "print(circle_constraint(ret.x))\n", "print(ret.x)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = np.linspace(-1, 1, 100)\n", "\n", "#make sure it's square and make it polar\n", "plt.figure(figsize=(8,8))\n", "ax = plt.subplot(111, polar=True)\n", "theta = np.linspace(0, 2 * pi, 1500)\n", "r = 1 + 0.3 * np.sin(7 * (theta + 4))\n", "ax.plot(theta, r)\n", "ax.plot(atan(2. / 1.), sqrt(2**2 + 1**2), 'ro')\n", "ax.plot(atan(ret.x[1] / ret.x[0]), sqrt(ret.x[0] ** 2 + ret.x[1] ** 2), 'o')\n", "\n", "ax.set_rmax(3)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Basin-Hopping\n", "====\n", "\n", "**Type:** Non-convex wrapper to minimize\n", "\n", "**Discrete/Continuous:** Continuous\n", "\n", "**Dimensions:** N\n", "\n", "**Derivative:** optional\n", "\n", "**Convex:** not required\n", "\n", "**Python:** `basinhopping`\n", "\n", "**Notes:** Pass `minimize` arguments with a `minimizer_kwargs=min_args`, where `min_args` is a dictionary of arguments to the `minimize` function." ] } ], "metadata": { "celltoolbar": "Slideshow", "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.6.3" } }, "nbformat": 4, "nbformat_minor": 1 }