commit de01a0ed250eeb3c6bb94397760dd53d3dbdbb71 Author: Claude Date: Sat Nov 7 15:18:13 2026 +0900 ⑧の待機点を元の1列に戻し、待機点へまっすぐ入る決まり(standby_straight_entry・既定は切)を足す 2列の形(18d23fe)は Unity で奥の列へ台が戻れなかったため、2026-11-07 エイイチの (2) で、店の形は元の1列(large-99db3254b08b)に戻し、 ⑧の試算もページ・params とも元の値に戻した。止まり合いは入り方の決まりで直す。 Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01LevEXUFMhag721ag4sz8Jz public/sim/layouts/large/p6_large_center.json | 50 +- .../layouts/large/p6_large_center_analysis.json | 92 +- public/sim/layouts/large/p7_large_b.json | 2 +- public/sim/layouts/large/p7_large_b_analysis.json | 2 +- public/sim/layouts/large/summary.json | 8 +- .../sim/layouts/large/unity/p6_large_center.json | 14650 +++++++++---------- .../layouts/large/unity/p6_large_center_map.json | 2 +- public/sim/layouts/large/unity/p7_large_b.json | 2 +- public/sim/layouts/large/unity/p7_large_b_map.json | 2 +- public/sim/serving-robot-params.json | 874 +- public/sim/serving-robot.html | 5 +- tools/serving_sim/build_page_large.py | 2 - tools/sim_layouts/README.md | 2 +- tools/sim_layouts/famires_v3.py | 14 +- tools/sim_layouts/large_store.py | 12 - 15 files changed, 7521 insertions(+), 8198 deletions(-) commit de01a0ed250eeb3c6bb94397760dd53d3dbdbb71 Author: Claude Date: Sat Nov 7 15:18:13 2026 +0900 ⑧の待機点を元の1列に戻し、待機点へまっすぐ入る決まり(standby_straight_entry・既定は切)を足す 2列の形(18d23fe)は Unity で奥の列へ台が戻れなかったため、2026-11-07 エイイチの (2) で、店の形は元の1列(large-99db3254b08b)に戻し、 ⑧の試算もページ・params とも元の値に戻した。止まり合いは入り方の決まりで直す。 Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01LevEXUFMhag721ag4sz8Jz diff --git a/public/sim/serving-robot-params.json b/public/sim/serving-robot-params.json index 3d1fb7e..153328e 100644 --- a/public/sim/serving-robot-params.json +++ b/public/sim/serving-robot-params.json @@ -5,7 +5,7 @@ "reps": 40, "ng_min": 10, "layout_generation": "9b8dae7ebf8c", - "layout_generation_large": "large-b13cd179e6bf", + "layout_generation_large": "large-99db3254b08b", "layout_dirs": { "fam_": "public/sim/layouts/(unity/ に建てるための形)", "large_": "public/sim/layouts/large/(unity/ に建てるための形。2026-11-02 に足した大型店⑧⑨)" @@ -430,6 +430,12 @@ "value": false, "role": "site_rule", "note": "(切)待機点を台ごとに決めず、列で使う(2026-11-07 エイイチと決めた。⑧で今のままと比べる)。店の形の RobotStandby は、受け渡し口に近い順に1番から並べる。次の往復に出るのは、待機している台のうち受け渡し口に一番近い台。往復を終えて戻る台は、待機している台より受け渡し口に近い側の空いている待機点のうち、一番遠い所(いる台のすぐ手前)へ入る。待機している台がいなければ一番遠い待機点へ入る。こうすると、出る台も戻る台も、待機している台の前を通らない。店の形(待機点の位置と数)は変えない。試算の数字は変わらない" + }, + "standby_straight_entry": { + "value": false, + "role": "site_rule", + "entry_back_m": 1.0, + "note": "(切)待機点へ戻るロボットは、待機点の真正面(壁から離れる向き)に entry_back_m(1.0m)下がった「入る点」まで来てから、待機点へまっすぐ入る。出るときも、入る点までまっすぐ下がってから向きを変える(2026-11-07 エイイチと決めた。⑧で今のままと比べる)。待機点の間が0.8mの1列では、斜めに寄ると前のセンサー(中心から0.85m)に隣の待機点の台が入って止まり合っていたため。待機点の間を広げる案は、受け渡し口の前と右の卓へ上がる道があって⑧では1.1mまでしか取れず、2列の案は手前の列のすき間で台が戻れなかったので、店の形は変えず、入り方の決まりで直す。入る点がほかの台・人でふさがっていたら、入る点の手前で待つ。店の形と試算の数字は変わらない" } }, "stores": { @@ -1029,7 +1035,7 @@ "tables": 70, "dist_m": [ 6.9, - 21.4 + 22.0 ], "peak_min": 120, "first_dishes": [ @@ -1123,32 +1129,32 @@ 19.07, 19.37, 21.22, - 21.38, - 19.53, - 17.68, - 17.08, + 21.97, + 20.12, + 18.27, + 17.66, 15.47, 17.32, - 17.18, - 15.33, - 13.48, + 17.77, + 15.92, + 14.07, 19.43, 21.28, - 21.14, - 19.29, - 17.44, - 9.81, - 9.04, - 8.35, + 21.73, + 19.88, + 18.03, + 9.46, + 8.69, + 7.93, 7.23, - 7.44, + 7.66, 15.38, 17.23, - 17.09, - 15.24, - 13.39, - 16.38, - 17.15, + 17.68, + 15.83, + 13.98, + 16.97, + 17.74, 10.52, 11.28, 12.27, @@ -4454,13 +4460,13 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 0.5612, - "dish_wait_p90": 1.1555, - "cold_share": 0.0002, - "seat_wait_mean": 7.7119, - "turn_mean": 3.6546, - "walk_km_per_staff": 4.3528, - "staff_util": 0.671, + "dish_wait_mean": 0.5945, + "dish_wait_p90": 1.2434, + "cold_share": 0.0001, + "seat_wait_mean": 7.0762, + "turn_mean": 3.8446, + "walk_km_per_staff": 4.3531, + "staff_util": 0.6728, "robot_util": 0.0, "robot_share": 0.0, "robot_bus_share": 0.0, @@ -4468,13 +4474,13 @@ "rescues": 0, "pauses": 0, "fragile_robot": 0, - "groups": 138.975, - "entry_wait_mean": 8.24, - "blocked_wait_mean": 1.6557, - "guide_wait_mean": 0.2706, - "staff_wait_mean": 1.9263, - "full_wait_mean": 6.0563, - "pay_wait_mean": 33.6306 + "groups": 137.95, + "entry_wait_mean": 7.6329, + "blocked_wait_mean": 1.7186, + "guide_wait_mean": 0.2974, + "staff_wait_mean": 2.016, + "full_wait_mean": 5.3576, + "pay_wait_mean": 33.4507 } }, { @@ -4489,27 +4495,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 2.352, - "dish_wait_p90": 3.1438, - "cold_share": 0.1375, - "seat_wait_mean": 8.6567, - "turn_mean": 2.518, - "walk_km_per_staff": 3.552, - "staff_util": 0.5942, - "robot_util": 0.672, - "robot_share": 0.5104, + "dish_wait_mean": 2.3446, + "dish_wait_p90": 3.125, + "cold_share": 0.1341, + "seat_wait_mean": 5.9739, + "turn_mean": 2.5357, + "walk_km_per_staff": 3.4071, + "staff_util": 0.5897, + "robot_util": 0.661, + "robot_share": 0.5048, "robot_bus_share": 0.0, "collects": 0, - "rescues": 1, - "pauses": 22.8, - "fragile_robot": 39.3, - "groups": 141.875, - "entry_wait_mean": 9.0055, - "blocked_wait_mean": 0.9619, - "guide_wait_mean": 0.0899, - "staff_wait_mean": 1.0518, - "full_wait_mean": 7.6948, - "pay_wait_mean": 35.5143 + "rescues": 0.75, + "pauses": 20.2, + "fragile_robot": 37.6, + "groups": 135.35, + "entry_wait_mean": 6.3214, + "blocked_wait_mean": 0.8027, + "guide_wait_mean": 0.0876, + "staff_wait_mean": 0.8903, + "full_wait_mean": 5.1712, + "pay_wait_mean": 33.9434 } }, { @@ -4524,27 +4530,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 1.8581, - "dish_wait_p90": 2.9396, - "cold_share": 0.0905, - "seat_wait_mean": 6.9812, - "turn_mean": 2.4111, - "walk_km_per_staff": 2.8138, - "staff_util": 0.537, - "robot_util": 0.6085, - "robot_share": 0.8609, + "dish_wait_mean": 1.8623, + "dish_wait_p90": 2.9531, + "cold_share": 0.0949, + "seat_wait_mean": 6.9302, + "turn_mean": 2.4288, + "walk_km_per_staff": 2.859, + "staff_util": 0.5405, + "robot_util": 0.6115, + "robot_share": 0.8664, "robot_bus_share": 0.0, "collects": 0, - "rescues": 1.125, - "pauses": 44.7, - "fragile_robot": 61, - "groups": 138.625, - "entry_wait_mean": 7.278, - "blocked_wait_mean": 0.8318, - "guide_wait_mean": 0.0393, - "staff_wait_mean": 0.871, - "full_wait_mean": 6.1494, - "pay_wait_mean": 34.7543 + "rescues": 1.5, + "pauses": 44.35, + "fragile_robot": 60.125, + "groups": 138.85, + "entry_wait_mean": 7.2357, + "blocked_wait_mean": 0.826, + "guide_wait_mean": 0.0446, + "staff_wait_mean": 0.8707, + "full_wait_mean": 6.1042, + "pay_wait_mean": 34.9124 } }, { @@ -4559,13 +4565,13 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 0.4927, - "dish_wait_p90": 0.9757, - "cold_share": 0.0001, - "seat_wait_mean": 0.1662, - "turn_mean": 3.2174, - "walk_km_per_staff": 3.2802, - "staff_util": 0.627, + "dish_wait_mean": 0.4654, + "dish_wait_p90": 0.907, + "cold_share": 0.0, + "seat_wait_mean": 0.0422, + "turn_mean": 2.9786, + "walk_km_per_staff": 3.2205, + "staff_util": 0.6232, "robot_util": 0.0, "robot_share": 0.0, "robot_bus_share": 0.0, @@ -4573,13 +4579,13 @@ "rescues": 0, "pauses": 0, "fragile_robot": 0, - "groups": 104.075, - "entry_wait_mean": 0.6291, - "blocked_wait_mean": 0.154, - "guide_wait_mean": 0.2049, - "staff_wait_mean": 0.3588, - "full_wait_mean": 0.0122, - "pay_wait_mean": 17.6891 + "groups": 101.475, + "entry_wait_mean": 0.482, + "blocked_wait_mean": 0.0369, + "guide_wait_mean": 0.1791, + "staff_wait_mean": 0.2161, + "full_wait_mean": 0.0053, + "pay_wait_mean": 16.2233 } }, { @@ -4594,27 +4600,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 2.2494, - "dish_wait_p90": 3.0278, - "cold_share": 0.1081, - "seat_wait_mean": 0.0158, - "turn_mean": 2.4498, - "walk_km_per_staff": 2.5471, - "staff_util": 0.5456, - "robot_util": 0.6762, - "robot_share": 0.5454, + "dish_wait_mean": 2.2783, + "dish_wait_p90": 3.0578, + "cold_share": 0.1196, + "seat_wait_mean": 0.061, + "turn_mean": 2.5018, + "walk_km_per_staff": 2.6039, + "staff_util": 0.5497, + "robot_util": 0.6812, + "robot_share": 0.5421, "robot_bus_share": 0.0, "collects": 0, - "rescues": 0.525, - "pauses": 17.6, - "fragile_robot": 30.725, - "groups": 104, - "entry_wait_mean": 0.3464, - "blocked_wait_mean": 0.013, - "guide_wait_mean": 0.0727, - "staff_wait_mean": 0.0857, - "full_wait_mean": 0.0028, - "pay_wait_mean": 17.5336 + "rescues": 0.65, + "pauses": 17.95, + "fragile_robot": 32.4, + "groups": 104.575, + "entry_wait_mean": 0.4135, + "blocked_wait_mean": 0.0355, + "guide_wait_mean": 0.0925, + "staff_wait_mean": 0.128, + "full_wait_mean": 0.0255, + "pay_wait_mean": 18.6058 } }, { @@ -4629,27 +4635,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 1.7444, - "dish_wait_p90": 2.8463, - "cold_share": 0.0757, - "seat_wait_mean": 0.0392, - "turn_mean": 2.3889, - "walk_km_per_staff": 2.0519, - "staff_util": 0.4935, - "robot_util": 0.6092, - "robot_share": 0.9102, + "dish_wait_mean": 1.7372, + "dish_wait_p90": 2.8339, + "cold_share": 0.0722, + "seat_wait_mean": 0.1205, + "turn_mean": 2.4048, + "walk_km_per_staff": 2.1033, + "staff_util": 0.4985, + "robot_util": 0.61, + "robot_share": 0.9001, "robot_bus_share": 0.0, "collects": 0, - "rescues": 1.175, - "pauses": 36.45, - "fragile_robot": 47.7, - "groups": 104, - "entry_wait_mean": 0.3274, - "blocked_wait_mean": 0.0177, - "guide_wait_mean": 0.0309, - "staff_wait_mean": 0.0486, - "full_wait_mean": 0.0215, - "pay_wait_mean": 18.7765 + "rescues": 1.5, + "pauses": 35.8, + "fragile_robot": 48.1, + "groups": 104.275, + "entry_wait_mean": 0.417, + "blocked_wait_mean": 0.0492, + "guide_wait_mean": 0.0364, + "staff_wait_mean": 0.0856, + "full_wait_mean": 0.0713, + "pay_wait_mean": 19.0489 } }, { @@ -4664,13 +4670,13 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 0.4695, - "dish_wait_p90": 0.958, + "dish_wait_mean": 0.4712, + "dish_wait_p90": 0.9525, "cold_share": 0.0, - "seat_wait_mean": 26.4942, - "turn_mean": 2.8607, - "walk_km_per_staff": 5.4991, - "staff_util": 0.7008, + "seat_wait_mean": 27.6461, + "turn_mean": 2.8576, + "walk_km_per_staff": 5.657, + "staff_util": 0.707, "robot_util": 0.0, "robot_share": 0.0, "robot_bus_share": 0.0, @@ -4678,13 +4684,13 @@ "rescues": 0, "pauses": 0, "fragile_robot": 0, - "groups": 175.525, - "entry_wait_mean": 26.9024, - "blocked_wait_mean": 1.7704, - "guide_wait_mean": 0.1513, - "staff_wait_mean": 1.9217, - "full_wait_mean": 24.7238, - "pay_wait_mean": 41.9722 + "groups": 177.925, + "entry_wait_mean": 28.056, + "blocked_wait_mean": 1.8373, + "guide_wait_mean": 0.1494, + "staff_wait_mean": 1.9867, + "full_wait_mean": 25.8087, + "pay_wait_mean": 42.2738 } }, { @@ -4699,27 +4705,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 2.2659, - "dish_wait_p90": 3.0064, - "cold_share": 0.1046, - "seat_wait_mean": 29.0781, - "turn_mean": 2.4277, - "walk_km_per_staff": 4.3562, - "staff_util": 0.6118, - "robot_util": 0.7267, - "robot_share": 0.5338, + "dish_wait_mean": 2.2935, + "dish_wait_p90": 3.0495, + "cold_share": 0.1164, + "seat_wait_mean": 28.0039, + "turn_mean": 2.4527, + "walk_km_per_staff": 4.4133, + "staff_util": 0.6163, + "robot_util": 0.7263, + "robot_share": 0.5295, "robot_bus_share": 0.0, "collects": 0, - "rescues": 0.85, + "rescues": 1.175, "pauses": 28.25, - "fragile_robot": 51.875, - "groups": 178.55, - "entry_wait_mean": 29.3736, - "blocked_wait_mean": 1.4586, - "guide_wait_mean": 0.039, - "staff_wait_mean": 1.4976, - "full_wait_mean": 27.6196, - "pay_wait_mean": 42.1347 + "fragile_robot": 50.875, + "groups": 177.25, + "entry_wait_mean": 28.3101, + "blocked_wait_mean": 1.4607, + "guide_wait_mean": 0.0459, + "staff_wait_mean": 1.5066, + "full_wait_mean": 26.5432, + "pay_wait_mean": 41.7854 } }, { @@ -4734,27 +4740,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 1.7427, - "dish_wait_p90": 2.8431, - "cold_share": 0.0756, - "seat_wait_mean": 28.283, - "turn_mean": 2.385, - "walk_km_per_staff": 3.5899, - "staff_util": 0.5612, - "robot_util": 0.6671, - "robot_share": 0.8722, + "dish_wait_mean": 1.7547, + "dish_wait_p90": 2.8333, + "cold_share": 0.0718, + "seat_wait_mean": 26.8499, + "turn_mean": 2.3926, + "walk_km_per_staff": 3.5766, + "staff_util": 0.5613, + "robot_util": 0.6678, + "robot_share": 0.8726, "robot_bus_share": 0.0, "collects": 0, - "rescues": 2.05, - "pauses": 59.575, - "fragile_robot": 81.05, - "groups": 178.075, - "entry_wait_mean": 28.5589, - "blocked_wait_mean": 1.4017, - "guide_wait_mean": 0.0183, - "staff_wait_mean": 1.42, - "full_wait_mean": 26.8814, - "pay_wait_mean": 42.5077 + "rescues": 1.95, + "pauses": 60.775, + "fragile_robot": 80.65, + "groups": 176.1, + "entry_wait_mean": 27.1302, + "blocked_wait_mean": 1.4002, + "guide_wait_mean": 0.0213, + "staff_wait_mean": 1.4215, + "full_wait_mean": 25.4497, + "pay_wait_mean": 42.3534 } }, { @@ -4769,13 +4775,13 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 0.9178, - "dish_wait_p90": 1.7919, - "cold_share": 0.0077, - "seat_wait_mean": 12.8797, - "turn_mean": 12.2848, - "walk_km_per_staff": 5.1931, - "staff_util": 0.8043, + "dish_wait_mean": 0.927, + "dish_wait_p90": 1.8078, + "cold_share": 0.0104, + "seat_wait_mean": 13.7163, + "turn_mean": 12.8738, + "walk_km_per_staff": 5.2921, + "staff_util": 0.8094, "robot_util": 0.0, "robot_share": 0.0, "robot_bus_share": 0.0, @@ -4783,13 +4789,13 @@ "rescues": 0, "pauses": 0, "fragile_robot": 0, - "groups": 137.4, - "entry_wait_mean": 13.6877, - "blocked_wait_mean": 7.5345, - "guide_wait_mean": 0.5499, - "staff_wait_mean": 8.0843, - "full_wait_mean": 5.3453, - "pay_wait_mean": 27.151 + "groups": 138.125, + "entry_wait_mean": 14.5449, + "blocked_wait_mean": 7.881, + "guide_wait_mean": 0.567, + "staff_wait_mean": 8.448, + "full_wait_mean": 5.8353, + "pay_wait_mean": 26.8272 } }, { @@ -4804,27 +4810,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 2.5928, - "dish_wait_p90": 3.567, - "cold_share": 0.2723, - "seat_wait_mean": 9.2707, - "turn_mean": 4.0339, - "walk_km_per_staff": 4.1976, - "staff_util": 0.708, - "robot_util": 0.677, + "dish_wait_mean": 2.5913, + "dish_wait_p90": 3.5586, + "cold_share": 0.27, + "seat_wait_mean": 9.525, + "turn_mean": 4.2149, + "walk_km_per_staff": 4.2182, + "staff_util": 0.7093, + "robot_util": 0.6746, "robot_share": 0.5187, "robot_bus_share": 0.0, "collects": 0, - "rescues": 0.675, - "pauses": 22.2, - "fragile_robot": 40.65, - "groups": 140.525, - "entry_wait_mean": 9.8292, - "blocked_wait_mean": 2.236, - "guide_wait_mean": 0.2995, - "staff_wait_mean": 2.5354, - "full_wait_mean": 7.0347, - "pay_wait_mean": 33.7894 + "rescues": 0.925, + "pauses": 22.05, + "fragile_robot": 39.375, + "groups": 140.4, + "entry_wait_mean": 10.0775, + "blocked_wait_mean": 2.3619, + "guide_wait_mean": 0.2915, + "staff_wait_mean": 2.6534, + "full_wait_mean": 7.1631, + "pay_wait_mean": 33.9029 } }, { @@ -4839,27 +4845,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 1.9696, - "dish_wait_p90": 3.1674, - "cold_share": 0.1401, - "seat_wait_mean": 7.3505, - "turn_mean": 2.7115, - "walk_km_per_staff": 3.3634, - "staff_util": 0.6428, - "robot_util": 0.6129, - "robot_share": 0.8738, + "dish_wait_mean": 1.9866, + "dish_wait_p90": 3.1985, + "cold_share": 0.148, + "seat_wait_mean": 8.9113, + "turn_mean": 2.8007, + "walk_km_per_staff": 3.4923, + "staff_util": 0.6491, + "robot_util": 0.6193, + "robot_share": 0.8722, "robot_bus_share": 0.0, "collects": 0, - "rescues": 1.5, - "pauses": 43.85, - "fragile_robot": 63.225, - "groups": 138.65, - "entry_wait_mean": 7.7515, - "blocked_wait_mean": 1.0155, - "guide_wait_mean": 0.1442, - "staff_wait_mean": 1.1597, - "full_wait_mean": 6.335, - "pay_wait_mean": 34.5649 + "rescues": 1.3, + "pauses": 46.45, + "fragile_robot": 63.775, + "groups": 141.925, + "entry_wait_mean": 9.3212, + "blocked_wait_mean": 1.18, + "guide_wait_mean": 0.1492, + "staff_wait_mean": 1.3292, + "full_wait_mean": 7.7312, + "pay_wait_mean": 35.3463 } }, { @@ -4874,13 +4880,13 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 0.3645, - "dish_wait_p90": 0.6641, + "dish_wait_mean": 0.3708, + "dish_wait_p90": 0.6819, "cold_share": 0.0, - "seat_wait_mean": 7.0754, - "turn_mean": 2.5445, - "walk_km_per_staff": 3.7676, - "staff_util": 0.5766, + "seat_wait_mean": 6.4945, + "turn_mean": 2.5521, + "walk_km_per_staff": 3.7638, + "staff_util": 0.5776, "robot_util": 0.0, "robot_share": 0.0, "robot_bus_share": 0.0, @@ -4888,13 +4894,13 @@ "rescues": 0, "pauses": 0, "fragile_robot": 0, - "groups": 140.225, - "entry_wait_mean": 7.4272, - "blocked_wait_mean": 0.8813, - "guide_wait_mean": 0.0947, - "staff_wait_mean": 0.976, - "full_wait_mean": 6.1941, - "pay_wait_mean": 35.5031 + "groups": 138.95, + "entry_wait_mean": 6.8431, + "blocked_wait_mean": 0.8681, + "guide_wait_mean": 0.0889, + "staff_wait_mean": 0.957, + "full_wait_mean": 5.6264, + "pay_wait_mean": 35.3472 } }, { @@ -4909,27 +4915,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 2.2525, - "dish_wait_p90": 2.9653, - "cold_share": 0.0943, - "seat_wait_mean": 8.147, - "turn_mean": 2.396, - "walk_km_per_staff": 3.0107, - "staff_util": 0.5076, - "robot_util": 0.6656, - "robot_share": 0.5065, + "dish_wait_mean": 2.2512, + "dish_wait_p90": 2.9599, + "cold_share": 0.0959, + "seat_wait_mean": 7.8412, + "turn_mean": 2.4023, + "walk_km_per_staff": 2.9753, + "staff_util": 0.5059, + "robot_util": 0.664, + "robot_share": 0.508, "robot_bus_share": 0.0, "collects": 0, "rescues": 0.825, - "pauses": 21.975, - "fragile_robot": 38.45, - "groups": 140.75, - "entry_wait_mean": 8.4348, - "blocked_wait_mean": 0.8787, - "guide_wait_mean": 0.0293, - "staff_wait_mean": 0.908, - "full_wait_mean": 7.2682, - "pay_wait_mean": 35.7662 + "pauses": 20.75, + "fragile_robot": 37.9, + "groups": 138.95, + "entry_wait_mean": 8.1301, + "blocked_wait_mean": 0.8466, + "guide_wait_mean": 0.0292, + "staff_wait_mean": 0.8757, + "full_wait_mean": 6.9946, + "pay_wait_mean": 35.0935 } }, { @@ -4944,27 +4950,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 1.8139, - "dish_wait_p90": 2.839, - "cold_share": 0.0742, - "seat_wait_mean": 6.8815, - "turn_mean": 2.3768, - "walk_km_per_staff": 2.415, - "staff_util": 0.4607, - "robot_util": 0.6109, - "robot_share": 0.8627, + "dish_wait_mean": 1.8263, + "dish_wait_p90": 2.873, + "cold_share": 0.0771, + "seat_wait_mean": 8.6271, + "turn_mean": 2.3882, + "walk_km_per_staff": 2.5362, + "staff_util": 0.4671, + "robot_util": 0.6164, + "robot_share": 0.8611, "robot_bus_share": 0.0, "collects": 0, - "rescues": 1.45, - "pauses": 44.65, - "fragile_robot": 60.275, - "groups": 138.425, - "entry_wait_mean": 7.1538, - "blocked_wait_mean": 0.7616, - "guide_wait_mean": 0.0145, - "staff_wait_mean": 0.7761, - "full_wait_mean": 6.1199, - "pay_wait_mean": 34.3847 + "rescues": 1.5, + "pauses": 46.05, + "fragile_robot": 63.275, + "groups": 143.15, + "entry_wait_mean": 8.9029, + "blocked_wait_mean": 0.8862, + "guide_wait_mean": 0.0148, + "staff_wait_mean": 0.901, + "full_wait_mean": 7.7409, + "pay_wait_mean": 35.6842 } }, { @@ -5924,27 +5930,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 2.3627, - "dish_wait_p90": 3.1438, - "cold_share": 0.1375, - "seat_wait_mean": 8.6566, - "turn_mean": 2.4222, - "walk_km_per_staff": 3.4205, - "staff_util": 0.5903, - "robot_util": 0.8571, - "robot_share": 0.5093, - "robot_bus_share": 0.1812, + "dish_wait_mean": 2.3583, + "dish_wait_p90": 3.1278, + "cold_share": 0.1354, + "seat_wait_mean": 5.9933, + "turn_mean": 2.4367, + "walk_km_per_staff": 3.2798, + "staff_util": 0.5859, + "robot_util": 0.8522, + "robot_share": 0.5034, + "robot_bus_share": 0.1875, "collects": 0, - "rescues": 1.25, - "pauses": 29.475, - "fragile_robot": 38.7, - "groups": 141.875, - "entry_wait_mean": 9.0054, - "blocked_wait_mean": 0.9618, - "guide_wait_mean": 0.0899, - "staff_wait_mean": 1.0517, - "full_wait_mean": 7.6948, - "pay_wait_mean": 35.5051 + "rescues": 0.925, + "pauses": 28.15, + "fragile_robot": 37.075, + "groups": 135.475, + "entry_wait_mean": 6.3412, + "blocked_wait_mean": 0.8058, + "guide_wait_mean": 0.0881, + "staff_wait_mean": 0.894, + "full_wait_mean": 5.1875, + "pay_wait_mean": 33.9524 } }, { @@ -5959,27 +5965,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 1.8964, - "dish_wait_p90": 2.9402, - "cold_share": 0.0907, - "seat_wait_mean": 7.1718, - "turn_mean": 2.1948, - "walk_km_per_staff": 2.541, - "staff_util": 0.5289, - "robot_util": 0.8207, - "robot_share": 0.8589, - "robot_bus_share": 0.4168, + "dish_wait_mean": 1.9063, + "dish_wait_p90": 2.9681, + "cold_share": 0.0981, + "seat_wait_mean": 7.0338, + "turn_mean": 2.2047, + "walk_km_per_staff": 2.577, + "staff_util": 0.5314, + "robot_util": 0.8234, + "robot_share": 0.8641, + "robot_bus_share": 0.4182, "collects": 0, - "rescues": 1.625, - "pauses": 61.475, - "fragile_robot": 61.825, - "groups": 139.475, - "entry_wait_mean": 7.4686, - "blocked_wait_mean": 0.8396, - "guide_wait_mean": 0.039, - "staff_wait_mean": 0.8786, - "full_wait_mean": 6.3321, - "pay_wait_mean": 34.8663 + "rescues": 2.175, + "pauses": 60.85, + "fragile_robot": 59.925, + "groups": 139.85, + "entry_wait_mean": 7.338, + "blocked_wait_mean": 0.8115, + "guide_wait_mean": 0.0433, + "staff_wait_mean": 0.8547, + "full_wait_mean": 6.2223, + "pay_wait_mean": 34.9873 } }, { @@ -6064,27 +6070,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 1.2054, - "dish_wait_p90": 2.3115, - "cold_share": 0.021, - "seat_wait_mean": 7.3093, - "turn_mean": 2.3892, - "walk_km_per_staff": 2.65, - "staff_util": 0.5226, - "robot_util": 0.5372, - "robot_share": 0.9885, + "dish_wait_mean": 1.2472, + "dish_wait_p90": 2.371, + "cold_share": 0.0244, + "seat_wait_mean": 6.2072, + "turn_mean": 2.3916, + "walk_km_per_staff": 2.6166, + "staff_util": 0.5221, + "robot_util": 0.5278, + "robot_share": 0.983, "robot_bus_share": 0.0, "collects": 0, - "rescues": 2.825, - "pauses": 69.4, - "fragile_robot": 69.95, - "groups": 140.9, - "entry_wait_mean": 7.5985, - "blocked_wait_mean": 0.8147, - "guide_wait_mean": 0.0313, - "staff_wait_mean": 0.846, - "full_wait_mean": 6.4946, - "pay_wait_mean": 35.8429 + "rescues": 2.225, + "pauses": 66.6, + "fragile_robot": 68.15, + "groups": 138.225, + "entry_wait_mean": 6.496, + "blocked_wait_mean": 0.7825, + "guide_wait_mean": 0.0297, + "staff_wait_mean": 0.8122, + "full_wait_mean": 5.4247, + "pay_wait_mean": 35.2621 } }, { @@ -6099,27 +6105,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 0.8419, - "dish_wait_p90": 1.6395, - "cold_share": 0.0018, - "seat_wait_mean": 7.4054, - "turn_mean": 2.3816, - "walk_km_per_staff": 2.6105, - "staff_util": 0.5195, - "robot_util": 0.4525, - "robot_share": 0.9999, + "dish_wait_mean": 0.8571, + "dish_wait_p90": 1.6813, + "cold_share": 0.0029, + "seat_wait_mean": 7.0633, + "turn_mean": 2.3934, + "walk_km_per_staff": 2.6181, + "staff_util": 0.5208, + "robot_util": 0.4538, + "robot_share": 0.9996, "robot_bus_share": 0.0, "collects": 0, - "rescues": 3.025, - "pauses": 88.975, - "fragile_robot": 71.725, - "groups": 140.5, - "entry_wait_mean": 7.6872, - "blocked_wait_mean": 0.8361, - "guide_wait_mean": 0.0242, - "staff_wait_mean": 0.8604, - "full_wait_mean": 6.5693, - "pay_wait_mean": 36.4595 + "rescues": 3, + "pauses": 85.875, + "fragile_robot": 71.775, + "groups": 139.25, + "entry_wait_mean": 7.3482, + "blocked_wait_mean": 0.7689, + "guide_wait_mean": 0.0246, + "staff_wait_mean": 0.7935, + "full_wait_mean": 6.2944, + "pay_wait_mean": 35.8418 } }, { @@ -6134,27 +6140,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 0.6924, - "dish_wait_p90": 1.1719, - "cold_share": 0.0003, - "seat_wait_mean": 6.9978, - "turn_mean": 2.3834, - "walk_km_per_staff": 2.6027, - "staff_util": 0.5215, - "robot_util": 0.38, - "robot_share": 1.0, + "dish_wait_mean": 0.6921, + "dish_wait_p90": 1.1558, + "cold_share": 0.0004, + "seat_wait_mean": 7.9521, + "turn_mean": 2.3865, + "walk_km_per_staff": 2.6648, + "staff_util": 0.5242, + "robot_util": 0.3838, + "robot_share": 0.9999, "robot_bus_share": 0.0, "collects": 0, - "rescues": 2.925, - "pauses": 93.475, - "fragile_robot": 69.625, - "groups": 139.375, - "entry_wait_mean": 7.2786, - "blocked_wait_mean": 0.8073, - "guide_wait_mean": 0.023, - "staff_wait_mean": 0.8303, - "full_wait_mean": 6.1906, - "pay_wait_mean": 36.0945 + "rescues": 2.975, + "pauses": 95, + "fragile_robot": 71.125, + "groups": 142.15, + "entry_wait_mean": 8.237, + "blocked_wait_mean": 0.8386, + "guide_wait_mean": 0.0257, + "staff_wait_mean": 0.8643, + "full_wait_mean": 7.1136, + "pay_wait_mean": 36.417 } }, { @@ -6169,27 +6175,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 1.3037, - "dish_wait_p90": 2.3935, - "cold_share": 0.0246, - "seat_wait_mean": 6.7453, - "turn_mean": 2.0999, - "walk_km_per_staff": 2.221, - "staff_util": 0.5088, - "robot_util": 0.7133, - "robot_share": 0.9861, - "robot_bus_share": 0.5604, + "dish_wait_mean": 1.3127, + "dish_wait_p90": 2.4035, + "cold_share": 0.0264, + "seat_wait_mean": 6.9139, + "turn_mean": 2.0965, + "walk_km_per_staff": 2.2348, + "staff_util": 0.51, + "robot_util": 0.7147, + "robot_share": 0.9831, + "robot_bus_share": 0.5592, "collects": 0, - "rescues": 3.25, - "pauses": 86.075, - "fragile_robot": 69.525, - "groups": 139.275, - "entry_wait_mean": 7.034, - "blocked_wait_mean": 0.7813, - "guide_wait_mean": 0.0309, - "staff_wait_mean": 0.8122, - "full_wait_mean": 5.964, - "pay_wait_mean": 35.5222 + "rescues": 2.825, + "pauses": 88.2, + "fragile_robot": 70.55, + "groups": 139.375, + "entry_wait_mean": 7.1988, + "blocked_wait_mean": 0.7764, + "guide_wait_mean": 0.0263, + "staff_wait_mean": 0.8026, + "full_wait_mean": 6.1376, + "pay_wait_mean": 35.4565 } }, { @@ -6204,27 +6210,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 0.924, - "dish_wait_p90": 1.774, - "cold_share": 0.002, - "seat_wait_mean": 8.3032, - "turn_mean": 2.0073, - "walk_km_per_staff": 2.1243, - "staff_util": 0.504, - "robot_util": 0.6251, - "robot_share": 0.9999, - "robot_bus_share": 0.7054, + "dish_wait_mean": 0.9333, + "dish_wait_p90": 1.8167, + "cold_share": 0.0032, + "seat_wait_mean": 6.8993, + "turn_mean": 2.0174, + "walk_km_per_staff": 2.1145, + "staff_util": 0.5043, + "robot_util": 0.6244, + "robot_share": 0.9994, + "robot_bus_share": 0.6983, "collects": 0, - "rescues": 3.825, - "pauses": 114.5, - "fragile_robot": 72.875, - "groups": 142.25, - "entry_wait_mean": 8.5806, - "blocked_wait_mean": 0.7975, - "guide_wait_mean": 0.0198, - "staff_wait_mean": 0.8173, - "full_wait_mean": 7.5057, - "pay_wait_mean": 36.9252 + "rescues": 3.725, + "pauses": 111.85, + "fragile_robot": 71.925, + "groups": 140.2, + "entry_wait_mean": 7.1791, + "blocked_wait_mean": 0.7823, + "guide_wait_mean": 0.0205, + "staff_wait_mean": 0.8028, + "full_wait_mean": 6.117, + "pay_wait_mean": 36.2508 } }, { @@ -6239,27 +6245,27 @@ "registers": 1 }, "site_result": { - "dish_wait_mean": 0.7431, - "dish_wait_p90": 1.3415, - "cold_share": 0.0005, - "seat_wait_mean": 7.7443, - "turn_mean": 1.9501, - "walk_km_per_staff": 2.0254, - "staff_util": 0.5024, - "robot_util": 0.5456, - "robot_share": 1.0, - "robot_bus_share": 0.821, - "collects": 0, - "rescues": 4.625, - "pauses": 123.825, - "fragile_robot": 71.3, - "groups": 141.45, - "entry_wait_mean": 8.0233, - "blocked_wait_mean": 0.7923, - "guide_wait_mean": 0.0228, - "staff_wait_mean": 0.8151, - "full_wait_mean": 6.952, - "pay_wait_mean": 36.8324 + "dish_wait_mean": 0.7426, + "dish_wait_p90": 1.3365, + "cold_share": 0.0009, + "seat_wait_mean": 8.963, + "turn_mean": 1.9489, + "walk_km_per_staff": 2.0839, + "staff_util": 0.506, + "robot_util": 0.5522, + "robot_share": 0.9998, + "robot_bus_share": 0.8205, + "collects": 0, + "rescues": 3.7, + "pauses": 126.675, + "fragile_robot": 72.45, + "groups": 144.225, + "entry_wait_mean": 9.2389, + "blocked_wait_mean": 0.8409, + "guide_wait_mean": 0.0171, + "staff_wait_mean": 0.858, + "full_wait_mean": 8.1221, + "pay_wait_mean": 37.013 } }, { diff --git a/tools/sim_layouts/README.md b/tools/sim_layouts/README.md index 3942ac1..33c941d 100644 --- a/tools/sim_layouts/README.md +++ b/tools/sim_layouts/README.md @@ -59,7 +59,7 @@ - 版は `large-` で始まる(large_store.py と famires_v3 の版から決まる) - トイレが2つ・レジが2つの店のための Unity の細かい形の規則(2026-11-02。`unity_export.py`):トイレの入口の点は、そのトイレの部屋に接する入口から取る(前はどのトイレも1つ目の入口になっていた)。会計に立つ点と並ぶ点は1つ目のレジだけに置く(Unity はレジ1つの条件で回すため。2つ目のレジは部屋として建てるだけ)。トイレ・レジが1つの今の6店は結果が変わらないので、出力は作り直していない(版 9b8dae7ebf8c のまま)。大型店は作り直した(版 large-f4f8ad343efe → large-291ae2e65898。卓・距離・止まる位置は同じ) - 2026-11-06:⑨のレジのまわりが狭すぎたので、島と左の壁ぞいの席を上へ1.0m(レジの上の端から島まで 1.5m → 2.5m)、レジと下の壁ぞいの6人席を右へ1.0m(レジの左の待つ所 3.1m → 4.1m)動かした。70卓・312席のまま、受け渡し口から卓まで 4.0〜34.4m。版は large-99db3254b08b(⑧は卓・距離・止まる位置とも前と同じ)。試算は⑨の 3,066 条件だけ回し直して入れ替え、結果は iCloud の simulation/v2_9_large/results_large_p7_v3.json -- 2026-11-07:⑧のロボットの待機点を、1列(間0.8m)から2列の互い違い6点に変えた(エイイチ 案B・(2))。1列で間0.8mだと、ロボットの前のセンサー(中心から0.85m)が隣の待機点の台にかかり、待機場所のそばで止まり合っていたため。奥の列は今までと同じ y=11.35 に x 18.9・20.5・22.1、手前の列は y=9.5 に x 19.7・21.3・22.9(同じ列は1.6m、斜めの隣は約2.0m)。2列のあいだに、ロボットのふだんの道(1.0m)が通る1.05m をあけた(右上の卓への距離を変えないため)。待機点は `robot_standby.slot_rects` に1台ずつの区画で持つ(famires_v3.standby_slots が読む。障害物も区画ごと)。卓までの距離は 19卓が −0.6〜+0.4m 変わり、平均 15.6 → 15.5m。版は large-b13cd179e6bf(⑨は版の名前だけ変わり、中身は同じ)。⑧の試算は 3,066 条件を回し直した +- 2026-11-07:⑧の待機点を2列の互い違いにした形(large-b13cd179e6bf・commit 18d23fe)を一度公開したが、Unity で奥の列の待機点3へ台が戻れなかった(手前の列の台のすき間 0.8m の下で行ったり来たり)ので、同じ日に元の1列・間0.8m・6点(large-99db3254b08b)に戻した。⑧の試算も元の値に戻した。待機場所のそばの止まり合いは、店の形を変えず、params の unity_rules.standby_straight_entry(待機点の真下 1.0m の入る点まで来てからまっすぐ入る)で直す - サイトと同じ描き方の平面図の画像は `large_plan_images.py`(試算のページの planSvg・bigPlanSvg をそのまま使う) ```