Skip to content

Commit

Permalink
[DUOS-2931][risk=no] Implement v4 Algorithm (#925)
Browse files Browse the repository at this point in the history
Co-authored-by: fboulnois <fboulnois@users.noreply.github.com>
  • Loading branch information
rushtong and fboulnois authored Feb 26, 2024
1 parent 54f34a2 commit 8102c75
Show file tree
Hide file tree
Showing 15 changed files with 1,954 additions and 6 deletions.
130 changes: 129 additions & 1 deletion docs/Algorithms.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,141 @@ of the Matching APIs. This document describes the different approaches to matchi
and a Consent on a dataset. Both Purpose and Consent are structured objects which allows for computational
matching at scale.

## Version 4

<details>
<summary>View</summary>

This version of the algorithm uses a custom set of business rules to match a research purpose and consented dataset.
In determining a positive match between research purpose and consented dataset, we make sure that the consented
dataset matches **ALL** conditions specified in the research purpose. The primary difference between this version
and the previous version is the update to Non-Profit Use (<strong>NPU</strong>) business logic.

<table>
<thead>
<tr>
<th>If my Research Purpose has...</th>
<th>What datasets should I see?</th>
<th>Logical Rationale</th>
</tr>
</thead>
<tbody>
<tr>
<td>Disease focused research (i.e. <strong>DS-X</strong>)</td>
<td>
<ul>
<li>Any dataset tagged with <strong>GRU</strong>=true</li>
<li>Any dataset tagged with <strong>HMB</strong>=true</li>
<li>Any dataset tagged to this disease (<strong>DS-X</strong>) exactly or a parent disease of <strong>DS-X</strong></li>
</ul>
</td>
<td>
<ul>
<li><strong>Approve</strong> if the dataset's Primary DUO terms are DS- or a subclass</li>
<li><strong>Deny</strong> if the dataset's Primary DUO terms are NOT the DS- or a subclass</li>
</ul>
</td>
</tr>
<tr>
<td>Use of data is limited to health/medical/biomedical purposes, not including population origins or ancestry (i.e. <strong>HMB</strong>)</td>
<td>
<ul>
<li>Any dataset tagged with <strong>GRU</strong>=true</li>
<li>Any dataset tagged with <strong>HMB</strong>=true</li>
</ul>
</td>
<td>
<ul>
<li><strong>Approve</strong> if the dataset's Primary DUO terms are HMB, GRU</li>
<li><strong>Deny</strong> if the dataset's Primary DUO terms are DS-, POA</li>
</ul>
</td>
</tr>
<tr>
<td>Study population origins or ancestry (i.e. <strong>POA</strong>)</td>
<td>
<ul>
<li>Any dataset tagged with <strong>GRU</strong>=true</li>
<li>Any dataset tagged with <strong>POA</strong>=true</li>
</ul>
</td>
<td>
<ul>
<li><strong>Approve</strong> if the dataset's Primary DUO terms are GRU, POA</li>
<li><strong>Deny</strong> if the dataset's Primary DUO terms are DS-, HMB</li>
</ul>
</td>
</tr>
<tr>
<td>Methods development (i.e. <strong>MDS</strong>)</td>
<td>
<ul>
<li>Any dataset tagged with <strong>GRU</strong>=true</li>
<li>Any dataset tagged with <strong>DS-X</strong>=true</li>
<li>Any dataset tagged with <strong>POA</strong>=true</li>
<li>Any dataset tagged with <strong>HMB</strong>=true</li>
</ul>
</td>
<td>
<ul>
<li><strong>Approve</strong> if the dataset's Primary DUO terms are GRU, DS-, HMB, POA</li>
</ul>
</td>
</tr>
<tr>
<td>Non-profit use (i.e. <strong>NPU</strong>)</td>
<td>
<ul>
<li>
Any dataset tagged with <strong>NPU</strong>=true OR <strong>NPU</strong>=false
Datasets with <strong>NPU</strong>=false set effectively have no restriction on NPU usage.
</li>
</ul>
</td>
<td>
<ul>
<li>
<strong>Deny</strong> if the research purpose is <strong>NPU</strong>=false and
the dataset's DUO term is <strong>NPU</strong>=true
</li>
</ul>
</td>
</tr>
</tbody>
</table>

### Abstain from Decision

Due to the variety of sensitive research areas, ethical reasons, and areas where categorization is not possible, the DUOS system will <strong>not</strong> render a decision in the following cases.

<li>Other</li>
<li>Geographical Restrictions (i.e. <strong>GS-</strong>)</li>
<li>Public Moratorium/Embargo (i.e. <strong>MOR</strong>)</li>
<li>Genetic Studies Only (i.e. <strong>GSO</strong>)</li>
<li>Publication Required (i.e. <strong>PUB</strong>)</li>
<li>Collabration Required (i.e. <strong>COL</strong>)</li>
<li>Ethics Approval Required (i.e. <strong>IRB</strong>)</li>
<li>Limitation to one gender</li>
<li>Restricted to a pediatric population (under the age of 18)</li>
<li>Illegal behaviors (violence, domestic abuse, prostitution, sexual victimization)</li>
<li>Alcohol or drug abuse, or abuse of other addictive products</li>
<li>Sexual preferences or sexually transmitted diseases</li>
<li>Any stigmatizing illnesses</li>
<li>Vulnerable populations as defined in 456 CFR (children, prisoners, pregnant women, mentally disabled persons, or ["SIGNIFICANTLY"] economically or educationally disadvantaged persons)</li>
<li>Population Origins/Migration patterns</li>
<li>Psychological traits, including intelligence, attention, emotion</li>
<li>Ethnicity, race, or gender with genotypic or other phenotypic variables, for purposes beyond biomedical or health-related research, or in ways that are not easily related to Health</li>

</details>


## Version 3

<details>
<summary>View</summary>

This version of the algorithm uses a custom set of business rules to match a research purpose and consented dataset.
In determining a postive match between research purpose and consented dataset, we make sure that the consented
In determining a positive match between research purpose and consented dataset, we make sure that the consented
dataset matches **ALL** conditions specified in the research purpose.

<table>
Expand Down
Loading

0 comments on commit 8102c75

Please sign in to comment.