บทที่ 4
แผนบทที่ 1 ส่งซีคอนตอนแปดโมงยี่สิบ ซึ่งตอนนั้นฟู้ดคอร์ทยังไม่เปิด บทนี้คือวิธีบอกโปรแกรมว่าจุดไหนรับของได้ช่วงไหน
วันเดิม จุดเดิม แต่มีสามร้านที่ใส่ช่วงเวลารับของไว้แล้ว
แผนวันจันทร์ดูดีบนจอ แต่พอปล่อยรถจริงมีสามจุดที่ไปเสียเที่ยว
สามข้อนี้ไม่ใช่เรื่องระยะทาง แต่เป็นเรื่องเวลา และเป็นข้อมูลที่เรารู้อยู่แล้ว แค่ยังไม่ได้บอกโปรแกรม
เปิด ⚙ รายละเอียด ของจุดส่ง แล้วกรอกแถว ช่วงเวลารับส่ง สองช่อง ช่องซ้ายคือเวลาที่เริ่มรับได้ ช่องขวาคือเวลาสุดท้าย
ดูที่แถวจุดส่ง จุดที่มีช่วงเวลาจะขึ้นรูปนาฬิกาต่อท้าย ใช้กวาดตาดูทั้งตารางว่าใส่ไปกี่จุดแล้ว
กด วางแผนเส้นทาง ใหม่
1.4 กิโลนั้นคือราคาของเงื่อนไขเวลา และมันคุ้ม เพราะเที่ยวเสียหนึ่งเที่ยว แพงกว่า 1.4 กิโลอยู่แล้ว
ที่เปลี่ยนไปมากกว่าคือลำดับ เดิมออกจากคลังไปศรีนครินทร์ก่อน ตอนนี้ไปโรงแรมบางนา กม.6 ก่อน แล้วไปเมกาบางนา เพราะซีคอนต้องรอถึงเก้าโมง และทองหล่อต้องให้ทันสิบโมง การขยับสองจุดนี้ลากลำดับทั้งวันใหม่หมด
ถ้าใส่ช่วงเวลาที่รถไปไม่ได้เลย โปรแกรมจะไม่ยัดให้ และไม่โกงเวลาให้ด้วย ลองใส่ให้ทองหล่อรับของ 06:00–07:00 ทั้งที่รถเริ่มงานแปดโมง
อย่าใส่ช่วงเวลาทุกจุด
ยิ่งใส่มาก ตัวเลือกยิ่งน้อย และเงื่อนไขที่ใส่เกินความจริงจะทำให้แผนแพงขึ้น หรือจัดไม่ได้ ทั้งที่หน้างานยืดหยุ่นกว่านั้น ใส่เฉพาะจุดที่ผิดเวลาแล้วเสียเที่ยวจริง ๆ
เวลาที่ขึ้นในแผนกับในลิงก์ของคนขับคือเวลาที่โปรแกรมคาดไว้จากความเร็วบนถนน ไม่ได้รวมรถติดของวันนั้น ถ้าจะนัดลูกค้า เผื่อไว้ด้วย เรื่องรถติดใส่เข้าไปในแผนได้ อยู่ในบทที่ 10
สองฟิลด์ บนจุดส่ง เป็นเวลา 24 ชั่วโมงแบบ HH:MM:
{
"order_id": "A-08",
"location": { "lat": 13.6935, "lng": 100.6465 },
"weight_kg": 110,
"volume_cm3": 220000,
"depot_id": "บางนา",
"time_window_start": "09:00",
"time_window_end": "11:00"
}
ใส่ข้างเดียวได้ อีกข้างปล่อยว่างหรือไม่ต้องส่งมาเลย จุดที่ไม่มีสองฟิลด์นี้คือรับได้ทั้งวันตามเวลาทำงานของรถ
จุดที่ไปไม่ทันจะกลับมาอยู่ใน unassigned_job_ids ไม่ใช่อยู่ในเส้นทาง
พร้อมเวลาที่เลยกำหนด นี่คือพฤติกรรมที่ตั้งใจ:
แผนที่ส่งของไม่ได้จริงแต่ดูสวย แพงกว่าแผนที่บอกว่าทำไม่ได้