Читать в оригинале

<< ПредыдущаяОглавлениеСледующая >>


5.1. Расстояние по виду структуры

Пусть нам даны две иерархии  и  с числом уровней  и  соответственно. Будем рассматривать иерархию  как (упорядоченное) множество уровней с  по , а каждый уровень — как совокупность  расположенных на нем  вершин (таксонов) :

В процессе превращения одной иерархии в другую потребуется вершину  заменить на вершину . Считаем, что стоимость такой редакционной операции имеет значение . Для оценки стоимости замен всех  вершин уровня  первой иерархии на все  вершины уровня  второй иерархии используем простой алгоритм похожих пар. Для этого вначале сделаем число вершин в сравниваемых уровнях одинаковым и равным , добавив к уровню с меньшим числом вершин  пустых вершин, где . Пустой называем вершину с индексом .

Затем для вершины  находится самая похожая на нее вершина , т. е. такая, редакционное расстояние  до которой минимально. Величина  добавляется в счетчик суммарного расстояния  между данными уровнями, и эта пара самых похожих вершин из дальнейшего рассмотрения исключается. Среди оставшихся вершин снова ищется самая похожая пара, величина их редакционного расстояния  добавляется к счетчику , а эта пара также исключается из дальнейшего анализа. Такая процедура нахождения на каждом (-м) шаге самой похожей пары, добавления к счетчику  величины  и исключения -й пары выполняется  раз. В итоге получается величина редакционного расстояния между двумя этими уровнями:

Проведя сравнение всех  уровней первой иерархии со всеми  уровнями второй, мы получим матрицу  с номерами строк  и номерами столбцов . На пересечении строки  и столбца  будет стоять величина (частного) редакционного расстояния  между уровнями  и  сравниваемых иерархий (см. табл. 16).

Таблица 16. Редакционное расстояние между уровнями иерархий  и

Редакционным расстоянием  между иерархиями  и  называем стоимость не любого, а оптимального перевода уровней иерархии  в соответствующие уровни иерархии . Этот перевод будем искать с помощью метода динамического программирования [13,30]. В результате находим путь на матрице , соединяющий клеточку  с клеточкой  и проходящий через соседние клеточки либо по горизонтали слева направо, либо по вертикали сверху вниз, либо по диагонали вправо вниз. На каждом шаге прибавляем к счетчику расстояния  величину , взятую из той клеточки, через которую проходит путь. Весовой коэффициент  равен единице при переходе по диагонали и двум при переходе по горизонтали или вертикали (схема динамического программирования 2-1-2). Наша цель состоит в поиске такого пути , который набирает минимальную сумму  стоимостей частных взвешенных редакционных расстояний. Этот путь показан в табл. 16. Он дает величину .

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

Матрица частных редакционных расстояний для сочетания всех уровней иерархий  и  приведена в табл. 17, а, для иерархий  и  — в табл. 17, б.

Таблица 17. Матрица частных редакционных расстояний по виду структур между иерархиями   и

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

 



<< ПредыдущаяОглавлениеСледующая >>