Способ поиска пользователей, соответствующих требованиям Российский патент 2020 года по МПК G06F16/00 G06F17/40 

Описание патента на изобретение RU2739873C2

Область техники

Изобретение относится к способам и системам обработки существующих или ожидаемых условий, или состояний в устройствах и системах.

Уровень техники

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

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

В процессе развития сети Интернет сами способы доставки рекламы до пользователя стали меняться. Пользователь стал сталкиваться с рекламой не только при серфинге, но и в приложениях, которые имеют доступ в сеть и информационных табло по дороге на работу или домой(стартап TRMPLN). Так публикация US 20090299817 описывает фреймворк, который на основании вероятных пользовательских предпочтений, определенных на основании собранной информации, распространяет через прикладное приложение на устройстве пользователя рекламу. Реклама имеет один существенный недостаток, зачастую она раздражает пользователя, который в рекламируемом продукте не нуждается, поэтому пользователь старается избегать приложений и веб-ресурсов с рекламой. Если пользователь и нуждается в продукте, но реклама слишком навязчива, это может переориентировать потребителя на конкурента.

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

Раскрытие изобретения

Настоящая группа изобретений предназначена поиска пользователей, соответствующих требованиям.

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

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

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

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

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

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

Краткое описание чертежей

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

Фиг. 1 - изображает вариант наблюдаемой динамической системы.

Фиг.2 - изображает систему превентивного взаимодействия с пользователем.

Фиг. 2а - изображает отношения системы превентивного взаимодействия с пользователем и наблюдаемой динамической системы

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

Фиг. 3а - изображает способ обнаружения совместимых средств.

Фиг. 4 - изображает пример осуществления изобретения.

Фиг. 5 - изображает способ поиска пользователей, соответствующих требованиям.

Фиг. 6 - изображает способ построения моделей для поиска пользователей.

Фиг. 7 - изображает пример компьютерной системы общего назначения.

Описание вариантов осуществления изобретения

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

Среднестатистический пользователь не способен предвидеть многие технические проблемы с устройствами, также пользователь не имеет достаточной технической осведомленности, чтобы оценить характеристики продукта, для решения возникшей/возникающей проблемы, но эта информация есть у производителя. Однако, производитель не знает пользователя, который имеет потребность в продукте, поэтому вынужден проводить маркетинговые исследования вероятностными и статистическими методами, строить модель спроса. Настоящее изобретение обеспечивает обнаружение проблем с устройством и в окружении (в том числе в IoT, Internet of Things, интернет вещей), и позволяет находить превентивное эффективное решение проблемы. Эта система не требует установки дополнительных средств, а реализуется действующими клиентами, например, антивирусным программным обеспечением.

Настоящее решение может быть применимо, по меньшей мере, для продвижения:

• электроники,

• ИТ - сервисов,

• ИТ - услуг,

• медицинских продуктов,

• сервисов в сфере здравоохранения (англ. healthcare),

• продвижения здоровых продуктов и сервисов (англ. health promotion),

• продуктов и услуг в рамках рынка труда,

• ремонтных и строительных материалов, услуг,

• клининговых услуг,

• продуктов питания.

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

Система - совокупность элементов, находящихся в отношениях и связях друг с другом, которое образует определенную целостность, единство. Набор элементов, которые взаимодействуют в соответствии с проектом, в котором элементом системы может быть другая система, называемая подсистемой; система может быть управляющей системой или управляемой системой и включать аппаратные средства (напр. устройства), программные средства (напр., программное обеспечение) и взаимодействие с человеком (таким образом человек может являться элементом системы) или другим биологическим организмом. Элементы объединяются таким образом, чтобы выполнить общую функциональную задачу. К системе проектом предъявляются требования (напр., по классификации FURPS+):

• Функциональность (англ. functionality) - функциональные требования: свойства, возможности, безопасность. Являются основными, по этим требованиям строятся диаграммы вариантов использования (Use case diagram).

• Удобство (англ. usability) - требования к удобству использования (UX): человеческий фактор, эстетика, последовательность, документация.

• Надежность (англ. reliability - требования к надежности: частота возможных сбоев, отказоустойчивость, восстанавливаемость, предсказуемость устойчивости.

• Производительность (англ. performance - требования к производительности: время отклика, использование ресурсов, эффективность, мощность, масштабируемость.

• Поддержка (англ. supportability) - требования к поддержке: возможность поддержки, ремонтопригодность, гибкость, модифицируемость, модульность, расширяемость, возможность локализации.

Система, реализованная в соответствии с проектом при функционировании должна удовлетворять проектным требованиям. Частным случаем требований является производительность, которую должны обеспечивать система/элемент на определенный момент времени (например, требования по FPS или 100 запросов секунду от не менее 10 пользователей)

Состояние элемента системы - это множество свойств элемента системы в момент времени, является функцией от параметров элемента.

Состояние системы - это множество свойств системы в момент времени, является функцией от параметров системы. Также определяется как совокупность состояний элементов системы в момент времени.

Процесс - изменение свойств элемента системы или всей системы в промежуток времени, является функцией состояния от времени.

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

• параметры (П), описывающие первичные свойства системы и являющиеся исходными данными при исследовании системы;

• характеристики (X), описывающие вторичные свойства системы и определяемые как функции параметров системы: Х=ƒ(П).

Параметры системы подразделяются на:

• внутренние, описывающие структурно-функциональную организацию системы;

• внешние, описывающие взаимодействие системы с внешней (по отношению к системе) средой.

К внутренним параметрам относятся:

• структурные параметры, описывающие состав элементов системы и саму ее структуру;

• функциональные параметры, описывающие функциональную организацию (процесс функционирования) системы.

К внешним параметрам относятся, например, параметры нагрузки, показывающие, как часто и в каком объеме используются ресурсы системы. В общем случае это параметры взаимодействия системы с внешней средой.

Характеристики системы делятся на:

• глобальные, показывающие эффективность функционирования системы в целом;

• локальные, описывающие качество функционирования отдельных элементов системы.

К глобальным характеристикам системы относятся:

• мощностные характеристики или характеристики производительности, показывающие скорость достижения цели назначения системы;

• временные характеристики, описывающие временные аспекты функционирования системы;

• надежностные характеристики, определяющие надежность функционирования системы;

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

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

Аномалия - отклонение от требований. Требования могут быть проектными, например, для программно-аппаратных комплексов или санитарными. Отклонятся от требований могут состояния, процессы. Соответственно различают аномальные состояния и процессы. Частным случаем аномального процесса является постепенный отказ, а аномального состояния внезапный отказ или сбой. К аномалиям могут приводить отклонение от требований по меньшей мере одного параметра, такой параметр тоже является аномалией - аномальный параметр.

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

Динамическая система - система, число элементов, которой непостоянно и определяется положением в пространстве элемента, взятого за точку отсчета (базовый элемент) и моментом времени. Динамической, например, является система, которая состоит из элементов (реализованных в виде программно-аппаратных средств), объединенных беспроводной сетью, при этом число элементов, связанных с базовым элементом определяется моментом времени и положением в пространстве базового элемента и зависит от радиуса зоны покрытия беспроводной станции, обеспечивающей доступ к текущей беспроводной сети. Пример динамической системы 100 изображен на Фиг. 1, которая будет описана далее.

На Фиг. 2 изображена система 200 превентивного взаимодействия с пользователем. Система 200 включает клиентскую сторону, серверную сторону и третью сторону. На клиентской стороне расположена наблюдаемая система 100, которая включает, по меньшей мере один элемент системы 210 (базовый элемент) с установленным клиентом 220, где клиент 220 предназначен для сбора параметров системы и взаимодействием с серверной стороной. На третьей стороне располагаются программно-аппаратные средства для разработки моделей, описаний/спецификаций продуктов и т.д. Серверная сторона взаимодействует с клиентом и получает разработанные модели от третьей стороны. На серверной стороне осуществляют тестирование полученных моделей, их ранжирование, накапливают статистику по клиентам, формируют конфигурационные файлы и обновления для клиентов, предоставляют инфраструктуру для разработки моделей.

Клиент включает модуль сбора 230, модуль анализа 240 и базу данных 250. Опционально клиент может включать модуль установки 260. Модуль сбора 230 предназначен для сбора параметров системы 100, в частном случае телеметрии. Модуль анализа 240 преобразует параметры в состояния, процессы и анализирует параметры, состояния процессы с целью выявления аномалий. Анализ модулем анализа 240 осуществляется посредством опроса моделей, например, моделей состояний. Указанный модуль 240 также анализирует аномалии для определения методов восстановления, и обнаруживает средства которые позволяют реализовать метод восстановления, для этого также опрашивают модели. Модуль анализа 240 опционально может располагаться на серверной стороне. Модуль установки 260 предназначен для имплементации программного средства, которое реализует метод восстановления. В базе данных 250 накапливаются параметры, состояния, что в том числе позволяет получать информацию модулю анализа 240 о процессах в элементах и системе, так как процесс есть изменение состояний во времени.

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

Серверная сторона предоставляет интерфейс для связи с клиентской стороной 270 и сторонними модулями разработки 271. На серверной стороне реализована инфраструктура разработки 280, которая включает, по меньшей мере (отдельно на фигуре не выделены):

• модуль ранжирования,

• модуль тестирования,

• модуль накопления статистики.

Модуль ранжирования предназначен для определения, моделей, которые будут отправлены конкретному клиенту и будут опрашиваться модулем анализа. Модуль тестирования предназначен для проверки новых моделей, полученных от модулей разработки. Модели хранятся в базе моделей 281. Модуль накопления статистики получает данные от клиентов по собранным параметрам, опрошенным моделям, результатам опроса моделей и формирует статистику, которая храниться в базе статистики 282. Накопленная статистика используется для разработки новых моделей, отладки существующих и т.д. и доступна через интерфейс для разработчика.

На Фиг. 1 изображен вариант наблюдаемой динамической системы 100, ядром которой является базовый элемент (на фигуре БЭ) на который установлен клиент. Базовыми элементами могут быть ноутбуки, умные часы, смартфоны, персональные компьютеры и т.д. Базовый элемент связан с другими элементами в примере посредством точки доступа. Таким образом число элементов системы определяется радиусом действия точки доступа в покрытии которой находится базовый элемент. В рамках данной системы 100 в частном случае человек может рассматриваться как элемент системы в качестве объекта или субъекта управления/диагностики/мониторинга. В случае, когда человек рассматривается как объект управления/диагностики/мониторинга (например, снятие кардиограммы), другие элементы системы являются субъектами управления. Понятие аномалии в контексте человека как элемента системы может определяться как отклонение от нормальных состояний процессов в рамках медицинских требований.

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

Отношения системы 200 и наблюдаемой динамической системы 100 рассмотрены на Фиг. 2а. Динамическая система 100 может быть, как подсистемой системы 200, так и поэлементно пересекаться с системой 200, например, общей частью системы 200 и частью системы 100 может быть базовый элемент (как и показано на Фиг. 2а).

Система 200 предназначена для осуществления способа выбора совместимых средств для систем с аномалиями (см. Фиг. 3), где модулем сбора 230 клиента 220 на этапе 310 собирают параметры системы 100 от элементов, реализующих заданную функциональность этой системы 100. Сбор может осуществляться в том числе в режиме реального времени. Собранные параметры сохраняются в базе данных 250 клиента 220 и на этапе 320 используются модулем анализа 240 клиента 220 для опроса моделей состояний системы. Модуль анализа 240, опрашивая модели состояний, оценивает соответствие состояния системы 100 и ее элементов требованиям к системе. Модели состояний могут описывать как нормальные процессы и состояния, соответствующие требуемым, так и аномальные, например, которые описывают состояние сбоя или процесс отказа. Модели состояний могут храниться в базе 250 клиента 220. В другом частном случае модели состояний предоставляются серверной стороной модулю анализа 240 клиента 220 по требованию. Модели, которые описывают состояния могут быть самыми разными - регрессионными, классификационными, моделями категоризации и т.д. В их основе могут лежать деревья принятия решений, нейронные сети или логические правила типа IF (or/and/xor) THEN и т.п.

На этапе 330 обнаруживают в результате опроса моделей аномалию в системе. Аномалией может являться, по меньшей мере:

• состояние элемента, отклоняющееся от требуемого и есть функция от параметров элемента

• состояние системы, отклоняющееся от требуемого, и есть функция от состояния элемента;

• процесс элемента, отклоняющейся от требуемого, и есть функция времени от состояния элемента;

• процесс системы, отклоняющейся от требуемого, и есть функция времени от состояния системы;

• состояние внешней среды, с которой взаимодействует система, отклоняющееся от требуемого и описываемое параметрами системы;

• процесс внешней среды, с которой взаимодействует система, отклоняющееся от требуемого и описываемое параметрами системы.

После обнаружения аномалии информация об обнаруженной аномалии для дальнейшей обработки формализуется, где может характеризоваться классом (и/или наименованием) аномалии, параметрами системы, функцией от которых является аномалия. Дополнительно в качестве характеристики может указываться элемент системы, параметры которого определяют аномалию. Класс и наименование аномалии зависят от того от каких требований происходит отклонение. Примерами аномалий могут быть: слабый сигнал роутера, деградация производительности элемента (CPU, HDD, SSD, RAM и т.д.), недостаточный объем постоянной памяти, потеря/порча данных и т.д. Если аномалия относится к постепенному отказу, то определяется не сам факт, например, потери данных или нехватки объема памяти, а скорое их наступление. В частном случае аномалия имеет класс Functionality (согласно классификации, FURPS+) и связана, например, с функционированием системы, где аномалия функционирования есть снижение или потеря способности системы или элемента системы к выполнению предопределенной проектом или назначением функции.

Обнаружив аномалию на этапе 340, и используя информацию об аномалии, опрашивают модель методов восстановлений. Модели методов восстановлений, как и модели состояний могут быть различными, в частном случае используются дескриптивные модели. И на этапе 350 определяют в результате опроса моделей метод восстановления, который при реализации обеспечит соответствие системы и элементов требованиям, например, обеспечит восстановление требуемого функционирования системы. Обнаруженный метод восстановления может как стабилизировать аномальное состояние или процесс (остановит развитие аномалии, что актуально для постепенных отказов), так и осуществляет восстановление системы за счет перехода элемента или системы из аномального состояния или процесса к требуемому (устранение аномалии), где требуемое состояние или процесс соответствуют требованиям к системе по классификации FURPS+. Обнаруженных методов восстановлений может быть больше чем один и тогда окончательный метод выбирается исходя из профиля пользователя базового элемента, в который могут входить различные характеристики: пол, возраст, местоположение, маркетинговый класс, покупательская способность (платежеспособность), уровень IT грамотности и т.д. На заключительном этапе 360 выбирают стороннее совместимое средство (в общем случае способом может выбираться не средство, а продукт), реализующее функциональность метода восстановления, определенного в результате опроса модели методов восстановлений. Для этого могут использоваться как модели, так и базы данных, в которых наименованию метода восстановления соответствуют средства гарантировано реализующие метод восстановления. Доступных средств восстановления как методов восстановления может быть больше чем один, тогда средства выбираются исходя из профиля пользователя, дополнительно может учитываться репутация производителя (син. вендор) средства восстановления. Выбранное средство различными способами может быть имплементировано в систему, одним из таких способов, для программных средств, является его установка посредством модуля установки клиента. Совместимость определяется на основании анализа спецификации системы или средства.

В частном случае методы восстановления могут не определяться (этапы 340 и 350 пропускаются) и средства определяются на основании информации об аномалии. В этом случае после выполнения этапа 330 переходят к этапу 360.

Системой 200 вышеописанный способ может выполняться иначе (см. Фиг. 3а). Этапы с 310 по 330 повторяют способ, описанный выше, дальше начинаются отличия. После того как обнаружена аномалия, которая характеризуется по меньшей мере параметрами элементов или системы, функцией от которых она является, на этапе 340а получают базу доступных сторонних средств или информацию о по меньшей мере одном средстве. Далее на этапе 320а повторно опрашивают модель состояния системы с использованием множества из параметров, собранных на этапе 310, но в указанном множестве параметры системы, функцией от которых является аномалия, замещаются эквивалентными параметрами средства из базы доступных сторонних средств. На основании опроса модели состояний на этапе 330а обнаруживают в базе сторонних средств, по меньшей мере одно, средство, которое:

• совместимо с системой; и

• при опросе модели состояний с использованием параметров данного средства в качестве замещающих не обнаруживается аномалия.

На этапе 330а может быть обнаружено более чем одно средство, удовлетворяющее указанным критериям, тогда из обнаруженных средств в частном случае на этапе 360б выбирают одно средство, например, исходя из профиля пользователя базового элемента и/или репутации производителей/поставщиков обнаруженных средств. В другом частном случае пользователь нотифицируется обо всех обнаруженных средствах (список может быть предварительно ранжирован). Выбранное средство может устанавливаться как вместо средства, реализующего элемент системы, параметры от которого определяют аномалию, так и в дополнение.

Для понимания рассмотрим упрощенный пример (Фиг. 4). Клиент 220 (клиентское ПО) установлен на ноутбуке, который в свою очередь связан с маршрутизатором. В терминах изобретения ноутбук является базовым элементом 210 и с другим элементом маршрутизатором образуют исследуемую систему 100. В свою очередь базовый элемент 210 сам состоит из элементов, таким образом ноутбук в рамках исследуемой системы является подсистемой. Клиентом 220 собираются параметры системы и элементов, где элементами являются, по меньшей мере, центральное процессорное устройство, оперативная память, энергонезависимое запоминающее устройство (сокр. NVRAM), модуль беспроводной связи и маршрутизатор. В рассматриваемом примере NVRAM реализовано посредством твердотельного накопителя (англ. SSD), а маршрутизатор реализован внешним маршрутизатором с программным шифрованием WPA2. Клиент 220 собирает следующие параметры:

• SMART атрибуты NVRAM (напр. Reallocated Sector Count);

• данные о шифровании трафика (есть/нет, тип шифрования);

• объем трафика в обоих направлениях, плотность трафика (объем на единицу времени);

• скорость канала;

• мощность сигнала маршрутизатора;

• спецификацию средств;

NVRAM (тип (Туре), объем (Value), форм фактор (FF), интерфейс (Interface))

маршрутизатор (Стандарт WiFi (IEEE), частотный диапазон устройств Wi-Fi (Spectr), аппаратная поддержка шифрования (НВЕ))

Ниже представлена таблица, в форме которой агрегируют собираемые параметры. Из нее можно получить состояние в момент времени Sn, так и процесс

Собранные параметры используются модулем анализа 240 клиента 220 для опроса моделей состояний системы. Модуль анализа 240, опрашивая модели состояний, оценивает соответствие состояния системы 100 и ее элементов требованиям к системе. В примере использованы простые логические модели, которые описывают аномальные состояния элементов:

- описывает состояние деградации сетевого канала

- описывает деградацию NVRAM в виде постепенного отказа поверхности диска о чем свидетельствует рост числа операций переназначения секторов, что свидетельствует о износе поверхности

описывает отказ NVRAM определяемое достижением критического значения переназначенных секторов равным 20

- описывает состояние деградации мощности сигнала, о чем свидетельствует падение уровня сигнала во времени до критической отметки в 15 дБм

В результате опроса моделей обнаруживаются в определенные моменты времени аномалии:

• деградация сетевого канала в момент времени Т3;

• деградация NVRAM в момент времени Т6;

• отказ NVRAM в момент времени Т9;

• деградация мощности сигнала в момент времени Т5.

Деградации являются аномальными процессам, отказ аномальным состоянием. Имея информацию об аномалии, опрашиваются модели методов восстановления (которые для примера также выражены логическими моделями) и определяются методы восстановления:

- для восстановления мощности сигнала рекомендуется расширить радиус эффективного покрытия роутера;

• IF SPEED_DEGR WHERE ENCn=1 and НВЕ(Hardware based encryption)=0 THEN НВЕ - для восстановления скорости соединения рекомендуется обеспечить аппаратную поддержку шифрования;

- отказ NVRAM должен быть преодолен заменой средства, которым реализуется элемент, в текущем примере заменой SSD

- выявив деградацию поверхности, когда средство реализующее элемент еще работоспособно рекомендуется задуматься о замене средства и позаботиться о резервном копировании

Определив методы восстановления определяют средства, которые способны реализовать рекомендованный метод восстановления. В нашем примере это осуществляется запросом к базе данных 283, в которой таблицы названы в соответствии с методами восстановлений. При этом выбирается такое средство, которое не только реализует рекомендованный метод, но и является совместимым с исследуемой системой, для чего к запросу добавляются некоторые условия (оператор WHERE), сформированные на основании параметров исследуемой системы. Результаты выполнения запросов представлены вместе с самими запросами:

ZYXEL WRE2206

Tenda А300

NETGEAR ЕХ2700

ASUS RP-AC51

ZYXELNBG-418Nv2

DSL-N16U

MikroTik ЬАР mini

Intel 600р

Patriot Hellfire

Samsung 960 EVO

Acronis Disk Director 12

Veeam Agent Free

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

В частном случае модель методов восстановления может не опрашиваться, например, при срабатывании модели:

описывает отказ NVRAM определяемое достижением критического значения переназначенных секторов равным 20

Может выполняться запрос к базе данных 283, где свойства таблиц соответствуют не методам восстановлений, как в примере выше, а аномалиям:

При выполнении способа, описанного на Фиг. 3а после обнаружения аномалии:

Получают информацию о сторонних совместимых с системой 100 средствах, которые могут реализовать элемент системы, параметры которого определяют аномалию:

Среди полученных совместимых средств выбирают такое, которое при опросе модели состояний (IF RSC> 20 THEN NVRAM_FAULT) с использованием параметров средства в качестве замещающих не обнаруживается аномалия (RSC> 20==False), очевидно, что в данном примере таким средством будет любое исправное средство, так как характеристика исправного средства - отсутствие переразмеченных секторов, иными словами у таких средств RSC==0.

Система 200 может использоваться для поисков субъектов со свойствами (характеристиками), которые соответствуют заранее выставленным требованиям. Например, сотрудников для замещения вакантных должностей, респондентов (членов фокус групп для маркетинговых исследований или исследований эргономичности пользовательского интерфейса). Поиск осуществляется по предварительно обученным моделям (модели вакансий), такими моделями могут быть кластеры в многомерном пространстве, где каждый кластер объединяет описания (например, представленные в виде векторов параметров программно-аппаратных средств) субъектов со сходными свойствами или характеристиками, например, один кластер объединяет описания для младших С++ разработчиков, другой - специалистов по изучению данных (data science). Другим примером обученной модели может являться дерево, листья которого соответствуют классам специалистов, например, тому же младшему разработчику С++ или Data Science специалисту, в других случаях могут быть использованы метод опорных векторов (англ. SVM), нейросети, экспертные системы или любой другой известный способ машинного обучения. Также листья могут соответствовать не конкретному классу специалиста, а некоторму требованию к специалисту, например, опыту работы, каким-то ключевым навыкам. На Фиг. 5 изображен способ поиска пользователей, соответствующих требованиям. Требования к пользователям определяются третьими лицами и описываются на этапе 510. Описываться требования могут в различных формах от произвольной до строгой (структурированной по заранее заданному шаблону формирования данных) в рамках некоторой спецификации. Такими требованиями, например, к разработчикам ПО могут быть: опыт разработки (стаж, число успешных проектов), знание определенных синтаксисов языков, стандартов и фреймворков, библиотек и т.д. Далее, в частном случае, описание формализуется на этапе 520 и строится модель. Сущность этого этапа заключается в проецировании (в частном случае отображении) требований из описания на параметры программно-аппаратных средств. Например, стаж 3 года и опыт будут преобразованы в: наличие файлов с соответствующим расширением 3 летней давности, число этих файлов, либо время, проведенное в среде разработки, количество публикаций кода (жарг. коммитов) на специализированных ресурсах GitHub или SourceForge, наличие специального инструментария; знание фреймворков будет преобразовано в наличие этих фреймворков на устройстве и частоту обращения к ним и т.д. Из получившихся проекций будет сформирована модель. В другом частном случае под описание подбирается уже готовая модель на этапе 521, это актуально, когда описание требований отсутствуют, либо описание неполное, например, в требованиях присутствует только позиция - старший разработчик С++. Способы построения таких моделей изображены на Фиг. 6. На этапе 310 собирают параметры программно-аппаратных средств системы и опрашивают построенную на этапе 520 или выбранную на этапе 521 модель, описывающую навыки пользователя, с использованием собранных параметров и оценивают на этапе 320 соответствие пользователя системы описанным требованиям, если пользователь данного устройства соответствует требованиям, то информация об этом отправляется либо третьему лицу, либо нотифицируется сам пользователь.

Для формализации требований и построения моделей на этапе 520 в свою очередь также могут использоваться модели, которые обучают на предварительно размеченных данных. В качестве размеченных данных выступают параметры программно-аппаратных средств систем, свойства пользователей, которых известны, другими словами известны требования, которыми указанные пользователи обладают. Например, известно, что пользователь является С++ разработчиком на Windows и Linux с 5-летним опытом разработки, работает с Boost, реляционными базами данных, Jenkins. Цель обучения модели проассоциировать высокоуровневые требования с параметрами программно-аппаратных средств системы (низкоуровневыми требованиями). На Фиг. 6а изображен способ построения модели формализации, в котором на этапе 610 получают параметры, по меньшей мере одной системы, от элементов, реализующих функциональность системы на этапе 620 собирают характеристики пользователя системы, а на этапе 630 обучают модель формализации, где в процессе обучения на вход обучаемой модели подается, по меньшей мере, одна характеристика пользователя системы, а выходные значения сравнивают с параметрами программно-аппаратных средств системы пользователю которой соответствует характеристика (вариантом реализации такого способа является метод обратного распространения ошибок от англ. backpropagation). На Фиг. 6б изображен альтернативный способ построения модели формализации, в котором на этапе 610 получают параметры, по меньшей мере одной системы, от элементов, реализующих функциональность системы на этапе 620 собирают характеристики пользователя системы, а на этапе 640 строят модель формализации для ассоциации характеристик пользователя системы с параметрами этой системы. Независимо от выбранного способа обучения модели формализации в конечном счете должны проецировать характеристику пользователя на соответствующие параметры программно-аппаратных средств системы. Полученные модели могут использоваться как независимо, так и быть агрегированы и даже работать в режиме обратной. Например, к разработчику предъявляется требование: опыт разработки 5 лет и знанию Boost, для этого в частном случае берем модель, которая проецирует требуемый опыт на соответствующие параметры программно-аппаратных средств и модель которая определит какие параметры указывают на работу с Boost. На основании определенных параметров откладываются векторы в многомерном пространстве - это и будет модель вакансии. С этими векторами будут сравниваться векторы, полученные из параметров, собранных с системы пользователя на этапе 310. В другом случае, если модели формализации представляют из себя деревья принятия решений векторы не строят, а модели опрашиваются на этапе 520 параметрами, собранными на этапе 310.

Под модулями системы 200 понимаются реальные устройства, системы, компоненты, группа компонентов, реализованные с использованием аппаратных средств, таких как интегральные микросхемы (англ. application-specific integrated circuit, ASIC) или программируемой вентильной матрицы (англ. field-programmable gate array, FPGA) или, например, в виде комбинации программных и аппаратных средств, таких как микропроцессорная система и набор программных инструкций, а также на нейроморфных чипах {англ. neurosynaptic chips) Функциональность указанных модулей может быть реализована исключительно аппаратными средствами, а также в виде комбинации, где часть функциональности реализована программными средствами, а часть аппаратными. В некоторых вариантах реализации средства могут быть исполнены на процессоре компьютера общего назначения (например, который изображен на Фиг. 7). Базы данных могут быть реализованы всеми возможными способами и содержаться как на одном физическом носителе, так и на разных, располагаться как локально, так и удаленно.

Фиг. 7 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.

Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.

Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.

Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканнер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например, колонками, принтером и т.п.

Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг. 7. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.

Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.

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

Похожие патенты RU2739873C2

название год авторы номер документа
Способ асинхронного выбора совместимых продуктов 2019
  • Ефремов Андрей Анатольевич
RU2747474C2
Способ обнаружения совместимых средств для систем с аномалиями 2018
  • Ефремов Андрей Анатольевич
RU2739866C2
Способ определения совместимых средств 2018
  • Ефремов Андрей Анатольевич
RU2712409C1
СПОСОБ И СИСТЕМА ДЛЯ ДИАГНОСТИРОВАНИЯ ПРОМЫШЛЕННОГО ОБЪЕКТА 2018
  • Касимов Денис Бахчанович
  • Лисин Денис Олегович
  • Молчанов Дмитрий Павлович
  • Гурфов Аслан Русланович
  • Вдовенко Максим Юрьевич
  • Мельников Виктор Александрович
RU2707423C2
ОСНОВАННОЕ НА МОДЕЛИ УПРАВЛЕНИЕ КОМПЬЮТЕРНЫМИ СИСТЕМАМИ И РАСПРЕДЕЛЕННЫМИ ПРИЛОЖЕНИЯМИ 2004
  • Макколлум Реймонд В.
  • Паланка Раду Р.
  • Пфеннинг Йорг Т.
  • Саттон Александр М.
  • Браун Марк Р.
RU2375744C2
СПОСОБ И СИСТЕМА ДИНАМИЧЕСКОЙ АУТЕНТИФИКАЦИИ И ОЦЕНКИ РИСКА ПОЛЬЗОВАТЕЛЯ 2019
  • Большаков Павел Сергеевич
RU2723679C1
ДИНАМИЧЕСКИЙ ЭЛЕКТРОННЫЙ КУПОН ДЛЯ СРЕДЫ МОБИЛЬНОЙ СВЯЗИ 2008
  • Раджан Раджив Д.
  • Моаллеми Камран
  • Кениг Михаль Джеймс
  • Михаэлис Оливер
  • Джейкобз Пол Э.
  • Дож Сантош Жозе Рикарду Гонкалвеш Леал
  • Во Данг Минх
RU2468433C2
Способ диагностики и мониторинга аномалий в кибер-физической системе 2021
  • Лаврентьев Андрей Борисович
  • Шкулев Вячеслав Игоревич
  • Травов Александр Викторович
  • Воронцов Артем Михайлович
  • Нечипорук Артем Михайлович
  • Мамаев Максим Александрович
  • Иванов Дмитрий Александрович
  • Демидов Николай Николаевич
RU2784981C1
Способ отнесения неизвестного устройства кластеру 2019
  • Иванов Дмитрий Геннадьевич
  • Ладиков Андрей Владимирович
  • Филонов Павел Владимирович
RU2747466C2
Способ формирования кластеров устройств 2019
  • Иванов Дмитрий Геннадьевич
  • Ладиков Андрей Владимирович
  • Филонов Павел Владимирович
RU2747452C2

Иллюстрации к изобретению RU 2 739 873 C2

Реферат патента 2020 года Способ поиска пользователей, соответствующих требованиям

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

Формула изобретения RU 2 739 873 C2

1. Способ поиска пользователей, соответствующих требованиям, в котором:

а) получают требования к пользователю;

б) определяют параметры программно-аппаратных средств, описывающие полученные требования;

в) формируют модель, описывающую требования к пользователю через параметры программно-аппаратных средств;

г) собирают параметры программно-аппаратных средств системы;

д) опрашивают модель, описывающую требования к пользователю, с использованием собранных параметров и оценивают соответствие пользователя системы требованиям по пп. а);

е) обнаруживают пользователя, соответствующего требованиям, полученным в пп. а).

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

3. Способ по п. 2, в котором проецирование осуществляется предварительно обученной моделью.

4. Способ обучения модели по п. 3, в котором:

а) получают параметры, по меньшей мере одной системы, от программно-аппаратных средств, реализующих функциональность системы;

б) собирают характеристики пользователя системы из пп. а);

в) обучают модель, где на вход обученной модели подается, по меньшей мере, одна характеристика пользователя системы, а выходные значения сравнивают с параметрами программно-аппаратных средств системы, оператору которой соответствует характеристика, где на основании сравнения модель корректируется.

5. Способ обучения модели по п. 3, в котором:

а) получают параметры, по меньшей мере одной системы, от элементов, реализующих функциональность системы;

б) собирают характеристики пользователя системы из пп. а);

в) строят модель для ассоциации характеристик пользователя системы с параметрами этой системы.

6. Способ поиска пользователей, соответствующих требованиям, в котором

а) получают требования к пользователю;

б) выбирают обученную модель для поиска пользователей, соответствующих полученным требованиям;

в) собирают параметры программно-аппаратных средств, по меньшей мере одной, системы;

г) опрашивают выбранную модель, с использованием собранных параметров и оценивают соответствие пользователя системы требованиям по пп. а);

д) обнаруживают пользователя, соответствующего требованиям, полученным в пп. а).

7. Способ обучения модели по п. 6, в котором:

а) получают параметры, по меньшей мере одной системы, от программно-аппаратных средств, реализующих функциональность системы;

б) собирают характеристики пользователя системы из пп. а);

в) обучают модель, где на вход обученной модели подается, по меньшей мере, одна характеристика пользователя системы, а выходные значения сравнивают с параметрами программно-аппаратных средств системы, оператору которой соответствует характеристика.

8. Способ обучения модели по п. 6, в котором:

а) получают параметры, по меньшей мере одной системы, от элементов, реализующих функциональность системы;

б) собирают характеристики пользователя системы из пп. а);

в) строят модель для ассоциации характеристик пользователя системы с параметрами этой системы.

Документы, цитированные в отчете о поиске Патент 2020 года RU2739873C2

Колосоуборка 1923
  • Беляков И.Д.
SU2009A1
ОПЫТ ПОДДЕРЖКИ ПОЛЬЗОВАТЕЛЕЙ С АВТОМАТИЧЕСКИ ГЕНЕРИРУЕМОЙ ВИРТУАЛЬНОЙ СРЕДОЙ 2014
  • Томас Сатиш
  • Чжан И
  • Човдхури Муртаза
  • Сринивасан Сридхар
  • Говард Джон Хэл
RU2673008C2
Пресс для изготовления сборных штампованных пуговиц 1956
  • Иванченко В.Г.
  • Ореховский В.Н.
SU105042A1
US 8924956 B2, 30.12.2014
US 7594176 B1, 22.09.2009
Устройство для закрепления лыж на раме мотоциклов и велосипедов взамен переднего колеса 1924
  • Шапошников Н.П.
SU2015A1

RU 2 739 873 C2

Авторы

Ефремов Андрей Анатольевич

Даты

2020-12-29Публикация

2019-02-07Подача