SciML / SciML/StructuralIdentifiability.jl
*very* long identifiability runtime for relatively small model
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 129
- Forks
- 23
- Avg merge
- 9h 35m
- Merged PRs (30d)
- 17
Description
I have the following model:
ode = @ODEmodel(
X'(t) = p - X(t),
Y'(t) = -Y(t) + ((K1^3)*v1) / (K1^3 + X(t)^3),
Z'(t) = -Z(t) + (v2*(Y(t)^3)*(X(t)^3)) / ((K2^3 + X(t)^3)*(K3^3 + Y(t)^3)),
y(t) = Z(t)
)
for which the runtime of assess_identifiability is incredibly long. I.e.
assess_identifiability(ode)
takes at least 24 hours (I have not actually managed to complete it).
The model is essentially a incoherent feedforward loop (X deactives Y and activets Z, Y activates Z). In Catalyst it can be implemented like
rn = @reaction_network begin
(p,1.0), 0 <--> X
hillr(X, v1, K1, 3), 0 --> Y
v2*hill(X, 1.0, K2, 3)*hill(Y, 1.0, K3, 3), 0 --> Z
1.0, (Y,Z) --> 0
end
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce assess_identifiability(ode) with the Julia model in the issue and measure where the runtime is spent. Read the implementation of assess_identifiability and its identifiability analysis path, using the supplied incoherent feedforward-loop model as the test case. Done means the example completes in a practical, documented runtime without changing its identifiability result.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100