# IPP Collection of KOs (Draft)
# Individualized Precision Prevention (IPP) Project
What if we could tell each person which preventive medicine measures would benefit them the most? For example, if a person could do 1 or 2 things to improve their overall health by preventing disease, which 1 or 2 things should they do? Should they stop smoking? lose weight? get a colonscopy? take an aspirin a day? or take a cholesterol-lowering drug? Obviously, the answer depends on the person and their current health.
This project uses a complex, multi-part mathematical model to rank order preventive medicine measures that are recommended by the United States Preventive Services Task Force (opens new window). It provides an individual rank order of these measures for each person, based on 97 person-specific features including height, weight, cholesterol, smoking status, etc.
The complex model has been implemented using Knowledge Grid technology. The model is highly modularized utilizing a collection of 42 IPP Knowledge Objects. Eight different Knowledge Object schemas (or types) comprise the IPP collection. These schemeas are listed below, starting with the IPP Executive Object schema. The IPP Executive Object is interesting because it is an example of a Knowledge Object that calls on other Knowledge Objects to complete a complex series of calculations.
The current release of ipp collection of knowledge objects is (opens new window)
# IPP Work Flow
The following depicts an example of one of the IPP processing workflows employed in this collection.
The google doc can be referenced for the design of IPP work flow (opens new window)
# IPP Knowledge Objects (KO)
The following schemas are designed for this project and are referenced in the service description YAML file using
A sample patient feature panel is used by the demo app and can be found at:
The collection will have the following types:
# IPP Executive Object (1)
The executive KO coordinates the workflow for evaluating the risk profile, computing additional derived features, retrieving mortality rate, computing life expectancies and life expectancy gains per USPSTF recommendations and generating a ranked list of the preventive medicine recommendations.
The executive KO will call multiple KOs in several stages, aggregate the results, pass the data along and assemble the final output containing the ranked recommendation list. Please refer to the above workflow as example.
# Recommendation List Knowledge Object (1)
The recommendation list KO contains a list of USPSTF A/B recommendations with the following information
"name": "Colorectal Cancer: Screening",
"shortText":"Colorectal Cancer: Screening",
"description":"The USPSTF recommends screening for colorectal cancer starting at age 50 years and continuing until age 75 years.",
"releaseDate": "June 2016",
This KO will take a patient features panel as input and perform the following functions:
Check the patient features against
basePopulationto determine if the recommendation is applicable for this patient
Return a map of all applicable Recommendations
In the response, the relevant KO endpoints are presented in
benefitkofor the downstream computation
# Life Table Knowledge Object (1)
The life table KO contains the data published by CDC and it will return the mortality rate based the patient's race and gender.
# Patient Total Background Risk Knowledge Object (2)
The Patient Total Background Risk KOs assess the risk profile based on the patient characteristics.
Based on Dr. Taksler's model, two KOs are developed:
- Background relative risk KO: Compute the total all-cause mortality risks as a product of the risks from: Tobacco, Obesity and Alcohol;
- Background absolute risk KO: Compute the total disease-specific mortality risks as a sum from individual background risk KOs.
Each KO will call the relevant individual risk KOs, aggregate the risks and return the results to the executive KO.
Each KO will also compute certain risks for the target characteristics as needed. For example, for "Decrease Alcohol Use", the risks need to computed both for the patient's current drinking type and for the target type of "Abstain".
See the KO in the library:
# Patient Background Risk Knowledge Object (11)
Each of The Patient Background Risk KOs assesses a particular risk associated with a condition based on the patient characteristics.
Based on Dr. Taksler's model, two types of background risks are computed:
- Background relative risk KO: Compute the all-cause mortality risks, including: Tobacco, Obesity and Alcohol;
- Background absolute risk KO: Compute the disease-specific mortality risks.
Each KO will compute the risk and return the results to the total risk KO.
See the KO in the library:
# USPSTF recommendation Net benefit Knowledge Object (17)
Each Knowledge Object will compute the net benefit by following the recommendation.
The result will be returned to the executive KO.
# Patient's derived feature Calculation Knowledge Object (7)
A group of derived features are calculated in these KO and returned to the executive KO for later use.
This type of KO will implement a well-known risk model, such as Framingham Risk score for CVD or CHD.
# Life Expectancy Gain Calculation Knowledge Object (1)
This LE Gain KO calculates the life expectancy gain based on the patient's risk-adjusted mortality rate set and the mortality rate set if the patient follows a USPSTF recommendation.
For each recommendation The KO will call Life Expectancy Calculator KO four times to compute: Total LE without screening/counseling Total LE with screening/counseling LE before next service without screening/counseling LE before next service with screening/counseling
# Life Expectancy Calculator (1)
This Life expectancy calculator KO calculates the life expectancy based on a mortality rate set and the time span for valid contribution to LE.
For Total LE, the contribution from the current age till 100 will be included; while for the LE before next service, only the contribution from the current till next service time will be included. Next service time will be determined by the recommendation screening/counseling frequency per the recommendation.
# Demo Clients
The IPP Executive Object can be evaluated using the object's openapi specification and the Swagger Editor (opens new window).
Several web clients have been developed to showcase the IPP collection.