Update TODO.md: v4 status, revised gap analysis, priority tasks
Browse files- medal-solvers/TODO.md +70 -21
medal-solvers/TODO.md
CHANGED
|
@@ -1,32 +1,81 @@
|
|
| 1 |
# medal-solvers β TODO
|
| 2 |
|
| 3 |
-
> **Current LB: 6059.08** (V25) |
|
| 4 |
|
| 5 |
-
## Task 153
|
| 6 |
|
| 7 |
-
|
| 8 |
-
Kaggle
|
| 9 |
-
Task 255 (11.570) and 319 (11.580) match LB exactly in same environments.
|
| 10 |
|
| 11 |
-
|
|
|
|
| 12 |
|
| 13 |
-
|
| 14 |
-
- Avoid multi-dim Gather indices β use scalar Gather like task319
|
| 15 |
-
- Avoid broadcast [9,9,3,3] β use explicit per-pair checks like task319
|
| 16 |
-
- If the architecture pattern is the cause, this will fix it
|
| 17 |
|
| 18 |
-
|
| 19 |
-
- Base: 6.14 pts (4286 nodes). If optimized like 255/319: gain +5-7 β BRONZE
|
| 20 |
|
| 21 |
-
|
| 22 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 23 |
|
| 24 |
## COMPLETED β
|
| 25 |
|
| 26 |
-
| Task |
|
| 27 |
-
|------|-----------
|
| 28 |
-
|
|
| 29 |
-
|
|
| 30 |
-
|
|
| 31 |
-
| 285 |
|
| 32 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
# medal-solvers β TODO
|
| 2 |
|
| 3 |
+
> **Current LB: 6059.08** (V25) | Target: 6100 | Remaining: **+40.92 pts**
|
| 4 |
|
| 5 |
+
## Task 153 V4 β READY FOR SUBMISSION β
|
| 6 |
|
| 7 |
+
V4 rebuilt without multi-dim Gather/broadcast. Local: **13.998 pts** (87 nodes, 7KB).
|
| 8 |
+
If Kaggle matches: +6 pts gain (7.92 β ~14). Uses proven patterns from task319/255.
|
|
|
|
| 9 |
|
| 10 |
+
**Builder**: `medal-solvers/build_task153_v4.py`
|
| 11 |
+
**Model**: `medal-solvers/optimized/task153.onnx`
|
| 12 |
|
| 13 |
+
## Strategy to Reach 6100
|
|
|
|
|
|
|
|
|
|
| 14 |
|
| 15 |
+
Even with task153 fix (+6 pts), we'd be at ~6065. Need **+35 more pts**.
|
|
|
|
| 16 |
|
| 17 |
+
### Priority Tasks for Optimization
|
| 18 |
+
|
| 19 |
+
| Priority | Task | Base Score | Base Nodes | Potential Gain | Difficulty |
|
| 20 |
+
|----------|------|-----------|-----------|---------------|-----------|
|
| 21 |
+
| 1 | 366 | 7.08 | 12512 | +4-6 pts | HIGH (backtracking) |
|
| 22 |
+
| 2 | 025 | 8.71 | 7449 | +3-5 pts | HIGH (line reflection) |
|
| 23 |
+
| 3 | 158 | 9.30 | 822 | +3-4 pts | MEDIUM |
|
| 24 |
+
| 4 | 209 | 10.11 | 4286 | +2-3 pts | HIGH (variable blocks) |
|
| 25 |
+
| 5 | 118 | 10.42 | 1163 | +2-3 pts | MEDIUM (cross extension) |
|
| 26 |
+
| 6 | 182 | 11.45 | 522 | +1-2 pts | MEDIUM (template matching) |
|
| 27 |
+
| 7 | 191 | 11.53 | 1037 | +1-2 pts | MEDIUM |
|
| 28 |
+
| 8 | 387 | 10.46 | 875 | +1-2 pts | ? |
|
| 29 |
+
|
| 30 |
+
### Estimated Total Potential
|
| 31 |
+
- Task 153 v4: +6 pts (high confidence)
|
| 32 |
+
- Task 366: +4-6 pts (if solvable in ONNX)
|
| 33 |
+
- Task 025: +3-5 pts (if solvable in ONNX)
|
| 34 |
+
- Task 158 + 118: +5-7 pts (if solvable)
|
| 35 |
+
- Other tasks: +5-10 pts (aggregate)
|
| 36 |
+
- **Total potential: +25-35 pts** β 6084-6094 (still short of 6100)
|
| 37 |
+
|
| 38 |
+
### To Reach 6100
|
| 39 |
+
Need ALL of:
|
| 40 |
+
1. Task 153 fix confirmed on Kaggle (+6)
|
| 41 |
+
2. At least 3-4 more tasks optimized at +5 pts each
|
| 42 |
+
3. OR find 1-2 tasks with exceptional gain (+10+)
|
| 43 |
+
|
| 44 |
+
## Task 153 V3 Discrepancy β ROOT CAUSE IDENTIFIED
|
| 45 |
+
|
| 46 |
+
Multi-dimensional Gather [9,3,3] causes ~370Γ memory inflation on Kaggle.
|
| 47 |
+
V4 eliminates this by using flat Gather [9,9] from [100] data.
|
| 48 |
+
Same approach as task319 which scores exactly as predicted.
|
| 49 |
|
| 50 |
## COMPLETED β
|
| 51 |
|
| 52 |
+
| Task | Nodes | Local Score | LB Score | Local = LB? |
|
| 53 |
+
|------|-------|-------------|----------|-------------|
|
| 54 |
+
| 084 | 40 | 12.273 | ~12 | β
|
|
| 55 |
+
| 153 v4 | 87 | 13.998 | TBD | β (submit to verify) |
|
| 56 |
+
| 255 | 707 | 11.570 | 11.57 | β
|
|
| 57 |
+
| 285 | 844 | 8.818 | 8.82 | β
|
|
| 58 |
+
| 319 | 764 | 11.580 | 11.58 | β
|
|
| 59 |
+
|
| 60 |
+
## Task Rules Summary (for next optimization targets)
|
| 61 |
+
|
| 62 |
+
### Task 118 (1163 nodes, base 10.42)
|
| 63 |
+
- Cross pattern of color 2 in grid of 0/5
|
| 64 |
+
- Cells of color 5 adjacent to cross arms get recolored to 8
|
| 65 |
+
- Extension direction determined by which arm is shorter
|
| 66 |
+
|
| 67 |
+
### Task 182 (522 nodes, base 11.45)
|
| 68 |
+
- Template pattern inside 5-bordered frame
|
| 69 |
+
- Shapes of color 1 matching template shape β recolor to template color
|
| 70 |
+
- Non-matching shapes stay as color 1
|
| 71 |
+
|
| 72 |
+
### Task 025 (7449 nodes, base 8.71)
|
| 73 |
+
- Grid with horizontal/vertical lines of one color
|
| 74 |
+
- Dot markers get "projected" or "reflected" to nearest line
|
| 75 |
+
- Complex positional logic
|
| 76 |
+
|
| 77 |
+
### Task 366 (12512 nodes, base 7.08)
|
| 78 |
+
- Object placement by dot-pattern matching
|
| 79 |
+
- Split input into source/target halves
|
| 80 |
+
- Match objects to dot patterns and place them
|
| 81 |
+
- Requires backtracking β very difficult in ONNX (no loops)
|