{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"import os, sys, copy, argparse, json, pickle\n",
"import sumolib, traci\n",
"from tqdm import tqdm\n",
"from datetime import datetime\n",
"path_root = os.path.dirname(os.path.dirname(os.path.abspath('.')))\n",
"path_scr = os.path.join(path_root, 'scripts')\n",
"sys.path.append(path_scr)\n",
"from preprocess_daily import DailyPreprocessor\n",
"# from generate_signals import SignalGenerator"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"self = DailyPreprocessor(config_name = 'test_0731')"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1. 데이터를 로드합니다.\n",
"1-1. 네트워크가 로드되었습니다.\n",
"1-2. 테이블들이 로드되었습니다.\n",
"1-5. 테이블을 표준화했습니다.\n",
"1-6. 주요 객체 (리스트, 딕셔너리)들을 저장했습니다.\n"
]
}
],
"source": [
"# 1. 데이터 불러오기\n",
"self.load_data()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2-1. 매칭 테이블들을 생성했습니다.\n"
]
}
],
"source": [
"self.get_matches()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2-2. 초기화 신호가 지정되었습니다. (우회전 : g)\n"
]
}
],
"source": [
"self.initialize_state()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2-3. 유턴 인덱스 / 비보호좌회전 인덱스를 지정했습니다.\n"
]
}
],
"source": [
"self.assign_indices()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2-4. 직진 및 좌회전(G)을 배정했습니다.\n"
]
}
],
"source": [
"self.assign_signals()"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 66 | \n",
" 456 | \n",
" 106231 | \n",
" 1 | \n",
" A | \n",
" 5 | \n",
" 513136 | \n",
" 513139 | \n",
" grgrrrrG | \n",
" left | \n",
"
\n",
" \n",
" 67 | \n",
" 456 | \n",
" 106231 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" 513136 | \n",
" 513137 | \n",
" grgrrGGr | \n",
" straight | \n",
"
\n",
" \n",
" 68 | \n",
" 456 | \n",
" 106231 | \n",
" 2 | \n",
" A | \n",
" 6 | \n",
" 513138 | \n",
" 513135 | \n",
" grgGGrrr | \n",
" straight | \n",
"
\n",
" \n",
" 69 | \n",
" 456 | \n",
" 106231 | \n",
" 2 | \n",
" B | \n",
" 2 | \n",
" 513136 | \n",
" 513137 | \n",
" grgrrGGr | \n",
" straight | \n",
"
\n",
" \n",
" 70 | \n",
" 456 | \n",
" 106231 | \n",
" 3 | \n",
" A | \n",
" 7 | \n",
" 513140 | \n",
" 513137 | \n",
" gGgrrrrr | \n",
" left | \n",
"
\n",
" \n",
" 71 | \n",
" 456 | \n",
" 106231 | \n",
" 3 | \n",
" B | \n",
" 7 | \n",
" 513140 | \n",
" 513137 | \n",
" gGgrrrrr | \n",
" left | \n",
"
\n",
" \n",
" 72 | \n",
" 456 | \n",
" 106231 | \n",
" 4 | \n",
" A | \n",
" 17 | \n",
" NaN | \n",
" NaN | \n",
" grgrrrrr | \n",
" NaN | \n",
"
\n",
" \n",
" 73 | \n",
" 456 | \n",
" 106231 | \n",
" 4 | \n",
" B | \n",
" 17 | \n",
" NaN | \n",
" NaN | \n",
" grgrrrrr | \n",
" NaN | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"66 456 106231 1 A 5 513136 513139 \n",
"67 456 106231 1 B 2 513136 513137 \n",
"68 456 106231 2 A 6 513138 513135 \n",
"69 456 106231 2 B 2 513136 513137 \n",
"70 456 106231 3 A 7 513140 513137 \n",
"71 456 106231 3 B 7 513140 513137 \n",
"72 456 106231 4 A 17 NaN NaN \n",
"73 456 106231 4 B 17 NaN NaN \n",
"\n",
" state turn_type \n",
"66 grgrrrrG left \n",
"67 grgrrGGr straight \n",
"68 grgGGrrr straight \n",
"69 grgrrGGr straight \n",
"70 gGgrrrrr left \n",
"71 gGgrrrrr left \n",
"72 grgrrrrr NaN \n",
"73 grgrrrrr NaN "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 82 | \n",
" 457 | \n",
" 106234 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" 513152 | \n",
" 513155 | \n",
" gGGGrgrrrrgrrrrgrrr | \n",
" straight | \n",
"
\n",
" \n",
" 83 | \n",
" 457 | \n",
" 106234 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" 513156 | \n",
" 513151 | \n",
" grrrrgrrrrgGGGrgrrr | \n",
" straight | \n",
"
\n",
" \n",
" 84 | \n",
" 457 | \n",
" 106234 | \n",
" 2 | \n",
" A | \n",
" 5 | \n",
" 513156 | \n",
" 513157 | \n",
" grrrrgrrrrgrrrGgrrr | \n",
" left | \n",
"
\n",
" \n",
" 85 | \n",
" 457 | \n",
" 106234 | \n",
" 2 | \n",
" B | \n",
" 1 | \n",
" 513152 | \n",
" 513153 | \n",
" grrrGgrrrrgrrrrgrrr | \n",
" left | \n",
"
\n",
" \n",
" 86 | \n",
" 457 | \n",
" 106234 | \n",
" 3 | \n",
" A | \n",
" 17 | \n",
" NaN | \n",
" NaN | \n",
" grrrrgrrrrgrrrrgrrr | \n",
" NaN | \n",
"
\n",
" \n",
" 87 | \n",
" 457 | \n",
" 106234 | \n",
" 3 | \n",
" B | \n",
" 17 | \n",
" NaN | \n",
" NaN | \n",
" grrrrgrrrrgrrrrgrrr | \n",
" NaN | \n",
"
\n",
" \n",
" 88 | \n",
" 457 | \n",
" 106234 | \n",
" 4 | \n",
" A | \n",
" 8 | \n",
" 513154 | \n",
" 513157 | \n",
" grrrrgGGrrgrrrrgrrr | \n",
" straight | \n",
"
\n",
" \n",
" 89 | \n",
" 457 | \n",
" 106234 | \n",
" 4 | \n",
" B | \n",
" 3 | \n",
" 513154 | \n",
" 513155 | \n",
" grrrrgrrGGgrrrrgrrr | \n",
" left | \n",
"
\n",
" \n",
" 90 | \n",
" 457 | \n",
" 106234 | \n",
" 5 | \n",
" A | \n",
" 7 | \n",
" 513158 | \n",
" 513151 | \n",
" grrrrgrrrrgrrrrgrrG | \n",
" left | \n",
"
\n",
" \n",
" 91 | \n",
" 457 | \n",
" 106234 | \n",
" 5 | \n",
" B | \n",
" 4 | \n",
" 513158 | \n",
" 513153 | \n",
" grrrrgrrrrgrrrrgGGr | \n",
" straight | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"82 457 106234 1 A 6 513152 513155 \n",
"83 457 106234 1 B 2 513156 513151 \n",
"84 457 106234 2 A 5 513156 513157 \n",
"85 457 106234 2 B 1 513152 513153 \n",
"86 457 106234 3 A 17 NaN NaN \n",
"87 457 106234 3 B 17 NaN NaN \n",
"88 457 106234 4 A 8 513154 513157 \n",
"89 457 106234 4 B 3 513154 513155 \n",
"90 457 106234 5 A 7 513158 513151 \n",
"91 457 106234 5 B 4 513158 513153 \n",
"\n",
" state turn_type \n",
"82 gGGGrgrrrrgrrrrgrrr straight \n",
"83 grrrrgrrrrgGGGrgrrr straight \n",
"84 grrrrgrrrrgrrrGgrrr left \n",
"85 grrrGgrrrrgrrrrgrrr left \n",
"86 grrrrgrrrrgrrrrgrrr NaN \n",
"87 grrrrgrrrrgrrrrgrrr NaN \n",
"88 grrrrgGGrrgrrrrgrrr straight \n",
"89 grrrrgrrGGgrrrrgrrr left \n",
"90 grrrrgrrrrgrrrrgrrG left \n",
"91 grrrrgrrrrgrrrrgGGr straight "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"106238\n",
"all_red_indices : {4, 6, 7, 12, 14, 15}\n",
"all_red_state : ggggrgrrggggrgrr\n"
]
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 112 | \n",
" 458 | \n",
" 106238 | \n",
" 1 | \n",
" A | \n",
" 8 | \n",
" 513193 | \n",
" 513188 | \n",
" gGGGrgrrgrrrrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 113 | \n",
" 458 | \n",
" 106238 | \n",
" 1 | \n",
" B | \n",
" 4 | \n",
" 513189 | \n",
" 513192 | \n",
" grrrrgrrgGGGrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 114 | \n",
" 458 | \n",
" 106238 | \n",
" 2 | \n",
" A | \n",
" 17 | \n",
" NaN | \n",
" NaN | \n",
" grrrrgrrgrrrrgrr | \n",
" NaN | \n",
"
\n",
" \n",
" 115 | \n",
" 458 | \n",
" 106238 | \n",
" 2 | \n",
" B | \n",
" 17 | \n",
" NaN | \n",
" NaN | \n",
" grrrrgrrgrrrrgrr | \n",
" NaN | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"112 458 106238 1 A 8 513193 513188 \n",
"113 458 106238 1 B 4 513189 513192 \n",
"114 458 106238 2 A 17 NaN NaN \n",
"115 458 106238 2 B 17 NaN NaN \n",
"\n",
" state turn_type \n",
"112 gGGGrgrrgrrrrgrr straight \n",
"113 grrrrgrrgGGGrgrr straight \n",
"114 grrrrgrrgrrrrgrr NaN \n",
"115 grrrrgrrgrrrrgrr NaN "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"106332\n",
"all_red_indices : {11, 4, 12, 14}\n",
"all_red_state : ggggrggggggrrgrgggggggggggg\n"
]
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 40 | \n",
" 442 | \n",
" 106332 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" 519824 | \n",
" 513731 | \n",
" gGGGrrrrrrgrrgrrrrrrrrgrrrr | \n",
" straight | \n",
"
\n",
" \n",
" 41 | \n",
" 442 | \n",
" 106332 | \n",
" 1 | \n",
" B | \n",
" 1 | \n",
" 519824 | \n",
" 513726 | \n",
" grrrrGGrrrgrrgrrrrrrrrgrrrr | \n",
" left | \n",
"
\n",
" \n",
" 42 | \n",
" 442 | \n",
" 106332 | \n",
" 2 | \n",
" A | \n",
" 6 | \n",
" 519824 | \n",
" 513731 | \n",
" gGGGrrrrrrgrrgrrrrrrrrgrrrr | \n",
" straight | \n",
"
\n",
" \n",
" 43 | \n",
" 442 | \n",
" 106332 | \n",
" 2 | \n",
" B | \n",
" 2 | \n",
" 513732 | \n",
" 513728 | \n",
" grrrrrrrrrgrrgrGGGGGrrgrrrr | \n",
" straight | \n",
"
\n",
" \n",
" 44 | \n",
" 442 | \n",
" 106332 | \n",
" 3 | \n",
" A | \n",
" 5 | \n",
" 513732 | \n",
" 513729 | \n",
" grrrrrrrrrgrrgrrrrrrGGgrrrr | \n",
" left | \n",
"
\n",
" \n",
" 45 | \n",
" 442 | \n",
" 106332 | \n",
" 3 | \n",
" B | \n",
" 2 | \n",
" 513732 | \n",
" 513728 | \n",
" grrrrrrrrrgrrgrGGGGGrrgrrrr | \n",
" straight | \n",
"
\n",
" \n",
" 46 | \n",
" 442 | \n",
" 106332 | \n",
" 4 | \n",
" A | \n",
" 7 | \n",
" 513730 | \n",
" 513728 | \n",
" grrrrrrrrrgrrgrrrrrrrrgrrrG | \n",
" left | \n",
"
\n",
" \n",
" 47 | \n",
" 442 | \n",
" 106332 | \n",
" 4 | \n",
" B | \n",
" 4 | \n",
" 513730 | \n",
" 513726 | \n",
" grrrrrrrrrgrrgrrrrrrrrgGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 48 | \n",
" 442 | \n",
" 106332 | \n",
" 5 | \n",
" A | \n",
" 8 | \n",
" 513727 | \n",
" 513729 | \n",
" grrrrrrGGrgrrgrrrrrrrrgrrrr | \n",
" straight | \n",
"
\n",
" \n",
" 49 | \n",
" 442 | \n",
" 106332 | \n",
" 5 | \n",
" B | \n",
" 3 | \n",
" 513727 | \n",
" 513731 | \n",
" grrrrrrrrGgrrgrrrrrrrrgrrrr | \n",
" left | \n",
"
\n",
" \n",
" 50 | \n",
" 442 | \n",
" 106332 | \n",
" 6 | \n",
" A | \n",
" 8 | \n",
" 513727 | \n",
" 513729 | \n",
" grrrrrrGGrgrrgrrrrrrrrgrrrr | \n",
" straight | \n",
"
\n",
" \n",
" 51 | \n",
" 442 | \n",
" 106332 | \n",
" 6 | \n",
" B | \n",
" 3 | \n",
" 513727 | \n",
" 513731 | \n",
" grrrrrrrrGgrrgrrrrrrrrgrrrr | \n",
" left | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"40 442 106332 1 A 6 519824 513731 \n",
"41 442 106332 1 B 1 519824 513726 \n",
"42 442 106332 2 A 6 519824 513731 \n",
"43 442 106332 2 B 2 513732 513728 \n",
"44 442 106332 3 A 5 513732 513729 \n",
"45 442 106332 3 B 2 513732 513728 \n",
"46 442 106332 4 A 7 513730 513728 \n",
"47 442 106332 4 B 4 513730 513726 \n",
"48 442 106332 5 A 8 513727 513729 \n",
"49 442 106332 5 B 3 513727 513731 \n",
"50 442 106332 6 A 8 513727 513729 \n",
"51 442 106332 6 B 3 513727 513731 \n",
"\n",
" state turn_type \n",
"40 gGGGrrrrrrgrrgrrrrrrrrgrrrr straight \n",
"41 grrrrGGrrrgrrgrrrrrrrrgrrrr left \n",
"42 gGGGrrrrrrgrrgrrrrrrrrgrrrr straight \n",
"43 grrrrrrrrrgrrgrGGGGGrrgrrrr straight \n",
"44 grrrrrrrrrgrrgrrrrrrGGgrrrr left \n",
"45 grrrrrrrrrgrrgrGGGGGrrgrrrr straight \n",
"46 grrrrrrrrrgrrgrrrrrrrrgrrrG left \n",
"47 grrrrrrrrrgrrgrrrrrrrrgGGGr straight \n",
"48 grrrrrrGGrgrrgrrrrrrrrgrrrr straight \n",
"49 grrrrrrrrGgrrgrrrrrrrrgrrrr left \n",
"50 grrrrrrGGrgrrgrrrrrrrrgrrrr straight \n",
"51 grrrrrrrrGgrrgrrrrrrrrgrrrr left "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 32 | \n",
" 438 | \n",
" 106350 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" 513817 | \n",
" 513811 | \n",
" grrGGGGrrrrr | \n",
" straight | \n",
"
\n",
" \n",
" 33 | \n",
" 438 | \n",
" 106350 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" 513810 | \n",
" 513816 | \n",
" grrrrrrGGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 34 | \n",
" 438 | \n",
" 106350 | \n",
" 2 | \n",
" A | \n",
" 5 | \n",
" 513810 | \n",
" 513793 | \n",
" grrrrrrrrrrG | \n",
" left | \n",
"
\n",
" \n",
" 35 | \n",
" 438 | \n",
" 106350 | \n",
" 2 | \n",
" B | \n",
" 1 | \n",
" 513817 | \n",
" 513816 | \n",
" grrrrrrrrrrr | \n",
" NaN | \n",
"
\n",
" \n",
" 36 | \n",
" 438 | \n",
" 106350 | \n",
" 3 | \n",
" A | \n",
" 8 | \n",
" 513817 | \n",
" 513793 | \n",
" grGrrrrrrrrr | \n",
" NaN | \n",
"
\n",
" \n",
" 37 | \n",
" 438 | \n",
" 106350 | \n",
" 3 | \n",
" B | \n",
" 3 | \n",
" 513817 | \n",
" 513811 | \n",
" grrGGGGrrrrr | \n",
" straight | \n",
"
\n",
" \n",
" 38 | \n",
" 438 | \n",
" 106350 | \n",
" 4 | \n",
" A | \n",
" 7 | \n",
" 513792 | \n",
" 513816 | \n",
" gGrrrrrrrrrr | \n",
" left | \n",
"
\n",
" \n",
" 39 | \n",
" 438 | \n",
" 106350 | \n",
" 4 | \n",
" B | \n",
" 4 | \n",
" 513792 | \n",
" 513816 | \n",
" gGrrrrrrrrrr | \n",
" left | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"32 438 106350 1 A 6 513817 513811 \n",
"33 438 106350 1 B 2 513810 513816 \n",
"34 438 106350 2 A 5 513810 513793 \n",
"35 438 106350 2 B 1 513817 513816 \n",
"36 438 106350 3 A 8 513817 513793 \n",
"37 438 106350 3 B 3 513817 513811 \n",
"38 438 106350 4 A 7 513792 513816 \n",
"39 438 106350 4 B 4 513792 513816 \n",
"\n",
" state turn_type \n",
"32 grrGGGGrrrrr straight \n",
"33 grrrrrrGGGGr straight \n",
"34 grrrrrrrrrrG left \n",
"35 grrrrrrrrrrr NaN \n",
"36 grGrrrrrrrrr NaN \n",
"37 grrGGGGrrrrr straight \n",
"38 gGrrrrrrrrrr left \n",
"39 gGrrrrrrrrrr left "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 8 | \n",
" 437 | \n",
" 107587 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" None | \n",
" None | \n",
" GGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 9 | \n",
" 437 | \n",
" 107587 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" None | \n",
" None | \n",
" GGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 10 | \n",
" 437 | \n",
" 107587 | \n",
" 2 | \n",
" A | \n",
" 5 | \n",
" None | \n",
" None | \n",
" GGGGr | \n",
" left | \n",
"
\n",
" \n",
" 11 | \n",
" 437 | \n",
" 107587 | \n",
" 2 | \n",
" B | \n",
" 1 | \n",
" 516929 | \n",
" 517055 | \n",
" GGGGG | \n",
" left | \n",
"
\n",
" \n",
" 12 | \n",
" 437 | \n",
" 107587 | \n",
" 3 | \n",
" A | \n",
" 8 | \n",
" None | \n",
" None | \n",
" GGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 13 | \n",
" 437 | \n",
" 107587 | \n",
" 3 | \n",
" B | \n",
" 3 | \n",
" None | \n",
" None | \n",
" GGGGr | \n",
" left | \n",
"
\n",
" \n",
" 14 | \n",
" 437 | \n",
" 107587 | \n",
" 4 | \n",
" A | \n",
" 7 | \n",
" None | \n",
" None | \n",
" GGGGr | \n",
" left | \n",
"
\n",
" \n",
" 15 | \n",
" 437 | \n",
" 107587 | \n",
" 4 | \n",
" B | \n",
" 4 | \n",
" None | \n",
" None | \n",
" GGGGr | \n",
" straight | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"8 437 107587 1 A 6 None None \n",
"9 437 107587 1 B 2 None None \n",
"10 437 107587 2 A 5 None None \n",
"11 437 107587 2 B 1 516929 517055 \n",
"12 437 107587 3 A 8 None None \n",
"13 437 107587 3 B 3 None None \n",
"14 437 107587 4 A 7 None None \n",
"15 437 107587 4 B 4 None None \n",
"\n",
" state turn_type \n",
"8 GGGGr straight \n",
"9 GGGGr straight \n",
"10 GGGGr left \n",
"11 GGGGG left \n",
"12 GGGGr straight \n",
"13 GGGGr left \n",
"14 GGGGr left \n",
"15 GGGGr straight "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 52 | \n",
" 443 | \n",
" 108769 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" 516916 | \n",
" 513863 | \n",
" gGGGGGrrrrrrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 53 | \n",
" 443 | \n",
" 108769 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" 513862 | \n",
" 516917 | \n",
" grrrrrGGGGGrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 54 | \n",
" 443 | \n",
" 108769 | \n",
" 2 | \n",
" A | \n",
" 5 | \n",
" 513862 | \n",
" 518550 | \n",
" grrrrrrrrrrGgrr | \n",
" left | \n",
"
\n",
" \n",
" 55 | \n",
" 443 | \n",
" 108769 | \n",
" 2 | \n",
" B | \n",
" 2 | \n",
" 513862 | \n",
" 516917 | \n",
" grrrrrGGGGGrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 56 | \n",
" 443 | \n",
" 108769 | \n",
" 3 | \n",
" A | \n",
" 7 | \n",
" 518549 | \n",
" 516917 | \n",
" grrrrrrrrrrrgGG | \n",
" left | \n",
"
\n",
" \n",
" 57 | \n",
" 443 | \n",
" 108769 | \n",
" 3 | \n",
" B | \n",
" 18 | \n",
" NaN | \n",
" NaN | \n",
" grrrrrrrrrrrgrr | \n",
" NaN | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"52 443 108769 1 A 6 516916 513863 \n",
"53 443 108769 1 B 2 513862 516917 \n",
"54 443 108769 2 A 5 513862 518550 \n",
"55 443 108769 2 B 2 513862 516917 \n",
"56 443 108769 3 A 7 518549 516917 \n",
"57 443 108769 3 B 18 NaN NaN \n",
"\n",
" state turn_type \n",
"52 gGGGGGrrrrrrgrr straight \n",
"53 grrrrrGGGGGrgrr straight \n",
"54 grrrrrrrrrrGgrr left \n",
"55 grrrrrGGGGGrgrr straight \n",
"56 grrrrrrrrrrrgGG left \n",
"57 grrrrrrrrrrrgrr NaN "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 74 | \n",
" 456 | \n",
" 109295 | \n",
" 1 | \n",
" A | \n",
" 5 | \n",
" 519797 | \n",
" 519796 | \n",
" GGGGGGGG | \n",
" left | \n",
"
\n",
" \n",
" 75 | \n",
" 456 | \n",
" 109295 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" straight | \n",
"
\n",
" \n",
" 76 | \n",
" 456 | \n",
" 109295 | \n",
" 2 | \n",
" A | \n",
" 6 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" straight | \n",
"
\n",
" \n",
" 77 | \n",
" 456 | \n",
" 109295 | \n",
" 2 | \n",
" B | \n",
" 2 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" straight | \n",
"
\n",
" \n",
" 78 | \n",
" 456 | \n",
" 109295 | \n",
" 3 | \n",
" A | \n",
" 7 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" left | \n",
"
\n",
" \n",
" 79 | \n",
" 456 | \n",
" 109295 | \n",
" 3 | \n",
" B | \n",
" 7 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" left | \n",
"
\n",
" \n",
" 80 | \n",
" 456 | \n",
" 109295 | \n",
" 4 | \n",
" A | \n",
" 17 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" NaN | \n",
"
\n",
" \n",
" 81 | \n",
" 456 | \n",
" 109295 | \n",
" 4 | \n",
" B | \n",
" 17 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" NaN | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"74 456 109295 1 A 5 519797 519796 \n",
"75 456 109295 1 B 2 None None \n",
"76 456 109295 2 A 6 None None \n",
"77 456 109295 2 B 2 None None \n",
"78 456 109295 3 A 7 None None \n",
"79 456 109295 3 B 7 None None \n",
"80 456 109295 4 A 17 None None \n",
"81 456 109295 4 B 17 None None \n",
"\n",
" state turn_type \n",
"74 GGGGGGGG left \n",
"75 GGGGGGrr straight \n",
"76 GGGGGGrr straight \n",
"77 GGGGGGrr straight \n",
"78 GGGGGGrr left \n",
"79 GGGGGGrr left \n",
"80 GGGGGGrr NaN \n",
"81 GGGGGGrr NaN "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 92 | \n",
" 457 | \n",
" 109296 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" None | \n",
" None | \n",
" GGGrrGGG | \n",
" straight | \n",
"
\n",
" \n",
" 93 | \n",
" 457 | \n",
" 109296 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" None | \n",
" None | \n",
" GGGrrGGG | \n",
" straight | \n",
"
\n",
" \n",
" 94 | \n",
" 457 | \n",
" 109296 | \n",
" 2 | \n",
" A | \n",
" 5 | \n",
" None | \n",
" None | \n",
" GGGrrGGG | \n",
" left | \n",
"
\n",
" \n",
" 95 | \n",
" 457 | \n",
" 109296 | \n",
" 2 | \n",
" B | \n",
" 1 | \n",
" 519799 | \n",
" 519798 | \n",
" GGGGGGGG | \n",
" left | \n",
"
\n",
" \n",
" 96 | \n",
" 457 | \n",
" 109296 | \n",
" 3 | \n",
" A | \n",
" 17 | \n",
" None | \n",
" None | \n",
" GGGrrGGG | \n",
" NaN | \n",
"
\n",
" \n",
" 97 | \n",
" 457 | \n",
" 109296 | \n",
" 3 | \n",
" B | \n",
" 17 | \n",
" None | \n",
" None | \n",
" GGGrrGGG | \n",
" NaN | \n",
"
\n",
" \n",
" 98 | \n",
" 457 | \n",
" 109296 | \n",
" 4 | \n",
" A | \n",
" 8 | \n",
" None | \n",
" None | \n",
" GGGrrGGG | \n",
" straight | \n",
"
\n",
" \n",
" 99 | \n",
" 457 | \n",
" 109296 | \n",
" 4 | \n",
" B | \n",
" 3 | \n",
" None | \n",
" None | \n",
" GGGrrGGG | \n",
" left | \n",
"
\n",
" \n",
" 100 | \n",
" 457 | \n",
" 109296 | \n",
" 5 | \n",
" A | \n",
" 7 | \n",
" None | \n",
" None | \n",
" GGGrrGGG | \n",
" left | \n",
"
\n",
" \n",
" 101 | \n",
" 457 | \n",
" 109296 | \n",
" 5 | \n",
" B | \n",
" 4 | \n",
" None | \n",
" None | \n",
" GGGrrGGG | \n",
" straight | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"92 457 109296 1 A 6 None None \n",
"93 457 109296 1 B 2 None None \n",
"94 457 109296 2 A 5 None None \n",
"95 457 109296 2 B 1 519799 519798 \n",
"96 457 109296 3 A 17 None None \n",
"97 457 109296 3 B 17 None None \n",
"98 457 109296 4 A 8 None None \n",
"99 457 109296 4 B 3 None None \n",
"100 457 109296 5 A 7 None None \n",
"101 457 109296 5 B 4 None None \n",
"\n",
" state turn_type \n",
"92 GGGrrGGG straight \n",
"93 GGGrrGGG straight \n",
"94 GGGrrGGG left \n",
"95 GGGGGGGG left \n",
"96 GGGrrGGG NaN \n",
"97 GGGrrGGG NaN \n",
"98 GGGrrGGG straight \n",
"99 GGGrrGGG left \n",
"100 GGGrrGGG left \n",
"101 GGGrrGGG straight "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 102 | \n",
" 457 | \n",
" 109297 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" straight | \n",
"
\n",
" \n",
" 103 | \n",
" 457 | \n",
" 109297 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" straight | \n",
"
\n",
" \n",
" 104 | \n",
" 457 | \n",
" 109297 | \n",
" 2 | \n",
" A | \n",
" 5 | \n",
" 519801 | \n",
" 519800 | \n",
" GGGGGGGG | \n",
" left | \n",
"
\n",
" \n",
" 105 | \n",
" 457 | \n",
" 109297 | \n",
" 2 | \n",
" B | \n",
" 1 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" left | \n",
"
\n",
" \n",
" 106 | \n",
" 457 | \n",
" 109297 | \n",
" 3 | \n",
" A | \n",
" 17 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" NaN | \n",
"
\n",
" \n",
" 107 | \n",
" 457 | \n",
" 109297 | \n",
" 3 | \n",
" B | \n",
" 17 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" NaN | \n",
"
\n",
" \n",
" 108 | \n",
" 457 | \n",
" 109297 | \n",
" 4 | \n",
" A | \n",
" 8 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" straight | \n",
"
\n",
" \n",
" 109 | \n",
" 457 | \n",
" 109297 | \n",
" 4 | \n",
" B | \n",
" 3 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" left | \n",
"
\n",
" \n",
" 110 | \n",
" 457 | \n",
" 109297 | \n",
" 5 | \n",
" A | \n",
" 7 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" left | \n",
"
\n",
" \n",
" 111 | \n",
" 457 | \n",
" 109297 | \n",
" 5 | \n",
" B | \n",
" 4 | \n",
" None | \n",
" None | \n",
" GGGGGGrr | \n",
" straight | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"102 457 109297 1 A 6 None None \n",
"103 457 109297 1 B 2 None None \n",
"104 457 109297 2 A 5 519801 519800 \n",
"105 457 109297 2 B 1 None None \n",
"106 457 109297 3 A 17 None None \n",
"107 457 109297 3 B 17 None None \n",
"108 457 109297 4 A 8 None None \n",
"109 457 109297 4 B 3 None None \n",
"110 457 109297 5 A 7 None None \n",
"111 457 109297 5 B 4 None None \n",
"\n",
" state turn_type \n",
"102 GGGGGGrr straight \n",
"103 GGGGGGrr straight \n",
"104 GGGGGGGG left \n",
"105 GGGGGGrr left \n",
"106 GGGGGGrr NaN \n",
"107 GGGGGGrr NaN \n",
"108 GGGGGGrr straight \n",
"109 GGGGGGrr left \n",
"110 GGGGGGrr left \n",
"111 GGGGGGrr straight "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 16 | \n",
" 437 | \n",
" 109313 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" None | \n",
" None | \n",
" GGGGGGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 17 | \n",
" 437 | \n",
" 109313 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" None | \n",
" None | \n",
" GGGGGGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 18 | \n",
" 437 | \n",
" 109313 | \n",
" 2 | \n",
" A | \n",
" 5 | \n",
" 519834 | \n",
" 519833 | \n",
" GGGGGGGGG | \n",
" left | \n",
"
\n",
" \n",
" 19 | \n",
" 437 | \n",
" 109313 | \n",
" 2 | \n",
" B | \n",
" 1 | \n",
" None | \n",
" None | \n",
" GGGGGGGGr | \n",
" left | \n",
"
\n",
" \n",
" 20 | \n",
" 437 | \n",
" 109313 | \n",
" 3 | \n",
" A | \n",
" 8 | \n",
" None | \n",
" None | \n",
" GGGGGGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 21 | \n",
" 437 | \n",
" 109313 | \n",
" 3 | \n",
" B | \n",
" 3 | \n",
" None | \n",
" None | \n",
" GGGGGGGGr | \n",
" left | \n",
"
\n",
" \n",
" 22 | \n",
" 437 | \n",
" 109313 | \n",
" 4 | \n",
" A | \n",
" 7 | \n",
" None | \n",
" None | \n",
" GGGGGGGGr | \n",
" left | \n",
"
\n",
" \n",
" 23 | \n",
" 437 | \n",
" 109313 | \n",
" 4 | \n",
" B | \n",
" 4 | \n",
" None | \n",
" None | \n",
" GGGGGGGGr | \n",
" straight | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"16 437 109313 1 A 6 None None \n",
"17 437 109313 1 B 2 None None \n",
"18 437 109313 2 A 5 519834 519833 \n",
"19 437 109313 2 B 1 None None \n",
"20 437 109313 3 A 8 None None \n",
"21 437 109313 3 B 3 None None \n",
"22 437 109313 4 A 7 None None \n",
"23 437 109313 4 B 4 None None \n",
"\n",
" state turn_type \n",
"16 GGGGGGGGr straight \n",
"17 GGGGGGGGr straight \n",
"18 GGGGGGGGG left \n",
"19 GGGGGGGGr left \n",
"20 GGGGGGGGr straight \n",
"21 GGGGGGGGr left \n",
"22 GGGGGGGGr left \n",
"23 GGGGGGGGr straight "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 58 | \n",
" 443 | \n",
" 109333 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" None | \n",
" None | \n",
" GGGGGGGGGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 59 | \n",
" 443 | \n",
" 109333 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" None | \n",
" None | \n",
" GGGGGGGGGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 60 | \n",
" 443 | \n",
" 109333 | \n",
" 2 | \n",
" A | \n",
" 5 | \n",
" 519873 | \n",
" 519874 | \n",
" GGGGGGGGGGGG | \n",
" left | \n",
"
\n",
" \n",
" 61 | \n",
" 443 | \n",
" 109333 | \n",
" 2 | \n",
" B | \n",
" 2 | \n",
" None | \n",
" None | \n",
" GGGGGGGGGGGr | \n",
" straight | \n",
"
\n",
" \n",
" 62 | \n",
" 443 | \n",
" 109333 | \n",
" 3 | \n",
" A | \n",
" 7 | \n",
" None | \n",
" None | \n",
" GGGGGGGGGGGr | \n",
" left | \n",
"
\n",
" \n",
" 63 | \n",
" 443 | \n",
" 109333 | \n",
" 3 | \n",
" B | \n",
" 18 | \n",
" None | \n",
" None | \n",
" GGGGGGGGGGGr | \n",
" NaN | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"58 443 109333 1 A 6 None None \n",
"59 443 109333 1 B 2 None None \n",
"60 443 109333 2 A 5 519873 519874 \n",
"61 443 109333 2 B 2 None None \n",
"62 443 109333 3 A 7 None None \n",
"63 443 109333 3 B 18 None None \n",
"\n",
" state turn_type \n",
"58 GGGGGGGGGGGr straight \n",
"59 GGGGGGGGGGGr straight \n",
"60 GGGGGGGGGGGG left \n",
"61 GGGGGGGGGGGr straight \n",
"62 GGGGGGGGGGGr left \n",
"63 GGGGGGGGGGGr NaN "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 436 | \n",
" 109836 | \n",
" 1 | \n",
" A | \n",
" 5 | \n",
" 517505 | \n",
" 517507 | \n",
" grrrrgrrgrGgrr | \n",
" left | \n",
"
\n",
" \n",
" 1 | \n",
" 436 | \n",
" 109836 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" 517505 | \n",
" 517004 | \n",
" grrrrgrrgGrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 2 | \n",
" 436 | \n",
" 109836 | \n",
" 2 | \n",
" A | \n",
" 8 | \n",
" 517509 | \n",
" 517507 | \n",
" grrrrgGrgrrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 3 | \n",
" 436 | \n",
" 109836 | \n",
" 2 | \n",
" B | \n",
" 3 | \n",
" 517509 | \n",
" 517504 | \n",
" grrrrgrGgrrgrr | \n",
" left | \n",
"
\n",
" \n",
" 4 | \n",
" 436 | \n",
" 109836 | \n",
" 3 | \n",
" A | \n",
" 7 | \n",
" 517002 | \n",
" 517004 | \n",
" grrrrgrrgrrgrG | \n",
" left | \n",
"
\n",
" \n",
" 5 | \n",
" 436 | \n",
" 109836 | \n",
" 3 | \n",
" B | \n",
" 4 | \n",
" 517002 | \n",
" 517506 | \n",
" grrrrgrrgrrgGr | \n",
" straight | \n",
"
\n",
" \n",
" 6 | \n",
" 436 | \n",
" 109836 | \n",
" 4 | \n",
" A | \n",
" 6 | \n",
" 517003 | \n",
" 517504 | \n",
" gGGGrgrrgrrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 7 | \n",
" 436 | \n",
" 109836 | \n",
" 4 | \n",
" B | \n",
" 1 | \n",
" 517003 | \n",
" 517506 | \n",
" grrrGgrrgrrgrr | \n",
" left | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"0 436 109836 1 A 5 517505 517507 \n",
"1 436 109836 1 B 2 517505 517004 \n",
"2 436 109836 2 A 8 517509 517507 \n",
"3 436 109836 2 B 3 517509 517504 \n",
"4 436 109836 3 A 7 517002 517004 \n",
"5 436 109836 3 B 4 517002 517506 \n",
"6 436 109836 4 A 6 517003 517504 \n",
"7 436 109836 4 B 1 517003 517506 \n",
"\n",
" state turn_type \n",
"0 grrrrgrrgrGgrr left \n",
"1 grrrrgrrgGrgrr straight \n",
"2 grrrrgGrgrrgrr straight \n",
"3 grrrrgrGgrrgrr left \n",
"4 grrrrgrrgrrgrG left \n",
"5 grrrrgrrgrrgGr straight \n",
"6 gGGGrgrrgrrgrr straight \n",
"7 grrrGgrrgrrgrr left "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 64 | \n",
" 455 | \n",
" 109901 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" 513580 | \n",
" 513581 | \n",
" GGrr | \n",
" straight | \n",
"
\n",
" \n",
" 65 | \n",
" 455 | \n",
" 109901 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" 513582 | \n",
" 513584 | \n",
" rrGG | \n",
" straight | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"64 455 109901 1 A 6 513580 513581 \n",
"65 455 109901 1 B 2 513582 513584 \n",
"\n",
" state turn_type \n",
"64 GGrr straight \n",
"65 rrGG straight "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inter_no | \n",
" node_id | \n",
" phase_no | \n",
" ring_type | \n",
" move_no | \n",
" inc_edge_id | \n",
" out_edge_id | \n",
" state | \n",
" turn_type | \n",
"
\n",
" \n",
" \n",
" \n",
" 24 | \n",
" 437 | \n",
" 109986 | \n",
" 1 | \n",
" A | \n",
" 6 | \n",
" 517054 | \n",
" 513840 | \n",
" gGGGGrgrrgrrrrrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 25 | \n",
" 437 | \n",
" 109986 | \n",
" 1 | \n",
" B | \n",
" 2 | \n",
" 513841 | \n",
" 512766 | \n",
" grrrrrgrrgGGGGrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 26 | \n",
" 437 | \n",
" 109986 | \n",
" 2 | \n",
" A | \n",
" 5 | \n",
" 513841 | \n",
" 513786 | \n",
" grrrrrgrrgrrrrGgrr | \n",
" left | \n",
"
\n",
" \n",
" 27 | \n",
" 437 | \n",
" 109986 | \n",
" 2 | \n",
" B | \n",
" 1 | \n",
" 517054 | \n",
" 513842 | \n",
" grrrrGgrrgrrrrrgrr | \n",
" left | \n",
"
\n",
" \n",
" 28 | \n",
" 437 | \n",
" 109986 | \n",
" 3 | \n",
" A | \n",
" 8 | \n",
" 513843 | \n",
" 513786 | \n",
" grrrrrgGrgrrrrrgrr | \n",
" straight | \n",
"
\n",
" \n",
" 29 | \n",
" 437 | \n",
" 109986 | \n",
" 3 | \n",
" B | \n",
" 3 | \n",
" 513843 | \n",
" 513840 | \n",
" grrrrrgrGgrrrrrgrr | \n",
" left | \n",
"
\n",
" \n",
" 30 | \n",
" 437 | \n",
" 109986 | \n",
" 4 | \n",
" A | \n",
" 7 | \n",
" 513785 | \n",
" 512766 | \n",
" grrrrrgrrgrrrrrgrG | \n",
" left | \n",
"
\n",
" \n",
" 31 | \n",
" 437 | \n",
" 109986 | \n",
" 4 | \n",
" B | \n",
" 4 | \n",
" 513785 | \n",
" 513842 | \n",
" grrrrrgrrgrrrrrgGr | \n",
" straight | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inter_no node_id phase_no ring_type move_no inc_edge_id out_edge_id \\\n",
"24 437 109986 1 A 6 517054 513840 \n",
"25 437 109986 1 B 2 513841 512766 \n",
"26 437 109986 2 A 5 513841 513786 \n",
"27 437 109986 2 B 1 517054 513842 \n",
"28 437 109986 3 A 8 513843 513786 \n",
"29 437 109986 3 B 3 513843 513840 \n",
"30 437 109986 4 A 7 513785 512766 \n",
"31 437 109986 4 B 4 513785 513842 \n",
"\n",
" state turn_type \n",
"24 gGGGGrgrrgrrrrrgrr straight \n",
"25 grrrrrgrrgGGGGrgrr straight \n",
"26 grrrrrgrrgrrrrGgrr left \n",
"27 grrrrGgrrgrrrrrgrr left \n",
"28 grrrrrgGrgrrrrrgrr straight \n",
"29 grrrrrgrGgrrrrrgrr left \n",
"30 grrrrrgrrgrrrrrgrG left \n",
"31 grrrrrgrrgrrrrrgGr straight "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# all red 검증\n",
"for node_id, group in self.match6.groupby('node_id'):\n",
" state_length = len(group.iloc[0].state)\n",
" consistent_length = all([len(state)==state_length for state in group.state])\n",
" if not consistent_length:\n",
" print(f\"node_id : {node_id}에 대하여 state 길이가 일정하지 않습니다.\")\n",
" any_non_red_indices = set()\n",
" for state in group.state:\n",
" state = list(state)\n",
" any_non_red_indices.update({index for index, char in enumerate(state) if not char == 'r'})\n",
" all_red_indices = set(range(state_length)) - any_non_red_indices\n",
" all_red_state = ['g'] * state_length\n",
" for ind in all_red_indices:\n",
" all_red_state[ind] = 'r'\n",
" all_red_state = ''.join(all_red_state)\n",
" if all_red_indices:\n",
" print(node_id)\n",
" print(f'all_red_indices : {all_red_indices}')\n",
" print(f'all_red_state : {all_red_state}')\n",
" display(group)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"enode_id = '106332' # errornous node_id"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"self.make_match1()\n",
"self.make_match2()\n",
"self.make_match3()\n",
"self.make_match4()\n",
"self.make_match5()\n",
"self.make_match6()\n",
"self.match6"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# 2. 중간산출물 만들기\n",
"self.get_intermediates()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# 3. 이슈사항 저장\n",
"self.write_issues()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "siggen_env",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}