{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from pathlib import Path\n", "import pickle" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import gpflow\n", "import tensorflow as tf" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "from gpflow.utilities import print_summary\n", "gpflow.config.set_default_summary_fmt(\"notebook\")" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "import casadi as cs" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "plt.rcParams[\"figure.figsize\"] = (20, 6)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## GP model" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "size = 500" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "X = np.linspace(-2, 2, num = size)\n", "# x^4 + 3*sin(x)\n", "Y =3 * X ** 2" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "df_func = pd.DataFrame({\n", " 'X': X,\n", " 'Y': Y\n", "})" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "n_sampl = 15" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "df_sampled = df_func.sample(n_sampl)\n", "X_sampled = df_sampled['X'].to_numpy().reshape(-1, 1)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "Y_sampled = df_sampled['Y'].to_numpy().reshape(-1, 1)\n", "\n", "# Add noise to the output\n", "mean, var = 0, 0.5\n", "noise = np.random.normal(mean, var, size = Y_sampled.shape)\n", "\n", "Y_sampled = Y_sampled + noise" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABH4AAAFlCAYAAACdnC/mAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Z1A+gAAAACXBIWXMAAAsTAAALEwEAmpwYAABW0UlEQVR4nO3dd3hUZeL28fvJpHdSgZCQ0HsNoYm9N7ArijRBsW9zi667+3PddXV3XbuiNFFs2FCxYKUIhNB7LwmEEAjpfeZ5/wj6ui4IQpKTzHw/15VrJjOTnBsOJyR3nmKstQIAAAAAAID38XM6AAAAAAAAABoGxQ8AAAAAAICXovgBAAAAAADwUhQ/AAAAAAAAXoriBwAAAAAAwEtR/AAAAAAAAHgp/8Y8WFxcnE1NTW3MQwIAAAAAAHi15cuXH7TWxh/tuUYtflJTU5WVldWYhwQAAAAAAPBqxpjdx3qOqV4AAAAAAABeiuIHAAAAAADAS1H8AAAAAAAAeCmKHwAAAAAAAC9F8QMAAAAAAOClKH4AAAAAAAC8FMUPAAAAAACAl6L4AQAAAAAA8FIUPwAAAAAAAF6K4gcAAAAAAMBLUfwAAAAAAADfkp0pLfhX3a2X83c6AAAAAAAAQKPJzpRmXC65qyVXoDR6jpSc4XSqBsOIHwAAAAAA4Dt2Lagrfay77nbXAqcTNSiKHwAAAAAA4DtSh9WN9DGuutvUYU4nalBM9QIAAAAAAL4jOaNueteuBXWljxdP85JOoPgxxkyVdKmkA9baHkcee0zSZZKqJW2XNNZaW9iAOQEAAAAAAOpHcobXFz7fOZGpXtMlXfijx+ZJ6mGt7SVpi6Tf13MuAAAAAAAAnKLjFj/W2vmSCn702GfW2toj7y6R1KYBsjVJ1lq9nrlHReU1TkcBAAAAAAAnIbeoQnNW73M6RqOoj8Wdx0n6+FhPGmMmGmOyjDFZ+fn59XA4Z+08WKY/vr9OE2dmqarW7XQcAAAAAADwMxRX1mjstGW6/521OlRa5XScBndKxY8x5n5JtZJePdZrrLWTrbXp1tr0+Pj4Uzlck9AuPlz/vKa3lu4s0K/fWiOPxzodCQAAAAAAnIDqWo9uf2WFth0o1bM39VNseJDTkRrcSe/qZYwZrbpFn8+x1vpU+zG8T5L2FVbqH59sUuuoYP3+4q5ORwIAAAAAAD/BWqvfv7NWC7cd1GNX99Kwjs1/cMqJOKnixxhzoaTfSjrDWltev5Gah9vOaKfcogq9MH+HWkUFa8zQNKcjAQAAAACAY/jP51v19ooc/eLcTromPdnpOI3mRLZzf03SmZLijDE5kv6kul28giTNM8ZI0hJr7W0NmLPJMcboT5d1V25Rpf7y4Qa1jArRhT1aOh0LAAAAAAD8yJvLsvXEF1t1Tf82uvucDk7HaVSmMWdppaen26ysrEY7XmOoqHZr5EtLtGFfsWZNGKj+bWOcjgQAAAAAAI74avMB3TIjS0Pax2rqmAEKcNXHPldNizFmubU2/WjPed+ftpGFBLo0ZfQAtY4O0fgZWdqeX+p0JAAAAAAAIGl1dqFuf2WFurSM0HM39ffK0ud4fO9P3ABiwgI1fewAuYzR6KmZOlBS6XQkAAAAAAB82u5DZRo3fZliwwM1bewAhQed9P5WzRrFTz1pGxumqWMG6FBptcZPz1JZVa3TkQAAAAAA8EkHS6t089RMeazVjHEZSogIdjqSYyh+6lHv5Gg9c2Nfrd9XpDtmrVCt2+N0JAAAAAAAfEp5da3GT1+mvOJKTRkzQO3jw52O5CiKn3p2dpdE/XVET329OV8PvLdOjbl4NgAAAAAAvqzW7dEdr67Q2r1FeuqGfuqX0sLpSI7zzQluDWzkwBTlFlXoqS+3qXV0iO4+p6PTkQAAAAAA8GrWWt3/7jp9tTlfD1/RQ+d1S3Q6UpNA8dNAfnleJ+0trNC/521Rq6hgXZOe7HQkAAAAAAC81n8+36o3srJ199kddOPAtk7HaTIofhqIMUaPXNlL+SVV+v07a5UQGawzOsU7HQsAAAAAAK/zWuYePfHFVl3Tv41+cV4np+M0Kazx04AC/f307I391CkxQpNeWa7V2YVORwIAAAAAwKt8sTFP97+7Vmd2jtffruwpY4zTkZoUip8GFhEcoOljByg2PFBjpy/TjvxSpyMBAAAAAOAVVu45rDtmrVCPpCg9M7KfAlzUHD/G30gjSIgM1svjBspIGjUlU3nFlU5HAgAAAACgWduRX6rxM7KUGBmsqWMGKCyI1WyOhuKnkaTFhWn62AwVlldr9NRMFVXUOB0JAAAAAIBmKb+kSqOnZcpImjE2Q3HhQU5HarIofhpRzzZRen5Uf23PL9WEl7NUWeN2OhIAAAAAAM1KSWWNxk7P1MGSak0ZM0CpcWFOR2rSKH4a2bCO8frnNb2VubNA976+Sm6PdToSAAAAAADNQlWtW7fOXK6NuSV69sZ+6pMc7XSkJo/ixwHD+yTpwUu76ZP1+/XH99fJWsofAAAAAAB+ittj9Ys3Vunb7Yf02NW9dFaXBKcjNQusfOSQcaelKb+0Ss99vV0JEUG699xOTkcCAAAAAKBJstbqj++v09y1+/XAJV11Zb82TkdqNih+HHTfBZ11sKRK//l8q+LCg3TToLZORwIAAAAAoMl5/POtmrV0jyad2V63DGvndJxmheLHQcYY/f3Kniooq9Yf31+n2LBAXdSzldOxAAAAAABoMmZ8u0tPfrFV16a30X0XdHY6TrPDGj8O83f56emR/dQ3OVr3vL5Ki7cfcjoSAAAAAABNwger9+nPH6zXed0S9bcresoY43SkZofipwkICXRpyugBSokN1cSXs7RhX7HTkQAAAAAAcNSCrfn65ZurNKBtjJ66oa/8XVQYJ4O/tSaiRVigXh6XofBgf42elqnsgnKnIwEAAAAA4IjV2YW6deZytY8P14uj0xUc4HI6UrNF8dOEtI4O0YxxGaqu9WjUlKXKL6lyOhIAAAAAAI1q24FSjZmWqdjwugESUSEBTkdq1ih+mphOiRGaOmaA8oqrNHpqpooqapyOBAAAAABAo8gtqtDoqZly+RnNHDdQCZHBTkdq9ih+mqD+bVvo+VH9tfVAiW6ZsUwV1W6nIwEAAAAA0KAKy6t185S6ARDTx2YoNS7M6UhegeKniTqjU7wev66PsnYf1u2vLleN2+N0JAAAAAAAGkRFtVvjpi/T7kPlmnxzf/VIinI6kteg+GnCLu3VWg+P6KmvNufrV2+ulsdjnY4EAAAAAEC9qnF7dPury7Uqu1BP3tBHQ9rHOR3Jq/g7HQA/beTAFBVWVOvRTzYrKiRA/ze8u4wxTscCAAAAAOCUuT1Wv3xztb7anK+/XdFTF/Zo5XQkr0Px0wxMOqO9ispr9ML8HYoODdCvzu/sdCQAAAAAAE6JtVZ/fH+dPli9T7+7qItGDkxxOpJXovhpBowx+t1FXVRYXqOnvtymqJAA3TKsndOxAAAAAAA4af/4ZLNmLd2jSWe2121ntHc6jtei+GkmjDH625U9VVJVo79+tFFRIQG6Jj3Z6VgAAAAAAPxsz369Tc9/s103DkzRfRcwq6UhUfw0Iy4/o8ev66OSyiz99u01igwJ0AXdWzodCwAAAACAEzZzyW49+slmDe/TWg8N78E6tg2MXb2amSB/l56/qb96tYnWXbNW6tttB52OBAAAAADACXl/1V49+P46ndMlQf+8prf8/Ch9GhrFTzMUFuSv6WMHKC0uTBNeztLq7EKnIwEAAAAA8JM+35CnX765WhmpMXrmxn4KcFFJNAb+lpup6NBAvTw+QzHhgRozLVNb80qcjgQAAAAAwFEt3n5It89aoe6tI/XS6HQFB7icjuQzKH6ascTIYL0yfqD8XX4aNSVT2QXlTkcCAAAAAOC/rM4u1C0zlqltTKimj81QRHCA05F8CsVPM9c2Nkwzx2eoosatkS8t0f6iSqcjAQAAAAAgSdqSV6LR0zIVEx6omeMHKiYs0OlIPofixwt0aRmpl8dl6HBZjW58aYkOllY5HQkAAAAA4OP2HCrXTS8tVYDLT6+MH6iWUcFOR/JJFD9eondytKaMTtfewgqNmpKpovIapyMBAAAAAHxUXnGlbpqyVFW1Hr0yfqDaxoY5HclnUfx4kYHtYvXCqHRtP1Cq0dMyVVpV63QkAAAAAICPOVxWrVFTlupQaZVmjMtQ55YRTkfyacctfowxU40xB4wx637wWIwxZp4xZuuR2xYNGxMn6oxO8XpqZF+t3Vuk8dOXqaLa7XQkAAAAAICPKKqo0aipS7XrULlevDldfZKjnY7k805kxM90SRf+6LHfSfrCWttR0hdH3kcTcUH3lvr3tb2VuatAt72yXFW1lD8AAAAAgIZVWlWrMdMytXl/iV64qb+GdIhzOhJ0AsWPtXa+pIIfPTxc0owj92dIGlG/sXCqhvdJ0t+v6KlvtuTrntdWqdbtcToSAAAAAMBLVVS7dcuMZVqTU6Qnr++rs7okOB0JR5zsGj+J1tpcSTpyyxltgq7PSNEfL+2mT9bv129mr5HHY52OBAAAAADwMlW1bt36ynIt3Vmgf1/bWxf1bOV0JPyAf0MfwBgzUdJESUpJSWnow+FHxp+WporqWv3zsy0KCXTp4RE9ZIxxOhYAAAAAwAvUuD26c9ZKzd+Sr0ev6qXhfZKcjoQfOdniJ88Y08pam2uMaSXpwLFeaK2dLGmyJKWnpzPkxAF3nNVBZdVuPff1doUGuHT/JV0pfwAAAAAAp8TtsfrFG6s0b0Oe/nJ5d107INnpSDiKky1+5kgaLemRI7fv11si1DtjjO67oLPKq2r10sKdCgvy1y/O6+R0LAAAAABAM+XxWP327TX6cE2ufn9RF40ekup0JBzDcYsfY8xrks6UFGeMyZH0J9UVPm8aY8ZL2iPpmoYMiVNnjNGfLuuu8mq3nvhiq0IDXbr1jPZOxwIAAAAANDPWWj04Z51mL8/Rved25GfLJu64xY+19oZjPHVOPWdBA/PzM3rkql6qqHHr7x9vUnCAi1YWAAAAAHDCrLX660cb9cqSPbr1jHa655yOTkfCcTT44s5oWlx+Ro9f10dVtR79ac56+buMbhzY1ulYAAAAAIBm4N/ztmjKwp0aMyRVv7uwC+vHNgMnu507mrEAl5+eHtlXZ3dJ0P3vrtOby7L//5PZmdKCf9XdAgAAAABwxDNfbdNTX27T9QOS9eCl3Sh9mglG/PioIH+Xnr2xnya8nKXfvrNG/i6jK+P3STMul9zVkitQGj1HSs5wOioAAAAAwGFTFu7UY59u1og+rfXwFT3l50fp01ww4seHBQe49OLN6RrSPla/fmu1Niz+qK70se66210LnI4IAAAAAHDYK0t266EPN+iiHi31z2t6y0Xp06xQ/Pi44ACXXrp5gAakxujB1S3k9guQjKtuxE/qMKfjAQAAAAAcNGvpHj3w3jqd0yVBT1zfV/4uaoTmhjMGhQS6NHXMAKlNhq6v/L22dr+HaV4AAAAA4O2Os8brG8v26A/vrtVZneP17E39FOhPhdAccdYgSQoL8te0sQNUmzRAF68coC/L2OkLAAAAALxWdmbdGq9fPlx3+6Py562sbP3unbU6o1O8nrupv4L8XQ4Fxami+MH3IoIDNH1shrq2itRtM1fomy35TkcCAAAAADSEXQuOucbrOytydN/ba3Rahzi9MKq/ggMofZozih/8l6iQAL08LkMdEsI18eUsLdp20OlIAAAAAID6ljqsbm3XH63x+v6qvfr1W6s1pH2sXrw5ndLHC1D84H9EhwbqlVsGKi0uTONnLNOSHYecjgQAAAAAqE/JGXVru559//drvM5ZvU+/eGOVBqbF6qWbB1D6eAmKH19wnAW7jiYmrK78SW4RqnHTlylrV0EDBgQAAAAANLrkDGnYr6TkDH20Jle/eGOV0lNjNGVMukICKX28BcWPtzvOgl0/JS48SK9OGKiWUcEaM22ZVuw53IBBAQAAAABO+GRdru5+faX6pURr2pgBCg30dzoS6hHFj7f7iQW7TkRCRLBemzBIceGBunlKppbvpvwBAAAAAG/x6fr9unPWSvVJjta0sRkKC6L08TYUP97uGAt2/RyJkcF6feJgxUcE6eYpS7V8N9O+AAAAAKC5+3xDnu6ctUI920Rp+tgBCqf08UoUP97uKAt2nYyWUcF6feIgJUYG6+Ypmaz5AwAAAADN2Jeb8jTp1eXq1jpKM8ZlKCI4wOlIaCAUP77gBwt2nYrEyGC9NnGQEqOCdfPUTC2j/AEAAACAZufrzQd028wV6toqUi+Py1AkpY9Xo/jBz5IYGazXJwxSq6hgjZ6aqcydlD8AAAAA0Fx8uSlPE19erk4twzVz3EBFhVD6eDuKH/xsCUdG/rSKCtaYaZlauuOQ05EAAAAAAMcxb0Oebp25XF1aRejV8YMUFUrp4wsofnBSEiLqFnxuHR2iMdOWaQnlDwAAAAA0WZ+s269JryxX99ZRmjl+IKWPD6H4wUmLjwjSaxMGqU2LEI2dtkyLt1P+AAAAAEBT89GaXN0xa4V6tYnSzPEZTO/yMRQ/OCXxEUGaNWGQkmNCNHZ6pr7ddtDpSAAAAACAI+as3qe7X1+pfinRenn8QHbv8kEUPzhl35U/bWPCNG7GMi2i/AEAAAAAx723cq/ufX2l+rdtoeljMxQe5O90JDiA4gf1Ii48SLMmDFRqbJjGTV+mhVspfwAAAADAKW8vz9Ev31ylgWmxmj52gMIofXwWxQ/qTWx4kF69ZaDS4sI0fsYyLdia73QkAAAAAPA5b2Zl69ezV2tI+zhNHTNAoYGUPr6M4gf1Kja8btpXu/hwjZ+RpS835TkdCQAAAAB8xmuZe3Tf7DUa1jFeL41OV0igy+lIcBjFD+pdTFigXpswUF1aRujWmcv1ybr9TkcCAAAAAK/3ypLd+v07a3VW53hNHtVfwQE/Kn2yM6UF/6q7hc+g+EGDiA4N1Cu3DFTPpCjdMWuF3l+11+lIAAAAAOC1Zny7Sw+8t07ndk3Q88cqfWZcLn35cN0t5Y/PoPhBg4kMDtDL4wcqvW0L3fvGKr2Vle10JAAAAADwOlMW7tSf5qzX+d0S9eyN/RXkf5TpXbsWSO5qybrrbnctaPygcATFDxpUeJC/po/N0Gkd4vSb2Wv0ypLdTkcCAAAAAK/xzFfb9NCHG3RRj5Z65sZ+CvQ/xo/5qcMkV6BkXHW3qcMaNygcw9LeaHAhgS69eHO67py1Qg+8t05VtR6NPy3N6VgAAAAA0GxZa/XPzzbrma+264q+SXrs6l7yd/3E2I7kDGn0nLqRPqnD6t6HT6D4QaMIDnDp2Rv7657XV+qhDzeossatO87q4HQsAAAAAGh2rLX6vw83aNqiXbohI0UPj+ghPz9z/A9MzqDw8UFM9UKjCfT301M39NWIPq312Keb9e95W2StdToWAAAAADQbHo/VH95dp2mLdmnc0DT97YoTLH3gsxjxg0bl7/LTv67to0B/Pz35xVZV1bj1u4u6yBi+UAEAAADAT6l1e/Sb2Wv07sq9uvOsDvrV+Z34WQrHRfGDRufyM3rkyl4K9PfTC/N3qKrWowcv7UZLDQAAAADHUF3r0T2vr9TH6/brNxd0ZukMnDCKHzjCz8/ooeE9FOzv0ksLd6qq1q2HR/Sk/AEAAACAH6mscWvSK8v11eZ8PXhpN41jsxz8DBQ/cIwxRvdf0lXBAS49/dU2VdZ4jr8SPQAAAAD4kLKqWk14OUuLdxzS36/sqRsyUpyOhGaG4geOMsbo1xd0VnCAn/752RaVVdXqqZF9FeTvcjoaAAAAADiquLJGY6ct06rsQj1+bR+N6JvkdCQ0QwytQJNw59kd9efLuumzDXkaPz1LZVW1TkcCAAAAAMcUlFVr5ItLtCanUM+M7Evpg5NG8YMmY8zQNP3zmt76dvtBjZqyVEXlNU5HAgAAAIBGd6CkUtdPXqyteaWaPCpdF/Zo5XQkNGMUP2hSru7fRs/e2E/r9hbrusmLlV9S5XQkAAAAAGg0OYfLdd0LS5RzuELTxg7QWV0SnI6EZu6Uih9jzC+MMeuNMeuMMa8ZY4LrKxh814U9WmnKmHTtPlSua19YrJzD5U5HAgAAAIAGt+1Aqa55frEOlVZp5vgMDWkf53QkeIGTLn6MMUmS7paUbq3tIckl6fr6CgbfNqxjvF65JUMHS6t07fOLtT2/1OlIAAAAANBg1uQU6toXFqvGbfXGrYPVv22M05HgJU51qpe/pBBjjL+kUEn7Tj0SUKd/2xi9PnGQqt0eXfv8Yq3fV+R0JAAAAACod4u3H9INk5coNNCl2bcNVtdWkU5Hghc56eLHWrtX0j8l7ZGUK6nIWvvZj19njJlojMkyxmTl5+effFL4pO6to/TmrYMV5O+n6ycv0fLdBU5HAgAAAIB6M29DnkZPy1Tr6BDNvm2IUuPCnI4EL3MqU71aSBouKU1Sa0lhxpibfvw6a+1ka226tTY9Pj7+5JPCZ7WLD9dbk4YoLjxIN72UqQVbKRABAAAANH/vrMjRba8sV9dWkXrz1sFqGcWyuah/pzLV61xJO621+dbaGknvSBpSP7GA/5YUHaI3bx2strGhGj89S5+sy3U6EgAAAACctGmLduqXb67WoHYxevWWgWoRFuh0JHipUyl+9kgaZIwJNcYYSedI2lg/sYD/FR8RpDcmDlaPpEjd/uoKvZWV7XQkAAAAAPhZrLX6z+db9JcPNuiC7omaOmaAwoP8nY4FL3Yqa/wslTRb0gpJa498rsn1lAs4qqjQAM0cP1BD2sfpN7PX6MX5O5yOBAAAAAAnxOOx+ssHG/Sfz7fq6v5t9MzIfgrydzkdC17ulHb1stb+yVrbxVrbw1o7ylpbVV/BgGMJC/LXlDHpurhnSz08d6P+PnejrLVOxwIAAACAY6pxe/Trt1Zr+re7dMtpaXr0ql7yd53qRtvA8TGeDM1SkL9LT93QTzFh6/TC/B06VFatR67syRdOAAAAAE1OZY1bd85aqc835unX53fSHWd1UN2KKUDDo/hBs+XyM3poeA/FhQfpP59v1eGyaj09sp9CAhkqCQAAAKBpKKms0YSXs7R0Z4EeGt5dowanOh0JPobhEWjWjDG699xOemhED325+YBGTVmqovIap2MBAAAAgA6UVOq6F5Yoa9dh/ee6PpQ+cATFD7zCqEFt9fQN/bQmp0jXvPCt9hdVOh0JAAAAgA/bebBMVz33rXYdKtOUMQM0vE+S05Hgoyh+4DUu6dVK08cO0N7DFbrquW+1Pb/U6UgAAAAAfNDq7EJd9dy3Kqty67UJg3RGp3inI8GHUfzAqwzpEKfXJw5WZY1b1zy/WKuzC52OBAAAAMCHfLMlXze8uERhQS69PWmIeidHOx0JPo7iB16nZ5sozZ40RKGBLt3w4hLN35LvdCQAAAAAPuDdlTkaP32Z2saG6e1JQ5QWF+Z0JIDiB94pLS5M70waopSYUI2fsUxzVu9zOhIAAAAALzZ5/nb94o3VGpAaozduHaSEiGCnIwGSKH7gxRIig/XGrYPVN6WF7nl9paYv2ul0JAAAAABexuOx+uuHG/S3uZvq1h0dN0CRwQFOxwK+R/EDrxYVEqCXx2Xo3K6J+vMHG/SPTzbJ47FOxwIAAADgBaprPfrlm6v00sKdGj24rZ66vq+C/F1OxwL+C8UPvF5wgEvP3dhPIwem6Lmvt+uXb65Sda3H6VgAAAAAmrHSqlqNn7FM763ap99c0Fl/vry7/PyM07GA/+HvdACgMfi7/PTwiB5Kig7RY59u1oGSKj0/qj9DMAEAAAD8bAdLqzR22jJtyC3Wo1f30rXpyU5HAo6JET/wGcYY3XFWB/3rmt7K3Fmga59frNyiCqdjAQAAAGhGdh8q09XPfautB0o0eVR/Sh80eRQ/8DlX9W+jaWMHKOdwha589ltt3l/idCQAAAAAzcDKPYd15bPfqrCiRq/eMkjndE10OhJwXBQ/8EnDOsbrjVsHye2xuvr5b7V4+yGnIwEAAABowj5dv183vLhEoUEuvT1piPq3beF0JOCEUPzAZ3VvHaV37xiqxMhgjZ6aqTmr9zkdCQAAAEATNH3RTt32ynJ1bhmpd28fqvbx4U5HAk4YxQ98WlJ0iN6+bYj6pETr7tdWavL87bKW7d4BAAAASB6P1V8/3KA/f7BB53ZN1OsTBikuPMjpWMDPQvEDnxcVGqCXx2Xokl6t9Le5m/SXDzbI7aH8AQAAAHxZZY1bd8xaoZcW7tTowW31/E39FRLocjoW8LOxnTsgKTjApaeu76tWkcF6aeFO5RZV6Inr+yo4gC/sAAAAgK8pKKvWhJeztHz3YT1wSVeNPy1NxhinYwEnhRE/aF6yM6UF/6q7rWd+fkYPXNpNf7y0mz7bkKcbX1qqgrLqej8OAAAAgKZr96EyXfXct1q7t0jP3thPtwxrR+mDZo0RP2g+sjOlGZdL7mrJFSiNniMlZ9T7YcaflqZWUcG6941VuvLZRZo6ZoDasXgbAAAA4PVW7jms8TOy5LFWs24ZqPTUGKcjAaeMET9oPnYtqCt9rLvudteCBjvUxT1b6bUJA1VcWasrn/tWS3ew3TsAAADgzb7brj08yF/vTBpC6QOvQfGD5iN1WN1IH+Oqu00d1qCH6982Ru/ePkQxYYG6acpSvbMip0GPBwAAAMAZ045s196lZaTeuX0II/7hVUxjbl2dnp5us7KyGu148ELZmXUjfVKHNcg0r6MpKq/Rba8s1+Idh3T3OR31i3M7MscXAAAA8AJuj9XDH23U1EU7dX63RD1xfV927kKzZIxZbq1NP9pzrPGD5iU5o9EKn+9EhQZoxrgM3f/uWj35xVbtPlSmf1zVix2/AAAAgGastKpW97y2Ul9sOqCxQ1P1wCXd5PLjF7zwPhQ/wAkI9PfTo1f3UmpcmB77dLP2FVbohVHpigkLdDoaAAAAgJ9pX2GFxk1fpq0HSvXQiB4aNait05GABsMaP8AJMsbojrM66Kkb+mp1TpGueHaRduSXOh0LAAAAwM+wOrtQw59ZpL2HKzR1zABKH3g9ih/gZ7qsd2u9NmGQSitrdcWz32oJO34BAAAAzcLctbm6bvJiBfn76e3bh+iMTvFORwIaHMUPcBL6t22hd28fqrjwQI2aslRvL2fHLwAAAKCpstbqma+26fZXV6hbq0i9d8dQdUqMcDoW0CgofoCTlBIbqnduH6oBqTH61Vur9e/PNqsxd8kDAAAAcHzVtR79+q01euzTzbq8d2vNmjBIceFBTscCGg3FD3AKokICNH1shq5Nb6Mnv9ymu15bqcoat9OxAAAAAEgqKKvWTVOW6u0VObr33I564vo+7M4Ln8OuXsApCvT30z+u6qW0uHA9+ukm7Sko1+RR6WoZFex0NAAAAMBnbc8v1bjpy5RbVKknru+j4X2SnI4EOIIRP0A9MMZo0pntNXlUurYfKNXlTy/U6uxCp2MBAAAAPunbbQd1xTOLVFpZq9cmDKT0gU+j+AHq0XndEvX27UMU6O+na19YrDmr9zkdCQAAAPApr2fu0c1TM9UyKljv3TFU/dvGOB0JcBTFD1DPurSM1Pt3DFXvNtG6+7WV+tdnm+XxsOgzAAAA0JBq3R79ec56/e6dtRrSIU6zJw1Rckyo07EAx1H8AA0gNjxIr9wyUNelJ+upL+u2jSyvrnU6FgAAAOCVCsurNXpapqZ/u0u3nJamqaPTFRkc4HQsoElgcWeggQT6++mRq3qqU8sIPfzRBl31XLleGp2upOgQp6MBAAAAXmNLXokmvJyl3MJKPXZ1L12Tnux0JKBJYcQP0ICMMRp/WpqmjhmgnIJyDX96oZbvLnA6FgAAAOAVPt+Qpyuf/VZlVW69NnEQpQ9wFBQ/QCM4s3OC3r1jiMKD/HXD5KWavTzH6UgAAABAs2Wt1bNfb9OEmVlKiwvTB3cNVf+2LZyOBTRJp1T8GGOijTGzjTGbjDEbjTGD6ysY4G06JETovTuGKj21hX791mr9fe5GuVn0GQAAAPhZKqrduuf1VXr0k826tFdrvXnrYLWKYjkF4FhOdY2fJyR9Yq292hgTKIkl04GfEB0aqBnjMvR/H2zQC/N3aOuBUv3n+j4sPAcAAACcgNyiCk18ebnW7SvSfRd21qQz2ssY43QsoEk76RE/xphISadLmiJJ1tpqa21hPeUCvFaAy08Pjeihh0b00Pwt+Rrx9CJtO1DidCwAAACgSVu++7Aue2qRdh4s04uj0nX7mR0ofYATcCpTvdpJypc0zRiz0hjzkjEmrJ5yAV5v1KC2mjVhkIorazTimW/12fr9TkcCAAAAmqS3srJ1w+QlCgty6d3bh+jcbolORwKajVMpfvwl9ZP0nLW2r6QySb/78YuMMRONMVnGmKz8/PxTOBzgfTLSYvTBXaepfXyYJs5crn/P2yIP6/4AAAAAkqRat0cPfbhBv5m9RgPSWuj9O4aqY2KE07GAZuVUip8cSTnW2qVH3p+tuiLov1hrJ1tr06216fHx8adwOMA7tYoK0Ru3DtbV/dvoyS+2auLMLBVX1jgdCwAAAHDUodIqjZqSqSkLd2rMkFRNH5uh6NBAp2MBzc5JFz/W2v2Sso0xnY88dI6kDfWSCvAxwQEuPXZ1L/3f8O76enO+RjyzSNsOlDodCwAAAHDEmpxCXfbUQq3Yc1j/vKa3/nx5dwW4TmlTasBnneqVc5ekV40xayT1kfS3U04E+ChjjG4enKpXbxmoovIajXhmkeZtyHM6FgAAANCo3lyWraufXyxjjN6eNERX92/jdCSgWTPWNt56Iunp6TYrK6vRjgc0V/sKK3TbK8u1JqdI957bUXef3VF+fuxYAAAAAO9VXevRXz5Yr1eX7tHQDrF66oZ+igljahdwIowxy6216Ud7jrFyQBPUOjpEb946WFf1a6P/fL5VE2cuVwnr/gAAAMCbZGdKC/4lZWcqr7hS109erFeX7tGtZ7TTjLEZlD5APfF3OgCAowsOcOmf1/RSj6RI/fWjjRrxzCJNvjld7ePDnY4GAAAAnJrsTGnG5ZK7Wm6/AP1eD2pTTXs9M7KfLunVyul0gFdhxA/QhBljNHZoml4ZP1CHy2s0/OlF+mTdfqdjAQAAwFv8YNRNo9q1QNZdLVm3bG21Bvlt0Lu3D6X0ARoAxQ/QDAxuH6sP7jpN7ePDdNsry/X3uRtV6/Y4HQsAAADN2Xejbr58uO62EcufqjZDVCN/1Vo/uf0CNPK6G9W5ZUSjHR/wJRQ/QDORFB2iN28brJsGpeiF+Ts08qWlOlBS6XQsAAAANFe7FkhHRt3IXV33fiPIOVyuqz6s1fWVv9fS1NsUMOYDhXcY0ijHBnwRa/wAzUiQv0t/HdFT/VJa6A/vrtUlTy7UMyP7KSMtxuloAAAAaG5Sh0muwLrSxxVY934D+2ZLvu59faVqPVb/uXmkhnZNbPBjAr6O7dyBZmrT/mJNemWF9hSU6/cXddH409JkDFu+AwAA4GfIzqwb6ZM6TErOaLDDuD1WT36xVU9+uVWdEiL0/Kj+SosLa7DjAb7mp7Zzp/gBmrHiyhr95q3V+nR9ni7q0VKPXt1LEcEBTscCAACArzpKkXSotEr3vrFKC7Ye1JX9kvTwiJ4KCXQ5HBTwLj9V/DDVC2jGIoMD9PxN/fXigh36xyebtfnpRXrupv4sjAcAAIDG94Mt2uUKlEbP0XJPR905a4UOlVXrkSt76roByYxSBxoZizsDzZwxRhNPb69Xbxmo4spajXhmkd5budfpWAAAAPA1P1gs2rqrlfX1HF33wmL5u4zemTRE12ekUPoADqD4AbzEoHaxmnv3aeqRFKl731ilB99fp6pat9OxAAAA4CuOLBZtjUs18tffNsTqzM4J+vDOYeqRFOV0OsBnMdUL8CIJkcGaNWGQHv1kk15csFNrcor09Mi+atMi1OloAAAA8HbJGdp16WuaN/dtfVrWQedfeJluPb0do3wAhzHiB/AyAS4/3X9JNz17Yz9tO1CqS55cqM835DkdCwAAAF7unRU5uvDtSk22I/Tr8aN02xntKX2AJoDiB/BSF/dspQ/vOk1tWoTolpez9PBHG1Tj9jgdCwAAAF6motqt3729Rr98c7V6t4nWR3efpkHtYp2OBeAIih/Ai6XGhentSUM0alBbvbhgp659YbFyDpc7HQsAAABeYmteiYY/s1BvZGXr9jPrNhxJiAh2OhaAH6D4AbxccIBLD43ooWdG9tPWvLqpX/OY+gUAAIBT9FZWti5/epEOlVZrxtgM3XdhF/m7+BETaGq4KgEfcUmvuqlfyTEhmvBylv764QZV1zL1CwAAAD9PWVWtfvnmKv1m9hr1SY7Wx/cM0+md4p2OBeAY2NUL8CHfTf3620cb9dLCnVq2+7CevqGvkmPY9QsAAADHtzG3WHfOWqEdB8t077kdddfZHeXyYwFnoCljxA/gY4L8XfrL8B569sZ+2nGgVJc8uUCfrd/vdCwAAAA0YdZazVq6RyOeWaSSylq9estA3XtuJ0ofoBmg+AF81MU9W+nDu09T29gwTZy5XH+es16VNW6nYwEAAKCJKams0d2vr9If3l2rjLQYzb1nmIa0j3M6FoATxFQvwIe1jQ3T7EmD9cjHmzRt0S4t3Vmgp27oow4JEU5HAwAAQBOwbm+R7py1QtmHK3TfhZ112+nt5ccoH6BZYcQP4OOC/F3602XdNXVMuvKKK3XpUwv1euYeWWudjgYAAACHeDxWk+dv1xXPLlJVrUevTxyk28/sQOkDNEMUPwAkSWd3SdQn9wxT/7Yt9Lt31urOWStVVFHjdCwAAAA0sgPFlRo9LVN/m7tJ53RJ1Mf3DNOA1BinYwE4SUz1AvC9hMhgzRw3UC/M36F/fbZZq7IL9cT1fZTOf/QAAAA+4ctNefr1W2tUXl2rv1/ZU9cPSJYxjPIBmjNG/AD4L35+RpPObK/Zk4bI5Wd07QuL9eQXW+X2MPULAADAW1XWuPXnOes1bnqWEiOD9eFdp+mGjBRKH8ALUPwAOKo+ydH66O7TdHnv1vr3vC264cUl2ldY4XQsAAAA1LOteSUa8cwiTf92l8YNTdO7tw9hsw/Ai1D8ADimiOAA/ef6vvr3tb21fm+RLnpigT5Zl+t0LAAAANQDa61eWbJblz61UPklVZo2ZoAevKybggNcTkcDUI8ofgAc15X92uiju4epbWyobntlhX7z1mqVVtU6HQsAAAAn6XBZtW6duVwPvLdOA9vF6uN7h+msLglOxwLQAFjcGcAJSY0L09uThujJL7bqma+2aenOAj1+XW/1b8vCzwAAAE1Odqa0a4GUOkxKzvivp+Zvydev31qtw+XVeuCSrho3NI1t2gEvZqxtvAVb09PTbVZWVqMdD0DDyNpVoF+8uUp7D1fozrM66K5zOirAxQBCAACAJiE7U5pxueSullyB0ug5UnKGKqrdeuTjjZqxeLc6JoTr8ev6qEdSlNNpAdQDY8xya2360Z7jJzUAP1t6aozm3j1MV/Zroye/3Karn/tWO/JLnY4FAAAAqW6kj7tasu66210LtDanSJc+tUAzFu/WuKFp+uCu0yh9AB9B8QPgpEQEB+if1/TWszf20+6Ccl3y5ELNWrpHjTmKEAAAAEeROqxupI9xyboCNftQqq54dpHKqtx6ZfxAFnAGfAxTvQCcsv1FlfrN7NVasPWgzu2aoEeu6qW48CCnYwEAAPiu7EwVbvhS/9gUr9dyW+rSXq301xE9FB0a6HQyAA2AqV4AGlTLqGDNGJuhBy/tpvlbD+rC/8zX5xvynI4FAADgk6y1enN/Kw1d1EcfHm6jJ67vo6dH9qP0AXwUxQ+AeuHnZzTutDR9cOdpio8I1i0vZ+m+2atVXFnjdDQAAACfcai0SrfOXK773l6jXm2i9em9p2t4nySnYwFwENu5A6hXnVtG6L076rZ9f+7r7Vq49aAeu6a3hnaIczoaAACAV/t0/X7d/+5aFVfUsk07gO8x4gdAvQvyd+k3F3TR25OGKDjQpRtfWqoH31+n8upap6MBAAB4naLyGv3ijVW6deZyJUYGa85dQ3XLsHaUPgAkMeIHQAPqm9JCc+8epkc/2aypi3Zq/pZ8/eva3urfNsbpaAAAAF7hq00H9Nu316igrFr3nttRd5zVQQEufr8P4P/jKwKABhUc4NKDl3XTaxMGqdZjdfXzi/X3uRtVWeN2OhoAAECzVVxZo/tmr9bY6cvUIjRQ790xVPee24nSB8D/YMQPgEYxuH2sPrn3dP1t7ka9MH+Hvtx0QP++to96tolyOhoAAECzsnDrQd03e7X2F1fq9jPb655zOyrI3+V0LABN1CnXwcYYlzFmpTHmw/oIBMB7hQf5629X9NT0sQNUUlmrEc8u0r/nbVF1rcfpaAAAAE1eWVWtHnhvrW6aslTBgS69PWmI7ruwC6UPgJ9UH+MA75G0sR4+DwAfcWbnBH167+m6vHdrPfnFVl3+9EKtzSlyOhYAAECTtWTHIV34xHy9unSPJgxL09y7h6lvSgunYwFoBk6p+DHGtJF0iaSX6icOAF8RFRqgx6/ro5duTtfh8mqNeHaR/vHJJtb+AQAA+IHSqlr98b11un7yEvkZozdvHaz7L+mm4ABG+QA4Mae6xs9/JN0nKeJYLzDGTJQ0UZJSUlJO8XAAvM253RI1IC1Gf/too577ers+Xb9fj13di52/AACAz/tmS77+8M5a7Suq0Lihafr1BZ0UGsgyrQB+npMe8WOMuVTSAWvt8p96nbV2srU23VqbHh8ff7KHA+DFokIC9I+re2nm+AxV1Xh09fOL9X8fbFB5da3T0QAAABpdYXm1fvXmao2emqmQQJdm3zZED17WjdIHwEkx1tqT+0Bj/i5plKRaScGSIiW9Y6296Vgfk56ebrOysk7qeAB8Q2lVrR79ZJNeXrxbKTGheuSqnhrSPs7pWAAAAI3i47W5+uP761VYXq1JZ7bXnWd3YPFmAMdljFlurU0/6nMnW/z86ABnSvq1tfbSn3odxQ+AE7V0xyH99u012nWoXDcOTNHvLuqiiOAAp2MBAAA0iAMllfrT++v18br96t46Uo9e3UvdW0c5HQtAM/FTxQ9jBQE0SQPbxerje07Xv+dt1pSFO/XVpgN6aEQPndM10eloAAAA9cZaq3dW7NX/fbhBFTVu3XdhZ00Y1k4BrvrYgBkA6mnEz4lixA+Ak7Fiz2H97u012pJXqkt6tdKfLuumhIhgp2MBAACckpzD5XrgvXX6enO+0tu20CNX9VKHhHCnYwFohhp8qteJovgBcLKqaz2aPH+7nvxym4L9/fT7i7vquvRk+fkZp6MBAAD8LLVuj6Yt2qV/z9siY6T7Luismwen8n0NgJNG8QPAa+zIL9Uf3l2rJTsKlJEWo79d0ZPfjAEAgGZjTU6hfv/OWq3fV6xzuyboL8N7KCk6xOlYAJo5ih8AXsVaq7eW5+jhjzaqotqtO87qoNvObMeOFwAAoMkqrarVvz7brBnf7lJceJD+cnl3XdijpYxhlA+AU8fizgC8ijFG16Yn6+wuCfq/Dzbo8c+36IM1+/T3K3tqQGqM0/EAAAD+y7wNeXrw/XXaX1ypmwa21W8u7KxIdisF0EgY8QOg2ftq8wE98O467S2s0MiBKfrthV0UFcI3UwAAwFn7iyr15znr9cn6/eqcGKG/XdlT/du2cDoWAC/EVC8AXq+sqlaPz9uiqYt2KiYsUH+4uKuu6JvE8GkAANDo3B6rV5fu1qOfbFaN26O7z+moiaezRTuAhkPxA8BnrN9XpAfeW6eVewo1MC1Gfx3RQx0TI5yOBQAAfMSanEI98N46rckp0mkd4vTwFT3UNjbM6VgAvBzFDwCf4vFYvZGVrUc+3qSyqlrdMqyd7j6ng0IDWdYMAAA0jKLyGj366SbNytyjuPAgPXBJV13eu3XDjz7OzpR2LZBSh0nJGQ17LABNFos7A/Apfn5GN2Sk6PxuiXrk4016/pvt+mD1Pv3psm46v3tLp+MBAAAv4vFYzV6Ro0c+3qTC8mqNGZKqX5zXqXEWb87OlGZcLrmrJVegNHoO5Q+A/8EkUwBeKzY8SI9d01tv3TZY4UH+mjhzuW6ZsUzZBeVORwMAAF5gY26xrn1hse6bvUapsaH64K7T9KfLujfejl27FtSVPtZdd7trQeMcF0CzwogfAF5vQGqMPrz7NE1ftEuPf75F5z3+je46u6NuGZamIH+X0/EAAEAzU1JZo8fnbdWMxbsUFRKgR6/qpav7t5GfXyNvKpE6rG6kz3cjflKHNe7xATQLrPEDwKfkFlXooQ83aO7a/UqLC9ODl3bTWV0SnI4FAACaAWut5qzep4c/2qj80irdkJGi+y7orOjQwFP/5Ce7Vg9r/AAQizsDwP/4Zku+/vLBeu3IL9PZXRL04KXdlBrHjhsAAODoNuYW6y8frNeSHQXqmRSlh0b0UJ/k6Pr55KzVA+AU/VTxwxo/AHzSGZ3i9ck9p+v+i7sqc2eBzn98vv7xSd0uYAAAAN85XFatP763Tpc8uUCb9pfooRE99N4dQ+uv9JFYqwdAg2KNHwA+K9DfTxNOb6fhfVrrH59s1nNfb9c7K3L0h4sbaftVAADQZNW6PXotc4/+NW+LiitqNGpQW/3ivE71M63rx1irB0ADYqoXAByxfPdh/XnOeq3dW6QBqS3058u7q3vrKKdjAQCARrZ4+yH95YP12rS/RIPbxepPl3dTl5aRDXtQ1uoBcApY4wcATpDHY/XW8mw9+slmHS6v1siBKfrVeZ3VIqwBfrsHAACalJzD5fr73E36aG2ukqJD9MAlXXVhj5aMAgbQ5FH8AMDPVFRRo8fnbdHMJbsVFujS3ed01M2DUxXoz9JoAAB4m4pqt16Yv13Pfb1dxkiTzuigW89op+AAl9PRAOCEUPwAwEnakleihz/aqG+25Cs1NlS/v7irzu+WyG/+AADwAh6P1fur9+rRTzYrt6hSl/RqpT9c3FVJ0SFORwOAn4XiBwBO0debD+jhjzZq64FSDWoXowcu6aYeSaz/AwBAc7V0xyE9PHej1uQUqUdSpB64pJsGtYt1OhYAnBSKHwCoB7Vuj15blq3H523R4fJqXdWvjX5zQWclRgY7HQ0AAJygnQfL9MjHG/Xp+jy1igrWby7orBF9kuTnx2heAM0XxQ8A1KOiiho9+9U2TVu0S/4uo9vOaK8Jw9opJPAk1gFgBw8AABpFYXm1nvxim2Yu2aUAl58mndFet5zs/98A0MRQ/ABAAxQsuw+V6ZGPN+njdftP7jeG2ZnSjMsld7XkCpRGz6H8AQCgnlXXejRzyW49+cVWlVTW6LoByfrFeZ2UEMGIXQDe46eKH//GDgMAja6BCpa2sWF67qb+ytxZoIc+3KBfvrlaLy7Yqd9e2FlndIo//gLQuxbUZbLuuttdCyh+AACoJ9Zafbp+vx75eJN2HSrXsI5xuv+SrurSMtLpaADQqCh+AHi/Bi5YMtJi9P4dQ/Xh2lw99ukmjZm2TEPax+p3F3VRrzbRx/7A1GF1RdR3hVTqsHrLBACAL1uy45Ae+XiTVmUXqmNCuKaNHaAzT+SXMgDghSh+AHi/RihY/PyMLu/dWhd2b6lXl+7WU19u0+VPL9KlvVrpNxd0VtvYsP/9oOSMutFHrPEDAEC92JhbrEc/2aSvNuerZWSw/nFVT13Vr438XX5ORwMAx7DGDwDf0MiLKJdU1mjy/B16acFO1bg9unFgiu46p6PiwoMa/NgAAPia7IJyPT5vi95dtVcRQf66/awOGjMkVcEBLNwMwDewuDMAOORAcaX+88VWvbEsW8H+frr1jPYaf1qawoIYcAkAwKkqKKvW019u0ytLdssYaczQVN1+RgdFhQY4HQ0AGhXFDwA4bNuBUj326SZ9uj5PceFBuuOs9ho5MEVB/vwmEgCAn6u8ulZTFuzU5Pk7VFZdq2v6J+ve8zqqVVSI09EAwBEUPwDQRCzfXaDHPt2sJTsK1DoqWHef01FX9W+jANYeAADguCpr3Hotc4+e+Wq7DpZW6fxuibrvws7qkBDhdDQAcBTFDwA0IdZaLdp2SI99tlmrswuVGhuqe8/tpMt6t5bLj91GAAD4sRq3R29l5eipL7cqt6hSA9NidN+FndW/bYzT0QCgSaD4AYAmyFqrzzce0L8+26xN+0vUKTFcvzyvsy7onsh2swAASKp1e/Teqn164ostyi6oUL+UaP3q/M4a0j6W/ysB4AcofgCgCfN4rD5cm6v/zNuiHQfL1KtNlH51fmed3jGOb2oBAD7p+/8bP9+iHfll6pEUqV+d11lndo7n/0YAOAqKHwBoBmrdHr2zcq+e+Hyr9hZWKCM1Rvee21GD+a0mAMBHWGv12YY8PT5vizbtL1HnxAj94rxOjIYFgOOg+AGAZqSq1q03lmXrma+2Ka+4SgNSW+juczrqtA6MAAIAeCdrrb7YeEBPfLFVa/cWqV1cmO49r5Mu7dlKfqx/BwDHRfEDAM1QZU1dAfTc19u1v7hS/VKidc+5nZgCBgDwGh6P1Wcb9uvJL7ZpQ26xkmNCdPfZHXVF3yT5s+MlAJwwih8AaMaqat16MytHz321TfuKKtUnOVr3nNtRZ3ZinQMAQPPk9ljNXZurp7/cps15JUqLC9MdZ3XQ8D6tFUDhAwA/G8UPAHiBqlq3Zi/P0bNfbdfewgr1To7WPed00FmdEyiAAADNQq3bow/X5OqpL7dqe36ZOiSE666zO+jSXq3lYkoXAJw0ih8A8CLVtR69vSJHz3y1TTmHK9SrTZRuP7ODzu+WyDoIAIAmqcbt0fur9umZr7Zp58EydU6M0F3ndNBFPVpR+ABAPWiQ4scYkyzpZUktJXkkTbbWPvFTH0PxAwD1p8bt0TsrcvTMV9u1p6BcHRLCddsZ7RkmDwBoMipr3Hp7RY5e+GaH9hSUq1urSN19Tkd+WQEA9ayhip9WklpZa1cYYyIkLZc0wlq74VgfQ/EDAPWv1u3RR2tz9dzX27Vpf4mSokM0YViarhuQopBAl9PxAAA+qLiyRq8u2aMpC3fqYGmVereJ0l1nd9Q5XZmeDAANoVGmehlj3pf0tLV23rFeQ/EDAA3HWquvNh/Qs19tV9buw4oNC9TYoakaNThVUSEBTscDAPiAAyWVmrpwl15dslslVbUa1jFOk85sr8HtYil8AKABNXjxY4xJlTRfUg9rbfGxXkfxAwCNI3NngZ79epu+3pyv8CB/3TSorcadlqqEiGCnowEAvNCug2WavGCHZi/PUa3bo4t6ttKkM9qrR1KU09EAwCc0aPFjjAmX9I2kh6217xzl+YmSJkpSSkpK/927d5/S8QAAJ279viI99/V2zV2bK3+Xn67ql6Txp7VTh4Rwp6MBALzAur1Fev6bI//P+Pnpqv5tNPH0dkqLC3M6GgD4lAYrfowxAZI+lPSptfbfx3s9I34AwBm7Dpbphfk79M6KHFXVenROlwTdMqydBrWLYeg9AOBn8XisvtmarykLdmrhtoMKD/LXjYNSNH5omhIiGVkKAE5oqMWdjaQZkgqstfeeyMdQ/ACAsw6VVmnmkt2auXi3DpVVq0dSpCYMa6eLe7ZiJzAAwE+qrHHr3ZV7NWXhTm07UKrEyCDdPDhVNw1qy1pyAOCwhip+TpO0QNJa1W3nLkl/sNbOPdbHUPwAQNNQWePWOyv26qWFO7Qjv0yto4I1Zmiqrs9IUWQw37wDAP6//JK6Xxq8smS3Csqq1a1VpCacnqZLerZWoD+/NACApqBRdvU6ERQ/ANC0eDx1O4FNnr9DS3cWKDzIX9cPSNaYoalq0yLU6XgAAAdtySvRlAU79e6qvaqu9ejcrgkafxrThAGgKaL4AQAc19qcIr24YIc+Wpsra63O7ZqoMUNSNbg9W/ACgK/weKzmb83X1EW7NH9LvoID/HR1/zYaOzRN7ePZGAAAmiqKHwDACdtXWKFXluzWa5l7dLi8Rp0SwzV6SKqu6Juk0EB/p+MBABpAUUWNZi/P0czFu7TrULniI4I0ZkiqRmakqEVYoNPxAADHQfEDAPjZKmvcmrN6n6Yv2qUNucWKDPbXdQOSNWpQqlJimQYGAN5g8/4Svbx4l95duVfl1W71b9tCNw9uq4t6tGL9HgBoRih+AAAnzVqrrN2HNf3bXfpk3X55rNU5XRI0ZkiahnZgGhgANDe1bo/mbcjTjMW7tGRHgYL8/TS8T2vdPDhVPZKinI4HADgJP1X8MGYfAPCTjDEakBqjAakxyi2q0KtL9ui1zD36fONStYsP08iMFF3dv42iQ5kKAABN2cHSKr2euUevLt2j3KJKtWkRot9f1EXXpicznQsAvBgjfgAAP1tljVsfrsnVq0t3a+WeQgX6++nSnq00cmCK+rdtwSggAGgiPB6rxTsOaVbmHn22fr9q3FbDOsbp5sGpOrtLglx+fL0GAG/AVC8AQIPZsK9YszJ3672V+1RaVavOiREaOTBFV/RLUmRwgNPxAMAnHSyt0uzlOXo9c492HSpXdGiArurXRjdkpKhDArtzAYC3ofgBADS4sqpazVm9T7OW7tHavUUKCXDpst6tNHJgW/VuE8UoIABoYB6P1bfbD+m1zD36bEPd6J6MtBiNzEjRhT1aKjjA5XREAEADofgBADSqNTmFmrV0j95ftU8VNW51axWpa9PbaHifJNaRAIB6ll9yZHTPsj3a/V+je5LVISHC6XgAgEZA8QMAcERxZY3eX7lXb2Rla93eYgW6/HRet0Rdk95GwzrGs7YEAJykGrdHX246oNnLc/TVpgOq9dSN7rlxYIou6M7oHgDwNRQ/AADHrd9XpLeycvT+qr06XF6jlpHBuqp/kq7pn6zUuDCn4wFAs7BhX7FmL6/7WnqorFrxEUG6sm+SrklPZu0eAPBhFD8AgCajqtatLzYe0FtZ2fpmS748VspIjdE16W10cc9WCgvydzoiADQpBWXVen/VXs1enqP1++pGT57bLUFX92+j0zvGy9/l53REAIDDKH4AAE3S/qJKvbMyR29l5WjnwTKFBrp0YfeWGt43SUPbx/LDDACfVeP26JvN+Zq9PEdfbMpTjduqZ1KUru7fRpf3bs16aQCA/0LxAwBo0qy1Wr77sGYvz9HctbkqrqxVXHiQLu/dWiP6tlbPJHYFA+D9PB6r5XsO6/1Ve/XRmlwdLq9RXHigRvRJ0tXpbdSlZaTTEQEATRTFDwCg2aiqdeurTfl6b+VefbnpgKrdHrWLD9MVfZI0vE+SUmJDnY4IAPVq8/4Svbdqr+as2qe9hRUKDvDT+d1aanif1jq9U7wCGP0IADgOih8AQLNUVF6jj9fl6t2Ve7V0Z4EkqX/bFhrRp7Uu6tlKceFBDicEgJOzt7BCc1bt0/ur9mrT/hK5/IyGdYzT8D6tdX63lqx3BgD4WSh+AADN3nc/JL27Mkdb8krlZ6TB7WN1Sc/WuqB7omIpgQA0cQeKK/Xxuv36aE2uMnfVldn9UqI1om+SLqbMBgCcAoofAIDXsNZqc16J5q7J1YdrcrXjYJlcfkaD28Xqkl6tdEH3loph0VMATcT+okp9vC5Xc9fmKmv3YVkrdUwI1/A+rXV5b6avAgDqB8UPAMArWWu1aX+JPlqTq4/W5mrnkRJoSPtYXdKzrgRi5xsAjW1fYYU+Xrdfc9fmavnuw5KkzokRurhnK13cs6U6JkY4nBAA4G0ofgAAXs9aqw25xZq7NlcfrcnVrkPlcvkZDWoXo/O7tdR53RLVOjrE6ZgAvFR2Qbk+Xb9fH63N1co9hZKkLi0jdEnPVrqoZyt1SAh3NiAAwKtR/AAAfIq1Vuv31ZVAn23I07YDpZKknklROr9bos7rnqjOiRFsEQ/gpHk8Vuv2FWnehjzN25CnTftLJEndWkXqkl6tdFGPlmoXT9kDAGgcFD8AAJ+2Pb9U8zbk6bP1+7XiyG/iU2JCdX63RJ3fvaX6t20hlx8lEICfVlXr1uLthzRvQ54+35invOIq+RkpPTVG53dL1LldE5UaF+Z0TACAD6L4AQDgiAPFlfp84wF9tmG/vt12SNVuj2LDAnVm5wSd1SVewzrGKyokwOmYAJqIw2XV+nrLAc3bkKdvNuerrNqt0ECXTu8Yr/O6JeqsLgksKA8AcBzFDwAAR1FSWaNvtuTrs/V5+mZLvooqauTyM+qf0kJndonXWZ0T1KUlU8IAX+LxWK3dW6SvN+fr6y0HtDq7UB4rJUQE6ZyuiTq/W6IGt49VcIDL6agAAHyP4gcAgOOodXu0OqdQX23K11ebD2j9vmJJUquo4LrRQJ3jNbRDnMKC/B1OCqC+FZRVa8HWfH29OV/zt+TrUFm1jJF6tYnWmZ3idVaXBPVKipIfU0IBAE0UxQ8AAD9TXnGlvtmcry83HdDCbQdVWlWrQJef0lNbaGiHOJ3WIU49kqJYGwhohmrdHq3ZW6T5W+rKntU5hbJWigkL1Okd43Rm5wQN6xin2PAgp6MCAHBCKH4AADgF1bUeZe0u0Neb87Vg60FtzK0bDRQVEqAh7WO/L4LaxoYyLQxogqy12pJXqkXbDurb7Qe1dEeBSqpqZYzUJzlaZ3ZK0Jmd49WTUT0AgGbqp4ofxqsDAHAcgf5+GtI+TkPax0mS8kuq9O32g1q07aAWbj2oj9ftlyQlRYfotA5xGtoxTkPaxyqO0QKAY7ILyo9cp4f07fZDOlhaJUlqGxuqS3u31tAOsRrSPo6FmQEAXo8RPwAAnAJrrXYdKtfCbQe1aGvdaILiylpJUvv4MA1sF6uBaTHKSItRq6gQh9MC3slaq5zDFVq2q0CZOwv07fZD2lNQLkmKCw/S0A6xGto+TkM6xKpNi1CH0wIAUP+Y6gUAQCNxH9kRaMmOQ1q645Cydh1WSVVdEZQcE6KBabHKSIvRwLQYpcQwNQw4GR6P1dYDpcrcVaBlOwu0bFeBcosqJUkRwf4amBZbV/Z0iFPHhHCuMwCA16P4AQDAIW6P1cbcYi3dWaDMnYeUubNAh8trJEktI4M1IC1G/VKi1Telhbq1ilSgv5/DiYGmp6rWrfX7ir8vebJ2H1bhkesoISJIA9JilJEaowGpMercMoJF1wEAPofiBwCAJsLjsdqeX6olO+umpGT9YKRCoL+feiZFfV8E9UtpoZZRwQ4nBhqXtVZ7Csq1KrtQK/cUamV2oTbuK1a12yNJSosL04DUFhqQWjeFkpFzAABQ/AAA0KTlFlVo5Z5Crdh9WCuzC7V2b5Gqa+t+yG0VFax+KS3UJzlaPdtEqXvrSEUEBzicGKg/RRU1Wp1dqFU/eCsoq5YkhQS41LNNlPomR6tPcrT6p7ZQQgRlKAAAP8auXgAANGGtokLUqmeILu7ZSlLd9vEbcou1cs9hrdhTqJV7Duujtbnfvz4tLkw9kqLUo3WkeiZFqXvrKEWFUgah6TtYWqV1e4u0fl+xNuwr1rp9Rdp9qG4RZmOkDvHhOqdLgvqk1BU9nRMj5O9i+iMAAKeCET8AADQD+SVVWrevSOv3Fmnt3iKt21usvYUV3z+fEhOqHkmR6pEUpa4tI9W5ZYRaRQUzBQaOsNZqb2GF1u0t1oZ9dUXPun1Fyiuu+v41KTGh6t667t9s7zbR6pUcpUhGswEAcFIY8QMAQDMXHxGkszon6KzOCd8/VlBWrfX76oqg9XuLtXZvkeau3f/98xHB/uqcGKHOLY+8HbkfHRroxB8BXshaq/zSKm3NK9Xm/SXaeqCk7jav9Pvd7PyM1CEhXEPax6l760h1bx2lbq0jFRVCyQMAQGNgxA8AAF6kqKJGW/JKtGl/ibbsr/shfNP+YhVX1n7/msTIIHVuGakO8eFKiw9T+7gwtYsPV2JkECOEcFTWWuUVV2nHwVJtP1CqLXml2pxXoq15Jd/vUidJLUID1Ckxou6tZYR6tI5Ul5aRCgl0OZgeAADvx4gfAAB8RFRIgAYc2db6O9/90L5pf7E27y/R5ry6QmjZzgJV1Li/f11YoEtp8WFqFxeutLgwtYsPU/v4cLWNDWVBaR9grdXh8hrtPFh25K1Uuw6Wa8fBMu06WPZf/1YigvzVqWWELuzR8v8XPYkRigsPpDwEAKCJofgBAMDLGWPUMipYLaOCdeYPpop5PFb7iyu182CZduSXant+mXYcLNOKPYf1wZp9+uGg4OjQACW3CFVyTIiSW4SqTUyokluEqE2LULVpEaLgAEZ0NAdlVbXKOVyhvYXlyjlcceStXHsPV2jXoXIVVfz/0Tv+fkbJMaFKiwvT4HaxR0rBukKwZSTrRwEA0FxQ/AAA4KP8/IxaR4eodXSIhnaI+6/nKmvc2n2oXDvyS7W7oFzZBeXKPlyhTbkl+nzDAVW7Pf/1+oSIICW1CFHLyGAlRtaVTD++z3SfhlVaVau84krlFVcqv6TqyP0q7T1cob2FdQXPD6dlSVKgv5/aHCnwLk2KUrv4cKXFhSotLlxtWoQogB21AABo9k6p+DHGXCjpCUkuSS9Zax+pl1QAAMBRwQGu7xeF/jGPp25B37oyqFzZBRXKLijXvqIKbckr0YKtB1VaVfs/HxcZ7K+WUXVlUGxYoGLCghQbHqiYsLq3uPC6x2LCAhUZ7O/zI0rcHquiihoVlFXrcHl13W1ZtQrKq1VQWq0DJVU6UFKpA8V1JU9Ztft/PkdooEuto0PUpkWIeidHKSk69EjRE6KkFiGKCwuSn59v/z0DAODtTrr4Mca4JD0j6TxJOZKWGWPmWGs31Fc4AADQ9Pj5GSUeGc2T/oO1hH6otKpW+4sq696OjEL57v6BkirtOlSmQ6XVKj9KWSFJAS6jFqGBigwJUESwvyKC624jgwMUGexfd/+754ICFBLoUnCAS8EBfgoJqLv/3W2Qv1/jlBvZmfLsXKDqNkNUnthfVbVuVdV4VFnrVkW1W2VVbpVU1qikqlallbUqrap7K/nufmWNiitrdbi8ruAprKjRsfbgCA7wU0JEsBIjg9S1daTO7JygxMggJUYGK+HIbWJksMKDGNwNAICvO5XvBjIkbbPW7pAkY8zrkoZLovgBAMDHhQf5q0NCuDokhP/k6ypr3DpUVjeC5VBZlQrK6ka2fPdYSVWNSiprVVRerZyCchVX1qq4skbVtZ6f/Lw/FuTvp+AAlwJcfnL5Sf5+fvLzk1zGyOX33Vvdcy6/uulN1lp5rJXb88P7VtZKHmvlsVKt26OqWo8612zUFPOQAlQrK3/dUv0HrbCdjpsrOMBP4UHflVv+Cg/yV9dWkYoJDVSLsEDFhAaoRVigWoTWjYqqeyyQaXMAAOCEnUrxkyQp+wfv50ga+OMXGWMmSpooSSkpKadwOAAA4G2CA1xKig5RUnTIz/q4qlq3SiprVVxRVwxV1LhVWeNWZY3nyK37yGMeVdS4VXXksRqPldtt5T5S4vzX25HHaj1WRpKfkfyMkTFGLr+6+3XvSy6/uvsuP6PgAD+dnf+5gvbWyk8e+cmt+7sf0pZOPRUc4Kcgf9d/FTzhQXUlT1iQP2voAACABncqxc/Rxkz/z4Bka+1kSZMlKT09/RgDlgEAAE5ckL9LQeEuxYUHOR2lTvZV0owZkrtafq5A9T/jcvVP5hdeAADAeadS/ORISv7B+20k7Tu1OAAAAM1QcoY0eo60a4GUOqzufQAAgCbgVIqfZZI6GmPSJO2VdL2kkfWSCgAAoLlJzqDwAQAATc5JFz/W2lpjzJ2SPlXddu5TrbXr6y0ZAAAAAAAATskp7fFprZ0raW49ZQEAAAAAAEA9YisJAAAAAAAAL0XxAwAAAAAA4KUofgAAAAAAALwUxQ8AAAAAAICXovgBAAAAAADwUhQ/AAAAAAAAXoriBwAAAAAAwEtR/AAAAAAAAHgpih8AAAAAAAAvZay1jXcwY/Il7W60AzasOEkHnQ6BRsd5912ce9/FufddnHvfxbn3XZx738R5913edO7bWmvjj/ZEoxY/3sQYk2WtTXc6BxoX5913ce59F+fed3HufRfn3ndx7n0T5913+cq5Z6oXAAAAAACAl6L4AQAAAAAA8FIUPydvstMB4AjOu+/i3Psuzr3v4tz7Ls697+Lc+ybOu+/yiXPPGj8AAAAAAABeihE/AAAAAAAAXori5wQZYx4zxmwyxqwxxrxrjIk+xusuNMZsNsZsM8b8rpFjop4ZY64xxqw3xniMMcdc7d0Ys8sYs9YYs8oYk9WYGdEwfsa555r3MsaYGGPMPGPM1iO3LY7xOq57L3G869jUefLI82uMMf2cyIn6dQLn/UxjTNGRa3yVMeZBJ3Ki/hljphpjDhhj1h3jea55L3UC557r3gsZY5KNMV8ZYzYe+f7+nqO8xquve4qfEzdPUg9rbS9JWyT9/scvMMa4JD0j6SJJ3STdYIzp1qgpUd/WSbpS0vwTeO1Z1to+vrAdoI847rnnmvdav5P0hbW2o6Qvjrx/LFz3zdwJXscXSep45G2ipOcaNSTq3c/4+r3gyDXex1r7f40aEg1puqQLf+J5rnnvNV0/fe4lrntvVCvpV9barpIGSbrD1/6vp/g5Qdbaz6y1tUfeXSKpzVFeliFpm7V2h7W2WtLrkoY3VkbUP2vtRmvtZqdzoPGd4LnnmvdOwyXNOHJ/hqQRzkVBIziR63i4pJdtnSWSoo0xrRo7KOoVX799mLV2vqSCn3gJ17yXOoFzDy9krc211q44cr9E0kZJST96mVdf9xQ/J2ecpI+P8niSpOwfvJ+j//0HBe9kJX1mjFlujJnodBg0Gq5575Rorc2V6r5RkJRwjNdx3XuHE7mOuda9z4me08HGmNXGmI+NMd0bJxqaAK5538Z178WMMamS+kpa+qOnvPq693c6QFNijPlcUsujPHW/tfb9I6+5X3VDxV492qc4ymNsm9bEnch5PwFDrbX7jDEJkuYZYzYd+Y0CmrB6OPdc883UT537n/FpuO69w4lcx1zr3udEzukKSW2ttaXGmIslvae6KQDwflzzvovr3osZY8IlvS3pXmtt8Y+fPsqHeM11T/HzA9bac3/qeWPMaEmXSjrHWnu0fwQ5kpJ/8H4bSfvqLyEawvHO+wl+jn1Hbg8YY95V3RByfgBs4urh3HPNN1M/de6NMXnGmFbW2twjQ3wPHONzcN17hxO5jrnWvc9xz+kPfyiw1s41xjxrjImz1h5spIxwDte8j+K6917GmADVlT6vWmvfOcpLvPq6Z6rXCTLGXCjpt5Iut9aWH+NlyyR1NMakGWMCJV0vaU5jZYQzjDFhxpiI7+5LOl91CwPD+3HNe6c5kkYfuT9a0v+M/uK69yonch3PkXTzkR0/Bkkq+m46IJqt4553Y0xLY4w5cj9Ddd83H2r0pHAC17yP4rr3TkfO6RRJG621/z7Gy7z6umfEz4l7WlKQ6obzS9ISa+1txpjWkl6y1l5sra01xtwp6VNJLklTrbXrnYuMU2WMuULSU5LiJX1kjFllrb3gh+ddUqKkd4/8u/CXNMta+4ljoVEvTuTcc817rUckvWmMGS9pj6RrJInr3jsd6zo2xtx25PnnJc2VdLGkbZLKJY11Ki/qxwme96slTTLG1EqqkHT9MUZ8o5kxxrwm6UxJccaYHEl/khQgcc17uxM491z33mmopFGS1hpjVh157A+SUiTfuO4N/44BAAAAAAC8E1O9AAAAAAAAvBTFDwAAAAAAgJei+AEAAAAAAPBSFD8AAAAAAABeiuIHAAAAAADAS1H8AAAAAAAAeCmKHwAAAAAAAC9F8QMAAAAAAOCl/h89WaGAy9VmBAAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure()\n", "plt.plot(X, Y)\n", "plt.plot(X_sampled, Y_sampled, '.')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "k = gpflow.kernels.SquaredExponential() + gpflow.kernels.Linear()" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
name class transform prior trainable shape dtype value
Sum.kernels[0].variance ParameterSoftplus True () float64 1
Sum.kernels[0].lengthscalesParameterSoftplus True () float64 1
Sum.kernels[1].variance ParameterSoftplus True () float64 1
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print_summary(k)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
name class transform prior trainable shape dtype value
GPR.kernel.kernels[0].variance ParameterSoftplus True () float64 1
GPR.kernel.kernels[0].lengthscalesParameterSoftplus True () float64 1
GPR.kernel.kernels[1].variance ParameterSoftplus True () float64 1
GPR.likelihood.variance ParameterSoftplus + Shift True () float64 1
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "model = gpflow.models.GPR(\n", " data = (X_sampled, Y_sampled), \n", " kernel = k, \n", " mean_function = None\n", " )\n", "print_summary(model)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "from datetime import datetime" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "opt = gpflow.optimizers.Scipy()" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Finished fitting in 0:00:00.980794\n" ] }, { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
name class transform prior trainable shape dtype value
GPR.kernel.kernels[0].variance ParameterSoftplus True () float641031.13
GPR.kernel.kernels[0].lengthscalesParameterSoftplus True () float64 3.57915
GPR.kernel.kernels[1].variance ParameterSoftplus True () float64 5.2804e-48
GPR.likelihood.variance ParameterSoftplus + Shift True () float64 0.336471
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "start_time = datetime.now()\n", "opt.minimize(model.training_loss, model.trainable_variables)\n", "print(f\"Finished fitting in {datetime.now() - start_time}\")\n", "print_summary(model)" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "## generate test points for prediction\n", "xx = np.linspace(-2.1, 2.1, 100).reshape(100, 1) # test points must be of shape (N, D)\n", "\n", "## predict mean and variance of latent GP at test points\n", "mean, var = model.predict_f(xx)\n", "\n", "## generate 10 samples from posterior\n", "tf.random.set_seed(1) # for reproducibility\n", "samples = model.predict_f_samples(xx, 10) # shape (10, 100, 1)\n", "\n", "## plot\n", "plt.figure()\n", "plt.plot(X_sampled, Y_sampled, \"kx\", mew=2)\n", "plt.plot(xx, mean, \"C0\", lw=2)\n", "plt.fill_between(\n", " xx[:, 0],\n", " mean[:, 0] - 1.96 * np.sqrt(var[:, 0]),\n", " mean[:, 0] + 1.96 * np.sqrt(var[:, 0]),\n", " color=\"C0\",\n", " alpha=0.2,\n", ")\n", "plt.plot(xx, samples[:, :, 0].numpy().T, \"C0\", linewidth=0.5)\n", "#plt.plot(X, Y, color = 'darkorange', lw = 2)\n", "_ = plt.xlim(-2.1, 2.1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## CasADi part" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "# Package the resulting regression model in a CasADi callback\n", "class GPR(cs.Callback):\n", " def __init__(self, name, opts={}):\n", " cs.Callback.__init__(self)\n", " self.construct(name, opts)\n", "\n", " def eval(self, arg):\n", " [mean, _] = model.predict_y(np.array(arg[0]))\n", " return [mean.numpy()]" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "GPR:(i0)->(o0) CallbackInternal\n" ] } ], "source": [ "# Instantiate the Callback (make sure to keep a reference to it!)\n", "gpr = GPR('GPR', {\"enable_fd\":True})\n", "print(gpr)" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "# Find the minimum of the regression model\n", "x = cs.MX.sym(\"x\")\n", "y = 2 * gpr(x) + 5\n", "f = cs.Function('f', [x], [y])" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [], "source": [ "prob = {\"x\":x,\"f\":f(x)}\n", "options = {\"ipopt\": {\"hessian_approximation\": \"limited-memory\", \"max_iter\": 500,\n", " \"acceptable_tol\": 1e-5,\n", " #\"linear_solver\": \"SPRAL\",\n", " \"acceptable_obj_change_tol\": 1e-3, \n", " #\"mu_strategy\": \"adaptive\",\n", " #\"expect_infeasible_problem\": \"yes\"\n", " }}" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "This is Ipopt version 3.13.4, running with linear solver mumps.\n", "NOTE: Other linear solvers might be more efficient (see Ipopt documentation).\n", "\n", "Number of nonzeros in equality constraint Jacobian...: 0\n", "Number of nonzeros in inequality constraint Jacobian.: 0\n", "Number of nonzeros in Lagrangian Hessian.............: 0\n", "\n", "Total number of variables............................: 1\n", " variables with only lower bounds: 0\n", " variables with lower and upper bounds: 1\n", " variables with only upper bounds: 0\n", "Total number of equality constraints.................: 0\n", "Total number of inequality constraints...............: 0\n", " inequality constraints with only lower bounds: 0\n", " inequality constraints with lower and upper bounds: 0\n", " inequality constraints with only upper bounds: 0\n", "\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 0 4.3566376e+00 0.00e+00 1.51e-01 0.0 0.00e+00 - 0.00e+00 0.00e+00 0\n", " 1 4.3561821e+00 0.00e+00 1.75e-01 -5.7 7.55e-02 - 9.54e-01 2.50e-01f 3\n", " 2 4.3557888e+00 0.00e+00 1.19e-04 -2.7 7.62e-03 - 9.98e-01 1.00e+00f 1\n", " 3 4.3557888e+00 0.00e+00 2.47e-05 -8.7 2.29e-05 - 9.98e-01 1.00e+00f 1\n", " 4 4.3557888e+00 0.00e+00 6.55e-06 -11.0 1.68e-06 - 1.00e+00 1.00e+00f 1\n", " 5 4.3557888e+00 0.00e+00 4.68e-06 -10.1 6.18e-07 - 1.00e+00 5.00e-01f 2\n", " 6 4.3557888e+00 0.00e+00 4.68e-06 -10.1 1.29e-07 - 1.00e+00 3.64e-12f 39\n", " 7 4.3557888e+00 0.00e+00 4.68e-06 -10.1 1.29e-07 - 1.00e+00 3.64e-12f 39\n", " 8 4.3557888e+00 0.00e+00 4.68e-06 -10.1 1.29e-07 - 1.00e+00 3.64e-12f 39\n", " 9 4.3557888e+00 0.00e+00 1.54e-05 -10.1 4.68e-06 - 1.00e+00 1.25e-01f 4\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 10 4.3557888e+00 0.00e+00 1.44e-05 -10.1 1.54e-05 - 1.00e+00 2.44e-04f 13\n", " 11 4.3557888e+00 0.00e+00 1.11e-05 -10.1 5.23e-08 - 1.00e+00 5.00e-01f 2\n", " 12 4.3557888e+00 0.00e+00 2.19e-06 -10.1 1.14e-08 - 1.00e+00 1.22e-04f 14\n", " 13 4.3557888e+00 0.00e+00 1.60e-05 -10.1 3.42e-13 - 1.00e+00 2.50e-01f 3\n", " 14 4.3557888e+00 0.00e+00 6.64e-06 -10.1 7.51e-14 - 1.00e+00 7.81e-03f 8\n", " 15 4.3557888e+00 0.00e+00 9.34e-06 -10.1 3.11e-14 - 1.00e+00 1.00e+00w 1\n", " 16 4.3557888e+00 0.00e+00 4.30e-07 -10.1 1.82e-14 - 1.00e+00 1.00e+00w 1\n", " 17 4.3557888e+00 0.00e+00 1.05e-06 -11.0 8.38e-16 - 1.00e+00 1.00e+00 0\n", " 18 4.3557888e+00 0.00e+00 3.52e-06 -11.0 2.04e-15 - 1.00e+00 1.00e+00T 0\n", " 19 4.3557888e+00 0.00e+00 1.54e-05 -9.0 3.52e-06 - 1.00e+00 7.81e-03f 8\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 20 4.3557888e+00 0.00e+00 8.17e-06 -9.0 1.54e-05 - 1.00e+00 9.77e-04f 11\n", " 21 4.3557888e+00 0.00e+00 1.26e-05 -9.0 5.22e-09 - 1.00e+00 9.54e-07f 21\n", " 22 4.3557888e+00 0.00e+00 7.43e-06 -9.0 8.06e-09 - 1.00e+00 1.95e-03f 10\n", " 23 4.3557888e+00 0.00e+00 8.75e-06 -9.0 5.83e-12 - 1.00e+00 6.10e-05f 15\n", " 24 4.3557888e+00 0.00e+00 4.37e-06 -9.0 6.87e-12 - 1.00e+00 1.22e-04f 14\n", " 25 4.3557888e+00 0.00e+00 2.59e-05 -9.0 3.43e-12 - 1.00e+00 4.88e-04f 12\n", " 26 4.3557888e+00 0.00e+00 1.05e-05 -9.0 2.59e-05 - 1.00e+00 5.82e-11f 35\n", " 27 4.3557888e+00 0.00e+00 1.39e-05 -9.0 1.05e-05 - 1.00e+00 1.82e-12f 40\n", " 28 4.3557888e+00 0.00e+00 1.05e-05 -9.0 1.39e-05 - 1.00e+00 3.64e-12f 39\n", " 29 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.05e-05 - 1.00e+00 1.00e+00w 1\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 30 4.3557888e+00 0.00e+00 3.05e-06 -9.0 9.75e-06 - 1.00e+00 1.00e+00w 1\n", " 31 4.3557888e+00 0.00e+00 2.19e-05 -9.0 2.24e-07 - 1.00e+00 1.00e+00w 1\n", " 32 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.60e-06 - 1.00e+00 1.00e+00S 21\n", " 33 4.3557888e+00 0.00e+00 5.27e-06 -9.0 1.19e-05 - 1.00e+00 1.00e+00f 1\n", " 34 4.3557888e+00 0.00e+00 1.81e-05 -9.0 4.79e-07 - 1.00e+00 1.56e-02f 7\n", " 35 4.3557888e+00 0.00e+00 1.13e-05 -9.0 5.79e-09 - 1.00e+00 1.00e+00f 1\n", " 36 4.3557888e+00 0.00e+00 5.75e-06 -9.0 9.70e-09 - 1.00e+00 1.22e-04f 14\n", " 37 4.3557888e+00 0.00e+00 1.67e-05 -9.0 3.99e-13 - 1.00e+00 1.00e+00f 1\n", " 38 4.3557888e+00 0.00e+00 4.57e-06 -9.0 2.97e-13 - 1.00e+00 4.88e-04f 12\n", " 39 4.3557888e+00 0.00e+00 3.80e-05 -9.0 8.13e-14 - 1.00e+00 4.88e-04f 12\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 40 4.3557888e+00 0.00e+00 5.16e-06 -9.0 6.76e-13 - 1.00e+00 6.25e-02f 5\n", " 41 4.3557888e+00 0.00e+00 2.95e-05 -9.0 5.16e-06 - 1.00e+00 2.50e-01f 3\n", " 42 4.3557888e+00 0.00e+00 4.46e-06 -9.0 1.10e-06 - 1.00e+00 6.25e-02f 5\n", " 43 4.3557888e+00 0.00e+00 3.53e-06 -9.0 1.22e-08 - 1.00e+00 3.12e-02f 6\n", " 44 4.3557888e+00 0.00e+00 1.70e-06 -9.0 1.68e-10 - 1.00e+00 2.38e-07f 23\n", " 45 4.3557888e+00 0.00e+00 5.92e-06 -9.0 8.10e-11 - 1.00e+00 2.50e-01f 3\n", " 46 4.3557888e+00 0.00e+00 1.12e-05 -9.0 1.57e-11 - 1.00e+00 4.88e-04f 12\n", " 47 4.3557888e+00 0.00e+00 1.12e-05 -9.0 2.97e-11 - 1.00e+00 1.49e-08f 27\n", " 48 4.3557888e+00 0.00e+00 8.63e-06 -9.0 2.97e-11 - 1.00e+00 1.00e+00w 1\n", " 49 4.3557888e+00 0.00e+00 1.37e-04 -9.0 8.63e-06 - 1.00e+00 1.00e+00w 1\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 50 4.3557888e+00 0.00e+00 2.66e-05 -9.0 8.12e-06 - 1.00e+00 1.00e+00w 1\n", " 51 4.3557888e+00 0.00e+00 1.12e-05 -9.0 1.96e-06 - 1.00e+00 1.49e-08f 26\n", " 52 4.3557888e+00 0.00e+00 1.12e-05 -9.0 3.70e-07 - 1.00e+00 1.82e-12f 40\n", " 53 4.3557888e+00 0.00e+00 1.12e-05 -9.0 3.70e-07 - 1.00e+00 1.82e-12f 40\n", " 54 4.3557888e+00 0.00e+00 1.12e-05 -9.0 3.70e-07 - 1.00e+00 1.82e-12f 40\n", " 55 4.3557888e+00 0.00e+00 2.03e-05 -9.0 1.12e-05 - 1.00e+00 3.05e-05f 16\n", " 56 4.3557888e+00 0.00e+00 4.20e-06 -9.0 2.03e-05 - 1.00e+00 5.82e-11f 35\n", " 57 4.3557888e+00 0.00e+00 4.20e-06 -9.0 4.20e-06 - 1.00e+00 3.64e-12f 39\n", " 58 4.3557888e+00 0.00e+00 4.20e-06 -9.0 4.20e-06 - 1.00e+00 1.14e-13f 44\n", " 59 4.3557888e+00 0.00e+00 4.20e-06 -9.0 4.20e-06 - 1.00e+00 1.14e-13f 44\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 60 4.3557888e+00 0.00e+00 4.20e-06 -9.0 4.20e-06 - 1.00e+00 1.14e-13f 44\n", " 61 4.3557888e+00 0.00e+00 6.64e-05 -9.0 4.20e-06 - 1.00e+00 1.00e+00w 1\n", " 62 4.3557888e+00 0.00e+00 2.68e-06 -9.0 3.95e-06 - 1.00e+00 1.00e+00w 1\n", " 63 4.3557888e+00 0.00e+00 1.22e-05 -9.0 1.53e-07 - 1.00e+00 1.00e+00w 1\n", " 64 4.3557888e+00 0.00e+00 6.64e-05 -9.0 1.26e-07 - 1.00e+00 1.00e+00S 21\n", " 65 4.3557888e+00 0.00e+00 1.83e-05 -9.0 4.65e-06 - 1.00e+00 1.00e+00f 1\n", " 66 4.3557888e+00 0.00e+00 1.82e-05 -9.0 1.00e-06 - 1.00e+00 1.00e+00f 1\n", " 67 4.3557888e+00 0.00e+00 1.38e-05 -9.0 5.00e-07 - 1.00e+00 4.66e-10f 32\n", " 68 4.3557888e+00 0.00e+00 3.48e-06 -9.0 3.80e-07 - 1.00e+00 4.88e-04f 12\n", " 69 4.3557888e+00 0.00e+00 5.28e-06 -9.0 3.74e-11 - 1.00e+00 1.53e-05f 17\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 70 4.3557888e+00 0.00e+00 1.92e-05 -9.0 5.67e-11 - 1.00e+00 9.54e-07f 21\n", " 71 4.3557888e+00 0.00e+00 1.92e-05 -9.0 2.06e-10 - 1.00e+00 1.49e-08f 27\n", " 72 4.3557888e+00 0.00e+00 1.92e-05 -9.0 1.92e-05 - 1.00e+00 2.84e-14f 46\n", " 73 4.3557888e+00 0.00e+00 1.92e-05 -9.0 1.92e-05 - 1.00e+00 2.84e-14f 46\n", " 74 4.3557888e+00 0.00e+00 1.92e-05 -9.0 1.92e-05 - 1.00e+00 2.84e-14f 46\n", " 75 4.3557888e+00 0.00e+00 1.92e-05 -9.0 1.92e-05 - 1.00e+00 2.84e-14f 46\n", " 76 4.3557888e+00 0.00e+00 1.92e-05 -9.0 1.92e-05 - 1.00e+00 2.84e-14f 46\n", " 77 4.3557888e+00 0.00e+00 2.35e-04 -9.0 1.92e-05 - 1.00e+00 1.00e+00w 1\n", " 78 4.3557891e+00 0.00e+00 2.92e-03 -9.0 2.35e-04 - 1.00e+00 1.00e+00w 1\n", " 79 4.3557888e+00 0.00e+00 5.45e-06 -9.0 2.17e-04 - 1.00e+00 1.00e+00w 1\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 80 4.3557888e+00 0.00e+00 2.35e-04 -9.0 4.05e-07 - 1.00e+00 1.00e+00S 21\n", " 81 4.3557888e+00 0.00e+00 5.30e-06 -9.0 1.79e-05 - 1.00e+00 1.00e+00f 1\n", " 82 4.3557888e+00 0.00e+00 3.86e-06 -9.0 4.14e-07 - 1.00e+00 1.00e+00f 1\n", " 83 4.3557888e+00 0.00e+00 9.12e-06 -9.0 1.10e-06 - 1.00e+00 5.00e-01f 2\n", " 84 4.3557888e+00 0.00e+00 1.81e-05 -9.0 2.61e-06 - 1.00e+00 3.12e-02f 6\n", " 85 4.3557888e+00 0.00e+00 9.04e-06 -9.0 5.43e-08 - 1.00e+00 1.00e+00f 1\n", " 86 4.3557888e+00 0.00e+00 6.84e-06 -9.0 5.40e-08 - 1.00e+00 5.00e-01f 2\n", " 87 4.3557888e+00 0.00e+00 9.35e-06 -9.0 1.16e-08 - 1.00e+00 5.00e-01f 2\n", " 88 4.3557888e+00 0.00e+00 1.01e-05 -9.0 1.59e-08 - 1.00e+00 2.44e-04f 13\n", " 89 4.3557888e+00 0.00e+00 1.26e-05 -9.0 2.02e-12 - 1.00e+00 3.05e-05f 16\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 90 4.3557888e+00 0.00e+00 1.24e-05 -9.0 2.50e-12 - 1.00e+00 7.63e-06f 18\n", " 91 4.3557888e+00 0.00e+00 6.62e-06 -9.0 2.46e-12 - 1.00e+00 1.53e-05f 17\n", " 92 4.3557888e+00 0.00e+00 1.10e-05 -9.0 6.62e-06 - 1.00e+00 3.64e-12f 39\n", " 93 4.3557888e+00 0.00e+00 8.95e-06 -9.0 1.10e-05 - 1.00e+00 2.27e-13f 43\n", " 94 4.3557888e+00 0.00e+00 8.95e-06 -9.0 8.95e-06 - 1.00e+00 2.27e-13f 43\n", " 95 4.3557888e+00 0.00e+00 8.95e-06 -9.0 8.95e-06 - 1.00e+00 5.68e-14f 45\n", " 96 4.3557888e+00 0.00e+00 1.32e-04 -9.0 8.95e-06 - 1.00e+00 1.00e+00w 1\n", " 97 4.3557888e+00 0.00e+00 2.44e-05 -9.0 8.38e-06 - 1.00e+00 1.00e+00w 1\n", " 98 4.3557888e+00 0.00e+00 1.66e-05 -9.0 1.31e-06 - 1.00e+00 1.00e+00w 1\n", " 99 4.3557888e+00 0.00e+00 1.32e-04 -9.0 5.30e-07 - 1.00e+00 1.00e+00S 21\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 100 4.3557888e+00 0.00e+00 3.32e-06 -9.0 8.09e-06 - 1.00e+00 1.00e+00f 1\n", " 101 4.3557888e+00 0.00e+00 1.89e-05 -9.0 1.99e-07 - 1.00e+00 2.50e-01f 3\n", " 102 4.3557888e+00 0.00e+00 2.90e-05 -9.0 4.23e-08 - 1.00e+00 1.00e+00f 1\n", " 103 4.3557888e+00 0.00e+00 9.38e-06 -9.0 6.48e-08 - 1.00e+00 1.00e+00f 1\n", " 104 4.3557888e+00 0.00e+00 3.74e-05 -9.0 3.10e-08 - 1.00e+00 1.25e-01f 4\n", " 105 4.3557888e+00 0.00e+00 2.03e-05 -9.0 1.24e-07 - 1.00e+00 2.98e-08f 26\n", " 106 4.3557888e+00 0.00e+00 4.42e-06 -9.0 6.70e-08 - 1.00e+00 1.00e+00f 1\n", " 107 4.3557888e+00 0.00e+00 8.32e-07 -9.0 4.42e-06 - 1.00e+00 4.77e-07f 22\n", " 108 4.3557888e+00 0.00e+00 1.13e-05 -9.0 3.34e-13 - 1.00e+00 1.22e-04f 14\n", " 109 4.3557888e+00 0.00e+00 1.58e-05 -9.0 4.54e-12 - 1.00e+00 3.91e-03f 9\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 110 4.3557888e+00 0.00e+00 2.52e-05 -9.0 6.32e-12 - 1.00e+00 1.53e-05f 17\n", " 111 4.3557888e+00 0.00e+00 1.13e-05 -9.0 2.52e-05 - 1.00e+00 3.12e-02f 6\n", " 112 4.3557888e+00 0.00e+00 7.51e-06 -9.0 2.44e-07 - 1.00e+00 5.00e-01f 2\n", " 113 4.3557888e+00 0.00e+00 3.87e-08 -9.0 4.87e-08 - 1.00e+00 1.00e+00f 1\n", " 114 4.3557888e+00 0.00e+00 6.03e-06 -9.0 2.52e-10 - 1.00e+00 1.00e+00f 1\n", " 115 4.3557888e+00 0.00e+00 1.86e-05 -9.0 3.93e-08 - 1.00e+00 1.95e-03f 10\n", " 116 4.3557888e+00 0.00e+00 1.72e-05 -9.0 5.79e-11 - 1.00e+00 9.54e-07f 21\n", " 117 4.3557888e+00 0.00e+00 1.89e-06 -9.0 5.38e-11 - 1.00e+00 4.88e-04f 12\n", " 118 4.3557888e+00 0.00e+00 2.14e-05 -9.0 2.60e-15 - 1.00e+00 7.81e-03f 8\n", " 119 4.3557888e+00 0.00e+00 1.35e-06 -9.0 2.94e-14 - 1.00e+00 5.00e-01f 2\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 120 4.3557888e+00 0.00e+00 9.35e-06 -9.0 1.86e-15 - 1.00e+00 1.00e+00 0\n", " 121 4.3557888e+00 0.00e+00 1.13e-05 -9.0 9.35e-06 - 1.00e+00 1.46e-11f 37\n", " 122 4.3557888e+00 0.00e+00 1.13e-05 -9.0 1.13e-05 - 1.00e+00 3.64e-12f 39\n", " 123 4.3557888e+00 0.00e+00 1.13e-05 -9.0 1.13e-05 - 1.00e+00 5.68e-14f 45\n", " 124 4.3557888e+00 0.00e+00 1.13e-05 -9.0 1.13e-05 - 1.00e+00 5.68e-14f 45\n", " 125 4.3557888e+00 0.00e+00 1.13e-05 -9.0 1.13e-05 - 1.00e+00 5.68e-14f 45\n", " 126 4.3557888e+00 0.00e+00 1.13e-05 -9.0 1.13e-05 - 1.00e+00 5.68e-14f 45\n", " 127 4.3557888e+00 0.00e+00 1.13e-05 -9.0 1.13e-05 - 1.00e+00 5.68e-14f 45\n", " 128 4.3557888e+00 0.00e+00 1.13e-05 -9.0 1.13e-05 - 1.00e+00 5.68e-14f 45\n", " 129 4.3557888e+00 0.00e+00 1.13e-05 -9.0 1.13e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 130 4.3557888e+00 0.00e+00 1.13e-05 -9.0 1.13e-05 - 1.00e+00 5.68e-14f 45\n", " 131 4.3557888e+00 0.00e+00 1.31e-04 -9.0 1.13e-05 - 1.00e+00 1.00e+00w 1\n", " 132 4.3557888e+00 0.00e+00 6.04e-06 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 133 4.3557888e+00 0.00e+00 2.20e-05 -9.0 4.61e-07 - 1.00e+00 1.00e+00w 1\n", " 134 4.3557888e+00 0.00e+00 1.31e-04 -9.0 3.62e-07 - 1.00e+00 1.00e+00S 21\n", " 135 4.3557888e+00 0.00e+00 1.21e-05 -9.0 1.20e-05 - 1.00e+00 1.00e+00f 1\n", " 136 4.3557888e+00 0.00e+00 1.55e-05 -9.0 1.02e-06 - 1.00e+00 1.00e+00f 1\n", " 137 4.3557888e+00 0.00e+00 1.04e-05 -9.0 5.71e-07 - 1.00e+00 3.81e-06f 19\n", " 138 4.3557888e+00 0.00e+00 2.13e-05 -9.0 4.54e-12 - 1.00e+00 5.00e-01f 2\n", " 139 4.3557888e+00 0.00e+00 1.38e-05 -9.0 9.27e-12 - 1.00e+00 1.56e-02f 7\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 140 4.3557888e+00 0.00e+00 7.70e-07 -9.0 2.64e-13 - 1.00e+00 4.88e-04f 12\n", " 141 4.3557888e+00 0.00e+00 7.70e-07 -9.0 1.47e-14 - 1.00e+00 1.95e-03f 10\n", " 142 4.3557888e+00 0.00e+00 7.70e-07 -9.0 1.47e-14 - 1.00e+00 9.77e-04f 11\n", " 143 4.3557888e+00 0.00e+00 7.70e-07 -9.0 7.70e-07 - 1.00e+00 3.64e-12f 39\n", " 144 4.3557888e+00 0.00e+00 7.70e-07 -9.0 7.70e-07 - 1.00e+00 9.09e-13f 41\n", " 145 4.3557888e+00 0.00e+00 7.70e-07 -9.0 7.70e-07 - 1.00e+00 9.09e-13f 41\n", " 146 4.3557888e+00 0.00e+00 7.70e-07 -9.0 7.70e-07 - 1.00e+00 9.09e-13f 41\n", " 147 4.3557888e+00 0.00e+00 7.78e-06 -9.0 7.70e-07 - 1.00e+00 1.00e+00w 1\n", " 148 4.3557888e+00 0.00e+00 5.43e-06 -9.0 7.01e-07 - 1.00e+00 1.00e+00w 1\n", " 149 4.3557888e+00 0.00e+00 2.41e-05 -9.0 2.88e-07 - 1.00e+00 1.00e+00w 1\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 150 4.3557888e+00 0.00e+00 7.78e-06 -9.0 2.35e-07 - 1.00e+00 1.00e+00S 21\n", " 151 4.3557888e+00 0.00e+00 5.15e-06 -9.0 7.58e-08 - 1.00e+00 1.00e+00f 1\n", " 152 4.3557888e+00 0.00e+00 1.34e-05 -9.0 1.48e-07 - 1.00e+00 1.00e+00f 1\n", " 153 4.3557888e+00 0.00e+00 1.08e-06 -9.0 3.86e-07 - 1.00e+00 1.25e-01f 4\n", " 154 4.3557888e+00 0.00e+00 1.12e-05 -9.0 3.60e-09 - 1.00e+00 5.00e-01f 2\n", " 155 4.3557888e+00 0.00e+00 1.67e-05 -9.0 1.64e-09 - 1.00e+00 9.77e-04f 11\n", " 156 4.3557888e+00 0.00e+00 1.22e-05 -9.0 9.62e-13 - 1.00e+00 3.05e-05f 16\n", " 157 4.3557888e+00 0.00e+00 2.06e-05 -9.0 6.99e-13 - 1.00e+00 9.77e-04f 11\n", " 158 4.3557888e+00 0.00e+00 2.61e-05 -9.0 1.18e-12 - 1.00e+00 4.88e-04f 12\n", " 159 4.3557888e+00 0.00e+00 1.64e-05 -9.0 2.61e-05 - 1.00e+00 1.46e-11f 37\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 160 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.64e-05 - 1.00e+00 3.64e-12f 39\n", " 161 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 4.55e-13f 42\n", " 162 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 163 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 164 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 165 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 166 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 167 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 168 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 169 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 170 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 171 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 172 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 173 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 174 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 175 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 176 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 177 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 178 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 179 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 180 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 181 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 182 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 183 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 184 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 185 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 186 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 187 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 188 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 189 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 190 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 191 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 192 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 193 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 194 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 195 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 196 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 197 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 198 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 199 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 200 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 201 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 202 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 203 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 204 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 205 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 206 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 207 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 208 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 209 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 210 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 211 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 212 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 213 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 214 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 215 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 216 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 217 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 218 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 219 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 220 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 221 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 222 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 223 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 224 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 225 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 226 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 227 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 228 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 229 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 230 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 231 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 232 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 233 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 234 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 235 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 236 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 237 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 238 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 239 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 240 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 241 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 242 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 243 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 244 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 245 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 246 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 247 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 248 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 249 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 250 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 251 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 252 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 253 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 254 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 255 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 256 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 257 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 258 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 259 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 260 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 261 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 262 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 263 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 264 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 265 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 266 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 267 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 268 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 269 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 270 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 271 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 272 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 273 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 274 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 275 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 276 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 277 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 278 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 279 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 280 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 281 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 282 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 283 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 284 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 285 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 286 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 287 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 288 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 289 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 290 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 291 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 292 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 293 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 294 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 295 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 296 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 297 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 298 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 299 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 300 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 301 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 302 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 303 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 304 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 305 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 306 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 307 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 308 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 309 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 310 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 311 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 312 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 313 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 314 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 315 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 316 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 317 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 318 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 319 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 320 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Exception ignored in: ))>\n", "Traceback (most recent call last):\n", " File \"/usr/lib/python3.9/site-packages/tensorflow_probability/python/internal/cache_util.py\", line 153, in _cleanup\n", " if self._alive:\n", "AttributeError: _alive\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 321 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", "Warning: Cutting back alpha due to evaluation error\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "CasADi - 2021-04-15 15:16:54 WARNING(\"solver:nlp_f failed:Error in Function::operator() for 'nlp_f' [MXFunction] at .../casadi/core/function.cpp:1368:\n", "Error in Function::operator() for 'GPR' [CallbackInternal] at .../casadi/core/function.cpp:1368:\n", ".../casadi/core/function_internal.cpp:3366: Failed to evaluate 'eval_dm' for GPR:\n", ".../casadi/core/callback_internal.cpp:122: Error calling \"eval\" for object GPR:\n", "KeyboardInterrupt\") [.../casadi/core/oracle_function.cpp:223]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 322 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 323 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 324 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 325 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 326 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 327 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 328 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 329 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 330 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 331 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 332 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 333 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 334 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 335 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 336 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 337 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 338 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 339 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 340 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 341 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 342 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 343 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 344 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 345 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 346 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 347 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 348 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 349 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 350 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 351 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 352 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 353 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 354 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 355 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 356 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 357 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 358 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 359 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 360 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 361 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 362 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 363 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 364 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 365 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 366 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 367 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 368 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 369 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 370 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 371 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 372 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 373 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 374 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 375 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 376 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 377 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 378 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 379 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 380 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 381 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 382 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 383 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 384 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 385 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 386 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 387 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 388 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 389 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 390 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 391 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 392 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 393 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 394 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 395 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 396 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 397 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 398 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 399 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 400 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", "Warning: Cutting back alpha due to evaluation error\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "CasADi - 2021-04-15 15:17:28 WARNING(\"solver:nlp_f failed:Error in Function::operator() for 'nlp_f' [MXFunction] at .../casadi/core/function.cpp:1368:\n", "Error in Function::operator() for 'GPR' [CallbackInternal] at .../casadi/core/function.cpp:1368:\n", ".../casadi/core/function_internal.cpp:3366: Failed to evaluate 'eval_dm' for GPR:\n", ".../casadi/core/callback_internal.cpp:122: Error calling \"eval\" for object GPR:\n", "KeyboardInterrupt\") [.../casadi/core/oracle_function.cpp:223]\n", "Exception ignored in: ))>\n", "Traceback (most recent call last):\n", " File \"/usr/lib/python3.9/site-packages/tensorflow_probability/python/internal/cache_util.py\", line 153, in _cleanup\n", " if self._alive:\n", "AttributeError: _alive\n", "CasADi - 2021-04-15 15:17:28 WARNING(\"solver:nlp_f failed:Error in Function::operator() for 'nlp_f' [MXFunction] at .../casadi/core/function.cpp:1368:\n", "Error in Function::operator() for 'GPR' [CallbackInternal] at .../casadi/core/function.cpp:1368:\n", ".../casadi/core/function_internal.cpp:3366: Failed to evaluate 'eval_dm' for GPR:\n", ".../casadi/core/callback_internal.cpp:122: Error calling \"eval\" for object GPR:\n", "KeyboardInterrupt\") [.../casadi/core/oracle_function.cpp:223]\n", "CasADi - 2021-04-15 15:17:28 WARNING(\"solver:nlp_f failed:Error in Function::operator() for 'nlp_f' [MXFunction] at .../casadi/core/function.cpp:1368:\n", "Error in Function::operator() for 'GPR' [CallbackInternal] at .../casadi/core/function.cpp:1368:\n", ".../casadi/core/function_internal.cpp:3366: Failed to evaluate 'eval_dm' for GPR:\n", ".../casadi/core/callback_internal.cpp:122: Error calling \"eval\" for object GPR:\n", "KeyboardInterrupt\") [.../casadi/core/oracle_function.cpp:223]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Warning: Cutting back alpha due to evaluation error\n", "Warning: Cutting back alpha due to evaluation error\n", " 401 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 402 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 403 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 404 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 405 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 406 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "Warning: Cutting back alpha due to evaluation error\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "CasADi - 2021-04-15 15:17:31 WARNING(\"solver:nlp_f failed:Error in Function::operator() for 'nlp_f' [MXFunction] at .../casadi/core/function.cpp:1368:\n", "Error in Function::operator() for 'GPR' [CallbackInternal] at .../casadi/core/function.cpp:1368:\n", ".../casadi/core/function_internal.cpp:3366: Failed to evaluate 'eval_dm' for GPR:\n", ".../casadi/core/callback_internal.cpp:122: Error calling \"eval\" for object GPR:\n", "KeyboardInterrupt\") [.../casadi/core/oracle_function.cpp:223]\n", "Exception ignored in: ))>\n", "Traceback (most recent call last):\n", " File \"/usr/lib/python3.9/site-packages/tensorflow_probability/python/internal/cache_util.py\", line 153, in _cleanup\n", " if self._alive:\n", "AttributeError: _alive\n", "CasADi - 2021-04-15 15:17:31 WARNING(\"solver:nlp_f failed:Error in Function::operator() for 'nlp_f' [MXFunction] at .../casadi/core/function.cpp:1368:\n", "Error in Function::operator() for 'GPR' [CallbackInternal] at .../casadi/core/function.cpp:1368:\n", ".../casadi/core/function_internal.cpp:3366: Failed to evaluate 'eval_dm' for GPR:\n", ".../casadi/core/callback_internal.cpp:122: Error calling \"eval\" for object GPR:\n", "KeyboardInterrupt\") [.../casadi/core/oracle_function.cpp:223]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Warning: Cutting back alpha due to evaluation error\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Exception ignored in: ))>\n", "Traceback (most recent call last):\n", " File \"/usr/lib/python3.9/site-packages/tensorflow_probability/python/internal/cache_util.py\", line 153, in _cleanup\n", " if self._alive:\n", "AttributeError: _alive\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 407 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "Warning: SOC step rejected due to evaluation error\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "CasADi - 2021-04-15 15:17:31 WARNING(\"solver:nlp_f failed:Error in Function::operator() for 'nlp_f' [MXFunction] at .../casadi/core/function.cpp:1368:\n", "Error in Function::operator() for 'GPR' [CallbackInternal] at .../casadi/core/function.cpp:1368:\n", ".../casadi/core/function_internal.cpp:3366: Failed to evaluate 'eval_dm' for GPR:\n", ".../casadi/core/callback_internal.cpp:122: Error calling \"eval\" for object GPR:\n", "KeyboardInterrupt\") [.../casadi/core/oracle_function.cpp:223]\n", "CasADi - 2021-04-15 15:17:32 WARNING(\"solver:nlp_f failed:Error in Function::operator() for 'nlp_f' [MXFunction] at .../casadi/core/function.cpp:1368:\n", "Error in Function::operator() for 'GPR' [CallbackInternal] at .../casadi/core/function.cpp:1368:\n", ".../casadi/core/function_internal.cpp:3366: Failed to evaluate 'eval_dm' for GPR:\n", ".../casadi/core/callback_internal.cpp:122: Error calling \"eval\" for object GPR:\n", "KeyboardInterrupt\") [.../casadi/core/oracle_function.cpp:223]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Warning: Cutting back alpha due to evaluation error\n", " 408 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "Warning: Cutting back alpha due to evaluation error\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "CasADi - 2021-04-15 15:17:32 WARNING(\"solver:nlp_f failed:Error in Function::operator() for 'nlp_f' [MXFunction] at .../casadi/core/function.cpp:1368:\n", "Error in Function::operator() for 'GPR' [CallbackInternal] at .../casadi/core/function.cpp:1368:\n", ".../casadi/core/function_internal.cpp:3366: Failed to evaluate 'eval_dm' for GPR:\n", ".../casadi/core/callback_internal.cpp:122: Error calling \"eval\" for object GPR:\n", "KeyboardInterrupt\") [.../casadi/core/oracle_function.cpp:223]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 409 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls\n", " 410 4.3557888e+00 0.00e+00 1.36e-04 -9.0 1.04e-05 - 1.00e+00 1.00e+00w 1\n", " 411 4.3557888e+00 0.00e+00 5.77e-06 -9.0 9.62e-06 - 1.00e+00 1.00e+00w 1\n", " 412 4.3557888e+00 0.00e+00 2.37e-05 -9.0 4.25e-07 - 1.00e+00 1.00e+00w 1\n", " 413 4.3557888e+00 0.00e+00 1.04e-05 -9.0 3.41e-07 - 1.00e+00 5.68e-14f 44\n", " 414 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 415 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.49e-07 - 1.00e+00 3.64e-12f 39\n", " 416 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", " 417 4.3557888e+00 0.00e+00 1.04e-05 -9.0 1.04e-05 - 1.00e+00 5.68e-14f 45\n", "Exception of type: IpoptException in file \"Unknown File\" at line -1:\n", " Exception message: Unknown Exception caught in Ipopt\n", " solver : t_proc (avg) t_wall (avg) n_eval\n", " nlp_f | 123.95 s ( 9.99ms) 124.14 s ( 10.00ms) 12411\n", " nlp_grad_f | 25.20 s ( 60.15ms) 25.25 s ( 60.25ms) 419\n", " total | 150.03 s (150.03 s) 150.29 s (150.29 s) 1\n" ] } ], "source": [ "\n", "\n", "solver = cs.nlpsol(\"solver\",\"ipopt\",prob, options)\n", "res = solver(lbx = -2, ubx = 2)" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DM(0.0112358)" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "res['x']" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "DM(4.35579)" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "res['f']" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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.9.3" } }, "nbformat": 4, "nbformat_minor": 4 }