|
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 1,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"import pandas as pd\n",
|
|
"import numpy as numpy\n",
|
|
"import os\n",
|
|
"import sumolib\n",
|
|
"import copy\n",
|
|
"from tqdm import tqdm\n",
|
|
"from datetime import datetime"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 2,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"1704410400\n"
|
|
]
|
|
},
|
|
{
|
|
"data": {
|
|
"text/html": [
|
|
"<div>\n",
|
|
"<style scoped>\n",
|
|
" .dataframe tbody tr th:only-of-type {\n",
|
|
" vertical-align: middle;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe tbody tr th {\n",
|
|
" vertical-align: top;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe thead th {\n",
|
|
" text-align: right;\n",
|
|
" }\n",
|
|
"</style>\n",
|
|
"<table border=\"1\" class=\"dataframe\">\n",
|
|
" <thead>\n",
|
|
" <tr style=\"text-align: right;\">\n",
|
|
" <th></th>\n",
|
|
" <th>node_id</th>\n",
|
|
" <th>start_unix</th>\n",
|
|
" <th>phas_A</th>\n",
|
|
" <th>phas_B</th>\n",
|
|
" <th>duration</th>\n",
|
|
" <th>inc_edge_A</th>\n",
|
|
" <th>inc_edge_B</th>\n",
|
|
" <th>out_edge_A</th>\n",
|
|
" <th>out_edge_B</th>\n",
|
|
" <th>move_A</th>\n",
|
|
" <th>move_B</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>i1</td>\n",
|
|
" <td>1704406840</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>37</td>\n",
|
|
" <td>-571542810_01</td>\n",
|
|
" <td>571542797_02.99</td>\n",
|
|
" <td>-571542797_02.99</td>\n",
|
|
" <td>571542810_01</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>4</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>i1</td>\n",
|
|
" <td>1704406840</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>93</td>\n",
|
|
" <td>-571542810_01</td>\n",
|
|
" <td>-571542810_01</td>\n",
|
|
" <td>-571542797_02.99</td>\n",
|
|
" <td>571543469_01</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>i1</td>\n",
|
|
" <td>1704406840</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>571543469_02</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>-571542797_02.99</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>18</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>i9</td>\n",
|
|
" <td>1704406850</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>46</td>\n",
|
|
" <td>571510152_02</td>\n",
|
|
" <td>571510152_01</td>\n",
|
|
" <td>-571510152_01</td>\n",
|
|
" <td>571510152_01.65</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>2</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>i9</td>\n",
|
|
" <td>1704406850</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>114</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>18</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>...</th>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>477</th>\n",
|
|
" <td>i6</td>\n",
|
|
" <td>1704410200</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>571500585_02</td>\n",
|
|
" <td>571500585_02</td>\n",
|
|
" <td>571511538_01</td>\n",
|
|
" <td>571500535_01</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>478</th>\n",
|
|
" <td>i2</td>\n",
|
|
" <td>1704410220</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>-571542809_01</td>\n",
|
|
" <td>571542811_02</td>\n",
|
|
" <td>571542811_01</td>\n",
|
|
" <td>571542809_01</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>4</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>479</th>\n",
|
|
" <td>i2</td>\n",
|
|
" <td>1704410220</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>25</td>\n",
|
|
" <td>571542811_02</td>\n",
|
|
" <td>-571542809_01</td>\n",
|
|
" <td>571542107_01</td>\n",
|
|
" <td>571542809_01</td>\n",
|
|
" <td>7</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>480</th>\n",
|
|
" <td>i2</td>\n",
|
|
" <td>1704410220</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>71</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>18</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>481</th>\n",
|
|
" <td>i2</td>\n",
|
|
" <td>1704410220</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>-571542809_01</td>\n",
|
|
" <td>571542107_02</td>\n",
|
|
" <td>571542811_01</td>\n",
|
|
" <td>571542809_01</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>482 rows × 11 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" node_id start_unix phas_A phas_B duration inc_edge_A \\\n",
|
|
"0 i1 1704406840 1 1 37 -571542810_01 \n",
|
|
"1 i1 1704406840 2 2 93 -571542810_01 \n",
|
|
"2 i1 1704406840 3 3 40 571543469_02 \n",
|
|
"3 i9 1704406850 1 1 46 571510152_02 \n",
|
|
"4 i9 1704406850 2 2 114 NaN \n",
|
|
".. ... ... ... ... ... ... \n",
|
|
"477 i6 1704410200 4 4 23 571500585_02 \n",
|
|
"478 i2 1704410220 1 1 40 -571542809_01 \n",
|
|
"479 i2 1704410220 2 2 25 571542811_02 \n",
|
|
"480 i2 1704410220 3 3 71 NaN \n",
|
|
"481 i2 1704410220 4 4 34 -571542809_01 \n",
|
|
"\n",
|
|
" inc_edge_B out_edge_A out_edge_B move_A move_B \n",
|
|
"0 571542797_02.99 -571542797_02.99 571542810_01 8 4 \n",
|
|
"1 -571542810_01 -571542797_02.99 571543469_01 8 3 \n",
|
|
"2 NaN -571542797_02.99 NaN 5 18 \n",
|
|
"3 571510152_01 -571510152_01 571510152_01.65 6 2 \n",
|
|
"4 NaN NaN NaN 17 18 \n",
|
|
".. ... ... ... ... ... \n",
|
|
"477 571500585_02 571511538_01 571500535_01 8 3 \n",
|
|
"478 571542811_02 571542811_01 571542809_01 8 4 \n",
|
|
"479 -571542809_01 571542107_01 571542809_01 7 3 \n",
|
|
"480 NaN NaN NaN 17 18 \n",
|
|
"481 571542107_02 571542811_01 571542809_01 5 1 \n",
|
|
"\n",
|
|
"[482 rows x 11 columns]"
|
|
]
|
|
},
|
|
"execution_count": 2,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"midnight = int(datetime(2024, 1, 5, 0, 0, 0).timestamp())\n",
|
|
"next_day = int(datetime(2024, 1, 6, 0, 0, 0).timestamp())\n",
|
|
"fmins = range(midnight, next_day, 300)\n",
|
|
"m = 100 # m ranges from 26 to 287\n",
|
|
"print(fmins[m])\n",
|
|
"net = sumolib.net.readNet('../../Data/networks/SN_sample.net.xml')\n",
|
|
"inter_node = pd.read_csv('../../data/tables/inter_node.csv', index_col=0)\n",
|
|
"inter_node = inter_node[inter_node.inter_type=='parent']\n",
|
|
"histid = pd.read_csv(f'../../Data/tables/histids/histids_{fmins[m]}.csv', index_col=0)\n",
|
|
"histid = histid[histid.inter_no.isin(inter_node.inter_no.unique())]\n",
|
|
"inter2node = dict(zip(inter_node['inter_no'], inter_node['node_id']))\n",
|
|
"histid['node_id'] = histid['inter_no'].map(inter2node)\n",
|
|
"histid = histid[['node_id', 'start_unix', 'phas_A', 'phas_B', 'duration', 'inc_edge_A', 'inc_edge_B', 'out_edge_A', 'out_edge_B', 'move_A', 'move_B']]\n",
|
|
"histid = histid.reset_index(drop=True)\n",
|
|
"histid"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 3,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"['i0', 'i1', 'i2', 'i3', 'i6', 'i7', 'i8', 'i9']\n",
|
|
"[<junction id=\"i0\"/>, <junction id=\"i1\"/>, <junction id=\"i2\"/>, <junction id=\"i3\"/>, <junction id=\"i6\"/>, <junction id=\"i7\"/>, <junction id=\"i8\"/>, <junction id=\"i9\"/>]\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"sigtable = histid.copy()\n",
|
|
"node_ids = sorted(sigtable.node_id.unique())\n",
|
|
"nodes = [net.getNode(node_id) for node_id in node_ids]\n",
|
|
"print(node_ids)\n",
|
|
"print(nodes)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 4,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"i0 grrrgrrrgrrrrrgrr\n",
|
|
"i1 grrrrrrgrr\n",
|
|
"i2 rrggrrr\n",
|
|
"i3 grrrrgrrrrgrrrrgrrrr\n",
|
|
"i6 grrrgrrrrgrrgrrr\n",
|
|
"i7 rrrggrr\n",
|
|
"i8 grrrrrrrgrrrgrrr\n",
|
|
"i9 rrrr\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"node2init = {}\n",
|
|
"for node in nodes:\n",
|
|
" node_id = node.getID()\n",
|
|
" conns = [(c.getJunctionIndex(), c) for c in node.getConnections()]\n",
|
|
" conns = [c for c in conns if c[0] >= 0]\n",
|
|
" conns = sorted(conns, key=lambda x: x[0])\n",
|
|
" state = []\n",
|
|
" for i, ci in conns:\n",
|
|
" if ci.getTLLinkIndex() < 0:\n",
|
|
" continue\n",
|
|
" are_foes = False\n",
|
|
" for j, cj in conns:\n",
|
|
" if ci.getTo() == cj.getTo():\n",
|
|
" continue\n",
|
|
" if node.areFoes(i, j):\n",
|
|
" are_foes = True\n",
|
|
" break\n",
|
|
" state.append('r' if are_foes else 'g')\n",
|
|
" node2init[node_id] = state\n",
|
|
"\n",
|
|
"# 어떤 연결과도 상충이 일어나지는 않지만, 신호가 부여되어 있는 경우에는 r을 부여\n",
|
|
"for _, row in sigtable.iterrows():\n",
|
|
" node_id = row['node_id']\n",
|
|
" inc_edge_A = row.inc_edge_A\n",
|
|
" inc_edge_B = row.inc_edge_B\n",
|
|
" out_edge_A = row.out_edge_A\n",
|
|
" out_edge_B = row.out_edge_B\n",
|
|
" move_A = row['move_A']\n",
|
|
" move_B = row['move_B']\n",
|
|
"\n",
|
|
" if pd.isna(inc_edge_A) or pd.isna(out_edge_A):\n",
|
|
" continue\n",
|
|
" else:\n",
|
|
" inc_edge_A = net.getEdge(inc_edge_A)\n",
|
|
" out_edge_A = net.getEdge(out_edge_A)\n",
|
|
" for conn in inc_edge_A.getConnections(out_edge_A):\n",
|
|
" index = conn.getTLLinkIndex()\n",
|
|
" if index >= 0:\n",
|
|
" node2init[node_id][index] = 'r'\n",
|
|
"\n",
|
|
" if pd.isna(inc_edge_B) or pd.isna(out_edge_B):\n",
|
|
" continue\n",
|
|
" else:\n",
|
|
" inc_edge_B = net.getEdge(inc_edge_B)\n",
|
|
" out_edge_B = net.getEdge(out_edge_B)\n",
|
|
" for conn in inc_edge_B.getConnections(out_edge_B):\n",
|
|
" index = conn.getTLLinkIndex()\n",
|
|
" if index >= 0:\n",
|
|
" node2init[node_id][index] = 'r'\n",
|
|
"for node_id in node_ids:\n",
|
|
" print(node_id, \"\".join(node2init[node_id]))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 5,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"['g', 'r', 'r', 'r', 'g', 'r', 'r', 'r', 'r', 'g', 'r', 'r', 'g', 'r', 'r', 'r']\n",
|
|
"['G', 'r', 'r', 'r', 'g', 'r', 'r', 'r', 'r', 'g', 'r', 'r', 'g', 'r', 'r', 'r']\n",
|
|
"['g', 'r', 'r', 'r', 'g', 'r', 'r', 'r', 'r', 'g', 'r', 'r', 'g', 'r', 'r', 'r']\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"print(node2init['i6'])\n",
|
|
"state = copy.deepcopy(node2init)['i6']\n",
|
|
"state[0] = 'G'\n",
|
|
"print(state)\n",
|
|
"print(node2init['i6'])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 6,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"(array([ 1., 7., 11., 12., 6., 7., 3., 1., 2., 3.]),\n",
|
|
" array([ 0. , 12.2, 24.4, 36.6, 48.8, 61. , 73.2, 85.4, 97.6,\n",
|
|
" 109.8, 122. ]),\n",
|
|
" <BarContainer object of 10 artists>)"
|
|
]
|
|
},
|
|
"execution_count": 6,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAh8AAAGdCAYAAACyzRGfAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAbkklEQVR4nO3de5CVdf3A8c/CugdUdhGMhc1FNnMGFTITIcQpHXcyw1sXK4eKqOm6psRMAhUWo7R0GYcuDqYzXpq81YyQadkYosaEXMWyEnEkZbSFytjDJVfa/f7+cDzTCurS7+z37LKv18yZ8TzPw3k+fAf3vOc55+ypSimlAADIZFClBwAABhbxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWVVXeoBX6+rqiueffz6GDRsWVVVVlR4HAOiBlFLs2rUrGhoaYtCg17+20efi4/nnn4/GxsZKjwEA/A+2bdsWxxxzzOse0+fiY9iwYRHx8vC1tbUVngYA6IlisRiNjY2l5/HX0+fi45WXWmpra8UHAPQzPXnLhDecAgBZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACCrg46Phx9+OM4///xoaGiIqqqqWL58eWnfvn37Yu7cuTFx4sQ44ogjoqGhIT7xiU/E888/X86ZAYB+7KDjY8+ePXHyySfHtddeu9++vXv3xsaNG2PBggWxcePGuOuuu2Lz5s1xwQUXlGVYAKD/q0oppf/5D1dVxbJly+Kiiy56zWPWrVsXkydPjmeeeSbGjh37ho9ZLBajrq4u2tvbfbEcAPQTB/P83evfatve3h5VVVUxfPjwA+7v6OiIjo6O0v1isdjbIwEAFdSr8fHiiy/G3Llz45JLLnnNCmptbY2FCxf25hjQI+Pm3VvpEQ7aXxdPr/QIAAet1z7tsm/fvvjwhz8cKaVYunTpax43f/78aG9vL922bdvWWyMBAH1Ar1z5eCU8nnnmmXjggQde97WfQqEQhUKhN8YAAPqgssfHK+GxZcuWWLlyZYwcObLcpwAA+rGDjo/du3fHU089Vbq/devW2LRpU4wYMSLGjBkTH/rQh2Ljxo1xzz33RGdnZ7S1tUVExIgRI6KmpqZ8kwMA/dJBx8f69evjrLPOKt2fM2dORETMnDkzvvnNb8bdd98dERFvf/vbu/25lStXxplnnvm/TwoAHBIOOj7OPPPMeL1fDfL/+LUhAMAA4LtdAICsxAcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW4gMAyEp8AABZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACCr6koPwKFp3Lx7Kz0CAH2UKx8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW4gMAyEp8AABZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZCU+AICsxAcAkJX4AACyOuj4ePjhh+P888+PhoaGqKqqiuXLl3fbn1KKK6+8MsaMGRNDhw6N5ubm2LJlS7nmBQD6uYOOjz179sTJJ58c11577QH3f+c734kf/OAHcd1118WaNWviiCOOiHPOOSdefPHF//ewAED/V32wf+Dcc8+Nc88994D7UkqxZMmS+PrXvx4XXnhhRET85Cc/ifr6+li+fHl89KMf/f9NCwD0e2V9z8fWrVujra0tmpubS9vq6upiypQpsXr16gP+mY6OjigWi91uAMChq6zx0dbWFhER9fX13bbX19eX9r1aa2tr1NXVlW6NjY3lHAkA6GMq/mmX+fPnR3t7e+m2bdu2So8EAPSissbH6NGjIyJi+/bt3bZv3769tO/VCoVC1NbWdrsBAIeussZHU1NTjB49OlasWFHaViwWY82aNTF16tRyngoA6KcO+tMuu3fvjqeeeqp0f+vWrbFp06YYMWJEjB07NmbPnh1XX311HH/88dHU1BQLFiyIhoaGuOiii8o5NwDQTx10fKxfvz7OOuus0v05c+ZERMTMmTPj5ptvjiuuuCL27NkTn/3sZ2Pnzp1xxhlnxH333RdDhgwp39QAQL9VlVJKlR7ivxWLxairq4v29nbv/+jHxs27t9IjDAh/XTy90iMARMTBPX9X/NMuAMDAIj4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZCU+AICsxAcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW4gMAyEp8AABZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZCU+AICsxAcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW4gMAyEp8AABZlT0+Ojs7Y8GCBdHU1BRDhw6N4447Lq666qpIKZX7VABAP1Rd7gf89re/HUuXLo1bbrklTjrppFi/fn3MmjUr6urq4rLLLiv36QCAfqbs8fH73/8+Lrzwwpg+fXpERIwbNy5uv/32WLt2bblPBQD0Q2V/2eX000+PFStWxJNPPhkREY899lisWrUqzj333HKfCgDoh8p+5WPevHlRLBZj/PjxMXjw4Ojs7IxFixbFjBkzDnh8R0dHdHR0lO4Xi8VyjwQA9CFlv/Lxs5/9LG699da47bbbYuPGjXHLLbfE9773vbjlllsOeHxra2vU1dWVbo2NjeUeCQDoQ6pSmT+G0tjYGPPmzYuWlpbStquvvjp++tOfxhNPPLHf8Qe68tHY2Bjt7e1RW1tbztHIaNy8eys9woDw18XTKz0CQES8/PxdV1fXo+fvsr/ssnfv3hg0qPsFlcGDB0dXV9cBjy8UClEoFMo9BgDQR5U9Ps4///xYtGhRjB07Nk466aR49NFH45prrolPfepT5T4VANAPlT0+fvjDH8aCBQvii1/8YuzYsSMaGhric5/7XFx55ZXlPhUA0A+VPT6GDRsWS5YsiSVLlpT7oQGAQ4DvdgEAshIfAEBW4gMAyEp8AABZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZCU+AICsxAcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArKorPQBvbNy8eys9ApRNf/z3/NfF0ys9AhxSXPkAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZCU+AICsxAcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW4gMAyEp8AABZiQ8AICvxAQBkJT4AgKzEBwCQVa/Ex3PPPRcf+9jHYuTIkTF06NCYOHFirF+/vjdOBQD0M9XlfsB//etfMW3atDjrrLPi17/+dbzpTW+KLVu2xFFHHVXuUwEA/VDZ4+Pb3/52NDY2xk033VTa1tTUVO7TAAD9VNlfdrn77rtj0qRJcfHFF8eoUaPilFNOiRtuuOE1j+/o6IhisdjtBgAcusp+5ePpp5+OpUuXxpw5c+KrX/1qrFu3Li677LKoqamJmTNn7nd8a2trLFy4sNxjwIAwbt69lR4B4KBVpZRSOR+wpqYmJk2aFL///e9L2y677LJYt25drF69er/jOzo6oqOjo3S/WCxGY2NjtLe3R21tbTlH67c8wUBl/XXx9EqPAH1esViMurq6Hj1/l/1llzFjxsSJJ57YbdsJJ5wQzz777AGPLxQKUVtb2+0GABy6yh4f06ZNi82bN3fb9uSTT8axxx5b7lMBAP1Q2ePjy1/+cjzyyCPxrW99K5566qm47bbb4vrrr4+WlpZynwoA6IfKHh+nnXZaLFu2LG6//faYMGFCXHXVVbFkyZKYMWNGuU8FAPRDZf+0S0TEeeedF+edd15vPDQA0M/5bhcAICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZCU+AICsxAcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW4gMAyEp8AABZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZCU+AICsxAcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW4gMAyEp8AABZ9Xp8LF68OKqqqmL27Nm9fSoAoB/o1fhYt25d/PjHP463ve1tvXkaAKAf6bX42L17d8yYMSNuuOGGOOqoo3rrNABAP9Nr8dHS0hLTp0+P5ubm1z2uo6MjisVitxsAcOiq7o0HveOOO2Ljxo2xbt26Nzy2tbU1Fi5c2BtjAAB9UNmvfGzbti0uv/zyuPXWW2PIkCFvePz8+fOjvb29dNu2bVu5RwIA+pCyX/nYsGFD7NixI97xjneUtnV2dsbDDz8cP/rRj6KjoyMGDx5c2lcoFKJQKJR7DACgjyp7fJx99tnxxz/+sdu2WbNmxfjx42Pu3LndwgMAGHjKHh/Dhg2LCRMmdNt2xBFHxMiRI/fbDgAMPH7DKQCQVa982uXVHnzwwRynAQD6AVc+AICsxAcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW4gMAyEp8AABZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWVVXegCAvm7cvHsrPcL/5K+Lp1d6hAGhP/77qPS/DVc+AICsxAcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW4gMAyEp8AABZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZFX2+GhtbY3TTjsthg0bFqNGjYqLLrooNm/eXO7TAAD9VNnj46GHHoqWlpZ45JFH4v777499+/bFe97zntizZ0+5TwUA9EPV5X7A++67r9v9m2++OUaNGhUbNmyId73rXeU+HQDQz/T6ez7a29sjImLEiBG9fSoAoB8o+5WP/9bV1RWzZ8+OadOmxYQJEw54TEdHR3R0dJTuF4vF3hwJAKiwXo2PlpaWePzxx2PVqlWveUxra2ssXLiwN8cAoJ8YN+/eSo9ABr32ssull14a99xzT6xcuTKOOeaY1zxu/vz50d7eXrpt27att0YCAPqAsl/5SCnFl770pVi2bFk8+OCD0dTU9LrHFwqFKBQK5R4DAOijyh4fLS0tcdttt8UvfvGLGDZsWLS1tUVERF1dXQwdOrTcpwMA+pmyv+yydOnSaG9vjzPPPDPGjBlTut15553lPhUA0A/1yssuAACvxXe7AABZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZCU+AICsxAcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW1ZUeILdx8+6t9AgAWfh5R1/lygcAkJX4AACyEh8AQFbiAwDISnwAAFmJDwAgK/EBAGQlPgCArMQHAJCV+AAAshIfAEBW4gMAyEp8AABZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZCU+AICsei0+rr322hg3blwMGTIkpkyZEmvXru2tUwEA/UivxMedd94Zc+bMiW984xuxcePGOPnkk+Occ86JHTt29MbpAIB+pFfi45prronPfOYzMWvWrDjxxBPjuuuui8MPPzxuvPHG3jgdANCPVJf7AV966aXYsGFDzJ8/v7Rt0KBB0dzcHKtXr97v+I6Ojujo6Cjdb29vj4iIYrFY7tEiIqKrY2+vPC4A9Be98Rz7ymOmlN7w2LLHxz/+8Y/o7OyM+vr6btvr6+vjiSee2O/41tbWWLhw4X7bGxsbyz0aABARdUt677F37doVdXV1r3tM2ePjYM2fPz/mzJlTut/V1RUvvPBCjBw5Mqqqqsp6rmKxGI2NjbFt27aora0t62MfSqxTz1innrFOPWOd3pg16plKrVNKKXbt2hUNDQ1veGzZ4+Poo4+OwYMHx/bt27tt3759e4wePXq/4wuFQhQKhW7bhg8fXu6xuqmtrfUPtwesU89Yp56xTj1jnd6YNeqZSqzTG13xeEXZ33BaU1MTp556aqxYsaK0raurK1asWBFTp04t9+kAgH6mV152mTNnTsycOTMmTZoUkydPjiVLlsSePXti1qxZvXE6AKAf6ZX4+MhHPhJ///vf48orr4y2trZ4+9vfHvfdd99+b0LNrVAoxDe+8Y39XuahO+vUM9apZ6xTz1inN2aNeqY/rFNV6slnYgAAysR3uwAAWYkPACAr8QEAZCU+AICsBkx8XHvttTFu3LgYMmRITJkyJdauXVvpkSqqtbU1TjvttBg2bFiMGjUqLrrooti8eXO3Y1588cVoaWmJkSNHxpFHHhkf/OAH9/vlcQPN4sWLo6qqKmbPnl3aZp1e9txzz8XHPvaxGDlyZAwdOjQmTpwY69evL+1PKcWVV14ZY8aMiaFDh0Zzc3Ns2bKlghPn19nZGQsWLIimpqYYOnRoHHfccXHVVVd1+y6MgbhODz/8cJx//vnR0NAQVVVVsXz58m77e7ImL7zwQsyYMSNqa2tj+PDh8elPfzp2796d8W/R+15vnfbt2xdz586NiRMnxhFHHBENDQ3xiU98Ip5//vluj9Fn1ikNAHfccUeqqalJN954Y/rTn/6UPvOZz6Thw4en7du3V3q0ijnnnHPSTTfdlB5//PG0adOm9L73vS+NHTs27d69u3TM5z//+dTY2JhWrFiR1q9fn975znem008/vYJTV9batWvTuHHj0tve9rZ0+eWXl7Zbp5ReeOGFdOyxx6ZPfvKTac2aNenpp59Ov/nNb9JTTz1VOmbx4sWprq4uLV++PD322GPpggsuSE1NTenf//53BSfPa9GiRWnkyJHpnnvuSVu3bk0///nP05FHHpm+//3vl44ZiOv0q1/9Kn3ta19Ld911V4qItGzZsm77e7Im733ve9PJJ5+cHnnkkfS73/0uvfWtb02XXHJJ5r9J73q9ddq5c2dqbm5Od955Z3riiSfS6tWr0+TJk9Opp57a7TH6yjoNiPiYPHlyamlpKd3v7OxMDQ0NqbW1tYJT9S07duxIEZEeeuihlNLL/5APO+yw9POf/7x0zF/+8pcUEWn16tWVGrNidu3alY4//vh0//33p3e/+92l+LBOL5s7d24644wzXnN/V1dXGj16dPrud79b2rZz585UKBTS7bffnmPEPmH69OnpU5/6VLdtH/jAB9KMGTNSStYppbTfk2pP1uTPf/5zioi0bt260jG//vWvU1VVVXruueeyzZ7TgSLt1dauXZsiIj3zzDMppb61Tof8yy4vvfRSbNiwIZqbm0vbBg0aFM3NzbF69eoKTta3tLe3R0TEiBEjIiJiw4YNsW/fvm7rNn78+Bg7duyAXLeWlpaYPn16t/WIsE6vuPvuu2PSpElx8cUXx6hRo+KUU06JG264obR/69at0dbW1m2d6urqYsqUKQNqnU4//fRYsWJFPPnkkxER8dhjj8WqVavi3HPPjQjrdCA9WZPVq1fH8OHDY9KkSaVjmpubY9CgQbFmzZrsM/cV7e3tUVVVVfq+tL60ThX/Vtve9o9//CM6Ozv3++2q9fX18cQTT1Roqr6lq6srZs+eHdOmTYsJEyZERERbW1vU1NTs9yV/9fX10dbWVoEpK+eOO+6IjRs3xrp16/bbZ51e9vTTT8fSpUtjzpw58dWvfjXWrVsXl112WdTU1MTMmTNLa3Gg/w8H0jrNmzcvisVijB8/PgYPHhydnZ2xaNGimDFjRkSEdTqAnqxJW1tbjBo1qtv+6urqGDFixIBdtxdffDHmzp0bl1xySenL5frSOh3y8cEba2lpiccffzxWrVpV6VH6nG3btsXll18e999/fwwZMqTS4/RZXV1dMWnSpPjWt74VERGnnHJKPP7443HdddfFzJkzKzxd3/Gzn/0sbr311rjtttvipJNOik2bNsXs2bOjoaHBOlE2+/btiw9/+MORUoqlS5dWepwDOuRfdjn66KNj8ODB+336YPv27TF69OgKTdV3XHrppXHPPffEypUr45hjjiltHz16dLz00kuxc+fObscPtHXbsGFD7NixI97xjndEdXV1VFdXx0MPPRQ/+MEPorq6Ourr661TRIwZMyZOPPHEbttOOOGEePbZZyMiSmsx0P8//MpXvhLz5s2Lj370ozFx4sT4+Mc/Hl/+8pejtbU1IqzTgfRkTUaPHh07duzotv8///lPvPDCCwNu3V4Jj2eeeSbuv//+0lWPiL61Tod8fNTU1MSpp54aK1asKG3r6uqKFStWxNSpUys4WWWllOLSSy+NZcuWxQMPPBBNTU3d9p966qlx2GGHdVu3zZs3x7PPPjug1u3ss8+OP/7xj7Fp06bSbdKkSTFjxozSf1uniGnTpu33Ue0nn3wyjj322IiIaGpqitGjR3dbp2KxGGvWrBlQ67R3794YNKj7j93BgwdHV1dXRFinA+nJmkydOjV27twZGzZsKB3zwAMPRFdXV0yZMiX7zJXySnhs2bIlfvvb38bIkSO77e9T65T17a0Vcscdd6RCoZBuvvnm9Oc//zl99rOfTcOHD09tbW2VHq1ivvCFL6S6urr04IMPpr/97W+l2969e0vHfP7zn09jx45NDzzwQFq/fn2aOnVqmjp1agWn7hv++9MuKVmnlF5+V311dXVatGhR2rJlS7r11lvT4Ycfnn7605+Wjlm8eHEaPnx4+sUvfpH+8Ic/pAsvvPCQ/wjpq82cOTO9+c1vLn3U9q677kpHH310uuKKK0rHDMR12rVrV3r00UfTo48+miIiXXPNNenRRx8tfUqjJ2vy3ve+N51yyilpzZo1adWqVen4448/5D5q+3rr9NJLL6ULLrggHXPMMWnTpk3dfq53dHSUHqOvrNOAiI+UUvrhD3+Yxo4dm2pqatLkyZPTI488UumRKioiDni76aabSsf8+9//Tl/84hfTUUcdlQ4//PD0/ve/P/3tb3+r3NB9xKvjwzq97Je//GWaMGFCKhQKafz48en666/vtr+rqystWLAg1dfXp0KhkM4+++y0efPmCk1bGcViMV1++eVp7NixaciQIektb3lL+trXvtbtyWEgrtPKlSsP+PNo5syZKaWerck///nPdMkll6Qjjzwy1dbWplmzZqVdu3ZV4G/Te15vnbZu3fqaP9dXrlxZeoy+sk5VKf3Xr9YDAOhlh/x7PgCAvkV8AABZiQ8AICvxAQBkJT4AgKzEBwCQlfgAALISHwBAVuIDAMhKfAAAWYkPACAr8QEAZPV/qgnE9bhoJQwAAAAASUVORK5CYII=",
|
|
"text/plain": [
|
|
"<Figure size 640x480 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"plan = pd.read_csv('../../Data/tables/plan.csv', index_col=0)\n",
|
|
"durs = plan[[f'dura_{alph}{j}' for alph in ['A', 'B'] for j in range(1,9)]].values.flatten()\n",
|
|
"import numpy as np\n",
|
|
"import matplotlib.pyplot as plt\n",
|
|
"plt.hist(np.unique(durs))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 19,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/html": [
|
|
"<div>\n",
|
|
"<style scoped>\n",
|
|
" .dataframe tbody tr th:only-of-type {\n",
|
|
" vertical-align: middle;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe tbody tr th {\n",
|
|
" vertical-align: top;\n",
|
|
" }\n",
|
|
"\n",
|
|
" .dataframe thead th {\n",
|
|
" text-align: right;\n",
|
|
" }\n",
|
|
"</style>\n",
|
|
"<table border=\"1\" class=\"dataframe\">\n",
|
|
" <thead>\n",
|
|
" <tr style=\"text-align: right;\">\n",
|
|
" <th></th>\n",
|
|
" <th>node_id</th>\n",
|
|
" <th>start_unix</th>\n",
|
|
" <th>phase_sumo</th>\n",
|
|
" <th>duration</th>\n",
|
|
" <th>state</th>\n",
|
|
" <th>start_dt</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>399</th>\n",
|
|
" <td>i7</td>\n",
|
|
" <td>1704410130</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>44</td>\n",
|
|
" <td>GGrggGG</td>\n",
|
|
" <td>2024-01-05 08:15:30</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>400</th>\n",
|
|
" <td>i7</td>\n",
|
|
" <td>1704410130</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>GGrggGG</td>\n",
|
|
" <td>2024-01-05 08:15:30</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>401</th>\n",
|
|
" <td>i0</td>\n",
|
|
" <td>1704410170</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>gGGrgrrrgGGGGrgrr</td>\n",
|
|
" <td>2024-01-05 08:16:10</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>402</th>\n",
|
|
" <td>i0</td>\n",
|
|
" <td>1704410170</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>42</td>\n",
|
|
" <td>grrGgrrrgrrrrGgrr</td>\n",
|
|
" <td>2024-01-05 08:16:10</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>403</th>\n",
|
|
" <td>i0</td>\n",
|
|
" <td>1704410170</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>29</td>\n",
|
|
" <td>grrrgGGGgrrrrrgrr</td>\n",
|
|
" <td>2024-01-05 08:16:10</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>404</th>\n",
|
|
" <td>i0</td>\n",
|
|
" <td>1704410170</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>grrrgGGrgrrrrrgGr</td>\n",
|
|
" <td>2024-01-05 08:16:10</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>405</th>\n",
|
|
" <td>i0</td>\n",
|
|
" <td>1704410170</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>33</td>\n",
|
|
" <td>grrrgrrrgrrrrrgGG</td>\n",
|
|
" <td>2024-01-05 08:16:10</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>406</th>\n",
|
|
" <td>i6</td>\n",
|
|
" <td>1704410200</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>24</td>\n",
|
|
" <td>grrrgGGGrgrrgrrr</td>\n",
|
|
" <td>2024-01-05 08:16:40</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>407</th>\n",
|
|
" <td>i6</td>\n",
|
|
" <td>1704410200</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>19</td>\n",
|
|
" <td>grrrgGGGrgrrgGGr</td>\n",
|
|
" <td>2024-01-05 08:16:40</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>408</th>\n",
|
|
" <td>i6</td>\n",
|
|
" <td>1704410200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>39</td>\n",
|
|
" <td>grrrgrrrrgrrgGGG</td>\n",
|
|
" <td>2024-01-05 08:16:40</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>409</th>\n",
|
|
" <td>i6</td>\n",
|
|
" <td>1704410200</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>65</td>\n",
|
|
" <td>gGGGgrrrrgrrgrrr</td>\n",
|
|
" <td>2024-01-05 08:16:40</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>410</th>\n",
|
|
" <td>i6</td>\n",
|
|
" <td>1704410200</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>grrrgrrrrgGGgrrr</td>\n",
|
|
" <td>2024-01-05 08:16:40</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" node_id start_unix phase_sumo duration state \\\n",
|
|
"399 i7 1704410130 0 44 GGrggGG \n",
|
|
"400 i7 1704410130 1 26 GGrggGG \n",
|
|
"401 i0 1704410170 0 40 gGGrgrrrgGGGGrgrr \n",
|
|
"402 i0 1704410170 1 42 grrGgrrrgrrrrGgrr \n",
|
|
"403 i0 1704410170 2 29 grrrgGGGgrrrrrgrr \n",
|
|
"404 i0 1704410170 3 26 grrrgGGrgrrrrrgGr \n",
|
|
"405 i0 1704410170 4 33 grrrgrrrgrrrrrgGG \n",
|
|
"406 i6 1704410200 0 24 grrrgGGGrgrrgrrr \n",
|
|
"407 i6 1704410200 1 19 grrrgGGGrgrrgGGr \n",
|
|
"408 i6 1704410200 2 39 grrrgrrrrgrrgGGG \n",
|
|
"409 i6 1704410200 3 65 gGGGgrrrrgrrgrrr \n",
|
|
"410 i6 1704410200 4 23 grrrgrrrrgGGgrrr \n",
|
|
"\n",
|
|
" start_dt \n",
|
|
"399 2024-01-05 08:15:30 \n",
|
|
"400 2024-01-05 08:15:30 \n",
|
|
"401 2024-01-05 08:16:10 \n",
|
|
"402 2024-01-05 08:16:10 \n",
|
|
"403 2024-01-05 08:16:10 \n",
|
|
"404 2024-01-05 08:16:10 \n",
|
|
"405 2024-01-05 08:16:10 \n",
|
|
"406 2024-01-05 08:16:40 \n",
|
|
"407 2024-01-05 08:16:40 \n",
|
|
"408 2024-01-05 08:16:40 \n",
|
|
"409 2024-01-05 08:16:40 \n",
|
|
"410 2024-01-05 08:16:40 "
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"sigtable = histid.copy()\n",
|
|
"sigtable['init_state'] = sigtable['node_id'].map(node2init)\n",
|
|
"for i, row in sigtable.iterrows():\n",
|
|
" node_id = row.node_id\n",
|
|
" inc_edge_A = row.inc_edge_A\n",
|
|
" inc_edge_B = row.inc_edge_B\n",
|
|
" out_edge_A = row.out_edge_A\n",
|
|
" out_edge_B = row.out_edge_B\n",
|
|
" state = copy.deepcopy(node2init)[node_id]\n",
|
|
"\n",
|
|
" if pd.isna(inc_edge_A) or pd.isna(out_edge_A):\n",
|
|
" continue\n",
|
|
" else:\n",
|
|
" inc_edge_A = net.getEdge(inc_edge_A)\n",
|
|
" out_edge_A = net.getEdge(out_edge_A)\n",
|
|
" for conn in inc_edge_A.getConnections(out_edge_A):\n",
|
|
" index = conn.getTLLinkIndex()\n",
|
|
" if index >= 0:\n",
|
|
" state[index] = 'G'\n",
|
|
" sigtable.at[i, 'state'] = ''.join(state)\n",
|
|
"\n",
|
|
" if pd.isna(inc_edge_B) or pd.isna(out_edge_B):\n",
|
|
" continue\n",
|
|
" else:\n",
|
|
" inc_edge_B = net.getEdge(inc_edge_B)\n",
|
|
" out_edge_B = net.getEdge(out_edge_B)\n",
|
|
" for conn in inc_edge_B.getConnections(out_edge_B):\n",
|
|
" index = conn.getTLLinkIndex()\n",
|
|
" if index >= 0:\n",
|
|
" state[index] = 'G'\n",
|
|
" sigtable.at[i, 'state'] = ''.join(state)\n",
|
|
"sigtable = sigtable.dropna(subset='state')\n",
|
|
"sigtable = sigtable.reset_index(drop=True)\n",
|
|
"sigtable['phase_sumo'] = sigtable.groupby(['node_id', 'start_unix']).cumcount()\n",
|
|
"sigtable = sigtable[['node_id', 'start_unix', 'phase_sumo', 'duration', 'state']]\n",
|
|
"sigtable = sigtable.sort_values(by=['start_unix', 'node_id'])\n",
|
|
"sigtable_dt = sigtable.copy()[sigtable.start_unix >= fmins[m]-360]\n",
|
|
"sigtable_dt['start_dt'] = sigtable_dt['start_unix'].apply(lambda x:datetime.fromtimestamp(x))\n",
|
|
"sigtable_dt = sigtable_dt[sigtable_dt.node_id!='i9']\n",
|
|
"sigtable_dt = sigtable_dt[sigtable_dt.node_id!='i2']\n",
|
|
"display(sigtable_dt)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 8,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"3380\n",
|
|
"2024-01-05 08:15:00\n",
|
|
"2024-01-05 08:20:00\n",
|
|
"2024-01-05 08:17:00\n",
|
|
"2024-01-05 07:20:40\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"print(sigtable.start_unix.max() - sigtable.start_unix.min())\n",
|
|
"print(datetime.fromtimestamp(fmins[m - 1]))\n",
|
|
"print(datetime.fromtimestamp(fmins[m]))\n",
|
|
"print(datetime.fromtimestamp(sigtable.start_unix.max()))\n",
|
|
"print(datetime.fromtimestamp(sigtable.start_unix.min()))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 9,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"sigtable1 = sigtable.copy()\n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"['i0', 'i1', 'i2', 'i3', 'i6', 'i7', 'i8', 'i9']"
|
|
]
|
|
},
|
|
"execution_count": 7,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"sorted(sigtable.node_id.unique())"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"strings = ['<tlLogics>\\n']\n",
|
|
"for key, group in sigtable.groupby(['start_unix', 'node_id']):\n",
|
|
" start_unix = key[0]\n",
|
|
" node_id = key[1]\n",
|
|
" strings.append(f' <tlLogic id=\"{node_id}\" type=\"traffic_light\" programID=\"{key}\" offset=\"{start_unix}\">\\n')\n",
|
|
" for i, row in group.iterrows():\n",
|
|
" duration = row.duration\n",
|
|
" state = row.state\n",
|
|
" strings.append(f' <phase duration=\"{duration}\" state=\"{state}\"/>\\n')\n",
|
|
" strings.append(' </tlLogic>\\n')\n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"<tlLogics>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704403210, 'i6')\" offset=\"1704403210\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403210, 'i9')\" offset=\"1704403210\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403220, 'i3')\" offset=\"1704403220\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704403230, 'i2')\" offset=\"1704403230\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704403250, 'i1')\" offset=\"1704403250\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704403270, 'i0')\" offset=\"1704403270\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704403320, 'i7')\" offset=\"1704403320\">\n",
|
|
" <phase duration=\"33\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403350, 'i9')\" offset=\"1704403350\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403360, 'i3')\" offset=\"1704403360\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704403360, 'i6')\" offset=\"1704403360\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704403400, 'i1')\" offset=\"1704403400\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704403430, 'i0')\" offset=\"1704403430\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704403440, 'i7')\" offset=\"1704403440\">\n",
|
|
" <phase duration=\"33\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403490, 'i9')\" offset=\"1704403490\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403500, 'i3')\" offset=\"1704403500\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704403510, 'i6')\" offset=\"1704403510\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704403550, 'i1')\" offset=\"1704403550\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704403590, 'i0')\" offset=\"1704403590\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403630, 'i9')\" offset=\"1704403630\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403640, 'i3')\" offset=\"1704403640\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704403660, 'i6')\" offset=\"1704403660\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704403700, 'i1')\" offset=\"1704403700\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704403750, 'i0')\" offset=\"1704403750\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403770, 'i9')\" offset=\"1704403770\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403780, 'i3')\" offset=\"1704403780\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704403810, 'i8')\" offset=\"1704403810\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704403850, 'i1')\" offset=\"1704403850\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704403910, 'i0')\" offset=\"1704403910\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403910, 'i9')\" offset=\"1704403910\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403920, 'i3')\" offset=\"1704403920\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704403950, 'i8')\" offset=\"1704403950\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704403980, 'i2')\" offset=\"1704403980\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404000, 'i1')\" offset=\"1704404000\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704404050, 'i9')\" offset=\"1704404050\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704404060, 'i3')\" offset=\"1704404060\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704404070, 'i0')\" offset=\"1704404070\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404090, 'i8')\" offset=\"1704404090\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404130, 'i2')\" offset=\"1704404130\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404150, 'i1')\" offset=\"1704404150\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704404200, 'i3')\" offset=\"1704404200\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404230, 'i8')\" offset=\"1704404230\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404280, 'i2')\" offset=\"1704404280\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404300, 'i1')\" offset=\"1704404300\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704404340, 'i3')\" offset=\"1704404340\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404370, 'i8')\" offset=\"1704404370\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404430, 'i2')\" offset=\"1704404430\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404450, 'i1')\" offset=\"1704404450\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704404480, 'i3')\" offset=\"1704404480\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404510, 'i8')\" offset=\"1704404510\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404580, 'i2')\" offset=\"1704404580\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404600, 'i1')\" offset=\"1704404600\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404650, 'i8')\" offset=\"1704404650\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704404710, 'i6')\" offset=\"1704404710\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404730, 'i2')\" offset=\"1704404730\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404750, 'i1')\" offset=\"1704404750\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404790, 'i8')\" offset=\"1704404790\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404880, 'i2')\" offset=\"1704404880\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404900, 'i1')\" offset=\"1704404900\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704404900, 'i3')\" offset=\"1704404900\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404930, 'i8')\" offset=\"1704404930\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704405040, 'i3')\" offset=\"1704405040\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704405070, 'i8')\" offset=\"1704405070\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704405160, 'i6')\" offset=\"1704405160\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704405210, 'i8')\" offset=\"1704405210\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704405310, 'i6')\" offset=\"1704405310\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704405330, 'i2')\" offset=\"1704405330\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704405350, 'i1')\" offset=\"1704405350\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704405460, 'i3')\" offset=\"1704405460\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704405550, 'i9')\" offset=\"1704405550\">\n",
|
|
" <phase duration=\"47\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704405600, 'i3')\" offset=\"1704405600\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"0\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704405630, 'i8')\" offset=\"1704405630\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704405713, 'i9')\" offset=\"1704405713\">\n",
|
|
" <phase duration=\"45\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704405740, 'i3')\" offset=\"1704405740\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704405780, 'i6')\" offset=\"1704405780\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"65\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704405790, 'i7')\" offset=\"1704405790\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704405790, 'i8')\" offset=\"1704405790\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704405800, 'i2')\" offset=\"1704405800\">\n",
|
|
" <phase duration=\"40\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"25\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"34\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704405820, 'i1')\" offset=\"1704405820\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"93\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704405870, 'i9')\" offset=\"1704405870\">\n",
|
|
" <phase duration=\"52\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704405900, 'i3')\" offset=\"1704405900\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704405930, 'i7')\" offset=\"1704405930\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704405950, 'i6')\" offset=\"1704405950\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"65\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704405950, 'i8')\" offset=\"1704405950\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704405970, 'i2')\" offset=\"1704405970\">\n",
|
|
" <phase duration=\"40\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"25\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"34\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704405990, 'i1')\" offset=\"1704405990\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"93\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704406050, 'i9')\" offset=\"1704406050\">\n",
|
|
" <phase duration=\"46\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704406060, 'i3')\" offset=\"1704406060\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704406070, 'i7')\" offset=\"1704406070\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704406110, 'i8')\" offset=\"1704406110\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704406120, 'i6')\" offset=\"1704406120\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"65\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704406140, 'i2')\" offset=\"1704406140\">\n",
|
|
" <phase duration=\"40\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"25\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"34\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704406160, 'i1')\" offset=\"1704406160\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"93\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704406210, 'i7')\" offset=\"1704406210\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704406210, 'i9')\" offset=\"1704406210\">\n",
|
|
" <phase duration=\"46\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704406220, 'i3')\" offset=\"1704406220\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704406270, 'i8')\" offset=\"1704406270\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704406310, 'i2')\" offset=\"1704406310\">\n",
|
|
" <phase duration=\"40\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"25\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"34\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704406330, 'i1')\" offset=\"1704406330\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"93\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704406350, 'i7')\" offset=\"1704406350\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704406370, 'i9')\" offset=\"1704406370\">\n",
|
|
" <phase duration=\"46\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704406380, 'i3')\" offset=\"1704406380\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704406430, 'i8')\" offset=\"1704406430\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704406480, 'i2')\" offset=\"1704406480\">\n",
|
|
" <phase duration=\"40\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"25\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"34\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704406490, 'i7')\" offset=\"1704406490\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704406500, 'i1')\" offset=\"1704406500\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"93\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704406540, 'i3')\" offset=\"1704406540\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704406590, 'i8')\" offset=\"1704406590\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704406630, 'i7')\" offset=\"1704406630\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
"</tlLogics>\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"strings = ['<tlLogics>\\n']\n",
|
|
"for key, group in sigtable.groupby(['start_unix', 'node_id']):\n",
|
|
" start_unix = key[0]\n",
|
|
" node_id = key[1]\n",
|
|
" strings.append(f' <tlLogic id=\"{node_id}\" type=\"traffic_light\" programID=\"{key}\" offset=\"{start_unix}\">\\n')\n",
|
|
" for i, row in group.iterrows():\n",
|
|
" duration = row.duration\n",
|
|
" state = row.state\n",
|
|
" strings.append(f' <phase duration=\"{duration}\" state=\"{state}\"/>\\n')\n",
|
|
" strings.append(' </tlLogic>\\n')\n",
|
|
"strings.append('</tlLogics>')\n",
|
|
"strings = ''.join(strings)\n",
|
|
"# 저장\n",
|
|
"path_output = '../../Data/networks/SN_sample.tll.xml'\n",
|
|
"with open(path_output, 'w') as f:\n",
|
|
" f.write(strings)\n",
|
|
"print(strings)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"<tlLogics>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704403210, 'i6')\" offset=\"1704403210\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403210, 'i9')\" offset=\"1704403210\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403220, 'i3')\" offset=\"1704403220\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704403230, 'i2')\" offset=\"1704403230\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704403250, 'i1')\" offset=\"1704403250\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704403270, 'i0')\" offset=\"1704403270\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704403320, 'i7')\" offset=\"1704403320\">\n",
|
|
" <phase duration=\"33\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403350, 'i9')\" offset=\"1704403350\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403360, 'i3')\" offset=\"1704403360\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704403360, 'i6')\" offset=\"1704403360\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704403400, 'i1')\" offset=\"1704403400\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704403430, 'i0')\" offset=\"1704403430\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704403440, 'i7')\" offset=\"1704403440\">\n",
|
|
" <phase duration=\"33\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403490, 'i9')\" offset=\"1704403490\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403500, 'i3')\" offset=\"1704403500\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704403510, 'i6')\" offset=\"1704403510\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704403550, 'i1')\" offset=\"1704403550\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704403590, 'i0')\" offset=\"1704403590\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403630, 'i9')\" offset=\"1704403630\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403640, 'i3')\" offset=\"1704403640\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704403660, 'i6')\" offset=\"1704403660\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704403700, 'i1')\" offset=\"1704403700\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704403750, 'i0')\" offset=\"1704403750\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403770, 'i9')\" offset=\"1704403770\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403780, 'i3')\" offset=\"1704403780\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704403810, 'i8')\" offset=\"1704403810\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704403850, 'i1')\" offset=\"1704403850\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704403910, 'i0')\" offset=\"1704403910\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704403910, 'i9')\" offset=\"1704403910\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704403920, 'i3')\" offset=\"1704403920\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704403950, 'i8')\" offset=\"1704403950\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704403980, 'i2')\" offset=\"1704403980\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404000, 'i1')\" offset=\"1704404000\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704404050, 'i9')\" offset=\"1704404050\">\n",
|
|
" <phase duration=\"39\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704404060, 'i3')\" offset=\"1704404060\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i0\" type=\"traffic_light\" programID=\"(1704404070, 'i0')\" offset=\"1704404070\">\n",
|
|
" <phase duration=\"37\" state=\"gGGrgrrrgGGGGrgrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrGgrrrgrrrrGgrr\"/>\n",
|
|
" <phase duration=\"25\" state=\"grrrgGGGgrrrrrgrr\"/>\n",
|
|
" <phase duration=\"30\" state=\"grrrgGGrgrrrrrgGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrgrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404090, 'i8')\" offset=\"1704404090\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404130, 'i2')\" offset=\"1704404130\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404150, 'i1')\" offset=\"1704404150\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704404200, 'i3')\" offset=\"1704404200\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404230, 'i8')\" offset=\"1704404230\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404280, 'i2')\" offset=\"1704404280\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404300, 'i1')\" offset=\"1704404300\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704404340, 'i3')\" offset=\"1704404340\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404370, 'i8')\" offset=\"1704404370\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404430, 'i2')\" offset=\"1704404430\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404450, 'i1')\" offset=\"1704404450\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704404480, 'i3')\" offset=\"1704404480\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404510, 'i8')\" offset=\"1704404510\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404580, 'i2')\" offset=\"1704404580\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404600, 'i1')\" offset=\"1704404600\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404650, 'i8')\" offset=\"1704404650\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704404710, 'i6')\" offset=\"1704404710\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404730, 'i2')\" offset=\"1704404730\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404750, 'i1')\" offset=\"1704404750\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404790, 'i8')\" offset=\"1704404790\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704404880, 'i2')\" offset=\"1704404880\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704404900, 'i1')\" offset=\"1704404900\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704404900, 'i3')\" offset=\"1704404900\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704404930, 'i8')\" offset=\"1704404930\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704405040, 'i3')\" offset=\"1704405040\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704405070, 'i8')\" offset=\"1704405070\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704405160, 'i6')\" offset=\"1704405160\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704405210, 'i8')\" offset=\"1704405210\">\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"24\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"17\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"17\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704405310, 'i6')\" offset=\"1704405310\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"29\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"56\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"22\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704405330, 'i2')\" offset=\"1704405330\">\n",
|
|
" <phase duration=\"36\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"20\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"26\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704405350, 'i1')\" offset=\"1704405350\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"73\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704405460, 'i3')\" offset=\"1704405460\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704405550, 'i9')\" offset=\"1704405550\">\n",
|
|
" <phase duration=\"47\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704405600, 'i3')\" offset=\"1704405600\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"0\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704405630, 'i8')\" offset=\"1704405630\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704405713, 'i9')\" offset=\"1704405713\">\n",
|
|
" <phase duration=\"45\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704405740, 'i3')\" offset=\"1704405740\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704405780, 'i6')\" offset=\"1704405780\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"65\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704405790, 'i7')\" offset=\"1704405790\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704405790, 'i8')\" offset=\"1704405790\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704405800, 'i2')\" offset=\"1704405800\">\n",
|
|
" <phase duration=\"40\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"25\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"34\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704405820, 'i1')\" offset=\"1704405820\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"93\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704405870, 'i9')\" offset=\"1704405870\">\n",
|
|
" <phase duration=\"52\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704405900, 'i3')\" offset=\"1704405900\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704405930, 'i7')\" offset=\"1704405930\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704405950, 'i6')\" offset=\"1704405950\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"65\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704405950, 'i8')\" offset=\"1704405950\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704405970, 'i2')\" offset=\"1704405970\">\n",
|
|
" <phase duration=\"40\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"25\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"34\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704405990, 'i1')\" offset=\"1704405990\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"93\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704406050, 'i9')\" offset=\"1704406050\">\n",
|
|
" <phase duration=\"46\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704406060, 'i3')\" offset=\"1704406060\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704406070, 'i7')\" offset=\"1704406070\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704406110, 'i8')\" offset=\"1704406110\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i6\" type=\"traffic_light\" programID=\"(1704406120, 'i6')\" offset=\"1704406120\">\n",
|
|
" <phase duration=\"24\" state=\"grrrgGGGrgrrgrrr\"/>\n",
|
|
" <phase duration=\"19\" state=\"grrrgGGGrgrrgGGr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrgrrrrgrrgGGG\"/>\n",
|
|
" <phase duration=\"65\" state=\"gGGGgrrrrgrrgrrr\"/>\n",
|
|
" <phase duration=\"23\" state=\"grrrgrrrrgGGgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704406140, 'i2')\" offset=\"1704406140\">\n",
|
|
" <phase duration=\"40\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"25\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"34\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704406160, 'i1')\" offset=\"1704406160\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"93\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704406210, 'i7')\" offset=\"1704406210\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704406210, 'i9')\" offset=\"1704406210\">\n",
|
|
" <phase duration=\"46\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704406220, 'i3')\" offset=\"1704406220\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704406270, 'i8')\" offset=\"1704406270\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704406310, 'i2')\" offset=\"1704406310\">\n",
|
|
" <phase duration=\"40\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"25\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"34\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704406330, 'i1')\" offset=\"1704406330\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"93\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704406350, 'i7')\" offset=\"1704406350\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i9\" type=\"traffic_light\" programID=\"(1704406370, 'i9')\" offset=\"1704406370\">\n",
|
|
" <phase duration=\"46\" state=\"GGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704406380, 'i3')\" offset=\"1704406380\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704406430, 'i8')\" offset=\"1704406430\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i2\" type=\"traffic_light\" programID=\"(1704406480, 'i2')\" offset=\"1704406480\">\n",
|
|
" <phase duration=\"40\" state=\"GGggGGG\"/>\n",
|
|
" <phase duration=\"25\" state=\"rrggrrr\"/>\n",
|
|
" <phase duration=\"34\" state=\"rrggGGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704406490, 'i7')\" offset=\"1704406490\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i1\" type=\"traffic_light\" programID=\"(1704406500, 'i1')\" offset=\"1704406500\">\n",
|
|
" <phase duration=\"37\" state=\"gGGGGGrgrr\"/>\n",
|
|
" <phase duration=\"93\" state=\"grrGGGGgrr\"/>\n",
|
|
" <phase duration=\"40\" state=\"grrrrrrgGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i3\" type=\"traffic_light\" programID=\"(1704406540, 'i3')\" offset=\"1704406540\">\n",
|
|
" <phase duration=\"38\" state=\"gGGGrgrrrrgGGGrgrrrr\"/>\n",
|
|
" <phase duration=\"39\" state=\"grrrGgrrrrgrrrGgrrrr\"/>\n",
|
|
" <phase duration=\"42\" state=\"grrrrgrrrrgrrrrgGGGG\"/>\n",
|
|
" <phase duration=\"21\" state=\"grrrrgGGGGgrrrrgrrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i8\" type=\"traffic_light\" programID=\"(1704406590, 'i8')\" offset=\"1704406590\">\n",
|
|
" <phase duration=\"30\" state=\"grrrrrrrgGGGgrrr\"/>\n",
|
|
" <phase duration=\"36\" state=\"grrrrrrrgrrrgGGG\"/>\n",
|
|
" <phase duration=\"18\" state=\"grrrGGGrgrrrgGGr\"/>\n",
|
|
" <phase duration=\"58\" state=\"grrrGGGGgrrrgrrr\"/>\n",
|
|
" <phase duration=\"18\" state=\"gGGGrrrrgrrrgrrr\"/>\n",
|
|
" </tlLogic>\n",
|
|
" <tlLogic id=\"i7\" type=\"traffic_light\" programID=\"(1704406630, 'i7')\" offset=\"1704406630\">\n",
|
|
" <phase duration=\"44\" state=\"GGrggGG\"/>\n",
|
|
" <phase duration=\"26\" state=\"GGrggGG\"/>\n",
|
|
" </tlLogic>\n",
|
|
"</tlLogics>\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"strings = ['<tlLogics>\\n']\n",
|
|
"for key, group in sigtable.groupby(['start_unix', 'node_id']):\n",
|
|
" start_unix = key[0]\n",
|
|
" node_id = key[1]\n",
|
|
" strings.append(f' <tlLogic id=\"{node_id}\" type=\"traffic_light\" programID=\"{key}\" offset=\"{start_unix}\">\\n')\n",
|
|
" for i, row in group.iterrows():\n",
|
|
" duration = row.duration\n",
|
|
" state = row.state\n",
|
|
" strings.append(f' <phase duration=\"{duration}\" state=\"{state}\"/>\\n')\n",
|
|
" strings.append(' </tlLogic>\\n')\n",
|
|
"strings.append('</tlLogics>')\n",
|
|
"strings = ''.join(strings)\n",
|
|
"# 저장\n",
|
|
"path_output = '../../Data/networks/SN_sample.tll.xml'\n",
|
|
"with open(path_output, 'w') as f:\n",
|
|
" f.write(strings)\n",
|
|
"print(strings)"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "rts",
|
|
"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.8.10"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 2
|
|
}
|