skillfed

bddl

bddl v3.6.0 100.0K downloads/30d#13,005 on PyPI125
License unclear Abandoned released

What it is and what it does

BDDL is a predicate logic language for defining household activity benchmarks in the BEHAVIOR framework. It represents each activity as a planning problem with three components: a categorized object list, an initial state with ground literals, and a goal condition expressed as a logical formula. The language is simulator-agnostic—it specifies only the state that must be reached for success, not how an agent achieves it.

To use BDDL, you either work with it standalone (parsing activity definitions and evaluating conditions via stub backends) or integrate it with a simulator like OmniGibson by implementing a BDDLBackend subclass and object-state predicates. The package includes logic evaluation and a basic solver for ground goal solutions. It depends on pytest, numpy, networkx, jupytext, future, and nltk, making installation heavyweight.

Use it for:

  • Define benchmark household tasks (e.g., cleaning, organizing) as formal planning problems for embodied AI research.
  • Evaluate whether a simulated agent has satisfied activity success conditions by checking goal predicates.
  • Integrate activity definitions with a physics simulator to sample initial scenes and validate agent behavior.
  • Generate ground solutions to compositional goal conditions with quantification for task planning.
  • Extend BDDL to a new simulator by implementing predicate checks and object-state instantiation.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

BDDL is a domain-specific language for defining household activity benchmarks as logical planning problems, specifying initial object states, conditions, and goal states for simulation-based behavior evaluation.

No—the repository is archived and abandoned; no active maintenance since the latest commit. The unclear license, high install friction (6 dependencies), and lack of Python version specification create friction. Install only if you are actively contributing to or maintaining a fork, or integrating with an existing BEHAVIOR simulator project that requires this exact version.

Install

bddl on PyPI

pip

pip install bddl

uv

uv add bddl

poetry

poetry add bddl

Installing bddl

Before you install

High install friction due to 6 runtime dependencies including pytest, numpy, networkx, jupytext, future, and nltk. Repository is archived and abandoned as of the latest commit; no active maintenance.

License in practice

License treatment is unclear—no SPDX identifier or raw license text is available in the package metadata. Verify licensing terms before use in proprietary or commercial contexts.

Quickstart

pip install bddl

from bddl.activity import Conditions

behavior_activity = "storing_the_groceries"
activity_definition = 0
simulator = "omnigibson"

conds = Conditions(behavior_activity, activity_definition, simulator)

Requires a simulator backend (e.g., OmniGibson) or a stub implementation like TrivialBackend to evaluate activity conditions; cannot be used standalone for simulation.

Verify before relying

  • Whether the package works with current Python versions (requires_python is unspecified)
  • Current status of the BEHAVIOR-1K vs BEHAVIOR-100 version split and which is recommended
  • Whether the archived repository will accept bug reports or security patches
  • Full list of supported predicates and their simulator-specific implementations

Package facts

License not declared (unclear)
Python support not specified
Install friction high — source build required
Runtime dependencies 6 — pytest, numpy, networkx, jupytext, future, nltk
Maintenance abandoned — 417 days since the last release
Last repo commit (repository archived)
First released
Downloads 100,016/month — #13,005 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: bddl-3.6.0.tar.gz

Tags

domain-specific language planning problemshousehold activity benchmark definitionpredicate logic activity specificationbehavior simulation task definitiongoal condition evaluation frameworkactivity problem formulation language
domain-specific-languageplanning-benchmarkabandoned

More Artificial Intelligence packages

Further reading