Skip to content

Add goal-conditioned replay particle IMM filter#1927

Merged
FlorianPfaff merged 2 commits intomainfrom
codex/goal-conditioned-particle-imm
Apr 29, 2026
Merged

Add goal-conditioned replay particle IMM filter#1927
FlorianPfaff merged 2 commits intomainfrom
codex/goal-conditioned-particle-imm

Conversation

@FlorianPfaff
Copy link
Copy Markdown
Owner

Summary

  • Adds GoalConditionedReplayParticleIMMFilter, a goal-conditioned replay particle filter with one discrete IMM-style motion mode per particle.
  • Supports stationary, diffusion, momentum, goal-directed, and jump dynamics selected by a Markov mode transition matrix.
  • Keeps mode indices coupled to continuous particles during likelihood resampling and exposes mode posterior summaries.
  • Exports the filter from pyrecest.filters and adds focused tests for dynamics, mode transitions, resampling, and association likelihoods.

Validation

  • PYTHONPATH=src python -m pytest tests\filters\test_goal_conditioned_replay_particle_imm_filter.py tests\filters\test_goal_conditioned_replay_particle_filter.py tests\filters\test_goal_conditioned_replay_imm_filter.py -q
  • PYTHONPATH=src python -m pytest tests\filters -q (354 passed, warnings only)
  • python -m ruff check src\pyrecest\filters\goal_conditioned_replay_particle_imm_filter.py tests\filters\test_goal_conditioned_replay_particle_imm_filter.py
  • python -m compileall -q src tests\filters\test_goal_conditioned_replay_particle_imm_filter.py

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 29, 2026

MegaLinter analysis: Success

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ COPYPASTE jscpd yes no no 16.25s
✅ JSON prettier 2 0 0 0 0.41s
✅ JSON v8r 2 0 0 2.36s
✅ MARKDOWN markdownlint 21 0 0 0 1.01s
✅ MARKDOWN markdown-table-formatter 21 0 0 0 0.26s
✅ PYTHON bandit 445 0 0 6.12s
✅ PYTHON black 445 1 0 0 10.26s
✅ PYTHON flake8 445 0 0 3.58s
✅ PYTHON isort 445 1 0 0 0.68s
✅ PYTHON mypy 445 0 0 5.12s
✅ PYTHON pylint 445 0 0 127.32s
✅ PYTHON ruff 445 1 0 0 0.07s
✅ REPOSITORY checkov yes no no 20.15s
✅ REPOSITORY gitleaks yes no no 9.82s
✅ REPOSITORY git_diff yes no no 0.04s
✅ REPOSITORY secretlint yes no no 7.72s
✅ REPOSITORY syft yes no no 3.61s
✅ REPOSITORY trivy-sbom yes no no 4.57s
✅ REPOSITORY trufflehog yes no no 18.97s
✅ YAML prettier 5 0 0 0 0.43s
✅ YAML v8r 5 0 0 4.36s
✅ YAML yamllint 5 0 0 0.36s

See detailed reports in MegaLinter artifacts

Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)

  • Documentation: Custom Flavors
  • Command: npx mega-linter-runner@9.4.0 --custom-flavor-setup --custom-flavor-linters PYTHON_PYLINT,PYTHON_BLACK,PYTHON_FLAKE8,PYTHON_ISORT,PYTHON_BANDIT,PYTHON_MYPY,PYTHON_RUFF,COPYPASTE_JSCPD,JSON_V8R,JSON_PRETTIER,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_CHECKOV,REPOSITORY_GIT_DIFF,REPOSITORY_GITLEAKS,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,YAML_PRETTIER,YAML_YAMLLINT,YAML_V8R

MegaLinter is graciously provided by OX Security
Show us your support by starring ⭐ the repository

@FlorianPfaff FlorianPfaff force-pushed the codex/goal-conditioned-particle-imm branch from c4679d1 to 63c8b84 Compare April 29, 2026 15:08
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 29, 2026

Test Results

    12 files  ± 0      12 suites  ±0   4h 28m 40s ⏱️ + 3m 34s
 1 266 tests + 4   1 266 ✅ + 4      0 💤 ± 0  0 ❌ ±0 
15 556 runs  +48  12 004 ✅ +32  3 552 💤 +16  0 ❌ ±0 

Results for commit 3e8ce12. ± Comparison against base commit b408385.

♻️ This comment has been updated with latest results.

@FlorianPfaff FlorianPfaff marked this pull request as ready for review April 29, 2026 18:40
@FlorianPfaff FlorianPfaff merged commit 1497ede into main Apr 29, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant