IEEE SSCI Hackathon 2022 Top 6
- Toh Yue Zhen
- Laiu Yan Kang, Asher
- Tan Kai Xuan
- Natalie Claire Ng Shu-En
- sql-alchemy
- load data from csv into this sql table (create + load)
- we can then extract information from this table to feed into our AI
- modus ponens inference engine
- rules that help simplify logical symbols
- main AI
- will need a lot of reading & githubbing :)
- flask / any webapp framework, UI design
- take user input, output the result to the user
- look pretty and nice to use for the user
- Define and load sql table titled: Medical Conditions (table of all the drugs that cannot be prescribed based on medical conditions)
- Define and load sql table titled: DDIs (table of all known drug-drug interactions - may have to split into 2)
- User provides (1) current drugs, (2) medical conditions and (3) allergies to the system
- Make a sql query to extract from table Medical Conditions: all the drugs that cannot be prescribed based on (2) medical conditions
- (1) current drugs, result of extraction in 2 and (3) allergies are added directly into the KB (using AND object)
- Flatten the values of the KB into a dictionary (just text words for easy matches)
- Make a sql query to extract from table DDIs: all known drug-drug interactions of this drug
- Result of extraction is added into KB one by one for all matching statements (using AND object)
- Repeat for all DDIs extracted: O(n)
- Repeat for number of items in KB: Check if there is a match between the KB item and the DDI
- Break when list finished traversing or all KB item is found
- O(m) * O(p + m) - note: python 3.10 only
- Remove all DDIs with 0 matches (not relevant)
- Sort the DDIs in terms of number of matches (use Merge Sort, O(n * logn))
- Repeat for all DDIs, pass them one by one into the inference engine
- If any contradiction is found, output false
- If all managed to pass succesfully, output true
- Output the result
- Design the page