AminKaramlou / AESWebApp

Argumentation for Explainable Scheduling WebApp

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FOSSA Status

Gatsby Material Kit React Starter is the adaptation of Material Kit React to Gatsby.

Interactive Schedule Explainer for Nurse Rostering

A proof-of-concept tool for explaining nurse rostering, based on the ArgOpt paradigm (K. Čyras, D. Letsios, R. Misener, F. Toni: Argumentation for Explainable Scheduling. 2019, AAAI), built upon ArgOpt implementation.

Participated at The Great Exhibition Road Festival and competed in British Computer Society (BCS) Specialist Group on AI (SGAI) Machine Intelligence Competition.

See video introducing the tool.

Windows

The following assumes execution via PowerShell (see e.g. for a basic tutorial)

Install

Requirements:

  • Python 3
  • Node.js
  • yarn
  • GLPK solver
    1. download and extract the source (.zip) with executables (to e.g. ..\glpk-4.65)
    2. add the directory path (e.g. ..\glpk-4.65\w64) with the relevant version executables to PATH (PC > Properties > Advanced System Settings (System Properties) > Advanced > Environment Variables > Path > Edit > New)
    3. glpsol to check if the solver works
    4. this may still not be enough for Python to be able to use GLPK, so the easiest fix is to locate the appropriate version of glpsol.exe (e.g. in ..\glpk-4.65\w64) and copy it to Python's Scripts directory (e.g. C:\Program Files (x86)\Python38-32\Scripts\)
  • flask (pip install flask)
  • virtualenv (pip install virtualenv)
    • to run the virtual environment script you'll need to have PowerShell Execution Policy set correctly, e.g. Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
  • pillow (pip install pillow)
  • pyomo (pip install pyomo)
  • In ./
	npm install
	npm install -g gatsby-cli
	yarn install
	cd backend/aes-master/
	virtualenv venv
	venv/Scripts/activate
	pip install -r requirements.txt
	cd ../../frontend
	yarn add react react-dom	

Deploy

  • In /backend/aes-master/
	venv/Scripts/activate
	cd src/flask-app/
	python -m flask run

to activate Python's virtual environment and run flask

  • In /frontend/ (on a new terminal)

gatsby develop

to run gatsby

Some fixes

  • To rebuild the virtual environment:
	python -m venv venv
	cd backend/aes-master/
	pip install -r requirements.txt
  • (2020-01-10) While installing from requirements.txt issues with greenlet may persist on e.g. Python 3.8. This may be because the required wheel is not on PyPi and has to build locally from the source. The latter requires a C compiler to develop Python extensions, e.g. Visual C++. However, another solution is to get the latest precompiled greenlet wheel (e.g. greenlet-0.4.15-cp38-cp38-win32.whl) and install if from the virtual environment pip install ..\greenlet-0.4.15-cp38-cp38-win32.whl just for this project.

  • The virtual environment may complain about lacking packages, such as tornado, matplotlib etc. Just install them

	pip install tornado
	pip install matplotlib
	pip install pyutilib

MacOS

Install

Requirements:

  • In ./
	npm install
	npm install -g gatsby-cli
	yarn install
	cd backend/aes-master/
	python3 -m venv venv
	source venv/bin/activate
	pip install -r requirements.txt
	cd ../../frontend
	yarn add react react-dom

Deploy

  • In /backend/aes-master/
	source venv/bin/activate
	cd src/flask-app/
	python -m flask run

to activate Python's virtual environment and run flask

  • In /frontend/ (on a new terminal) gatsby develop

to run gatsby

License

FOSSA Status

About

Argumentation for Explainable Scheduling WebApp

License:MIT License


Languages

Language:TeX 33.4%Language:JavaScript 31.2%Language:CSS 21.4%Language:Python 13.8%Language:Shell 0.2%