ในเมืองต่างๆ ทั่วโลก ผู้คนนับล้านพึ่งพาแอปอย่าง Google Maps และ Citymapper ในการเดินทางผ่านระบบขนส่งสาธารณะที่ซับซ้อน ในขณะที่โซลูชันเชิงพาณิชย์เหล่านี้ครองตลาดอยู่ ระบบนิเวศที่เต็มไปด้วยชีวิตชีวาของโครงการโอเพนซอร์สกำลังปฏิวัติวิธีการวางแผนการเดินทางของเราอย่างเงียบๆ โครงการที่ขับเคลื่อนโดยชุมชนเหล่านี้ให้ข้อได้เปรียบที่น่าประหลาดใจ ตั้งแต่การค้นหาการเชื่อมต่อการเดินทางที่ซ่อนอยู่ ไปจนถึงการให้พารามิเตอร์การกำหนดเส้นทางที่ปรับแต่งได้ ซึ่งแอปกระแสหลักมักมองข้าม
![]() |
|---|
| ภาพรวมของระบบการวางเส้นทางขนส่งสาธารณะใน London โดยเน้นรูปแบบการเดินทางที่หลากหลาย |
การปฏิวัติขนส่งสาธารณะแบบโอเพนซอร์ส
ความคิดเห็นเปิดเผยถึงจักรวาลทั้งหมดของเครื่องมือวางแผนการเดินทางแบบโอเพนซอร์สที่นักเดินทางส่วนใหญ่ไม่เคยเห็น OneBusAway ซึ่งเริ่มต้นจากโครงการปริญญาเอกของ University of Washington ตอนนี้ให้บริการการเดินทางนับล้านครั้งต่อวันในเมืองต่างๆ ตั้งแต่ Seattle ไปจนถึง Buenos Aires ในขณะเดียวกัน OpenTripPlanner ให้บริการทั้งประเทศอย่าง Norway ด้วยเครื่องมือกำหนดเส้นทางแบบ RAPTOR โครงการเหล่านี้พิสูจน์ว่าคุณไม่จำเป็นต้องมีเงินทุนจาก Silicon Valley เพื่อสร้างโซลูชันการขนส่งที่มีประสิทธิภาพ แค่มีนักพัฒนาที่ทุ่มเทและข้อมูลที่เข้าถึงได้
เราไม่สามารถใช้ Google Maps APIs ได้ ดังนั้นเราจึงเขียนอัลกอริทึมกำหนดเส้นทางแบบกำหนดเองโดยอิงจาก A* และสร้างเซิร์ฟเวอร์ Rust ขึ้นมาเพื่อโฮสต์ข้อมูล GTFS ประสิทธิภาพไม่ได้ดีนักเพราะทุกอย่างต้องรันในเครื่อง แต่มันหาเส้นทางในเมืองบ้านเกิดของฉันที่ Google Maps ไม่แสดงให้เห็น
เสน่ห์ของโครงการเหล่านี้ไม่ได้อยู่แค่การหลีกเลี่ยง API เชิงพาณิชย์เท่านั้น นักพัฒนาชื่นชอบความยืดหยุ่นในการปรับแต่งพารามิเตอร์การกำหนดเส้นทางและความพึงพอใจในการค้นพบการเชื่อมต่อที่ซ่อนอยู่ในเครือข่ายการขนส่งสาธารณะ ซึ่งแอปกระแสหลักมักมองข้าม แนวทางที่ขับเคลื่อนโดยชุมชนนี้มักนำไปสู่ความเข้าใจที่ละเอียดลึกซึ้งยิ่งขึ้นเกี่ยวกับลักษณะเฉพาะของการขนส่งในท้องถิ่น
โปรเจกต์ Transit แบบ Open Source ที่ได้รับการกล่าวถึง:
- OpenTripPlanner: เครื่องมือวางแผนการเดินทางที่พัฒนาด้วย Java โดยใช้อัลกอริทึม RAPTOR ซึ่งถูกนำไปใช้งานทั่วประเทศในนอร์เวย์
- OneBusAway: ระบบที่รองรับหลายแพลตฟอร์ม (iOS, Android, เว็บ) ให้บริการในหลายเมืองทั่วโลก
- OptiTravel: อัลกอริทึม A* แบบกำหนดเองที่มี backend เป็น Rust สำหรับข้อมูล GTFS
- GTFS Server: เซิร์ฟเวอร์ที่พัฒนาด้วย Rust สำหรับโฮสต์ข้อมูล General Transit Feed Specification
- Motis & Transitous: เครื่องมือวางแผนการเดินทางเพิ่มเติมที่ได้รับการกล่าวถึงโดยชุมชน
![]() |
|---|
| คำแนะนำที่เกี่ยวข้องกับอัลกอริทึม RAPTOR ซึ่งเป็นวิธีการสำคัญที่ใช้ในการเพิ่มประสิทธิภาพตารางเวลาการขนส่งสาธารณะ |
ความท้าทายด้านข้อมูลและโซลูชันที่สร้างสรรค์
การทำงานกับข้อมูลการขนส่งนำเสนออุปสรรคสำคัญที่นักพัฒนาโอเพนซอร์สต้องก้าวข้ามไปอย่างสร้างสรรค์ UK's Rail Data Marketplace แม้จะมีชื่อทางการที่ยอดเยี่ยมตามที่นักพัฒนาคนหนึ่งระบุ แต่ก็ให้การเข้าถึงข้อมูลการมาถึงของรถไฟแบบเรียลไทม์ฟรี ซึ่งเป็นของขวัญหายากในโลกของข้อมูลการขนส่ง อย่างไรก็ตาม นักพัฒนายังคงต่อสู้กับข้อจำกัด เช่น การไม่มี API ผู้วางแผนการเดินทางด้วยรถไฟระดับชาติฟรีสำหรับสหราชอาณาจักร
ขนาดของการประมวลผลข้อมูลนั้นมีมากมาย ตามที่ระบุไว้ในบทความเดิม ระบบขนส่งสาธารณะของ London เพียงอย่างเดียวเกี่ยวข้องกับการประมวลผลข้อมูลแบบเรียลไทม์จากเส้นทางรถโดยสารประมาณ 700 เส้นทาง เส้นทางรถไฟใต้ดิน 11 เส้นทาง และเส้นทางรถไฟ 200 เส้นทางทั่วจุดหยุดมากกว่า 33,000 แห่ง การจัดการข้อมูลปริมาณมหาศาลเช่นนี้ต้องการวิศวกรรมที่ชาญฉลาด เช่น การใช้เครื่องมือกำหนดเส้นทางโอเพนซอร์สอย่าง OSRM เพื่อคำนวณการเชื่อมต่อการเดินระหว่างจุดหยุดต่างๆ ซึ่งสามารถประมวลผลระยะทางการเดิน 1.8 ล้านรายการได้ในเวลาน้อยกว่า 15 นาที
แหล่งข้อมูลสำหรับการพัฒนาระบบขนส่งสาธารณะในสหราชอาณาจักร:
- Rail Data Marketplace: ข้อมูลเวลาขาเข้า/ขาออกของรถไฟแบบเรียลไทม์ฟรีสำหรับสถานีในสหราชอาณาจักร
- TFL API: ข้อมูลที่มีโครงสร้างสำหรับรถบัส รถไฟใต้ดิน และบริการรถไฟบางส่วนใน London
- Mobility Database: ข้อมูล GTFS สำหรับหน่วยงานขนส่งสาธารณะในสหรัฐอเมริกา
- OSRM: Open Source Routing Machine สำหรับคำนวณเส้นทางการเดินเชื่อมต่อ
- OpenStreetMap: ฐานรากสำหรับการคำนวณเส้นทางการเดิน
ผลกระทบในโลกจริงและการเติบโตของชุมชน
โครงการเหล่านี้ไม่ใช่แค่แบบฝึกหัดทางวิชาการเท่านั้น แต่มีประโยชน์ที่จับต้องได้สำหรับผู้สัญจรไปมาประจำวัน ผู้ใช้ OneBusAway รายงานว่า การติดตามรถโดยสารแบบเรียลไทม์ของแอปช่วยให้พวกเขานำทางผ่านความเป็นจริงแบบไดนามิกที่ยุ่งเหยิงของความล่าช้าจากการจราจรและการเปลี่ยนแปลงตารางเวลา ความสามารถในการเห็นว่ารถโดยสารอยู่ห่างจากป้ายของพวกเขาเท่าใด แปลงประสบการณ์การรอคอยจากความไม่แน่นอนให้กลายเป็นสิ่งที่คาดการณ์ได้
ชุมชนขนส่งสาธารณะแบบโอเพนซอร์สยังคงต้อนรับผู้มีส่วนร่วมใหม่ๆ อย่างแข็งขัน ดังที่นักพัฒนารุ่นเก่าคนหนึ่งระบุไว้ว่า หากคุณต้องการมีส่วนร่วม เข้าร่วม Slack ของเราหรือแค่ส่งอีเมลถึงผม! การเข้าถึงได้นี้ตัดกันอย่างชัดเจนกับกระบวนการพัฒนาปิดของแอปเชิงพาณิชย์ ซึ่งอนุญาตให้ผู้ที่ชื่นชอบการขนส่งในท้องถิ่นสามารถปรับปรุงเครื่องมือที่พวกเขาและเพื่อนบ้านใช้ในชีวิตประจำวันได้โดยตรง
อนาคตของการวางแผนการขนส่งสาธารณะดูเหมือนจะโน้มเอียงไปสู่ความเปิดกว้างและการทำงานร่วมกันมากขึ้น เมื่อเมืองต่างๆ ทั่วโลกทำให้ข้อมูลการขนส่งสามารถใช้ได้มากขึ้นผ่านรูปแบบมาตรฐานเช่น GTFS และเมื่อโครงการเช่น Transitland สร้าง API ที่รวมเข้าด้วยกัน across หลายหน่วยงานขนส่ง สิ่งกีดขวางในการสร้างโซลูชันการกำหนดเส้นทางแบบกำหนดเองก็ยังคงลดลง การทำให้เทคโนโลยีการขนส่งเป็นประชาธิปไตยนี้ในที่สุดก็เป็นประโยชน์กับทุกคนที่พึ่งพาการขนส่งสาธารณะในการเดินทางรอบเมืองของพวกเขา
ในขณะที่แอปเชิงพาณิชย์มีแนวโน้มที่จะยังคงครองตลาดกระแสหลักอยู่ แต่ทางเลือกแบบโอเพนซอร์สเหล่านี้ให้นวัตกรรม การปรับแต่ง และการมีส่วนร่วมของชุมชนที่สำคัญ ซึ่งคู่แข่งเชิงพาณิชย์มักขาดหายไป พวกมันเป็นตัวแทนของจักรวาลคู่ขนานของการวางแผนการขนส่งสาธารณะ ที่ซึ่งความรู้ท้องถิ่นและความเชี่ยวชาญทางเทคนิครวมกันเพื่อสร้างโซลูชันที่ปรับแต่งเฉพาะสำหรับชุมชนและความต้องการการขนส่งของพวกเขา
อ้างอิง: live public transport routing


