From 8e8e5de55b17fb5effd8f5191588c5c569ea03ff Mon Sep 17 00:00:00 2001 From: Enzo Busseti Date: Wed, 26 Jun 2024 20:31:09 +0400 Subject: [PATCH] experiment without hsde; can even extend it to conic quadratic... --- experiments/test_without_hsde.ipynb | 243 ++++++++++++++++++++++++++++ 1 file changed, 243 insertions(+) create mode 100644 experiments/test_without_hsde.ipynb diff --git a/experiments/test_without_hsde.ipynb b/experiments/test_without_hsde.ipynb new file mode 100644 index 0000000..aa61a5d --- /dev/null +++ b/experiments/test_without_hsde.ipynb @@ -0,0 +1,243 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "83651f7a-861a-4bcb-a3d3-42575a8b115d", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "import scipy as sp" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "24b42984-d130-4843-91c1-ad02ddf96f90", + "metadata": {}, + "outputs": [], + "source": [ + "np.random.seed(1000)\n", + "n = 50\n", + "m = 100\n", + "A = np.random.randn(m,n)\n", + "b = np.random.randn(m)\n", + "c = np.random.randn(n)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "7dc9b4fe-69f2-4e6f-9c6b-604380e82a42", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "8810.041932672124" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def loss(xy):\n", + " x, y = xy[:n], xy[n:]\n", + " conic_residual = np.minimum(y, 0.)\n", + " dual_residual = A.T @ y + c\n", + " primal_residual = np.minimum(-A @ x + b, 0.)\n", + " gap = c.T @ x + b.T @ y\n", + " \n", + " return (\n", + " np.linalg.norm(conic_residual)**2\n", + " + np.linalg.norm(dual_residual)**2\n", + " + np.linalg.norm(primal_residual)**2\n", + " + gap**2\n", + " )\n", + "\n", + "xy = np.random.randn(n+m)\n", + "loss(xy)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "f885ec08-1427-4aa4-9804-2e38a1538f1a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " message: Desired error not necessarily achieved due to precision loss.\n", + " success: False\n", + " status: 2\n", + " fun: 1.8929100351922702e-07\n", + " x: [-3.919e-01 3.842e-01 ... -3.830e-05 -6.070e-05]\n", + " nit: 936\n", + " jac: [-6.408e-07 4.975e-06 ... -1.437e-06 1.735e-07]\n", + " hess_inv: [[ 5.745e-02 -8.894e-03 ... 2.254e-03 4.137e-03]\n", + " [-8.894e-03 1.834e-01 ... -2.414e-03 4.526e-03]\n", + " ...\n", + " [ 2.254e-03 -2.414e-03 ... 4.188e-01 2.647e-02]\n", + " [ 4.137e-03 4.526e-03 ... 2.647e-02 4.698e-01]]\n", + " nfev: 207939\n", + " njev: 1377\n" + ] + } + ], + "source": [ + "import scipy.optimize as opt\n", + "\n", + "np.random.seed(0)\n", + "xy0 = np.random.randn(n+m)\n", + "\n", + "result = opt.minimize(loss, xy0)\n", + "print(result)\n", + "\n", + "x, y = result['x'][:n], result['x'][n:]" + ] + }, + { + "cell_type": "markdown", + "id": "dc48bbfd-5f9d-44bd-81bf-2bd33ad6bbd7", + "metadata": {}, + "source": [ + "## Feasible" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "646597cc-04a2-444a-9525-f05ba53d32de", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "ORTHOGONALITY ERROR\t 3.77e-04\n", + "DUAL RESIDUAL NORM\t 6.14e-05\n", + "CONIC RESIDUAL NORM\t 4.25e-04\n", + "SLACKS RESIDUAL NORM\t 6.90e-05\n", + "GAP\t\t\t 8.92e-06\n" + ] + }, + { + "data": { + "image/png": "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n49PfvKTuPXWW7Fv3z7H57lt2zakUinH52mGiy++GMlkUmNuBYA777wTM2fOxCmnnKI8tm7dOrzzzjv4+Mc/DgA4+eSTMWvWLFM1YnJyEn19fejt7cW6devw8Y9/HJlMBhdccIGjc3vkkUcwODiovN95552HaDSKu+++2/D4733ve2hpaUFLSwsWLFiAq6++GldeeSWuv/56R+9nhEMPPVR5TfqPVTmuuOIKtLS04PLLL8eSJUvw+c9/HnfddReGhoZyfk8OjiCBkw8ODg8wPDwMAKamRj1GRkZsj6fP0dfW4zvf+Y5r9cPteZrhjDPOQEtLiyb0snPnTrzyyiu46KKLEAqpU8vKlSvR1taG0047DQCUDJS7777bMKvmT3/6E1paWtDa2orjjjsOq1atwte//nVcc801js5t5cqVOO644xRDa21tLc4++2xTsvOZz3wGTz31FJ566incd999uOqqq/D73//e8fsZ4b777lNek/677bbblOfb2tqwceNGfO5zn8PAwAB+97vf4ROf+ARaW1vxwx/+EJIk5fzeHBxBAM924eDwAHV1dQBUUmEHuvhbHW9HUKj68Yc//AHf/OY3C3KeZohEIvjYxz6Gm2++GV1dXZg5c6ZCRNiQSyaTwd13343TTjsNO3fuVB4/4YQT8Mtf/hKrVq3CGWecoXntc889F1dffTWSySTWrl2Ln/zkJxgfH9cQGjMMDg7isccew9VXX41t27Ypj5900km47777sGXLFhxyyCGav1m0aBFWrFih/P/888+HIAi48cYbccUVV+SkEr3nPe9Bc3Oz5TEzZszALbfcgptvvhlbt27Fk08+iZ/97Ge47rrrMGPGDHz60592/b4cHEEBVz44ODxAXV0d2tvbsWnTJkfHL1myBADw+uuvmx5DnzvssMNMj6Hej5/97GeO3nfhwoWIRCJ44403HB1vhUsuuQSiKOKuu+4CANx111047LDDcNRRRynHPP3009i3bx/uvvtuLFq0SPn30Y9+FAAM1YhZs2ZhxYoV+MAHPoDvfe97+NWvfoXf/va3uP/++23P6d5770UikcAvf/lLzftRFcOp8fT0008HADz//POOjs8HgiDgkEMOwRe/+EU8//zzCIVCrgyyHBxBBCcfHBwe4YMf/CC2b9+Ol19+2fbYs846C+Fw2NJw+Je//AWRSATvf//7TY9Z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3t4OQRDw4IMPap53cm37+/tx8cUXo66uDg0NDfiv//ovjI6O5n9yUhng7rvvlmKxmPTnP/9ZevPNN6Urr7xSamhokA4cOFDqUws0zjzzTOm2226TNm3aJG3YsEH6wAc+IM2ePVsaHR1Vjvnc5z4ndXR0SKtWrZJeffVV6V3vepd04oknlvCsg481a9ZIc+fOlY444gjpy1/+svI4v9beoL+/X5ozZ450+eWXS6tXr5Z27NghPfnkk9K2bduUY376059K9fX10oMPPiht3LhR+tCHPiTNmzdPmpiYKOGZBw8//vGPpaamJumRRx6Rdu7cKd17771STU2N9L//+7/KMfxa547HHntM+va3vy3df//9EgDpgQce0Dzv5Nq+//3vl4488kjplVdekf7zn/9ICxculC666KK8z60syMfxxx8vXXXVVcr/M5mM1N7eLt1www0lPKuph56eHgmA9Nxzz0mSJEmDg4NSNBqV7r33XuWYt99+WwIgvfzyy6U6zUBjZGREWrRokfTUU09Jp5xyikI++LX2Dt/4xjekk08+2fR5URSl6dOnS7/4xS+UxwYHB6V4PC7dddddxTjFKYOzzz5buuKKKzSPnX/++dLFF18sSRK/1l5CTz6cXNu33npLAiCtXbtWOebxxx+XBEGQurq68jqfKR92SSaTWLduHVasWKE8FgqFsGLFCrz88sslPLOph6GhIQBAY2MjAGDdunVIpVKaa7948WLMnj2bX/sccdVVV+Hss8/WXFOAX2sv8fDDD+O4447DhRdeiNbWVhx99NG49dZbled37tyJ/fv3a651fX09TjjhBH6tXeLEE0/EqlWrsGXLFgDAxo0b8cILL+Css84CwK91IeHk2r788stoaGjAcccdpxyzYsUKhEIhrF69Oq/3911XW6/R19eHTCaDtrY2zeNtbW145513SnRWUw+iKOIrX/kKTjrpJCxduhQAsH//fsRiMTQ0NGiObWtrw/79+0twlsHG3XffjfXr12Pt2rVZz/Fr7R127NiBW265Bddccw2+9a1vYe3atfjSl76EWCyGyy67TLmeRnMKv9bu8M1vfhPDw8NYvHgxwuEwMpkMfvzjH+Piiy8GAH6tCwgn13b//v1obW3VPB+JRNDY2Jj39Z/y5IOjOLjqqquwadMmvPDCC6U+lSmJzs5OfPnLX8ZTTz2FioqKUp/OlIYoijjuuOPwk5/8BABw9NFHY9OmTfjd736Hyy67rMRnN7Xw97//HStXrsSdd96Jww8/HBs2bMBXvvIVtLe382s9xTHlwy7Nzc0Ih8NZrv8DBw5g+vTpJTqrqYWrr74ajzzyCJ555hnMmjVLeXz69OlIJpMYHBzUHM+vvXusW7cOPT09OOaYYxCJRBCJRPDcc8/h17/+NSKRCNra2vi19ggzZszAYYcdpnlsyZIl2LNnDwAo15PPKfnja1/7Gr75zW/i4x//OJYtW4ZPfvKT+OpXv4obbrgBAL/WhYSTazt9+nT09PRonk+n0+jv78/7+k958hGLxXDsscdi1apVymOiKGLV/2/n7kEaCaMoDN9df0aCaARBQRiJIFjYiKIMlmnsxFIsgo2oCHY2YilY2djZaKFgpYj1jhYWRpQRBSFaaRMbQRKI2MzZbtjsbuHfTjbyPvBBYG5xOUVyivny44d5nlfBzaqfJJubm7O9vT3zfd9SqVTZ8/7+fqurqyvLPpfL2f39Pdm/UTqdtqurK7u4uIjOwMCATUxMRJ/J+nMMDw//cWX85ubGOjs7zcwslUpZe3t7WdaFQsGy2SxZv1GpVLLv38t/hmpqaiwMQzMj63/pNdl6nmdPT092fn4ezfi+b2EY2tDQ0McW+NDrqlViZ2dHjuNoc3NT19fXmpqaUjKZ1MPDQ6VXq2ozMzNqbm7W0dGR8vl8dEqlUjQzPT0t13Xl+77Ozs7keZ48z6vg1l/Hr7ddJLL+LKenp6qtrdXy8rJub2+1vb2tRCKhra2taGZlZUXJZFL7+/u6vLzU6Ogo1z/fIZPJqKOjI7pqu7u7q9bWVi0sLEQzZP1+xWJRQRAoCAKZmVZXVxUEge7u7iS9LtuRkRH19fUpm83q+PhY3d3dXLV9i7W1Nbmuq/r6eg0ODurk5KTSK1U9M/vr2djYiGaen581OzurlpYWJRIJjY2NKZ/PV27pL+T38kHWn+fg4EC9vb1yHEc9PT1aX18vex6GoZaWltTW1ibHcZROp5XL5Sq0bfUqFAqan5+X67pqaGhQV1eXFhcX9fLyEs2Q9fsdHh7+9Ts6k8lIel22j4+PGh8fV2Njo5qamjQ5Oalisfjh3b5Jv/yVHAAAwD/25d/5AAAA/xfKBwAAiBXlAwAAxIryAQAAYkX5AAAAsaJ8AACAWFE+AABArCgfAAAgVpQPAAAQK8oHAACIFeUDAADE6ifoSsLQlh9+LQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "s = b - A @ x\n", + "plt.plot(y, label='y')\n", + "plt.plot(s, label='s')\n", + "plt.legend()\n", + "plt.title('CONIC VARIABLES')\n", + "print(f'ORTHOGONALITY ERROR\\t {y.T @ s:.2e}')\n", + "print(f'DUAL RESIDUAL NORM\\t {np.linalg.norm(A.T @ y + c):.2e}')\n", + "print(f'CONIC RESIDUAL NORM\\t {np.linalg.norm(np.minimum(y,0.)):.2e}')\n", + "print(f'SLACKS RESIDUAL NORM\\t {np.linalg.norm(np.minimum(s,0.)):.2e}')\n", + "print(f'GAP\\t\\t\\t {(c.T @ x + b.T @ y):.2e}')" + ] + }, + { + "cell_type": "markdown", + "id": "cef5522c-dbbf-4796-9c17-973b9478c590", + "metadata": {}, + "source": [ + "## Infeasibile" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "4ece5dd1-4d81-412c-918b-94bd3b6c6fab", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "error norm 7.69e-05\n", + "certificate 4.48e-05\n" + ] + } + ], + "source": [ + "my_y = -np.minimum(-A @ x + b, 0.)\n", + "print(f'error norm {np.linalg.norm(A.T @ my_y):.2e}')\n", + "print(f'certificate {b.T @ my_y:.2e}')" + ] + }, + { + "cell_type": "markdown", + "id": "6a265055-68b7-4ec3-ab5e-402b45892b29", + "metadata": {}, + "source": [ + "## Unbounded" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "118f7810-9ead-47c6-b42b-87ecaf9f9df2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "error norm 5.03e-05\n", + "certificate -6.13e-05\n" + ] + } + ], + "source": [ + "my_x = -(A.T @ y + c)\n", + "my_s = -(A @ my_x)\n", + "print(f'error norm {np.linalg.norm(np.minimum(my_s, 0.)):.2e}')\n", + "print(f'certificate {c.T @ my_x:.2e}')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d2048240-693f-4f1f-840b-d024b1541f97", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.3" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}