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