Skip to content

stanbot8/skibidy

Repository files navigation

Skibidy

Skin BioDynaMo (SkiBiDy) is a hybrid agent-continuum simulation of skin tissue biology built on BioDynaMo. Models wound healing, immune response, fibroblast/collagen dynamics, scar formation, vascular perfusion, hemostasis, tumor growth, and diabetic impairment.

Wound healing simulation

Overview

Healthy skin runs as a composite field coupling 28 PDEs with no agents. When an event occurs (wound, infection, tumor), cells spawn from local field state, interact with the fields, and dissolve back once stable. This is called UWYN (Use What You Need), meaning the simulation only creates agents where the biology demands resolution.

Corneum    [continuum]  barrier, desquamation
Granulosum [continuum]  keratohyalin, tight junctions
Spinosum   [continuum]  desmosomes; agents on event
Basale     [continuum]  stem/TA cells on event
---------- basement membrane ----------
Dermis     [continuum]  vasculature, O2/KGF, collagen; agents on event

Quick start

source <path_to_biodynamo>/bin/thisbdm.sh
./run.sh                                     # interactive menu
./run.sh --study=wound                      # punch biopsy wound healing
./run.sh --study=diabetic-wound                   # chronic diabetic ulcer
./run.sh --study=tumor                      # basal cell carcinoma growth
./run.sh --compare                           # normal vs diabetic side-by-side
./tests/test.sh                              # 130 unit tests

Modules

22 modules, each self-contained in modules/ with its own config, source, data, and README. See docs/ for the module index with biology, parameters, coupling, and validation.

Module Default Module Default
tissue on dermis on
wound on elastin off
immune on hyaluronan off
inflammation on glucose on
fibroblast on temperature on
scar on lactate on
mmp on nitric_oxide on
fibronectin on ph off
angiogenesis on hemostasis off
perfusion on biofilm off
diabetic off tumor off

Configuration

Config is layered TOML, merged at runtime:

bdm.core.toml              core tissue params
  + modules/*/config.toml   22 module configs (auto-merged)
  + profiles/*.toml          skin phenotype overlay
  + studies/*/preset.toml    study scenario overlay
  = bdm.toml                 runtime config (gitignored)

Skin profiles: normal (default), aged, diabetic, aged_diabetic. Studies: wound, diabetic-wound, tumor, tumor-wound, baseline.

Treatment study

The diabetic treatment study compares 8 therapeutic interventions and all pairwise and higher-order combinations (255 total) against an untreated diabetic baseline:

./studies/diabetic-wound/treatment.sh --combos=all             # all 255 combos
./studies/diabetic-wound/treatment.sh --combos=all --workers=8 # with 8 parallel workers

Simulations run in parallel with isolated working directories so configs never collide. Default is 4 workers; set --workers to match available cores. Results land in studies/diabetic-wound/results/ as per-treatment metrics CSVs, a comparison CSV, and an Excel workbook.

Validation

Validated against published literature across 11 observables, backed by 169 DOI-linked source papers in per-module SOURCES.yaml files. Run python3 literature/validate_all.py for the RMSE dashboard or python3 batch/batch.py -n 10 --study wound --validate for a 10-run consensus with literature comparison.

Documentation

See docs/ for full documentation including architecture, configuration guide, wound healing model, diabetic impairment, treatments, and validation details. See studies/ for packaged experiments and batch/ for multi-run consensus and parameter sweeps.

Third-party

Library Version License
toml++ 3.4.0 MIT
BioDynaMo 1.04+ (master) Apache 2.0 (linked, not bundled)

License

Apache 2.0

About

Skibidy is a hybrid agent-continuum skin simulation built on BioDynaMo

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors