본문 바로가기
Project

[CBB 공모전] 입지 추천 방법 고민 과정 TIL

by aimaimee 2023. 6. 20.

230530 화. 통계와 지도 시각화 비교

통계 상관분석(카이제곱검정, 크레마V)한 것과 지도 시각화 비교

→ 일치하지 않는 것이 보여서 다음 스텝이 고민이 됨.

 

230531 수. 입지 추천 방법 고민

휴리스틱 P-Median 알고리즘, Set Covering, MCLP 등이 자주 등장

→ MCLP를 위해서는 Geopandas 등을 다운 받아야 함

→ 보통 https://www.lfd.uci.edu/~gohlke/pythonlibs/#shapely 에서 GDAL, Pyproj, Fiona, Shapely, Geopandas를 받아서 설치하더라.

→ 그런데, 해당 사이트가 당시에는 PageNotFoundError여서(지금은 정상 접속됨) 구글에서 검색을 했다. 각각 다운을 받으려고 보니, whl이 아니고 tar.gz 확장자 파일이었다. 결국 tar.gz 확장자 파일 다운로드 방법을 찾아서 시도했지만, 제대로 설치되지 않았다.

 

📌 배운 것 : 'ERROR:fiona._env:Unable to open~ CPLE_OpenFailedError' 와 같은 에러가 떴는데, 지도 시각화를 할 때, shp파일만 같은 경로에 업로드를 해주는 것이 아니라 shp/shx/dbf/prj는 같은 파일명으로 같은 경로. 한세트여야지 읽어올 수 있다.

 

230601 목. MCLP 트라이

참고한 코드

1. LSCP, MCLP, P-Median, P-Center 모델을 활용한 간단한 예시 https://pysal.org/spopt/notebooks/facloc-real-world.html

2. 위의 과정을 응용한 최적입지 선정 모델 https://pysal.org/spaghetti/notebooks/facility-location.html#1.3.-Define-a-class-and-functions-for-solving-the-models-and-analyzing-the-results

3. 서울시 이동노동자 간이쉼터 최적입지선정 프로젝트

 

→ 3번 코드에서 픽셀 사이즈 에러 때문에 2번 코드의 def add_legend()는 사용하지 않았는데, 해당 부분을 사용하지 않아도 나의 경우에는 에러가 발생되어 지도에 표시가 되지 않았다.

→ 2번 코드는 함수가 굉장히 많은데, 한 개 한 개를 이해하기에 시간이 부족했고, 이해 없이 따라하자니 코드를 내 경우에 맞춰서 수정하는 것이 어려웠다.

 

230602 금. 분석 프로세스 도식화, 최적 입지 추천 간단한 코드 검색

'현황 > 활용 데이터 > 전처리 > 분석 과정 > 결과 > 시각화' 를 한 페이지에 도식화한 프로젝트를 봤는데 아주 깔끔했다. 항상 프로젝트를 하면서, 해당 과정을 목말라하지만, 어필이 부족했는지, 해당 과정은 간략하게 넘어가기 마련이라 꼭 스스로 정리해보고 싶다.

 

참고한 코드

1. 서울시 수소충전소 최적입지 선정 프로젝트 : 여러 변수들을 지도 시각화해서 비교, 회귀분석을 통해 입지선정 변수 선정 과정

2. Gurobi로 P-median 문제 풀기 : GIS, Gurobi, P-median, 최적입지 선정 등이 묶여서 자주 보여서 참고했다.

3. LSCP, MCLP를 간단한 버전부터 트라이해 본 후, 제대로 MCLP 를 돌려보고 싶었다. allagash를 import해서 최적입지선정을 구하는 방법 https://github.com/apulverizer/allagash/blob/main/src-doc/examples/LSCP.ipynb

 

230603 토. MCLP 마지막 트라이..

MLCP 변수 설정에 큰 오류가 있는 것 같다. 투기지역과 흡연구역을 고려해서 쓰레기통 위치를 추천하려고 했는데, 투기지역과 흡연구역을 도로 지도에 시각화는 잘 되지만, 두 번째 이미지처럼 추천 지역이 뽑히지 않는다.

변수 설정을 (수요 - 쓰레기통, facility - 투기지역, 흡연구역)으로 설정해야 할까?

아니면 (facility - 쓰레기통, coverage - 투기지역, 흡연구역)으로 설정해야 할까...

MCLP 를 차근차근 뜯어보고 싶어진다.

 

 

 

댓글