A Fully Differentiable Neuro-Soft-Symbolic Framework for Perceptual Task Planning
Organizations: Clemson University
Abstract
Perceptual planning tasks require two key capabilities: accurately perceiving uncertain scenes and planning valid action sequences following logical rules. Conventional methods convert perception into discrete symbolic facts and then plan, discarding perceptual uncertainty and severing task-level feedback to perception. We introduce a generic, fully differentiable neuro-soft-symbolic framework that connects visual perception and task planning within a single computational graph. The framework maintains a continuous soft symbolic state, lifts domain rules into a differentiable soft- transition operator, and optimizes action logits over a short planning horizon. Gradients from the planning objective can also update the perception parameters, allowing task-relevant perceptual representations to be refined during planning. On Blocksworld, our method solves 40/40 LatPlan-40 tasks and 596/600 PlanBench-600 tasks, compared with 33/40 for LatPlan and 587/600 for the reasoning-model baseline, while requiring substantially less computation and time. In the perceptual-uncertainty ablation, our method improves the success rate from 59% with frozen perception to 83%. We further conduct task-and-motion simulations on Blocksworld scenes, providing an execution-level validation of the compatibility between decoded task plans and downstream robotic motion execution.
Figures & tables
| Logic rule / constraint | ASP syntax | Soft- |
|---|---|---|
| : is clear if and only if no other block currently rests on . | clear(X) :- block(X), not blocked(X). blocked(X) :- on(Y,X), Y!=X. | (Eq. 4 ) — product-t-norm lift. |
| is allowed only when and are available. | legal(X,Y) :- clear(X), clear(Y), X!=Y. | (Eq. 5 ). |
| At most one block moves at a given timestep. | :- moves(X,T), moves(Z,T), X!=Z. | , , and (Eqs. 6 – 7 ). |
| A block supports at most one other block; the table has unlimited capacity. | :- on(X,Y), on(Z,Y), X!=Z, block(Y). | (Eq. 9 ). |
| A block remains on its current support unless a move commits. STAY creates no new relation. | on(X,Y,T+1) :- on(X,Y,T), not moved(X,T). | , where (Eq. 8 ). |
| Dataset | Method | Valid (SR) | Avg. time | Cost / 100 (USD) | Optimal |
|---|---|---|---|---|---|
| Blocksworld, LatPlan-40 | LatPlan ( ) [ 11 ] | 33/40 (82.50%) | – | – | – |
| Ours | 40/40 (100.00%) +17.50% | 3.53 s 0.01 s | $0.31 | 31/40 (77.50%) | |
| Blocksworld, PlanBench-600 | Claude 3.5 Sonnet (LLM) [ 21 ] | 329/600 (54.83%) | – | $0.44 | – |
| LLaMA 3.1 405B (LLM) [ 21 ] | 376/600 (62.67%) | – | – | – | |
| o1-mini (LRM) [ 21 ] | 340/600 56.67% | 10.84 s | $3.69 | – | |
| o1-preview (LRM) [ 21 ] | 587/600 (97.83%) | 40.43 s | $42.12 | – |
| Blocks | Method | Instances | Valid plans | Optimal | Inexecutable plans | Non-goal-reaching plans |
|---|---|---|---|---|---|---|
| All | o1-mini (LRM) [ 21 ] | 600 | 340 (56.67%) | – | 39.50% | 3.83% |
| All | o1-preview (LRM) [ 21 ] | 600 | 587 (97.83%) | – | 12 (2.00%) | 1 (0.17%) |
| Total | Ours | 600 | 596 (99.33%) | 350 (58.78% 0.08%) | 0 (0.00%) | 4 (0.67%) |
| 3-block | Ours | 100 | 100 (100.00%) | 84 (84.00%) | 0 (0.00%) | 0 (0.00%) |
| 4-block | Ours | 445 | 445 (100.00%) | 242 (54.38%) | 0 (0.00%) | 0 (0.00%) |
| 5-block | Ours | 55 | 51 (92.73%) | 24 (47.06%) | 0 (0.00%) | 4 (7.27%) |
| Original PlanBench-600 | Clear subset (100) | Blurred subset (100) | ||||
|---|---|---|---|---|---|---|
| Perception Variant | Valid (SR) | Time | Valid (SR) | Time | Valid (SR) | Time |
| Ground-truth symbolic state (PDDL) | 596/600 | 7.02 s | – | – | – | – |
| Frozen perception backbone | 596/600 | 7.63 s | 100/100 | 7.98 s | 59/100 | 10.13 s |
| Planning-optimized perception backbone | 596/600 | 9.96 s | 100/100 | 10.22 s | 83/100 +24% | 13.34 s |
| Valid (SR) | Optimal | Inexecutable | Non-goal-reaching | Avg. time | |
|---|---|---|---|---|---|
| 1 | 108/150 (72.0%) | 93/150 (62.0%) | 0 (0.0%) | 42 (28.0%) | 9.57 s |
| 3 (ours) | 150/150 (100.0%) | 115/150 (76.7%) | 0 (0.0%) | 0 (0.0%) | 7.77 s |
| 5 | 128/150 (85.3%) | 114/150 (76.0%) | 0 (0.0%) | 22 (14.7%) | 13.48 s |
| Dataset | Method | Valid (SR) | Inexecutable | Non-goal-reaching | Avg. time |
|---|---|---|---|---|---|
| Logistics | o1-preview (LRM) | 188/200 (94.00%) | 12 (6.00%) | 0 (0.00%) | 84.07 s |
| Ours | 196/200 (98.00%) +4.00% | 0 (0.00%) | 4 (2.00%) | 36.28 s -47.79 s | |
| Sokoban | o1-preview (LRM) | 7/55 (12.73%) | 37 (67.27%) | 11 (20.00%) | 147.98 s |
| Ours | 33/55 (60.00%) +47.27% | 0 (0.00%) | 22 (40.00%) | 53.02 s -94.96 s |