SlideShare uma empresa Scribd logo
1 de 30
황색봉투 수거 차량 경로 최적화
Based on CVRP
팀 : 노란선
Prof : 김재곤 교수님
Student :201401212 고필식
201401240 유인하
201401261 김승환
201602459 김예림
Date : 06.24.2020
CONTENTS
01
02
03
회사소개
문제점및해결방안
과정
결과
 소개
 연혁
 현재회사문제및목적
 해결방안
 VRP란?
 전반적인실행과정
 CPLEX결과
 Excel결과
 결과비교
 최적화값과실제가정경로값과의비교
04
결론
 과제개발성과
 보완해야할점
05
001
회사 소개
01 회사 소개
소개
1.
2.
 가정, 상가, 사무실 건설폐기물, 인
테리어 폐기물 및 사업장에서 발생
되는 폐기물을 수집, 운반, 처리하는
전문기업
 인천 미추홀구 염전로 201번길 72
01 회사 소개
연혁
002
문제점 및
해결방안 ?
02 문제점 및 해결방안
기존 문제 및 목적
황색 봉투란?
• 황색봉투는 고무, 가죽, 이불, 인형, 신발, 가방 등 가연성 폐기물을 봉투에 담아서 버릴 때 사용하는 봉투
• 각 지역별로 버리는 날짜가 정해져 있다.
• 쓰레기 봉투를 버릴 때 동사무소나 회사(동아 ent)에 전화를 하여 신고 해야 한다.
02 문제점 및 해결방안
기존 문제 및 목적
데이터 형태
데이터를
요일별로 분리
차량 지정
구역별 분리
지도에 위치
표시 후 수거
1호차에 리스트 전달
2호차에 리스트 전달
3호차에 리스트 전달
현재 회사에서 이루어지는 작업
황색봉투 발생지 엑셀에 날짜별 정리
다음날 수거 해야 할 리스트 정리
차량마다 정해진 구역별로 리스트 분리
차량운전자는 받은 리스트를 지도에
표시 후 작업 실시
엑셀을 정리하는 과정, 차량 운전사가 지도에 표시하는 작업, 감으로 수거 순서를 정해 수거하는 과정은
많은 시간을 소모한다. 그래서 우리는 알고리즘을 통해 작업과정 시간을 줄이고 경로 최적화로 수거 시간을
줄이는데 목적이 있다.
모든 과정은 직원이 진행
해결 방안
데이터 형태
데이터를
요일별로 분리
차량 지정
구역별 분리
지도에 위치
표시 후 수거
파이썬을 통해 직업과정 단축
파이썬을 통한 과정
요일별 데이터 분리
API를 통해 경도 위도 탐색
API를 통해 각 노드당 거리, 시간 탐색
CVRP 알고리즘을 통해 최적경로 탐색
차량별로 수거 순서를 제공
현재 구현된 과정
요일별 데이터 분리
국토교통부 API를 통해 경도 위도 탐색
Bing Map API를 통해 각 노드당 거리, 시간 탐색
CVRP CPLEX ver(in python), Excel ver 통해 최적경로 탐색
T Map API를 통해 차량별로 수거 순서를 지도 표시 후 제공
파이썬
파이썬
excel
파이썬
JAVA
excel
통일 되지 못한 과정으로 약간의 노동이 필요
탐색 과정 전 작업은 매우 빠르나 최적경로 탐색 과정은 2시간 소요.
02 문제점 및 해결방안
003
과정
VRP란?
차량경로문제(Vehicle Routing Problem ;VRP)는 거점(depot)에서 출발한 차량이 배달
(delivery)이나 수집(pick-up) 등의 서비스를 요구하는 고객(customer)을 특정한 순서대로
방문하고 다시 거점으로 돌아오는 최소 비용의 경로를 결정하는 문제이다.
CVRP (Capacitated Vehicle Routing Problem)
:기존 VRP에서 차량별 용량의 제약식을 포함하는 문제로서 각 차량별로 용량이 있고 이
용량을 초과해서는 안됨.
CVRP를 사용하는 이유
: 각 차량별로 용량의 한계가 있고 용량이 중요한 제약사항 중 하나이기 때문에 CVRP를
쓰기에 적합함.
03 과정
데이터
03 과정
1 2 3 4 5 6 7
접수 날짜1
2
3
4
5
6
7
접수장소 (빈칸이면 회사)
도로명 주소
동
번지
전화번호
기타 (상세 위치, 수거용량)
• 동마다 황색봉투 수거 요일이 정해져 있고 일주일에 2번 로테이션이 됩니다. Ex) 월, 목
• 고객이 버리는 날이 랜덤이기 때문에 수거하는 날 수거하러갈 장소를 정리할 필요가 있습니다.
Ex) 4월 4일 수거리스트를 뽑기위해 4월 1일~3일 접수 리스트에서 4월4일에 해당하는 수거 동을 추출합니다.
• 번지가 잘못 입력되어있거나 도로명 주소가 잘못 적혀있는 경우가 있기 때문에 경도 위도 찾을 때 두 주소를 반영합니다.
• 황색봉투 용량 신고가 필수가 아니기 아니기 때문에 회사에서 황색봉투 수거량 데이터를 받아 고객당 평균 황색봉투 용량을
계산했습니다.
03 과정
요일별 데이터 분리
접수된 날짜로 구성된 종합 데이터 Ex) 4월 16일 처리해야할 수거 리스트 (13,14,15일 반영)
Ex) 4월 17일 처리해야할 수거 리스트 (14,15,16일 반영)
파이썬으로 한번에 처리
월, 목 용현2동, 용현3동, 용현1.4동, 주안1동, 주안2동, 주안4동
화, 금 주안3동, 주안6동, 주안7동, 주안8동, 도화2.3동, 문학동
수, 토 숭의1.3동, 숭의2동, 숭의4동, 주안5동, 도화1동, 학익1동, 학익2동, 관교동
3일마다 로테이션
03 과정
경도, 위도 탐색
국토교통부 무료 API를 이용
아래 사진과같이 결측치 탐색하여 주소를 잘못 입력한 결측치는 삭제
실제 상황에서는 연락처에 연락하여 주소 수정이 필요!
번지 or 도로명 주소를 이용하여 검색하였다.(둘 중 하나가 잘못 입력되었거나 없는 상황 반영)
경도 위도 추가
03 과정
각노드 사이 거리시간 탐색
Bing Map 무료 API를 이용
i j
Distance
Duration
i: 0~n
j : 0~n
0 = 회사
N = 고객 수
Excel을 통해 구함. Python에서 이용하기 위해 거리, 시간 저장
03 과정
CVRP 알고리즘을 통해 최적경로 탐색
Excel Solver 이용
최적 경로 총 이동거리 총 이동시간 용량
03 과정
Excel Solver Formulation
정점 세트
회사(depot)
고객
방문해야 하는 고객
차량 k의 경로 (i, j)
누적 소비자 요구량
이동거리
백홀 제약의 유무
차량 k의 경로 i
차량 용량
소비자 요구량
Minimize
차량의 고객에 대한 방문 규칙을 설정하는 제약 조건
제약 조건 (2)는 모든 고객을 최대 한 번 방문하도록 한다.
제약 조건 (3)은 반드시 방문해야 하는 고객을 방문한다.
제한 조건 (4)는 차량 k의 출발지와 이 차량이 방문한 고객
사이의 연결성을 제공한다.
목적 함수 (1)은 총 이동거리 합의 최소이다.
고객 요구 사항을 설정하는 제약 조건
제약 조건 (5)와 (6)은 픽업 상품에 대한 제약조건.
차량과 관련된 제한 사항
제약 조건 (7)은 차량 용량 위반을 금지한다.
제약조건 (8)은 depot에서 고객 j로 가는 경로는 1개다
제약조건 (9)은 모든 고객을 한번만 방문한다.
03 과정
CVRP 알고리즘을 통해 최적경로 탐색
CPLEX 이용
경로의 일부
총 이동 거리
총 이동 시간
경로
03 과정
CPLEX Formulation
추가 제약식 : i에서 h로, h에서 j로 가는 것은 한 경로에 있
다.
=> 이 제약식을 추가한 것과 추가 안 한 것을 각각 돌려 무
엇이 더 나은 결과값이 나오는지 비교함.
기존 목적식은 이동거리 합 최소로 엑셀 솔버와 같다.
변경 가능한 목적식 → (1) 시간의 합 최소,
→ (2) 거리와 시간의 합 최소
(1)
(2)
n : 고객의 수
N : 고객의 집합
V : 노드의 집합
A : i와 j 경로의 집합
Q : 차량 용량
𝑞𝑖 : i의 소비자 요구량
𝑢𝑖 : i까지 누적된 소비자 요구량
𝑥𝑖𝑗 : N에 속해 있으면 1, 아니면 0
𝑐𝑖𝑗 : i와 j 경로의 이동거리
𝑡𝑖𝑗 : i와 j 경로의 이동시간
03 과정
차량별로 수거 순서를 제공
T Map API 이용
차량별로 수거 순서를 지도에 표시
실시간 교통을 지속적으로 반영해줌
실제 자동차가 다니는 최적화 경로를 지도에 표시
했다는 점에서 의의가 있음
어플과 연동시 네비게이션 안내가 가능
004
결과
04 결과
CPLEX 결과
목적식 16일 결과값
추가제약식x 추가제약식o
거리최소 거리 104.5 104.468
시간 0.1896 0.184
시간 최소 거리 116.868 127.933
시간 0.1785 0.2076
거리시간
최소
거리 99.323 107.843
시간 0.1722 0.1896
목적식 17일 결과값
추가제약식x 추가제약식o
거리 최소 거리 64.057 69.443
시간 0.135416667 0.147916667
시간 최소 거리 73.083 74.104
시간 0.124305556 0.129861111
거리시간
최소
거리 65.094 67.824
시간 0.138194444 0.144444444
▲추가제약식 유무에 따라 세 가지 목적식을 각각 적용하여 실행한 결과값
목적식이 거리와 시간 합의 최소일 때 가장 좋은 결과가 나옴
04 결과
Excel 결과
거리 93.8
시간 0.16736111
거리 60.41
시간 0.11875
16일 17일
04 결과
결과 비교
CPLEX
EXCEL
SOLVER
16일 거리 99.323 93.8
시간 0.1722 0.16736111
17일 거리 64.057 60.41
시간 0.13541667 0.11875
데이터의 양이 적을 때는 CPLEX의 결과값이 좋았지만
데이터의 양이 많을 때는 Excel Solver의 결과값이 좋게 나옴
프로그램 하나로 통일하기 위해서Cplex 개선의 필요가 있음
러닝타임2시간
04 결과
최적화 값과 실제 가정경로 값과의 비교 - 16일
Ex)차량V5
차량 가정거리 실제거리 가정시간 실제시간
V1 27861 13189
약 25.7% 감소
5510 2793
약 19.5% 감소
V2 32747 10402 6041 2138
V3 22089 12076 3903 2461
V4 16291 14711 3097 2744
V5 12248 13101 2631 2684
V6 20223 23263 4047 5688
V7 14067 20714 2825 3577
합 145526 107456 28054 22085
최적경로 가정경로(현재진행중인수거방식)
04 결과
최적화 값과 실제 가정경로 값과의 비교-17일
차량 가정거리 최적거리 가정시간 최적시간
V1 20603 10937
약 14.5%감소
4531 2197
약 15.3% 감소
V2 26430 20833 5747 4498
V3 27251 21947 5566 4413
V4 10874 19157 2286 4248
합 85158 72874 18130 15356
Ex)차량V3
최적경로 가정경로(현재진행중인수거방식)
005
결론
05 결론
과제 개발 성과
성과
• 회사에서 요청한대로 요일별로 데이터를 분리하는 작업을 파이썬 코딩으로 진행했다.
• 국토교통부 API를 이용하여 주소를 경도, 위도로 변경하여 받을 수 있었다.
• Bing Map API를 통해서 각 고객 사이의 거리, 시간 데이터를 받을 수 있었다.
• CPLEX를 통해 CVRP 제약식을 구성하고 최적의 경로(경로 순서와 개수)를 받을 수 있었다.
• T Map API를 통해 전 과정에서 얻은 최적의 경로를 실시간 교통을 반영하여 지도에 표시할 수 있었다.
기대효과
1. 개발한 알고리즘을 통해 직원의 노동 강도와 업무 시간을 줄일 수 있다.
2. 차량 경로 최적으로 황색봉투 수거시간 단축을 기대할 수 있다.
3. 다른 제한된 용량이 있는 최적 경로 문제에 활용할 수 있다.
05 결론
보완해야할 점
보완해야할 점
- CPLEX의 경우 데이터 사이즈가 클 때 Excel Solver보다 결과값이 약간 좋지 못함
- T Map API를 이용하여 지점 간 연결을 직선으로 표현하는 것에 대해 문제를 보완했지만
무료버전에 경유지 횟수 제한이 있음
- 무료 API이용의 한계로 알고리즘을 하나에 통합하여 실행하지 못한 문제
보완 이후 얻을 수 있는 효과
- 알고리즘 통일과 한번 실행으로 결과까지 받을 수 있음
- 개발한 알고리즘 이용으로 업무의 간소화, 업무 정확성 증가, 비용 절약, 의사결정속도 향상
- 최적의 경로 문제를 해결해야 하는 분야(택배 배달, 기타 여러 장소를 하는 업체)에 응용, 확대 가능
- 알고리즘 이용 방법을 단순화하여 상품화하고 다중 경로 문제를 가지고 있는 분야에 이용 촉구
감사합니다

Mais conteúdo relacionado

Semelhante a 최종 3조 황색봉투_수거차량_최적화

20100114 발표5번 지하철승차대기라인변경 영진천새마을운동(수정)
20100114 발표5번 지하철승차대기라인변경 영진천새마을운동(수정)20100114 발표5번 지하철승차대기라인변경 영진천새마을운동(수정)
20100114 발표5번 지하철승차대기라인변경 영진천새마을운동(수정)olivia19
 
회사소개서(중국해운제출용 국문)
회사소개서(중국해운제출용 국문)회사소개서(중국해운제출용 국문)
회사소개서(중국해운제출용 국문)진영 박
 
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료Sonia Lee
 
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료 2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료 D.CAMP
 
인수테스트 주도 개발
인수테스트 주도 개발인수테스트 주도 개발
인수테스트 주도 개발Jaehoon Oh
 
Prediction of bus riders at the time of departure
Prediction of bus riders at the time of departurePrediction of bus riders at the time of departure
Prediction of bus riders at the time of departureHWANGTAEYONG
 
[대학내일20대연구소] [데이터플러스] 소비-O2O(9월)
[대학내일20대연구소] [데이터플러스] 소비-O2O(9월)[대학내일20대연구소] [데이터플러스] 소비-O2O(9월)
[대학내일20대연구소] [데이터플러스] 소비-O2O(9월)20slab(대학내일20대연구소)
 
서비스 디자인
서비스 디자인서비스 디자인
서비스 디자인Ye Eun Park
 
서울 버스 디지털 노선도 기획에서 UI, UX, UT
서울 버스 디지털 노선도 기획에서 UI, UX, UT서울 버스 디지털 노선도 기획에서 UI, UX, UT
서울 버스 디지털 노선도 기획에서 UI, UX, UTM&M Networks
 
카루라이브 커넥티드카 서비스 플랫폼 소개 v2.4
카루라이브 커넥티드카 서비스 플랫폼 소개 v2.4카루라이브 커넥티드카 서비스 플랫폼 소개 v2.4
카루라이브 커넥티드카 서비스 플랫폼 소개 v2.4Dong-il Chang
 
[6조] 유비쿼터스 u taxi
[6조] 유비쿼터스 u taxi[6조] 유비쿼터스 u taxi
[6조] 유비쿼터스 u taxiKwang-soo Park
 
최적화 모델을 이용한 카페 위치 선정 제안
최적화 모델을 이용한 카페 위치 선정 제안최적화 모델을 이용한 카페 위치 선정 제안
최적화 모델을 이용한 카페 위치 선정 제안Yurim Kim
 
중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.
중국고속철도 및 역사 디스플레이 광고(中国高铁广告)  2015 Ver.중국고속철도 및 역사 디스플레이 광고(中国高铁广告)  2015 Ver.
중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.Bryden Kim
 
에브리타요_INU 버스 타요!
에브리타요_INU 버스 타요!에브리타요_INU 버스 타요!
에브리타요_INU 버스 타요!GAINHONG
 
중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.
중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.
중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.Bryden Kim
 
이병철의 개발자 포트폴리오
이병철의 개발자 포트폴리오이병철의 개발자 포트폴리오
이병철의 개발자 포트폴리오Lee ByeongCheol
 
빅데이터 캠퍼스 컨퍼런스 자료집(2016.7.14)
빅데이터 캠퍼스 컨퍼런스 자료집(2016.7.14)빅데이터 캠퍼스 컨퍼런스 자료집(2016.7.14)
빅데이터 캠퍼스 컨퍼런스 자료집(2016.7.14)bigdatacampus
 
천안시 수요대응형 대중교통분석 및 신규노선 제안
천안시 수요대응형 대중교통분석 및 신규노선 제안천안시 수요대응형 대중교통분석 및 신규노선 제안
천안시 수요대응형 대중교통분석 및 신규노선 제안YunSeul Lee
 

Semelhante a 최종 3조 황색봉투_수거차량_최적화 (20)

20100114 발표5번 지하철승차대기라인변경 영진천새마을운동(수정)
20100114 발표5번 지하철승차대기라인변경 영진천새마을운동(수정)20100114 발표5번 지하철승차대기라인변경 영진천새마을운동(수정)
20100114 발표5번 지하철승차대기라인변경 영진천새마을운동(수정)
 
회사소개서(중국해운제출용 국문)
회사소개서(중국해운제출용 국문)회사소개서(중국해운제출용 국문)
회사소개서(중국해운제출용 국문)
 
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료
 
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료 2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료
2015년 7월의 D.PARTY_오토팩토리 박신영 이사 발표 자료
 
인수테스트 주도 개발
인수테스트 주도 개발인수테스트 주도 개발
인수테스트 주도 개발
 
Flood
FloodFlood
Flood
 
Prediction of bus riders at the time of departure
Prediction of bus riders at the time of departurePrediction of bus riders at the time of departure
Prediction of bus riders at the time of departure
 
[대학내일20대연구소] [데이터플러스] 소비-O2O(9월)
[대학내일20대연구소] [데이터플러스] 소비-O2O(9월)[대학내일20대연구소] [데이터플러스] 소비-O2O(9월)
[대학내일20대연구소] [데이터플러스] 소비-O2O(9월)
 
서비스 디자인
서비스 디자인서비스 디자인
서비스 디자인
 
서울 버스 디지털 노선도 기획에서 UI, UX, UT
서울 버스 디지털 노선도 기획에서 UI, UX, UT서울 버스 디지털 노선도 기획에서 UI, UX, UT
서울 버스 디지털 노선도 기획에서 UI, UX, UT
 
카루라이브 커넥티드카 서비스 플랫폼 소개 v2.4
카루라이브 커넥티드카 서비스 플랫폼 소개 v2.4카루라이브 커넥티드카 서비스 플랫폼 소개 v2.4
카루라이브 커넥티드카 서비스 플랫폼 소개 v2.4
 
[6조] 유비쿼터스 u taxi
[6조] 유비쿼터스 u taxi[6조] 유비쿼터스 u taxi
[6조] 유비쿼터스 u taxi
 
최적화 모델을 이용한 카페 위치 선정 제안
최적화 모델을 이용한 카페 위치 선정 제안최적화 모델을 이용한 카페 위치 선정 제안
최적화 모델을 이용한 카페 위치 선정 제안
 
중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.
중국고속철도 및 역사 디스플레이 광고(中国高铁广告)  2015 Ver.중국고속철도 및 역사 디스플레이 광고(中国高铁广告)  2015 Ver.
중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.
 
에브리타요_INU 버스 타요!
에브리타요_INU 버스 타요!에브리타요_INU 버스 타요!
에브리타요_INU 버스 타요!
 
지하철알리미 공모전경험담 및 팁 (이민석)
지하철알리미 공모전경험담 및 팁 (이민석)지하철알리미 공모전경험담 및 팁 (이민석)
지하철알리미 공모전경험담 및 팁 (이민석)
 
중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.
중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.
중국고속철도 및 역사 디스플레이 광고(中国高铁广告) 2015 Ver.
 
이병철의 개발자 포트폴리오
이병철의 개발자 포트폴리오이병철의 개발자 포트폴리오
이병철의 개발자 포트폴리오
 
빅데이터 캠퍼스 컨퍼런스 자료집(2016.7.14)
빅데이터 캠퍼스 컨퍼런스 자료집(2016.7.14)빅데이터 캠퍼스 컨퍼런스 자료집(2016.7.14)
빅데이터 캠퍼스 컨퍼런스 자료집(2016.7.14)
 
천안시 수요대응형 대중교통분석 및 신규노선 제안
천안시 수요대응형 대중교통분석 및 신규노선 제안천안시 수요대응형 대중교통분석 및 신규노선 제안
천안시 수요대응형 대중교통분석 및 신규노선 제안
 

최종 3조 황색봉투_수거차량_최적화

  • 1. 황색봉투 수거 차량 경로 최적화 Based on CVRP 팀 : 노란선 Prof : 김재곤 교수님 Student :201401212 고필식 201401240 유인하 201401261 김승환 201602459 김예림 Date : 06.24.2020
  • 2. CONTENTS 01 02 03 회사소개 문제점및해결방안 과정 결과  소개  연혁  현재회사문제및목적  해결방안  VRP란?  전반적인실행과정  CPLEX결과  Excel결과  결과비교  최적화값과실제가정경로값과의비교 04 결론  과제개발성과  보완해야할점 05
  • 4. 01 회사 소개 소개 1. 2.  가정, 상가, 사무실 건설폐기물, 인 테리어 폐기물 및 사업장에서 발생 되는 폐기물을 수집, 운반, 처리하는 전문기업  인천 미추홀구 염전로 201번길 72
  • 7. 02 문제점 및 해결방안 기존 문제 및 목적 황색 봉투란? • 황색봉투는 고무, 가죽, 이불, 인형, 신발, 가방 등 가연성 폐기물을 봉투에 담아서 버릴 때 사용하는 봉투 • 각 지역별로 버리는 날짜가 정해져 있다. • 쓰레기 봉투를 버릴 때 동사무소나 회사(동아 ent)에 전화를 하여 신고 해야 한다.
  • 8. 02 문제점 및 해결방안 기존 문제 및 목적 데이터 형태 데이터를 요일별로 분리 차량 지정 구역별 분리 지도에 위치 표시 후 수거 1호차에 리스트 전달 2호차에 리스트 전달 3호차에 리스트 전달 현재 회사에서 이루어지는 작업 황색봉투 발생지 엑셀에 날짜별 정리 다음날 수거 해야 할 리스트 정리 차량마다 정해진 구역별로 리스트 분리 차량운전자는 받은 리스트를 지도에 표시 후 작업 실시 엑셀을 정리하는 과정, 차량 운전사가 지도에 표시하는 작업, 감으로 수거 순서를 정해 수거하는 과정은 많은 시간을 소모한다. 그래서 우리는 알고리즘을 통해 작업과정 시간을 줄이고 경로 최적화로 수거 시간을 줄이는데 목적이 있다. 모든 과정은 직원이 진행
  • 9. 해결 방안 데이터 형태 데이터를 요일별로 분리 차량 지정 구역별 분리 지도에 위치 표시 후 수거 파이썬을 통해 직업과정 단축 파이썬을 통한 과정 요일별 데이터 분리 API를 통해 경도 위도 탐색 API를 통해 각 노드당 거리, 시간 탐색 CVRP 알고리즘을 통해 최적경로 탐색 차량별로 수거 순서를 제공 현재 구현된 과정 요일별 데이터 분리 국토교통부 API를 통해 경도 위도 탐색 Bing Map API를 통해 각 노드당 거리, 시간 탐색 CVRP CPLEX ver(in python), Excel ver 통해 최적경로 탐색 T Map API를 통해 차량별로 수거 순서를 지도 표시 후 제공 파이썬 파이썬 excel 파이썬 JAVA excel 통일 되지 못한 과정으로 약간의 노동이 필요 탐색 과정 전 작업은 매우 빠르나 최적경로 탐색 과정은 2시간 소요. 02 문제점 및 해결방안
  • 11. VRP란? 차량경로문제(Vehicle Routing Problem ;VRP)는 거점(depot)에서 출발한 차량이 배달 (delivery)이나 수집(pick-up) 등의 서비스를 요구하는 고객(customer)을 특정한 순서대로 방문하고 다시 거점으로 돌아오는 최소 비용의 경로를 결정하는 문제이다. CVRP (Capacitated Vehicle Routing Problem) :기존 VRP에서 차량별 용량의 제약식을 포함하는 문제로서 각 차량별로 용량이 있고 이 용량을 초과해서는 안됨. CVRP를 사용하는 이유 : 각 차량별로 용량의 한계가 있고 용량이 중요한 제약사항 중 하나이기 때문에 CVRP를 쓰기에 적합함. 03 과정
  • 12. 데이터 03 과정 1 2 3 4 5 6 7 접수 날짜1 2 3 4 5 6 7 접수장소 (빈칸이면 회사) 도로명 주소 동 번지 전화번호 기타 (상세 위치, 수거용량) • 동마다 황색봉투 수거 요일이 정해져 있고 일주일에 2번 로테이션이 됩니다. Ex) 월, 목 • 고객이 버리는 날이 랜덤이기 때문에 수거하는 날 수거하러갈 장소를 정리할 필요가 있습니다. Ex) 4월 4일 수거리스트를 뽑기위해 4월 1일~3일 접수 리스트에서 4월4일에 해당하는 수거 동을 추출합니다. • 번지가 잘못 입력되어있거나 도로명 주소가 잘못 적혀있는 경우가 있기 때문에 경도 위도 찾을 때 두 주소를 반영합니다. • 황색봉투 용량 신고가 필수가 아니기 아니기 때문에 회사에서 황색봉투 수거량 데이터를 받아 고객당 평균 황색봉투 용량을 계산했습니다.
  • 13. 03 과정 요일별 데이터 분리 접수된 날짜로 구성된 종합 데이터 Ex) 4월 16일 처리해야할 수거 리스트 (13,14,15일 반영) Ex) 4월 17일 처리해야할 수거 리스트 (14,15,16일 반영) 파이썬으로 한번에 처리 월, 목 용현2동, 용현3동, 용현1.4동, 주안1동, 주안2동, 주안4동 화, 금 주안3동, 주안6동, 주안7동, 주안8동, 도화2.3동, 문학동 수, 토 숭의1.3동, 숭의2동, 숭의4동, 주안5동, 도화1동, 학익1동, 학익2동, 관교동 3일마다 로테이션
  • 14. 03 과정 경도, 위도 탐색 국토교통부 무료 API를 이용 아래 사진과같이 결측치 탐색하여 주소를 잘못 입력한 결측치는 삭제 실제 상황에서는 연락처에 연락하여 주소 수정이 필요! 번지 or 도로명 주소를 이용하여 검색하였다.(둘 중 하나가 잘못 입력되었거나 없는 상황 반영) 경도 위도 추가
  • 15. 03 과정 각노드 사이 거리시간 탐색 Bing Map 무료 API를 이용 i j Distance Duration i: 0~n j : 0~n 0 = 회사 N = 고객 수 Excel을 통해 구함. Python에서 이용하기 위해 거리, 시간 저장
  • 16. 03 과정 CVRP 알고리즘을 통해 최적경로 탐색 Excel Solver 이용 최적 경로 총 이동거리 총 이동시간 용량
  • 17. 03 과정 Excel Solver Formulation 정점 세트 회사(depot) 고객 방문해야 하는 고객 차량 k의 경로 (i, j) 누적 소비자 요구량 이동거리 백홀 제약의 유무 차량 k의 경로 i 차량 용량 소비자 요구량 Minimize 차량의 고객에 대한 방문 규칙을 설정하는 제약 조건 제약 조건 (2)는 모든 고객을 최대 한 번 방문하도록 한다. 제약 조건 (3)은 반드시 방문해야 하는 고객을 방문한다. 제한 조건 (4)는 차량 k의 출발지와 이 차량이 방문한 고객 사이의 연결성을 제공한다. 목적 함수 (1)은 총 이동거리 합의 최소이다. 고객 요구 사항을 설정하는 제약 조건 제약 조건 (5)와 (6)은 픽업 상품에 대한 제약조건. 차량과 관련된 제한 사항 제약 조건 (7)은 차량 용량 위반을 금지한다. 제약조건 (8)은 depot에서 고객 j로 가는 경로는 1개다 제약조건 (9)은 모든 고객을 한번만 방문한다.
  • 18. 03 과정 CVRP 알고리즘을 통해 최적경로 탐색 CPLEX 이용 경로의 일부 총 이동 거리 총 이동 시간 경로
  • 19. 03 과정 CPLEX Formulation 추가 제약식 : i에서 h로, h에서 j로 가는 것은 한 경로에 있 다. => 이 제약식을 추가한 것과 추가 안 한 것을 각각 돌려 무 엇이 더 나은 결과값이 나오는지 비교함. 기존 목적식은 이동거리 합 최소로 엑셀 솔버와 같다. 변경 가능한 목적식 → (1) 시간의 합 최소, → (2) 거리와 시간의 합 최소 (1) (2) n : 고객의 수 N : 고객의 집합 V : 노드의 집합 A : i와 j 경로의 집합 Q : 차량 용량 𝑞𝑖 : i의 소비자 요구량 𝑢𝑖 : i까지 누적된 소비자 요구량 𝑥𝑖𝑗 : N에 속해 있으면 1, 아니면 0 𝑐𝑖𝑗 : i와 j 경로의 이동거리 𝑡𝑖𝑗 : i와 j 경로의 이동시간
  • 20. 03 과정 차량별로 수거 순서를 제공 T Map API 이용 차량별로 수거 순서를 지도에 표시 실시간 교통을 지속적으로 반영해줌 실제 자동차가 다니는 최적화 경로를 지도에 표시 했다는 점에서 의의가 있음 어플과 연동시 네비게이션 안내가 가능
  • 22. 04 결과 CPLEX 결과 목적식 16일 결과값 추가제약식x 추가제약식o 거리최소 거리 104.5 104.468 시간 0.1896 0.184 시간 최소 거리 116.868 127.933 시간 0.1785 0.2076 거리시간 최소 거리 99.323 107.843 시간 0.1722 0.1896 목적식 17일 결과값 추가제약식x 추가제약식o 거리 최소 거리 64.057 69.443 시간 0.135416667 0.147916667 시간 최소 거리 73.083 74.104 시간 0.124305556 0.129861111 거리시간 최소 거리 65.094 67.824 시간 0.138194444 0.144444444 ▲추가제약식 유무에 따라 세 가지 목적식을 각각 적용하여 실행한 결과값 목적식이 거리와 시간 합의 최소일 때 가장 좋은 결과가 나옴
  • 23. 04 결과 Excel 결과 거리 93.8 시간 0.16736111 거리 60.41 시간 0.11875 16일 17일
  • 24. 04 결과 결과 비교 CPLEX EXCEL SOLVER 16일 거리 99.323 93.8 시간 0.1722 0.16736111 17일 거리 64.057 60.41 시간 0.13541667 0.11875 데이터의 양이 적을 때는 CPLEX의 결과값이 좋았지만 데이터의 양이 많을 때는 Excel Solver의 결과값이 좋게 나옴 프로그램 하나로 통일하기 위해서Cplex 개선의 필요가 있음 러닝타임2시간
  • 25. 04 결과 최적화 값과 실제 가정경로 값과의 비교 - 16일 Ex)차량V5 차량 가정거리 실제거리 가정시간 실제시간 V1 27861 13189 약 25.7% 감소 5510 2793 약 19.5% 감소 V2 32747 10402 6041 2138 V3 22089 12076 3903 2461 V4 16291 14711 3097 2744 V5 12248 13101 2631 2684 V6 20223 23263 4047 5688 V7 14067 20714 2825 3577 합 145526 107456 28054 22085 최적경로 가정경로(현재진행중인수거방식)
  • 26. 04 결과 최적화 값과 실제 가정경로 값과의 비교-17일 차량 가정거리 최적거리 가정시간 최적시간 V1 20603 10937 약 14.5%감소 4531 2197 약 15.3% 감소 V2 26430 20833 5747 4498 V3 27251 21947 5566 4413 V4 10874 19157 2286 4248 합 85158 72874 18130 15356 Ex)차량V3 최적경로 가정경로(현재진행중인수거방식)
  • 28. 05 결론 과제 개발 성과 성과 • 회사에서 요청한대로 요일별로 데이터를 분리하는 작업을 파이썬 코딩으로 진행했다. • 국토교통부 API를 이용하여 주소를 경도, 위도로 변경하여 받을 수 있었다. • Bing Map API를 통해서 각 고객 사이의 거리, 시간 데이터를 받을 수 있었다. • CPLEX를 통해 CVRP 제약식을 구성하고 최적의 경로(경로 순서와 개수)를 받을 수 있었다. • T Map API를 통해 전 과정에서 얻은 최적의 경로를 실시간 교통을 반영하여 지도에 표시할 수 있었다. 기대효과 1. 개발한 알고리즘을 통해 직원의 노동 강도와 업무 시간을 줄일 수 있다. 2. 차량 경로 최적으로 황색봉투 수거시간 단축을 기대할 수 있다. 3. 다른 제한된 용량이 있는 최적 경로 문제에 활용할 수 있다.
  • 29. 05 결론 보완해야할 점 보완해야할 점 - CPLEX의 경우 데이터 사이즈가 클 때 Excel Solver보다 결과값이 약간 좋지 못함 - T Map API를 이용하여 지점 간 연결을 직선으로 표현하는 것에 대해 문제를 보완했지만 무료버전에 경유지 횟수 제한이 있음 - 무료 API이용의 한계로 알고리즘을 하나에 통합하여 실행하지 못한 문제 보완 이후 얻을 수 있는 효과 - 알고리즘 통일과 한번 실행으로 결과까지 받을 수 있음 - 개발한 알고리즘 이용으로 업무의 간소화, 업무 정확성 증가, 비용 절약, 의사결정속도 향상 - 최적의 경로 문제를 해결해야 하는 분야(택배 배달, 기타 여러 장소를 하는 업체)에 응용, 확대 가능 - 알고리즘 이용 방법을 단순화하여 상품화하고 다중 경로 문제를 가지고 있는 분야에 이용 촉구