Пояснительная записка (1218768), страница 5
Текст из файла (страница 5)
где
– положительная константа,
– центроид первого кластера,
– потенциал центроида первого кластера. Как видно из приведенной формулы, для исключения влияния только что определённого центроида следует от текущих значений потенциалов точек вычесть потенциал этого самого центроида. Константа
обычно больше, чем
, во избежание появления чрезмерно близко расположенных центров кластеров. В общем случае
берется равной
[19].
После получения второго центра кластера, вновь происходит пересчет потенциалов точек данных с учетом полученного центра. Этот процесс повторяется до тех пор, пока не будет достигнуто достаточное количество кластеров.
2.7.5 Сравнительный анализ рассмотренных методов кластеризации
Приоритетным в рамках данного исследования был выбран метод кластеризации k-means, так как он обладает рядом преимуществ [20]:
– простота реализации;
– наиболее высокая скорость работы по сравнению со всеми представленными в данном разделе алгоритмами;
– возможность заранее определять число кластеров (в общем случае это свойство относят к отрицательным, однако в рамках решаемой задачи это становится преимуществом);
– возможность заранее устанавливать начальные центры кластеров на первой итерации.
Поэтому, дальнейшее исследование строится на сравнении метода k-means поочередно с методами:
– FCM;
– методом горной кластеризации;
– субтрактивным методом кластеризации.
Результаты работы методов кластеризации fuzzy c-means и k-means имеют один и тот же вид (рисунок 8).
Среди преимуществ нечеткой кластеризации отмечалась возможность решать неопределенные ситуации отнесения точки данных, лежащей на границе двух кластеров, к одному из них. Однако, в рамках решаемой задачи важно лишь регистрировать положение центра определенного кластера, а не фиксировать его границы с большой точностью.
Рисунок 8 – Кластеризация данных методами:
a) fuzzy c-means; б) k-means
В исследовании [20], посвященном сравнению двух этих алгоритмов, отмечено, что скорость работы k-means выше, нежели скорость работы FCM, а также установлено, что скорость возрастания временных затрат при увеличении количества кластеров, у алгоритма FCM растет быстрее, нежели у k-means (рисунок 9).
Рисунок 9 – Зависимость времени работы
алгоритмов от количества кластеров
Такое уменьшение быстродействия объясняется тем, что в рамках работы алгоритма FCM определяются степени принадлежности точек данных получаемым кластерам, что увеличивает общее количество вычислений.
Как указывалось в разделе 2.3.3, метод горной кластеризации редко применяется на практике в виду своей быстрорастущей вычислительной сложности. Также ему присущи недостатки, связанные с невозможностью заранее определять количество кластеров. Они выражаются в необходимости настраивать работу метода всякий раз, когда интересующее исследователя количество кластеров и их центроиды будут меняться (что присуще решаемой задаче). В виду того, что метод горной кластеризации априори уступает методу кластеризации k-means в быстродействии [20], а также потому, что принцип его работы не подходит для поставленной задачи, в отличие от k-means, далее приводится сравнительный анализ его более оптимизированного аналога – субтрактивного метода кластеризации.
Субтрактивный метод позволяет решать задачи, в которых заранее неизвестно конечное количество классов. Однако, специфика описываемого исследования предполагает наличие необходимости заранее задавать это значение.
Результаты работы метода k-means и субтрактивного (рисунок 10) имеют схожие результаты несмотря на разительное отличие алгоритмов их работы.
Рисунок 10 – Результат работы методов:
а) субтрактивной кластеризации; б) k-means
Следует отметить, что субтрактивный метод имеет большое число настраиваемых параметров, посредством которых возможным является процесс регулирования количества и удаленности кластеров друг от друга. При сравнении использовалась встроенная в MATLAB функция кластеризации subclust, которая имеет следующие параметры настройки:
– squash factor –коэффициент подавления; позволяет настроить количество объектов, принадлежащих одному кластеру: чем больше значение данного коэффициента, тем больше соседних объектов будут принадлежать кластеру (по умолчанию = 1.25);
– accept ratio – коэффициент принятия; применяется в качестве критерия назначения объекта центроидом: если отношение значения максимального потенциала объекта текущего кластера к значению потенциала центроида первого кластера больше, чем коэффициент принятия, тогда этот самый объект назначается центроидом текущего кластера и кластерный анализ продолжается; чем больше значение этого коэффициента, тем меньшее количество кластеров получается в результате работы метода;
– reject ratio – коэффициент отторжения; применяется в качестве критерия исключения элемента из списка потенциальных центроидов кластера. Если отношение значений максимального потенциала текущего центра кластера к потенциалу центра первого кластера меньше коэффициента принятия, тогда текущий объект проверяется по коэффициенту отторжения. В случае, когда это отношение больше коэффициента отторжения и рассматриваемый объект расположен далеко от уже найденных центров кластеров, тогда он рассматривается как центр нового кластера. В противном случае, указанный объект исключается из дальнейшего рассмотрения как потенциальный центр кластера. Чем меньше значение коэффициента отторжения, тем больше далеко расположенных друг от друга кластеров может быть найдено. Значение коэффициента отторжения должно быть меньше значения коэффициента принятия.
В виду специфики работы алгоритма, субтрактивный метод дает более точный результат кластеризации, однако, он имеет существенный недостаток: при варьировании количества кластеров необходимо всякий раз заново настраивать его основные параметры для того, чтобы определить необходимое количество этих кластеров. Установка параметров метода по умолчанию приводит к тому, что для данных, составляющих 5 кластеров, субтрактивный метод определяет лишь 2. Только после тщательной настройки описанных выше параметров удалось получить результат кластеризации, приведенный на рисунке 10. Настройка параметров осуществлялась на основании опытных данных и справочной литературы [20].
В результате сравнительного анализа приведенных алгоритмов кластеризации, установлено, что наиболее подходящим для поставленной задачи является метод k-means. Он работает быстрее, нежели метод FCM, а его быстродействие с ростом количества данных снижается значительно медленнее. Также данный метод позволяет заранее определять количество кластеров, что является обязательным требованием при решении поставленной задачи.
2.8 Описание графического интерфейса пользователя разрабатываемых модулей
Как указывалось в разделе 2.1, одной из составляющих каждого модуля должен быть графический интерфейс пользователя. Его внедрение позволит не только сделать работу оператора удобнее, но и повысит уровень понимания им результатов производимых в модулях исследований.
В виду того, что каждый разрабатываемый блок предназначен для решения конкретной специализированной задачи, графический интерфейс будет состоять из небольшого количества элементов. Несмотря на то, что модули выполняют разные задачи, внешний вид окон каждого из них можно представить в виде единого шаблона (рисунок 11).
В соответствии со структурой и принципом функционирования блоков, описанных в разделе 2.3, область окна приложения делится на две основные и одну дополнительную области: область ввода входных данных, область представления результатов анализа и область управляющих кнопок.
Рисунок 11 – Общий вид окна модуля
Область ввода входных данных первых двух модулей будет представлена единственной кнопкой, предлагающей оператору загрузить файлы для анализа. Для третьего модуля она также будет включать поля для ввода параметров. Такой вид областей ввода определяется типом решаемых модулями задач: в первых двух блоках идет работа с полноценными файлами, без необходимости ввода какой-либо дополнительной информации. В третьем блоке специфика проводимого анализа требует наличия не только входных файлов, но и ввода оператором некоторых значений в соответствующие поля.
Область представления результатов исследования первого и второго блоков следует реализовать в виде поля для построения графиков с возможностью его перерисовки. Это объясняется тем, что результаты оценки времени перерегулирования, в соответствии с разделом 2.1, должны быть представлены полигонами частот, которые удобно выводить в области построения графиков. В основу работы второго блока положены методы кластеризации, не имеющие более наглядного представления результатов, нежели построение графиков на плоскости, форма или цвет точек на которых отражает их принадлежность тому или иному кластеру. Помимо этого, область вывода результатов анализа второго модуля будет дополнена полем отрисовки таблицы, в которой следует отображать количество полученных кластеров для исходных данных. Это позволит оператору оценивать правильность работы алгоритма кластеризации в период тестирования модуля.
Результаты работы третьего блока удобнее всего представлять в виде таблицы значений. Полем для ее отображения и ограничивается область вывода результатов работы данного модуля.
Область управляющих кнопок должна включать элементы, необходимые для каждого блока: кнопка начала анализа и кнопка вывода результатов. Для некоторых блоков функции кнопки загрузки данных и начала анализа можно объединить.
Описываемую область первого блока необходимо дополнить элементами, позволяющими выводить полигоны частот как для смены позиции контроллера с высокой на низкую, так и с низкой на высокую, и выбирать позицию контроллера, полигон которой интересует оператора.
Для второго модуля следует также создать кнопку отображения накапливаемых данных, по нажатию которой будет строиться график, отражающий все результаты работы модуля на протяжении эксплуатации тепловоза.
Таким образом, графический интерфейс пользователя проектируемых модулей будет содержать небольшое количество элементов. Основной составляющей окна каждого модуля является область вывода результатов. Каждое окно должно включать кнопки загрузки данных, начала анализа и вывода результата. Помимо перечисленного, первый и второй блоки должны включать элементы графического интерфейса, позволяющие управлять выводом.
3 РЕАЛИЗАЦИЯ МОДУЛЕЙ АВТОМАТИЗИРОВАННОЙ ОБРАБОТКИ ДАННЫХ БОРТОВЫХ СИСТЕМ РЕГИСТРАЦИИ ТЕПЛОВОЗА
3.1 Обработка входных данных
Специфика представления данных в пакете прикладных вычислений MATLAB позволяет осуществлять удобную обработку входных файлов.
Для первого модуля, фиксирующего время перерегулирования дизельного двигателя тепловоза в соответствии с положением контроллера, необходимыми файлами являются PozKontS и Rpm_diesel.
Алгоритм первого модуля основывается на работе с интервалами значений количества оборотов двигателя, которые выделяются на основе информации о текущей позиции контроллера в кабине машиниста. То есть, алгоритм должен в файле PozKontS фиксировать интервалы отсчетов, на которых параметр «Позиция контроллера» имеет одно и тоже значение, и выделять соответствующие им интервалы со значениями количества оборотов дизеля в файле Rpm_diesel. При этом, следует учитывать, что: в соответствии с техническим заданием в исследовании должны рассматриваться позиции контроллера с 9-ой по 15-ую; интересующую заказчика информацию несут интервалы, включающие больше 5-ти значений, при этом в файлах могут присутствовать единичные вхождения некоторых позиций; не все позиции будут встречаться в каждом файле (это зависит от рельефа маршрута следования тепловоза); необходимо регистрировать, осуществлялся ли переход с высокой позиции контроллера на низкую или же наоборот – с низкой на высокую.
Таким образом, алгоритм обработки входных данных для первого модуля должен выполнять следующие функции:
– считывание и сохранение двух массивов данных: позиций контроллера и количества оборотов дизеля (листинг 1);
Листинг 1 – Формирование массивов данных
Test1 = importdata(filename{1,1},'\t');
Test2 = importdata(filename{1,2},'\t');
k = 4;














