From 5b9cf41b8756a5f7f7ba454618a2bb169b359ba8 Mon Sep 17 00:00:00 2001 From: perceptualrobots Date: Mon, 14 Oct 2024 19:42:08 +0100 Subject: [PATCH] add arc visualisations --- nbs/14_helpers.ipynb | 138 +++++++++++++++++++++++++++++++++++--- nbs/18_applications.ipynb | 31 +++++---- 2 files changed, 145 insertions(+), 24 deletions(-) diff --git a/nbs/14_helpers.ipynb b/nbs/14_helpers.ipynb index 83ecbd80..8fe97fd4 100644 --- a/nbs/14_helpers.ipynb +++ b/nbs/14_helpers.ipynb @@ -643,8 +643,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "Execution time of challenges load: 0.0658 seconds\n", - "Execution time of solutions load: 0.0070 seconds\n", + "Execution time of challenges load: 0.1150 seconds\n", + "Execution time of solutions load: 0.0110 seconds\n", "['007bbfb7', '00d62c1b', '017c7c7b', '025d127b', '045e512c', '0520fde7', '05269061', '05f2a901', '06df4c85', '08ed6ac7', '09629e4f', '0962bcdd', '0a938d79', '0b148d64', '0ca9ddb6', '0d3d703e', '0dfd9992', '0e206a2e', '10fcaaa3', '11852cab', '1190e5a7', '137eaa0f', '150deff5', '178fcbfb', '1a07d186', '1b2d62fb', '1b60fb0c', '1bfc4729', '1c786137', '1caeab9d', '1cf80156', '1e0a9b12', '1e32b0e9', '1f0c79e5', '1f642eb9', '1f85a75f', '1f876c06', '1fad071e', '2013d3e2', '2204b7a8', '22168020', '22233c11', '2281f1f4', '228f6490', '22eb0ac0', '234bbc79', '23581191', '239be575', '23b5c85d', '253bf280', '25d487eb', '25d8a9c8', '25ff71a9', '264363fd', '272f95fa', '27a28665', '28bf18c6', '28e73c20', '29623171', '29c11459', '29ec7d0e', '2bcee788', '2bee17df', '2c608aff', '2dc579da', '2dd70a9a', '2dee498d', '31aa019c', '321b1fc6', '32597951', '3345333e', '3428a4f5', '3618c87e', '3631a71a', '363442ee', '36d67576', '36fdfd69', '3906de3d', '39a8645d', '39e1d7f9', '3aa6fb7a', '3ac3eb23', '3af2c5a8', '3bd67248', '3bdb4ada', '3befdf3e', '3c9b0459', '3de23699', '3e980e27', '3eda0437', '3f7978a0', '40853293', '4093f84a', '41e4d17e', '4258a5f9', '4290ef0e', '42a50994', '4347f46a', '444801d8', '445eab21', '447fd412', '44d8ac46', '44f52bb0', '4522001f', '4612dd53', '46442a0e', '469497ad', '46f33fce', '47c1f68c', '484b58aa', '48d8fb45', '4938f0c2', '496994bd', '49d1d64f', '4be741c5', '4c4377d9', '4c5c2cf0', '50846271', '508bd3b6', '50cb2852', '5117e062', '5168d44c', '539a4f51', '53b68214', '543a7ed5', '54d82841', '54d9e175', '5521c0d9', '5582e5ca', '5614dbcf', '56dc2b01', '56ff96f3', '57aa92db', '5ad4f10b', '5bd6f4ac', '5c0a986e', '5c2c9af4', '5daaa586', '60b61512', '6150a2bd', '623ea044', '62c24649', '63613498', '6430c8c4', '6455b5f5', '662c240a', '67385a82', '673ef223', '6773b310', '67a3c6ac', '67a423a3', '67e8384a', '681b3aeb', '6855a6e4', '68b16354', '694f12f3', '6a1e5592', '6aa20dc0', '6b9890af', '6c434453', '6cdd2623', '6cf79266', '6d0160f0', '6d0aefbc', '6d58a25d', '6d75e8bb', '6e02f1e3', '6e19193c', '6e82a1ae', '6ecd11f4', '6f8cd79b', '6fa7a44f', '72322fa7', '72ca375d', '73251a56', '7447852a', '7468f01a', '746b3537', '74dd1130', '75b8110e', '760b3cac', '776ffc46', '77fdfe62', '780d0b14', '7837ac64', '794b24be', '7b6016b9', '7b7f7511', '7c008303', '7ddcd7ec', '7df24a62', '7e0986d6', '7f4411dc', '7fe24cdd', '80af3007', '810b9b61', '82819916', '83302e8f', '834ec97d', '8403a5d5', '846bdb03', '855e0971', '85c4e7cd', '868de0fa', '8731374e', '88a10436', '88a62173', '890034e9', '8a004b2b', '8be77c9e', '8d5021e8', '8d510a79', '8e1813be', '8e5a5113', '8eb1be9a', '8efcae92', '8f2ea7aa', '90c28cc7', '90f3ed37', '913fb3ed', '91413438', '91714a58', '9172f3a0', '928ad970', '93b581b8', '941d9a10', '94f9d214', '952a094c', '9565186b', '95990924', '963e52fc', '97999447', '97a05b5b', '98cf29f8', '995c5fa3', '99b1bc43', '99fa7670', '9aec4887', '9af7a82c', '9d9215db', '9dfd6313', '9ecd008a', '9edfc990', '9f236235', 'a1570a43', 'a2fd1cf0', 'a3325580', 'a3df8b1e', 'a416b8f3', 'a48eeaf7', 'a5313dff', 'a5f85a15', 'a61ba2ce', 'a61f2674', 'a64e4611', 'a65b410d', 'a68b268e', 'a699fb00', 'a740d043', 'a78176bb', 'a79310a0', 'a85d4709', 'a87f7484', 'a8c38be5', 'a8d7556c', 'a9f96cdd', 'aabf363d', 'aba27056', 'ac0a08a4', 'ae3edfdc', 'ae4f1146', 'aedd82e4', 'af902bf9', 'b0c4d837', 'b190f7f5', 'b1948b0a', 'b230c067', 'b27ca6d3', 'b2862040', 'b527c5c6', 'b548a754', 'b60334d2', 'b6afb2da', 'b7249182', 'b775ac94', 'b782dc8a', 'b8825c91', 'b8cdaf2b', 'b91ae062', 'b94a9452', 'b9b7f026', 'ba26e723', 'ba97ae07', 'bb43febb', 'bbc9ae5d', 'bc1d5164', 'bd4472b8', 'bda2d7a6', 'bdad9b1f', 'be94b721', 'beb8660c', 'c0f76784', 'c1d99e64', 'c3e719e8', 'c3f564a4', 'c444b776', 'c59eb873', 'c8cbb738', 'c8f0f002', 'c909285e', 'c9e6f938', 'c9f8e694', 'caa06a1f', 'cbded52d', 'cce03e0d', 'cdecee7f', 'ce22a75a', 'ce4f8723', 'ce602527', 'ce9e57f2', 'cf98881b', 'd037b0a7', 'd06dbe63', 'd07ae81c', 'd0f5fe59', 'd10ecb37', 'd13f3404', 'd22278a0', 'd23f8c26', 'd2abd087', 'd364b489', 'd406998b', 'd43fd935', 'd4469b4b', 'd4a91cb9', 'd4f3cd78', 'd511f180', 'd5d6de2d', 'd631b094', 'd687bc17', 'd6ad076f', 'd89b689b', 'd8c310e9', 'd90796e8', 'd9f24cd1', 'd9fac9be', 'dae9d2b5', 'db3e9e38', 'db93a21d', 'dbc1a6ce', 'dc0a314f', 'dc1df850', 'dc433765', 'ddf7fa4f', 'de1cd16c', 'ded97339', 'e179c5f4', 'e21d9049', 'e26a3af2', 'e3497940', 'e40b9e2f', 'e48d4e1a', 'e5062a87', 'e509e548', 'e50d258f', 'e6721834', 'e73095fd', 'e76a88a6', 'e8593010', 'e8dc4411', 'e9614598', 'e98196ab', 'e9afcf9a', 'ea32f347', 'ea786f4a', 'eb281b96', 'eb5a1d5d', 'ec883f72', 'ecdecbb3', 'ed36ccf7', 'ef135b50', 'f15e1fac', 'f1cefba8', 'f25fbde4', 'f25ffba3', 'f2829549', 'f35d900a', 'f5b8619d', 'f76d97a5', 'f8a8fe49', 'f8b3ba0a', 'f8c80d96', 'f8ff0b80', 'f9012d9b', 'fafffa47', 'fcb5c309', 'fcc82909', 'feca6190', 'ff28f65a', 'ff805c23']\n", "400\n", "get_keys_with_equal_size_input_output\n", @@ -885,8 +885,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "Execution time of __init__: 0.0000 seconds\n", - "Execution time of __init__: 0.0009 seconds\n", + "Execution time of __init__: 0.0050 seconds\n", + "Execution time of __init__: 0.0040 seconds\n", "{'test': [{'input': [[2]]}], 'train': [{'input': [[3]], 'output': [[4]]}, {'input': [[7]], 'output': [[8]]}, {'input': [[1]], 'output': [[2]]}]}\n", "[[3]]\n", "3\n" @@ -1019,8 +1019,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "Execution time of reload_data: 0.1108 seconds\n", - "Execution time of reload_data: 0.0040 seconds\n", + "Execution time of reload_data: 0.1050 seconds\n", + "Execution time of reload_data: 0.0130 seconds\n", "{'test': [{'input': [[7, 0, 7], [7, 0, 7], [7, 7, 0]]}], 'train': [{'input': [[0, 7, 7], [7, 7, 7], [0, 7, 7]], 'output': [[0, 0, 0, 0, 7, 7, 0, 7, 7], [0, 0, 0, 7, 7, 7, 7, 7, 7], [0, 0, 0, 0, 7, 7, 0, 7, 7], [0, 7, 7, 0, 7, 7, 0, 7, 7], [7, 7, 7, 7, 7, 7, 7, 7, 7], [0, 7, 7, 0, 7, 7, 0, 7, 7], [0, 0, 0, 0, 7, 7, 0, 7, 7], [0, 0, 0, 7, 7, 7, 7, 7, 7], [0, 0, 0, 0, 7, 7, 0, 7, 7]]}, {'input': [[4, 0, 4], [0, 0, 0], [0, 4, 0]], 'output': [[4, 0, 4, 0, 0, 0, 4, 0, 4], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 4, 0, 0, 0, 0, 0, 4, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 4, 0, 4, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 4, 0, 0, 0, 0]]}, {'input': [[0, 0, 0], [0, 0, 2], [2, 0, 2]], 'output': [[0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 2], [0, 0, 0, 0, 0, 0, 2, 0, 2], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 2, 0, 0, 0, 0, 0, 2], [2, 0, 2, 0, 0, 0, 2, 0, 2]]}, {'input': [[6, 6, 0], [6, 0, 0], [0, 6, 6]], 'output': [[6, 6, 0, 6, 6, 0, 0, 0, 0], [6, 0, 0, 6, 0, 0, 0, 0, 0], [0, 6, 6, 0, 6, 6, 0, 0, 0], [6, 6, 0, 0, 0, 0, 0, 0, 0], [6, 0, 0, 0, 0, 0, 0, 0, 0], [0, 6, 6, 0, 0, 0, 0, 0, 0], [0, 0, 0, 6, 6, 0, 6, 6, 0], [0, 0, 0, 6, 0, 0, 6, 0, 0], [0, 0, 0, 0, 6, 6, 0, 6, 6]]}, {'input': [[2, 2, 2], [0, 0, 0], [0, 2, 2]], 'output': [[2, 2, 2, 2, 2, 2, 2, 2, 2], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 2, 2, 0, 2, 2, 0, 2, 2], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 2, 2, 2, 2, 2, 2], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 2, 2, 0, 2, 2]]}]}\n", "[[7, 0, 7, 0, 0, 0, 7, 0, 7], [7, 0, 7, 0, 0, 0, 7, 0, 7], [7, 7, 0, 0, 0, 0, 7, 7, 0], [7, 0, 7, 0, 0, 0, 7, 0, 7], [7, 0, 7, 0, 0, 0, 7, 0, 7], [7, 7, 0, 0, 0, 0, 7, 7, 0], [7, 0, 7, 7, 0, 7, 0, 0, 0], [7, 0, 7, 7, 0, 7, 0, 0, 0], [7, 7, 0, 7, 7, 0, 0, 0, 0]]\n", "5\n" @@ -1318,8 +1318,130 @@ "cell_type": "code", "execution_count": null, "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'test': [{'input': [[0, 0, 5, 5, 0, 5, 5, 5, 0, 0, 0], [0, 0, 5, 5, 0, 0, 5, 0, 0, 0, 0], [0, 5, 5, 5, 5, 5, 5, 0, 0, 0, 0], [0, 0, 0, 0, 5, 5, 5, 0, 0, 0, 0], [0, 0, 0, 5, 5, 5, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 0], [0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}], 'train': [{'input': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 5, 5, 0, 0, 0, 0, 0, 0, 0], [0, 0, 5, 5, 5, 5, 5, 0, 0, 0, 0], [0, 0, 0, 5, 5, 5, 0, 0, 0, 0, 0], [0, 0, 0, 5, 5, 5, 5, 5, 0, 0, 0], [0, 0, 0, 5, 0, 0, 5, 5, 0, 0, 0], [0, 0, 0, 0, 0, 5, 5, 5, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0], [0, 0, 8, 8, 2, 2, 2, 0, 0, 0, 0], [0, 0, 0, 2, 8, 8, 0, 0, 0, 0, 0], [0, 0, 0, 2, 8, 8, 8, 8, 0, 0, 0], [0, 0, 0, 2, 0, 0, 8, 8, 0, 0, 0], [0, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}, {'input': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 5, 5, 5, 5, 5, 5, 0, 0, 0], [0, 5, 5, 5, 5, 5, 5, 0, 0, 0], [0, 0, 0, 5, 0, 0, 5, 0, 0, 0], [0, 0, 0, 0, 5, 5, 5, 0, 0, 0], [0, 0, 0, 0, 5, 5, 5, 0, 0, 0], [0, 0, 0, 0, 5, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 8, 8, 2, 8, 8, 2, 0, 0, 0], [0, 8, 8, 2, 8, 8, 2, 0, 0, 0], [0, 0, 0, 2, 0, 0, 2, 0, 0, 0], [0, 0, 0, 0, 2, 8, 8, 0, 0, 0], [0, 0, 0, 0, 2, 8, 8, 0, 0, 0], [0, 0, 0, 0, 2, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}, {'input': [[0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 5, 5, 5, 5, 5, 0, 0, 0], [0, 0, 0, 0, 5, 5, 0, 0, 0], [0, 0, 0, 5, 0, 0, 0, 0, 0], [0, 0, 0, 5, 5, 5, 0, 0, 0], [0, 0, 0, 5, 5, 5, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 2, 2, 2, 8, 8, 0, 0, 0], [0, 0, 0, 0, 8, 8, 0, 0, 0], [0, 0, 0, 2, 0, 0, 0, 0, 0], [0, 0, 0, 2, 8, 8, 0, 0, 0], [0, 0, 0, 2, 8, 8, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0]]}]}\n", + "[[0, 0, 8, 8, 0, 2, 2, 2, 0, 0, 0], [0, 0, 8, 8, 0, 0, 2, 0, 0, 0, 0], [0, 2, 2, 2, 8, 8, 2, 0, 0, 0, 0], [0, 0, 0, 0, 8, 8, 2, 0, 0, 0, 0], [0, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0], [0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]\n", + "#15, 150deff5\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAJdCAYAAADjrMQFAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAACFyUlEQVR4nO3de3gU5d3/8Q8BsiQkHMJZEgIGhEAiHgExIBYVrApqAdEKj8RHjNVEWpV4qC3VByUiVhaVWMpRhBYpCqgoPCgKouIBbBVBQQgEjQgIZEnYRZLfHzzZX5ZNYDdkZjI779d1cdWZbObzncnmbvLNPXPXk1QuAAAAAAAAwERRVhcAAAAAAAAA56EpBQAAAAAAANM1OHnH9u3bragDAAAAAAAADpCSkiKJmVIAAAAAAACwAE0pAAAAAAAAmI6mFAAAAAAAAExHUwoAAAAAAACmoykFAAAAAAAA09GUAgAAAAAAgOkaWF0AAAAA7O+jjz7Sb3/724B9N954oyZPnmx49k8//aTZs2dr3bp1Kigo0JEjR1ReXu7/+PLly9W9e3f/dnFxsebOnat3331X3333nTwej8rKyvwfnz59uq666irD6wYAwOloSgEAoBO/UC9dulRffPGFioqKdOTIEcXGxqpp06Zq2rSpkpKS1L17d3Xv3l3p6elq0aKF1SXXOo/HowsvvFC//PKL4uLi9Nlnn6lBgxM/KrzwwguaMmWKJGncuHHKzs6u9jiHDh3SF198oS+++EKbNm3SF198oZ9//jngNb1799aCBQtOW9Mtt9yijz/+OKzzmDVrli677LKwPqem7HCu33//vRYvXqw1a9aosLBQxcXFatasmZKTk/WrX/1KI0aMULNmzcLKrUu++eYb3XLLLUHXvTo//vijRo4cqV27doX0+v79+2vPnj1h1bRy5UqlpKSE9TkAADgRTSkAgKMdPHhQ9913n9asWRP0scOHD+vw4cPavXu3vvzyS61YsUKSNHjwYD3//POG1rV48WLl5uYG7MvJydG9995rWOaGDRv0yy+/SJIuvvhif0NKktavX+//70suueSUxxkyZIgKCwuNKbKOqevnOnfuXD399NMqKSkJ2L93717t3btXn3zyiWbMmKHHH39cgwcPtqjKM/PHP/4x5IaUJOXl5YXckAIAAMaiKQUAcKxffvlFmZmZ+uKLL6wupU748MMP/f/dt29f/397vV59/vnnkqTY2Fj17NnzlMepfNtUpKvL55qfnx/SrXMHDhxQTk6OnnnmGV177bUmVFZ79u3bp88++yxof79+/dSxY0fVr19fkpSQkCBJOn78uP73f/836PUXXHCBevTo4X99cnKygVUDAIAKNKUAAI71z3/+s8qGVI8ePdSlSxfFxcXJ4/Fo586d2rJli44ePWpBleapbjbUp59+Kq/XK0m66KKL1LBhw5CP2aBBA3Xs2FHbtm2rlRozMjLUuXPnU74mMTGxVrLCVZfO9d///rf/dsvKevXqpZSUFP373//WV1995d9//PhxPfLII7rwwgvVrl27MyvcRLt37w7ad8kll2jOnDlVvv7AgQM6cuRIwL7k5GQtWrRI9erVCylz8ODBatu27Slf07Rp05COBQCA09GUAgA41uuvvx6wXb9+ff39739X//79g17r9Xr18ccfa/ny5QEPRI4UBw4c0NatWyWdmFXSrVs3/8cqz6A63a17kvSrX/1K7du31/nnn6+0tDTt27ev1p7xdN1112nYsGG1cqzaUFfP9cknnwx6n1a+/bO8vFzjx4/XkiVL/B/3eDyaOnWqJk2aVPOiTVbRLK3sVE21ql7ftm3bkBtSkjRq1Cj16dMn5NcDAIDq0ZQCADhWRROmQpcuXapsSEmSy+VS//791b9/fx0/fvy0x/7222+1ePFiffLJJyosLNThw4cVGxur9u3b65JLLtHNN9+sTp06BX3eqR527Xa75Xa7A/bV9DlTp8o5cOBAtTN08vLylJeX599+7733gmbrTJgwIex67KounmtBQYE2bNgQsK9Zs2b63e9+59+uV6+ecnNz9dprrwU0r9544w09+uijaty4cdBxDx06pBkzZmjlypUqLCxU48aNlZqaqpEjR+rXv/51jWqt6ffJAw88ENBQq2zJkiUBH+vdu7d69+4d9L1T4eOPPw54KHn79u31/vvv1+h8TsfKFQoBAKiLaEoBABzr5Ic/FxUV6eDBg6ddiaziuTNVKS0t1YQJE/Svf/0r6HlDhw4d0qFDh7R582bNnTtXd9xxh/7whz8oKiqqxufgNN98841mz56tn376SfXr11dCQoLS09N17rnnKjo62uryalVNz7Wqh/b36tUr6LbLli1bqmvXrvr666/9+0pKSvTxxx/rV7/6VcBrt27dqttuu0179+717/N6vfrggw/0wQcf6M0339TIkSNDPjc7f59s2rRJ//nPf7R//365XC61bNlSPXv2VFpaWp2pEQAAu6ApBQBwrISEBP3444/+7YMHD+qaa67RiBEjdOmllyotLU2NGjUK+Xher1ejRo3Sxo0bT/vaX375RdOnT9e+fftsdbuU1WbOnFnl/latWum///u/lZmZGTGNgZqea+VnRVU4++yzqzxWSkpKQFOq4vMrN6UOHDig//qv/9JPP/1Uba0rVqwI+Vladv8+qW5WU4cOHXT33XfXqdtLAQCo62hKAQAc65JLLtFrr70WsK+oqMh/m1z9+vXVpUsXXXTRRerXr5/69+9/yhkqTz75ZNAv2g0aNFDfvn3Vvn17FRUVae3atfrll1/8H3/llVd0ySWXaOjQoZJOPEQ5NTVV27Zt07p16wKOdd555+m8884L2lcTFTnSiecLzZs3T+Xl5apXr55GjRrlb3Zs3rzZfytYjx49dPHFFwccJy4urkb5te2nn37Sk08+qQ8++EAvvvhixM2aqux051pQUBD0OS1btqzyWC1atAjad/LnP/XUU1U2pC644AJ169ZNe/bs0dq1a/Xtt9+GVH9tfJ/069dPTZo0UVFRkd56662AY3Xu3FkZGRn+7eTkZCUnJ+u2226Tx+PR4sWLA17ftm1bDR482L99upmS1dm1a5dyc3P16aef1pkGGgAAdR1NKQCAY40dO1ZvvvmmfD5flR8/fvy4tmzZoi1btmj+/PlKSEhQVlaWxowZEzRD5YcfftA//vGPgH1t2rTRyy+/HPBMnK+//lojR46Ux+Px75s6daquu+46RUVFafTo0ZKkxYsXBzWl+vfvX6PnR1WlIkc6cZvY3LlzJZ34hf7Pf/6z/2Pjx4/3N6VGjRql4cOH10q+Ud5//31NnDhRf/nLX6wuxXDVnWtxcXHQa2NiYqo8RlX7K3/+zz//rKVLlwa9Zvz48brzzjv922vWrNEdd9xx2kUAauv7ZMiQIRoyZIg++uijoKbUueeeq0cffTQo+7LLLlNhYWFQUyo5ObnK19fUK6+8orPPPltjx46ttWMCABCpImN+OwAANdC1a1c9++yz1f7CfrIDBw7oiSee0N133x30y/fq1at17NixgH1333130EOaU1NTdc011wTsKygo0ObNm2twBrWj8kOxe/fuHfCxTz75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oFBeXl6jOuvXr1/j453cSKuusXb8+PHwCwMAIAzcvodqnbx6zJmqavUYAAAAM4U6s6myt956Sy6XS7Nnz9bw4cM1YMAAXXrppQZUZ4ydO3cGbBcUFKisrMz/TKgmTZpIkoqLiwNeV9WthTW5fgAAVIemlI199tlnmjp1qg4fPmx1KbbE9QMAwHliY2MlKaz//69fv77q1aunsrIy/77CwkKtWrWq1uszwvz58wO2582bJ0m67LLLJEnx8fFKSEjQhg0bTvl5Us2uHwAA1aEpZWOff/653G63YT8UrFq1Sk888UStHe/uu+/W5s2ba+14Z8ro6wfAOMzkBFBTaWlpkqQpU6bo1Vdf1fLly1VSUnLKzxkwYIBKS0s1ZswYLViwQNOmTdONN94Y8KDxumz37t0aO3as5s+fr/vuu0/z58/XkCFDlJqa6n/NiBEjtHLlSj300ENasGCBxo0bp48//jjoWDW5fgAAVIemlEOUlZXJ6/WG9Tkul0sNGzastRoaNGggl8tVa8cDUHcxE/HMcP0A45x77rn6/e9/ry1btmj8+PEaN26cDhw4cMrP6du3ryZNmqSffvpJjz/+uJYvX67x48frqquuMqnqM+N2uxUdHa3Jkyfr3Xff1ahRozRp0qSA12RnZ2vEiBFasWKF8vLydPz4cc2aNSvoWDW5fgAAVKeepICnIW7fvt2iUhCOqVOnyu12B+1/7733lJiYqJSUFI0aNUrnn3++pk+frh07dmjatGm66qqrNGPGDL399tvasWOHSktL1blzZ9111126+uqrA47Vv39/9e7dW5MnT5YkLV68WLm5ufrnP/+pt99+W6+99ppKS0uVkZGhiRMnqkWLFiHVXPk9VlFn37599cwzz6igoEDJycl66KGH/FPKK3/uypUr9eyzz+r9999XgwYNNHToUOXm5vqbXYWFhbrsssuUl5enYcOGBeSnpKQoJydH995772mvH4AzM2PGDE2aNMmw7ymv16uoqKhaa5z/8ssvOn78eJ1pnBt9/QA4Q8XPO5988okSEhKsLgcAAL+KuxRYfc+mBg0apB07dmj58uX64x//qObNm0tSwA8cH374od544w2NHj1azZs39/9iM2fOHF1xxRUaOnSojh07ptdff1333HOP/v73v+vyyy8/bfZjjz2mJk2aKDs7W4WFhZozZ44mTJigadOm1ehc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A0BtoCkFAABgEJfLJZfLFbQ/Pj7e9KZUhbi4OEdkV77up8stKyvTsWPHqvxanSkrr7ckNWzY0JT8imsXGxsrybrzdsr7+2RRUTyVBYA9MXoBAAAgokydOlWTJk3yb5933nlKSUlRYWGhpBO3DEyYMEFLly7V4MGDlZqaqvfee0+SNGPGDA0bNkwXXnihunfvriFDhmjFihVBGf3799cDDzzg3168eLFSUlL06aefauLEibr88sslSb///e+1f//+kOpev369brrpJqWlpem8887TnXfeqW3btgW85oEHHlD//v2rPOeKWyEqlJaWasmSJUpJSVFKSoq/3orXbt++XdnZ2erZs6cuvPBCPfbYY/J6vf7PLywsVEpKihYvXhyUl5KSoqlTp/qPV3G9r7nmGkknrnnF9QYAoDo0pQDYWkJCgm699VYlJCRYXQoAB2MsqlsGDRqk6667zr89ceJETZkyJeDr8+GHH+p//ud/dM011+jRRx9VYmKiJGnOnDnq0aOHxo0bp/vvv18NGjTQPffco3fffTek7Mcee0xff/217rzzTknS+++/rwkTJpz28z744AONGTNG+/fvV05Ojm6//XZ9/vnnGjFiRI2bO9HR0br44os1ZcoUTZkyRTfffHPAx7Ozs+X1enX//fdrwIABmjt3rh5++OGwcypf7/vvv1/SiWvO9wMA4HS4fQ+ArZ111ln6y1/+YnUZABwu1LEoOjpaOTk5io6ONqEq52Z369ZNPXr00PLly3XbbbfphhtuCLo177vvvtObb76pLl26BOxfvXq1GjVq5N8eNWqUhgwZopkzZ/pnP51Ks2bNNHfuXPl8PpWUlOjQoUOaP3++iouLT3lr16RJk9S0aVMtXrxYzZo1kyRdeeWVuu666/Tss8/q6aefDvn8K673jBkzlJSUpOuvv77K1yUlJenFF1/0n2dcXJzmz5+vO+64Q926dQs5r/L1HjRokHw+X5XX3EhOen9Xl+3z+UzPB4AzxUwpALZWWlqqL7/80vKlmAE4W6hjkcvl0r333mvqL+tOzx4zZkyVub169QpqSEkKaEgdOnRIxcXFuvjii/XVV1+FlDdy5EjVq1fPf869e/fW8ePHtWfPnmo/Z+/evdq8ebN+85vf+BtS0olmz6WXXuq/tTBUFdn16tU75etuvfXWgO3Ro0dLktasWRNWXmXR0dGWfK2d+v62MhsAagNNKQC2tn37dg0dOlTbt2+3uhQADsZYZD9JSUlV7n/nnXf0m9/8Rqmpqbrgggt08cUX6+WXX1ZxcXFIxz3rrLMCtps2bSrpRIOrOhUNq7PPPjvoY507d9aBAwdUUlISUn44OnbsGLDdoUMHRUVF8SwoAIBpuH0PAAAAjlN5RlSFTz75RGPHjlWvXr302GOPqVWrVmrYsKEWL16sZcuWhXTc6lZBKy8vP6N6K1Q3++n48eO1fmwjswAAkGhKQSdWj+ndu7cmT55sdSkAAAC14nS3rlXlrbfeksvl0uzZswNuh6pq9bna1L59e0knnnN1su3btyshIUGxsbGSTsy8Onz4cNDrqro98HTXYOfOnQEzxgoKClRWVuZ/6HuTJk0kKWiWWE2yAACoCrfv2cBnn32mqVOnVvkDiFO88MILWrlypSlZXG8AAOyvookTzv+f169fX/Xq1VNZWZl/X2FhoVatWlXr9VXWunVrde/eXUuWLAmod+vWrVq3bp0uu+wy/74OHTqouLhYW7Zs8e/bu3dvlTXGxMSc8vznz58fsD1v3jxJ8ufFx8crISFBGzZsOOXnSTW73gAAMFPKBj7//HO53W795je/8f/FqjatWrWq2qnmdcX06dM1ePBgXXXVVYZnGX29UbuioqIUFxdX59/DqBlmcsIuGIvqnrS0NEnSlClTdO2116pBgwYaOHCgv3lSlQEDBmjmzJkaM2aMhgwZov379+ull15ScnJyQBPICA8++KAyMzM1bNgwDR8+XEePHtW8efMUHx+ve++91/+6a6+9Vk899ZTuuusujR49WkePHtXLL7+sjh07Bj2MPS0tTevXr9fMmTPVunVrJSUl6bzzzvN/fPfu3Ro7dqz69++vjRs36rXXXtOQIUOUmprqf82IESOUn5+vhx56SOnp6dqwYYN27NgRVH9NrjcAAPzkFGHKysrk9XrD+hyXy6WGDRsaVBFgrO7du+uLL75Q9+7drS7FkZhZyExOnMBYVPece+65+v3vf68tW7Zo/PjxGjdunA4cOHDKz+nbt68mTZqkn376SY8//riWL1+u8ePHm/JHsUsvvVSzZs1Ss2bN9Oyzz+rvf/+7zj//fC1atCjgFrvmzZtr+vTpatSokZ566iktWbJEDzzwgAYOHBh0zEceeURpaWl65plnNG7cOL388ssBH3e73YqOjtbkyZP17rvvatSoUZo0aVLAa7KzszVixAitWLFCeXl5On78uGbNmhWUVZPrDQBAPUkBT11k1Zi6ZerUqXK73UH733vvPSUmJiolJUWjRo3S+eefr+nTp2vHjh2aNm2arrrqKs2YMUNvv/22duzYodLSUnXu3Fl33XWXrr766oBjnTwTYfHixcrNzdU///lPvf3223rttddUWlqqjIwMTZw4US1atDht3evXr9fUqVP11VdfqUGDBurdu7ceeOABde7c2f+aBx54QB9//LHef//9Ks+54r2YkpISdPwbb7xRkydP9r925cqVevbZZ/X++++rQYMGGjp0qHJzc/3PgygsLNRll12mvLw8DRs2LOBYKSkpysnJ0b333nva6w0g0IwZMzRp0iTDvke8Xq+ioqLqdOM8PT1dgwcPNmU2l9HXG4AzVPy888knnyghIcHqclBL9u/fr169egXs27BhQ0g/uwOA2Sp+z+f2vTpu0KBB2rFjh5YvX64//vGPat68uSQF/ADx4Ycf6o033tDo0aPVvHlz/y8qc+bM0RVXXKGhQ4fq2LFjev3113XPPffo73//uy6//PLTZj/22GNq0qSJsrOzVVhYqDlz5mjChAmaNm3aKT/vgw8+UGZmppKSkpSTkyOv16t58+ZpxIgRWrZsWdi/SE2ZMkUPPfSQevbsqZEjR0o68TyFyrKzs5WYmKj7779fmzZt0ty5c3Xo0CFNmTIlrKxQrjfqlm+//VbZ2dmaNm2aunTpYnU5OIWysjIdO3Ys4OHBpxPOawErMRYBAACEj6ZUHdetWzf16NFDy5cv15VXXlllQ+e7777Tm2++GfRD8OrVqwOWOx41apSGDBmimTNnhtSUatasmebOnetfTaW8vFxz585VcXGx4uPjq/28SZMmqWnTplq8eLGaNWsmSbryyit13XXX6dlnn9XTTz8dyqn7XX/99Xr00UeVlJSk66+/vsrXJCUl6cUXX/SfZ1xcnObPn6877rhD3bp1CzkrlOuNusXr9erbb78N+7ZVnLnKMwsrP4TXiTM5lyxZoiVLlkgyZyZnVdcb1mIsAgAACB9NqQjQq1evKv8qW7khdejQIR0/flwXX3yxli9fHtJxR44cGbC870UXXaRZs2Zpz5491TZ69u7dq82bN2vs2LH+hpR0otlz6aWX6r333gvxrMJz6623BmyPHj1a8+fP15o1a8JqSgEIHTM5mckJAAAAnAmaUhGg8sMvK3vnnXf0/PPPa/PmzfL5fP79lRtNp3LWWWcFbDdt2lTSiQZXdfbs2SNJOvvss4M+1rlzZ61du1YlJSW1vhJLx44dA7Y7dOigqKgoFRYW1moOgP+PmZzM5ARgT/fee2/Ain4AAFiF1fciQOVf7Cp88sknGjt2rFwulx577DHNnDlT8+bN05AhQ1ReXl7FUYJVt6x1qJ9/OtU1x44fP17rxzYyC0D1Qp3JWVxcrIsvvjhoOfPqVDWT8/jx4/7GeFUqZnL+5je/sXwmpyStWbPGkDwAAADALpgpZQOhzmyq7K233pLL5dLs2bMDHhS8ePHi2iwtSPv27SWdmB1xsu3btyshIcE/S6pp06ZVLmte1S+Vp7sGO3fuDJgxVlBQoLKyMv9MgiZNmkiSiouLzzgLdUuHDh304osvBt0yhbqBmZzM5HSK6sYir9cb8B4vKyvTwYMH1bx5c/7/BsAZKy8v15EjR9SmTRurSwGAGqEpZQMVvyBV1cCpTv369VWvXj2VlZX59xUWFmrVqlW1Xl9lrVu3Vvfu3bVkyRLddddd/mbQ1q1btW7dOg0dOtT/2g4dOqi4uFhbtmzx38Kyd+/eKmuMiYk55fnPnz9f/fr182/PmzdP0v9/GHB8fLwSEhK0YcMGjRkzJuDzTlaT6w3rNGnSRFdccYXVZaAap5rJ2atXLz322GNq1aqVGjZsqMWLF2vZsmUhHZeZnKhrqhuL8vPz/Q+oBwCjrFu3TtHR0VaXAQBh4/Y9G0hLS5N04oG6r776qpYvX66SkpJTfs6AAQNUWlqqMWPGaMGCBZo2bZpuvPFGJScnG17vgw8+qIMHD2rYsGGaMWOGpk2bpltvvVXx8fEBzy+49tprFRsbq7vuukuzZ8/W9OnTdeONNwbNKpBOXIP169dr5syZWr58uTZt2hTw8d27d2vs2LGaP3++7rvvPs2fP19DhgxRamqq/zUjRozQypUr9dBDD2nBggUaN26cPv744yqzpPCuN6zz008/afr06frpp5+sLsWRznQm5/DhwzVgwABdeumlBlQXyMqZnJUxkzMyVTcWZWVladOmTf5/a9eutajCE/Ly8hyX7cRzdmq2E8+5QuPGjS3NB4CaoillA+eee65+//vfa8uWLRo/frzGjRunAwcOnPJz+vbtq0mTJumnn37S448/ruXLl2v8+PG66qqrDK/30ksv1axZs9SsWTM9++yz+vvf/67zzz9fixYtCriVp3nz5po+fboaNWqkp556SkuWLNEDDzyggQMHBh3zkUceUVpamp555hmNGzdOL7/8csDH3W63oqOjNXnyZL377rsaNWqUJk2aFPCa7OxsjRgxQitWrFBeXp6OHz+uWbNmBWXV5HrDOj/++KOefvpp/fjjj1aX4kh2nclZud6KmZwVMyulwJmcFc5kJmdlp5rJearPk5jJWZdVNxa5XC7Fx8cH/LNSTEyM47KdeM5OzXbiOVfgjxb2lJKSEtK/jz766IyzSktLNXXq1Fo5Vk0tW7ZMs2fPNiXrxx9/1NSpU7V582ZT8lBz3L5nE/fcc4/uueeeoP3bt2+v9nOGDx+u4cOHB+0/ebWV999/P2B72LBhGjZsWNDn9enT55R5lV166aUhzXzIyMjQihUrTlvj2WefrYULF1Z7nISEBD333HOnzGrUqJGefPJJPfnkkwH7qzqn6q43gECVZxZee+21atCggQYOHHjK5zINGDBAM2fO1JgxYzRkyBDt379fL730kpKTkwOaQEZ48MEHlZmZqWHDhmn48OE6evSo5s2bV+VMzqeeekp33XWXRo8eraNHj+rll19Wx44dgx7GXnkmZ+vWrZWUlKTzzjvP//GKmZz9+/fXxo0b9dprr1U5kzM/P18PPfSQ0tPTtWHDBu3YsSOo/ppcbwAAUDdNmTIlYPvVV1/VunXrgvZ37tz5jLNKS0vldruVk5OjPn36nPHxamLZsmX65ptvAh6nYpQff/xRbrdb7du3V/fu3Q3PQ83RlAIA1FjFzMKFCxfq/fffV1lZmd57771TNkkqZnLm5+fr8ccfV1JSksaPH689e/YY3pSqmMk5depUPfvss2rQoIF69+6t8ePHVzmTc+LEiXrqqaeUmJioBx54QDt37gxqSj3yyCN65JFH9Mwzz+jo0aO68cYbA5pSbrdbzz77rCZPnqz69etr1KhReuihhwKOkZ2drQMHDmjFihV688031b9/f82aNUu9evUKeF1NrjcAAKibrr/++oDtTZs2ad26dUH7gUhGUwoAcEaYyclMTgAAYIyysjLNnTtX//znP1VQUKD4+HhdeeWVGj9+vH/1YUn697//rWeeeUZffvmlSkpK1KpVK/Xp00d5eXkqLCz0PzbA7Xb7F+DIyckJ+rmmsl27dumpp57S+vXr5fV61a1bN91zzz26/PLL/a9ZvHixcnNz9d577/mflylJH330kX7729/q5ZdfVp8+fXTLLbf4n+ebkpIi6cTzPt9//33/a6dOnaotW7bolVde0ZEjR9S3b19NmDAhYNXl/v37q3fv3po8eXJArbfccoskacGCBf7jSVJubq5yc3MlnXj2W1U/R8JaNKUA2FqTJk109dVX+x8WDQBWYCwCABjhkUce0ZIlS/Sb3/xGo0ePVmFhoV566SVt3rxZixYtUsOGDbVv3z7ddtttSkhI0J133qkmTZqosLBQK1eulHTiD2SPP/64Hn30UV111VUaNGiQJPlXQK/Kvn37/I86GD16tJo3b64lS5Zo7Nixeu655/zHCNXvfvc7FRcXq6ioSI888ogkBc30fuGFF1SvXj3deeed2r9/v2bPnq3Ro0fr9ddfr3JF5+p07txZ48aN07PPPquRI0fq4osvliRdcMEFYdUMc9CUgq3de++9p+zuI/J16NDhtLNQAMBojEUAgNr26aefatGiRfrrX/+qIUOG+Pf36dNHY8aM0YoVKzRkyBB9/vnnOnTokObMmaNzzz3X/7r77rtP0onmz+DBg/Xoo4+qW7duId0emJ+fr3379umf//ynLrroIknSTTfdpGuuuUZPPPGErrzySkVFhb5uWkZGhubMmaNDhw5Vm3/o0CG9/fbbiouLkyT16NFD2dnZ+sc//qHbbrst5KyWLVvqsssu07PPPqvzzz+f2yHrOFbfA2BrPp9PP/zwg3w+n9WlAHAwxiIAQG178803FR8fr0svvVQHDhzw/0tLS1Pjxo314YcfSpJ/lu67776rY8eO1Ur2mjVr1LNnT39DSpIaN26skSNHqrCwUN9++22t5FR2ww03+BtSknT11VerdevWWrNmTa1noe4IeaaU1+sN+EGrrKxMBw8eVPPmzVmCFMAZKS8v15EjR9SmTZuw/uIiSd98842GDh2qpUuX+lcmA+oCZnI6C2MRAKC27dy5U8XFxUELn1Q4cOCAJKl3794aPHiw3G63Zs2apT59+ujKK6/UddddJ5fLVaPsPXv2qGfPnkH7K54H9f3336tr1641OnZ1OnbsGLBdr149JScna8+ePbWag7ol5KZUfn6+/4FoAGCEdevWqV27dlaX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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\n" + ] + } + ], + "source": [ + "#| gui\n", + "code = '150deff5'\n", + "task = data_mgr.get_data_for_code(code)\n", + "print(task)\n", + "task_solution = data_mgr.get_solutions_for_code(code)\n", + "print(task_solution)\n", + "plot_task(task, task_solution, 15, code)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'test': [{'input': [[0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 0], [0, 0, 2, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 8, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 6, 0, 0, 0, 0, 0, 2, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0]]}], 'train': [{'input': [[0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 2, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 4, 0, 4, 0, 0, 0, 0, 0], [0, 0, 2, 0, 0, 0, 0, 0, 0], [0, 4, 0, 4, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 7, 0, 0], [0, 0, 0, 0, 0, 7, 1, 7, 0], [0, 0, 0, 0, 0, 0, 7, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0]]}, {'input': [[0, 0, 0, 8, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 2, 0, 0], [0, 0, 1, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 0], [0, 2, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 8, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 4, 0, 4, 0], [0, 0, 7, 0, 0, 0, 2, 0, 0], [0, 7, 1, 7, 0, 4, 0, 4, 0], [0, 0, 7, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 7, 0, 0], [4, 0, 4, 0, 0, 7, 1, 7, 0], [0, 2, 0, 0, 0, 0, 7, 0, 0], [4, 0, 4, 0, 0, 0, 0, 0, 0]]}, {'input': [[0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 2, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 6, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 4, 0, 4, 0, 0, 0, 0, 0], [0, 0, 2, 0, 0, 0, 0, 0, 0], [0, 4, 0, 4, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 6, 0, 0], [0, 0, 0, 7, 0, 0, 0, 0, 0], [0, 0, 7, 1, 7, 0, 0, 0, 0], [0, 0, 0, 7, 0, 0, 0, 0, 0]]}]}\n", + "[[0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 7, 0, 0], [0, 4, 0, 4, 0, 7, 1, 7, 0], [0, 0, 2, 0, 0, 0, 7, 0, 0], [0, 4, 0, 4, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 8, 0, 0, 0], [0, 0, 0, 0, 0, 0, 4, 0, 4], [0, 6, 0, 0, 0, 0, 0, 2, 0], [0, 0, 0, 0, 0, 0, 4, 0, 4]]\n", + "#15, 0ca9ddb6\n" + ] + }, + { + "data": { + "image/png": "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YmKUnJys6667TqeffrrX7zmetWvXavbs2Vq9erUKCgrUsmVLDRo0SP/85z916qmn+ry/qgoLCzV79mx99tlnys3NVXh4uLp27arLLrtMl1xySY1DxJdeesnj87CwMM2cOVN9+vTxevsWLVrouuuuq3EdVS9o37ZtW6+/IwAA7IYhFADAVg4ePOjxeV5envbv369mzZod9/vq169f49dKSko0adIkvfvuu9VeYlNQUKCCggJt3LhRr776qm688Ubdc889qlevnt/3IdRs2bJFc+bM0Z9//qn69esrJiZGSUlJOv300z2GJGaso+qFyKOjo5WUlFTttmeffbbHEEqSli1b5nUI9eWXX+rBBx/U7t27q30tLy9PeXl5WrdunWbNmqXs7GyPr8+ePVuzZs3yut7Dhw+rpKREeXl5WrFihZ5//nk98MADXgdGVe+XJMXHx1fb1rFjx2rbli9f7nWfixYtUlpamsdL+PLy8rRo0SJ9/PHHmjBhgtd11+Sll17Sk08+6XFW4q5du/Tmm2/qgw8+0GOPPebT/qr6+eefdcMNN+j333/32L569WqtXr1aH3/8sV544YVqF2PPzs5WZmamx7ahQ4fWOIACAAA1YwgFALCVmJgYj5dT7d+/XxdeeKEuv/xynX322UpMTFSjRo1qvT+Xy6WxY8dq7dq1J7ztkSNH9MILL2jPnj16/PHH/Vp/KKppyNKyZUvdcMMNuv76600Z6mVlZVXbVtPZN1XPZJGkjRs3Vtv21ltvaeLEiaZcH8jlcmnSpElq0aKFzj//fI+vVX6JXYWqA1tJOnDgQLVt69evr7Zt1apVuu+++2o8g/Do0aN6/PHH1aVLl1qt/YMPPvA4G6+qQ4cOacKECWrfvn2t9ldVcXGxrrvuOq+DwApff/217r//fqWnp3tsX716dbXbDhkyRIsXL9Y777yj9evXq6ioSFFRUerWrZtGjhypMWPG8M6CAAB4wRAKAGArAwcO1AcffOCxLS8vz/2yt/r166tLly7q27evBg0apMGDBx/3bJvHHnus2gAqPDxcZ511ltq2bau8vDwtX77c44/8d955RwMHDtTo0aMlSSNHjlT37t21detWrVixwmNfZ5xxhs4444xq2/xRkSMde2nZa6+9pvLycoWFhWns2LHuQc7GjRuVkZEh6dgF2/v16+exn8jISL/yA+3PP//UY489pm+//VYvvvii4WdFbd++vdq22NhYr7f1tr3q92/YsEH/+c9/vA6gzjzzTJ122mkqKytTdna21q1b53VQVKFVq1Y69dRTFRMTo2bNmqlevXrau3ev1qxZo7y8PI/bPvHEExoxYoTH4C4uLk7btm3zuF1GRobHy0fLy8u9Dlx2796tw4cPu1+SWFZWpgcffLDaACo8PFznnHOOWrVqpZ9++klZWVnVzhbzpqioSI888ki17RERERo6dKiaNm2q1atXKzs7Wzk5OSfcnzcFBQWSpObNm2vIkCFq2LChli9fXu2sqI8++kgXX3yxzjnnHPc2b8PFmTNnVvvevXv36rvvvtN3332nOXPmaObMmSe84D4AAKGGIRQAwFZuuukmffLJJx4vEars6NGj+vnnn/Xzzz9r/vz5iomJ0S233KLrrruu2tk2v//+u958802Pba1bt9brr7/u8cf7pk2bdOWVV6q4uNi9LT09XX/7299Ur149jRs3TtKxC1pXHUINHjzYr+s/eVORIx17admrr74qSercubMefvhh99fuv/9+9xBq7NixuuyyywKSb5RvvvlGkydP1n//+19Dc4qKiqpta9y4sdfbRkREnPD7n3nmmWqDpRYtWmjmzJnq3bu3x/a8vDy98MIL1fb517/+VZdeeqm6du3qdR2HDx/WXXfdpU8//dS9bceOHdq8ebN7IClJgwYNqjaEmjZtmmJjYzVgwAAVFhbqhRdeqHFoVFRUpJiYGEnSV199VW1fDRs21Lx589S3b1/3tqeeesrrfarq/fffdw+JKjRr1kxvv/22+4yzo0eP6v777682YPZF586d9b///c99Pw4dOqQbbrjB4yL9kjRnzhyPIdTevXur7avqAKqqnJwcjRs3Tu+//75at27t95oBALAbhlAAAFvp2rWrnn32Wd17770qKSk54e337t2rKVOm6IcfftCMGTM8BlFLly7V4cOHPW5/++23V7v4ePfu3XXhhRfqrbfecm/bvn27Nm7cqMTExJO8R/6pGDJJUv/+/T2+Vvlsl8pDAzP16tVLI0aMUHJyshISEuRwOLRz5059/vnnmjlzZrWXhf3vf//T9ddf7/U6RoFy6NChattqulaYt3c9q/zytuLi4moDR+nYReCrDqAkqU2bNl6HbBUX93a5XFqzZo2ys7O1Z88eHTx40H0mkrfh2YYNGzyGUNdff73eeustj+Fsfn6+br75Zq/3r6rKz4Ovv/662tcvueSSao+lu+66S++99161dxusytv+brjhBo+XPNavX1//+c9/jjtgPpG0tDT3AEqSGjVqpIcfflgjR470uN2qVavkcrncL6crLCyscZ89e/ZUz549lZubq++++87ja3/88YeeeOIJTZs2rdr3Vb32FwAAoYIhFADAdkaMGKGkpCTNmDFDH330kccZSjX5/PPPtWDBAl1++eXubVUvRixJ//nPf/Sf//ynVutYu3atZUOoyu+Sl5yc7P74jz/+0I4dOyQdOyvH27v5Ge3ZZ59Vq1atqm3v3LmzOnfurJSUFF122WUeZxEdPXpUS5Ys0Q033GDYurxdK6yml8h52175rKkNGzZUG2CecsopHmfY1MaBAweUnp6uN9980+v1mmpS9eydDh06aOrUqbr33ns9LvxdW9HR0e6Pvb08zds7UIaHh3t9eWxVmzZtqrZt0KBBXtfQq1cvry8ZPJHw8HCdffbZ1bZ36dJFcXFxHmc2HT58WFu2bHFfkL7yOyNWNnbsWD388MPud9R78803NXHiRI/bfPTRR5o0aZKioqJ8XjMAAHbEEAoAYEunnHKKJk+erP/85z9au3atVq9erTVr1mjt2rVezxyRpHfffddjCOXtZTi++PPPP0/q+2tr3bp1WrRokce2ymdlLFu2TGvWrJHk+S5pDRo00KOPPur+fPDgwRoyZIjBq5XXAVRlp59+uoYOHaolS5Z4bN+wYYORy/I6KKjpbDpv2yt//549e6p93dvFzI/n8OHD+sc//lGri+JX5e2srlGjRqlly5b673//6/Vldw6HQ+PGjdO8efM8vj8iIsJjQLd///5q39umTRuv64iLizvhWvft21fr/dW0/URiYmJqvFB4mzZtqr28rvKaarpG2h133OEeQEnSFVdcoRkzZng8x44cOaKffvrJ6wAMAIBQxBAKAGBrDodDAwYM0IABAyQdO6Nm+fLl+n//7/9Vu8jx5s2bA5rt7d3HjPDLL79o7ty5NX69pjNRfv/9d4/va9q0qSlDqNro3LlztSGUt2FFIHl7qZ+3YZJ07KVstfn+k/Hmm2/6NYCSVOO78Q0cOFCLFy9WZmam1q5dqz179qhevXpKSEjQkCFDdOjQIb388sse39OzZ0+/1mAXbdu2rbYtOjpaLVq08NgWFhamTp06eQyhJO+PFQAAQhVDKABASKlfv77OOeccNW/eXJdcconH11wul8fn3t4B7fzzz6/1hYarvuscaq/qhaol7xcDDyRvL5389ddfvd5269at1bZVHtZ4e+z4eh2gL774otq2oUOHKjU1Vaeeeqr7DJ033nhDDz30UK33GxYWpt69e3u9NlXFxewrq3qtp2bNmlW7TV5ennr16lVt+4ku4C0de8e6qteNysvLqzbkqdjuj71793pc5+lE+2zevLn745N9SW1NF7cHACAUMYQCANjK/PnzNXLkSK9/wFbmbUhQ+bo30rGXhb333nse27p3767bb7/9hOs4evRotYtae7vIddW3ube7lStXqmvXrh5/5Fflcrn05ZdfVtvevn17I5em0047TW3bttWuXbvc2woLC/XTTz+5LxBeoepFqKVjA6IKiYmJCg8P97h21G+//aavv/661mebVT2jRpKefPLJaj+7devW1Wp/J1JQUKCXXnrJY1tYWJguvfRSj209evRwv7yzwvLlyzVixAiPbUeOHNHKlStPmNu9e/dqQ6gVK1ZUG/4UFhb6fV+PHDmi7777zuN3JB0bJlYdlDVo0EBdunRxfz5gwAA1aNDA4xpfBQUF2rNnj0fPlJeXVzu7Ugr8GXIAAASzeie+CQAAwWP+/PkaMmSI/vWvf2nVqlVehzyHDx/W9OnTq22v+kfvsGHDqr0L2owZM7R06VKv2WVlZVq7dq2mTJlS7SwryfsZEd7OqPHVmDFjlJ2d7f6v8jBgxowZ7u3Lly93b+/YsaPH92RnZ+vOO+886bWcyJIlS/SXv/xF06ZN8zpk2bNnj1JTU72eQVN1gCBJCxYsUEJCgsd/6enpfq0tLCzM6+9t2rRpHgOIBQsWVLumUocOHTzehTAyMtLrxbXvv/9+rxe8z8/Pr/bueN4uiF31It4fffRRtUFpTf73v//p22+/9fqc2L59u6677rpqZwUNHz5cp556qsc2b0O0d999Vz/++KPHNqfTWaszl7zt75VXXvEY6Bw9elSPPvqo3++MJ0mPP/64x0s6XS6XHnnkkWq369+/v8c1sGJiYjRs2LBqt3vuuec8Xvb41ltvVXtMt23b1mOgVaHqY9bbhd0BALAjzoQCANjOoUOH9M477+idd95RkyZNlJiYqLi4OEVGRmrv3r1atWqV1+u0/O1vf/P4/JRTTtEVV1yh119/3b3N5XLppptuUufOndWtWzc1b95cBw4c0K5du/Tzzz+7X0bm7ToyHTt2rLbt888/1z/+8Q916tTJfabUvffe6/dLeMrLy93vjBcWFua+FpbkefbOwIEDfdrva6+9pu3bt7s/9/aOg9u3b/e40Ll07GLYVV+mVVhYqOeff14vvPCCunTpou7du6tx48bKzc3V2rVrve67b9++Pq/ZH//85z/19ttve5yZs2LFCl1wwQVKTk7W77//7jHMqzBx4kSPi1RL0l133aVvvvnGY+izZ88ejRkzRmeeeaZOO+0099kza9euVWlpqR5++GH3bRMTE6tdp+yGG27QOeeco2bNmmnz5s1eB1o1+f777/Xvf/9bMTEx6tWrl+Li4lRWVqZff/1VP/74Y7XhVExMjNchzZAhQxQfH+/xeCgtLdXVV1+tIUOGqHXr1vrpp5+0fv36Wq3r4osv1jPPPKPCwkL3tn379mnUqFEaOnSomjZtqtWrV5/0wHbr1q0699xzdc4556hBgwZasWKF10HotddeW23bPffco2XLlnkMwebNm6c1a9aoZ8+eys3N9Xp23K233npSawYAwG4YQgEAbO3AgQPuoczx9O/fv9oQSpIefPBBbdiwodof+1u3bvX5j+IuXbpUe7lXeXm5VqxYoRUrVri33X777X4PoTZt2uR+97Lu3bt7XL/n+++/d3981lln+bTfTz/99IQ/x7y8vGoXSO/evbvXawVJx+77li1btGXLluPut02bNpo2bZpP6/VXVFSUpk2bphtuuMHjHeJ+/fXXGq8PNXbsWA0fPrza9sTERE2aNKna9ZrKy8v1448/VjtzqKprrrlG77//vsrKytzbXC6XPvvsM4/bDRo0yOtgrCZ79+71+nLHyqKjozVz5kyv72RYv359TZ48WePGjfNY2+HDh6tdxyouLu6E14WKiorSQw89pAkTJnhsP3jwoD7++GP352FhYWrdurVf14WKjIxUvXr1tG/fPr3//vs13u6CCy7wesZdQkKCHnrooWq/yw0bNtT4ro3nn3++rrzySp/XCgCAnfFyPACArfTs2bPaS+hO5IILLtCLL76oevWq/2+xUaNGmjdvni6//HKvX/emQYMGXs/aqVevnh544IFa78cflQdNlc+CkuS+Pk/VM6TMFB8fr4YNG9b69meddZbeeecdtWvXzsBVeRo4cKBeeeUVxcXFHfd2DRo00G233eZx9lJVV111lV588cUTXqPMm9NPP13//ve/a3y8hIWF6b777tNf//pXn/d9PH369NFbb72lPn361HibgQMH6oknnjju7/KWW27RZZddVqvMSy65RPfdd1+1s8kqhIeH6+GHH/Z5eFohOjpas2bNUkxMTI23GTRokJ588skav37VVVfpiSeeUFRU1HGzwsLC9I9//ENPP/10jfcHAIBQxZlQAABbmTZtmh5++GGtXLlSa9eu1ebNm7Vjxw7t2bNHJSUlqlevniIjIxUfH68zzjhDo0aNqnbR6aoaN26sxx57TDfffLPeffdd/fDDD8rJyXG/9C4yMlLt27dX165dNWDAAA0ePLjGC2+ff/75+t///qc5c+YoMzNT+fn5HtcbOlmVLwRdeRD266+/us8g6dq163H/GDfSuHHjdPHFF+urr77SqlWr9PPPPys3N1eFhYU6evSooqKi1LZtW/Xu3Vt/+9vfjjsIkapfvLt+/fpez2Tx1cCBA7VkyRItWLBAS5Ys0datW7Vv3z41btxYbdq0UUpKii6//HIlJCSccF/Dhw/XoEGD9OGHH+rrr79WVlaW+93aYmJi1Lp1a/Xt29frNaT+8Y9/qGfPnnrllVf0448/qqioSLGxserdu7fGjRun5ORkLViwoFb36d5771WfPn20cuVK5eTkaO/evSosLFSTJk3UsmVL9e3bV+edd16tr0908cUXKzExUS+99JK+++477d27V9HR0e61DRw40Kfrc916663q37+/Zs2apR9++EGFhYWKiYlR//79df311ysxMbHa2VK+OPPMM/XZZ59p1qxZ+uKLL7Rr1y7Vr19fXbt21eWXX65LL730hEOjSy+9VEOGDNHbb7+tZcuWaceOHSooKFDjxo3Vrl079e/fX1deeaU6d+7s9zoBALCzMEnllTf4+vbBAAAAVhkzZozWrl3r/vy2227Tvffea+GKAAAAUFnlf7Tj5XgAACAoFRYW6qeffnJ/3q1bN40fP97CFQEAAOB4GEIBAICg9N1337nf0a1BgwZ68sknfbreFAAAAMzFEAoAAASlyu8Id/vtt6tHjx4WrgYAAAAnwjWhAAAAAAAAYAiuCQUAAAAAAABTMYQCAAAAAACA4RhCAQAAAAAAwHAMoQAAAAAAAGA4hlAAAAAAAAAwHEMoAAAAAAAAGI4hFAAAAAAAAAzHEAoAAAAAAACGYwgFAAAAAAAAwzGEAgAAAAAAgOEYQgEAAAAAAMBwDKEAAAAAAABgOIZQAAAAAAAAMBxDKAAAAAAAABiOIRQAAAAAAAAMxxAKAAAAAAAAhmMIBQAAAAAAAMMxhAIAAAAAAIDhGEIBAAAAAADAcAyhAAAAAAAAYDiGUAAAAAAAADAcQygAAAAAAAAYjiEUAAAAAAAADMcQCgAAAAAAAIZjCAUAAAAAAADDMYQCAAAAAACA4RhCAQAAAAAAwHAMoSBJGjx4sCZMmBCw/aWnpyshISFg+wMQuugnAHUV/QTAznJzc5WQkKAFCxZYvRTYCEOoIPHjjz8qPT1dhYWFVi8lKPHzA4zD8+vk8PMDjMPz6+Tw8wPMY9bz7fnnn9fnn39uaIZRSkpKlJ6erpUrV1q9FJwEhlBBYs2aNXI6nYaV0pIlSzRlypSA7e/222/Xxo0bA7a/k2X0zw8IZfTTyaGfAOPQTyeHfgLMY9bz7YUXXtCSJUtqddu2bdtq48aNuvjiiw1dU22VlJTI6XRq1apVVi8FJyHc6gUg8MrKynT48GE5HI5af48vt62N8PBwhYfz8ALgiX4CUFfRTwDgKSwsLOA9B3AmVBBIT0/X448/LkkaMmSIEhISlJCQoNzcXElSQkKCJk2apIULF2rkyJHq3r27vv76a0nSyy+/rDFjxqhPnz7q0aOHRo0apcWLF1fLqHpNgwULFighIUE//PCDJk+erH79+ikxMVG33HKL8vPza7Xmqtc0qFjn559/7l7nyJEj3Wut+r3Z2dkaP368evXqpT59+uiRRx6Ry+Vy3+54r1FOSEhQenp6rX5+APxHP9FPQF1FP9FPQLCozfPtgw8+0KhRo9SjRw+deeaZSk1N1W+//eaxn5ycHN12223q37+/unfvrrPPPlupqakqKiqSdOw5fvDgQb333nvujONd185bX0yYMEFJSUnKy8vTzTffrKSkJPXr109TpkzR0aNHq33vyy+/rNmzZ2vQoEHq0aOH/v73v2vz5s0eOVdddZWuuuqqavkTJkzQ4MGD3fvr16+fJMnpdLrXX9FZCB78U0sQGDFihHJycvThhx/q3//+t5o3by5JiomJcd/m+++/18cff6xx48apefPmateunSRp7ty5Gj58uEaPHq3Dhw/ro48+0h133KFXXnlFQ4cOPWH2I488oqZNm2r8+PHKzc3V3LlzNWnSJE2fPt2v+/LDDz/os88+09VXX60mTZrotdde0+23367ly5e771eF8ePHq127drrvvvuUmZmpV199VQUFBZo2bZpPmbX5+QHwD/1EPwF1Ff1EPwHB4kTPtxkzZuiZZ57RBRdcoCuuuEJ79+7Va6+9pr///e/68MMP1bRpU5WWluq6665TaWmpxo0bp5YtW+qPP/7QsmXLVFhYqKioKE2bNk0PPPCAevXqpSuvvFKS1KFDB5/Xe/ToUV177bU644wz9MADD+jbb7/VrFmzFB8fr6uvvtrjtu+//74OHDiga665RqWlpZo7d66uueYaLV68WC1atKh1ZkxMjB599FE99NBDOu+88zRixAhJUrdu3XxeP6zFECoIdOvWTT179tSHH36oc889132AVNmvv/6qTz75RF26dPHYvnTpUjVq1Mj9+dixYzVq1CjNmjWrVgdRzZo106uvvqqwsDBJUnl5uV599VUVFRUpKirK5/uSnZ2tTz/9VPHx8ZKkgQMH6sILL9SHH36ocePGedy2ffv2evHFF93rjoyM1Pz583XjjTf6VDa1+fkB8A/9RD8BdRX9RD8BweJ4z7ddu3YpPT1d99xzj2677Tb39vPOO0+jRo3S/Pnzddttt2nr1q3auXOnnnvuOZ1//vnu240fP9798UUXXaSHHnpI7du310UXXeT3el0uly688EL3vq+66iqNGjVKb7/9drUh1Pbt27V06VK1adNG0rEzSC+55BK9+OKLmjhxYq0zGzdurJEjR+qhhx5St27dTmr9sBYvx7OJ5OTkagdQkjwOoAoKClRUVKR+/fppw4YNtdrvlVde6T6AkqS+ffvq6NGj2rVrl1/rPOuss9wHUNKxwo2MjNTOnTur3faaa67x+LziIOurr77yKxuANegnAHUV/QSgrvvss89UVlamCy64QHv37nX/17JlS3Xs2NH9TnEVA+5vvvlGJSUlhq+r6svn+vbt67WTzj33XPcASpJ69eqlM844g04KYZwJZRPt27f3un3ZsmWaMWOGNm7cqNLSUvf2ygdGx3PKKad4fB4dHS3p2AGZP6rur2Kf3vbXsWNHj887dOigevXqcS0CIMjQTwDqKvoJQF23bds2lZeXa9iwYV6/XvFmBu3bt9c///lP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xeqlhCT6iX7C/6GP6hb6iX4CgsG0adM8/ktJSfG6vXPnziedVVJSIqfTqVWrVp30vvxl9hDK6XQyhAoC4VYvAP4rKyvT4cOH5XA4av09vtwWqGtcLpd++eUXuVwuq5eCE6CfYHf0UfCinwBY5aKLLvL4PDMzUytWrKi2HbAzzoSqQ9LT0/X4449LkoYMGeI+HTM3N1fSsdM3J02apIULF2rkyJHq3r27vv76a0nSyy+/rDFjxqhPnz7q0aOHRo0apcWLF1fLqHpNgwULFighIUE//PCDJk+erH79+ikxMVG33HKL8vPza7Xu7777TldccYUSExN1xhln6Oabb9bWrVs9bjNhwgQNHjzY631OSEhwf56QkKCDBw/qvffec9//ivVW3DY7O1vjx49Xr1691KdPHz3yyCMefwTk5uYqISFBCxYsqJaXkJCg9PT0Wv28Afwf+ol+Auoq+ol+AuykrKxMc+bMcfdVcnKyJk6cqIKCAo/b/fTTT7r22mvVt29f9ejRQ0OGDFFaWpqkY8/nfv36SZKcTqf7eVrxPK7Jjh07dMcdd+jMM89Uz549demll+rLL7/0uE1F/1V9zq9cudLjpYRXXXWVvvzyS+3atcudX9FnFbf96KOP9NRTT6l///5KTEzUTTfdpN9++81jvzVdk++qq67SVVdd5d7fxRdfLElKS0tz53nrM1iPM6HqkBEjRignJ0cffvih/v3vf6t58+aSpJiYGPdtvv/+e3388ccaN26cmjdvrnbt2kmS5s6dq+HDh2v06NE6fPiwPvroI91xxx165ZVXNHTo0BNmP/LII2ratKnGjx+v3NxczZ07V5MmTdL06dOP+33ffvutrr/+erVv316pqalyuVx67bXXdPnll2vRokXu9dXWtGnT9MADD6hXr1668sorJUkdOnTwuM348ePVrl073XfffcrMzNSrr76qgoICTZs2zaes2vy8ARxDP9FPQF1FP9FPgJ1MnDhR7733ni699FKNGzdOubm5mjdvnjZu3Ki3335bDRo00J49e3TttdcqJiZGN998s5o2barc3Fz3deFiYmL06KOP6qGHHtJ5552nESNGSJK6detWY+6ePXt02WWX6dChQ+6ufO+993TTTTfpueeec++jtm677TYVFRUpLy9PEydOlCQ1btzY4zbPP/+8wsLCdPPNNys/P19z5szRuHHj9NFHH6lRo0a1zurcubPuuusuPfvss7ryyivdA7gzzzzTpzXDHAyh6pBu3bqpZ8+e+vDDD3Xuued6PQD59ddf9cknn6hLly4e25cuXerxRB07dqxGjRqlWbNm1eogqlmzZnr11VcVFhYmSSovL9err76qoqIiRUVF1fh9jz/+uKKjo7VgwQI1a9ZMknTuuefqb3/7m5599lk99dRTtbnrbhdddJEeeughtW/fvsbTUtu3b68XX3zRfT8jIyM1f/583Xjjjcct1qpq8/MGcAz9RD8BdRX9RD8BdvHDDz/o7bff1jPPPKNRo0a5tw8YMEDXXXedFi9erFGjRmnNmjUqKCjQ3Llzdfrpp7tvd++990o6NuwZOXKkHnroIXXr1q1WL/ebOXOm9uzZo7feekt9+/aVJF1xxRW68MILNWXKFJ177rmqV6/2L6RKSUnR3LlzVVBQUGN+QUGBPvvsM0VGRkqSevbsqfHjx+vNN9/UtddeW+usFi1aaMiQIXr22WfVu3dvXt5Yx/FyvCCTnJxc7QBKkscBVEFBgYqKitSvXz9t2LChVvu98sor3QdQktS3b18dPXpUu3btqvF7du/erY0bN+rSSy91H0BJxw5Ozj77bPep7oF2zTXXeHw+btw4SdJXX31lSB7qjg4dOujFF1+s9q+7qBvoJ/oplNBHwYV+op+AYPDJJ58oKipKZ599tvbu3ev+LzExUU2aNNH3338vSWratKkk6csvv9Thw4cDkv3VV1+pV69e7gGUJDVp0kRXXnmlcnNzDXkjjosvvtg9gJKk888/X61ataKXbI4zoYJM+/btvW5ftmyZZsyYoY0bN6q0tNS9vfKB0fGccsopHp9HR0dLUrXXHldWcYB16qmnVvta586dtXz5ch08eLDaaZcnq2PHjh6fd+jQQfXq1eNaBCGgadOmGj58uNXLQA3oJ/oplNBHwYV+op+AYLBt2zYVFRUpOTnZ69f37t0rSerfv79Gjhwpp9Op2bNna8CAAe6zKf19I4Vdu3apV69e1bZXXH/ut99+U9euXf3ad02q9lJYWJji4+OPO8hH8GMIFWS8vTZ29erVuummm5ScnKxHHnlELVu2VIMGDbRgwQItWrSoVvut6dTK8vLyk1pvhZoO5o4ePRrwfRuZBWv9+eefWrBggcaMGaOWLVtavRxUQT+deN/0k33QR8GFfjrxvuknwHplZWWKjY3VM8884/XrFddeCwsL04wZM7R27VotXbpUy5cvV1paml555RW9++67atKkiWFrNLsrjpdXv359QzJhLIZQdUxt/+Wtsk8//VQOh0Nz5szxmHwb/W4Abdu2lXTsOgtVZWdnKyYmxv2veNHR0SosLKx2O29T7hP9DLZt2+bxL5rbt29XWVmZ+5oEFaenFhUVnXQW6pY//vhDTz31lAYNGsQffRagn+gn/B/6qG6hn+gnwA7i4+P13XffqU+fPrW6MHfv3r3Vu3dv3XfffVq0aJHuvvtuffTRR7riiit8fp62bdtWOTk51bZXdFXFmZ8VZ3xW7aaq72on1a6XKisvL9f27ds9zrg6Xg9Wfkk8vRQ8uCZUHVNx0OHtiVaT+vXrKywsTGVlZe5tubm5WrJkScDXV1mrVq3Uo0cPvffeex7r3bx5s1asWKEhQ4a4t3Xo0EFFRUX6+eef3dt2797tdY0RERHHvf/z58/3+Py1116TJHdeVFSUYmJilJGRcdzvk/z7eQOhin6in4C6in6inwA7uOCCC3T06FE999xz1b525MgR93OuoKCg2hmX3bt3lyT3S4sjIiIk1f55es4552jdunVas2aNe9vBgwf15ptvql27du7r6lUMfip3xdGjR/Xmm29W22dERES1wXZl77//voqLi92fL168WLt3767Wg5mZmR4vmV62bJl+//13j31V9NLx8lA3cCZUHZOYmCjp2Fvt/vWvf1V4eLiGDRt23OsCnHPOOZo1a5auu+46jRo1Svn5+Zo3b57i4+M9DlqM8K9//UvXX3+9xowZ435Lz9dee01RUVG688473bf761//qieeeEK33nqrxo0bp0OHDun1119Xx44dq138MzExUd99951mzZqlVq1aqX379jrjjDPcX9+5c6duuukmDR48WGvXrtUHH3ygUaNGuYtXki6//HLNnDlTDzzwgJKSkpSRkeF1su/PzxsIVfQT/QTUVfQT/QTYQf/+/fX3v/9dL7zwgjZu3KhBgwYpPDxc27Zt0+LFi/XQQw/p/PPP13vvvaf58+frvPPOU4cOHXTgwAG99dZbioyM1DnnnCPp2MuQu3Tpoo8//lidOnVSdHS0TjvttBqv63TLLbfoww8/1PXXX69//OMfatasmd577z3t3LlTM2bMcL/8+LTTTlPv3r311FNPqaCg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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\n" + ] + } + ], + "source": [ + "#| gui\n", + "code = '0ca9ddb6'\n", + "task = data_mgr.get_data_for_code(code)\n", + "print(task)\n", + "task_solution = data_mgr.get_solutions_for_code(code)\n", + "print(task_solution)\n", + "plot_task(task, task_solution, 15, code)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'test': [{'input': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 3, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 3, 0, 3, 3, 3, 3, 3, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 3, 0, 0, 0, 0, 3, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 0, 0, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 3, 3, 0, 3, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0], [0, 0, 3, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 3, 0, 3, 0, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}], 'train': [{'input': [[0, 0, 0, 0, 0, 0], [0, 0, 3, 0, 0, 0], [0, 3, 0, 3, 0, 0], [0, 0, 3, 0, 3, 0], [0, 0, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 0, 0, 0], [0, 0, 3, 0, 0, 0], [0, 3, 4, 3, 0, 0], [0, 0, 3, 4, 3, 0], [0, 0, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0]]}, {'input': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 3, 0, 3, 0, 0, 0, 0, 0], [0, 0, 0, 3, 0, 3, 0, 0, 0, 0], [0, 0, 3, 0, 0, 0, 3, 0, 0, 0], [0, 0, 0, 0, 0, 3, 0, 3, 0, 0], [0, 0, 0, 3, 0, 3, 3, 0, 0, 0], [0, 0, 3, 3, 3, 0, 0, 0, 0, 0], [0, 0, 0, 3, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 3, 0, 3, 0, 0, 0, 0, 0], [0, 0, 0, 3, 0, 3, 0, 0, 0, 0], [0, 0, 3, 0, 0, 0, 3, 0, 0, 0], [0, 0, 0, 0, 0, 3, 4, 3, 0, 0], [0, 0, 0, 3, 0, 3, 3, 0, 0, 0], [0, 0, 3, 3, 3, 0, 0, 0, 0, 0], [0, 0, 0, 3, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}, {'input': [[0, 0, 0, 0, 0, 3, 0, 0, 0, 0], [0, 0, 0, 0, 3, 0, 0, 0, 0, 0], [0, 3, 3, 0, 3, 3, 0, 3, 0, 0], [3, 0, 0, 3, 0, 0, 3, 0, 3, 0], [0, 0, 0, 3, 0, 0, 3, 3, 0, 0], [0, 0, 0, 3, 0, 0, 3, 0, 0, 0], [0, 0, 0, 3, 0, 0, 3, 0, 0, 0], [0, 0, 0, 0, 3, 3, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 0, 0, 3, 0, 0, 0, 0], [0, 0, 0, 0, 3, 0, 0, 0, 0, 0], [0, 3, 3, 0, 3, 3, 0, 3, 0, 0], [3, 0, 0, 3, 4, 4, 3, 4, 3, 0], [0, 0, 0, 3, 4, 4, 3, 3, 0, 0], [0, 0, 0, 3, 4, 4, 3, 0, 0, 0], [0, 0, 0, 3, 4, 4, 3, 0, 0, 0], [0, 0, 0, 0, 3, 3, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}, {'input': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 3, 3, 3, 3, 0, 0, 0, 0], [0, 0, 3, 0, 0, 3, 0, 0, 0, 0], [0, 0, 3, 0, 0, 3, 0, 3, 0, 0], [0, 0, 3, 3, 3, 3, 3, 3, 3, 0], [0, 0, 0, 3, 0, 0, 0, 0, 3, 0], [0, 0, 0, 3, 0, 0, 0, 3, 3, 0], [0, 0, 0, 3, 3, 0, 0, 3, 0, 3], [0, 0, 0, 3, 0, 3, 0, 0, 3, 0], [0, 0, 0, 0, 3, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 3, 3, 3, 3, 0, 0, 0, 0], [0, 0, 3, 4, 4, 3, 0, 0, 0, 0], [0, 0, 3, 4, 4, 3, 0, 3, 0, 0], [0, 0, 3, 3, 3, 3, 3, 3, 3, 0], [0, 0, 0, 3, 0, 0, 0, 0, 3, 0], [0, 0, 0, 3, 0, 0, 0, 3, 3, 0], [0, 0, 0, 3, 3, 0, 0, 3, 4, 3], [0, 0, 0, 3, 4, 3, 0, 0, 3, 0], [0, 0, 0, 0, 3, 0, 0, 0, 0, 0]]}, {'input': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 3, 3, 3, 3, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 3, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0], [0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0], [0, 0, 3, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 3, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 3, 0, 0, 3, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 3, 0, 0, 3, 0, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 0, 3, 0, 0, 3, 3, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 3, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 3, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], 'output': [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 3, 3, 3, 3, 4, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 3, 0, 0, 0, 0, 0, 0, 0, 3, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 4, 4, 4, 4, 3, 0, 0, 0, 0], [0, 0, 0, 0, 3, 0, 0, 0, 3, 4, 4, 4, 4, 4, 4, 3, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 4, 4, 4, 4, 3, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 4, 4, 4, 4, 3, 0, 0, 0, 0], [0, 0, 3, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 0, 3, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 3, 3, 4, 4, 3, 0, 0, 3, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 3, 3, 0, 0, 3, 0, 0, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 0, 3, 0, 0, 3, 3, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 3, 4, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 3, 3, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]}]}\n", + "[[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 3, 4, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 3, 0, 3, 3, 3, 3, 3, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 3, 4, 4, 4, 4, 3, 4, 4, 3, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 4, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 4, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 4, 4, 4, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 4, 3, 4, 4, 4, 3, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 3, 4, 4, 4, 3, 0, 0], [0, 0, 0, 0, 0, 0, 3, 3, 4, 3, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0], [0, 0, 3, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 3, 4, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 3, 0, 3, 0, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 4, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 3, 4, 4, 4, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]\n", + "#15, 00d62c1b\n" + ] + }, + { + "data": { + "image/png": "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H/zAyL4AAAAApBYW+QAAAAAH7F7U2u2oo46KucAn7bq6p7S0VKWlpdq5c+c+e3/88ceaOXOmFi1apDVr1qi5uVm9e/fWIYccolNOOUXf//73dcQRR0R93OWXX6533303Zk+/3y+/3x+xravv07e3/WzcuLHTq+VqampUU1MTevzmm29GXTl3xx13WJ7Hazo6OvTcc89Fbb/pppsirnQcN26cpk6dqo8//ji07fPPP9e7776rk08+ObTtueeei1o8HjduXGiBT5IOPPBAlZeX63e/+11E3TPPPNPpIt/SpUv12GOPadGiRdq8ebP2339/nXbaafrxj3+sb33rW3F/vlOnTo2a75577tGYMWNi1ufk5OiSSy6J+W/nnXee7r77bg0cODDq39LS0nTllVfqrbfeirpt6QcffLDXGYPBoP7+97/rzTff1IoVK7Rx40YFg0ENGDBABx54oEaOHKmSkpKYr/HJkyfvtbcd5s+fryeffFLLly/XN998o/3331+lpaWqrKzc69WnpaWlWrt2bcS2hoYG0+MCAAAAiBOLfAAAAIAD9nxfsfXr1+ubb77p9Oqj3Xr06NHpv7W2tuqOO+7Qc889F/XedJs3b9bmzZu1atUqPf744/rJT36iiRMnKj2dt+mO10cffaRp06bpP//5j3r06KEBAwaoqKhIQ4YMUa9evZI6x57vw9e3b18VFRVF1Z566qkRi3yS9MYbb0Qs8sV6X8iSkpKYvfbU2XtKPvLII7r33nsjFufWrl2rv/zlL3r++ef129/+NubH7SkQCOi1116L2Hb00Ud3usC3LxdddNE+a4qLi6MW+XbfMjaWf/3rX/rVr34VcZXjbuvXr9f69eu1bNkyPfroo44skN11112aPn16xLa1a9fqz3/+s2bPni2/368zzjgj6XMBAAAASByLfAAAAIADBgwYEHG7xW+++UYXXHCBLrnkEp166qkqLCzUfvvtF3e/YDCoK664QkuXLt1n7Y4dO/TQQw9pw4YNUVdmoXOPPvpozO3777+/xo8fr/Ly8qQsmq5cuTJqW2dXxhUUFERtW7VqVejv27dvj1oE7KxfrF4bN27Ul19+qYMPPji07fnnn4+44nJP27Zt00033aRBgwZ1WrNbfX29tm/fHrFt9OjReuutt/T0009r6dKl2rRpk/r06aOCggKdeeaZuvzyy5Wdnb3P3p2JdbVs+OcX7q9//atuvfXWqEV1t9jzSs49bd26Vddee61mzZqlwYMHJ3EyAAAAAHZgkQ8AAABwwCmnnKLnn38+Ytv69etDt8Xs0aOHjjrqKI0cOVKnnXaaSktL93q12G9/+9uoBb6MjAyNGjVKhxxyiNavX6958+Zpx44doX9/9tlndcopp2js2LGSdt3KcPDgwfrkk080f/78iF7Dhg3TsGHDorZ1xe79SLtuPfnEE0+oo6NDaWlpuuKKK0ILZatWrdLChQslSccff3zUbSGzsrK6tH+7/ec//9Fvf/tbvfXWW3r44YeNX9XX2NgYtS03Nzdmbazt4R//5Zdfqq2tLaom1u0sfT6fsrKyFAgEovrtXgRraWnRnXfeGfWxmZmZOuOMM5STk6NFixapoaFBq1evjjlzuPfffz9q24svvqhHHnkkYts333yjJUuWaMmSJZo2bZoeeOABjRw5cp/9Y9nzKj5JMW+z+f777+vXv/51zAW+E044QUcffbTa29vV0NCgZcuWRbz2kmX3At/IkSN19NFHa+3atZo3b17EFZZtbW269dZbNWvWrKTPBwAAACAxLPIBAAAADqioqNDLL78cc4FF2nU10QcffKAPPvhATz31lAYMGKDKykpdffXVUVeLrVu3Tn/5y18ith144IF6+umnI95779///rcuu+yyiEWa2tpaffe731V6erquvPJKSdLMmTOjFvlKS0u79P57sezej7Tr1pOPP/64JOnII4/U7bffHvq3m2++ObTId8UVV+jiiy+2Zf+mzJ07V3fffbd+85vfGN1PS0tL1LbevXvHrM3MzNzrx8fq1dnH7d6+5yJfeI+//e1v2rx5c8S/9+vXT88880zoSsCdO3fq5ptvjlrkjmXjxo1R29atW7fXj/nPf/6j8vJyPfvsszrmmGP2uY9wzz33nJYsWRKxrV+/fvre974XVfv73/8+auFu4MCBmjJlioYPHx6xff369XrooYcszWKXO+64Q1dccUXocV1dnX7yk59ELPQtW7ZMS5Ys0YgRI5wYEQAAAEAX8QYcAAAAgAOOOeYY3X///Z0upuxp48aNuueee3TddddF/HBekl5//fWoWxped911EQt8kjR48GBdcMEFEdsaGxsjbt+YbLsX8STppJNOivi3RYsWhf7e1auyEjV06FDdfPPNmjlzppYuXapVq1bpH//4h2644Qb16dMnqv7Pf/5zzCvt7LRt27aobZ29V2NGRvTvdYa/H2SsXp19XDz93nzzzah/Hz9+fMStPnv06KFf//rXcV3x2Nzc3Om/FRQUaNy4cTrjjDOi5tqyZYt+/etf77N/uDfffFP/8z//E7EtLS1N99xzj3JyciK2BwKBqIVwSaqpqYla4JOkgw46yPjibyyFhYURC3zSrtudnnfeeVG1sb52c+fOVUNDQ8QfAAAAAO7BlXwAAACAQ84991wVFRXpwQcf1EsvvRR1hVQsr732mmbOnKlLLrkktK2+vj6q7te//nXcixxLly5VYWFh3HPb6d133w39vbi4OPT3r776Sp9//rmkXVdH7blgmQz333+/DjjggKjtRx55pI488kiVlJTo4osvjriaa+fOnZozZ47Gjx9vbK5Y79XY2a0gY20Pv+qvs/d93L59e8xFuH31+/e//x3176eddlrUtr59+2ro0KERC7mxdLYQeNZZZ+mBBx5Qz549JUnz5s3TVVddFVGzePFiffLJJzryyCP3ug9Jevnll3XDDTdEXVl7yy236Nxzz42qf//996MW1g8++GCNHj16n/tKptNPPz3m9tLSUr388ssR22J97QAAAAC4G4t8AAAAgIMOPvhg3X333fr1r3+tpUuXatGiRXrvvfe0dOnSTm+l+Nxzz0Us8sW6paEV//nPfxL6+HgtW7ZML7zwQsS2BQsWhP7+xhtv6L333pO0673iduvZs6fuuuuu0OPS0tJOFy/sFGuBL9yQIUN0xhlnaM6cORHbY72PnJ2ys7OjtrW2tsasjbU9/ONj9dr9cbEW2PbVb9OmTVH/ftBBB8XcR2fbw3X2vovXXXddaIFP2rWQOHLkSC1evDii7r333tvnIt+MGTN0++23R10he+ONN+rHP/5xzI/ZsGFD1LbwqxXdIi8vL+b2WMc+1tcOAAAAgLuxyAcAAAC4gM/n08knn6yTTz5Z0q4rwubNm6f//d//1erVqyNqP/zwQ1v3HX67RZM+/vhjTZ8+vdN/7+w92tatWxfxcTk5OUlZ5IvHkUceGbXIZ3qxJD8/P2pbrEUnSWpqatrrxx988MHq1atX1BVsGzZsUN++fSO2bdu2LebVprHmscshhxwSc3usKzu/9a1vRS3yxfr8wz344IOaPHlyxLa0tDT9+te/jnjvSAAAAABwIxb5AAAAABfq0aOHRo8erf79+6usrCzi34LBYMTj3NzcqI8///zzdeCBB8a1rxNPPLHrg3ZzmzdvjtoW7/ssdlWsW6t++umnMWs/+eSTqG3HH3986O89e/bU0UcfrZUrV0bUNDQ0RF2ZFuv92AYMGKCDDz449Lh///766quvImrWr1+vgQMHRn3s+vXrY84cLtHbyHb2tejo6NDdd9+tadOmRWzv1auX7r33Xn3nO9/Za99Yrzk3vl/dunXrYm6Pdez79+9vehwAAAAANmORDwAAAHDAU089pfPOOy/m4ke4WIsJe15hNWTIEM2aNSti2+DBg3Xdddftc46dO3eqR48eEdv2fLy7rjt55513dMwxx+x14SMYDOpf//pX1PZBgwaZHE1HH320DjnkEK1duza0rbm5WcuXL9eQIUMiasNvh7rbGWecEfF49OjRUYt8CxYs0DnnnBOx7a233orqted70A0ePDhqkW/+/PlRi3XNzc1atmxZVL89DR48WLm5uVFX5K1evTrqc4210BnrKsMdO3aouro66srRrKws/fGPf9Spp566z7kKCwuVkZER8R6FX375pd58803XXGUqSXPnztXEiRNjbt/T4MGDkzESAAAAABulOz0AAAAA0B099dRTOv300/XLX/5S7777bsxFtO3bt+sPf/hD1PY9F0zOPPNMZWRE/v7egw8+qNdffz3mvtvb27V06VLdc889UVcJSlLv3r2jtsW6IsyqcePGqaGhIfTn3HPPjZh39/Z58+aFth9++OERH9PQ0KCf//znCc+yL3PmzNH/+3//T5MmTYp4f8DdNmzYoKqqqphXSu25iCZJM2fOVEFBQcSf2traLs2WlpYW8+s2adIkbd++PWKfH3/8cUTNYYcdppNOOiliW1lZmdLTI/9rOHPmTH300Uehx1999VXUVW+SIt4bUlLMBa6pU6dG3HJ2586duuuuu6JuERpLz549deGFF0Ztf/DBByM+13nz5kXdqjMzMzPqc922bZuuvfbaqAW+3NxcPf3003Et8Em7FgRPO+20qO0333yz6uvro7Y3NTXpN7/5TVy97bRixQo99dRTEdvmzZunV199Nao21teutLQ06nkLAAAAwD24kg8AAABwyLZt2/Tss8/q2WefVZ8+fVRYWKi8vDxlZWVp48aNevfdd2O+p9h3v/vdiMcHH3ywLr30Uj399NOhbcFgUBUVFTryyCN17LHHqn///tqyZYvWrl2rDz74IHSbyVjveXb44YdHbXvttdf0ox/9SEcccUToSr8bbrgh5oJgPDo6OvTuu+9K2rVotfu9CKXIq89OOeUUS32feOIJNTY2hh7Heg+5xsZG3XXXXRHbxowZo6FDh0Zsa25u1h//+Ec99NBDOuqoozR48GD17t1ba9as0dKlS2P2HjlypOWZu+LHP/6xnnnmmYir5ubPn69vf/vbKi4u1rp16yIWS3e79dZblZaWFrEtPz9fP/jBD/Tkk0+GtrW2tup73/uezjrrLPXs2VNvvPFG1HsNnnPOOVG3er3ooov0+9//Xs3NzaFtmzZt0pgxY3TGGWcoJydHixYtsrRoXFlZqb/97W/auHFjaNs///lPXXDBBTrhhBPU1NQU88q0q666Kur5ecstt8Rc/B46dKj+9re/6W9/+1unc9x2220Rj6+//nrNnTs3YoF+w4YNGjdunE444QQdffTR6ujo0OrVq7V06VK1tbXp9ttvj+r7hz/8Qd98803ocaxbaS5fvjzqOXvFFVfEfK3u6fbbb9dLL72ko48+WmvXrtXcuXPV3t4eUVNUVKQRI0bssxcAAAAAd2GRDwAAAHCBLVu2hBa99uakk06KWuSTpF/96ld6//33o64i+uSTTyxfhXfUUUdF3Q6yo6ND8+fP1/z580Pbrrvuui4v8v373/8OLWwMHjxY/fr1C/3b22+/Hfr7qFGjLPV99dVX93kc169fr+nTp0dsGzx4cNQi324dHR366KOPIq5si+Wggw7SpEmTLM3bVdnZ2Zo0aZLGjx+vbdu2hbZ/+umnnb4/3xVXXKGzzjor5r/deOONqq+v14oVK0Lbtm7dqhdeeCFmfX5+vu68886Yc91222266aabIrZv3bpVf//730OP09LSdOCBB8b1vnwDBgzQ//3f/+mnP/1pxNV7u6/sjOWEE07QhAkTorbveSvR3d544419zrHnIl9hYaHuuOOOqO0dHR1asmSJlixZss+ekvTss89GvNZiifU6Pvvss/e5yHfwwQfryy+/1KJFi7Ro0aKYNb169dLdd98d16wAAAAA3IXbdQIAAAAOOP7446Nusbkv3/72t/Xwww9H3VpRkvbbbz89+eSTuuSSS2L+eyw9e/aMedVZenq6brnllrj7dEX4Ql74VXzSrvfD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fpKks88+W9/97nd1//3367777ovnUw+58MILddttt2nQoEGdXl49aNAgPfzww6HPMysrS0899ZR+8pOf7DVg9xTP8YY7BYNBffzxxxG/KQfzyCgyCp0jl9yBnCKnEIlschcyiowCueR25BQ5BaSKxYsX65lnntHvf/97jRkzJrT95JNP1tVXX61XXnlFY8aM0XvvvafNmzdr+vTpGjJkSKjuhhtukLRrMe28887TbbfdpmOPPTau24FOmTJFGzZs0F//+leNHDlSknTppZfqggsu0D333KOzzz7b0nvTlpSUaPr06dq8eXOn+9+8ebP+8Y9/KCsrS5J0/PHHa8KECfrLX/6iq666Ku59DRw4UKeffrruv/9+DR8+nNufegC36/Sg4uLimL/tFn4itXnzZrW0tOjEE0/U+++/H1ffyy67LHQiJUkjR47Uzp07tXbt2k4/5uuvv9aqVav0ve99L3QiJe06STn11FNDt2yw2w9/+MOIx1deeaUkqa6uzsj+AMSPjCKjALcjp8gpwM3IKDIKcDtyipwCvODll19Wdna2Tj31VG3cuDH0p7CwUH369NHbb78tScrJyZEk/etf/9L27dtt2XddXZ2GDh0aWuCTpD59+uiyyy7TmjVr9PHHH9uyn3AXXXRRaIFPks4//3wdcMAB5FI3wJV8HjRo0KCY29944w09+OCDWrVqldra2kLbw0+Q9ubggw+OeNy3b19JirpHcbjdJ1rf+ta3ov7tyCOP1Lx587R169aoy4cTdfjhh0c8Puyww5Sens49ywEXIKPIKMDtyClyCnAzMoqMAtyOnCKnAC/47LPP1NLSouLi4pj/vnHjRknSSSedpPPOO09+v1+PPfaYTj755NDVwD6fr0v7Xrt2rYYOHRq1fff7f3755Zc65phjutS7M3vmUlpamvLz8/f6ixJIDSzyeVCse+guWrRIFRUVKi4u1p133qn9999fPXv21MyZM/XCCy/E1bezS4Q7OjoSmne3zk7qdu7caXtvk/sCsHdk1L57k1GAs8ipffcmpwDnkFH77k1GAc4ip/bdm5wCnNfe3q7c3Fz9/ve/j/nvu9/7Mi0tTQ8++KCWLl2q119/XfPmzVN1dbWmTp2q5557Tn369DE2Y7KzYm/769Gjh5F9wjwW+Vwo3t9wCvfqq6/K5/Np2rRpEb9hMHPmTDtHi3LIIYdI2nU/9j01NDRowIABod+W6tu3r5qbm6PqYv02wb6OwWeffRbxm2ONjY1qb28P3bt892XWLS0tCe8L7nTYYYfp4Ycfjnrza5hHRpFRiI1ccg9yipzCf5FN7kNGkVHdHbnkfuQUOQWkgvz8fC1YsEAjRoyI+csJexo+fLiGDx+uG2+8US+88IJ+8Ytf6KWXXtKll15q+XV6yCGHaPXq1VHbd2fV7iuXd1+xvGc2ffnll1EfG08uhevo6FBjY2PEFYN7y8Hw78vkkrfwnnwutPvkI9YLrjM9evRQWlqa2tvbQ9vWrFmjOXPm2D5fuAMOOEDHHXecZs2aFTHvhx9+qPnz5+v0008PbTvssMPU0tKiDz74ILTt66+/jjljZmbmXj//p556KuLxE088IUmh/WVnZ2vAgAFauHDhXj9O6trxhvNycnJ01llnhU6ckTxkFBmF2Mgl9yCnyCn8F9nkPmQUGdXdkUvuR06RU0Aq+Pa3v62dO3fqgQceiPq3HTt2hF5zmzdvjrpiePDgwZIUuvVwZmampPhfp6NHj9ayZcv03nvvhbZt3bpVf/nLX3TooYeG3td098JaeFbs3LlTf/nLX6J6ZmZmRv3iQLi//e1vCgQCocevvPKKvv7666gcrK+vj7il8htvvKF169ZF9NqdS3vbH9yDK/lcqLCwUJI0adIkfec731FGRobOPPPMvd4/fPTo0Xr00Ud19dVXa8yYMWpqatKTTz6p/Pz8iJMXE375y1+qvLxc48aN08UXX6xt27bpiSeeUHZ2tn7+85+H6r7zne/o//7v//TTn/5UV155pbZt26ann35ahx9+eNSbMBcWFmrBggV69NFHdcABB2jQoEEaNmxY6N+/+OILVVRUqLS0VEuXLtXzzz+vMWPGhAJYki655BJNmTJFt9xyi4qKirRw4cKYv0HRleMN5/3nP//RzJkzNW7cOO2///5Oj9OtkFFkFGIjl9yDnCKn8F9kk/uQUWRUd0cuuR85RU4BqeCkk07S97//fT300ENatWqVTjvtNGVkZOizzz7TK6+8ottuu03nn3++Zs2apaeeekrnnHOODjvsMG3ZskV//etflZWVpdGjR0vadZvio446Sn//+991xBFHqG/fvjr66KM7fV+9yspKvfjiiyovL9ePfvQj9evXT7NmzdIXX3yhBx98MHR74qOPPlrDhw/Xfffdp82bN6tv37566aWXtGPHjqiehYWF+vvf/667775bRUVF6tOnj84888zQv/ft21eXXnqpxo0bpw0bNmjatGnKz8/XZZddFqq55JJL9Morr+jqq6/WBRdcoMbGRs2ePTvq6vrDDjtMOTk5mjFjhvr06aPMzEwNGzas0/dkhbO4ks+FhgwZol/84hf64IMPdPPNN+v6668PvRFoZ0aNGqXf/e53+s9//qO77rpLL774om6++Wadc845xuc99dRT9dhjj6lfv366//77NXXqVA0fPlzPPPNMxAu/f//+euihh7Tffvvp//7v/zRr1izddNNNEWG026233qrCwkJNnjxZ119/vZ5++umIf/f7/erVq5fuvfde/etf/9IVV1yh3/3udxE1EyZMCAVXTU2Ndu7cqcceeyxqX1053nDeV199pfvuu09fffWV06N0O2QUGYXYyCX3IKfIKfwX2eQ+ZBQZ1d2RS+5HTpFTQKr43//9X919991qamrSfffdp/vuu09vv/22xo4dqxEjRkiSiouLVVRUpJdeekl33nmnHnnkER1++OF66qmnIjLknnvu0YEHHqi7775b119/vV599dVO9ztw4EA9++yzKikp0RNPPKF7771XPXv21J/+9Cede+65EbWTJ0/WCSecoClTpuihhx7SySefrJtvvjmq5w9/+EONGTNGM2fO1C9+8Qv95je/ifj3n/70pzrjjDP00EMPafr06Ro1apSeeuqp0FWIklRaWqpf/epX+uyzz3TXXXdp6dKl+tOf/qS8vLyIXj179tS9996rHj166LbbbtP111+vd999N/4Dj6RKkxRxLWpDQ4NDowD7VltbK7/fr0WLFoXeHBXd08qVKzV27FjNnj079FtvgNPIqO6NXIIXkFPdD9kELyGjugdyCV5GTqWWpqYmFRcXR2xbuHChcnNzHZoIsO6dd97RD37wAz3wwAM6//zznR4HSVJQUBD6O1fyAQAAAAAAAAAAAB7DIh8AAAAAAAAAAADgMSzyAfCknJwcnX/++crJyXF6FACQRC4BcCeyCYDbkEsAAAD24T35AAAAAAAAAADdCu/JB8CreE8+AJ7X1tamdevWqa2tzelRAEASuQTAncgmAG5DLgEAANiHRT4AnvTRRx+ppKREH330kdOjAIAkcgmAO5FNANyGXAIAALBPhukdBIPBiN/Oam9v1zff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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\n" + ] + } + ], + "source": [ + "#| gui\n", + "code = '00d62c1b'\n", + "task = data_mgr.get_data_for_code(code)\n", + "print(task)\n", + "task_solution = data_mgr.get_solutions_for_code(code)\n", + "print(task_solution)\n", + "plot_task(task, task_solution, 15, code)" + ] }, { "cell_type": "code", diff --git a/nbs/18_applications.ipynb b/nbs/18_applications.ipynb index 20a8c249..174dd7a2 100644 --- a/nbs/18_applications.ipynb +++ b/nbs/18_applications.ipynb @@ -79,18 +79,21 @@ "\n", "power_control result = 1172.9\n", "\n", + "\n", "controller trained on steady dataset applied to variable dataset\n", "\n", "run_wind_turbine('variable', \"testfiles\\\\\", \"ga--1362.401-s003-4x3-m005-WT0538-bddf277b0f729cc630efacf91b9f494f.properties\")\n", "\n", "power_control result = 739.6\n", "\n", + "\n", "controller trained on variable dataset applied to variable dataset\n", "\n", "run_wind_turbine('variable', \"testfiles\\\\\", \"ga--2629.009-s001-5x5-m002-WT0416-31ecb19201d49e8c6f9dd1e172bd6944.properties\")\n", "\n", "power_control result = 741.7\n", "\n", + "\n", "controller trained on variable dataset applied to steady dataset\n", "\n", "run_wind_turbine('steady', \"testfiles\\\\\", \"ga--2629.009-s001-5x5-m002-WT0416-31ecb19201d49e8c6f9dd1e172bd6944.properties\")\n", @@ -107,7 +110,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "2024-10-12 12:05:40.863096 25060 Start\n", + "2024-10-12 16:23:04.245655 26796 Start\n", "Score=-1172.912 power=1172.912\n", "{'start': 1100, 'end': 2100, 'average yaw error_baseline_logs': 6.907099999999999, 'angle covered_trad_baseline_logs': 27.30000000000004, 'yaw count_trad_baseline_logs': 5, 'time_yawing_trad_baseline_logs': 0.43004300430043}\n", "{'start': 1100, 'end': 2100, 'average yaw error_baseline_simu': 6.5231, 'angle covered_trad_baseline_simu': 53.46000000000012, 'yaw count_trad_baseline_simu': 15, 'time_yawing_trad_baseline_simu': 2.0502050205020503}\n", @@ -116,9 +119,9 @@ "average_yaw_error_decrease_simu=5.85\n", "energy_gain = 0.38\n", "net_energy_gain = 0.35\n", - "2024-10-12 12:05:52.778136 25060 End\n", - "Elapsed time: 11.92\n", - "2024-10-12 12:05:52.778136 25060 Start\n", + "2024-10-12 16:23:16.296789 26796 End\n", + "Elapsed time: 12.05\n", + "2024-10-12 16:23:16.296789 26796 Start\n", "Score=-739.604 power=739.604\n", "{'start': 1100, 'end': 2100, 'average yaw error_baseline_logs': 7.5581999999999985, 'angle covered_trad_baseline_logs': 97.31000000000012, 'yaw count_trad_baseline_logs': 14, 'time_yawing_trad_baseline_logs': 1.5801580158015802}\n", "{'start': 1100, 'end': 2100, 'average yaw error_baseline_simu': 7.0147549, 'angle covered_trad_baseline_simu': 112.13400000000004, 'yaw count_trad_baseline_simu': 27, 'time_yawing_trad_baseline_simu': 4.160416041604161}\n", @@ -127,9 +130,9 @@ "average_yaw_error_decrease_simu=13.89\n", "energy_gain = 0.49\n", "net_energy_gain = 0.42\n", - "2024-10-12 12:06:04.737131 25060 End\n", - "Elapsed time: 11.96\n", - "2024-10-12 12:06:04.737131 25060 Start\n", + "2024-10-12 16:23:28.205166 26796 End\n", + "Elapsed time: 11.91\n", + "2024-10-12 16:23:28.205166 26796 Start\n", "Score=-741.680 power=741.680\n", "{'start': 1100, 'end': 2100, 'average yaw error_baseline_logs': 7.5581999999999985, 'angle covered_trad_baseline_logs': 97.31000000000012, 'yaw count_trad_baseline_logs': 14, 'time_yawing_trad_baseline_logs': 1.5801580158015802}\n", "{'start': 1100, 'end': 2100, 'average yaw error_baseline_simu': 7.0147549, 'angle covered_trad_baseline_simu': 112.13400000000004, 'yaw count_trad_baseline_simu': 27, 'time_yawing_trad_baseline_simu': 4.160416041604161}\n", @@ -138,9 +141,9 @@ "average_yaw_error_decrease_simu=20.73\n", "energy_gain = 0.77\n", "net_energy_gain = 0.57\n", - "2024-10-12 12:06:16.844109 25060 End\n", - "Elapsed time: 12.11\n", - "2024-10-12 12:06:16.844109 25060 Start\n", + "2024-10-12 16:23:40.128764 26796 End\n", + "Elapsed time: 11.92\n", + "2024-10-12 16:23:40.128764 26796 Start\n", "Score=-1171.489 power=1171.489\n", "{'start': 1100, 'end': 2100, 'average yaw error_baseline_logs': 6.907099999999999, 'angle covered_trad_baseline_logs': 27.30000000000004, 'yaw count_trad_baseline_logs': 5, 'time_yawing_trad_baseline_logs': 0.43004300430043}\n", "{'start': 1100, 'end': 2100, 'average yaw error_baseline_simu': 6.5231, 'angle covered_trad_baseline_simu': 53.46000000000012, 'yaw count_trad_baseline_simu': 15, 'time_yawing_trad_baseline_simu': 2.0502050205020503}\n", @@ -149,21 +152,17 @@ "average_yaw_error_decrease_simu=3.89\n", "energy_gain = 0.26\n", "net_energy_gain = 0.07\n", - "2024-10-12 12:06:28.924149 25060 End\n", - "Elapsed time: 12.08\n" + "2024-10-12 16:23:52.161731 26796 End\n", + "Elapsed time: 12.03\n" ] } ], "source": [ "#| gui\n", "\n", - "# controller trained on steady dataset applied to steady dataset\n", "# run_wind_turbine('steady', \"testfiles\\\\\", \"ga--1362.401-s003-4x3-m005-WT0538-bddf277b0f729cc630efacf91b9f494f.properties\")\n", - "# controller trained on steady dataset applied to variable dataset\n", "# run_wind_turbine('variable', \"testfiles\\\\\", \"ga--1362.401-s003-4x3-m005-WT0538-bddf277b0f729cc630efacf91b9f494f.properties\")\n", - "# controller trained on variable dataset applied to variable dataset\n", "# run_wind_turbine('variable', \"testfiles\\\\\", \"ga--2629.009-s001-5x5-m002-WT0416-31ecb19201d49e8c6f9dd1e172bd6944.properties\")\n", - "# controller trained on variable dataset applied to steady dataset\n", "# run_wind_turbine('steady', \"testfiles\\\\\", \"ga--2629.009-s001-5x5-m002-WT0416-31ecb19201d49e8c6f9dd1e172bd6944.properties\")\n", "\n", "\n"