djduecaster commited on
Commit
fd0c827
·
verified ·
1 Parent(s): 1ee3bdb

Upload 3 files

Browse files
Files changed (3) hide show
  1. README.md +72 -0
  2. manifest.json +129 -0
  3. policy.onnx +3 -0
README.md ADDED
@@ -0,0 +1,72 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ tags:
3
+ - microduck
4
+ - robotics
5
+ - onnx
6
+ - microduck-slot:walk
7
+ library_name: microduck
8
+ pipeline_tag: robotics
9
+ ---
10
+
11
+ # dfreq-rollers
12
+
13
+ **Published on Hugging Face.** Repository: `djduecaster/dfreq-rollers`; proposed Arena entry: `dfreq-rollers`. Not submitted to Arena.
14
+
15
+ A small, event-specific command calibration of Pollen Robotics’ Roller Sprint reference feedback policy. The local full official sweep scored **3.112 seconds, 5/5 finishes**, versus **3.136 seconds** for the unchanged reference: **0.024 seconds (about 0.77%) faster**. The selected five-start result was repeated exactly. This is not a server-verified score or leaderboard-record claim.
16
+
17
+ ## Credit and actual contribution
18
+
19
+ The base is [Pollen’s Roller Sprint reference](https://huggingface.co/pollen-robotics/microduck-roller-sprint-2m-reference/tree/c72fb92594e8b415487e87dfeed509141afc5e25), revision `c72fb92594e8b415487e87dfeed509141afc5e25`.
20
+
21
+ - Base SHA-256: `01edf63a529a8396d46dac62bb427fda1ce67685611e72ddf790bf46f610c82a`.
22
+ - Candidate `policy.onnx`: **794,263 bytes**, SHA-256 `2092a1d8e5b30f2778f227ddf6f26f8eda6487236279f8663bdff71e12805590`.
23
+ - **All original neural weights and normalizer bytes are unchanged. No new training or fine-tuning occurred.** The manifest’s `training` field describes Pollen’s upstream training, not work performed for this calibration.
24
+
25
+ Exactly one predeclared offset was tested. Before the original normalizer, only raw forward-command observation component 48 (zero-based) is mapped:
26
+
27
+ ```text
28
+ inside = (vx_external >= float32(0.3)) AND (vx_external <= float32(2.0))
29
+ vx_internal = Where(inside,
30
+ Clip(float32(vx_external + float32(-0.05)), float32(0.3), float32(2.0)),
31
+ vx_external)
32
+ ```
33
+
34
+ The prefix contains only standard ONNX Split/comparison/And/Add/Clip/Where/Concat operations. Removing it and reversing its single input rewire restores the original model bytes exactly. The other 60 observations—including genuine actual previous-action feedback, lateral command and heading error—are unchanged. There is no clock, step counter, seed classifier/table, runtime metadata conditioning or prerecorded action sequence. This remains neural state feedback with a static command calibration, not a newly trained network.
35
+
36
+ ## Interface and command semantics
37
+
38
+ Model API 1: **61 raw float32 observations → 14 float32 actions at 50 Hz**, **rollers** rig, embedded normalizer, perpetual `walk` slot and standing entry pose. The upstream twist convention is `[push: 0 coast, >0 push m/s, <0 brake; lateral 0; heading error rad]`; the Arena commands `[vx,0,0]`. Head/body commands remain unused zeros.
39
+
40
+ **Zero/coast, signed zero, negative/brake and positive commands outside the inclusive calibrated interval are returned bit-exactly unchanged.** Positive non-grid values *inside* the interval are calibrated too. This preserves the upstream input modes, not a new stopping/braking or real-robot safety guarantee.
41
+
42
+ The fixed mask creates a discontinuity just above the upper bound: float32(2.0) maps to approximately 1.95, while the next representable larger input is unchanged. No smoothness claim is made. At the selected external 1.1 command, the exact internal float32 value is **1.0500000715255737**, not decimal1.05.
43
+
44
+ **Simulation-only and event-specific.** No physical-robot deployment, all-speed stability or general-purpose controller safety has been established. No robot-loading recommendation is provided.
45
+
46
+ ## Local verification
47
+
48
+ The unchanged Arena runner v4 performed the complete official 18-command scan on seed 1, then the three selected commands across the remaining four starts—**30 official races**. It selected external **1.1 m/s**:
49
+
50
+ | Start seed | Finish time (s) |
51
+ | --- | ---: |
52
+ | 1 | 3.10 |
53
+ | 2 | 3.08 |
54
+ | 3 | 3.16 |
55
+ | 4 | 3.08 |
56
+ | 5 | 3.14 |
57
+
58
+ The separate five-race confirmation reproduced all 20 observation/action/timed-trace/untimed-settle arrays exactly. Before the candidate screen, the unchanged reference also matched its 20 cached baseline arrays. Relative to the reference, three starts improved, one tied and one became slower; the aggregate improved from 784 to 778 timed control ticks.
59
+
60
+ The bounded investigation used **one candidate export, 1818 saved-input preflight evaluations, 45 native races and 19,514 controls**, including settling. The preflight compared 909 candidate outputs byte-for-byte against the unchanged base on independently mapped observations. Source/math review and an independent saved-output audit passed. No physics or neural weights were changed.
61
+
62
+ These original five starts were used for screening and selection: **they are optimization data, not held-out robustness evidence**. Other commands included falls and timeouts. Exact local repetition does not guarantee identical server results or future eligibility.
63
+
64
+ ## Upstream training provenance
65
+
66
+ Pollen’s manifest identifies task `Mjlab-RollerSprint2m-MicroDuck`, repository `pollen-robotics/microduck-challenges`, commit `611b6453c`, checkpoint 2999, seed 1, 4096 environments and 3000 iterations, using `mjlab-microduck 0.1.0 @ 981a279c6`. Those are **upstream training facts**; no training was performed for `dfreq-rollers`.
67
+
68
+ ## Rights and publication status
69
+
70
+ Pollen Robotics’ upstream weights are credited. No standalone open-source model license is asserted or invented. This publication is an attributed Hugging Face service-scoped remix under applicable platform terms, not a blanket off-platform redistribution grant. Publication was authorized separately by the user.
71
+
72
+ This repository has been published with user authorization. No Arena entry has been submitted.
manifest.json ADDED
@@ -0,0 +1,129 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_version": 2,
3
+ "model_api": 1,
4
+ "obs_len": 61,
5
+ "action_len": 14,
6
+ "robot": {
7
+ "model": "microduck",
8
+ "hw_rev": 1,
9
+ "servos": "xl330",
10
+ "control_hz": 50,
11
+ "accessories": [
12
+ "rollers"
13
+ ]
14
+ },
15
+ "name": "dfreq-rollers",
16
+ "kind": "perpetual",
17
+ "entry_pose": "standing",
18
+ "description": "Simulation-only Roller Sprint command calibration of unchanged Pollen reference neural weights. A fixed -0.05 m/s offset/clamp applies only inside positive F32 [0.3, 2.0]; zero/coast, negative/brake and commands outside the interval pass through unchanged. Local full official sweep and exact repeat: 3.112 s, 5/5. No new neural training or public score claim.",
19
+ "command": {
20
+ "encoding": "constant",
21
+ "idle": [
22
+ 0.0,
23
+ 0.0,
24
+ 0.0
25
+ ],
26
+ "twist": "[push: 0 coast, >0 push m/s, <0 brake; lateral 0; heading error rad]; the Arena commands [vx, 0, 0]",
27
+ "head": "unused (zeros)",
28
+ "body": "unused (zeros)"
29
+ },
30
+ "duration_s": null,
31
+ "slot": "walk",
32
+ "training": {
33
+ "repo": "https://github.com/pollen-robotics/microduck-challenges.git",
34
+ "commit": "611b6453c",
35
+ "branch": "main",
36
+ "dirty": false,
37
+ "command": [
38
+ "train",
39
+ "Mjlab-RollerSprint2m-MicroDuck",
40
+ "--env.scene.num-envs",
41
+ "4096",
42
+ "--agent.max-iterations",
43
+ "3000",
44
+ "--agent.seed",
45
+ "1",
46
+ "--agent.logger",
47
+ "tensorboard",
48
+ "--agent.run-name",
49
+ "reference"
50
+ ],
51
+ "seed": 1,
52
+ "base": "mjlab-microduck 0.1.0 @ 981a279c6",
53
+ "started": "2026-09-26T04:21:50Z",
54
+ "task_id": "Mjlab-RollerSprint2m-MicroDuck",
55
+ "checkpoint": 2999,
56
+ "source_file": "model_2999.pt"
57
+ },
58
+ "arena": {
59
+ "event": "roller-sprint-2m"
60
+ },
61
+ "artifact": {
62
+ "file": "policy.onnx",
63
+ "bytes": 794263,
64
+ "sha256": "2092a1d8e5b30f2778f227ddf6f26f8eda6487236279f8663bdff71e12805590"
65
+ },
66
+ "provenance": {
67
+ "base_model": "pollen-robotics/microduck-roller-sprint-2m-reference",
68
+ "base_revision": "c72fb92594e8b415487e87dfeed509141afc5e25",
69
+ "base_sha256": "01edf63a529a8396d46dac62bb427fda1ce67685611e72ddf790bf46f610c82a",
70
+ "original_neural_parameters_byte_exact": true,
71
+ "training_field_describes_upstream_Pollen_model": true,
72
+ "new_neural_training": false,
73
+ "original_contribution": "One predeclared static, memoryless positive-domain velocity-command calibration; no learned-weight update. Source/math reviewed, locally evaluated by unchanged official sweep and exact repeat."
74
+ },
75
+ "command_calibration": {
76
+ "input_index_zero_based": 48,
77
+ "guard": "float32(0.3)<=vx_external<=float32(2.0)",
78
+ "inside_arithmetic": "Clip(float32(vx_external+float32(-0.05)),float32(0.3),float32(2.0))",
79
+ "outside_arithmetic": "Return original float32 vx_external bits unchanged.",
80
+ "offset_float32": -0.05000000074505806,
81
+ "lower_bound_float32": 0.30000001192092896,
82
+ "upper_bound_float32": 2.0,
83
+ "other_60_observation_values_unchanged": true,
84
+ "lateral_and_heading_error_unchanged": true,
85
+ "normalizer_follows_calibration": true,
86
+ "actual_previous_action_history": true,
87
+ "clock_or_seed_conditioning": false,
88
+ "coast_and_brake_mode_note": "Zero/coast including signed zero and negative/brake values retain original input bits. This preserves the upstream command mode, not a new stopping or hardware-safety guarantee.",
89
+ "boundary_note": "Discontinuous just above 2: float32(2) maps to about 1.95; its next representable larger input is outside the interval and is unchanged. Positive off-grid values inside the interval are calibrated too."
90
+ },
91
+ "local_evaluation": {
92
+ "date": "2026-10-25",
93
+ "event": "roller-sprint-2m",
94
+ "runner_version": 4,
95
+ "full_official_sweep_races": 30,
96
+ "mean_finish_s": 3.112,
97
+ "external_command_m_s": 1.1,
98
+ "internal_float32_command_m_s": 1.0500000715255737,
99
+ "seeds_finished": 5,
100
+ "per_seed_s": [
101
+ 3.1,
102
+ 3.08,
103
+ 3.16,
104
+ 3.08,
105
+ 3.14
106
+ ],
107
+ "reference_mean_s": 3.136,
108
+ "gain_s": 0.024,
109
+ "sum_timed_ticks_reference": 784,
110
+ "sum_timed_ticks_candidate": 778,
111
+ "exact_baseline_arrays": 20,
112
+ "exact_repeat_arrays": 20,
113
+ "all_preparation_and_confirmation_races": 45,
114
+ "all_control_steps_including_settle": 19514,
115
+ "saved_preflight_ORT_rows": 1818,
116
+ "candidate_exports": 1,
117
+ "fresh_seed_robustness_claim": false,
118
+ "server_submission_verified": false,
119
+ "independent_saved_audit_sha256": "a82a205e9fd2a9834332df650bb425df48f909ee92fd0873243687269788ce61",
120
+ "terminal_no_weights_archive_sha256": "bc511c2fa451d23a887e79d13130900983b95ea5f5813325dca9711ea7b42999"
121
+ },
122
+ "publication_status": {
123
+ "state": "published_public_huggingface_not_submitted",
124
+ "proposed_repo": "djduecaster/dfreq-rollers",
125
+ "proposed_entry": "dfreq-rollers",
126
+ "publication_authorized": true
127
+ },
128
+ "rights_notice": "Pollen Robotics upstream neural weights are credited; no standalone OSS model license is asserted or invented. This publication is an attributed Hugging Face service-scoped remix under applicable platform terms, not a blanket off-platform redistribution grant. Publication was authorized separately by the user."
129
+ }
policy.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2092a1d8e5b30f2778f227ddf6f26f8eda6487236279f8663bdff71e12805590
3
+ size 794263