Skip to main content

Adaptive Structural Dependency Learning for Non-Stationary Dynamical Systems

Project description

CausalNerve

CausalNerve: online causal graph adaptation for streaming non-stationary systems.

Core Capabilities

  1. Real-time causal structure revision without retraining (see Section 6 benchmarks).
  2. Intervention simulation via Pearl's do-calculus (native) (demonstrated in Turbofan demo).
  3. Structural isolation guarantee: do(X) only affects descendants (formalized in PAPER.md).

Installation

pip install causalnerve
pip install causalnerve causalnerve-observe  # for dashboard

Upgrade Note

To upgrade to the latest stabilized version:

pip install --upgrade causalnerve causalnerve-observe

Quickstart

from causalnerve import CausalNerve
from causalnerve.datasets import SyntheticStreamGenerator

nerve = CausalNerve(nodes=6, state_dim=32)
nerve.fit(SyntheticStreamGenerator.stable(n_cycles=200), epochs=20)
nerve.watch(SyntheticStreamGenerator.with_drift(drift_at=100))

Expected output:

CausalNerve Summary
────────────────────────────────────────
Cycles processed: 200
Structural alarms: 3
Edits accepted: 1 (edge 4->2, conf=0.71)
Edits rejected: 2
Final leakage: 0.031
Causal equilibrium: reached at cycle 147
────────────────────────────────────────
Run nerve.why(4) for root cause analysis.
Run nerve.what_if({2: 0.5}) to simulate interventions.

What CausalNerve Is Not

  • CausalNerve is not a causal discovery algorithm (use PCMCI for that).
  • CausalNerve is not a replacement for physics simulations.
  • CausalNerve is not validated for safety-critical deployment without domain expert review of its structural revisions.

Scientific Benchmarks

Evaluated on NASA C-MAPSS FD001 (Engines 81-100).

Method SHD ↓ Det. Delay ↓ Runtime ↑ Online?
CausalNerve 0.0 ± 0.0 221.7 ± 60.3 83 ms Yes
PCMCI 105.8 ± 9.3 N/A (offline) 4613 ms No
VAR-LiNGAM 20.0 ± 0.0 N/A (offline) 1 ms No
Granger 158.9 ± 13.7 N/A (offline) 780 ms No

Note: CausalNerve is structurally self-repairing (via automated dual-world validation), which incurs an ~80ms overhead compared to static architectures. It trades offline causal discovery accuracy for online adaptability; specifically, CausalNerve loses to PCMCI on Structural Hamming Distance (SHD) for stationary chain graphs.

Examples

We provide three definitive demonstrations of the autonomous capabilities:

  1. Real-time Causal Self-Repair in Turbofan Engines
  2. Tracking Changing Brain Connectivity During Seizure
  3. Detecting Cascading Failures in Distributed Systems

Documented Limitations

CausalNerve is bound by constraints in scalability, expected calibration error (ECE) under rapid distribution shifts, and sensitivity to highly correlated sensor noise. For a rigorous audit of system boundaries and known failure modes, please read FAILURES.md.

Citation

If you use CausalNerve in your research, please cite our technical paper:

@software{causalnerve2026,
  author = {CausalNerve Core Team},
  title = {CausalNerve: Adaptive Structural Dependency Learning},
  year = {2026},
  url = {https://github.com/guru-s/CausalNerve}
}

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

causalnerve-1.0.4.tar.gz (225.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

causalnerve-1.0.4-py3-none-any.whl (224.4 kB view details)

Uploaded Python 3

File details

Details for the file causalnerve-1.0.4.tar.gz.

File metadata

  • Download URL: causalnerve-1.0.4.tar.gz
  • Upload date:
  • Size: 225.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for causalnerve-1.0.4.tar.gz
Algorithm Hash digest
SHA256 d5752f4b7f22d177a0feffd4f89463e081880736db639e6230ed15297ce85fe3
MD5 330c36cc2b6b92a95c9b25a5fec43f66
BLAKE2b-256 ae7af5343d9529e9f42f7a06c8271f549404722eddf9ab0256036d3a8b3f5659

See more details on using hashes here.

Provenance

The following attestation bundles were made for causalnerve-1.0.4.tar.gz:

Publisher: publish.yml on GURU1001S/CausalNerve

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file causalnerve-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: causalnerve-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 224.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for causalnerve-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 aec11b12a6d2ec89fc67d2798272b5e0ac6a498bd4b8e89f14aefda5130724e7
MD5 fc7c5c14c6d6e7c096ec853dfea3a4c2
BLAKE2b-256 6bf3507c815b5ca50f43a5f8cf503aa472b96f9814a1105f620ad2b53a6ff2de

See more details on using hashes here.

Provenance

The following attestation bundles were made for causalnerve-1.0.4-py3-none-any.whl:

Publisher: publish.yml on GURU1001S/CausalNerve

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page