Team:CMUQ/Software

iGEM CMUQ 2019

iGEM 2019 CMUQ

Software

Two Software Components: Pre-counseling and Bluetooth

All code is publicly available on github. We implemented everything using Python3 and compiled a Windows executable.

Pre-counseling

Pre-counseling consists of probabilistic diagnosis using historical data. We created a 500-patient database using common SCD statistics. We chose this route because we could not obtain a real patient database due to complications. Each patient’s record indicates their ethnicity, age, mother/father genotypes, and parent relatedness. We converted this patient information into a set of binary features. Using this and final diagnosis of the patient, we constructed a prediction algorithm. Our prediction algorithm consists of a support vector machine which takes in this set of features, and outputs the likelihood of testing positive.

The patient database above can be replaced with a real database representing real and unique patients. This will give more accurate results for a given pre-counseling input.

Sample Database Entries for our support vector machine:

Patient Ethnicity Mother/Carrier Father/Carrier Consanguineous status Positive?
1 Afro-Asiatic Y N N Y
2 Central Asian N N Y Y

When our application is started, the user is asked to input their own set of features (ethnicity, etc…). Following this, our support vector machine inputs this new unseen data and outputs the probability of having the disease.

Bluetooth

Our application makes a connection with our bluetooth-enabled device. Once a pairing has been secured, the application keeps track of any new tests recorded. The handheld device measures fluorescence and as a result outputs a number out of 255.

Fluorescence Value
0
127
255

Each disease we are testing we test for will have a different threshold value for positive/negative result. Thus, after conducting several tests using our bluetooth device, we come up with a threshold value.

Diagnosis

Our application outputs both the statistical probability of pre-counseling and the result of our handheld device, which can be interpreted by the healthcare provider administering the test.