การปรับเส้นทางสำหรับยานพาหนะหลายคัน


12

ฉันมี 100 จุดหมายปลายทางและ 5 ยานพาหนะและฉันต้องการรหัสโซลูชันที่มีประสิทธิภาพเส้นทางยานพาหนะไปยังแต่ละปลายทางดังนั้นแต่ละปลายทางถูกเยี่ยมชมโดยหนึ่งในยานพาหนะ จุดหมายเหล่านี้บางแห่งอาจมีหน้าต่างเวลาที่จะต้องไปเยี่ยมชมในระหว่างนั้นเช่นกัน

ฉันใช้ PostgreSQL และ PostGIS และกำลังมองหาที่จะใช้ pgrouting แต่ฉันไม่แน่ใจว่ามันเหมาะสำหรับยานพาหนะหลายคัน - จากความรู้ที่ จำกัด ของฉันเกี่ยวกับ Dijkstra ฯลฯ ฉันคิดว่าพวกเขาออกแบบมาสำหรับยานพาหนะคันเดียว

ความคิดใด ๆ เกี่ยวกับว่าการเริ่มต้นอย่างรวดเร็วสามารถแก้ปัญหานี้ได้หรือไม่และหากเป็นเช่นนั้นตัวอย่างรหัสใด ๆ หากไม่มีมีทางเลือกโอเพนซอร์ซที่สามารถทำได้หรือไม่?


ฉันมีความต้องการคล้าย ๆ กันกับคุณ ฉันกำลังดำเนินธุรกิจ NPO NEMT (การขนส่งการแพทย์ฉุกเฉิน) เราจำเป็นต้องขนส่งผู้ป่วยไปยังการนัดหมายของพวกเขาด้วย windows time สำหรับรถปิคอัพหรือส่งมอบ ได้รับคำขอส่วนใหญ่ล่วงหน้าและอื่น ๆ ได้ทันที DARP ดูเหมือนจะเป็นอัลกอริทึมที่ดี คุณต้องการตัวแก้ปัญหา DARP ด้วยเหตุผลเดียวกันหรือไม่? Nick
Nick Bazzi

คำตอบ:


10

pgRouting มีฟังก์ชันที่เรียกว่าตัวแก้ปัญหา DARP (Dial-a-Ride Problem) :

ตัวแก้ปัญหาการเรียกเลขหมาย (DARP) พยายามลดต้นทุนการขนส่งในขณะที่ปฏิบัติตามข้อ จำกัด ระดับการบริการลูกค้า (การละเมิดหน้าต่างเวลาเวลารอและเวลาเดินทาง) และข้อ จำกัด ของยานพาหนะ (จำนวนรถยนต์และความจุ

เพิ่มเติมเกี่ยวกับ DARP และ pgRouting:

ที่จะใช้ฟังก์ชั่นใหม่นี้คุณจำเป็นต้องติดตั้งสาขาของ pgRouting


คำตอบของคำถามนี้ใน stackexchange อาจให้ข้อมูลเพิ่มเติม: เส้นทางอัลกอริทึมสำหรับยานพาหนะหลายหยดหลาย


ตอนแรกฉันเห็นอัลกอริธึมของ DARP แต่ถูกแปรงมากกว่าเพราะฉันไม่รู้ว่ามันสามารถใช้กับบริการจัดส่งสินค้าได้ ดูเหมือนว่าจะทำงานได้ดี! น่าเสียดายที่หน้าเอกสารไม่ได้มีตัวอย่างการใช้งานใด ๆ แต่อาจเป็นกรณีของการค้นหารหัสที่มาเพื่อดูว่ามันทำงานอย่างไร
RichW

2

pgRouting มีฟังก์ชันใหม่เพื่อแก้ปัญหา DARP: http://www.pgrouting.org/docs/1.x/darp.html


ดูประกาศบางส่วนได้ที่นี่: openvrp.com/blog/darp-algorithm-in-pgrouting
dkastl

ขอบคุณ Daniel นั่นเป็นฟังก์ชั่นที่ยอดเยี่ยมที่คุณได้สร้างไว้ ฉันไม่ได้ตระหนักว่ามันสามารถใช้เพื่อจุดประสงค์ในการจัดส่ง แต่มันก็เป็นไปได้อย่างแน่นอน ขอบคุณ!
RichW

1

แม้ว่าESRI ArcLogisticsจะไม่ตรงกับความต้องการเฉพาะของคุณในการใช้ PostGIS หรือโอเพ่นซอร์สสำหรับคนอื่น ๆ ที่อาจไม่มีทักษะการเขียนโปรแกรมหรือเวลาที่จะใช้โซลูชั่นของตนเอง แต่มันก็เป็นส่วนขยายที่ดี ArcGIS ที่ออกแบบมาเพื่อทำงานที่คุณได้อธิบายไว้

พวกเขากำลังเสนอทดลองใช้ฟรี 30 วันหากคุณต้องการทดสอบ


ฉันลงไปที่ ESRI HQ เมื่อสัปดาห์ที่แล้วเพื่อหารือเกี่ยวกับซอฟต์แวร์นี้สำหรับพวกเขา แต่ดูเหมือนว่าจะไม่ตรงกับความต้องการของเรา (ต้องทำงานบนเซิร์ฟเวอร์และยังมีราคาแพงด้วย) แม้ว่าชิ้นส่วนที่ยอดเยี่ยมของชุด!
RichW

ผลิตภัณฑ์ FleetEngine ของเราทำงานเป็นเซิร์ฟเวอร์ที่มีอินเตอร์เฟส SOAP จุดหมาย 100 แห่งรถ 5 คันและหน้าต่างเวลาเป็นความสามารถที่แน่นอน มันใกล้เคียงกับการเตรียมการผลิตติดต่อฉันเพื่อขอใบอนุญาตทดสอบ มันไม่ได้เป็นโอเพนซอร์สหรือฟรี แต่ในทางกลับกันไม่แพงเท่า ArcLogistics
Uffe Kousgaard

1
สวัสดี Uffe สามารถคำนึงถึงข้อ จำกัด ยานพาหนะ (น้ำหนักและขนาด) และจัดเรียงแพ็คเกจลงบนยานพาหนะได้หรือไม่ นอกจากนี้ยังใช้งานได้ในสหราชอาณาจักรและใช้ข้อมูลประวัติถนนเพื่อคำนวณความเร็ว ฯลฯ
RichW

ใช่ทุกคำถามของคุณ มันใช้ additons น้ำหนัก / เล่มง่าย ๆ มันไม่สามารถทำการบรรจุ 3 มิติได้ซึ่งมันจะมากเกินไปสำหรับความหวัง รองรับเครือข่ายถนนในทุกประเทศด้วยเช่นกัน แต่คุณต้องจัดหาเครือข่ายถนน น่าเสียดายที่ฉันไม่เห็นคำตอบเร็วกว่านี้ฉันคิดว่าการสนทนานี้สิ้นสุดลงแล้ว Ping ฉันที่ uffe@routeware.dk หากคุณต้องการพูดคุยเพิ่มเติม
Uffe Kousgaard
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.