-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'release/1.0.0' into production
- Loading branch information
Showing
35 changed files
with
969 additions
and
208 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
.github | ||
.idea | ||
.settings | ||
db | ||
docker | ||
docs | ||
packs/Downloads | ||
packs/.gitkeep | ||
src/packs.pl | ||
src/scratch.pl | ||
webDesign | ||
.gitignore | ||
.project | ||
computer-repair-ai-assistant-prolog.iml | ||
Dockerfile | ||
LICENSE | ||
README.md | ||
run_all_tests.sh | ||
run.sh |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
--- | ||
name: Bug report | ||
about: Create a report to help us improve | ||
title: '' | ||
labels: bug | ||
assignees: '' | ||
|
||
--- | ||
|
||
**Describe the bug** | ||
A clear and concise description of what the bug is. | ||
|
||
**To Reproduce** | ||
Steps to reproduce the behavior: | ||
1. Go to '...' | ||
2. Click on '....' | ||
3. Scroll down to '....' | ||
4. See error | ||
|
||
**Expected behavior** | ||
A clear and concise description of what you expected to happen. | ||
|
||
**Log entries** | ||
Please add any logged error or warning here or as an attachment | ||
|
||
**Screenshots** | ||
If applicable, add screenshots to help explain your problem. | ||
|
||
**Additional context** | ||
Add any other context about the problem here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
--- | ||
name: Feature request | ||
about: Suggest an idea for this project | ||
title: '' | ||
labels: enhancement | ||
assignees: '' | ||
|
||
--- | ||
|
||
**Is your feature request related to a problem? Please describe.** | ||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] | ||
|
||
**Describe the solution you'd like** | ||
A clear and concise description of what you want to happen. | ||
|
||
**Describe alternatives you've considered** | ||
A clear and concise description of any alternative solutions or features you've considered. | ||
|
||
**Additional context** | ||
Add any other context or screenshots about the feature request here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
.idea/sonarlint/ | ||
.idea/consolestorage/ | ||
src/scratch.pl | ||
packs/ |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
FROM swipl:stable | ||
COPY . . | ||
ENTRYPOINT ["swipl", "start.pl"] | ||
EXPOSE 8080 | ||
LABEL org.opencontainers.image.source=https://github.com/arobirosa/computer-repair-ai-assistant-prolog | ||
LABEL org.opencontainers.image.description="AI Computer Assistant. Proof of concept to evaluate the use of knowledge representation and reasoning (KRR) systems " | ||
LABEL org.opencontainers.image.licenses=Apache-2.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
body .container #wc_output | ||
{ | ||
border: none; | ||
} | ||
|
||
form.inactive | ||
{ color: #ccc; | ||
} | ||
|
||
#preview h1,address | ||
{ display: none; | ||
} | ||
|
||
body { | ||
background-color: forestgreen; | ||
} | ||
|
||
.container p { | ||
color: #AEF062; | ||
padding-left: 20px; | ||
} | ||
|
||
.container .row { | ||
color: white; | ||
} | ||
|
||
body h1 { | ||
font-weight: bold; | ||
color: #AEF062; | ||
} | ||
|
||
.container .form-group { | ||
background-color: #AEF062; | ||
} | ||
|
||
.container .form-group p { | ||
color: white; | ||
padding-left: 20px; | ||
padding-top: 20px; | ||
} | ||
|
||
.container .form-group .btn-group { | ||
padding-left: 20px; | ||
padding-bottom: 20px; | ||
} | ||
|
||
.container table tr td { | ||
color: green; | ||
} | ||
|
||
.container table tr th { | ||
color: #F0BE62; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
* Code compiles when loaded into SWIPL | ||
* All old tests are working | ||
* The test coverage is equal or higher to 70% of the lines. :warning: Currently not working | ||
* The new tests are meaningful | ||
* Code is commited in the Github repository and no files or changes are missing | ||
* The change was tested | ||
* The feature is documented on the README or doc files. | ||
* The ticket is closed | ||
|
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# Other projects using prolog to create (medical) expert systems: | ||
|
||
* [Medical Diagnosis system using Prolog created by Shiddika Jahan Bushra](https://github.com/sjbushra/Medical-Diagnosis-system-using-Prolog/) This is a clean way to create an expert system. Please be aware that the license of the code is unclear so it is better not to reuse that code. | ||
* [NephroDoctor created by Nicola Dileo and Tommaso Viterbo](https://github.com/nicoladileo/NephroDoctor) Shows how to make diagnostic using probability, modify the answers and save the symptoms to a file | ||
* [Medical Expert System for COVID-19 from Rojay White and others](https://github.com/R-White-0/Medical-Expert-System) It uses 3 or more symptoms | ||
to diagnostic COVID-19. It shows how to use windows, messages boxes and checkboxes to ask for user imput with Prolog. Notice: Works locally but not on the online version of SWI Prolog. | ||
|
||
# Other projects | ||
* [Medical diagnosis in prolog](https://www.gyaanibuddy.com/assignments/assignment-detail/medical-diagnosis-in-prolog/) Exercise to practice | ||
* [SWISH Movies exercise to practice doing queries](https://swish.swi-prolog.org/example/movies.pl) | ||
* [Expert program computer project of Robotics and Energy](https://roboticsandenergy.com/projects/expert-program-computer-project/) | ||
* [SHEPHERD: Deep learning for diagnosing patients with rare genetic diseases](https://github.com/mims-harvard/SHEPHERD) | ||
* [Proof-of-concept (POC) of a medical diagnosis system using a probabilistic expert system, which is based on Noisy-or Bayesian Network Model.](https://github.com/hidiryuzuguzel/medical-expert-system-poc/tree/master) | ||
|
||
# Academic Papers related to expert systems | ||
|
||
* [A Generic Knowledge Based Medical Diagnosis Expert System](https://arxiv.org/pdf/2110.04439.pdf) | ||
* [Prolog Expert System: the diagnosis of kidney diseases](https://www.semanticscholar.org/paper/PROLOG-EXPERT-SYSTEM%3A-THE-DIAGNOSIS-OF-KIDNEY-Roventa-Ro%C8%99u/349a7cc2ccbe9ab0ab562467eaaf259d46ab7e3e) | ||
* [Design and implementation of a SWI-Prolog-based expert system to | ||
diagnose anxiety disorder](https://www.jstage.jst.go.jp/article/pjsai/JSAI2021/0/JSAI2021_4N3IS1b01/_pdf) | ||
* [Prolog and Inductive Reasoning: A Logic Programming Language](https://scholarworks.calstate.edu/downloads/hd76s295t) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# Evaluation of Prolog implementations and development environments | ||
|
||
The following ones were evaluated for use in this project: | ||
|
||
* [SWI-Prolog](https://www.swi-prolog.org/) **Choosen**. It can link Prolog predicates to an SQL database, Java and Python. It can work on both Windows and Linux-based systems. It can be used to create Web Applications | ||
* [Prolog Development Tool - PDT](https://sewiki.iai.uni-bonn.de/research/pdt/docs/start) **Choosen** It has a console to execute any predicate while working on a prolog script. This is better than the support provided by Intellij IDEA with the Logtalk plugin. | ||
|
||
[Table with all implementations of Prolog](https://en.wikipedia.org/wiki/Comparison_of_Prolog_implementations) | ||
|
||
### Discarded | ||
|
||
* [ErgoAI](https://github.com/ErgoAI) Documentation is poor. Discarded. It can link Prolog predicates to an SQL database, Java and Python | ||
* [Visual Prolog](https://www.visual-prolog.com/) Discarded. It only works on Windows and its syntax is propietary. | ||
* [XSB: a deductive database](https://xsb.sourceforge.net/) It is used by ErgoAI internally. | ||
* [GNU Prolog](https://www.gprolog.org/) It can't use databases to get predicates | ||
* [ECLiPSe is an open-source software system for the cost-effective development and deployment of constraint programming applications, e.g. in the areas of planning, scheduling, resource allocation, timetabling, transport etc.](http://www.eclipseclp.org/) Better for constraint based problems | ||
* [Jprolog](https://github.com/jiprolog/jiprolog/releases) The website is outdated and the last change was on 2015. |
Oops, something went wrong.