Metadata-Version: 2.4
Name: bayesNestor
Version: 0.1.8
Summary: Nestor is a Bayesian Network implementation designed to dynamically generate personalized learning paths tailored to the unique psychological traits of each learner, optimizing educational outcomes.
Author: Robert Maier & Vamsi Krishna Nadimpalli
Author-email: robert.maier@othr.de & vamsi.nadimpalli@oth-regensburg.de
License: MIT
Classifier: Development Status :: 1 - Planning
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.10,<3.12
Description-Content-Type: text/markdown
License-File: LICENSE.txt
License-File: AUTHORS.rst
Requires-Dist: dowhy==0.11.1
Requires-Dist: lxml==5.2
Requires-Dist: matplotlib==3.9
Requires-Dist: networkx==3.2
Requires-Dist: numpy==1.26.4
Requires-Dist: pandas==2.2
Requires-Dist: pgmpy==0.1.24
Requires-Dist: pyAgrum==1.15.0
Requires-Dist: pytest==8.2
Requires-Dist: setuptools==71.1
Requires-Dist: Sphinx==7.4
Requires-Dist: torch==2.3.1
Requires-Dist: ipython==8.16
Requires-Dist: tabulate==0.9.0
Requires-Dist: dash==2.16.0
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: license
Dynamic: license-file
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# bayesNestor

[![Python Version](https://img.shields.io/badge/python-3.10%2B-blue.svg)](https://www.python.org/downloads/)

## Overview
**bayesNestor** is a Bayesian Network implementation designed to dynamically generate personalized learning paths tailored to the unique psychological traits of each learner, aiming to optimize educational outcomes.

## Installation
Ensure you are using **Python 3.10 or above**.

Install **bayesNestor** using pip:
```bash
pip install bayesnestor
```

<!-- Alternatively, install from the source
```bash
git clone https://github.com/yourusername/bayesnestor.git
cd bayesnestor
python setup.py install
``` -->

## Usage
```bash
from bayesnestor import Nestor
# Provide evidence for a query
QUERY_EVIDENCE = {
    "Active_Reflective_Dim": "Active",
    "Sensory_Intuitive_Dim": "Intuitive",
    "Visual_Verbal_Dim": "Visual",
    "Sequential_Global_Dim": "Global",
    "cs": "agree",
    "bfia": "disagree"}

# Example usage: generate learning paths
mynestor = Nestor()
lpath = mynestor.generate(evidence=QUERY_EVIDENCE)
print(lpath)
```

## Examples
The "examples/" directory contains five example scripts demonstrating key functionalities of bayesNestor:
- **example_access_backend_objs.py**: Demonstrates how to access and utilize different backend objects.
- **example_load_xmlbif.py**: Provides a step-by-step guide on loading Bayesian Networks saved in XMLBIF format, ensuring model restoration and compatibility.
- **example_nestor_generate_lepath.py**: Walks through the process of generating personalized learning paths by using bayesNestor's inference capabilities.
- **examples_model_manager.py**: Illustrates how to manage and configure models by defining the network structure and parameters, enabling efficient customization and tuning.
- **examples_reporting.py**: Shows how to generate reports that analyze model outputs, interpret results.

Feel free to run these examples to better understand how to implement and use the package.

## Authors
- Vamsi Krishna Nadimpalli - [vamsi.nadimpalli@oth-regensburg.de](mailto:vamsi.nadimpalli@oth-regensburg.de)
- Robert Maier - [robert.maier@oth-regensburg.de](mailto:robert.maier@oth-regensburg.de)

## How to Cite
If you find bayesNestor useful in your research or projects, please consider citing it as follows:

``` bibtex
@inproceedings{nadimpalli2025nestor,
author = {Nadimpalli, Vamsi Krishna and Maier, Robert and Ezer, Timur and Bugert, Flemming and Staufer, Susanne and Roehrl, Simon and Hauser, Florian and Grabinger, Lisa and Mottok, Juergen},
title = {Nestor: A Personalized Learning Path Recommendation Algorithm for Adaptive Learning Environments},
year = {2025},
isbn = {9798400712821},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3723010.3723016},
doi = {10.1145/3723010.3723016},
booktitle = {Proceedings of the 6th European Conference on Software Engineering Education},
pages = {49–59},
numpages = {11},
keywords = {Machine Learning, Bayesian Network, Psychological Models, Learner-Centered environments, Personalized Learning Paths},
location = {Kloster Seeon, Germany},
series = {ECSEE '25}
}
  ```
## Acknowledgements:
The Federal Ministry of Research, Technology, and Space (BMFTR) supports this work by funding the HASKI project (FKZ: 16DHBKI035).
<p align="center">
  <img src="zAcks/image.png" alt="alt text" width="20%" />
  <img src="zAcks/image-1.png" alt="alt text" width="20%" />
  <img src="zAcks/image-2.png" alt="alt text" width="20%" />
</p>
