diff --git a/Benchmark-Models/Isensee_JCB2018/README.md b/Benchmark-Models/Isensee_JCB2018/README.md
new file mode 100644
index 0000000..8bc5aec
--- /dev/null
+++ b/Benchmark-Models/Isensee_JCB2018/README.md
@@ -0,0 +1,17 @@
+The paper describes a model selection problem with four hypotheses. Each hypothesis involves adding a set of parameters to the model -- these sets of parameters are annotated in the `model_selection_group` column of the parameters table. The paper shows a result where the model with the first hypothesis alone (H1) was accepted as the best by AIC.
+
+This benchmark problem is the parameter estimation problem for the H1-only model. The parameters for the other hypotheses are specified in `parameters_Isensee_JCB2018_model_selection.tsv`. For example, this Python code will create the PEtab problem for the H2+H3 model.
+```python
+import pandas as pd
+import petab
+
+petab_problem = petab.Problem.from_yaml("Isensee_JCB2018.yaml")
+model_selection_parameter_df = petab.get_parameter_df("parameters_Isensee_JCB2018_model_selection.tsv")
+
+petab_problem.parameter_df = petab.get_parameter_df(pd.concat([
+ # Remove the H1 parameters
+ petab_problem.parameter_df.query("model_selection_group != 'H1: different KD'"),
+ # Add the H2 and H3 parameters
+ model_selection_parameter_df.query("model_selection_group in ['H2: AC inhibition', 'H3: incomplete import']")
+]))
+```
diff --git a/Benchmark-Models/Isensee_JCB2018/model_Isensee_JCB2018.xml b/Benchmark-Models/Isensee_JCB2018/model_Isensee_JCB2018.xml
index c575f94..4b5721f 100644
--- a/Benchmark-Models/Isensee_JCB2018/model_Isensee_JCB2018.xml
+++ b/Benchmark-Models/Isensee_JCB2018/model_Isensee_JCB2018.xml
@@ -97,16 +97,13 @@
-
-
-
@@ -119,25 +116,14 @@
-
-
-
-
-
-
-
-
-
-
-
@@ -162,6 +148,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Benchmark-Models/Isensee_JCB2018/parameters_Isensee_JCB2018_model_selection.tsv b/Benchmark-Models/Isensee_JCB2018/parameters_Isensee_JCB2018_model_selection.tsv
index 76c2f76..1e8dd8c 100644
--- a/Benchmark-Models/Isensee_JCB2018/parameters_Isensee_JCB2018_model_selection.tsv
+++ b/Benchmark-Models/Isensee_JCB2018/parameters_Isensee_JCB2018_model_selection.tsv
@@ -1,11 +1,11 @@
parameterId parameterName parameterScale lowerBound upperBound nominalValue estimate objectivePriorType objectivePriorParameters model_selection_group
-xi_pAC \xi_{pAC} log10 0.001 1 1 0 parameterScaleNormal 0;3 H2: AC inhibition
-kp_AC kp_{AC} log10 1E-5 1E3 0 0 H2: AC inhibition
-kdp_AC kdp_{AC} log10 1E-5 1E3 0 0 H2: AC inhibition
-xi_i_Rp8_Br_cAMPS_pAB \xi_{i,Rp8,Br,cAMPS,pAB} log10 1E-05 1 1 0 parameterScaleNormal 0;3 H3: incomplete import
-xi_i_Rp8_pCPT_cAMPS_pAB \xi_{i,Rp8,pCPT,cAMPS,pAB} log10 1E-05 1 1 0 parameterScaleNormal 0;3 H3: incomplete import
-xi_i_Rp_cAMPS_pAB \xi_{i,Rp,cAMPS,pAB} log10 1E-05 1 1 0 parameterScaleNormal 0;3 H3: incomplete import
-xi_i_Sp8_Br_cAMPS_AM \xi_{i,Sp8,Br,cAMPS,AM} log10 1E-05 1 1 0 parameterScaleNormal 0;3 H3: incomplete import
-xi_pPDE \xi_{pPDE} log10 1 1000 1 0 parameterScaleNormal 0.397940008672038;3 H4: PDE_inhibition
-kf_PDE_Csub kf_{PDE,Csub} log10 1E-5 1E3 0 0 H4: PDE_inhibition
-KD_PDE_Csub KD_{PDE,Csub} log10 1E-5 1E3 0 0 H4: PDE_inhibition
+xi_pAC \xi_{pAC} log10 0.001 1 1 1 parameterScaleNormal 0;3 H2: AC inhibition
+kp_AC kp_{AC} log10 1E-5 1E3 0 1 H2: AC inhibition
+kdp_AC kdp_{AC} log10 1E-5 1E3 0 1 H2: AC inhibition
+xi_i_Rp8_Br_cAMPS_pAB \xi_{i,Rp8,Br,cAMPS,pAB} log10 1E-05 1 1 1 parameterScaleNormal 0;3 H3: incomplete import
+xi_i_Rp8_pCPT_cAMPS_pAB \xi_{i,Rp8,pCPT,cAMPS,pAB} log10 1E-05 1 1 1 parameterScaleNormal 0;3 H3: incomplete import
+xi_i_Rp_cAMPS_pAB \xi_{i,Rp,cAMPS,pAB} log10 1E-05 1 1 1 parameterScaleNormal 0;3 H3: incomplete import
+xi_i_Sp8_Br_cAMPS_AM \xi_{i,Sp8,Br,cAMPS,AM} log10 1E-05 1 1 1 parameterScaleNormal 0;3 H3: incomplete import
+xi_pPDE \xi_{pPDE} log10 1 1000 1 1 parameterScaleNormal 0.397940008672038;3 H4: PDE inhibition
+kf_PDE_Csub kf_{PDE,Csub} log10 1E-5 1E3 0 1 H4: PDE inhibition
+KD_PDE_Csub KD_{PDE,Csub} log10 1E-5 1E3 0 1 H4: PDE inhibition
diff --git a/src/python/pyproject.toml b/src/python/pyproject.toml
index 4f48a20..2f96eda 100644
--- a/src/python/pyproject.toml
+++ b/src/python/pyproject.toml
@@ -27,7 +27,7 @@ dependencies = [
]
[project.optional-dependencies]
-dev = ["ruff"]
+dev = ["pre-commit", "pytest", "ruff"]
[project.scripts]
bmp-petablint = "benchmark_models_petab.check_petablint:main"