pyRDDLGym is a Python toolkit designed to automatically generate OpenAI Gym environments from RDDL description files. RDDL is a compact and easily modifiable representation language for dynamic stochastic environments. pyRDDLGym includes tools for parsing, simulating, and evaluating RDDL models, supporting the scaling of models to handle multiple entities and configurations effortlessly. This makes it highly valuable for developing benchmarks and facilitating research in reinforcement learning, hybrid approaches, and symbolic dynamic programming. Furthermore, pyRDDLGym integrates seamlessly with popular reinforcement learning algorithms and planners, such as stable-baselines, JaxPlan, GurobiPlan, and PROST, enhancing its utility for researchers and developers in the field.
rddlrepository serves as a central hub for Relational Dynamic Influence Diagram Language (RDDL) files. It comprises a wide array of domains and instances, designed to cater to various research and application needs. The repository includes RDDL files that cover a broad spectrum of problems from multiple disciplines, showcasing different facets of the latest official RDDL syntax. The rddlrepository is fully compatible with the pyRDDLGym ecosystem, facilitating seamless integration and use. It provides custom visualizers for a subset of domains, which are incredibly useful for analyzing and debugging models. These visualizers help users understand the behavior of their RDDL models in a more intuitive and interactive manner.
pyRDDLGym-JAX is designed to compile RDDL (Relational Dynamic Influence Diagram Language) description files into the JAX auto-diff library for differentiable simulation and optimization. It allows for the creation of differentiable simulators from RDDL domains, enabling gradient-based planning algorithms. It provides tools for automated translation and compilation, scalable gradient-based planning algorithms, and automatic model relaxations for discrete and hybrid domains. The tool supports various planning methods, including deep reactive policy networks and straight-line planning.
pyRDDLGym-gurobi is designed to compile RDDL (Relational Dynamic Influence Diagram Language) description files into Gurobi's mixed-integer (non-linear) programs. This powerful integration facilitates the optimization of complex decision-making processes in dynamic environments, enabling automated planning and precise control of various parameters. By leveraging Gurobi's advanced capabilities, pyRDDLGym-gurobi offers robust solutions for optimizing Markov Decision Processes (MDPs) in diverse applications.
The pyRDDLGym-rl package provides wrappers for integrating deep reinforcement learning algorithms, such as Stable Baselines 3 and RLlib, with the pyRDDLGym toolkit. This allows users to apply popular reinforcement learning algorithms to environments defined in RDDL (Relational Dynamic Influence Diagram Language). The package includes tools for setting up and running these algorithms, making it easier to develop and test reinforcement learning models in complex, dynamic environments. By leveraging the capabilities of Stable Baselines 3 and RLlib, pyRDDLGym-rl enhances the flexibility and usability of pyRDDLGym for researchers and practitioners working on reinforcement learning projects.
The bboptpy package is an advanced suite of efficient black-box optimization algorithms implemented in C++ and accessible through a user-friendly Python interface. This package encompasses a wide array of classical and contemporary optimization methods, designed to solve both univariate and multivariate optimization problems effectively. The package is designed to be easily integrable into Python projects, offering transparent implementations that facilitate customization and reproducibility. It supports the optimization of complex functions by providing a coherent and comprehensive suite of tools, making it an invaluable resource for researchers and practitioners in fields such as machine learning, engineering, and operations research.
The cascade-correlation-neural-networks package is a Python framework for building and training constructive feed-forward neural networks, specifically implementing the Cascade-Correlation (CCNN) architecture. It provides an implementation of the sibling-descendant CCNN with extendable wrappers for popular libraries like TensorFlow, Keras, Scipy, and Scikit-learn. The package supports custom topologies, training algorithms, and loss functions, making it versatile for various machine learning tasks such as regression, classification, and unsupervised learning. It's designed to be user-friendly and easily integrable into existing projects, providing a robust tool for researchers and practitioners working with neural networks.