Contemporary deep learning models suffer from massive computational overhead and physical blindness — generating impossible predictions like nocturnal solar power. PISSM solves both.
| Challenge | PISSM Solution |
|---|---|
| 🏋️ Heavy models (millions of params) | < 40K parameters — edge-deployable |
| 🌙 Nocturnal false predictions | Physics-Informed Gate — structural zero at night |
| 📉 Vanishing gradients | Linear SSM — stable long-range memory |
| 🔊 Sensor noise | Hankel Matrix — dynamic noise filtering |
┌─────────────────────────────────────────────────────┐
│ │
│ ☀️ NASA POWER Input (15 Features, 24h Window) │
│ │ │
│ ┌─────────▼──────────┐ │
│ │ Hankel Embedding │ Dynamic │
│ │ (24→20 windows) │ state-space │
│ └─────────┬──────────┘ │
│ │ │
│ ┌─────────▼──────────┐ │
│ │ 1D-CNN (64 ch) │ Spatial │
│ │ GELU + Dropout │ extraction │
│ └─────────┬──────────┘ │
│ │ │
│ ┌──────────────▼──────────────┐ │
│ │ Linear State Space Model │ Long-range │
│ │ A·h + B·x → C·h + D·x │ O(T·N) │
│ │ HiPPO-initialized │ complexity │
│ └──────────────┬──────────────┘ │
│ │ │
│ ┌─────────────────▼─────────────────┐ │
│ │ 🎯 Physics-Informed Gate │ │
│ │ output × σ(SZA) × σ(KT) │ Night=0 │
│ └─────────────────┬─────────────────┘ │
│ │ │
│ ┌─────────▼──────────┐ │
│ │ ReLU Filter │ Non-negative │
│ └─────────┬──────────┘ │
│ │ │
│ 📊 GHI Prediction (Wh/m²) │
│ │
└─────────────────────────────────────────────────────┘
| Component | Specification |
|---|---|
| 🪟 Input Window | 24 hours |
| 🔄 Sliding Window Stride | 3 time steps |
| 🌡️ Data Source | NASA POWER Hourly |
| 🧮 State Dimension | 64 |
| 📐 Hankel Sub-Window | 5 steps (→ 20 windows) |
| ⚡ Total Parameters | < 40,000 |
📦 PISSM-Solar-Forecasting/
│
├── 📁 training_code/
│ └── 🧠 pissm_model.py # Full architecture + training loop
│
├── 📁 evaluation_code/
│ └── 📊 pissm_model.py # Evaluation & visualization
│
├── 📁 training_data/
│ ├── 📊 Hourly_2010_2015.csv # NASA POWER hourly data
│ └── 📊 Hourly_2020_2025.csv
│
├── 📄 PISSM_Paper.pdf # Published paper
├── 📄 PISSM_Paper.docx
├── 📋 requirements.txt
└── 📖 README.md
# Clone & setup
git clone https://github.com/Marco9249/PISSM-Solar-Forecasting.git
cd PISSM-Solar-Forecasting
pip install -r requirements.txt
# Train the model
python training_code/pissm_model.py
# Outputs: pissm_saved_weights.pth, forecast plots, training curves@misc{abdullah2026pissm,
title = {Physics-Informed State Space Models for Reliable Solar
Irradiance Forecasting in Off-Grid Systems},
author = {Mohammed Ezzeldin Babiker Abdullah},
year = {2026},
eprint = {2604.11807},
archivePrefix = {arXiv},
primaryClass = {cs.LG},
url = {https://arxiv.org/abs/2604.11807}
}APA 7th Edition: Abdullah, M. E. B. (2026). Physics-Informed State Space Models for Reliable Solar Irradiance Forecasting in Off-Grid Systems. arXiv. https://arxiv.org/abs/2604.11807