Missing Person Identification Tools
Overview
A comprehensive toolkit for missing person identification combining genetic and non-genetic evidence within a Bayesian framework. Computes likelihood ratios (LRs) for DNA profiles, biological sex, age, hair color, and birthdate evidence. Provides decision analysis tools including optimal LR thresholds, error rate calculations, and ROC curve visualization. Includes interactive Shiny applications for exploring evidence combinations. For methodological details see Marsico et al. (2023) doi:10.1016/j.fsigen.2023.102891 and Marsico, Vigeland et al. (2021) doi:10.1016/j.fsigen.2021.102519.
Fixes a test failure reported by CRAN on macOS arm64 (r-release and
r-oldrel) and on the M1mac additional check, and with it a genuine
platform dependence in the size of the exact LR support.
Atoms of the LR distribution
A log10 LR atom is a real number that the C++ engine and the R reference
implementation reach by different arithmetic routes. On a platform whose
compiler contracts a * b + c into a fused multiply-add, which is the
default on aarch64, one route rounds once where the other rounds twice, and
two mathematically equal atoms end up differing in the last bits. Grouping
them by IEEE equality, as 2.0.0 did, then split one atom into two, so the
number of support points of lr_distribution() depended on the platform and
the cross-check against the reference failed on arm64 while passing on x86.
Show all changes in 2.0.1Hide the rest of the changes in 2.0.1
lr_distribution(),per_marker_lr_dist()and the evidence combination kernel now close an atom group by a relative tolerance (kAtomRelTol, 1e-12) rather than by exact equality. The measured separation justifies the constant: consecutive keys are either within one unit in the last place of each other or more than 1e-8 apart in relative terms, with nothing in between.- The R reference
aggregate_lr_dist()applies the same rule, so the two engines agree on the size of the support on every platform. - The composed distribution is unchanged as a distribution. Its support is smaller because the duplicates that rounding had split are now merged: composing two nine-allele markers on a trio gives 98 415 atoms instead of 602 991, with the same total mass and an expected weight of evidence identical to twelve decimal places. Exact composition of two markers of 10 and 12 alleles drops from about 1.9 million support points to about 317 000, so it is correspondingly cheaper in time and memory.
Documentation
- The README opens the 2.0 section by carrying the tutorial case of Steps 1 to 6 through the four entry points of the exact engine, with the marker set and the frequency database used there.
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-27
- ERROR11 OK, 2 ERROR2026-08-26
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK13 OK2026-06-09
Show 2 earlier changesHide 2 earlier changes
- ERROR12 OK, 1 ERROR2026-06-08
- OK14 OK2026-03-10
Documentation
- Help pages
- 60 (1 internal)includes a package overview page
- Examples that run
- 98%55 run in a plain check (5 of them under a condition) · 1 never run
- Exported functions with examples
- 98%
- Documented parameters
- 99%
- Return-value docs
- 98%
- Help pages citing references
- 75%
Downloads
Repository
- PRs merged (all time)
- 92%
- Median days to close, 50 most recently updated closed issues
- 2
- Median days to close, 50 most recently updated closed PRs
- 0
Stars over time
Forks over time
Releases over time
Issues over time
PRs over time
Commits over time
Commit identities over time
2 development-tooling and community-health practices detected across 2 families in the upstream repository
Checks run against github.com/marsicofl/mispitools on 2026-10-22.
This repository shows signs of AI coding tools.
- Codexfirst seen 2025-12-30Pull request it wrote: opened by a project member
- Claude Codefirst seen 2026-01-08Named in .Rbuildignore: .claude
Dependencies
Code & Tests
Datasets
People & History
Pick two releases to compare their code metrics.
- 2.0.1Latest
- 2.0.02026-08-25 · diff ↗ ·
removed 10 exports
bidirectionalKL, klPIE, kl_bidirectional, kl_multi, kl_pie, makePOIgen, multi_kl_divergence, postSim, sim_poi_genetic, sim_posterioradded 19 exports
as_lr_dist, belief_trajectory, binary_belief_trajectory, calibrate_concentration_cutoff, concentration_index, concentration_index_positive, entropy_log10, familias_trajectory, fragility_report, herfindahl_index, kl_divergence_log10, leave_one_out, lr_distribution, marker_model, nongenetic_feature, per_marker_kl, per_marker_kl_profile, shannon_concentration, trajectory_metrics - RR 4.6.0 released · 2026-04-24
- 1.4.02026-01-09 · diff ↗ ·
added 34 exports
app_lr_comparison, app_mispitools, compute_conditioned_prop, compute_reference_prop, cpt_missing_person, cpt_population, decision_threshold, error_matrix_hair, get_allele_freqs, kl_bidirectional, kl_multi, kl_pie, lrComparisonApp, lr_age, lr_birthdate, lr_combine, lr_compute_pigmentation, lr_hair_color, lr_pigmentation, lr_sensitivity, lr_sex, lr_to_dataframe, mispitools_app, plot_cpt, plot_decision_curve, plot_lr_distribution, sim_lr_genetic, sim_lr_prelim, sim_mp_prelim, sim_poi_genetic and 4 more - RR 4.5.0 released · 2025-04-11
- 1.2.02024-08-17 · diff ↗ ·
added 7 exports
LRcolors, compute_LRs_colors, conditionedProp, klPIE, refProp, simLR2dataframe, simRef - 1.1.0
- RR 4.4.0 released · 2024-04-24
- 1.0.02023-09-05 · diff ↗
- RR 4.3.0 released · 2023-04-21
- 0.4.02023-04-06 · diff ↗ ·
removed 1 export
LRprelimadded 10 exports
CPT_MP, CPT_POP, Cmodel, CondPlot, LRage, LRcol, LRdate, LRsex, mispiApp, postSim - 0.3.02023-02-27 · diff ↗
- RR 4.2.0 released · 2022-04-22
- 0.2.12022-03-29 · diff ↗
- 0.2.02022-03-26 · diff ↗ ·
removed 3 exports
DTsim, makeLRsims, makePrelimadded 6 exports
DeT, combLR, makeMPprelim, makePOIprelim, simLRgen, simLRprelim - 0.1.92022-02-18 · diff ↗ ·
removed 2 exports
makeMPprelim, makePOIprelimadded 2 exports
makePOIgen, makePrelim
Show 5 earlier eventsHide 5 earlier events
- 0.1.52022-01-04 · diff ↗ ·
removed 1 export
makePrelimadded 3 exports
getfreqs, makeMPprelim, makePOIprelim - 0.1.3
- 0.1.1
- 0.1.02021-12-03
- RR 4.1.0 released · 2021-05-18
Package metadata
- First published
- 2021-12-03
- Total releases
- 15 / 5 yrs
- License
- GPL (>= 3) OSI
- Minimum R
- ≥ 3.5.0
- Bundled data
- 22 KB / 8 files
- Download size
- 1.8 MB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("mispitools")This package has no citation file, so citation() returns this entry built from DESCRIPTION.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-24, which the citation names so these numbers can be found later. More on citing and the projects behind them.