🌈 컬리는 물류 최적화 문제를 어떻게 풀고 있을까? (2)

컬리나 물류 업계에선 최적화 분야의 문제를 자주 풀게 됩니다. 대표적인 스타트업인 컬리에선 물류 최적화를 어떻게 푸는지 글이 나와 공유드립니다. 저도 최적화 문제를 풀었던 경험이 있어서 흥미롭게 봤고, 과정을 잘 정리해주어요. 이 내용은 두번째 글에 대한 내용입니다! 제 프로필에 보시면 첫 글에 대한 정리도 있습니다 이번 글은 조금 더 시뮬레이션에 초점을 맞춥니다 ✨️ 추천드리고 싶은 분 - 최적화 분야에 관심이 있는 분(Operation Research 등) - 유전 알고리즘에 대해 궁금하신 분 - 시뮬레이션 과정이 궁금하신 분 내용 퀵 요약 - 가상의 물류 센터를 구축하고 실험을 통해 유전 알고리즘의 실효성을 검증한 과정 소개 - Digital Twin : 가상의 물류 센터 - 구축할 때 똑같이 구현하면 되는 부분(non-stochastic)과 확률적으로 결정되는(stochastic) 부분도 존재함 - 그룹화 - 피킹 - 분배에서 피킹은 명확한 규칙이 존재함(같은 구역에 있는 상품만 담도록 한다) - 작업자가 바구니를 얼마나 채울지는 작업자의 판단에 달려있음 -> 확률적으로 결정되는 부분 바구니를 얼마나 채워야 할까? - 바구니가 찼다는 판단을 위해 무게나 부피를 파악함. 컬리 상품들의 특징이 가볍고, 카트를 끌고 다니기에 부피가 더 중요한 정보 - 임의의 부피 값 Y를 정하고, 부피의 총합이 Y를 초과하기 전까지 바구니에 상품을 넣고 계속 반복함 부피 값의 분포 추정하기 - Y는 확률 변수고, 어떤 분포를 따르는지 알면 Y를 정해줄 수 있음 - 과거 값이 전체가 아니기에 알려진 값을 토대로 추정해야 함 - 바구니 안 상품들의 총 부피를 히스토그램으로 표현하니 Weibull 분포와 비슷함 - MLE를 활용해 분포에 적합한지 추정 - Weibull 분포에 Mixture 분포를 사용해 맞지 않는 부분을 보정함 추정된 바구니 수 vs 실제 바구니 수 - Y를 랜덤으로 뽑고, 부피의 누적합이 Y를 초과하기 전까지 바구니에 상품을 넣음 - 만들어진 바구니 수와 실제 데이터와 비교 - 변동을 잘 포착함 바구니를 얼마나 빠르게 처리해야 할까? - 처리 속도에 영향을 주는 변수 - Digital Twin 방식에 따라 몇 가지를 통제하기로 함. 바구니 안의 총 상품 수와 바구니 안의 고유 상품 수로 회귀분석을 수행함 - 통제한 상태에서 잘 계산할 수 있으며, R-squared가 0.8 이상 Digital Twin - AnyLogic을 사용해 실측 사이즈의 QPS 구현함 - 동일한 주문 그룹에 대한 총 처리 시간의 차이를 파악함 -> 하나의 그룹에 대해서 약 3% 감소 - 센터 작업자분들이 체감될 변화라고 함 실제로 적용한 후의 데이터도 있으면 좋겠네요-!

컬리는 물류 최적화 문제를 어떻게 풀고 있을까? - 2부

Kurly

컬리는 물류 최적화 문제를 어떻게 풀고 있을까? - 2부

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2022년 11월 30일 오후 12:09

댓글 0