Утилита Optimal Shapelets Search реализует поиск шейплетов с помощью генетического алгоритма.

Метод шейплетов (англ. shapelets) основан на выделении таких фрагментов временного ряда, которые наилучшим образом отражают свойства одного или нескольких классов исследуемых временных рядов. Идея метода состоит в том, что в качестве характерных признаков временного ряда (в частности, сигнала ЭЭГ) используют расстояния от этого ряда до набора из k лучших фрагментов, для которых оценка качества разделения классов принимает максимальное значение.

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

В приложении Optimal Shapelets Search реализовано два подхода к построению набора из k лучших шейплетов. Первый подход заключается в выборе из последнего поколения генетического алгоритма k кандидатов, имеющих максимальные значения оценки качества. При применении второго подхода выполняем поиск оптимального сочетания из k шейплетов. Число k в обоих случаях определяет пользователь. Критерием останова ГА служит достижение счетчиком числа поколений максимального значения.

Результаты поиска (график изменения значений функции приспособленности и форма текущего лучшего шейплета) отображаются на экране.