본문 바로가기

전체 글71

헷갈려서.. 정리하는 파이썬 자료구조 파이썬은 기본적으로 기본 자료형과 NumPy, Pandas 자료구조가 있다. 1. 리스트(list)a = [3.4, 5.4, 6.6] - 순서 있음- 수정 가능- 쉼표로 구분- Python 기본 자료형 2. 튜플(tuple)a = (3.4, 5.4, 6.6) - 순서 있음- 수정 불가 3. 딕셔너리(dict)a = {105: 5, 112: 6} - 105 → 5, 112 → 6- key (즉, 105, 112)로 value (5, 6)을 찾음- 순서가 본질은 아님 4. NumPy 배열(array)a = np.array([3.4, 5.4, 6.6]) - 벡터/행렬 계산 빠름- 수학 연산 가능- 사실상 "수치 벡터"- 2차원도 가능np.array([[1,2], [3,4]]) 5. Pandas 시리즈.. 2026. 5. 18.
[SUMO Study - Traci] 차량의 Platooning을 관여하는 simpla SUMO에 정말 아쉬운 한가지가 있다.선행차량의 종류에 따라 Dynamic한 car-following model이 지원이 안된다는 것이다. VISSIM에는 Driving behavior에 선행차량에 따라 다른 Car-following을 적용할 수 있는 설정이 내장되어 있다. SUMO에도 당연히 있을 줄 알고 들어왔는데 그러지 않아 오랜 시간 당황했었다.(혹시 내가 놓친게 있나 생각하고 이곳 저곳 찾아보기도 했는데, 결론은 "내장된 설정은 없다" 였다) 다행히 Traci에서 Simpla라는 모듈이 있으니, 이걸 잘 활용해서 내가 원하는 시뮬레이션을 구현해보고자 한다.그 전에 Simpla라는 것이 무엇인지를 파악해보자. (아래 SUMO 홈페이지를 참고하여 공부하였다)https://sumo.dlr.de/doc.. 2024. 4. 29.
[SUMO Study] sumocfg (SUMO configuration) SUMO 시뮬레이션을 수행하기 위해 sumocfg 파일을 반드시 작성해야 한다. SUMO를 sumo(cmd 방식)으로 돌리든, sumo-gui(gui 방식)으로 돌리든 sumocfg 파일이 정의되어 있어야만 한다. sumocfg 파일- Input: 네트워크 파일, Route 파일(차량 종류 및 대수 등), Additional 파일(rerouting, loop detector 등), ...- Output: 시뮬레이션 결과 파일(다양한 결과에 대한 명령어가 있다)- Time: 시뮬레이션 시작(begin) 및 끝(end) 시간 설정, 시뮬레이션 step(1초당 몇번 진행되는지) 정의- Processing: 시뮬레이션에서 어떠한 상황이 발생했을 때, 어떻게 해야할지에 대해 정의- Routing: 차량들.. 2024. 4. 24.
[SUMO Study] Loop Detector 만들어 교통량 측정하기 시뮬레이션을 수행하고 나면, 얼만큼의 차량이 해당 도로를 통과하였는지, 속도는 몇 km/h였는지 확인할 필요가 있다. 이를 측정하기 위해 가장 간단한 Loop detector(루프 검지기)를 설치하는 방법을 알아보고자 한다. netedit로 Loop detector를 설치하는 방법이 있을 것(?)으로 생각되지만, 보다 더 간단하게 add.xml 파일을 만들어서 설치하도록 하자. 먼저 아래와 같이 길이가 3km인 2차로 고속도로가 있다고 가정하자. (Edge 아이디: 상류부 100m: entry, 하류부 2900m: exit) add.xml 파일을 만들어 아래 코드를 입력한다. (Loop detector를 "exit" 라는 Edge에 도입한다는 코드) 도입하고 나면, 아래 Loop detector가 해당 .. 2024. 4. 22.