Поиск пересечения деревьев

Apr 26, 2013 10:55

В ДНК генеалогии распостраненный сценарий когда есть предсказание близкого родства (2nd-3rd cousin), а найти пересечение генеалогических деревьев не удаётся.

Я полагаю, что это потому что, хотя бы в части случаев, общий родственник - женщина, чья фамилия известна в одном дереве и неизвестна в другом.

Поэтому возникла идея написать программку, которая будет искать кандидатов на пересечение именно среди женщин, у которых хотя бы в одном из деревьев неизвестна фамилия.

Алгоритм примерно такой:
Итак - отбираем женщин без фамилиий
Для каждой - вычисляем год рождения. Если у нее не записан, пробуем определить примерно из известных дат - предков или потомков. Берем диапазон дат.
Для каждой - проверяем все женщин в другом дереве (с фамилиями и без)
Отбираем тех, у кого диапазон вычисленной даты пересекается с диапазоном для этой женщины и имена являются синонимами
Эта пара - кандидат на то, что бы быть одним и тем же человеком.
Даём оценку паре исходя из имен отцов, если они известны (отчества - синонимы - повышает шанс) и имен детей (если известны)
Потом - тоже самое для женщин без фамилий в другом дереве

Ваше мнение? Правильно ли отсекать по году и имени, а имена отцов и детей использовать для оценки? Как лучше создать базу синонимов имён (Женя, Евгения, Шейндл, Шейндля, Шейндле)? Делать как программу с инсталяцией или как вебсайт?

Программисты!
как лучше отсекать - сначала по именам или по датам? Как искать все отрезки пересекающиеся с даннным (поиск по датам) ?

programming, genealogy, dna-genealogy

Previous post Next post
Up