Deep learning-based decision support system for forecasting teff market prices in Ethiopia
# Teff Market Price Decision Support System
A Streamlit-based Decision Support System (DSS) for forecasting weekly retail teff prices in Ethiopia using a trained Long Short-Term Memory (LSTM) deep learning model.
---
## Features
- One-week-ahead retail teff price forecasting
- Hierarchical selection of Region, Zone, Market, and Variety
- Automatic loading of the latest 12 weeks of historical observations
- Editable historical inputs for what-if analysis
- Interactive forecast visualization
- Model performance comparison (LSTM, GRU, MLP, and TCN)
- Forecast history management with CSV export
---
## Prerequisites
- Python 3.12
- Git
---
## Installation
### 1. Clone the Repository
```bash
git clone
github.com
cd teff-price-dss
```
### 2. Create a Virtual Environment
**Windows**
```bash
python -m venv .venv
.venv\Scripts\activate
```
**Linux / macOS**
```bash
python3 -m venv .venv
source .venv/bin/activate
```
### 3. Install Dependencies
```bash
pip install -r requirements.txt
```
---
## Required Files
The following research artifacts are **not included** in the repository and must be copied into the project before running the application.
### Dataset
Place the dataset in:
```text
data/
└── Final_Cleaned_Teff_Dataset_2020-2026.xlsx
```
### Model Artifacts
Place the trained model and preprocessing artifacts in:
```text
artifacts/
├── best_lstm_model.pt
├── sequence_scaler.joblib
├── target_scaler.joblib
├── static_feature_encoder.joblib
└── model_comparison.csv
```
---
## Run the Application
Start the Streamlit application:
```bash
streamlit run Home.py
```
Then open your browser and navigate to:
```
localhost
```
---
## Verify the Application
The application should provide the following pages:
- Home
- Forecast
- Model Performance
- Forecast History
- About
From the **Forecast** page you can:
1. Select Region
2. Select Zone
3. Select Market
4. Select Teff Variety
5. Automatically load t …