RU2461150C1 - Method and apparatus for selecting and indicating service - Google Patents

Method and apparatus for selecting and indicating service Download PDF

Info

Publication number
RU2461150C1
RU2461150C1 RU2011119623/08A RU2011119623A RU2461150C1 RU 2461150 C1 RU2461150 C1 RU 2461150C1 RU 2011119623/08 A RU2011119623/08 A RU 2011119623/08A RU 2011119623 A RU2011119623 A RU 2011119623A RU 2461150 C1 RU2461150 C1 RU 2461150C1
Authority
RU
Russia
Prior art keywords
service
services
communication
terminals
user terminal
Prior art date
Application number
RU2011119623/08A
Other languages
Russian (ru)
Inventor
Маттиас ЛИНДСТРЕМ (SE)
Маттиас ЛИНДСТРЕМ
Мартин СВЕНССОН (SE)
Мартин Свенссон
Михель ШАХАН (DK)
Михель ШАХАН
Original Assignee
Телефонактиеболагет Лм Эрикссон (Пабл)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Телефонактиеболагет Лм Эрикссон (Пабл) filed Critical Телефонактиеболагет Лм Эрикссон (Пабл)
Priority to RU2011119623/08A priority Critical patent/RU2461150C1/en
Application granted granted Critical
Publication of RU2461150C1 publication Critical patent/RU2461150C1/en

Links

Images

Abstract

FIELD: information technology.
SUBSTANCE: method involves providing a data structure representing user terminals and relationships between the terminals, obtained from one or more communication parameters associated with communication between user terminals. Also, information on service use for each of a plurality of services is provided for at least some of the user terminals. The method further involves selecting, for at least one user terminal and from a plurality of services not used by at least one user terminal, a service which is not used by at least one user terminal, wherein the service selection is based on information of service use provided for user terminals, having predetermined connection with at least one user terminal, as a defined relationship between terminals, and sending a message indicating the selected service to at least one user terminal.
EFFECT: efficient indication of service accessibility in a user terminal in a communication network.
19 cl, 11 dwg

Description

Область техники, к которой относится изобретениеFIELD OF THE INVENTION

Раскрытие, в целом, относится к сетям связи. Конкретно раскрытие относится к области техники обеспечения указаний относительно доступности (включая наличие) услуг в пользовательский терминал в сети связи.The disclosure generally relates to communication networks. Specifically, the disclosure relates to the technical field of providing guidance regarding the availability (including availability) of services to a user terminal in a communication network.

Уровень техникиState of the art

В современных сетях связи существует изобилие разных услуг связи. Доступные услуги связи включают в себя традиционные телекоммуникационные услуги, такие как речевые услуги, услуги данных, служба коротких сообщений (SMS), служба обмена сообщениями мультимедиа (MMS). Кроме того, услуги обмена мгновенными сообщениями (IM) и услуги связи на основе группы (обычно на основе протокола Internet или IP), возможно включающие в себя более двух партнеров по связи, становятся все более и более популярными. Групповые услуги на основе IP включают в себя, например, общение в блогах, виртуальные форумы и т.д.In modern communication networks, there is an abundance of various communication services. Available communications services include traditional telecommunications services such as voice services, data services, short message service (SMS), multimedia messaging service (MMS). In addition, instant messaging (IM) and group-based communication services (typically based on the Internet or IP protocol), possibly including more than two communication partners, are becoming more and more popular. IP-based group services include, for example, blogging, virtual forums, etc.

В результате большого числа разных услуг связи, используемых в настоящее время, среда связи в целом стала довольно гетерогенной. Гетерогенный характер среды связи выражен тем фактом, что многие из услуг связи и, в частности, услуги связи на основе группы не стандартизованы. Также разные пользовательские терминалы (такие как разные мобильные телефоны) часто поддерживают разные наборы услуг связи, что означает, что в связи с конкретной услугой связи два пользовательских терминала иногда могут быть несовместимыми друг с другом. Таким образом, гетерогенный характер среды связи в известной мере препятствует возможности связи между пользовательскими терминалами.As a result of the large number of different communication services currently in use, the communication environment as a whole has become quite heterogeneous. The heterogeneous nature of the communication environment is expressed by the fact that many of the communication services and, in particular, group-based communication services are not standardized. Also, different user terminals (such as different mobile phones) often support different sets of communication services, which means that in connection with a particular communication service, two user terminals can sometimes be incompatible with each other. Thus, the heterogeneous nature of the communication medium to a certain extent impedes the possibility of communication between user terminals.

При других обстоятельствах возможность связи между пользовательскими терминалами просто является ограниченной, поскольку определенный пользователь может не знать о конкретной услуге связи, поддерживаемой с помощью его или ее пользовательского терминала в его текущей конфигурации или после быстрого обновления программного обеспечения или подписки на услугу. Иначе говоря, пользователь может иметь больше вариантов связи с помощью пользовательского терминала, чем те, о которых он или она фактически знает. Например, если пользовательский терминал поддерживает традиционные коммуникационные услуги с помощью сотовой сети связи (например, в соответствии со спецификациями универсальной мобильной телекоммуникационной системы, или UMTS) и, кроме того, услуги связи на основе группы (которые также могут быть предоставлены беспроводной локальной сетью или WLAN), пользователь может знать только о функциональных возможностях UMTS его или ее терминала. В результате пользователю не будет дана возможность какой-либо связи в областях, имеющих только зону обслуживания WLAN, несмотря на то, что терминал может поддерживать доступ к сети с помощью WLAN. Отсутствие возможности связи, которая следует, особенно досадно, если многие из возможных партнеров по связи пользователя регулярно используют такие услуги связи на основе группы. С другой стороны, во многих ситуациях может быть бесполезным уведомлять пользователя о поддерживаемых услугах связи, которые он или она не будут использовать, поскольку не имеются или имеется только немного возможных партнеров по связи.In other circumstances, the ability to communicate between user terminals is simply limited, as a particular user may not be aware of a particular communication service supported by his or her user terminal in his current configuration or after a quick software update or subscription to the service. In other words, a user may have more communication options using a user terminal than those that he or she actually knows about. For example, if the user terminal supports traditional communication services via a cellular communication network (for example, in accordance with the specifications of the universal mobile telecommunication system, or UMTS) and, in addition, group-based communication services (which can also be provided by a wireless LAN or WLAN ), the user can only know about the functionality of the UMTS of his or her terminal. As a result, the user will not be given the opportunity of any communication in areas having only a WLAN service area, despite the fact that the terminal can support access to the network via WLAN. The lack of communication capabilities that follows is particularly annoying if many of the potential user communication partners regularly use such group-based communication services. On the other hand, in many situations it may be useless to notify the user of supported communication services that he or she will not use, since there are not or are only a few possible communication partners.

То, о чем было упомянуто выше в связи с услугами связи, также применяется к определенным услугам приложений. То есть пользователь во многих случаях может получать пользу из не используемых в текущий момент услуг приложений, которые в принципе поддерживаются с помощью его или ее терминала.What was mentioned above in connection with communication services also applies to certain application services. That is, the user in many cases can benefit from applications that are not currently used, which, in principle, are supported by his or her terminal.

Сущность изобретенияSUMMARY OF THE INVENTION

Требуется способ, который более эффективно предоставляет указания доступности услуг в пользовательский терминал в сети связи.What is needed is a method that more efficiently provides indications of service availability to a user terminal in a communication network.

В соответствии с первым аспектом предоставлен способ предоставления указания доступности услуги в пользовательский терминал. Способ содержит предоставление структуры данных, представляющей пользовательские терминалы и отношения между терминалами, полученные из одного или более параметров связи, относящихся к связям между пользовательскими терминалами, предоставление, по меньшей мере, для некоторых из пользовательских терминалов информации об использовании услуги для каждой из множества услуг, выбор, по меньшей мере, для одного пользовательского терминала и из множества услуг услуги, не использованной, по меньшей мере, с помощью одного пользовательского терминала, причем выбор услуги основан на информации об использовании услуги, предоставленной для пользовательских терминалов, имеющих предварительно определенную ассоциацию по меньшей мере с одним пользовательским терминалом, как определенным с помощью отношений между терминалами, и посылку сообщения, указывающего выбранную услугу по меньшей мере в один пользовательский терминал. Как понятно в настоящей заявке, понятие “множество” относится к некоторому числу, большему единицы.In accordance with a first aspect, a method is provided for providing an indication of service availability to a user terminal. The method comprises providing a data structure representing user terminals and relationships between terminals obtained from one or more communication parameters related to communications between user terminals, providing at least some of the user terminals with information about using the service for each of the plurality of services, selection, for at least one user terminal and from among a plurality of services, a service not used by at least one user minala, moreover, the choice of service is based on information on the use of the service provided for user terminals having a predefined association with at least one user terminal, as determined by the relationship between the terminals, and sending a message indicating the selected service to at least one user terminal. As is understood in the present application, the term “plurality” refers to a number greater than one.

Структура данных может быть реализована в различных видах, таких как в виде абстрактной модели данных или в виде набора наборов данных. Структура данных может быть сконфигурирована с возможностью быть представленной или может быть представлена как сетевой граф с узлами и ребрами, соединяющими каждые два узла. В сетевом графе узлы соответствуют пользовательским терминалам, а ребра могут быть получены из отношений между узлами. Например, ребро может быть использовано, чтобы соединять два узла, которые представляют пользовательские терминалы, между которыми в прошлом установлена линия связи. Когда сетевой граф используют, предпочтительная ассоциация между пользовательскими терминалами (т.е. узлами сетевого графа), лежащая в основе выбора услуги, может быть определена с точки зрения признаков, связанных с топологией сетевого графа.The data structure can be implemented in various forms, such as as an abstract data model or as a set of data sets. The data structure may be configured to be represented or may be represented as a network graph with nodes and edges connecting every two nodes. In a network graph, nodes correspond to user terminals, and edges can be obtained from relationships between nodes. For example, an edge can be used to connect two nodes that represent user terminals between which a communication link has been established in the past. When a network graph is used, the preferred association between user terminals (i.e. nodes of the network graph) underlying the service selection can be determined in terms of features related to the topology of the network graph.

Процедура выбора услуги может быть выполнена в контексте указания в пользовательский терминал доступной услуги, не использованной в текущий момент и/или ранее пользовательским терминалом. Выбор может принимать во внимание технические функциональные возможности конкретного пользовательского терминала, чтобы убедиться, что рекомендованы только услуги, действительно поддерживаемые пользовательским терминалом (включая случаи, в которых требуются только обновления программного обеспечения или описаний услуг). Предварительно определенная ассоциация между пользовательским терминалом, который образует цель рекомендации, и другими пользовательскими терминалами, которые уже используют рекомендованную услугу, может быть выражена в виде одного или более критериев. Критерии могут прямо или косвенно (например, с помощью топологии сетевого графа) относиться к отношениям между терминалами, как полученным из одного или более параметров связи между терминалами.The service selection procedure can be performed in the context of indicating to the user terminal an available service that is not currently used and / or previously by the user terminal. The selection may take into account the technical functionality of a particular user terminal to ensure that only the services actually supported by the user terminal are recommended (including cases in which only software updates or service descriptions are required). A predefined association between a user terminal that forms the target of the recommendation and other user terminals that already use the recommended service can be expressed as one or more criteria. Criteria can directly or indirectly (for example, using the topology of the network graph) relate to the relationship between the terminals, as obtained from one or more communication parameters between the terminals.

В одном примере предварительно определенная ассоциация, лежащая в основе процедуры выбора услуги, содержит критерий, выраженный как мера расстояния с точки зрения сетевого графа или применимый к сетевому графу. Мера расстояния может быть предварительно определенным числом “переходов” взаимно соединяющих конкретные узлы в сетевом графе. В одном осуществлении выбор услуги, например, может быть основан на информации об использовании услуги, предоставленной для пользовательских терминалов, являющихся прямыми соседними терминалами пользовательского терминала, в который должно быть передано указание доступности услуги. В другом осуществлении выбор услуги может быть основан на информации об использовании услуги, предоставленной для пользовательских терминалов, которые могут быть достигнуты с помощью предварительно определенного максимального числа переходов (как, например одного, двух или трех переходов) из пользовательского терминала, который образует цель указания доступности услуги.In one example, the predefined association underlying the service selection procedure contains a criterion expressed as a measure of distance from the point of view of the network graph or applicable to the network graph. The distance measure can be a predetermined number of “transitions” interconnecting specific nodes in the network graph. In one embodiment, the choice of service, for example, may be based on information about the use of the service provided for user terminals that are direct neighboring terminals of the user terminal to which the indication of service availability should be transmitted. In another implementation, the choice of service can be based on information about the use of the service provided for user terminals, which can be achieved using a predefined maximum number of transitions (such as, for example, one, two or three transitions) from the user terminal, which forms the goal of indicating availability services.

В сетевом графе каждое ребро может быть ассоциировано с информацией о метриках, количественно определяющей взаимное отношение между двумя узлами, соединенными конкретным ребром. Информация о метриках по меньшей мере частично может быть получена из одного или более параметров связи (или, что будет во многих случаях эквивалентно, из отношений между терминалами). В качестве альтернативы, или дополнительно, информация о метриках может быть получена из других параметров, таких как топология сетевого графа. Параметры, полученные из топологии сетевого графа, включают в себя, например, наличие группировок или характера транзитивных отношений из перспективы конкретного узла. В случаях, в которых информация о метриках предоставлена, предварительно определенная ассоциация, лежащая в основе процедуры выбора услуги, может содержать критерий, выраженный с точки зрения информации о метриках, или применимый к информации о метриках.In a network graph, each edge can be associated with metric information that quantifies the relationship between two nodes connected by a particular edge. Information about the metrics can be at least partially obtained from one or more communication parameters (or, which in many cases will be equivalent, from relations between terminals). Alternatively, or additionally, metric information can be obtained from other parameters, such as the topology of the network graph. Parameters obtained from the topology of the network graph include, for example, the presence of groupings or the nature of transitive relations from the perspective of a particular node. In cases in which metric information is provided, the predefined association underlying the service selection procedure may contain a criterion expressed in terms of metric information or applicable to metric information.

Ребра в сетевом графе могут быть направленными (т.е. могут указывать предварительно определенное направление, изображенное, например, с помощью стрелки). Направленные ребра могут быть использованы в различных контекстах, например, чтобы выражать уровень доверия между пользователями разных пользовательских терминалов, имеющих отношение между терминалами. Некоторые общие характеристики доверия включают в себя, что оно является транзитивным и ассиметричным (т.е. обычно доверие не является двунаправленным). В случае направленных ребер предварительно определенная ассоциация, лежащая в основе процедуры выбора услуги, может содержать критерий, выраженный с точки зрения направления ребра, или применимый к направлению ребра.The edges in the network graph can be directed (i.e., they can indicate a predefined direction, shown, for example, using an arrow). Directional edges can be used in various contexts, for example, to express the level of trust between users of different user terminals related between the terminals. Some common characteristics of trust include that it is transitive and asymmetric (i.e., trust is usually not bidirectional). In the case of directed ribs, the predefined association underlying the service selection procedure may contain a criterion expressed in terms of the direction of the rib, or applicable to the direction of the rib.

По меньшей мере, некоторые из узлов в сетевом графе (или пользовательских терминалов в структуре данных) могут быть ранжированы, и тогда предварительно определенная ассоциация, лежащая в основе процедуры выбора услуги, может содержать критерий, выраженный с точки зрения ранжирования. В одном варианте узлы ранжируют на основании по меньшей мере одного из следующего: их принадлежности к группировке и наличия транзитивных отношений с точки зрения сетевого графа.At least some of the nodes in the network graph (or user terminals in the data structure) can be ranked, and then the predefined association underlying the service selection procedure may contain a criterion expressed in terms of ranking. In one embodiment, the nodes are ranked based on at least one of the following: their membership in the grouping and the presence of transitive relationships from the point of view of the network graph.

Для конкретного ребра в сетевом графе отдельные элементы информации о метриках могут быть предоставлены для каждой из множества услуг связи. В таком сценарии оценка того, предоставлять ли или нет указание доступности услуги в связи с конкретной услугой связи, выполняют на основании информации о метриках, предоставленной для этой конкретной услуги связи. Иначе говоря, оценка разных услуг связи в связи с одним единственным ребром будет включать в себя разные элементы информации о метриках.For a particular edge in a network graph, individual metric information elements may be provided for each of a plurality of communication services. In such a scenario, an assessment of whether or not to provide an indication of service availability in connection with a particular communication service is performed based on metric information provided for that specific communication service. In other words, the evaluation of different communication services in connection with one single rib will include different elements of information about the metrics.

В соответствии с первым вариантом информация об использовании услуги относится к услугам связи. Таким образом, выбранная услуга будет услугой связи. Возможные услуги связи включают в себя одну или более из речевых услуг, услуг данных, услуг мультимедиа, текстовых услуг, услуг мгновенного обмена сообщениями и услуг связи на основе группы. В другом варианте информация об использовании услуги относится к услугам приложений, и, таким образом, выбранная услуга будет услугой приложения. Возможные услуги приложений включают в себя, в частности, (но не исключительно) мобильные услуги приложений, такие как мобильные игровые приложения, потенциально вызывающие участие и взаимодействие множества мобильных пользовательских терминалов и приложение определителя местонахождения (т.е. приложения, направляющие пользователя, управляющего мобильным терминалом, в конкретное место). Услуги приложений могут быть услугами, которые предоставляют сетью обеспечения услуг, к которой пользовательские терминалы могут подключаться с помощью услуги связи или сети связи.In accordance with the first embodiment, information about the use of the service relates to communication services. Thus, the selected service will be a communication service. Possible communication services include one or more of voice services, data services, multimedia services, text services, instant messaging services and group based communication services. In another embodiment, service usage information relates to application services, and thus, the selected service will be an application service. Possible application services include, but are not limited to, mobile application services, such as mobile gaming applications, potentially causing the participation and interaction of multiple mobile user terminals, and a location determiner application (i.e., applications directing the user managing the mobile terminal, to a specific place). Application services can be services that are provided by a service providing network to which user terminals can connect using a communication service or a communication network.

В одном сценарии отдельные услуги ранжируют в соответствии с информацией об использовании услуги. Это означает, например, что часто используемые услуги ранжируют более высоко, чем услуги, которые используют только изредка. Иначе говоря, ранжирование услуг может зависеть от использования каждой отдельной услуги отдельным пользовательским терминалом, терминалами, учтенными в структуре данных, или большими совокупностями терминалов. Выбор услуги может в этом случае быть основанным также на ранжировании услуг.In one scenario, individual services are ranked according to service usage information. This means, for example, that frequently used services rank higher than services that only occasionally use. In other words, the ranking of services may depend on the use of each individual service by a separate user terminal, terminals included in the data structure, or large collections of terminals. In this case, the choice of service may also be based on the ranking of services.

Один или более параметров связи, лежащих в основе отношений между терминалами, могут включать в себя одно или более из следующего: партнера (партнеров) по связи, продолжительность связи, число связей, направление связи и вид использованной услуги связи. Конечно, отношения между терминалами также могут быть получены, принимая во внимание другие параметры, не напрямую относящиеся к связи именно между двумя пользовательскими терминалами (такие как маршрутизация сообщения из первого пользовательского терминала через второй пользовательский терминал в третий пользовательский терминал). Существуют различные возможности получения параметров связи. Например, параметры связи могут быть получены по меньшей мере из одного из следующего: записей подробностей вызовов, записей подробностей событий, исследования интерфейса сети связи и агентов пользовательских терминалов.One or more communication parameters underlying the relationship between the terminals may include one or more of the following: communication partner (s), communication duration, number of communications, communication direction and type of communication service used. Of course, the relationship between the terminals can also be obtained, taking into account other parameters that are not directly related to the communication between the two user terminals (such as routing messages from the first user terminal through the second user terminal to the third user terminal). There are various options for obtaining communication parameters. For example, communication parameters can be obtained from at least one of the following: call detail records, event detail records, investigation of a communication network interface, and user terminal agents.

В соответствии с дополнительным аспектом предоставлен компьютерный программный продукт, который содержит части программного кода для выполнения этапов одного или более способов и аспектов способов, описанных в настоящей заявке, когда компьютерный программный продукт выполняют в одном или более вычислительных устройств. Компьютерный программный продукт может быть сохранен на машиночитаемом носителе, таком как постоянная или перезаписываемая память в вычислительном устройстве или, ассоциированная с вычислительным устройством, CD, DVD и т.д. Кроме того, или в качестве альтернативы может быть предоставлен компьютерный программный продукт для загрузки в вычислительное устройство, например, с помощью сети данных, такой как Internet, или выделенной линии связи, такой как телефонная линия связи или беспроводная линия связи.In accordance with a further aspect, a computer program product is provided that comprises portions of program code for performing steps of one or more methods and aspects of the methods described herein when the computer program product is executed in one or more computing devices. The computer program product may be stored on a computer-readable medium, such as read-only or write-back memory in a computing device or associated with a computing device, CD, DVD, etc. In addition, or alternatively, a computer program product may be provided for downloading to a computing device, for example, using a data network such as the Internet, or a dedicated communication line such as a telephone line or a wireless line.

В соответствии с еще одним аспектом предоставлено устройство для предоставления указания доступности услуги в пользовательский терминал. Устройство содержит память, предоставляющую структуру данных, представляющую пользовательские терминалы и отношения между терминалами, полученные из одного или более параметров связи, относящихся к связям между пользовательскими терминалами, и дополнительно предоставляющую по меньшей мере для некоторых из пользовательских терминалов информацию об использовании услуги для каждой из множества услуг, процессор, адаптированный выбирать по меньшей мере для одного пользовательского терминала и из множества услуг услуги, не использованной по меньшей мере одним пользовательским терминалом, причем выбор услуги основан на информации об использовании услуги, предоставленной для пользовательских терминалов, имеющих предварительно определенную ассоциацию по меньшей мере с одним пользовательским терминалом, как определено с помощью отношений между терминалами, и выходной интерфейс для посылки сообщения, указывающего выбранную услугу, в пользовательский терминал. Память может быть расположена в одном месте (например, в виде одной базы данных). В альтернативном осуществлении память распределена между двумя или более местами (например, в виде двух или более специализированных баз данных).In accordance with yet another aspect, an apparatus is provided for providing an indication of service availability to a user terminal. The device comprises a memory providing a data structure representing user terminals and relationships between terminals obtained from one or more communication parameters related to communications between user terminals, and further providing at least for some of the user terminals, service usage information for each of the plurality of services, a processor adapted to select for at least one user terminal and from a variety of services of a service not used at least one user terminal, the service selection being based on service usage information provided for user terminals having a predetermined association with at least one user terminal, as determined by the relationship between the terminals, and an output interface for sending a message, indicating the selected service to the user terminal. The memory may be located in one place (for example, in the form of a single database). In an alternative implementation, the memory is distributed between two or more places (for example, in the form of two or more specialized databases).

В одной конфигурации структура данных адаптирована быть представленной (например, на компьютерном мониторе или любом другом устройстве отображения) как сетевой граф с узлами и ребрами, в котором узлы являются представителями пользовательских терминалов и в котором ребра соединяют каждые два узла, и их получают из отношений между узлами. В сценарии сетевого графа предварительно определенная ассоциация, лежащая в основе выбора услуги, может содержать критерий, выраженный как мера расстояния, с точки зрения сетевого графа, или применимый к сетевому графу.In one configuration, the data structure is adapted to be represented (for example, on a computer monitor or any other display device) as a network graph with nodes and edges, in which nodes are representative of user terminals and in which edges connect every two nodes, and they are obtained from the relations between nodes. In a network graph scenario, the predefined association underlying the service selection may contain a criterion expressed as a measure of distance, from the point of view of the network graph, or applicable to the network graph.

Устройство и его компоненты могут быть сконфигурированы с возможностью выполнения одного или более этапов способов, описанных в настоящей заявке.The device and its components can be configured to perform one or more of the steps of the methods described in this application.

Краткое описание чертежейBrief Description of the Drawings

В дальнейшем дополнительные подробности и аспекты будут обсуждены со ссылкой на иллюстративные варианты осуществления, проиллюстрированные на чертежах, на которыхFurther details and aspects will be discussed with reference to illustrative embodiments illustrated in the drawings, in which

фиг.1 иллюстрирует вариант осуществления устройства для предоставления указаний доступности услуги в пользовательские терминалы;figure 1 illustrates an embodiment of a device for providing indications of service availability at user terminals;

фиг.2 иллюстрирует вариант осуществления структуры данных,2 illustrates an embodiment of a data structure,

фиг.3 иллюстрирует сетевой граф, содержащий узлы и ребра, полученные из структуры данных фиг.2;figure 3 illustrates a network graph containing nodes and edges obtained from the data structure of figure 2;

фиг.4 показывает блок-схему последовательности этапов, схематически иллюстрирующую вариант осуществления способа;4 shows a flowchart schematically illustrating an embodiment of a method;

фиг.5 схематически иллюстрирует сетевой граф, содержащий множество группировок;5 schematically illustrates a network graph containing multiple groupings;

фиг.6 схематически иллюстрирует концепцию транзитивных отношений относительно иллюстративного сетевого графа;6 schematically illustrates the concept of transitive relationships with respect to an illustrative network graph;

фиг.7 схематически иллюстрирует дополнительный сетевой граф, содержащий несколько группировок;7 schematically illustrates an additional network graph containing several groups;

фиг.8 иллюстрирует сетевой граф, содержащий направленные ребра,Fig.8 illustrates a network graph containing directed edges,

фиг.9 иллюстрирует определение группировки в сетевом графе, включающем в себя направленные ребра;Fig.9 illustrates the definition of grouping in a network graph, including directed edges;

фиг.10 изображает диаграмму, иллюстрирующую сравнение между механизмом подсчета ребер и механизмом подсчета группировок со средним размером кластера, равным 5, и10 is a diagram illustrating a comparison between the edge counting mechanism and the group counting mechanism with an average cluster size of 5, and

фиг.11 изображает диаграмму, иллюстрирующую сравнение между механизмом подсчета ребер и механизмом подсчета группировок со средним размером кластера, равным 20.11 is a diagram illustrating a comparison between the edge counting mechanism and the group counting mechanism with an average cluster size of 20.

Подробное описание изобретенияDETAILED DESCRIPTION OF THE INVENTION

В следующем описании для целей объяснения, а не ограничения, приведены специфические детали, для того чтобы предоставить полное понимание способов, представленных в настоящей заявке. Специалист в данной области техники поймет, что эти способы могут быть осуществлены на практике в других вариантах осуществления, которые отличаются от этих специфических аспектов. Например, специалист в данной области техники поймет, что эти способы могут быть осуществлены на практике не только в связи со средой мобильной связи, но также в связи с проводными системами связи.In the following description, for purposes of explanation and not limitation, specific details are set forth in order to provide a thorough understanding of the methods presented in this application. One skilled in the art will recognize that these methods may be practiced in other embodiments that differ from these specific aspects. For example, one skilled in the art will understand that these methods can be practiced not only in connection with a mobile communication environment, but also in connection with wired communication systems.

Специалист в данной области техники дополнительно поймет, что функции, объясненные в настоящей заявке ниже, по меньшей мере частично, могут быть осуществлены с использованием отдельных схем аппаратного обеспечения, программного обеспечения, функционирующего совместно с запрограммированным микропроцессором, программируемой вентильной матрицей (FPGA), интегральной схемой прикладной ориентации (ASIC) и/или процессором цифровых сигналов (DSP).One of ordinary skill in the art will further understand that the functions explained in this application below, at least in part, can be implemented using separate hardware circuits, software that operates in conjunction with a programmed microprocessor, programmable gate array (FPGA), integrated circuit Application Orientation (ASIC) and / or Digital Signal Processor (DSP).

Иллюстративный вариант осуществления способа для предоставления указаний доступности услуг, теперь будет описан со ссылкой на фиг.1. Фиг.1 иллюстрирует иллюстративный вариант осуществления устройства 100, содержащего различные подсистемы, действующие совместно в процессе генерации и предоставления указаний доступности услуг для совокупности 102 пользовательских терминалов 98.An exemplary embodiment of a method for providing indications of service availability will now be described with reference to FIG. FIG. 1 illustrates an illustrative embodiment of an apparatus 100 comprising various subsystems working together in a process for generating and providing indications of service availability for a plurality of 102 user terminals 98.

Совокупность 102 терминалов обычно является смесью мобильных и стационарных терминалов 98, сконфигурированных с возможностью связи друг с другом с помощью множества сетей связи и способов доступа к сетям. Совокупность 102 терминалов, например, может содержать мобильные телефоны, персональных цифровых ассистентов, карты данных или сетевые карты, персональные компьютеры, портативные переносные компьютеры и т.д. Сети связи, дающие возможность связи между пользовательскими терминалами, могут включать в себя Internet, мобильные или стационарные телефонные сети и т.д. Возможные способы доступа к сетям, используемые пользовательскими терминалами, могут включать в себя способы доступа к беспроводным сетям (например, способы широкополосного множественного доступа с кодовым разделением, или WCDMA, и способы проекта долгосрочного развития, или LTE, а также способы доступа к проводным сетям (например, способы цифровой абонентской линии связи или DSL).A plurality of terminals 102 is typically a mixture of mobile and fixed terminals 98 configured to communicate with each other using multiple communication networks and network access methods. A collection of 102 terminals, for example, may include mobile phones, personal digital assistants, data cards or network cards, personal computers, laptops, etc. Communication networks enabling communication between user terminals may include the Internet, mobile or landline telephone networks, etc. Possible network access methods used by user terminals may include wireless network access methods (e.g., code division multiple access or WCDMA methods, and long-term development project or LTE methods, as well as methods for accessing wired networks ( for example, digital subscriber line or DSL methods).

В примерном варианте осуществления, проиллюстрированном на фиг.1, полное устройство 100 содержит три специализированные подсистемы, а именно, подсистему 104 обеспечения данных, подсистему 106 анализа данных, а также подсистему 108 обмена сообщениями. Подсистема 104 обеспечения данных содержит компоненты, адаптированные собирать данные, относящиеся к совокупности 102 пользовательских терминалов. Такие данные включают в себя параметры связи, относящиеся к связям между пользовательскими терминалами 98, а также параметры использования услуг, относящиеся к использованию различных услуг (таких как услуги связи и приложений) пользовательскими терминалами 98. В частном случае услуг связи, параметры связи и параметры использования услуг, по меньшей мере частично, могут быть идентичными. В качестве одного примера продолжительность конкретного сеанса связи составляет параметр связи, который также может быть рассмотрен как параметр использования услуги в связи с конкретной услугой связи, лежащей в основе сеанса связи.In the exemplary embodiment illustrated in FIG. 1, the complete device 100 comprises three specialized subsystems, namely, a data subsystem 104, a data analysis subsystem 106, and a messaging subsystem 108. The data subsystem 104 comprises components adapted to collect data related to a plurality of user terminals 102. Such data includes communication parameters related to communications between user terminals 98, as well as service usage parameters related to the use of various services (such as communication and application services) by user terminals 98. In the particular case of communication services, communication parameters and usage parameters services, at least in part, may be identical. As one example, the duration of a particular communication session is a communication parameter, which can also be considered as a parameter of the use of the service in connection with the specific communication service underlying the communication session.

Данные, собранные подсистемой 104 обеспечения данных, предоставляют в подсистему 106 анализа данных. Подсистема 106 анализа данных сконфигурирована с возможностью оценки данных, предоставленных подсистемой 104 обеспечения данных, в связи с отдельными пользовательскими терминалами 98 (или, что во многих случаях будет эквивалентно, в связи с отдельными абонентами или подписками на услуги). Главной целью подсистемы 106 анализа данных является идентификация отдельных услуг связи, которые могут увеличить возможность соединения отдельных пользовательских терминалов 98, а также идентификация отдельных услуг приложений, которые могут увеличить используемость отдельных пользовательских терминалов 98.The data collected by the data subsystem 104 provide to the data analysis subsystem 106. The data analysis subsystem 106 is configured to evaluate the data provided by the data subsystem 104 in connection with individual user terminals 98 (or, which in many cases will be equivalent in connection with individual subscribers or subscriptions to services). The main purpose of the data analysis subsystem 106 is to identify individual communication services that can increase the connectivity of individual user terminals 98, as well as to identify individual application services that can increase the usability of individual user terminals 98.

Как изображено на фиг.1, подсистема 106 анализа данных соединена с подсистемой 108 обмена сообщениями. Подсистема 108 обмена сообщениями сконфигурирована с возможностью приема информации, относящейся к отдельным пользовательским терминалам и отдельным услугам из подсистемы 106 анализа данных и генерации и адресации сообщений, указывающих доступные услуги, в отдельные пользовательские терминалы 98 совокупности 102 терминалов.As shown in FIG. 1, a data analysis subsystem 106 is connected to a messaging subsystem 108. The messaging subsystem 108 is configured to receive information related to individual user terminals and individual services from the data analysis subsystem 106 and the generation and addressing of messages indicating available services to the individual user terminals 98 of the collection of 102 terminals.

В дальнейшем компоненты и операции обработки отдельных подсистем 104, 106 и 108 будут описаны более подробно, чтобы предоставить лучшее понимание иллюстративного варианта осуществления, проиллюстрированного на фиг.1. В этом отношении будет сделана ссылка на схематическую структуру 200 данных фиг.2, иллюстративный сетевой граф 300 фиг.3, а также блок-схему 400 последовательности этапов способа фиг.4.Hereinafter, the components and processing operations of the individual subsystems 104, 106, and 108 will be described in more detail in order to provide a better understanding of the illustrative embodiment illustrated in FIG. In this regard, reference will be made to the schematic data structure 200 of FIG. 2, the illustrative network graph 300 of FIG. 3, and also the flowchart 400 of the flowchart of FIG. 4.

На первом операционном этапе подсистема 104 обеспечения данных собирает информацию о совокупности 102 терминалов из сетей связи и сетей обеспечения услуг, таких как подсистема мультимедиа IP (IMS), используемых совокупностью 102 терминалов. Такая информация обычно включает в себя различные параметры связи, а также различные параметры использования услуг. Параметры связи могут быть предоставлены для каждой из множества услуг связи, таких как речевые услуги (включая традиционные телефонные услуги), услуги данных, услуги мультимедиа (включая MMS), текстовые услуги (включая SMS), услуги IM и услуги связи на основе группы (такие как общение в блогах и виртуальные форумы). Параметры связи, собранные для каждой из этих услуг связи, могут включать в себя одно или более из следующего: продолжительность связи, партнеров по связи (например, в виде постоянных адресов сети участвующих пользовательских терминалов 98), число связей (например, число SMS, которыми обменялись два пользовательских терминала 98), направление связи (например, однонаправленная или двунаправленная), и вид используемой услуги связи (например, телефонная услуга или MMS).In a first operational step, the data subsystem 104 collects information about a plurality of terminals 102 from communication networks and service networks, such as the IP multimedia subsystem (IMS) used by a plurality of 102 terminals. Such information usually includes various communication parameters, as well as various parameters for the use of services. Communication parameters can be provided for each of a variety of communication services, such as voice services (including traditional telephone services), data services, multimedia services (including MMS), text services (including SMS), IM services and group-based communication services (such like blogging and virtual forums). Communication parameters collected for each of these communication services may include one or more of the following: communication duration, communication partners (for example, in the form of permanent network addresses of participating user terminals 98), the number of communications (for example, the number of SMS messages exchanged two user terminals 98), the direction of communication (for example, unidirectional or bidirectional), and the type of communication service used (for example, telephone service or MMS).

В случае услуг связи параметры использования услуг могут быть получены из одного или более параметров связи и необязательно из дополнительной информации, специфической для услуги, или могут содержать один или более параметров связи и необязательно дополнительную информацию, специфическую для услуги. В случае услуг приложений параметры использования услуги могут содержать по меньшей мере одно из следующего: вид используемой услуги приложения (например, услуга IMS), число использований услуги (например, общее число раз применения специфической услуги IMS), а также полную продолжительность использования услуги (например, в минутах или часах).In the case of communication services, service usage parameters may be obtained from one or more communication parameters and optionally from additional information specific to the service, or may contain one or more communication parameters and optionally additional information specific to the service. In the case of application services, the parameters for using the service may contain at least one of the following: the type of application service used (for example, IMS service), the number of uses of the service (for example, the total number of times a specific IMS service has been used), and the total duration of use of the service (for example in minutes or hours).

Информация о совокупности 102 терминалов может быть собрана различными способами. Подсистема 104 обеспечения данных содержит, например, агентов 110 терминалов, находящихся в отдельных пользовательских терминалах 98 совокупности 102 терминалов, и автоматически собирающих необходимую информацию и передающих собранную информацию в центральный модуль сбора данных 112 подсистемы 104 обеспечения данных. Агенты 110 терминалов, например, могут быть реализованы в виде специализированных модулей программного обеспечения, выполняющихся по меньшей мере в одном из пользовательских терминалов 98, составляющих совокупность 102 терминалов.Information on a plurality of terminals 102 may be collected in various ways. The data subsystem 104 includes, for example, terminal agents 110 located in separate user terminals 98 of the terminal assembly 102 and automatically collects the necessary information and transfers the collected information to the central data acquisition module 112 of the data subsystem 104. Terminal agents 110, for example, can be implemented as specialized software modules running in at least one of user terminals 98, constituting a plurality of terminals 102.

Компонент 112 сбора данных также может собирать информацию о совокупности 102 терминалов с помощью записей подробностей вызовов (CDR) и записей подробностей событий (EDR), которые могут быть получены из баз данных операторов сетей или с помощью агентов 110 терминалов. Данные CDR и EDR могут быть рассмотрены как данные нижнего уровня, описывающие поведение пользователя (например, продолжительность конкретного сеанса связи) и отношения пользователей (например, адреса сетей, включая номера телефонов, участвующих партнеров по связи).Data collection component 112 can also collect information about a plurality of terminals 102 using call detail records (CDRs) and event detail records (EDRs) that can be obtained from network operator databases or via terminal agents 110. CDR and EDR data can be viewed as lower level data describing user behavior (e.g., duration of a particular communication session) and user relationships (e.g. network addresses, including phone numbers of participating communication partners).

Дополнительной возможностью получения информации о совокупности 102 терминалов является исследование интерфейсов сетей с помощью специализированного компонента 114 мониторинга, который соединен с компонентом 112 сбора данных. В одном варианте компонент 114 мониторинга расположен для мониторинга трафика в предварительно определенном интерфейсе сети связи. В примере сети UMTS компонент 114 мониторинга может быть расположен в интерфейсе Uu, интерфейсе CS Iu или интерфейсе PS Iu. В другом варианте компонент 114 мониторинга расположен в интерфейсе сети обеспечения услуг. В примере сети IMS компонент 114 мониторинга может быть расположен в интерфейсе между узлом функции управления сеансом вызова (CSCF) и сервером приложений IMS (AS).An additional opportunity to obtain information about the totality of 102 terminals is the study of network interfaces using a specialized monitoring component 114, which is connected to the data collection component 112. In one embodiment, the monitoring component 114 is located to monitor traffic in a predefined communication network interface. In an example UMTS network, the monitoring component 114 may be located in a Uu interface, a CS Iu interface, or a PS Iu interface. In another embodiment, the monitoring component 114 is located in the service network interface. In an example IMS network, the monitoring component 114 may be located at the interface between the Call Session Management Function (CSCF) node and the IMS Application Server (AS).

Главной целью модуля 112 сбора данных является сбор необходимой информации о совокупности 102 терминалов, а также обогащения собранной информации с помощью дополнительных данных, когда необходимо. Так как информация, собранная модулем 112 сбора данных, обычно будет весьма гетерогенного характера, дополнительная важная задача компонента 112 сбора данных относится к нормализации собранной информации. Операция нормализации, выполняемая компонентом 112 сбора данных, включает в себя отбрасывание событий, вызовов или пользовательских терминалов, имеющих очень отклоняющееся от нормы поведение. Операция нормализации дополнительно включает в себя приведение собранной информации в стандартизованный формат. Нормализованные данные передают на втором этапе общей процедуры, проиллюстрированной на фиг.1, в хранилище 116 данных или любое другое устройство хранения данных.The main goal of the data collection module 112 is to collect the necessary information about the totality of 102 terminals, as well as enrich the collected information with additional data, when necessary. Since the information collected by the data collection module 112 will usually be very heterogeneous, an additional important task of the data collection component 112 is to normalize the collected information. The normalization operation performed by the data collection component 112 includes discarding events, calls, or user terminals having very abnormal behavior. The normalization operation further includes bringing the collected information into a standardized format. The normalized data is transmitted in a second step of the general procedure illustrated in FIG. 1 to a data store 116 or any other data storage device.

В хранилище 116 данных нормализованные данные, принятые из компонента 112 сбора данных, агрегируют в соответствии с предварительно определенными правилами агрегирования. Операцию агрегирования данных выполняют на третьем этапе общей процедуры, проиллюстрированной на фиг.1. Возможные правила агрегирования могут, например, задавать, что для конкретного пользовательского терминала 98 суммируют продолжительности отдельных сеансов связи (например, в связи с конкретной телефонной услугой). Другое правило агрегирования может задавать, что для связей, включающих в себя конкретный пользовательский терминал 98, сохраняют всех партнеров по связи.In the data warehouse 116, normalized data received from the data collection component 112 is aggregated in accordance with predetermined aggregation rules. The data aggregation operation is performed in the third step of the general procedure illustrated in FIG. Possible aggregation rules may, for example, specify that for a particular user terminal 98 the durations of individual communication sessions are summed (for example, in connection with a particular telephone service). Another aggregation rule may specify that for communications including a particular user terminal 98, all communications partners are retained.

В результате процесса агрегирования хранилище 116 данных предоставляет структуру данных, представляющую пользовательские терминалы 98 и отношения между терминалами, полученные из одного или более параметров связи, относящихся к связям между пользовательскими терминалами, как проиллюстрировано на блок-схеме 400 последовательности этапов способа фиг.4 (этап 402). Структура данных или другой компонент в хранилище 116 данных или внешний к хранилищу 116 данных, кроме того, может предоставлять информацию об использовании услуги для каждой из множества услуг, использованных совокупностью 102 терминалов (см. этап 404 блок-схемы 400 последовательности этапов способа).As a result of the aggregation process, the data warehouse 116 provides a data structure representing user terminals 98 and relationships between terminals obtained from one or more communication parameters related to communications between user terminals, as illustrated in flowchart 400 of the method flowchart of FIG. 4 (step 402). The data structure or other component in the data store 116 or external to the data store 116 may also provide information about the use of the service for each of the many services used by the plurality of terminals 102 (see step 404 of the flowchart 400 of the method flow).

Фиг.2 иллюстрирует иллюстративный вариант осуществления структуры 200 данных, которая является следствием агрегирования в хранилище 116 данных нормализованных данных, как принятых из компонента 112 сбора данных. В примере, проиллюстрированном на фиг.2, структура 200 данных содержит для каждого пользовательского терминала 98 совокупности 102 терминалов (см. фиг.1) отдельный набор данных. Каждый набор данных идентифицируют с помощью ID 202 терминала. ID 202 терминала может быть постоянным адресом сети пользовательского терминала, таким как его номер ISDN мобильной станции (MSISDN).FIG. 2 illustrates an illustrative embodiment of a data structure 200 that results from aggregation of normalized data in the data warehouse 116 as received from the data collection component 112. In the example illustrated in FIG. 2, the data structure 200 comprises, for each user terminal 98, a plurality of terminals 102 (see FIG. 1) a separate data set. Each data set is identified using terminal ID 202. The terminal ID 202 may be a permanent network address of a user terminal, such as its mobile station ISDN number (MSISDN).

Каждый набор данных содержит часть 204 набора данных, указывающую отношения связи между терминалами конкретного пользовательского терминала 98. Как изображено на фиг.2, отношения связи могут быть идентифицированы с помощью ID терминалов частых партнеров по связи. Кроме того, каждый набор данных содержит дополнительную часть 206 набора данных, количественно определяющую отдельные отношения связи, перечисленные в части 204. Возможные количественные определения отношения связи могут включать в себя параметры связи, такие как полная продолжительность связи с конкретным партнером по связи, количество сеансов связи с конкретным партнером по связи, направление связи, а также вид использованной услуги связи, или может быть получена из этих параметров. Таким образом, часть 206 набора данных также будет включать в себя информацию об использовании услуги для различных услуг связи, используемых конкретным пользовательским терминалом 98.Each data set contains a data set part 204 indicating communication relationships between terminals of a particular user terminal 98. As shown in FIG. 2, communication relationships can be identified using the terminal IDs of frequent communication partners. In addition, each data set contains an additional data set part 206 that quantifies the individual communication relationships listed in part 204. Possible quantitative definitions of the communication relationship may include communication parameters, such as the total duration of communication with a particular communication partner, the number of communication sessions with a specific communication partner, the direction of communication, as well as the type of communication service used, or can be obtained from these parameters. Thus, the data set part 206 will also include information about the use of the service for various communication services used by the specific user terminal 98.

В качестве варианта каждый набор данных дополнительно может содержать специализированную часть 208 набора данных для хранения информации об использовании дополнительной услуги. Информации об использовании дополнительной услуги, сохраненная в части 208 набора данных, например, может содержать информацию, относительно использования услуг приложений или любых других услуг, не относящихся к связи.Alternatively, each data set may further comprise a specialized data set part 208 for storing information about the use of an additional service. Information about the use of additional services stored in part 208 of the data set, for example, may contain information regarding the use of application services or any other non-communication services.

Операция агрегирования, выполняемая с помощью хранилища 116 данных, может быть выполнена в режиме, управляемом временем. Например, агрегирование может быть выполнено на основе для каждого дня, на почасовой основе или с помощью разделения между днями недели и выходными. Для каждой конкретной единицы времени (например, часа, дня и т.д.) могут быть сгенерированы отдельные наборы данных в соответствии с лежащей в основе структуры данных.The aggregation operation performed by the data store 116 may be performed in a time-controlled mode. For example, aggregation can be done on a per-day basis, on an hourly basis, or by dividing between days of the week and weekends. For each specific time unit (for example, hour, day, etc.), separate data sets can be generated in accordance with the underlying data structure.

Теперь, обращаясь к работе подсистемы 106 анализа данных и дополнительному этапу общей процедуры, проиллюстрированной на фиг.1, для каждого отдельного пользовательского терминала 98 (или подписки) получают сетевой граф для каждой конкретной услуги (например, для каждой услуги связи) на основании данных, сохраненных как структура 200 данных в хранилище 116 данных. Сетевой граф генерируют с помощью компонента 118 анализа сети подсистемы 106 анализа данных. Вкратце, компонент 118 анализа сети генерирует для каждого пользовательского терминала и услуги граф, подобный сетевому графу 300, проиллюстрированному на фиг.3.Now, referring to the operation of the data analysis subsystem 106 and the additional step of the general procedure illustrated in FIG. 1, for each individual user terminal 98 (or subscription), a network graph for each specific service (for example, for each communication service) is obtained based on the data stored as a data structure 200 in the data warehouse 116. A network graph is generated using the network analysis component 118 of the data analysis subsystem 106. In short, the network analysis component 118 generates for each user terminal and service a graph similar to the network graph 300 illustrated in FIG.

Сетевой граф 300 фиг.3 состоит из узлов (таких как узлы 302 и 304) и ребер (таких как ребро 306), соединяющих каждые два узла. Узлы сетевого графа 300 являются представителями пользовательских терминалов 98, в то время как ребра получают из отношений связи между терминалами.The network graph 300 of FIG. 3 consists of nodes (such as nodes 302 and 304) and edges (such as edge 306) connecting every two nodes. The nodes of the network graph 300 are representatives of user terminals 98, while the edges are obtained from communication relationships between the terminals.

Иллюстративный сетевой граф 300 фиг.3 получен на основании набора данных, проиллюстрированного на фиг.2, для иллюстративного узла 302, представляющего пользовательский терминал с ID 123456789. Как становится понятно из части 204 набора данных на фиг.2, этот пользовательский терминал имеет (прямые) отношения связи с семью другими пользовательскими терминалами. По этой причине узел 302 непосредственно соединен ребрами с семью соседними узлами (как, например, узел 304, который может соответствовать пользовательскому терминалу с ID 123456781). Для того чтобы уменьшить сложность сетевого графа 300, в части 204 набора данных будут перечислены только такие отношения связи, которые превышают предварительно определенный нижний порог (например, с точки зрения числа связей или полной продолжительности связи).The illustrative network graph 300 of FIG. 3 is obtained based on the data set illustrated in FIG. 2 for the illustrative node 302 representing the user terminal with ID 123456789. As it becomes clear from the data set part 204 in FIG. 2, this user terminal has (direct ) communication relationships with seven other user terminals. For this reason, the node 302 is directly connected by edges to seven neighboring nodes (such as, for example, the node 304, which may correspond to the user terminal with ID 123456781). In order to reduce the complexity of the network graph 300, only communication relationships that exceed a predetermined lower threshold (for example, in terms of the number of communications or the total duration of communications) will be listed in part 204 of the data set.

Следует заметить, что после генерации сетевого графа 300 с помощью компонента 118 анализа сети учитывают не только прямые соседние узлы узла 302 (например, непосредственные партнеры по связи, перечисленные в части 204 набора данных), а также не непосредственные соседние узлы (также называемые транзитивными соседними узлами). Как понятно в настоящей заявке, не непосредственные соседние узлы являются непосредственными соседними узлами соседних узлов узла 302, которые сами являются не непосредственными соседними узлами узла 302. Таким образом, могут быть определены несколько уровней не непосредственного соседства. Как изображено на фиг.3 непосредственные соседние узлы узла 302 (такие как узел 304) принадлежат к первому уровню 310 соседних узлов, в то время как не непосредственные соседние узлы узла 302 расположены на дополнительных уровнях 312, 314 соседних узлов и т.д., в зависимости от того, являются ли они непосредственными или не непосредственными соседними узлами прямых соседних узлов узла 302.It should be noted that after generating the network graph 300 using the network analysis component 118, not only the direct neighboring nodes of the node 302 are taken into account (for example, the direct communication partners listed in part 204 of the data set), but also not the immediate neighboring nodes (also called transitive neighboring nodes). As is understood in the present application, non-immediate neighboring nodes are immediate neighboring nodes of neighboring nodes of a node 302, which themselves are not immediate neighboring nodes of a node 302. Thus, several levels of non-immediate neighborhood can be determined. As shown in FIG. 3, the immediate neighboring nodes of the node 302 (such as the node 304) belong to the first level 310 of neighboring nodes, while the non-immediate neighboring nodes of the node 302 are located at additional levels 312, 314 of neighboring nodes, etc., depending on whether they are direct or non-direct neighboring nodes of direct neighboring nodes of node 302.

Число уровней соседних узлов, учтенных для конкретного узла 302 в конкретном сетевом графе 300, обычно является ограниченным, чтобы уменьшить общую сложность сетевого графа 300 и его топологического анализа. Во многих случаях будет достаточно учитывать от одного до трех уровней соседних узлов. Как будет понятно, идентификация соседних узлов на внешних уровнях 312 и 314 соседних узлов узла 302 требует оценки наборов данных, которые предоставлены в хранилище 116 данных для соседних узлов узла 302 (как, например, для узла 304).The number of levels of neighboring nodes accounted for for a specific node 302 in a particular network graph 300 is usually limited to reduce the overall complexity of the network graph 300 and its topological analysis. In many cases, it will be sufficient to take into account from one to three levels of neighboring nodes. As will be understood, the identification of neighboring nodes at external levels 312 and 314 of neighboring nodes of node 302 requires an assessment of the data sets that are provided in the data store 116 for neighboring nodes of node 302 (as, for example, for node 304).

На основании различных уровней 310, 312, 314 соседних узлов в сетевом графе 300 может быть определена мера расстояния. Например, непосредственные соседние узлы узла 302 имеют наименьшее расстояние от этого узла 302, соседние узлы первого уровня (уровня 312 соседних узлов) будут иметь второе наименьшее расстояние от узла 302 и т.д. В результате, для процедуры выбора услуги на основе графа, которая будет описана более подробно ниже, может быть определен критерий расстояния.Based on the various levels 310, 312, 314 of the neighboring nodes, a distance measure can be determined in the network graph 300. For example, the immediate neighboring nodes of the node 302 have the smallest distance from this node 302, the neighboring nodes of the first level (level 312 of neighboring nodes) will have the second smallest distance from the node 302, etc. As a result, a distance criterion can be defined for the graph-based service selection procedure, which will be described in more detail below.

В необязательном варианте осуществления каждое ребро (такое как ребро 306, соединяющее два узла 302 и 304) дополнительно ассоциировано с информацией о метриках, количественно определяющей взаимосвязь (или отношение) между двумя узлами, соединенными ребром. Информация о метриках может быть получена из параметров связи, как сохраненных для конкретного пользовательского терминала в части 206 набора данных соответствующего набору данных (см. фиг.2). Кроме того, информация о метриках может быть получена из топологии сетевого графа 300, как будет объяснено ниже.In an optional embodiment, each edge (such as an edge 306 connecting two nodes 302 and 304) is additionally associated with metric information that quantifies the relationship (or relationship) between two nodes connected by an edge. Information about the metrics can be obtained from the communication parameters, as stored for a particular user terminal in part 206 of the data set corresponding to the data set (see figure 2). In addition, metric information can be obtained from the topology of the network graph 300, as will be explained below.

Отдельные элементы информации о метриках могут быть предоставлены для каждой из множества услуг, используемых конкретным терминалом. В примере конкретной услуги связи информация о метриках может быть получена на основании направления связи (например, односторонняя связь, двусторонняя связь и т.д.), числа связей (например, числа SMS, посланных из одного пользовательского терминала в другой), полной продолжительности связи между двумя пользовательскими терминалами и т.д.Separate metric information elements may be provided for each of the many services used by a particular terminal. In the example of a particular communication service, information about the metrics can be obtained based on the direction of communication (for example, one-way communication, two-way communication, etc.), the number of connections (for example, the number of SMS sent from one user terminal to another), the total duration of the communication between two user terminals, etc.

В самом простом случае информация о метриках состоит из одного числа, сгенерированного на основании оценки множества параметров связи и/или топологии сетевого графа. Важно заметить, что отдельная информация о метриках в принципе может быть сгенерирована для каждой услуги, которая позволяет определить отношения между пользователями (включая услуги IM, услуги связи на основе группы, определенные услуги приложений и т.д.).In the simplest case, information about metrics consists of a single number generated on the basis of an estimate of the set of communication parameters and / or topology of the network graph. It is important to note that separate information about the metrics can in principle be generated for each service, which allows you to determine the relationship between users (including IM services, group-based communication services, certain application services, etc.).

Кроме генерации сетевого графа 300 компонент 118 анализа сети также является ответственным за анализ сгенерированного сетевого графа 300 в связи с различными топологическими критериями, которые позже могут быть использованы в связи с процедурой выбора услуги. Такие топологические критерии могут включать в себя принадлежность отдельных узлов к, так называемым, группировкам, наличие транзитивных отношений (т.е. не непосредственных соседних узлов) и т.д. Кроме того, каждый узел в сетевом графе 300 может быть ранжирован в соответствии с топологическими критериями, а затем ранжирование может быть учтено во время процедуры выбора услуги. Операции анализа сетевого графа и ранжирования узлов, как выполняемые компонентом 118, будут описаны более подробно позже со ссылкой на фиг.5 по фиг.11.In addition to generating the network graph 300, the network analysis component 118 is also responsible for analyzing the generated network graph 300 in connection with various topological criteria that can later be used in connection with the service selection procedure. Such topological criteria may include the belonging of individual nodes to the so-called groupings, the presence of transitive relations (i.e., not immediate neighboring nodes), etc. In addition, each node in the network 300 may be ranked according to topological criteria, and then the ranking may be taken into account during the service selection procedure. The operations of analyzing the network graph and ranking nodes as performed by component 118 will be described in more detail later with reference to FIG. 5 of FIG. 11.

На пятом операционном этапе общей процедуры, проиллюстрированной на фиг.1, информацию об использовании услуги, как предоставленную с помощью хранилища 116 данных, анализируют в связи с отдельными услугами и конкретным пользовательским терминалом 98. Как изображено на фиг.1, анализ использования услуги выполняют с помощью специализированного компонента 120 использования услуги. Следует заметить, что проанализированные услуги не обязательно ограничены услугами, действительно использованными с помощью исследуемого пользовательского терминала (такого как пользовательский терминал, соответствующий узлу 302 на фиг.3). Вместо этого будет проанализировано использование услуги для всех узлов в конкретном сетевом графе (как, например, для узла 304). В результате анализа использования услуги будет определен список услуг, использованных в данном сетевом графе 300 фиг.3.In the fifth operational step of the general procedure illustrated in FIG. 1, service usage information, as provided by the data store 116, is analyzed in connection with individual services and a specific user terminal 98. As shown in FIG. 1, a service utilization analysis is performed with using a specialized component 120 of the use of the service. It should be noted that the analyzed services are not necessarily limited to the services actually used by the user terminal under study (such as the user terminal corresponding to the node 302 in FIG. 3). Instead, we will analyze the use of the service for all nodes in a particular network graph (as, for example, for node 304). As a result of the analysis of the use of the service, a list of services used in this network column 300 of FIG. 3 will be determined.

В необязательном режиме анализ использования услуги дополнительно включает в себя ранжирование услуги. Каждая проанализированная услуга может быть ранжирована, например, в соответствии с полным использованием этой услуги среди узлов, принадлежащих конкретному сетевому графу. Иначе говоря, услуга с наивысшим полным использованием услуги (например, с точки зрения продолжительности использования или числа использований) будет ранжирована наивысшей. Ранжирование услуги может быть выполнено отдельно для каждого уровня соседних узлов. В сценарии сетевого графа, проиллюстрированном на фиг.3, этот подход, таким образом, дал бы в результате три отдельных ранжирования услуги.In an optional mode, an analysis of the use of the service further includes ranking the service. Each analyzed service can be ranked, for example, in accordance with the full use of this service among nodes belonging to a particular network graph. In other words, the service with the highest full use of the service (for example, in terms of duration of use or number of uses) will be ranked highest. Service ranking can be performed separately for each level of neighboring nodes. In the network graph scenario illustrated in FIG. 3, this approach would thus result in three separate service rankings.

На следующем операционном этапе общей процедуры обработки, проиллюстрированной на фиг.1, для некоторого или более отдельных пользовательских терминалов 98 компонент 122 покрытия анализирует (или “покрывает”) сетевой граф 300 и ассоциированную информацию (о метриках и другую), как сгенерированную компонентом 118 анализа сети, в комбинации с ранжированием (ранжированиями) услуги, как определенного компонентом 120, являющегося ответственным за анализ использования услуги. Целью этого анализа, выполненного компонентом 122 наложения, является выбрать для конкретного пользовательского терминала, соответствующего узлу 302 в сетевом графе 300, одну или более ранжированных услуг для рекомендации.In the next operational step of the general processing procedure illustrated in FIG. 1, for some or more separate user terminals 98, coverage component 122 analyzes (or “covers”) the network graph 300 and associated information (about metrics and other) as generated by analysis component 118 network, in combination with the ranking (s) of the service, as defined by component 120, which is responsible for the analysis of the use of the service. The purpose of this analysis, performed by the overlay component 122, is to select one or more ranked services for recommendation for a particular user terminal corresponding to the node 302 in the network column 300.

Конкретно, выбор выполняют таким образом, что определяют высоко ранжированную услугу, не используемую в текущий момент конкретным пользовательским терминалом, чтобы увеличить возможность соединения и/или используемость конкретного пользовательского терминала. Как проиллюстрировано на этапе 406 блок-схемы 400 последовательности этапов способа (см. фиг.4), процедура выбора услуги основана на информации об использовании услуги, которая получена для соседних пользовательских терминалов, имеющих предварительно определенную ассоциацию с конкретным пользовательским терминалом, например, с точки зрения сетевого графа 300.Specifically, the selection is made in such a way that a highly ranked service is currently not being used by a particular user terminal in order to increase the connectivity and / or usability of a particular user terminal. As illustrated in block 406 of the flowchart 400 of the method (see FIG. 4), a service selection procedure is based on service usage information obtained for neighboring user terminals having a predetermined association with a particular user terminal, for example, from a point view of the network graph 300.

Во время одной возможной реализации процедуры выбора услуги применяют меру расстояния, в соответствии с которой вероятность конкретной выбранной услуги увеличивается, если конкретную услугу используют многие близкие соседние узлы (такие как соседние узлы в пределах первого уровня 310 соседних узлов, проиллюстрированного на фиг.3). Основанием для этого подхода анализа ассоциированных соседних пользовательских терминалов является тот факт, что возможность соединения и/или используемость конкретного пользовательского терминала, в частности, увеличивалась бы, если выбранная услуга уже использована с помощью близких соседних узлов. Иначе говоря, если пользовательскому терминалу А будет рекомендована услуга, поскольку пользовательские терминалы C, D и Е в сетевом графе пользовательского терминала А используют эту услугу, эту рекомендацию перекрестно проверяют относительно того, насколько близко находятся в сетевом графе пользовательский терминал А и пользовательские терминалы C, D и Е. В случае, когда накопленные меры расстояния для трех пользовательских терминалов C, D и Е в связи с пользовательским терминалом А (или любыми другими критериями расстояния) превышали бы предварительно определенный порог, конкретную услугу больше не будут учитывать.During one possible implementation of the service selection procedure, a distance measure is applied according to which the likelihood of a particular selected service increases if many nearby neighboring nodes use the service (such as neighboring nodes within the first level 310 of neighboring nodes illustrated in FIG. 3). The basis for this approach for analyzing associated neighboring user terminals is the fact that the connectivity and / or usability of a particular user terminal, in particular, would increase if the selected service was already used with the help of nearby neighboring nodes. In other words, if a service is recommended to user terminal A, because user terminals C, D, and E in the network graph of user terminal A use this service, this recommendation is cross-checked as to how close the user terminal A and user terminals C are in the network graph, D and E. In the case where the accumulated distance measures for the three user terminals C, D and E in connection with the user terminal A (or any other distance criteria) would exceed a predefined threshold, a specific service will no longer be considered.

Во время процедуры выбора услуги, выполняемой компонентом 122 покрытия, могут быть учтены различные отдельные критерии и комбинации критериев. Как упомянуто выше, может быть принят во внимание ранг отдельной услуги, а также близость пользовательских терминалов, уже использующих эту услугу. Кроме того, может быть учтена информация о метриках, ассоциированная с каждым ребром в сетевом графе 300, а также необязательные ранжирования различных узлов в сетевом графе 300. Также могут быть учтены другие топологические критерии сетевого графа 300.During the service selection procedure performed by coverage component 122, various individual criteria and combinations of criteria may be considered. As mentioned above, the rank of an individual service can be taken into account, as well as the proximity of user terminals already using this service. In addition, metric information associated with each edge in the network graph 300 can be taken into account, as well as optional rankings of the various nodes in the network graph 300. Other topological criteria of the network graph 300 can also be considered.

Компонент 122 покрытия выводит для каждого проанализированного пользовательского терминала 98 указания одной или более услуг, посылаемые в соответствующий пользовательский терминал 98 через сеть связи. Указания услуг, выведенные компонентом 122 покрытия, посылают на седьмом операционном этапе в необязательный компонент 124 рекомендации услуги, который направляет эти рекомендации услуги на восьмом операционном этапе в подсистему 108 обмена сообщениями, как изображенную на фиг.1.Coverage component 122 outputs, for each analyzed user terminal 98, indications of one or more services sent to the corresponding user terminal 98 via the communication network. The service instructions output by the coverage component 122 are sent in the seventh operation step to the optional service recommendation component 124, which forwards these service recommendations in the eighth operation step to the messaging subsystem 108, as shown in FIG.

Компонент 124 рекомендации услуги идентифицирует один или более микросегментов в сетевом графе 300 конкретного пользовательского терминала (узла 302) на основании анализа, выполненного компонентом 122 покрытия, компонентом 120 использования услуги и компонентом 118 анализа сети. Конкретно, микросегменты, идентифицированные компонентом 124 рекомендации услуги, включают в себя узлы в сетевом графе 300, имеющие подобное поведение использования услуги и/или топологическую взаимосвязь. В идентифицированных микросегментах услуга затем может быть рекомендована на основании уровня проникновения услуг в узлах, составляющих микросегмент. Иначе говоря, если многие узлы в идентифицированном микросегменте используют конкретную услугу, тогда эта услуга может быть рекомендована другим узлам в микросегменте, еще не использующим эту услугу. Идентификация микросегментов в сетевом графе 300 может быть выполнена с использованием методов, описанных ниже со ссылкой на фиг.5-фиг.11.Service recommendation component 124 identifies one or more microsegments in a network graph 300 of a particular user terminal (node 302) based on an analysis performed by coverage component 122, service utilization component 120, and network analysis component 118. Specifically, the microsegments identified by the service recommendation component 124 include nodes in the network graph 300 having similar service usage behavior and / or topological relationship. In identified microsegments, the service can then be recommended based on the level of service penetration in the nodes making up the microsegment. In other words, if many nodes in the identified microsegment use a specific service, then this service can be recommended to other nodes in the microsegment that have not yet used this service. The identification of microsegments in the network graph 300 can be performed using the methods described below with reference to FIGS. 5 to 11.

В подсистеме 108 обмена сообщениями указания услуг, относящиеся к услугам, выбранным компонентом 122 покрытия (и, возможно, отфильтрованным компонентом 124 рекомендации услуги), принимают вместе с указанием конкретного пользовательского терминала 98, для которого произошел выбор услуги, с помощью средства 126 сообщений. Затем средство 126 сообщений контактирует на девятом этапе цепочки обработки с базой данных или репозиторием (как, например, опорным регистром местонахождения или HLR), чтобы получить информацию о контакте (например, постоянный адрес сети) пользовательского терминала 98, для которого произошел выбор услуги. Затем на десятом этапе, проиллюстрированном на фиг.1, сообщение (например, SMS или электронной почты), указывающее одну или более выбранных услуг, посылают в пользовательский терминал 98 в совокупности 102 терминалов с использованием его адреса сети, как принятого из репозитория 128 подписки. Сообщение посылают через выходной интерфейс 130 подсистемы 108 обмена сообщениями и информируют пользовательский терминал 98 о доступности (например, наличии) одной или более выбранных услуг. Этот процесс соответствует этапу 408 в блок-схеме 400 последовательности этапов способа фиг.4. Пользовательский терминал 98, принимающий сообщение, может быть сконфигурирован с возможностью автоматического инициирования всех необходимых этапов, чтобы получить доступ к рекомендованной услуге. В качестве альтернативы взаимодействие пользователя (такое как подтверждение пользователя) может быть запрошено явно.In the messaging subsystem 108, the service indications related to the services selected by the coverage component 122 (and possibly the filtered service recommendation component 124) are received together with the indication of the particular user terminal 98 for which the service was selected using the message means 126. Then, the message means 126 contacts in the ninth step of the processing chain with a database or repository (such as a location reference register or HLR) to obtain contact information (e.g., a fixed network address) of a user terminal 98 for which a service has been selected. Then, in the tenth step illustrated in FIG. 1, a message (eg, SMS or email) indicating one or more selected services is sent to the user terminal 98 in the aggregate of 102 terminals using its network address as received from the subscription repository 128. A message is sent via the output interface 130 of the messaging subsystem 108 and informs the user terminal 98 of the availability (e.g., availability) of one or more selected services. This process corresponds to step 408 in flowchart 400 of the flowchart of FIG. 4. The user terminal 98 receiving the message may be configured to automatically initiate all necessary steps to gain access to the recommended service. Alternatively, user interaction (such as user confirmation) may be requested explicitly.

Кроме вывода сообщения указания услуги в репозиторий 128 подписки устанавливают флаг или другой идентификатор. Затем оценивают установку флага на конечном одиннадцатом этапе после приема обратной связи из конкретного пользовательского терминала 98. Обратная связь может заключаться в сообщении, запрашивающем, например, загрузку программного обеспечения, обновление подписки и т.д., для того чтобы сделать рекомендованную услугу доступной для конкретного пользовательского терминала 98. Посредством оценки обратной связи на основании установок флага соответствующая обратная связь может быть предоставлена из подсистемы 108 обмена сообщениями в подсистему 106 анализа данных, чтобы осуществить алгоритмы машинного осмысления в процедуре выбора услуги, примененной компонентом 122 покрытия.In addition to displaying a service indication message, a flag or other identifier is set in the subscription repository 128. The flag setting is then evaluated at the final eleventh step after receiving feedback from a specific user terminal 98. Feedback may be in a message requesting, for example, downloading software, updating a subscription, etc., in order to make a recommended service available for a particular user terminal 98. By evaluating the feedback based on the flag settings, appropriate feedback can be provided from the messaging subsystem 108 to the subsystem data analysis topic 106 to implement machine comprehension algorithms in the service selection procedure applied by coverage component 122.

Сообщение указания услуги, посланное из средства 126 сообщения в пользовательский терминал 98, может конкретно относиться к доступной услуге и/или описывать доступную услугу. Ссылка на услугу в сообщении может включать в себя, например, идентификатор, адрес IP или универсальный адрес ресурса (URL) услуги. В качестве варианта сообщение также может включать в себя информацию относительно этапов, которые необходимо предпринять, для того чтобы дать возможность использования конкретной услуги. Кроме того, сообщение может включать в себя указание относительно пользовательских терминалов, близких с точки зрения сетевого графа 300 к получателю 98 рекомендации, который уже использует эту услугу. Кроме того, профиль использования услуги в связи с получателем 98 может быть обогащен информацией, собранной для пользовательских терминалов, близких к получателю с точки зрения сетевого графа 300.The service indication message sent from the message means 126 to the user terminal 98 may specifically refer to an available service and / or describe an available service. A service reference in a message may include, for example, an identifier, an IP address, or a universal resource address (URL) of a service. Alternatively, the message may also include information regarding the steps to be taken in order to enable the use of a particular service. In addition, the message may include an indication of user terminals that are close, in terms of network graph 300, to a recommendation recipient 98 who already uses this service. In addition, the service utilization profile in connection with the recipient 98 may be enriched with information collected for user terminals that are close to the recipient in terms of network graph 300.

Таким образом, описав общую процедуру, проиллюстрированную на фиг.1 в некоторых подробностях, теперь будет дополнительно рассмотрены некоторые необязательные режимы работы компонента 118 анализа сети относительно анализа топологии сети. Результат топологического анализа может быть использован, чтобы идентифицировать критерии для процесса выбора услуги, выполняемого компонентом 122 покрытия.Thus, having described the general procedure illustrated in FIG. 1 in some detail, some optional modes of operation of the network analysis component 118 regarding network topology analysis will now be further discussed. The result of the topological analysis can be used to identify criteria for the service selection process performed by coverage component 122.

Интерпретируя сетевой граф 300 фиг.3, как (также) указывающего до определенной степени социальную сеть, очевидно, что указание или рекомендацию услуги, которую выполняют для услуги, использованной пользовательским терминалом, управляемого близким другом оператора исследуемого пользовательского терминала, будет особенно сильным и полезным для последнего. По этой причине имеется потребность в абстрактном механизме, чтобы определять “силу” конкретного отношения между терминалами (или между пользователями) (т.е. “силу” связи, соответствующей ребру в сетевом графе 300).Interpreting the network graph 300 of FIG. 3, as (also) indicating to a certain extent a social network, it is obvious that the indication or recommendation of the service that is performed for the service used by the user terminal managed by a close friend of the operator of the user terminal under investigation will be especially strong and useful for last one. For this reason, there is a need for an abstract mechanism to determine the “strength” of a particular relationship between terminals (or between users) (ie, the “strength” of a connection corresponding to an edge in network graph 300).

В дальнейшем будут обсуждены несколько абстрактных механизмов, чтобы заниматься этой потребностью только на основании анализа топологии сетевого графа. Результирующие механизмы могут быть осуществлены компонентом 118 анализа фиг.1 в контексте с предоставлением дополнительной информации о метриках в связи с узлами и/или ребрами. Затем эта дополнительная информация о метриках может формировать дополнительную основу для операции выбора услуги, выполняемой компонентом 122 покрытия. Однако будет понятно, что способы, обсужденные далее в настоящей заявке, также могут быть выполнены в любых других контекстах. В частности, следующие методы могут быть выполнены в контексте с рекомендацией элементов, отличных от услуг, в объекты, отличные от пользовательских терминалов.In the future, several abstract mechanisms will be discussed in order to deal with this need only on the basis of an analysis of the topology of the network graph. The resulting mechanisms can be implemented by the analysis component 118 of FIG. 1 in the context of providing additional metrics information in relation to nodes and / or edges. Then, this additional metric information may form an additional basis for the service selection operation performed by coverage component 122. However, it will be understood that the methods discussed later in this application can also be performed in any other contexts. In particular, the following methods can be performed in the context of recommending elements other than services to objects other than user terminals.

С точки зрения сетевого графа 300 социальные группы будут появляться как так называемые кластеры отдельных узлов. Одним типичным признаком кластеров является тот факт, что они близко соединены ребрами, представляющих линии связи. Если кластер является полностью соединенным, все узлы (также называемые вершинами) в кластере соединены друг с другом, они настолько тесно сформированы в кластер, насколько возможно.From the point of view of the network graph 300, social groups will appear as the so-called clusters of individual nodes. One typical feature of clusters is the fact that they are closely connected by edges representing communication lines. If the cluster is fully connected, all nodes (also called vertices) in the cluster are connected to each other, they are as closely formed in the cluster as possible.

ГруппировкиGroupings

Полный граф является графом, в котором все узлы (иногда также называемые вершинами) имеют непосредственные соединения (например, ребра) друг с другом. В большем графе интересно найти подгруппы узлов, которые образуют полный граф. Граф может содержать несколько подгрупп, которые являются полными, и выяснение, сколько их, наибольшей подгруппы и, что они из себя представляют, в теории графов называют проблемой группировки (нахождением максимума группировок). Фиг.5 изображает группировку, которая создана четырьмя узлами {V0; V1; V2; V3}. Эти четыре узла все являются полностью соединенными, т.е. все узлы имеют ребра друг с другом и образуют наибольшую группировку в сетевом графе 500 фиг.5 (группировку четыре). К сожалению, проблема группировки является недетерминированным полиноминальным временем (NP). Это означает, что трудно, если не невозможно, создать алгоритм, который можно легко масштабировать, и вычислительное время увеличивается экспоненциально с размером графа. Таким образом, был бы выгодным обходной путь или аппроксимация проблемы группировки.A complete graph is a graph in which all nodes (sometimes also called vertices) have direct connections (for example, edges) to each other. In a larger graph, it is interesting to find subgroups of nodes that form a complete graph. A graph can contain several subgroups that are complete, and figuring out how many there are, the largest subgroup and what they are, in graph theory is called the grouping problem (finding the maximum of the groups). Figure 5 depicts a grouping that is created by four nodes {V0; V1; V2; V3}. These four nodes are all fully connected, i.e. all nodes have edges with each other and form the largest grouping in the network graph 500 of figure 5 (grouping four). Unfortunately, the grouping problem is non-deterministic polynomial time (NP). This means that it is difficult, if not impossible, to create an algorithm that can be easily scaled, and the computational time increases exponentially with the size of the graph. Thus, a workaround or approximation of the grouping problem would be beneficial.

Все группировки, большие, чем три, могут быть разделены на группировки размера три (т.е. имеющие равно три узла каждая). Это означает, что все группировки могут быть представлены как набор группировок размера три. Формулу, которая вычисляет, сколько подгруппировок существует в большой группировке размера n, определяют с помощью следующей формулы:All groupings larger than three can be divided into groups of size three (i.e., having equally three nodes each). This means that all groups can be represented as a set of groupings of size three. A formula that calculates how many subgroups exist in a large grouping of size n is determined using the following formula:

Figure 00000001
.
Figure 00000001
.

Например, группировка размера n=4, как проиллюстрировано на фиг.5, могла бы быть разделена на 6,

Figure 00000002
, группировок размера три. Пользовательский терминал в сетевом графе с двумя группировками, одной размера 3 и одной размера 4, имел бы объединенную группировку размера 9. Таким образом, можно сравнивать разные пользовательские терминалы относительно того, сколько группировок, и как велики их группировки. Обнаружено, что число группировок, которые обычно имеют два пользовательских терминала, будет мерой того, насколько хорошим является их отношение. Таким образом, соответствующая информация о метриках может быть добавлена к их отношению (т.е. к взаимно соединяющему ребру на рисунке сетевого графа) и оценена во время процедуры выбора услуги.For example, a grouping of size n = 4, as illustrated in FIG. 5, could be divided into 6,
Figure 00000002
, groupings of size three. A user terminal in a network graph with two groups, one size 3 and one size 4, would have a combined grouping of size 9. Thus, it is possible to compare different user terminals with respect to how many groups and how large their groups are. It has been found that the number of groupings, which usually have two user terminals, will be a measure of how good their relationship is. Thus, the relevant metrics information can be added to their relationship (i.e., to the interconnecting edge in the network graph) and evaluated during the service selection procedure.

Транзитивные отношенияTransitive relationship

Транзитивные отношения являются отношениями, которые имеют расстояние в графе от рассматриваемого узла (такого как узел 302 на фиг.3), которое больше, чем единица, т.е. которые соответствуют не непосредственным соседним узлам в терминологии, использованной выше. Предполагают, что узлы, которые имеют отношения с рассматриваемым узлом через другой узел, не имеют близкой связи с этим узлом, как узлы, которые являются непосредственными соседними узлами.Transitive relationships are relationships that have a distance in the graph from the node in question (such as node 302 in FIG. 3), which is greater than one, i.e. which correspond to non-immediate neighboring nodes in the terminology used above. Assume that nodes that have a relationship with the node in question through another node do not have a close connection with this node, like nodes that are directly adjacent nodes.

Когда расстояние увеличивается, сила отношения уменьшается, следовательно, уместно ограничить глубину того, как далеко искать отношения. Число “общих друзей” также будет влиять на результат отношения. В этом случае транзитивное отношение сильнее, чем, когда существует только один общий друг. Сетевой граф 600, проиллюстрированный на фиг.6, сравнивает два узла V4, V5, оба из которых имеют расстояние, равное двум, от активного узла, но считают, что один из узлов имеет более сильное отношение вследствие числа “общих друзей”, которых он имеет с активным узлом V0.When the distance increases, the strength of the relationship decreases, therefore, it is appropriate to limit the depth of how far to seek the relationship. The number of “mutual friends” will also influence the outcome of the relationship. In this case, the transitive relation is stronger than when there is only one common friend. The network graph 600 illustrated in FIG. 6 compares two nodes V4, V5, both of which have a distance of two from the active node, but consider that one of the nodes has a stronger relationship due to the number of “common friends” that he has with active node V0.

Вычисление логически выведенного значения отношенияCalculation of the inference relation value

Логически выведенное отношения, или ранг (ранг пользователя) рассматриваемого узла

Figure 00000003
для непосредственного соседнего узла
Figure 00000004
задают формулой, приведенной ниже. Следует заметить, что она не применяется для узлов, которые имеют расстояние, большее единицы, от рассматриваемого узлаLogically inferred relationship, or rank (user rank) of the node in question
Figure 00000003
for the immediate neighboring node
Figure 00000004
set by the formula below. It should be noted that it does not apply to nodes that have a distance greater than one from the node in question

Figure 00000005
Figure 00000005

где

Figure 00000006
- число совместных группировок, элементами которых являются узел
Figure 00000003
и узел ν , а
Figure 00000007
- полное число группировок, элементом которых является узел ν .
Figure 00000008
- максимальная глубина, которую принимает во внимание алгоритм, узлы, которые имеют большее расстояние, чем это, не получат логически выведенного значения для рассматриваемого узла. Деление на полное число группировок выполняют, чтобы дать процентное отношение числа группировок, элементом которых является узел. Более высокое процентное отношение означает более высокий ранг.Where
Figure 00000006
- the number of joint groupings whose elements are a node
Figure 00000003
and the node ν , and
Figure 00000007
- the total number of groups whose element is the node ν .
Figure 00000008
- the maximum depth that the algorithm takes into account, nodes that have a greater distance than this will not receive a logical value for the node in question. The division by the total number of groups is performed to give a percentage of the number of groups of which the node is an element. A higher percentage means a higher rank.

Вычисление ранга для транзитивных отношений узлов отличается от вычисления ранга для непосредственных соседних узлов. Узлы, которые не имеют непосредственных связей с рассматриваемым узлом, будут иметь менее сильное отношение. Однако большее число “общих друзей” даст в результате более высокий ранг. Следовательно, ранжирование будет частично зависеть от того, со сколькими соседними узлами рассматриваемого узла соединен конкретный узел.The rank calculation for transitive node relationships is different from the rank calculation for immediate neighboring nodes. Nodes that do not have direct links to the node in question will have a lesser relationship. However, a greater number of “mutual friends” will result in a higher rank. Therefore, the ranking will partially depend on how many neighboring nodes of the node in question are connected to a particular node.

Так как разные соседние узлы рассматриваемого узла имеют разные ранги, они могут быть взвешены при вычислении транзитивного отношения. Рассматриваемый узел, более вероятно, должен иметь сильную связь (с точки зрения информации о метриках) с конкретным узлом, если они имеют сильную связь с “общим другом”.Since different neighboring nodes of the node in question have different ranks, they can be weighted when calculating the transitive relation. The node under consideration is more likely to have a strong connection (in terms of metric information) with a specific node if they have a strong connection with a “common friend”.

Ранг конкретного узла может быть вычислен с использованием формулы, приведенной ниже:The rank of a particular site can be calculated using the formula below:

Figure 00000009
Figure 00000009

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

Figure 00000010
является константой, которая определяет баланс между важностью числа общих друзей и значением ранга соседних узлов. Абсолютные или относительные ранги, ассоциированные с соседними узлами рассматриваемого узла, могут быть оценены в контексте с процедурой выбора услуги. Иначе говоря, вероятность выбора конкретной услуги, используемой непосредственным соседним узлом, имеющим более высокий ранг, выше по сравнению с другой услугой, используемой прямым узлом, имеющим более низкий ранг. Таким образом, можно гарантировать, что будут рекомендованы услуги конкретной используемости.In the above formula, the rank increases when the number of “common friends” increases, and additionally increases if the values of these edges are large. It should be noted that the parameter
Figure 00000010
is a constant that determines the balance between the importance of the number of common friends and the rank value of neighboring nodes. The absolute or relative ranks associated with the neighboring nodes of the node in question can be evaluated in the context of the service selection procedure. In other words, the probability of choosing a particular service used by a direct neighboring node having a higher rank is higher compared to another service used by a direct node having a lower rank. In this way, it can be guaranteed that the services of a particular usability are recommended.

АппроксимацияApproximation

В дальнейшем представлен второй подход, чтобы вычислять ранги прямых или непосредственных соседних узлов. Этот подход включает в себя аппроксимацию подсчета группировок и разделение группировок. Замыслом является искать группировки рассматриваемого узла, чтобы предсказывать отношение. С помощью разделения группировок, как описано выше, можно найти все меньшие группировки. Из них дополнительно будут рассмотрены только разделенные группировки, которые имеют рассматриваемый узел в качестве элемента.In the following, a second approach is presented to calculate the ranks of direct or immediate neighboring nodes. This approach includes the approximation of group counting and partitioning of groups. The idea is to look for groupings of the node in question in order to predict the relationship. By splitting the groupings as described above, one can find ever smaller groups. Of these, only divided groups that have the node under consideration as an element will be additionally considered.

Сетевой граф 700 фиг.7 изображает сценарий, в котором группировки вычисляют на основании рассматриваемого узла V0 в качестве элемента группировок. Узел V6 является элементом трех группировок ({V6, V7, V0} {V6, V4, V0} {V6, V5, V0}), все они размера, равного трем.The network graph 700 of FIG. 7 depicts a scenario in which groupings are calculated based on the node V0 in question as an element of groupings. The node V6 is an element of three groupings ({V6, V7, V0} {V6, V4, V0} {V6, V5, V0}), all of them are three times the size.

Если группировка {V6, V6, V6, V6} разделена на меньшие группировки, все группировки по-прежнему должны иметь V0 в качестве элемента, таким образом, она была бы разделена на {V0, V1, V2}, {V0, V1, V3} и {V0, V2, V3} (следует заметить, что {V1, V2, V3} не имеют V0 в качестве элемента и, следовательно, его не используют). Можно видеть, что каждый из узлов является элементом двух группировок, за исключением V0. Это означает, что в этом разделении группировки имеется потеря одной группировки. Это может привести к разному результату между обычными алгоритмами подсчета группировок, но будет давать хорошую аппроксимацию.If the grouping {V6, V6, V6, V6} is divided into smaller groups, all groups should still have V0 as an element, so it would be divided into {V0, V1, V2}, {V0, V1, V3 } and {V0, V2, V3} (it should be noted that {V1, V2, V3} do not have V0 as an element and, therefore, do not use it). You can see that each of the nodes is an element of two groups, with the exception of V0. This means that in this division of the group there is a loss of one group. This can lead to a different result between the usual group counting algorithms, but it will give a good approximation.

Так как число группировок, элементами которых являются узлы, связано с полным числом входных и выходных ребер узла, число группировок может быть легко вычислено посредством вычитания единицы из числа входных и выходных ребер. Например, V2 имеет 3 ребра и, следовательно, является элементом 2 группировок, элементом которых также является V0.Since the number of groups whose elements are nodes is related to the total number of input and output edges of the node, the number of groups can be easily calculated by subtracting a unit from the number of input and output edges. For example, V2 has 3 edges and, therefore, is an element of 2 groups, the element of which is also V0.

Можно вычислить ранг конкретного узла с помощью использования той же формулы, что и в предыдущем разделе, но с другими определениями

Figure 00000011
Конкретно будут использованы следующие определения:You can calculate the rank of a particular node using the same formula as in the previous section, but with different definitions
Figure 00000011
Specifically, the following definitions will be used:

Figure 00000012
Figure 00000012

Figure 00000013
Figure 00000013

ДовериеThe trust

Когда доверительные отношения между пользователями разных пользовательских терминалов абстрактно определены, например, с использованием топологических признаков таких группировок и транзитивных отношений, как вкратце изложено выше, сетевой граф 800 может быть визуализирован, как изображено на фиг.8. В этом сетевом графе 800 использованы направленные ребра, принимая во внимание, что “доверие” всегда является транзитивным и ассиметричным.When trust relationships between users of different user terminals are abstractly defined, for example, using topological features of such groupings and transitive relationships, as summarized above, the network graph 800 can be visualized, as shown in Fig. 8. Directional edges are used in this network graph 800, given that “trust” is always transitive and asymmetric.

В случае направленного графа, как изображенного на фиг.8, применяется специальное определение группировки. Это определение группировки заключается в том, что, если рассматриваемый узел имеет два или более соседних узлов, которые являются “доверенными”, и, если они имеют связь в любом направлении графа, тогда этот граф образует группировку. Фиг.9 изображает пример такой группировки, в которой рассматриваемым узлом является V0.In the case of a directed graph, as shown in Fig. 8, a special definition of grouping is applied. This definition of grouping is that if the node in question has two or more neighboring nodes that are “trusted”, and if they are connected in any direction of the graph, then this graph forms a grouping. Fig.9 depicts an example of such a grouping, in which the considered node is V0.

Проверка производительностиPerformance check

Проверка производительности проведена для того, чтобы сравнить алгоритм вычисления, который разделяет группировки (названный подсчетом группировок), и алгоритм аппроксимации, который подсчитывает ребра (названный подсчетом ребер). Результаты показывают, что алгоритм подсчета ребер опережает по производительности алгоритм подсчета группировок. Разница увеличивается, когда увеличивается средний размер кластеров в сетевом графе. Это происходит вследствие того факта, что существует больше ребер, когда имеются большие кластеры, и, следовательно, больше вычислений, что доказывает его масштабируемость (см. диаграммы 1000 и 1100 фиг.10 и фиг.11 соответственно).A performance test was performed to compare a calculation algorithm that separates groupings (called group counting) and an approximation algorithm that counts edges (called edge count). The results show that the edge counting algorithm is faster than the grouping counting algorithm in terms of performance. The difference increases when the average cluster size in the network graph increases. This is due to the fact that there are more edges when there are large clusters, and therefore more computations, which proves its scalability (see diagrams 1000 and 1100 of FIG. 10 and 11, respectively).

Рекомендации - предсказание значений элементовRecommendations - predicting element values

Чтобы иметь возможность рекомендовать элементы (такие как услуги) должен быть способ, чтобы предсказывать, сколько пользовательский терминал (или любой другой объект, такой как сам пользователь) выигрывал бы от конкретного элемента. Выигрыш может быть предсказан с использованием следующей формулы:In order to be able to recommend items (such as services) there must be a way to predict how much a user terminal (or any other entity, such as a user) would benefit from a particular item. Winning can be predicted using the following formula:

Figure 00000014
Figure 00000014

где c(i) - оценка, предсказанная для элемента i , sim(c,p) - подобие между пользовательскими терминалами (или другими объектами) c и p , и p(i) - номинальное значение пользовательского терминала (или объекта) p относительно элемента i . Подобия между объектами являются в этом случае значением отношения между объектами, как определено с помощью любого из подходов, обсужденных выше. Используя эту формулу, может видеть, что объекты с более высоким подобием имеют более высокое влияние на значение элемента. Более высокое значение элемента указывает лучшую рекомендацию для объекта c . Это сделано для всех элементов, которые были оценены непосредственными соседними объектами. Элементы с наивысшими значениями будут рекомендованы рассматриваемому объекту.where c (i) is the estimate predicted for element i , sim (c, p) is the similarity between user terminals (or other objects) c and p , and p (i) is the nominal value of the user terminal (or object) p relative to the element i . Similarities between objects are in this case the value of the relationship between objects, as determined using any of the approaches discussed above. Using this formula, he can see that objects with a higher likeness have a higher effect on the value of an element. A higher element value indicates a better recommendation for c . This is done for all elements that have been evaluated by immediate neighboring objects. Elements with the highest values will be recommended to the object in question.

Преимуществом вышеописанного метода, как проиллюстрированного на фиг.5 по фиг.11, является тот факт, что он проверяет шаблоны в графе, которые указывают близкие отношения, по сравнению с обычными (персонализированными) доверенным системами. Поскольку он проверяет только шаблоны, он не ограничен никакими данными, что делает его очень подходящим для всех видов сетевых графов и, в частности, для сетевых графов, имеющих направленные ребра (т.е. в которых может быть извлечено доверие). Способ, основанный на шаблонах, может быть применен (например, компонентом 124 рекомендации услуги фиг.1), чтобы идентифицировать микросегменты в графе 300 из узлов, проявляющих подобное поведение, и для фильтрации таких услуг, от которых рассматриваемый пользовательский терминал не мог бы получить пользу.An advantage of the above method, as illustrated in FIG. 5 of FIG. 11, is the fact that it checks patterns in a graph that indicate close relationships compared to conventional (personalized) trusted systems. Since it only checks patterns, it is not limited to any data, which makes it very suitable for all kinds of network graphs and, in particular, for network graphs that have directed edges (i.e. in which trust can be extracted). A template-based method can be applied (for example, by component 124 of the service recommendation of FIG. 1) to identify microsegments in column 300 from nodes exhibiting similar behavior, and to filter those services from which the user terminal in question could not benefit .

Взаимодействие между компонентом 122 покрытия и компонентом 124 рекомендации услуги фиг.1 может быть описано следующим образом. В одном осуществлении компонент 122 покрытия главным образом определяет различие в использовании услуги между пользовательскими терминалами в данной совокупности терминалов, а затем сегментирует совокупность терминалов в группы (на основании сетевых графов, как описано выше). В группах “аутсайдерам” (т.е. пользовательским терминалам в группе, которые не используют конкретную услугу) рекомендуют использовать конкретную услугу. Компонент 124 рекомендации услуги затем может дополнительно взвесить рекомендации услуг (например, отфильтровать потенциально неподходящие рекомендации), как обсуждено выше со ссылкой на фиг.5 по фиг.11.The interaction between the coverage component 122 and the service recommendation component 124 of FIG. 1 can be described as follows. In one implementation, coverage component 122 mainly determines the difference in service usage between user terminals in a given set of terminals, and then segments the set of terminals into groups (based on network graphs, as described above). In groups, “outsiders” (that is, user terminals in a group that do not use a particular service) are advised to use a specific service. Service recommendation component 124 can then further weigh service recommendations (e.g., filter out potentially inappropriate recommendations), as discussed above with reference to FIG. 5 of FIG. 11.

Как стало понятно из вышеописанного, методы указания услуги, описанные в настоящей заявке, в частности, являются полезными при увеличении возможности соединения и/или использования отдельных пользовательских терминалов, когда применяют сложные процедуры выбора услуги. С помощью учета отношений между терминалами в процедуре выбора услуги, указания доступности услуг могут быть сделаны “персональными”, таким образом, что пользователь может лучше понимать пользу конкретной рекомендации услуги. Это преимущество является результатом возможных перекрестных корреляций между доступными услугами, с одной стороны, и сетевых графов, специфичных для терминалов, с другой стороны. Кроме того, методы, описанные в настоящей заявке, могут предоставлять явную обратную связь относительно рекомендаций услуг и запросов услуг, что делает возможными постепенное уточнение процедуры выбора услуги.As it became clear from the above, the methods of indicating services described in this application, in particular, are useful in increasing the connectivity and / or use of individual user terminals when applying complex procedures for selecting services. By taking into account the relationship between the terminals in the procedure for selecting a service, indications of the availability of services can be made “personal”, so that the user can better understand the benefits of a particular recommendation of the service. This advantage is the result of possible cross-correlations between available services, on the one hand, and terminal-specific network graphs, on the other. In addition, the methods described in this application can provide explicit feedback regarding the recommendations of services and requests for services, which makes it possible to gradually refine the procedure for choosing a service.

Несмотря на то, что настоящее изобретение описано относительно конкретных иллюстративных вариантов осуществления, специалисты в данной области техники поймут, что настоящее изобретение не ограничено конкретными примерами, описанными и проиллюстрированными в настоящей заявке. Следует понимать, что это раскрытие является только иллюстративным. Таким образом, подразумевают, что изобретение ограничено только объемом формулы изобретения, прилагаемой к настоящей заявке.Although the present invention has been described with respect to specific illustrative embodiments, those skilled in the art will understand that the present invention is not limited to the specific examples described and illustrated in this application. It should be understood that this disclosure is illustrative only. Thus, it is intended that the invention be limited only by the scope of the claims appended hereto.

Claims (19)

1. Способ предоставления указания доступности услуги в пользовательский терминал (98), содержащий этапы, на которых
предоставляют структуру (200) данных, представляющую пользовательские терминалы и отношения между терминалами, полученные из одного или более параметров связи, относящихся к связям между пользовательскими терминалами,
предоставляют по меньшей мере для некоторых из пользовательских терминалов информацию об использовании услуги для каждой из множества услуг,
выбирают по меньшей мере для одного пользовательского терминала (98) и из множества услуг услугу, не использованную по меньшей мере одним пользовательским терминалом (98), причем выбор услуги основан на информации об использовании услуги, предоставленной для пользовательских терминалов, имеющих предварительно определенную ассоциацию с по меньшей мере одним пользовательским терминалом (98), как определено отношениями между терминалами, и
посылают сообщение, указывающее выбранную услугу по меньшей мере в один пользовательский терминал (98).
1. A method of providing an indication of service availability to a user terminal (98), comprising the steps of:
provide a data structure (200) representing user terminals and relationships between terminals obtained from one or more communication parameters related to communications between user terminals,
provide at least some of the user terminals with information about the use of the service for each of the many services,
for at least one user terminal (98) and from a variety of services, a service not used by at least one user terminal (98) is selected, the service selection being based on service usage information provided for user terminals having a predetermined association with at least one user terminal (98), as defined by relations between the terminals, and
sending a message indicating the selected service to at least one user terminal (98).
2. Способ по п.1, в котором структура (200) данных может быть представлена как сетевой граф (300) с узлами (302, 304) и ребрами (306), соединяющими каждые два узла (302, 304), и в котором узлы (302, 304) соответствуют пользовательским терминалам, а ребра (306) получены из отношений между терминалами.2. The method according to claim 1, in which the data structure (200) can be represented as a network graph (300) with nodes (302, 304) and edges (306) connecting every two nodes (302, 304), and in which nodes (302, 304) correspond to user terminals, and edges (306) are obtained from relations between the terminals. 3. Способ по п.2, в котором предварительно определенная ассоциация, лежащая в основе выбора услуги, содержит критерий, выраженный как мера расстояния, применимая к сетевому графу (300).3. The method according to claim 2, in which the predefined association underlying the choice of service contains a criterion expressed as a measure of distance applicable to the network graph (300). 4. Способ по п.2 или 3, в котором каждое ребро (306) ассоциировано с информацией о метриках, количественно определяющей взаимное отношение между двумя узлами (302, 304), соединенными ребром (306), и в котором информация о метриках получена из одного или более параметров связи.4. The method according to claim 2 or 3, in which each edge (306) is associated with information about the metrics, quantifying the mutual relationship between two nodes (302, 304) connected by the edge (306), and in which the information about the metrics is obtained from one or more communication parameters. 5. Способ по п.4, в котором предварительно определенная ассоциация, лежащая в основе выбора услуги, содержит критерий, применимый к информации о метриках.5. The method according to claim 4, in which the predefined association underlying the choice of service contains a criterion applicable to metric information. 6. Способ по п.2 или 3, в котором одно или более ребер (306) являются направленными, и в котором этап, на котором выбирают услугу, содержит критерий, применимый к направлению ребра.6. The method according to claim 2 or 3, in which one or more ribs (306) are directed, and in which the stage at which the service is selected, contains a criterion applicable to the direction of the ribs. 7. Способ по п.2 или 3, в котором по меньшей мере некоторые из пользовательских терминалов ранжируют на основании по меньшей мере одного из: принадлежности к группировкам и наличия транзитивных отношений с точки зрения сетевого графа (300), и в котором этап, на котором выбирают услугу, содержит критерий, выраженный с точки зрения ранжирования.7. The method according to claim 2 or 3, in which at least some of the user terminals are ranked based on at least one of: group membership and the presence of transitive relationships from the point of view of the network graph (300), and in which step, which selects the service, contains a criterion expressed in terms of ranking. 8. Способ по п.2 или 3, в котором каждое ребро (306) ассоциировано с отдельной информацией о метриках для каждой из множества услуг связи.8. The method according to claim 2 or 3, in which each edge (306) is associated with separate information about the metrics for each of the many communication services. 9. Способ по п.2 или 3, в котором информация об использовании услуги относится к услугам связи, и, в котором выбранная услуга является услугой связи.9. The method according to claim 2 or 3, in which information about the use of the service relates to communication services, and in which the selected service is a communication service. 10. Способ по п.9, в котором услуги связи включают в себя одну или более из речевых услуг, текстовых услуг, услуг данных, услуг мультимедиа, услуг мгновенного обмена сообщениями и групповых услуг.10. The method of claim 9, wherein the communication services include one or more of voice services, text services, data services, multimedia services, instant messaging services, and group services. 11. Способ по п.2 или 3, в котором информация об использовании услуги относится к услугам приложений, и в котором выбранная услуга является услугой приложения.11. The method according to claim 2 or 3, in which information about the use of the service relates to application services, and in which the selected service is an application service. 12. Способ по п.2 или 3, дополнительно содержащий этап, на котором ранжируют услуги в соответствии с информацией об использовании услуги, и в котором этап, на котором выбирают услугу, дополнительно основан на ранжировании услуги.12. The method according to claim 2 or 3, further comprising the step of ranking the services in accordance with information about using the service, and in which the step of selecting the service is further based on the ranking of the service. 13. Способ по п.12, в котором ранжирование услуги зависит от полного использования каждой отдельной услуги множеством пользовательских терминалов.13. The method of claim 12, wherein the ranking of the service depends on the full use of each individual service by a plurality of user terminals. 14. Способ по п.2 или 3, в котором один или более параметров связи включают в себя по меньшей мере одно из: партнер или партнеры по связи, продолжительность связи, число связей, направление связи и вид использованной услуги связи.14. The method according to claim 2 or 3, in which one or more communication parameters include at least one of: communication partner or partners, communication duration, number of communications, communication direction and type of communication service used. 15. Способ по п.2 или 3, в котором один или более параметров связи могут быть получены по меньшей мере из одного из: записей подробностей вызовов, записей подробностей событий, исследования интерфейса сети связи и агентов (110) пользовательских терминалов.15. The method according to claim 2 or 3, in which one or more communication parameters can be obtained from at least one of: call detail records, event detail records, research of a communication network interface and user terminal agents (110). 16. Машиночитаемый носитель информации, содержащий исполняемые вычислительным устройством команды, чтобы заставить вычислительное устройство выполнять этапы способа по любому из пп.1-15.16. A computer-readable storage medium containing instructions executed by a computing device to cause the computing device to perform the steps of the method according to any one of claims 1 to 15. 17. Устройство для предоставления указания доступности услуги в пользовательский терминал (98), содержащее
память (116), предоставляющую структуру (200) данных, представляющую пользовательские терминалы и отношения между терминалами, полученные из одного или более параметров связи, относящихся к связям между пользовательскими терминалами, и дополнительно предоставляющую по меньшей мере для некоторых из пользовательских терминалов информацию об использовании услуги для каждой из множества услуг,
процессор (122), адаптированный выбирать по меньшей мере для одного пользовательского терминала (98) и из множества услуг услугу, не использованную по меньшей мере одним пользовательским терминалом (98), причем выбор услуги основан на информации об использовании услуги, предоставленной для пользовательских терминалов, имеющих предварительно определенную ассоциацию по меньшей мере с одним пользовательским терминалом (98), как определенную отношениями между терминалами, и
выходной интерфейс (130) для посылки сообщения, указывающего выбранную услугу, в пользовательский терминал (98).
17. An apparatus for providing an indication of service availability to a user terminal (98) comprising
a memory (116) providing a data structure (200) representing user terminals and relations between terminals obtained from one or more communication parameters related to communications between user terminals, and further providing at least some of the user terminals information about using the service for each of the many services
a processor (122) adapted to select for at least one user terminal (98) and from among a plurality of services a service not used by at least one user terminal (98), wherein the choice of service is based on service usage information provided for user terminals, having a predefined association with at least one user terminal (98), as defined by the relationship between the terminals, and
an output interface (130) for sending a message indicating the selected service to the user terminal (98).
18. Устройство по п.17, в котором структура (200) данных сконфигурирована быть представленной как сетевой граф (300) с узлами (302, 304) и ребрами (306), в котором узлы (302, 304) являются представителями пользовательских терминалов, и в котором ребра (306) соединяют два узла (302, 304), и их получают из отношений между терминалами.18. The device according to 17, in which the data structure (200) is configured to be represented as a network graph (300) with nodes (302, 304) and edges (306), in which nodes (302, 304) are representatives of user terminals, and in which the ribs (306) connect the two nodes (302, 304), and they are obtained from the relationship between the terminals. 19. Устройство по п.18, в котором предварительно определенная ассоциация, лежащая в основе выбора услуги, содержит критерий, выраженный как мера расстояния, применимая к сетевому графу (300). 19. The device according to p, in which the predefined association underlying the choice of services, contains a criterion, expressed as a measure of distance, applicable to the network graph (300).
RU2011119623/08A 2008-10-17 2008-10-17 Method and apparatus for selecting and indicating service RU2461150C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2011119623/08A RU2461150C1 (en) 2008-10-17 2008-10-17 Method and apparatus for selecting and indicating service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2011119623/08A RU2461150C1 (en) 2008-10-17 2008-10-17 Method and apparatus for selecting and indicating service

Publications (1)

Publication Number Publication Date
RU2461150C1 true RU2461150C1 (en) 2012-09-10

Family

ID=46939087

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2011119623/08A RU2461150C1 (en) 2008-10-17 2008-10-17 Method and apparatus for selecting and indicating service

Country Status (1)

Country Link
RU (1) RU2461150C1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2635881C2 (en) * 2013-05-13 2017-11-16 Хуавей Текнолоджиз Ко., Лтд. Access control method and device
RU2676452C1 (en) * 2015-03-31 2018-12-28 Нек Корпорейшн Controller, management method and program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2297723C2 (en) * 2002-11-12 2007-04-20 Хювэй Текнолоджиз Ко., Лтд. Method for organizing provision of previously paid service of multimedia message transfer
RU2324294C2 (en) * 2003-07-21 2008-05-10 Зте Корпорейшн Method for dynamic regulation of transmitting node throughput and device implementing this method
WO2008081040A1 (en) * 2007-01-04 2008-07-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for cost-based network selection

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2297723C2 (en) * 2002-11-12 2007-04-20 Хювэй Текнолоджиз Ко., Лтд. Method for organizing provision of previously paid service of multimedia message transfer
RU2324294C2 (en) * 2003-07-21 2008-05-10 Зте Корпорейшн Method for dynamic regulation of transmitting node throughput and device implementing this method
WO2008081040A1 (en) * 2007-01-04 2008-07-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for cost-based network selection

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2635881C2 (en) * 2013-05-13 2017-11-16 Хуавей Текнолоджиз Ко., Лтд. Access control method and device
US9877274B2 (en) 2013-05-13 2018-01-23 Huawei Technologies Co., Ltd. Access control method and device
US10306549B2 (en) 2013-05-13 2019-05-28 Huawei Technologies Co., Ltd. Access control method and device
US10820260B2 (en) 2013-05-13 2020-10-27 Huawei Technologies Co., Ltd. Access control method and device
RU2676452C1 (en) * 2015-03-31 2018-12-28 Нек Корпорейшн Controller, management method and program

Similar Documents

Publication Publication Date Title
US9294992B2 (en) Method and apparatus for service selection and indication
JP6261665B2 (en) Determining connections within a community
US8943053B2 (en) Social data ranking and processing
US10949771B2 (en) Systems and methods for churn prediction
KR101343823B1 (en) System and method of selecting a relevant user for introduction to a user in an online environment
JP4663726B2 (en) Data collection and management based on rules in wireless communication networks
US10158730B2 (en) Context based communication management
US9805111B2 (en) Data model pattern updating in a data collecting system
US20130311283A1 (en) Data mining method for social network of terminal user and related methods, apparatuses and systems
US10743249B2 (en) Methods and apparatus for generating recommended changes to communication behaviors
KR20100130003A (en) Apparatus and method for providing online social network service
US20130036177A1 (en) Methods, systems, and computer readable media for managing social interaction histories
US20110007882A1 (en) Method and interference engine for processing telephone communication data
US20150350038A1 (en) Methods of generating community trust values for communities of nodes in a network and related systems
JP2019502199A (en) System and method for sharing content
JP6160362B2 (en) Information evaluation apparatus, information evaluation method, and information evaluation program
EP2884784A1 (en) Privacy ratings for applications of mobile terminals
RU2461150C1 (en) Method and apparatus for selecting and indicating service
CN115474189B (en) Notification data acquisition method, communication core network, computer device and storage medium
CN113905019A (en) Data transmission method, device, equipment and medium based on terminal address management
WO2015105441A1 (en) Predicting a new network affiliation of a churned user in a telecommunication network
WO2015126297A1 (en) Privacy preservation of influential users in a communication environment
KR20090044011A (en) System for constructing information about personal networking, and server applied to the same