decide op• Data kinds: any → table
• Call: import fullseye as fs; fs.ledger.dilemma_zone(v, *, reaction: 'float', decel: 'float', amber: 'float', intersection_width: 'float', car_length: 'float', accel: 'float' = 0.0) -> 'Dict[str, object]' (implementation को सीधे call करना हो तो import drivedecide; drivedecide.dilemma_zone(v, *, reaction: 'float', decel: 'float', amber: 'float', intersection_width: 'float', car_length: 'float', accel: 'float' = 0.0) -> 'Dict[str, object]', registry से लेना हो तो opsdrive.get("dilemma_zone"))
पीले signal का dilemma zone (Gazis, Herman, Maradudin 1960)।
गति v पर स्टॉप लाइन से x पहले होते समय पीली बत्ती जली:
रुक सकते हैं ⇔ x ≥ x_c = v δ + v²/(2a) (δ = reaction, a = decel)
पार कर सकते हैं ⇔ x ≤ x_0 = v τ + ½ a₁ (τ − δ)² − (w + L) (τ = amber, a₁ = accel ≥ 0, w = चौराहे की चौड़ाई, L = कार की लंबाई)
(a₁ = 0 मूल रूप है। त्वरण को प्रतिक्रिया के बाद से पीली बत्ती के अंत तक माना गया है। यदि τ ≤ δ तो त्वरण पद 0 है।) max(x_0, 0) < x < x_c दुविधा क्षेत्र है (न रुक सकते हैं, न पार कर सकते हैं। x < 0 को बाहर रखा गया है क्योंकि स्टॉप लाइन पार हो चुकी है), x_c ≤ x ≤ x_0 विकल्प क्षेत्र है (दोनों संभव)।
जापानी कानून की व्याख्या: यातायात नियम-निर्देशिका (Kyosoku) की परिशिष्ट तालिका 1 (पीला) कहती है "यदि रुकने के स्थान के निकट हों और सुरक्षित रूप से न रुक सकें तो आगे बढ़ सकते हैं" = स्टॉप लाइन पार कर लेना पर्याप्त है (पीली बत्ती के दौरान चौराहा पार करने का दायित्व नहीं है)। उस व्याख्या में intersection_width = car_length = 0 से कॉल करें (x_0 = vτ)। GHM का "चौराहा पार करना" एक कठोर व्याख्या है जो मानती है कि ऑल-रेड समय नहीं है।
लौटाए गए मान: x_stop_min = x_c, x_clear_max = x_0, dilemma ((lo, hi) या None), option (वैसे ही), length (दुविधा क्षेत्र की लंबाई, न हो तो 0), v_critical (a₁ = 0 होने पर वे गतियों का युग्म जिन पर x_c = x_0। वास्तविक मूल न हो तो खाली = किसी भी गति पर दुविधा नहीं)। v एक ही संख्या है (ऐरे के लिए np.vectorize आदि)।
• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।
• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।
• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।
• poc_driving_decisions — py -3.11 examples/poc_driving_decisions.py
table को input के रूप में लेते हैं)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
decide)mirror_reflection_matrix · mirror_virtual_camera · mirror_aim_normal · convex_mirror_fov · mirror_blind_zone · check_sequence_score · signal_phase_plan · signal_state
*Provenance: drivedecide.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.