diff --git a/lab_7/lab_7.ipynb b/lab_7/lab_7.ipynb index e4d5e8c..da7c9ab 100644 --- a/lab_7/lab_7.ipynb +++ b/lab_7/lab_7.ipynb @@ -19,7 +19,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 33, "metadata": {}, "outputs": [], "source": [ @@ -44,7 +44,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 34, "metadata": {}, "outputs": [], "source": [ @@ -73,9 +73,17 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 35, "metadata": {}, "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "d:\\code\\mai\\labs\\AIM-PIbd-31-Bakalskaya-E-D\\lab_7\\.venv\\Lib\\site-packages\\skfuzzy\\control\\fuzzyvariable.py:125: UserWarning: FigureCanvasAgg is non-interactive, and thus cannot be shown\n", + " fig.show()\n" + ] + }, { "data": { "image/png": "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Awbg+++/h06nw/r16+vus3HjRpx11lmw2WxITU3FuHHjUFhYKNG/iGEYucGCiGEY2VNZWYl7770Xf/zxB+bPnw+9Xo+xY8fC6/WivLwc5513Hk488USsXbsWTz31FCZOnNjg90tLS3H66aejb9++4jFIYB06dAiXXnqpZP8mhmHkBW+7ZxhGcVBmJzk5GX/99ReWLFmCRx99FAcOHBAZIuL999/HTTfdhHXr1onM0dNPP43ff/8d8+bNq3sMun9WVha2bduGLl26SPivYRhGDnCGiGEY2bN9+3ZcccUV6NChA2JiYtCuXTtx+759+4Sg6dWrV50YIgYOHNjg9zds2ICFCxeKcpn/0q1bN/Gz+qU3hmG0i1HqABiGYY4HlcSys7MxdepUZGRkiFJZz5494XK5Avp9u90uHuP5558/6mfp6ekhiJhhGKXBgohhGFlTVFQkskAkhk455RRxG5XJ/HTt2hWffvopnE4nzGazuG316tUNHqNfv3745ptvRGbJaOS3PYZhjoZLZgzDyJr4+HjhLHvvvfewY8cOLFiwQDRY+7nyyitFxujmm2/Gli1bRJ/Qiy++KH5GTjNiwoQJKC4uFmU3EktUJqP7XXfddfB4PJL92xiGkQ8siBiGkTXkKPviiy+wZs0aUSa755578MILL9T9nHqKZs2aJSz21EA9adIkTJ48WfzM31dEZbalS5cK8TNq1CjhSLv77ruFjZ8en2EYhl1mDMOojunTp4vsT1lZGSwWi9ThMAyjALiYzjCM4vn444+FAy0zM1M4ymgOEc0YYjHEMEygsCBiGEbx5OXliTIZfSXX2CWXXIJnnnlG6rAYhlEQXDJjGIZhGEbzcDchwzAMwzCahwURwzAMwzCahwURwzAMwzCahwURwzAMwzCahwURwzAMwzCahwURwzAMwzCahwURwzAMwzCahwURwzAMwzDQOv8PUcKb36NjDtcAAAAASUVORK5CYII=", @@ -207,9 +215,33 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": null, "metadata": {}, - "outputs": [], + "outputs": [ + { + "ename": "AttributeError", + "evalue": "'ControlSystemVisualizer' object has no attribute 'ctrl'", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mAttributeError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[1;32mIn[36], line 22\u001b[0m\n\u001b[0;32m 19\u001b[0m rule19 \u001b[38;5;241m=\u001b[39m control\u001b[38;5;241m.\u001b[39mRule(heart_disease[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mhigh\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m&\u001b[39m glucose[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mhight\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m&\u001b[39m bmi[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mhight\u001b[39m\u001b[38;5;124m'\u001b[39m], stroke_risk[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mhigh\u001b[39m\u001b[38;5;124m'\u001b[39m])\n\u001b[0;32m 20\u001b[0m rule20 \u001b[38;5;241m=\u001b[39m control\u001b[38;5;241m.\u001b[39mRule(heart_disease[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mlow\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m&\u001b[39m glucose[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mnormal\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m&\u001b[39m bmi[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mnormal\u001b[39m\u001b[38;5;124m'\u001b[39m], stroke_risk[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mlow\u001b[39m\u001b[38;5;124m'\u001b[39m])\n\u001b[1;32m---> 22\u001b[0m \u001b[43mrule1\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mview\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[1;32md:\\code\\mai\\labs\\AIM-PIbd-31-Bakalskaya-E-D\\lab_7\\.venv\\Lib\\site-packages\\skfuzzy\\control\\rule.py:313\u001b[0m, in \u001b[0;36mRule.view\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 309\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21mview\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[0;32m 310\u001b[0m \u001b[38;5;250m \u001b[39m\u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[0;32m 311\u001b[0m \u001b[38;5;124;03m Show a visual representation of this Rule.\u001b[39;00m\n\u001b[0;32m 312\u001b[0m \u001b[38;5;124;03m \"\"\"\u001b[39;00m\n\u001b[1;32m--> 313\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mControlSystemVisualizer\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mview\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[1;32md:\\code\\mai\\labs\\AIM-PIbd-31-Bakalskaya-E-D\\lab_7\\.venv\\Lib\\site-packages\\skfuzzy\\control\\visualization.py:204\u001b[0m, in \u001b[0;36mControlSystemVisualizer.view\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 186\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21mview\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[0;32m 187\u001b[0m \u001b[38;5;250m \u001b[39m\u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[0;32m 188\u001b[0m \u001b[38;5;124;03m View the visualization.\u001b[39;00m\n\u001b[0;32m 189\u001b[0m \n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 202\u001b[0m \u001b[38;5;124;03m inline.\u001b[39;00m\n\u001b[0;32m 203\u001b[0m \u001b[38;5;124;03m \"\"\"\u001b[39;00m\n\u001b[1;32m--> 204\u001b[0m nx\u001b[38;5;241m.\u001b[39mdraw(\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mctrl\u001b[49m\u001b[38;5;241m.\u001b[39mgraph, ax\u001b[38;5;241m=\u001b[39m\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39max)\n\u001b[0;32m 205\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfig, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39max\n", + "\u001b[1;31mAttributeError\u001b[0m: 'ControlSystemVisualizer' object has no attribute 'ctrl'" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "rule1 = control.Rule(age['aged'] & hypertension['high'], stroke_risk['high'])\n", "rule2 = control.Rule(age['old'] & hypertension['high'], stroke_risk['high'])\n", @@ -230,14 +262,38 @@ "rule17 = control.Rule(age['aged'] & hypertension['high'] & glucose['hight'] & bmi['hight'], stroke_risk['high'])\n", "rule18 = control.Rule(age['middle'] & hypertension['low'] & glucose['low'] & bmi['low'], stroke_risk['low'])\n", "rule19 = control.Rule(heart_disease['high'] & glucose['hight'] & bmi['hight'], stroke_risk['high'])\n", - "rule20 = control.Rule(heart_disease['low'] & glucose['normal'] & bmi['normal'], stroke_risk['low'])" + "rule20 = control.Rule(heart_disease['low'] & glucose['normal'] & bmi['normal'], stroke_risk['low'])\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, - "outputs": [], + "outputs": [ + { + "ename": "AttributeError", + "evalue": "'ControlSystemVisualizer' object has no attribute 'ctrl'", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mAttributeError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[1;32mIn[37], line 25\u001b[0m\n\u001b[0;32m 1\u001b[0m stroke_ctrl \u001b[38;5;241m=\u001b[39m control\u001b[38;5;241m.\u001b[39mControlSystem([\n\u001b[0;32m 2\u001b[0m rule1, \n\u001b[0;32m 3\u001b[0m rule2, \n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 21\u001b[0m rule20,\n\u001b[0;32m 22\u001b[0m ])\n\u001b[0;32m 24\u001b[0m stroke \u001b[38;5;241m=\u001b[39m control\u001b[38;5;241m.\u001b[39mControlSystemSimulation(stroke_ctrl)\n\u001b[1;32m---> 25\u001b[0m \u001b[43mstroke_ctrl\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mview\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[1;32md:\\code\\mai\\labs\\AIM-PIbd-31-Bakalskaya-E-D\\lab_7\\.venv\\Lib\\site-packages\\skfuzzy\\control\\controlsystem.py:134\u001b[0m, in \u001b[0;36mControlSystem.view\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 130\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21mview\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[0;32m 131\u001b[0m \u001b[38;5;250m \u001b[39m\u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[0;32m 132\u001b[0m \u001b[38;5;124;03m View a representation of the system NetworkX graph.\u001b[39;00m\n\u001b[0;32m 133\u001b[0m \u001b[38;5;124;03m \"\"\"\u001b[39;00m\n\u001b[1;32m--> 134\u001b[0m fig, ax \u001b[38;5;241m=\u001b[39m \u001b[43mControlSystemVisualizer\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mview\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 135\u001b[0m fig\u001b[38;5;241m.\u001b[39mshow()\n", + "File \u001b[1;32md:\\code\\mai\\labs\\AIM-PIbd-31-Bakalskaya-E-D\\lab_7\\.venv\\Lib\\site-packages\\skfuzzy\\control\\visualization.py:204\u001b[0m, in \u001b[0;36mControlSystemVisualizer.view\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 186\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21mview\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[0;32m 187\u001b[0m \u001b[38;5;250m \u001b[39m\u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[0;32m 188\u001b[0m \u001b[38;5;124;03m View the visualization.\u001b[39;00m\n\u001b[0;32m 189\u001b[0m \n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 202\u001b[0m \u001b[38;5;124;03m inline.\u001b[39;00m\n\u001b[0;32m 203\u001b[0m \u001b[38;5;124;03m \"\"\"\u001b[39;00m\n\u001b[1;32m--> 204\u001b[0m nx\u001b[38;5;241m.\u001b[39mdraw(\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mctrl\u001b[49m\u001b[38;5;241m.\u001b[39mgraph, ax\u001b[38;5;241m=\u001b[39m\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39max)\n\u001b[0;32m 205\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfig, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39max\n", + "\u001b[1;31mAttributeError\u001b[0m: 'ControlSystemVisualizer' object has no attribute 'ctrl'" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "stroke_ctrl = control.ControlSystem([\n", " rule1, \n", @@ -260,9 +316,18 @@ " rule18,\n", " rule19,\n", " rule20,\n", - " ])" + " ])\n", + "\n", + "stroke = control.ControlSystemSimulation(stroke_ctrl)" ] }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, { "cell_type": "markdown", "metadata": {},