SciML / SciML/StructuralIdentifiability.jl
Fixed initial conditions: local identifiability
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 129
- Forks
- 23
- Avg merge
- 9h 35m
- Merged PRs (30d)
- 17
Description
In addition to knowing the ODE system and time series data for some outputs, one frequently also knows the initial conditions for some of the states. It would be great to use this information to clarify the identifiability analysis.
In the case of local identifiability, the algorithm computes the observability matrix at a random point using the algorithm by Sedoglavic.
Instead of using a completely random point one could use the user-specified initial conditions for some of the states. The issue with such an algorithm is that it may produce wrong result as shown here. I am not aware of any algorithm resolving the issue with reasonable complexity. What we could still do is:
- One can always get a correct result from an observability matrix if it will be computed up to high enough order. The problem is that we do not know how far to go but we could use some heuristics, say, double the order until the rank stabilises.
- In such an algorithm the only way things can go wrong is when a locally identifiable parameter is classified as non identifiable. Therefore, we can show a warning but only in the case there are non identifiable parameters in the result.
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
No source files, tests, or entry points are named. Start by tracing the local identifiability algorithm that computes the observability matrix with Sedoglavic's method, then review how user-specified initial conditions could enter the analysis. Done would require a defensible strategy for increasing the matrix order and a warning when non-identifiable parameters may be false negatives.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100