Главная
АИ #21 (256)
Статьи журнала АИ #21 (256)
Разработка методики персонализированного отображения данных в прогрессивных веб-...

Разработка методики персонализированного отображения данных в прогрессивных веб-приложениях

Научный руководитель

Рубрика

Информационные технологии

Ключевые слова

персонализация
эвристика
PWA
Vue
Firebase
клиентская логика
веб-интерфейс
Pinia
взаимодействие пользователя
прогрессивное веб-приложение
методика

Аннотация статьи

В статье рассматривается методика персонализированного отображения данных в прогрессивных веб-приложениях (PWA), основанная на применении эвристических правил на стороне клиента.

Текст статьи

Введение

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

Объекты и методы исследования

В качестве объекта исследования рассматривается методика персонализации клиентской части прогрессивного веб-приложения, с применением эвристических правил, реализованная с использованием современного JavaScript-фреймворка Vue 3. Управление пользовательскими предпочтениями осуществляется с применением библиотеки Pinia, обеспечивающей централизованное хранилище состояния и реактивную обработку данных. Облачное хранилище Firebase используется для синхронизации пользовательских сессий и долговременного хранения векторов тегов.

Эвристики (от греч. heurisko – «нахожу») представляют собой практические правила, направленные на упрощение процесса принятия решений в условиях неопределённости или неполноты информации. В контексте персонализации пользовательского интерфейса эвристики позволяют моделировать поведение и предпочтения пользователей без применения сложных статистических или нейросетевых моделей. Эвристики не гарантируют оптимальный результат, но обеспечивают быструю, интерпретируемую и устойчивую реакцию системы на пользовательские действия.

В рамках данной работы эвристический подход был выбран по следующим причинам:

  1. Прозрачность алгоритмов – каждое изменение пользовательских предпочтений происходит по заранее заданным правилам, легко интерпретируемым как разработчиком, так и конечным пользователем.
  2. Гибкость и расширяемость – эвристики легко настраиваются под конкретную предметную область и поведение целевой аудитории.
  3. Мгновенная реакция – обновление предпочтений и визуализация рекомендаций происходит в реальном времени.

Модель оперирует тегами контента v и категориями или кластерами данных k, которым сопоставляются числовые значения – веса предпочтений f(k,v). Эти веса динамически изменяются в зависимости от действий пользователя и используются для определения релевантности контента. Пример с формулами правил приведен на рисунке 1.

image.png

Рис. 1. Эвристические правила для персонализации

Модель строится на основе понятий тега и категории. Под тегом понимается ключевое тематическое или функциональное обозначение карточки контента (например, «спорт», «технологии», «рекомендовано»), а категория определяет тип или контекст отображаемого блока (например, «образовательный контент», «акционные предложения» и т. д.). Каждой паре тег-категория (k,v) сопоставляется числовой вес f(k,v), отражающий уровень интереса пользователя к данному тегу в контексте заданной категории. Механизм обновления весов осуществляется по следующим правилам. Во-первых, при каждом взаимодействии пользователя с элементом интерфейса (будь то прокрутка, клик, фокусировка, добавление в избранное или игнорирование) происходит накопление значимости соответствующего тега. Формально это описывается следующим образом: f(k,v):=f(k,v)+w t, где 𝑤 𝑡 w t – эвристически заданный вес действия пользователя. Вес действия зависит от его значимости: например, клик по карточке добавляет 0.5, прокрутка контента – 0.2, фокусировка на фильтре – 1.5, добавление в избранное – 2.0, а добавление в корзину – 5.0. Действие «игнорирование» имеет нулевой вес. Такой алгоритм, представленный на рисунке 2, позволяет гибко учитывать как слабые сигналы интереса, так и намеренные действия, отражающие явную заинтересованность пользователя в определённой тематике.

image.png

Рис. 2. Алгоритмы эвристик персонализации

Во-вторых, по завершении каждой пользовательской сессии осуществляется затухание всех накопленных весов, что позволяет модели учитывать только актуальные интересы. Это реализуется через применение коэффициента затухания y, задающего скорость уменьшения весов, где y = 0.7. Таким образом, система не накапливает статические предпочтения, а динамически адаптируется к изменению интересов пользователя во времени. Если значение веса после затухания становится ниже заданного порогового значения (1.0), тег удаляется из активного вектора интересов.

Третьим этапом обработки является нормализация весов тегов, необходимая для последующего ранжирования карточек и формирования персонализированной выдачи. Для каждого тега vi в рамках категории k вычисляется нормализованное значение (условная вероятность). Это позволяет преобразовать абсолютные значения интереса в относительные доли, обеспечивающие корректное сопоставление и сортировку карточек по степени релевантности.

Результаты и обсуждение

На базе предложенной методики был реализован экспериментальный прототип прогрессивного веб-приложения, включающий два основных интерфейсных модуля: отображение карточки контента и блок персонализированных рекомендаций. При выборе конкретного элемента пользователем фиксируются события (клик, скроллирование, фокус на фильтре, добавление в избранное), которые преобразуются в изменения весов тегов согласно эвристической модели. Данные обрабатываются локально в хранилище Pinia и периодически синхронизируются с Firebase для обеспечения сохранения предпочтений между сессиями и устройствами. После завершения пользовательской сессии происходит применение затухания и нормализация весов, что позволяет выявлять наиболее актуальные интересы. Разработка осуществлялась в соответствии с принципами компонентного подхода. Каждый модуль был спроектирован как независимый блок, что обеспечивает масштабируемость и повторное использование. Результаты тестирования показали высокую устойчивость модели к случайным действиям пользователя, а также гибкость при изменении структуры тегов и типов взаимодействий. Кроме того, благодаря полной реализации на стороне клиента достигается минимальная нагрузка на сеть и сервера, что делает решение применимым в условиях ограниченной связности и высокой требовательности к производительности.

Заключение

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

Список литературы

  1. Firebase Documentation. [Электронный ресурс]. URL: https://firebase.google.com/docs.
  2. Vue.js Documentation. [Электронный ресурс]. URL: https://vuejs.org.
  3. Pinia Store Management. [Электронный ресурс]. URL: https://pinia.vuejs.org.
  4. Боев А.И. Эвристические методы и их применение в инженерии. М.: Наука, 2017.
  5. Ильясов А.Н. Система эвристических приёмов решения задач. М.: Просвещение, 2006.

Поделиться

132

Волков Н. А. Разработка методики персонализированного отображения данных в прогрессивных веб-приложениях // Актуальные исследования. 2025. №21 (256). Ч.I. С. 47-50. URL: https://apni.ru/article/12165-razrabotka-metodiki-personalizirovannogo-otobrazheniya-dannyh-v-progressivnyh-veb-prilozheniyah

Обнаружили грубую ошибку (плагиат, фальсифицированные данные или иные нарушения научно-издательской этики)? Напишите письмо в редакцию журнала: info@apni.ru

Похожие статьи

Другие статьи из раздела «Информационные технологии»

Все статьи выпуска
Актуальные исследования

#22 (257)

Прием материалов

31 мая - 6 июня

осталось 4 дня

Размещение PDF-версии журнала

11 июня

Размещение электронной версии статьи

сразу после оплаты

Рассылка печатных экземпляров

25 июня