An AI-powered nutrition planning system combining Graph Neural Networks to provide personalized, culturally-appropriate meal recommendations for elderly populations in Uganda.
Group: SW-AI-15 | Institution: Makerere University | Supervisor: Ggaliwango Marvin
| Name | Role | Contact |
|---|---|---|
| Nannyombi Shakiran | Project Lead, ML Engineer | shakirannannyombi@gmail.com |
| Yul Lam Gatkuoth | Data Engineer, Frontend Developer | gatkuothyullam@gmail.com |
Access all components of the MzeeChakula ecosystem:
| Component | Description | Link |
|---|---|---|
| Frontend UI | User interface for elderly & caregivers | Launch App |
| Backend API | FastAPI documentation & endpoints | API Docs |
| AI Model | Ensemble Nutrition Model & Embeddings | Hugging Face |
| Data & Analysis | Datasets and exploration notebooks | Kaggle |
| Model Testing | Performance evaluation & benchmarks | Model Testing |
| Model Testing Backend | Performance evaluation & benchmarks | Model Testing |
| Documentation | Project documentation & setup | Documentation |
MzeeChakula (Swahili for "Elderly Food") addresses critical nutrition challenges facing Uganda's elderly population:
- 28% of the elderly are undernourished (WHO 2022)
- 45% suffer from diet-related chronic conditions
- Only 1 nutritionist per 50,000 people in rural areas
- Limited access to personalized dietary guidance using locally available foods
A hybrid AI system featuring:
- Knowledge Graphs - 1,048 nodes, 14,359 edges mapping food→nutrient→condition relationships
- 9 Graph Neural Networks - Advanced GNN architectures evaluated and compared
- Ensemble Model - Production-ready model combining top 3 GNNs (CRGN, HetGNN, GAT)
- Culturally-Adapted - English and Luganda support, local foods focus
The system is built on three core layers:
- Knowledge Graph Layer - Neo4j database with 1,048 nodes and 14,359 edges representing foods, nutrients, health conditions, cultural practices, and seasonal availability
- GNN Ensemble Layer - 9 Graph Neural Network models (CRGN, HetGNN, GAT, R-GCN, Graph-RAG, KGNN, G-GPT, GRN, TCN) that reason over the knowledge graph
- Application Layer - FastAPI backend with ChromaDB vector store, Vue 3 frontend, and multi-language voice interface
| Category | Technology | Purpose |
|---|---|---|
| Deep Learning | PyTorch 2.0+, PyTorch Geometric | GNN models |
| GNN Architectures | CRGN, HetGNN, GAT + 6 others | Nutrition reasoning |
| Ensemble | Custom weighted ensemble | Production model |
| Data Processing | Pandas, NumPy | Data manipulation |
| Graph Database | Neo4j 5.0+ | Knowledge graph storage |
| Notebooks | Jupyter Lab | Research & development |
| Visualization | Matplotlib, Seaborn, Plotly | Analysis & results |
CPU (Intel i7):
- Single prediction: 0.5 ms
- Top-10 recommendations: 15 ms
- Batch (100 users): 1.5 seconds
GPU (NVIDIA T4):
- Single prediction: 0.1 ms
- Top-10 recommendations: 3 ms
- Batch (100 users): 0.3 seconds
Ggaliwango Marvin Department of Computer Science Makerere University
If you use this work in your research:
@software{mzeechakula2025,
title={MzeeChakula: Graph-Enhanced Nutrition Planning for the Elderly in Uganda},
author={Nannyombi, Shakiran and Gatkuoth, Yul Lam},
year={2025},
institution={Makerere University},
supervisor={Ggaliwango, Marvin}
}- Uganda Food Composition Tables (2019) - Ministry of Health
- WHO Elderly Nutrition Guidelines
- FAO/INFOODS Food Composition Database
- Neo4j - Graph database platform
- PyTorch & PyTorch Geometric - Deep learning frameworks
- Hugging Face - Model hosting
- Weights & Biases - Experiment tracking
- Community health workers across Uganda
- Elderly participants who shared dietary information
- Makerere University Department of Computer Science
- Open-source ML/AI community
This project is licensed under the MIT License - see the LICENSE file for details.
- General Inquiries: shakirannannyombi@gmail.com
- Collaboration: gatkuothyullam@gmail.com
Last Updated: 2025-01-17 Version: 1.0.0 Status: Production / Live
