Observed since 20 Oct, 19:53 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Design Space Graph (ADSG Core)
GitHub Repository | Documentation
The Design Space Graph (DSG) allows you to model design spaces using a directed graph that contains three types of architectural choices:
Modeling a design space like this allows you to:
Note: due to historical reasons the package and code refer to the ADSG (Architecture DSG), because originally it had been developed to model system architecture design spaces. In the context of this library, the ADSG and DSG can be considered to be equivalent.
First, create a conda environment (skip if you already have one):
conda create --name dsg python=3.12
conda activate dsg
Then install the package:
conda install numpy scipy~=1.9
pip install adsg-core
Ensure optimization algorithms are installed (SBArchOpt):
pip install sb-arch-opt
If you want to interact with the DSG from a Jupyter notebook:
pip install adsg-core[nb]
jupyter notebook
Refer to the documentation for more background on the DSG and how to implement architecture optimization problems.
An example DSG with two selection choices:
An example DSG with a connection choice:
The DSG of the Apollo problem:
The DSG of the GNC problem:
If you use the DSG in your work, please cite it:
J.H. Bussemaker. System Architecture Optimization: Function-Based Modeling, Optimization Algorithms, and Multidisciplinary Evaluation. Dissertation, Delft University of Technology, July 2025. DOI: 10.4233/uuid:246b18f9-1f8c-4ff7-b824-2b1786cf9d14
The project is coordinated by: Jasper Bussemaker (jasper.bussemaker at dlr.de)
If you find a bug or have a feature request, please file an issue using the Github issue tracker. If you require support for using the DSG or want to collaborate, feel free to contact me.
Contributions are appreciated too:
pytest)dev branchNOTE: Do NOT directly contribute to the adsg_core.optimization.assign_enc and .sel_choice_enc modules!
Their development happens in separate repositories:
Use update_enc_repos.py to update the code in this repository.
pip install -r requirements-docs.txt
mkdocs serve
Refer to mkdocs and mkdocstrings documentation for more information.
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 1.5.0 | 17 Oct 2026 | 16 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 19:53 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:724d503d322f798947603478acc14d4121106b47d48a037d89aebcd9ad7e0321