From 3f7c2a0382c3d941ef5b9cf4ed0813866724cb64 Mon Sep 17 00:00:00 2001 From: Paul-Saves Date: Tue, 28 Nov 2023 23:11:45 +0100 Subject: [PATCH] update notebook smt2 --- .../NotebookRunTestCases_Paper_SMT_v2.ipynb | 346 ++---------------- 1 file changed, 36 insertions(+), 310 deletions(-) diff --git a/tutorial/NotebookRunTestCases_Paper_SMT_v2.ipynb b/tutorial/NotebookRunTestCases_Paper_SMT_v2.ipynb index 68a4ce0c1..1634beb30 100644 --- a/tutorial/NotebookRunTestCases_Paper_SMT_v2.ipynb +++ b/tutorial/NotebookRunTestCases_Paper_SMT_v2.ipynb @@ -46,24 +46,10 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "id": "6f6d2d12", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Requirement already satisfied: smt in d:\\bartoli\\anaconda3\\lib\\site-packages (2.0b3)\n", - "Requirement already satisfied: pyDOE2 in d:\\bartoli\\anaconda3\\lib\\site-packages (from smt) (1.3.0)\n", - "Requirement already satisfied: scikit-learn in d:\\bartoli\\anaconda3\\lib\\site-packages (from smt) (1.0.2)\n", - "Requirement already satisfied: scipy in d:\\bartoli\\anaconda3\\lib\\site-packages (from smt) (1.9.1)\n", - "Requirement already satisfied: numpy in d:\\bartoli\\anaconda3\\lib\\site-packages (from pyDOE2->smt) (1.21.6)\n", - "Requirement already satisfied: joblib>=0.11 in d:\\bartoli\\anaconda3\\lib\\site-packages (from scikit-learn->smt) (1.1.0)\n", - "Requirement already satisfied: threadpoolctl>=2.0.0 in d:\\bartoli\\anaconda3\\lib\\site-packages (from scikit-learn->smt) (3.1.0)\n" - ] - } - ], + "outputs": [], "source": [ "#to have the latest version\n", "!pip install smt --pre " @@ -71,7 +57,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "id": "fff43855", "metadata": {}, "outputs": [], @@ -139,19 +125,10 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "id": "ccc49c3b", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Pred_RMSE on the training points 7.397754468383895e-10\n", - "Var_RMSE on the training points 4.657514467135904e-10\n" - ] - } - ], + "outputs": [], "source": [ "def f_neu(x1, x2, x3):\n", " return 2 * x1 + x2 - 0.5 * x3\n", @@ -195,8 +172,7 @@ "\n", "# Perform the mixed integer sampling - LHS DOE\n", "n_doe = 100 \n", - "sampling = MixedIntegerSamplingMethod (LHS , design_space, criterion =\"ese\", random_state =42)\n", - "Xt = sampling (n_doe)\n", + "Xt, _ = design_space.sample_valid_x(n_doe)\n", "Yt = f(Xt)\n", "\n", "# Build the surrogate \n", @@ -209,8 +185,8 @@ " corr=\"abs_exp\",\n", " n_start=5,\n", " print_global=False))\n", - "sm. set_training_values (Xt , Yt)\n", - "sm. train ()\n", + "sm.set_training_values (Xt , Yt)\n", + "sm.train()\n", "\n", "\n", "# Check prediction and variance accuracy \n", @@ -226,21 +202,10 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "id": "9fc88694", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 0.48244912 -0.71338317 -16.70103644] [ 0.48244912 -0.71338317 -16.70103644]\n", - "The outputs must be similar (inactive variables have no effect) 0.0\n", - "[-2.01682311] [9.98277891]\n", - "The outputs must be different (active variables have effect) 11.99960201467982\n" - ] - } - ], + "outputs": [], "source": [ "#To check of some inactive variables have no effect on the output\n", "xv1=np.array([\n", @@ -269,22 +234,10 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "id": "c122b735", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Activation function ['ISRLU', 'SELU', 'ReLU ']\n", - "Batch size [3, 4, 5]\n", - "Number of hidden neurons -1st layer [2, 2, 2]\n", - "Number of hidden neurons -2nd layer [0, 1, 1]\n", - "Number of hidden neurons -3rd layer [0, 0, 5]\n" - ] - } - ], + "outputs": [], "source": [ "#To have access to the \"real\" values of the input space variables\n", "x2_decoded = design_space.decode_values(xv1, i_dv=2)\n", @@ -342,28 +295,10 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "id": "1b3c3727", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Name: numba\n", - "Version: 0.55.1\n", - "Summary: compiling Python code using LLVM\n", - "Home-page: https://numba.pydata.org\n", - "Author: \n", - "Author-email: \n", - "License: BSD\n", - "Location: d:\\bartoli\\anaconda3\\lib\\site-packages\n", - "Requires: llvmlite, numpy, setuptools\n", - "Required-by: datashader\n", - "\"Numba used or not in your environment=\" 1\n" - ] - } - ], + "outputs": [], "source": [ "#to check if numba is available\n", "!pip show numba\n", @@ -373,19 +308,10 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "id": "b2d505b5", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "for 15 points time is = 0.0020842552185058594\n", - "for 150 points time is = 0.0029900074005126953\n" - ] - } - ], + "outputs": [], "source": [ "#compare the CPU time to build a DOE with 15 or 150 points\n", "problem = HierarchicalGoldstein()\n", @@ -465,38 +391,10 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "id": "34f618b6", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Initial DOE given\n", - "Internal optimization succeeded at EGO iter = 0.0\n", - "Internal optimization succeeded at EGO iter = 1.0\n", - "Internal optimization succeeded at EGO iter = 2.0\n", - "Internal optimization succeeded at EGO iter = 3.0\n", - "Internal optimization succeeded at EGO iter = 4.0\n", - "Internal optimization succeeded at EGO iter = 5.0\n", - "Internal optimization succeeded at EGO iter = 6.0\n", - "Internal optimization succeeded at EGO iter = 7.0\n", - "Internal optimization succeeded at EGO iter = 8.0\n", - "Internal optimization succeeded at EGO iter = 9.0\n", - "Internal optimization succeeded at EGO iter = 10.0\n", - "Internal optimization succeeded at EGO iter = 11.0\n", - "Internal optimization succeeded at EGO iter = 12.0\n", - "Internal optimization succeeded at EGO iter = 13.0\n", - "Internal optimization succeeded at EGO iter = 14.0\n", - "Internal optimization succeeded at EGO iter = 15.0\n", - "Internal optimization succeeded at EGO iter = 16.0\n", - "Internal optimization succeeded at EGO iter = 17.0\n", - "Internal optimization succeeded at EGO iter = 18.0\n", - "Internal optimization succeeded at EGO iter = 19.0\n" - ] - } - ], + "outputs": [], "source": [ "def f_obj(X):\n", " \"\"\"\n", @@ -602,87 +500,20 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "id": "a8c7967e", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Final results: [1. 1.] [-0.49903471] 6 [[ 8.51755996e-01 8.00000000e+00]\n", - " [ 7.49080238e-02 7.00000000e+00]\n", - " [ 7.89777107e-01 6.00000000e+00]\n", - " [ 3.93981970e-01 5.00000000e+00]\n", - " [ 4.58428930e-01 0.00000000e+00]\n", - " [ 0.00000000e+00 3.00000000e+00]\n", - " [ 1.00000000e+00 1.00000000e+00]\n", - " [ 6.15146961e-01 1.00000000e+00]\n", - " [ 2.55670161e-01 0.00000000e+00]\n", - " [ 1.00000000e+00 7.00000000e+00]\n", - " [ 6.24565300e-01 8.00000000e+00]\n", - " [ 8.96012593e-01 6.00000000e+00]\n", - " [ 1.00000000e+00 0.00000000e+00]\n", - " [ 7.78892358e-01 3.00000000e+00]\n", - " [ 6.21147886e-01 3.00000000e+00]\n", - " [ 0.00000000e+00 4.00000000e+00]\n", - " [-1.38777878e-17 2.00000000e+00]\n", - " [ 5.00000000e-02 4.00000000e+00]\n", - " [ 4.50000000e-01 1.00000000e+00]\n", - " [ 5.50000000e-01 1.00000000e+00]\n", - " [ 2.50000000e-01 3.00000000e+00]\n", - " [ 1.50000000e-01 2.00000000e+00]\n", - " [ 3.50000000e-01 0.00000000e+00]\n", - " [ 9.05436256e-01 7.00000000e+00]\n", - " [ 4.66293670e-15 6.00000000e+00]] [[ 7.75846253e-01]\n", - " [ 1.94629117e+00]\n", - " [ 1.71003723e-01]\n", - " [ 1.84039447e+00]\n", - " [-3.86204555e-01]\n", - " [ 0.00000000e+00]\n", - " [-4.99034713e-01]\n", - " [ 3.68040264e+00]\n", - " [-1.05907676e-01]\n", - " [ 1.50000000e+00]\n", - " [ 9.52481879e-01]\n", - " [-3.34498595e-01]\n", - " [ 3.09016994e-01]\n", - " [-4.67697665e-01]\n", - " [-2.65971458e-01]\n", - " [ 0.00000000e+00]\n", - " [ 1.00000000e+00]\n", - " [-1.25000000e-03]\n", - " [ 3.07458112e+00]\n", - " [ 3.63947848e+00]\n", - " [ 5.46413837e-02]\n", - " [ 6.62785252e-01]\n", - " [ 3.32287251e-01]\n", - " [ 2.37084501e+00]\n", - " [ 1.00000000e+00]]\n" - ] - } - ], + "outputs": [], "source": [ "print(\"Final results:\", x_opt, y_opt, dnk, x_data, y_data)" ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "id": "fc71d62e", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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3p63tzf8/f1x6dKlYvvY2toWO2pEREREFY+kYcjNzQ1ubm6l9gsJCYFCocCpU6fQunVrAMDJkyehUCgQGhqq9fYyMzNx48YNeHt7l7lmIiIiqljM4tL6oKAghIeHY8SIEUhISEBCQgJGjBiBiIgItcnTgYGB2L17NwDgwYMHmDRpEk6cOIGrV6/iyJEj6NGjB9zc3PDqq69KtStERERkYswiDAHA1q1b0bhxY4SFhSEsLAxNmjTBli1b1PqkpKRAoVAAACwtLfH777+jV69eqFevHgYPHox69erhxIkTcHR0lGIXiIiIyATJhBBC6iJMWXZ2NuRyORQKBZycnKQuh4iIiLSgy++32YwMERERERkCwxARERFVagxDREREVKkxDBEREVGlxjBERERElRrDEBEREVVqDENERERUqTEMERERUaXGMERERESVmqQPajUHyht0Z2dnS1wJERERaUv5u63NgzYYhkpx//59AICfn5/ElRAREZGu7t+/D7lcXmIfPpusFIWFhbh16xYcHR0hk8mkLscgsrOz4efnhxs3blTo569xPyuWyrCflWEfAe5nRWMq+ymEwP379+Hj4wMLi5JnBXFkqBQWFhbw9fWVugyjcHJyqtD/QJW4nxVLZdjPyrCPAPezojGF/SxtREiJE6iJiIioUmMYIiIiokqNYYhga2uLGTNmwNbWVupSDIr7WbFUhv2sDPsIcD8rGnPcT06gJiIiokqNI0NERERUqTEMERERUaXGMERERESVGsMQERERVWoMQxXcnDlz8MILL8DR0REeHh7o3bs3UlJSSlzmyJEjkMlkRV5//vmnkarWXUxMTJF6vby8Slzm6NGjaNmyJezs7FCrVi2sWrXKSNWWXUBAgMZjM3r0aI39zeVY/vLLL+jRowd8fHwgk8mwZ88etc+FEIiJiYGPjw/s7e3Rvn17XLhwodT17ty5Ew0aNICtrS0aNGiA3bt3G2gPtFPSfubl5eGDDz5A48aN4eDgAB8fHwwaNAi3bt0qcZ0bN27UeIwfP35s4L3RrLRjGRUVVaTW4ODgUtdrTscSgMZjIpPJsGDBgmLXaWrHUpvfj4ryb5NhqII7evQoRo8ejYSEBMTFxSE/Px9hYWHIyckpddmUlBSkpqaqXnXr1jVCxWXXsGFDtXp///33YvteuXIF3bp1w0svvYTExER8+OGHGDt2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Op9dr5IQQqcr55S1//DDD2r1JCcnq+YNAU9PE23btg3A01NkXbp0gZubGwDg2rVr6NatGxo1aoSdO3fi7NmzWLFiBQDN3yug3THo0aMHMjMzsWbNGpw8eRInT54EoNuEcuU2tPmenj22zx4v4Ok8swsXLqB79+44dOgQGjRogN27d2tdB5GpYxgiqqDmzJmD77//HvHx8Wrt7u7uSEtLU/sx1ue9gRISElR/zs/Px9mzZ1WjPy1atMCFCxcQEBCAOnXqqL20DUAA4OTkBB8fH/z6669q7fHx8QgKCtJ6PQ0aNICtrS2uX79epB4/Pz9VvwEDBuD333/H2bNn8e2332LgwIGqz86cOYP8/HwsXLgQwcHBqFevHm7dulXidt3d3ZGamqrW9uwxyMzMxMWLF/HRRx+hU6dOCAoKKnKFoI2NDQCgoKCg2O3UqVMHNjY2at9TXl4ezpw5o9P3BAD16tXDhAkTcODAAbz22mvYsGGDTssTmTKGIaIKqkmTJhg4cCA+//xztfb27dsjPT0d8+fPx+XLl7FixQr89NNPetvuihUrsHv3bvz5558YPXo07t27p5qMO3r0aNy9exdvvvkmTp06hX/++QcHDhzA0KFDS/xR1+T999/HvHnzsGPHDqSkpGDKlClISkrCuHHjtF6Ho6MjJk2ahAkTJmDTpk24fPkyEhMTsWLFCmzatEnVr2bNmggNDcWwYcOQn5+PXr16qT6rXbs28vPz8fnnn+Off/7Bli1bilx99ryOHTvizJkz2Lx5My5duoQZM2bgjz/+UH1erVo1uLq64ssvv8Tff/+NQ4cOITo6Wm0dHh4esLe3V01CVygURbbj4OCAd999F++//z5iY2ORnJyMESNG4OHDhxg2bJhW39GjR48wZswYHDlyBNeuXcPx48dx+vRpncMUkSljGCKqwD755JMip2OCgoKwcuVKrFixAk2bNsWpU6eKvdKqLObOnYt58+ahadOmOHbsGL777jvVKSUfHx8cP34cBQUF6NKlCxo1aoRx48ZBLperzU/SxtixYzFx4kRMnDgRjRs3RmxsLPbu3Yu6devqtJ5PPvkEH3/8MebMmYOgoCB06dIF33//vWqOjtLAgQPx22+/4bXXXoO9vb2qvVmzZli0aBHmzZuHRo0aYevWrSXe2gAAunTpgunTp2Py5Ml44YUXcP/+fQwaNEj1uYWFBb7++mucPXsWjRo1woQJE7BgwQK1dVhZWWHZsmVYvXo1fHx81ALas+bOnYs+ffogMjISLVq0wN9//439+/ejWrVqWn0/lpaWyMzMxKBBg1CvXj307dsXXbt2xcyZM7VansgcyMTz/6UkIiIiqkQ4MkRERESVGsMQERERVWoMQ0RERFSpMQwRERFRpcYwRERERJUawxARERFVagxDREREVKkxDBEREVGlxjBERERElRrDEBEREVVqDENERERUqTEMERERUaX2/wCiC3yv4E57GwAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "\n", "%matplotlib inline\n", @@ -730,18 +561,10 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "id": "00fab0cb", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Optimal point found [9.24399028 2.7837277 ] [0.76323137]\n" - ] - } - ], + "outputs": [], "source": [ "#Branin function with a integer variable and a continuous variable\n", "fun = Branin(ndim=2)\n", @@ -773,38 +596,10 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": null, "id": "a5ff0799", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[9.24399028 2.7837277 ] [0.76323137]\n" - ] - }, - { - "data": { - "text/plain": [ - "Text(0.5, 1.0, 'Mixed Branin - optimization process')" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAh8AAAGxCAYAAADCo9TSAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAABgm0lEQVR4nO3de1xT9f8H8NccMC5yUVEBx7h4Qc37JRVMwETTMPv21X6piZeyLCvNtLKL2kUp0zIrK7uofDWz8pJhlsvwgmLitbw0U9CBYqQJ88r18/tjbTHYuG5nY7yej8eynet748BeO+fz+RyZEEKAiIiISCKN7F0AERERNSwMH0RERCQphg8iIiKSFMMHERERSYrhg4iIiCTF8EFERESSYvggIiIiSTF8EBERkaQYPoiIiEhSDB9UpZUrV0Imk0Emk2HHjh0V5gsh0KZNG8hkMsTExJjMk8lkmDdvniR1lhUTE1OhFnNCQ0ONr00mk8Hd3R1t2rTBjBkzcOnSJdsXWkVtEyZMsGsN1nTixAnMmzcPZ8+erTBvwoQJCA0Nter+bLHNspYtW4aVK1dWmH727FnIZDKz84hIz8XeBVD94e3tjc8++6zCh/rOnTtx5swZeHt7V1gnLS0NSqVSogprJyoqCosWLQIA3Lx5EwcOHMC8efOwa9cuHDhwwG51bdy4ET4+Pnbbv7WdOHECr7zyCmJiYiqEgpdffhnTpk2z6v5ssc2yli1bBn9//woBMTAwEGlpaWjdurXN9k1U3zF8ULX93//9H9asWYMPPvjA5EPxs88+Q79+/aDT6Sqs07dvXylLrBU/Pz+TOmNjY3H16lW89tprOHXqFNq1a2dx3Rs3bsDT09MmdXXv3t0m23VEtvigtteHv0KhqBfHfXlCCNy6dQseHh72LoUaAF52oWobPXo0AGDt2rXGafn5+Vi/fj0mTZpkdp2yl12EEBg2bBiaNWsGrVZrXObGjRu47bbb0KFDB1y/ft247LJly9CtWzd4eHigSZMmGDlyJDIyMky2L4TAwoULERISAnd3d/To0QNbt26t82v19fUFALi6uhqnTZgwAY0bN8Zvv/2GwYMHw9vbG3feeScAQK1WY8SIEVAqlcZLN48++miFSzfz5s2DTCbD8ePHMXr0aPj6+qJly5aYNGkS8vPzTZYtf9llx44dkMlkWLt2LV588UUEBQXBx8cHgwYNgkajqfNrLu/vv//G448/jlatWsHNzQ3h4eF48cUXUVBQYLKcTCbDE088gY8//hjt2rWDQqFAx44d8eWXXxqXWblyJUaNGgVAH+4Ml7kMlybMXSIxbHfFihWIiIiAh4cHevXqhX379kEIgbfeegthYWFo3LgxBg4ciNOnT5usX36bhvfe3KPs+/zKK6+gT58+aNq0KXx8fNCjRw989tlnKHsPztDQUBw/fhw7d+40bsOwL0uXXVJTU3HnnXfC29sbnp6eiIyMxJYtW0yWMVziTElJwWOPPQZ/f380a9YM9913Hy5cuFDVj8x4jB4/fhx33nknvLy80Lx5czzxxBO4ceOG2ff3o48+QocOHaBQKLBq1apq1woA58+fxyOPPILg4GC4ubkhKCgII0eOxJ9//mlcRqfTYebMmQgLC4ObmxtatWqF6dOnG3/XDb7++mv06dMHvr6+8PT0RHh4uMnfldLSUrz++uvGY8HPzw9dunTBu+++W+X7Qg5IEFVhxYoVAoBIT08X48aNE7fffrtx3ocffii8vLyETqcTt912m4iOjjZZF4CYO3eu8fmlS5eEUqkUffr0EYWFhUIIIcaPHy88PDzEr7/+alxu8uTJwtXVVTzzzDPihx9+EF988YVo3769aNmypbh48aJxublz5woA4qGHHhJbt24Vy5cvF61atRIBAQEVajEnJCREDBs2TBQVFYmioiJx9epV8fPPPwulUimioqJMlh0/frxwdXUVoaGhIjExUWzfvl38+OOPxvchMTFRbN68WezcuVOsWrVKdO3aVURERBhfZ9l6IyIixJw5c4RarRZvv/22UCgUYuLEiRVqGz9+vPF5SkqKACBCQ0PF2LFjxZYtW8TatWuFSqUSbdu2FcXFxVW+3uq6efOm6NKli/Dy8hKLFi0S27ZtEy+//LJwcXERw4YNM1kWgAgODhYdO3YUa9euFZs3bxZ33XWXACC+/vprIYQQubm5YsGCBQKA+OCDD0RaWppIS0sTubm5xvc2JCSkwnZDQkJEZGSk2LBhg9i4caNo166daNq0qXj66afFiBEjRHJyslizZo1o2bKl6NKliygtLTWuX36bWVlZxv0aHrNmzRIAxMKFC43LTZgwQXz22WdCrVYLtVotXnvtNeHh4SFeeeUV4zKHDh0S4eHhonv37sZtHTp0SAghRGZmpgAg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qVOnEBISYu1dERERUT1k9fDx9NNPY9++fViwYAFOnz6NL774AsuXL8fUqVOtvSsiIiKqh6wePnr37o2NGzdi7dq16NSpE1577TUsWbIEY8eOtfauiIiIqB6yeoPTuuI4H0RERPWPXRucEhEREVWG4YOIiIgkxfBBREREkmL4ICIiIkkxfBAREZGkGD6IiIhIUgwfREREJCmGDyIiIpIUwwcREZETU6vVFm/uaqDVaqFWqyWqiOGDiIjIaanVasTHxyM2NtZiANFqtYiNjUV8fLxkAYThg4iIyElFRERAqVQiIyPDbAAxBI+MjAwolUpERERIUhfDBxERkZNSqVRISUlBeHh4hQBSNniEh4cjJSUFKpVKkroYPiTgiNfbiIioYTAXQPbs2WO34AEwfNico15vIyKihqN8AOnfv7/dggfA8GFzjnq9jYiIGhaVSoWkpCSTaUlJSZIHD4Dhw+Yc9XobERE1LFqtFgkJCSbTEhISqmwWYAsMHxJwxOttRETUcJT/spuammr2S7FUZEIIIekeq6DT6eDr64v8/Hz4+PjYuxyrKvvDN2DwICIiW7J0lt3aZ99r8vnNMx8ScqTrbURE5PwqCxiVNQuwNYYPCTnS9TYiInJ+Go0G2dnZFs9slA0g2dnZ0Gg0ktTF8CERR7veRkREzi8uLg7JycmVXlIxBJDk5GTExcVJUhfbfEhAquttRERE9sI2Hw7EUa+3ERER2QvDh4056vU2IiIie+FlFwmo1WpERERUeklFq9VCo9FIdr2NiIjImmry+c3wQURERHXGNh9ERETksBg+iIiISFIMH0RERCQphg+SlFqtrrI7sVarhVqtlqgiIiKSGsMHSUatViM+Pr7S8UwM46LEx8czgBAROSmGD5JMREQElEqlxQHVyg7IplQqERERYadKiYjIlhg+SDKVjejKoeaJiBoOhg+SlLkAsmfPHgYPIqIGxObhIzExETKZDNOnT7f1rqieKB9A+vfvz+BBRNSA2DR8pKenY/ny5ejSpYstd0P1kEqlQlJSksm0pKQkBg8iogbAZuHj2rVrGDt2LD755BM0adLEVruhekqr1SIhIcFkWkJCAu/qS0TUANgsfEydOhV33303Bg0aVOlyBQUF0Ol0Jg9ybuUbl6ampppthEpERM7JJuHjyy+/xMGDB5GYmFjlsomJifD19TU+goODbVES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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "# 3 optimal points possible in the continuous Branin function: [-pi, 12.275], [pi, 2.275], [9.42478, 2.475] \n", "#for the modified integer Branin function\n", @@ -825,21 +620,10 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "id": "a6115410", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", @@ -977,7 +761,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": null, "id": "6d5dc782", "metadata": {}, "outputs": [], @@ -988,38 +772,10 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "id": "fbbe62cc", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Initial DOE given\n", - "Internal optimization succeeded at EGO iter = 0.0\n", - "Internal optimization succeeded at EGO iter = 1.0\n", - "Internal optimization succeeded at EGO iter = 2.0\n", - "Internal optimization succeeded at EGO iter = 3.0\n", - "Internal optimization succeeded at EGO iter = 4.0\n", - "Internal optimization succeeded at EGO iter = 5.0\n", - "Internal optimization succeeded at EGO iter = 6.0\n", - "Internal optimization succeeded at EGO iter = 7.0\n", - "Internal optimization succeeded at EGO iter = 8.0\n", - "Internal optimization succeeded at EGO iter = 9.0\n", - "Internal optimization succeeded at EGO iter = 10.0\n", - "Internal optimization succeeded at EGO iter = 11.0\n", - "Internal optimization succeeded at EGO iter = 12.0\n", - "Internal optimization succeeded at EGO iter = 13.0\n", - "Internal optimization succeeded at EGO iter = 14.0\n", - "Internal optimization succeeded at EGO iter = 15.0\n", - "Internal optimization succeeded at EGO iter = 16.0\n", - "Internal optimization succeeded at EGO iter = 17.0\n", - "Internal optimization succeeded at EGO iter = 18.0\n", - "Internal optimization succeeded at EGO iter = 19.0\n" - ] - } - ], + "outputs": [], "source": [ "#Build the initial DOE\n", "rseed = 42 #seed for the sampling\n", @@ -1054,21 +810,10 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": null, "id": "f2078a02", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Optimal points [ 0. 0. 100. 20.02801089 50.\n", - " 50. 26.61557871 2. 0. 0.\n", - " 2. ] [33.14003586]\n", - "Optimal design variables in the initial space [0, 0, 99.99999999999999, 20.02801089116878, 50.0, 50.0, 26.61557871013431, 2.0, 0.0, 0.0, 2.0]\n" - ] - } - ], + "outputs": [], "source": [ " print(\"Optimal points\",x_opt, y_opt)\n", "print(\"Optimal design variables in the initial space\", design_space.decode_values(x_opt))\n" @@ -1076,21 +821,10 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": null, "id": "d43ac3eb", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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RFBQkNpt3L59GyYm/7uS17ZtW2zduhUzZ87ErFmz4OXlhZ9//hmtW7eujC4QOAJERESGRyaEEFIXoW/S09OhUCiQlpYGuVwudTl678qVK/Dx8YFcLkdaWprU5RARkZHS5PNb8knQZPiKRoDS09ORl5cncTVEREQvxwBE5Va9enXl76mpqZLVQUREpC4GICo3MzMzKBQKAJwHREREhoEBiCoEJ0ITEZEhYQCiCsEAREREhoQBiCoEAxARERkSBiCqEAxARERkSBiAqEIwABERkSFhAKIKwQBERESGhAGIKgQDEBERGRIGIKoQfCAqEREZEgYgqhAcASIiIkPCAEQVggGIiIgMCQMQVQgGICIiMiQMQFQhigJQamoqCgoKJK6GiIiobAxAVCHs7e0BAEIIpKWlSVwNERFR2RiAqEJYWFjA1tYWAC+DERGR/mMAogrDeUBERGQoGICowjAAERGRoWAAogrDAERERIaCAYgqDAMQEREZCq0C0LVr1zBz5ky89957SE5OBgBERkbi/PnzFVocGRYGICIiMhQaB6AjR46gSZMmiImJwfbt2/H06VMAwLlz5zB79uwKL5AMR9HzwBiAiIhI32kcgKZNm4Z58+YhKioKFhYWyuWdO3fGyZMnK7Q4MixFI0B8ICoREek7jQNQQkIC3njjjWLLnZyc+MFn5HgJjIiIDIXGAah69epITEwstjw+Ph5ubm4VUhQZJgYgIiIyFBoHoEGDBuHTTz9FUlISZDIZCgsLcfz4cUyePBlDhgypjBrJQDAAERGRodA4AM2fPx+1a9eGm5sbnj59Cj8/P3To0AFt27bFzJkzK6NGMhAMQEREZChkQgihzY7Xrl1DfHw8CgsL0bx5czRo0KCia5NMeno6FAoF0tLSIJfLpS7HYNy/fx9ubm4wMTFBXl4eTEz4NVNERKQ7mnx+m2l7EC8vL3h5eWm7O1VBRU+ELywsREZGBhQKhcQVERERlUzjADRixIgy1//www9aF0OGzdraGtbW1nj27BkeP37MAERERHpL4wD05MkTldd5eXn466+/kJqaii5dulRYYWSYatSogXv37uHx48eoW7eu1OUQERGVSOMAFBERUWxZYWEhRo8ejXr16lVIUWS4ng9ARERE+qpCZqmamJhgwoQJWLp0aUU0RwaMd4IREZEhqLDbdK5du4b8/PyKao4MFJ8H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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", @@ -1105,14 +839,6 @@ "plt.ylabel(\"Objective value\")\n", "plt.show()" ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "0882ac1f", - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { @@ -1131,7 +857,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.13" + "version": "3.8.12" } }, "nbformat": 4,