|
|
|
아주 상세하게는 생각해놓지 못했습니다. 대략적으로 다음과 같습니다.
|
|
|
|
(1) 이전 과정에서 5분 단위로 통합테이블 A가 만들어집니다. A는 첨부하는 그림처럼 생겼습니다.
|
|
- 열이름 : 시작유닉스, 교차로번호, A현시번호, B현시번호, 현시시간, 진입ID_A, 진입ID_B, 진출ID_A, 진출ID_B
|
|
|
|
(2) 교차로-노드ID 매칭 테이블을 가져와서 통합테이블 A의 교차로번호를 노드ID로 변환하여 새로운 열 "노드ID"를 만듭니다. 기존의 "교차로번호" 열은 삭제합니다.
|
|
|
|
(3) 통합테이블 A에 "신호"열을 만들고 "rrrrrrrrrrrrrr"을 부여합니다. (r을 이동류의 개수만큼 반복해 만듭니다.)
|
|
|
|
(4) 비보호우회전을 g로 부여합니다.
|
|
- 어떤 이동류와도 상충(Foe)이 일어나지 않는 이동류에 대해서는 g를 부여 (서로 같은 이동류이거나 진출id가 같은 이동류도 arefoes=True로 되는데, 이 경우는 제외)
|
|
- 어떤 이동류와도 상충이 일어나지는 않지만, (진입ID, 진출ID)가 존재하는 경우에는 r을 부여
|
|
|
|
(5) (진입ID, 진출ID) 조합에 해당되는 이동류에 G를 부여합니다.
|
|
|
|
(6) 적색, 황색시간을 고려하여 더 세부적으로 통합테이블을 만듭니다. (통합테이블 B)
|
|
- 이전 통합테이블 B에서는 (A현시번호, B현시번호)가 (1,1), (2,2), (3,3), (3,4), (4,4)와 같은 식으로 되어있었습니다. 이것을 (1r,1r),(1g,1g),(1y,1y),(2r,2r),(2g,2g),(2y,2y),(3r,3r),(3g,3g),(3y,3y),(3r,4r),(3g,3g),(3y,4y),(4r,4r),(4g,4g),(4y,4y)로 늘립니다. 이때, 진입ID의 값 네 개와 "교차로번호", "시작유닉스"는 이전 값과 그대로 두고, "현시시간"은 적색시간과 황색시간을 고려하여 재선정합니다. "신호"도 r, g, y를 고려하여 재선정합니다.
|
|
- 예를 들어, 통합테이블 A가
|
|
1704384400, i0, 1, 1, 37, -571542797_02, -571500487_01, 571500487_01, 571542797_02, grrgGGGgrrgGG
|
|
1704384400, i0, 2, 2, 39, -571500487_01, -571542797_02, 571545870_01, 571510153_01, gGGgrrrgGGgrr
|
|
이었으면 이것을
|
|
1704384400, i0, 1r, 1r, 1, -571542797_02, -571500487_01, 571500487_01, 571542797_02, grrgrrrgrrgrr
|
|
1704384400, i0, 1g, 1g, 32, -571542797_02, -571500487_01, 571500487_01, 571542797_02, grrgGGGgrrgGG
|
|
1704384400, i0, 1y, 1y, 4, -571542797_02, -571500487_01, 571500487_01, 571542797_02, grrgyyygrrgyy
|
|
1704384400, i0, 2r, 2r, 1, -571500487_01, -571542797_02, 571545870_01, 571510153_01, grrgrrrgrrgrr
|
|
1704384400, i0, 2g, 2g, 34, -571500487_01, -571542797_02, 571545870_01, 571510153_01, gGGgrrrgGGgrr
|
|
1704384400, i0, 2y, 2y, 4, -571500487_01, -571542797_02, 571545870_01, 571510153_01, gyygrrrgyygrr
|
|
로 바꾸는 식입니다. 이 테이블을 통합테이블 B라고 하겠습니다.
|
|
|
|
(7) 통합테이블 B에 새로운 열 "상세현시번호"을 만들고 다음과 같이 값을 부여합니다.
|
|
- 통합테이블 B의 각각의 ("시작유닉스", "노드ID") 에 대하여 차례로 0,1,2, ... 로 부여합니다.
|
|
- ex : "시작유닉스" = 1704384400 "노드ID" = i0 인 경우, (1r,1r),(1g,1g),(1y,1y),(2r,2r),(2g,2g),(2y,2y),(3r,3r),(3g,3g),(3y,3y),(3r,4r),(3g,3g),(3y,4y),(4r,4r),(4g,4g),(4y,4y)가 총 15개이므로 0,1,2, ..., 14로 부여합니다.
|
|
|
|
(8) 통합테이블 B에서 "시작유닉스", "노드ID", "상세현시번호", "현시시간", "신호"만 남기고 모두 삭제합니다. 이 테이블을 통합테이블 C라고 하겠습니다.
|
|
1704384400, i0, 0, 1, grrgrrrgrrgrr
|
|
1704384400, i0, 1, 32, grrgGGGgrrgGG
|
|
1704384400, i0, 2, 4, grrgyyygrrgyy
|
|
1704384400, i0, 3, 1, grrgrrrgrrgrr
|
|
1704384400, i0, 4, 34, gGGgrrrgGGgrr
|
|
1704384400, i0, 5, 4, gyygrrrgyygrr
|
|
: :
|
|
|
|
(9) 통합테이블 C를 토대로 tll.xml 파일을 만듭니다.
|
|
- 이에 대한 상세한 사항은 아직 생각하지 못했습니다.
|