เปรียบเทียบจุดเข้าจอดของเรือด่วนเจ้าพระยา (5 สาย) และเรือไฟฟ้า MINE Smart Ferry (3 สาย) ครอบคลุมทุกท่าเรือ เรียงจากทิศเหนือ ➔ ทิศใต้: Complete pier stopping matrix for 5 Chao Phraya Express flags and 3 MINE Electric lines, ordered North ➔ South:
| รหัสท่าเรือ Pier Code | ชื่อท่าเรือ (Pier Name) Pier Name | จุดเชื่อมต่อรถไฟฟ้า Transit Hub Transfer | 🔴 ธงแดง 🔴 Red Flag | 🟢🟡 ธงเขียวเหลือง 🟢🟡 Green-Yellow | 🟡 ธงเหลือง (กลางวัน) 🟡 Yellow Daytime | 🟠 ธงส้ม 🟠 Orange Flag | 🟣 MINE Urban | 🔵 MINE Metro | 🟢 MINE City |
|---|---|---|---|---|---|---|---|---|---|
| N33 | ปากเกร็ดPak Kret | - | ❌ | 🛑 | ❌ | ❌ | ❌ | ❌ | ❌ |
| N31 | กระทรวงพาณิชย์Ministry of Commerce | - | ❌ | 🛑 | ❌ | ❌ | ❌ | ❌ | ❌ |
| ★ | สะพานพระนั่งเกล้าPhra Nang Klao Bridge | 🟣 MRT สายสีม่วง (PP08)MRT Purple Line (PP08) | ❌ | 🛑 | ❌ | ❌ | 🛑 (ต้นทางTerminus) | ❌ | ❌ |
| N30 | นนทบุรี (ท่าน้ำนนท์)Nonthaburi Pier | ศูนย์กลางนนทบุรีNonthaburi Hub | 🛑 | ❌ | 🛑 | 🛑 | 🛑 | 🛑 (ต้นทางTerminus) | ❌ |
| N24 | พระราม 7Rama 7 Bridge | - | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | ❌ | ❌ |
| N22 | บางโพBang Pho Pier | 🔵 MRT สายสีน้ำเงิน (BL09)MRT Blue Line (BL09) | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | ❌ |
| N18 | พายัพPayap Pier | - | ❌ | 🛑 | 🛑 | 🛑 | 🛑 | ❌ | ❌ |
| N15 | เทเวศร์Thewet Pier | - | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | ❌ |
| N13 | พระอาทิตย์ (ถนนข้าวสาร)Phra Arthit (Khaosan Rd) | - | ❌ | ❌ | 🛑 | 🛑 | ❌ | ❌ | ❌ |
| N12 | พระปิ่นเกล้าPhra Pin Klao Bridge | - | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | ❌ | 🛑 (ต้นทางTerminus) |
| N10 | พรานนก (วังหลัง)Prannok (Wang Lang) | ศิริราชSiriraj | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 |
| - | วัดอรุณฯWat Arun Pier | วัดอรุณราชวรารามWat Arun Temple | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | 🛑 |
| N8 | ท่าเตียนTha Tien Pier | - | ❌ | ❌ | 🛑 | 🛑 | 🛑 | ❌ | ❌ |
| N7 | ราชินีRajinee Pier | 🔵 MRT สนามไชย (BL28)MRT Sanam Chai (BL28) | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | ❌ | 🛑 |
| N5 | ราชวงศ์ (เยาวราช)Ratchawong (Chinatown) | - | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 |
| N3 | สี่พระยาSi Phraya Pier | ต่อเรือข้ามฟากไป ICONSIAMTransfer Ferry to ICONSIAM | ❌ | 🛑 | 🛑 | 🛑 | 🛑 | ❌ | ❌ |
| ★ | ไอคอนสยาม (ICONSIAM)ICONSIAM Pier | 🟡 BTS สายสีทอง (G2)BTS Gold Line (G2) | 🛑 | ❌ | 🛑 | 🛑 | ❌ | ❌ | 🛑 |
| CENTRAL | สาทร (สะพานตากสิน)Sathorn Central Pier | 🟢 BTS สายสีลม (S6)BTS Silom Line (S6) | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 | 🛑 |
| - | เอเชียทีคAsiatique Pier | Asiatique The Riverfront | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ⚠️ 🛑* |
การทำระบบคำนวณเส้นทางเรือโดยสารประจำทางร่วมกับรถไฟฟ้า มีความซับซ้อนกว่าการคำนวณรถไฟฟ้าล้วนถึง 10 เท่า! เนื่องจากมีปัจจัยเรื่อง River Barrier Effect (แม่น้ำกั้นกลาง), ตารางเวลาเรือที่ไม่ใช่ Headway คงที่, การเว้นจอดตามสีธง (Skip-Stop Matrix) และการหยุดบริการช่วงนอกเวลา Routing multimodal boat & rail networks in Bangkok is 10x harder than pure rail systems due to River Barrier Effects, non-continuous departure schedules, skip-stop flag matrices, and riverbank partition penalties.
ต่างจากรถไฟฟ้าที่วิ่งต่อเนื่องทุก 3-5 นาทีตั้งแต่ 06:00 - 24:00 น., เรือโดยสารวิ่งเฉพาะช่วงเวลารีบด่วน (เช่น 06:00-09:00 น. และ 16:00-19:00 น.) และหยุดวิ่งในวันเสาร์-อาทิตย์ (เช่น เรือไฟฟ้า MINE Metro หรือเรือธงเขียว-เหลือง) หากผู้ใช้ค้นหาเส้นทางตอน 20:00 น. การแนะนำเส้นทางเรือจะทำให้ผู้โดยสารไปยืนรอเรือที่ไม่มีจริง! เราจึงสร้าง 30-Minute Schedule Window & Edge Pruning Engine เพื่อตัดกิ่งเส้นทางเรือที่หยุดวิ่งออกจากกราฟโดยอัตโนมัติ Unlike trains running continuously every 3-5 mins from 06:00 to 24:00, boats run only during peak rush hours or closed on weekends. Searching at 20:00 would recommend a closed boat! We built the 30-Minute Schedule Window & Edge Pruning Engine to prune inactive boat edges automatically.
เรือด่วนเจ้าพระยา 5 สีธง และเรือไฟฟ้า MINE 3 สาย มีกฎการเข้าจอดท่าเรือที่แตกต่างกันเด็ดขาด (Skip-Stop Matrix) เรือธงแดงจอดด่วนข้าม 15 ท่าเรือ ส่วนเรือไฟฟ้า MINE City Line มีเงื่อนไขพิเศษ: ท่าเรือเอเชียทีคจะเริ่มจอดเฉพาะเรือเที่ยวที่ออกจากต้นทางสยามเจริญนคร ตั้งแต่รอบ 10:00 น. เป็นต้นไปเท่านั้น! 5 Chao Phraya flags and 3 MINE Electric lines follow strict skip-stop matrices. Red AC flag skips 15 piers, while MINE City Line has a conditional rule: Asiatique pier is served only from the 10:00 departure inbound and 11:00 departure outbound.
การคำนวณพิกัดละติจูด-ลองจิจูดแบบเส้นตรง (Haversine Distance) จะล้มเหลวทันทีเมื่ออยู่ใกล้แม่น้ำ! เช่น จาก ท่าสี่พระยา (ฝั่งพระนคร) ไปยัง ICONSIAM (ฝั่งธนบุรี) ห่างกันเพียง 200 เมตร อัลกอริทึมทั่วไปจะแนะนำให้ "เดิน 350 เมตรข้ามแม่น้ำ"! ระบบ ThaiRailFare จึงสร้าง River Bank Partitioning (EAST vs WEST) และบวก Distance Penalty +3,000 เมตร (+30 นาทีเดิน) หากเป็นสถานีคนละฝั่งแม่น้ำ เพื่อบังคับให้ระบบแนะนำ เรือข้ามฟากสี่พระยา ⇄ คลองสาน (5 บาท) อย่างถูกต้อง! Straight-line distance fails near rivers! Si Phraya Pier (East bank) and ICONSIAM (West bank) are 200m apart across water. Standard algorithms tell users to "walk 350m across the river"! We built River Bank Partitioning (EAST vs WEST) and added a +3,000m (+30 min walk) penalty, forcing the engine to recommend the 5 THB Si Phraya ⇄ Khlong San Ferry!
เรือคลองแสนแสบถูกแบ่งเป็น 2 สายขาดจากกัน: สายผ่านฟ้า-ประตูน้ำ (West Line) และสายประตูน้ำ-วัดศรีบุญเรือง (East Line) ผู้โดยสารไม่สามารถนั่งยาวรวดเดียวได้ แต่จะต้องลงสลับขบวนเรือที่ ท่าเรือประตูน้ำ อัลกอริทึมกราฟของเราจึงต้องสร้างโหนดเปลี่ยนขบวนเรือบังคับ ณ ท่าประตูน้ำเสมอ Saen Saep canal boats are split into West Line (Phan Fa - Pratunam) and East Line (Pratunam - Wat Sriboonreung). Passengers cannot stay on board across Pratunam! The routing graph forces a mandatory transfer node at Pratunam Pier.