BRPI0921941B1 - método de fornecer informação personalizada a um usuário de uma estação móvel, nó de rede para uso em uma rede de comunicações e meio de armazenamento legível por computador - Google Patents

método de fornecer informação personalizada a um usuário de uma estação móvel, nó de rede para uso em uma rede de comunicações e meio de armazenamento legível por computador Download PDF

Info

Publication number
BRPI0921941B1
BRPI0921941B1 BRPI0921941-2A BRPI0921941A BRPI0921941B1 BR PI0921941 B1 BRPI0921941 B1 BR PI0921941B1 BR PI0921941 A BRPI0921941 A BR PI0921941A BR PI0921941 B1 BRPI0921941 B1 BR PI0921941B1
Authority
BR
Brazil
Prior art keywords
trend
attribute
data
user
personalized information
Prior art date
Application number
BRPI0921941-2A
Other languages
English (en)
Inventor
Michael A. Leeder
Original Assignee
Blackberry Limited
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 Blackberry Limited filed Critical Blackberry Limited
Publication of BRPI0921941A2 publication Critical patent/BRPI0921941A2/pt
Publication of BRPI0921941B1 publication Critical patent/BRPI0921941B1/pt

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04L67/22

Abstract

FORNECIMENTO DE INFORMAÇÃO PERSONALIZADA A UM USUÁRIO COM BASE NA IDENTIFICAÇÃO DE UMA TENDÊNCIA. A presente invenção refere-se ao fornecimento da informação personalizada ao usuário, um nó de rede de comunicações sem fio que recebe uma corrente de dados associada a um usuário. Uma primeira tendência associada a pelo menos um primeiro atributo na corrente de dados é identificada, e com base na primeira tendência identificada, a informação personalizada é enviada para a apresentação ao usuário em uma estação móvel.

Description

CAMPO DA INVENÇÃO
A presente invenção refere-se, geralmente, a fornecer a informação personalizada a um usuário com base na identificação de uma tendência em uma corrente de dados.
ANTECEDENTES
Em redes com fio, tais como a Internet, a publicidade na rede forneceu uma fonte relativamente grande de renda para os provedores de conteúdo na rede e outros provedores de serviço. A publicidade na rede in-clui os anúncios direcionados que são apresentados aos usuários específi-cos com base na informação associada aos usuários que indicam que os usuários podem estar interessados nos anúncios direcionados. Uma abor-dagem convencional para extrair a informação associada aos usuários para os fins de anúncios direcionados gerados envolve inserir os circuitos de dis-paro de detecção nos serviços comumente usados, tais como pesquisa na rede, compra online, ou correio eletrônico, e registros de eventos de arma-zenamento por usuário que contêm informação baseada nos circuitos de disparo detectados.
Os registros de eventos podem incluir uma ampla variedade de informação coletada, que inclui tópicos de pesquisa, palavras-chave, locali- zadores uniformes de recurso visitados (URLs), assuntos de correio eletrôni-co, serviços usados, tempo de uso, e assim por diante. As técnicas de extra-ção de dados são, então, aplicadas na informação coletada para extrair in-formação dos registros de eventos para determinar os anúncios-alvo que podem ser de interesse para os usuários correspondentes. Apesar de serem geralmente eficazes na produção de anúncios direcionados, as técnicas de extração de dados convencionais envolvem o armazenamento de uma quantidade relativamente grande de dados, o que requer uma provisão de uma infraestrutura de gerenciamento e armazenamento de dados grande e dis- pendiosa.
Apesar de os anúncios direcionados poderem fornecer uma fonte relativamente grande de renda para os provedores de serviço, a infraes- trutura dispendiosa que pode ter que ser implementada para os fins de extração de dados pode dissuadir alguns provedores de serviço, inclusive os provedores de serviço de redes de comunicações sem fio, a partir da implementação desta oportunidade de renda.
SUMÁRIO
Em geral, de acordo com uma modalidade, um método de fornecer informação personalizada a um usuário inclui receber, em um nó de rede, uma corrente de dados associado ao usuário. Uma tendência associada a pelo menos um atributo na corrente de dados é identificada, e com base na tendência identificada, a informação personalizada é enviada para a apresentação ao usuário em uma estação de usuário.
Outras características ou características alternativas se tornarão evidentes a partir da descrição a seguir, a partir dos desenhos, e a partir das reivindicações.
BREVE DESCRIÇÃO DOS DESENHOS
A figura 1 é um diagrama em bloco de uma rede de comunicações que inclui uma rede sem fio, na qual um mecanismo para fornecer anúncios direcionados, de acordo com uma modalidade, pode ser incorporado.
A figura 2 é um diagrama em bloco de um nó de comunicações sem fio e um sistema de análise de dados, de acordo com uma modalidade da invenção.
A figura 3 ilustra as estruturas de dados usadas no fornecimento de anúncios direcionados, de acordo com uma modalidade.
As figuras 4 a 6 são diagramas de fluxo de processos de fornecer anúncios direcionados aos usuários na rede sem fio, de acordo com diversas modalidades alternativas.
DESCRIÇÃO DETALHADA
Na descrição a seguir, inúmeros detalhes são estabelecidos pa- ra fornecer uma compreensão de algumas modalidades. No entanto, será compreendido, por aqueles versados na técnica, que algumas modalidades podem ser praticadas sem esses detalhes e que inúmeras variações ou modificações das modalidades descritas podem ser possíveis.
De acordo com algumas modalidades, um mecanismo é fornecido para possibilitar a identificação de informação personalizada que deve ser fornecida a um usuário em uma rede de comunicações (por exemplo, rede de comunicações com fio ou sem fio). Em alguns exemplos, a informação personalizada inclui a informação para a publicidade, onde "informação para a publicidade" refere-se à informação que descreve produtos e serviços que são oferecidos por diversas entidades, tais como pontas de estoque varejistas, varejistas online, organizações educacionais, agências governamentais, e assim por diante. A informação para a publicidade que é selecionada para a apresentação aos usuários é referida como informação para a publicidade direcionada (ou anúncios direcionados). A informação para a publicidade ou anúncios "direcionados" refere-se à informação para a publicidade que pode ser, mais provavelmente, de interesse a um usuário em particular com base na informação associada ao usuário em particular. O fornecimento de informação para a publicidade direcionada aos usuários específicos é tipicamente mais eficaz do que o fornecimento de informação para a publicidade geral a um público amplo.
Um mecanismo, de acordo com algumas modalidades, de extrair informação para os fins de produzir informação para a publicidade direcionada para um usuário em particular (ou grupo de usuários) usa uma técnica que não exige o armazenamento e extração de todos os registros de dados associados ao usuário em particular (ou grupo de usuários). Em vez disso, o mecanismo identifica uma tendência (ou múltiplas tendências) associada a um ou mais atributos de uma corrente de dados. As amostras de dados que são relevantes para a(s) tendência(s) podem ser armazenadas para a análise mais adiante. Os dados restantes podem ser descartados. Desta maneira, a quantidade de dados que tem que ser armazenada para possibilitar a provisão de anúncios direcionados é reduzida de maneira significativa. A infraestrutura de gerenciamento e armazenamento de dados que tem que ser fornecida para permitir a extração de dados para fornecer os anúncios direcionados pode ser menos complexa e então, menos dispendiosa.
Usando-se o mecanismo de acordo com algumas modalidades, um provedor de serviço em uma rede de comunicações sem fio é capaz de levar vantagem quanto às oportunidades de renda aumentadas ao fornecer anúncios direcionados. Um provedor de serviço de uma rede de comunicações sem fio refere-se à entidade que gerencia e fornece serviços de comunicações na rede de comunicações sem fio.
Geralmente, de acordo com algumas modalidades, um nó na rede de comunicações sem fio recebe uma corrente de dados associado a um usuário. Uma tendência associada a pelo menos um atributo na corrente de dados é identificada, e baseada na tendência identificada, a informação personalizada (por exemplo, informação para a publicidade direcionada) é enviada para a apresentação ao usuário em uma estação móvel. Uma "tendência" refere-se a um nível de uso ou de atividade associado a um usuário em particular (ou grupo de usuários) que excede algum limite predefinido.
Na discussão subsequente, faz-se referência ao fornecimento de informação para a publicidade direcionada a um usuário. No entanto, as mesmas técnicas ou técnicas similares podem ser aplicadas para apresentar outras formas de informação personalizada a um usuário. Também, apesar de se fazer referência ao fornecimento de informação personalizada a uma estação móvel associada a um usuário em uma rede de comunicações sem fio, nota-se que a informação personalizada também pode ser fornecida a uma estação de usuário em uma rede com fio.
A figura 1 ilustra uma rede de comunicações exemplificativa que inclui uma rede de comunicações sem fio 100 e uma rede de dados 102. A rede de dados 102 pode ser uma rede de dados em pacote, tal como a Internet, ou algum outro tipo de rede de dados. Os terminais com fio 104 são conectados à rede de dados 102. Os exemplos dos terminais 104 incluem computadores, celulares com Internet, servidores (por exemplo, servidores de rede ou outros servidores de conteúdo), e assim por diante.
A rede de comunicações sem fio 100 inclui uma estação base 106 que é conectada a um controlador de rede central 108, o qual, sucessivamente, é conectado à rede de dados 102.
A estação base 106 é capaz de se comunicar sem o uso de fio através de um enlace sem fio 110 (por exemplo, enlace de radiofrequência) com uma estação móvel 112 que está dentro da área de cobertura da estação base. A estação base 106 pode, de fato, ser implementada com múltiplos nós, inclusive uma estação transceptora base (BTS) que possui uma ou mais antenas para desempenhar a comunicação sem fio com a estação móvel 112. A estação base 106 também pode incluir um controlador de estação base ou controlador de rede sem fio que fornece as tarefas de controle associadas às comunicações com as estações móveis. O controlador de rede central 108 gerencia a comunicação entre a rede de comunicações sem fio 100 e uma rede externa, tal como a rede de dados 102, e também gerencia as comunicações entre as estações móveis na rede de comunicações sem fio 100. Apesar de apenas uma estação base 106 ser retratada, nota-se que uma típica rede de comunicações sem fio 100 incluirá muitas estações base para as respectivas áreas de cobertura (por exemplo, células) na rede sem fio.
A tecnologia de acesso sem fio da rede de comunicações sem fio 100 pode ser qualquer uma ou mais das seguintes: Sistema Global para Celular (GSM) definido pelo Projeto de Parceria da Terceira Geração (3GPP); Sistema de Telecomunicações Móveis Universal (UMTS), definido pela 3GPP; Acesso Múltiplo por Divisão de Código 2000 (CDMA 2000), definido pelo Projeto de Parceria da Terceira Geração 2 (3GPP2); Evolução a Longo Prazo (LTE) definido pelo 3GPP, que busca intensificar a tecnologia UMTS; Interoperabilidade Mundial para Acesso de Micro-ondas (WiMAX), conforme definida pelo IEEE (Instituto de Engenheiros Eletricistas e Eletrônicos) 802.16; e outros.
Um usuário associado à estação móvel 112 pode desempenhar diversas comunicações (por exemplo, comunicações por voz ou comunicações por dados) usando-se a estação móvel 112. Por exemplo, o usuário pode se comunicar com um outro usuário na rede de comunicações sem fio 100. Alternativamente, o usuário pode se comunicar com um usuário associado com um computador ou telefone conectado à rede de dados 102. Ainda como um outro exemplo, o usuário pode usar a estação móvel 112 para desempenhar a navegação na rede, que inclui acessar locais da rede na rede de dados 102 para desempenhar atividades de pesquisa, atividades de compra online, e outras atividades.
Um nó na rede de comunicações sem fio 100 ou associado a ela pode monitorar a corrente de dados associado a várias comunicações que são desempenhadas pela estação móvel 112 para identificar quaisquer tendências associadas a um ou mais atributos na corrente de dados. Os anúncios direcionados podem ser produzidos com base nas tendências identificadas.
O nó que pode ser usado para monitorar a corrente de dados para detectar as tendências pode ser qualquer um dos nós na rede de comunicações sem fio 100, inclusive na estação base 106 ou no controlador de rede central 108. Alternativamente, um outro nó na rede de comunicações sem fio 100 ou associado a ela pode ser usado para monitorar a corrente de dados associado a cada usuário na rede de comunicações sem fio 100. Tal nó é referido como um "nó de comunicações sem fio".
A figura 2 retrata o nó de comunicações sem fio representado geralmente como 200. O nó de comunicações sem fio 200 possui um módulo de detecção de tendência 202 (para desempenhar um algoritmo de detecção de tendência) que é executável em uma ou mais unidades centrais de processamento (CPUs) 204 no nó de comunicações sem fio 200. A(s) CPU(s) 204 é (são) conectada(s) a um depósito 206.
O módulo de detecção de tendência 202 recebe uma corrente de dados "contínua" 208 associado a várias comunicações desempenhadas pelos diversos usuários na rede de comunicações sem fio 100. Cada caixa na corrente de dados 208 retratada na figura 2 pode representar um pacote de dados. Uma corrente de dados "contínua" refere-se a um fluxo (ou fluxos) de pacotes de dados que é (são) continuamente recebido(s) pelo nó de co- municações sem fio 200 desde que os dados estejam sendo comunicados. Se não houver dados sendo comunicados, então, a corrente de dados contínua seria temporariamente interrompida. O pacote de dados pode conter algum identificador (tal como um identificador de nó móvel, identificador de usuário, ou algum outro tipo de identificador associado a um usuário da estação móvel) para distinguir os pacotes de dados associados aos diferentes usuários correspondentes.
O módulo de detecção de tendência 202 monitora o próximo item disponível na corrente de dados contínua 208. O módulo de detecção de tendência 202 analisa, então, o item, identifica um usuário correspondente, e então, determina se o item é associado a uma tendência em particular (ou tendências). Se for, uma estrutura de dados de tendência 212 armazenada no depósito 206 pode ser atualizada, onde a estrutura de dados de tendência 212 é usada para armazenar a informação sobre a tendência e as amostras de dados associados a cada tendência.
Os itens de dados que não são relacionados a qualquer tendência identificada pelo módulo de detecção de tendência 202 podem ser descartados (os itens de dados descartados são representados como 214 na figura 2). Os itens de dados descartados não têm que ser armazenados pelo módulo de detecção de tendência 202, o qual reduz o tamanho e a complexidade do subsistema de armazenamento necessário para suportar o algoritmo de detecção de tendência e o algoritmo de anúncio direcionado, de acordo com algumas modalidades.
Ao identificar uma tendência (ou tendências), a informação para a publicidade direcionada pode ser desenvolvida com base em tal(is) ten- dência(s). em um exemplo, uma tendência pode ser a que uma porcentagem relativamente alta de chamadas de um usuário específico se origine de uma localização específica (por exemplo, cidade, vizinhança, célula, etc.). Em resposta à detecção de tal tendência geográfica, a informação para a publicidade direcionada pode ser gerada, a qual se refere à localização específica (por exemplo, anúncio direcionado relacionado aos varejistas na localização específica). Uma outra tendência refere-se às visitas relativamente fre- quentes por um usuário de um número máximo (por exemplo, 10) de locais da rede. Os locais da rede frequentemente visitados podem, então, ser usados para inferir um interesse do usuário, a partir do qual os anúncios direcionados podem ser desenvolvidos. Uma outra tendência que pode ser detectada é uma tendência com base tanto no tempo quanto na localização de sessões de comunicações. Por exemplo, um usuário pode ter a maioria das chamadas diurnas em uma localização e a maioria das chamadas noturnas em uma outra localização. Com base nisto, os anúncios direcionados com base tanto no tempo quanto na localização podem ser apresentados. Uma outra tendência que pode ser detectada envolve uma tendência baseada em pessoas que recebem, frequentemente, chamadas de um usuário. Este "círculo de amigos" pode ser usado para identificar uma comunidade potencial de usuários com interesses e demográficos similares, a partir do que os anúncios direcionados podem ser produzidos.
A figura 2 também mostra um sistema de análise de dados 216 que inclui um módulo de anúncio direcionado 218 que acessa uma estrutura de dados de tendência 220 que contém informação relacionada às tendências, a qual é armazenada no depósito 222. O módulo de anúncio direcionado 218 pode ser um módulo de software executável em uma ou mais CPUs 224 do sistema de análise de dados 216. O módulo de anúncio direcionado 218 gera anúncios direcionados a serem enviados para a apresentação aos usuários com base na informação na estrutura de dados de tendência 220. A estrutura de dados de tendência 220 pode ser uma cópia da estrutura de dados de tendência 212 contida no depósito 206 do nó de comunicações sem fio 200.
Apesar de o módulo de detecção de tendência 202 e o módulo de anúncio direcionado 218 serem retratados em dois sistemas separados na figura 2, nota-se que esses dois módulos podem ser executados no mesmo sistema, por exemplo, no nó de comunicações sem fio 200 ou no sistema de análise de dados 216.
De acordo com algumas modalidades, a detecção de tendência é baseada nas seguintes suposições: A = a quantidade de atributos (por exemplo, atributo de localização, atributo de tempo, atributo de local de rede, etc.) que o módulo de detecção de tendência 202 é configurado para reconhecer; U = a quantidade de usuários cujos dados estão presentes na corrente de dados contínua 208; e T = a quantidade de tendências que o módulo de detecção de tendência 202 é configurado para detectar.
O conjunto de atributos que o módulo detector de tendência 202 pode reconhecer é definido como um conjunto enumerado, conforme segue:
Figure img0001
Alguns atributos aj possuem valores possíveis que são separados e não organizados em qualquer relação hierárquica. Estes são chamados de atributos planos. Os exemplos de atributos planos incluem dias da semana e palavras-chave específicas.
Alguns atributos não são planos, mas em vez disso, possuem valores que representam uma hierarquia. Existem muitos exemplos de atributos hierárquicos, tais como a localização geográfica, endereços de IP, e marcas de tempo. Uma localização geográfica é hierárquica, porque a localização de um usuário pode ser indicada como uma região geográfica maior (por exemplo, estado) ou uma região geográfica menor (por exemplo, cidade, vizinhança). Uma cidade é localizada em um estado, um estado é localizado em um país, e assim por diante, o que fornece uma hierarquia de relações entre as diferentes localizações.
Os atributos hierárquicos podem ser representados ao usar uma notação similar ao modo no qual os endereços de IP (Protocolo de Internet) são representados; especificamente: a = a1, a2,...ah , onde a profundidade da hierarquia é h e h > 0.
Os atributos hierárquicos podem ter valores que são totalmente qualificados (por exemplo, endereço de IP 47.99.88.77) ou eles podem ser parcialmente qualificados (por exemplo, 47.*.*.*).
Os usuários do sistema são representados como: Usuários = {ui |0 ≤ i ≤ U}.
Uma tendência t é definida como a interseção de um ou mais atributos. Uma tendência composta de um atributo é chamada de uma tendência unidimensional, e é representada como: tk1 = aj onde 0<j<A.
Geralmente, uma tendência que é criada ao intersectar d atributos é chamada de uma tendência dimensional d, e é representada por: tkd = ajl O ... O ajd onde 0 ≤ j ≤ A e d > 0.
A quantidade de dimensões em uma tendência pode ser qualquer valor inteiro positivo. Um exemplo de uma tendência bidimensional pode ser uma tendência com base tanto no tempo quanto na localização. Em algumas implementações exemplificativas, o módulo de detecção de tendência 202 é configurado para reconhecer um conjunto relativamente pequeno de tendências de valor alto T (as tendências mais interessantes com base em alguns critérios predefinidos). Este conjunto de tendências configuradas é descrito como: Tendências = {tkd |0 < k ≤ T, d > 0}.
O módulo de detecção de tendência 202 observa uma corrente de dados (208), e sem ter que armazenar todos os registros de uso individuais, detecta as tendências associadas a cada usuário.
A definição de uma tendência irá variar para diferentes atributos, e para diferentes aplicações. Por exemplo, para uma aplicação de propaganda móvel, o fato de que um usuário faz 70% de suas chamadas móveis a partir da mesma localização durante as horas comerciais normais pode ser suficiente para identificar uma tendência. No entanto, para outros atributos ou outras aplicações, as porcentagens podem não ser importantes. Por exemplo, uma tendência para um portal do provedor de serviço de Internet pode ser definida como o conjunto de enlaces que um usuário clicou mais de uma vez.
Em algumas modalidades, as tendências podem ser um dos tipos a seguir: uso baseado em porcentagem; uso baseado em cardinalidade; uso baseado em intervalo; e uso baseado em volume. Uma tendência do tipo uso baseado em porcentagem refere-se a uma tendência que é identificada com base em um nível de atividade ou uso que excede algum limite de porcentagem. Uma tendência do tipo uso baseado em cardinalidade refere- se a uma tendência que é identificada com base em um nível de atividade ou uso que excede algum limite de tamanho. Uma tendência do tipo uso baseada em intervalo refere-se a uma tendência que é identificada com base em um limite de tempo, e uma tendência do tipo uso baseado em volume refere- se a uma tendência que é identificada com base em um limite de volume. Nota-se que os tipos listados acima não são exaustivos, à medida que outros tipos de tendências podem ser usados em outros domínios.
Cada tendência pode ser associada a uma função de tendência, a qual é executada para detectar a tendência correspondente. A função da tendência pode ser implementada com o código de software, por exemplo. Cada tendência pode ter um ou mais limites específicos que demarcam os valores da tendência. Por exemplo, um limite pode indicar se uma tendência está ou não presente: um valor que excede (maior do que ou menor do que) o limite é indicativo de que a tendência está presente, enquanto um valor que não excede o limite indica que uma tendência não está presente. Alternativamente, múltiplos limites podem ser especificados; por exemplo, um primeiro limite pode especificar uma tendência menor, e um segundo limite pode especificar uma tendência maior. Em um exemplo, um indicador referido como "Trend_Indicator" pode ter o seguinte valor: Trend_Indicator = {nenhuma tendência, tendência menor, tendência maior, ignorada}, onde "nenhuma tendência" indica que nenhuma tendência foi detectada, "tendência menor" indica que uma tendência menor foi detectada (uso excede o primeiro limite), "tendência maior" indica que uma tendência maior foi detectada (uso excede o segundo limite), e "ignorada" indica que esta tendência deve ser ignorada.
Neste exemplo, uma tupla de limite de tendência de dois limites de tendência pode ser definida para representar as fronteiras que demarcam os valores de tendência menor e maior: Trend_Thold = (Tipo de Tendência, menor, maior), onde 0 < menorib < mai- or1b, menor1b é o limite de tendência menor, maior1b é o limite de tendência maior, e Tipo de Tendência e {porcentagem, cardinalidade, intervalo ou volume}.
Alternativamente, um resultado de tendência normalizada pode ser usado em vez do mapeamento para valores finitos.
Como uma alternativa, o indicador de tendência, Trend_Indicator, pode ter valor {nenhuma tendência, tendência, ignorada} se o conceito de "menor" e "maior" tendências não for usado.
Em algumas implementações, um vetor de tendência pode ser definido por cada usuário, quem está sendo analisado pelo módulo de detecção de tendência 202. A finalidade do vetor de tendência é identificar todos os atributos que estão sendo monitorados para aquele usuário, o valor de tendência associado a cada um desses atributos, e um apontador para os dados que resumem aquela tendência.
Cada elemento em um vetor de tendência é a Trend_Element, conforme definido abaixo: Trend_Element = {Trend_Indicator, Trend_data pointer}, onde a Trend_Indicator é definido acima, e a Trend_data pointer é um apontador (por exemplo, endereço, identificador de localização, localizador uniforme de recurso, etc.) para uma localização de amostras de dados re-presentativas da tendência correspondente.
Um vetor de tendência é definido como um arranjo de Trend_Elements, com um elemento para cada tendência que é observado pelo módulo de detecção de tendência 202: Trend_Vector = arranjo[k] da Trend_Elements, 0 < k < T.
Com esta estrutura, é possível para uma aplicação que requer a informação sobre a tendência para um usuário, determinar rapidamente o conjunto de tendência(s) para aquele usuário. Por exemplo, uma aplicação de propaganda móvel (por exemplo, módulo de anúncio direcionado 218 na figura 2) que deseja direcionar os anúncios a um usuário específico pode usar a(s) tendência(s) que foi(foram) detectada(s) a partir do histórico de uso do usuário, e pode selecionar a informação para a publicidade que melhor combina com as preferências e interesses daquele usuário. Isso pode ser alcançado ao fazer uma varredura da Trend_Vector do usuário, determinar a(s) tendência(s) do usuário, selecionar uma tendência de interesse, e recu-perar os dados de tendência correspondente.
Nota-se que a Trend_Vector pode suportar muitos algoritmos de seleção diferentes, dependendo de como a aplicação deseja priorizar as di-ferentes tendências, ou como a aplicação deseja lidar as tendências maior contra a menor.
Apesar de varias estruturas serem discutidas acima para permitir a identificação de tendências, nota-se que, nas implementações alternativas, outros tipos de estruturas podem ser usados no lugar delas.
O problema de encontrar tendências em uma corrente de dados contínua é relativamente fácil de compreender para os atributos planos, e envolve, primariamente, contar ocorrências de valores específicos de atribu-to. No entanto, o problema se torna mais complexo quando lida com atributos hierárquicos, uma vez que ele se torna necessário para determinar o nível na hierarquia na qual as tendências ocorrem. Também é necessário de-terminar se o número de ocorrências em um nível em particular na hierarquia é uma tendência ou se é influenciado pelo fato de que um de seus antepas-sados é uma tendência. Os exemplos na seção seguinte ajudam a ilustrar a dificuldade de encontrar tendências em atributos hierárquicos.
Em um exemplo, os atributos seguintes são considerados: • Dia da Semana (DOW): atributo plano com valores Dom, Seg., Ter, Qua, Qui, Sex e Sáb; • Localização (Loc): atributo hierárquico com valores da forma pa- ís.província/estado.cidade.vizinhança.rua; • Marca de tempo (Tempo): atributo hierárquico com valores da forma ano.mês.dia.hora.minuto; • URL Visitada (URL): as URLs são, por definição, hierárquicas, então é possível tratar isto como um atributo hierárquico. No entanto, para os fins da aplicação de propaganda móvel, é provavelmente mais interessante considerar as URLs totalmente qualificadas (nome do hospedeiro e domínio). Por esta razão, uma URL pode ser tratada como um atributo plano.
No exemplo acima, A = 4, e Atributos = {DOW, Loc, Tempo, URL}. As seguintes tendências unidimensionais são consideradas: URL; Loc; Tempo; e DOW.
Também, as seguintes tendências bidimensionais são consideradas: Loc e Tempo; e Loc e DOW. Assim, T = 6, e Tendências = {Loc, URL, Tempo, DOW, Loc n Tempo, Loc n DOW }.
A tendência URL pode ser definida como baseada em cardinalidade, com os seguintes limites: Nenhuma Tendência: < 2 visitar a uma URL, Tendência menor: > 2, mas < 5 visitas a uma URL, Tendência maior: > 5 visitas a uma URL.
Quanto ao exemplo acima, a tupla de limite de tendência URL, Trend_Thold URL, é conforme segue: Trend_Thold URL = (cardinalidade, 2, 5).
De maneira similar, para a Loc, os limites de tendência podem ser definidos conforme segue: Nenhuma tendência: < 5% de tráfego a partir de uma localização específica, Tendência menor: > 5%, mas < 20% de tráfego a partir de uma localização específica, Tendência maior: > 20% de tráfego a partir de uma localização específica. Esta tupla de limite pode ser representada como: Trend_Thold Loc = (porcentagem, 5%, 20%).
Os seguintes limites de tendência são especificados para os ou- tros limites conforme segue: Trend_Thold Time = (porcentagem, 20%, 50%) Trend_Thold DOW = (volume, 1M, 10M) Trend_Thold Loc e Tempo = (porcentagem, 10%, 20%) Trend_Thold Loc e Dow = (porcentagem, 10%, 20%).
A figura 3 mostra um Trend_Vector para o exemplo acima. Nota- se que um Trend_Vector inclui uma quantidade de Trend_Elements, onde cada Trend_Element contém um Trend_Indicator e um Trend_data pointer. Na figura 3, um Trend_Element 302 é fornecido para a tendência URL, um Trend_Element 304 é fornecido para a tendência Loc, e um Trend_Element 306 é fornecido para a tendência Loc A DOW.
A Trend_Element 302 para a tendência URL possui um valor Trend_Indicator de "maior-tendência," que indica que uma tendência maior foi identificada para a tendência URL. A Trend_data pointer 303 para a Trend_Element de URL302 aponta para uma estrutura de dados 308 que lista diversas URLs e número de visitas associados. Assim, o usuário visitou a URL www.cbc.ca 9 vezes, e visitou a www.canada.com 8 vezes. O usuário também visitou www.ottawa.ca 2 vezes, www.yahoo.com 1 vez, e www.google.ca 5 vezes. Com base nos limites maior e menor exemplificati- vos no exemplo acima, três dos locais de rede visitados acima são representativos de tendências maiores: www.cbc.ca; www.canada.com; e www.google.ca. A partir da tendência URL, uma aplicação de publicidade na rede pode inferir informação específica sobre o usuário. Por exemplo, a aplicação de publicidade na rede pode inferir que o usuário seja um residente canadense, o usuário está mais interessado em conteúdo canadense, e o usuário está interessado em notícias canadenses. A tendência URL do usuário também contém alguns atributos que não são tendências maiores, mas podem ser parte de uma tendência menor. No exemplo acima, uma tendência menor é www.ottawa.ca. Apesar desta informação sobre a tendência não ser dominante o suficiente para inferir uma tendência específica nos dados, pode ser útil para refinar ainda mais as tendências maiores que foram descobertas. Por exemplo, no exemplo acima, a aplicação de publicidade na rede pode usar a tendência menor para selecionar os anúncios que atraem os residentes de Ottawa que usufruem do conteúdo relacionado às notícias.
O exemplo da figura 3 também mostra uma tendência hierárquica Loc. A Trend_Element 304 para a tendência Loc possui uma Trend_data pointer 305 que aponta para uma estrutura de dados 310. Uma vez que a tendência Loc é uma tendência hierárquica, a estrutura de dados 310 que é apontada pela Trend_data pointer 305 pode ser representada como uma estrutura do tipo árvore.
Na figura 3, o nível máximo da estrutura do tipo árvore 310 representa o Canadá (que indica que houveram atividades limitadas (por exemplo, chamadas) relacionadas ao Canadá). Os níveis mais inferiores da estrutura do tipo árvore 310 indicam as atividades relacionadas às províncias, cidades, e outras regiões geográficas menores no Canadá. O limite de tendência para esta tendência pode ser configurado como: Trend_TholdLoc = (porcentagem, 5%, 20%).
O número associado a cada nó na estrutura do tipo árvore 310 indica a porcentagem de tráfego foi originada a partir da localização correspondente. Por exemplo, 100% do tráfego originado no Canadá, 61% se originou em Ottawa, e assim por diante. Identificar uma tendência para um nó da folha (nós da folha "Main," "Carp," "Moodie," "Carling," e "Mont-Bleu") é relativamente fácil. As contagens nos nós da folha podem ser diretamente comparadas com os limites Trend_TholdLoc. Para os nós da folha, apenas a localização "Carp" é identificada como uma tendência maior (uma vez que 28% é maior do que 20%).
Com relação aos níveis superiores da estrutura do tipo árvore 310, a detecção de tendência pode se tornar um pouco mais difícil. Por exemplo, uma determinação tem que ser feita se a vizinhança "Stittsville," associada a uma ocorrência que corresponde a 38%, for considerada uma tendência maior. Nota-se que o valor alto de 38% para a localização "Stitts- ville" é baseado, em grande parte, no valor relativamente grande (28%) para a localização "Carp". Se a contagem de um descendente de tendência maior, tal como "Carp," for removida da contagem do antecessor, "Stittsville," então o "Stittsville" tem uma pontuação de apenas 10%, o que não representa uma tendência maior. Neste caso, em algumas implementações, a localização "Stittsville" não será identificada como correspondente a uma tendência maior. No entanto, em uma implementação diferente, a localização "Stittsville" pode ser identificada como correspondente a uma tendência maior mesmo que tal tendência maior seja ocasionada por um descendente que é associado a uma contagem alta.
Um outro exemplo na estrutura do tipo árvore é um nó de nível mais alto que corresponde à cidade Outaouais, que possui uma contagem de 39%. No entanto, nota-se que os descendentes da localização Outaouais incluem uma localização vizinha Gatineau, que possui apenas um descendente na forma de uma rua Mont-Bleu. Neste cenário, seria mais apropriado identificar a cidade Outaouais como correspondente a uma tendência maior e não seus descendentes.
A determinação de se uma tendência está presente está no contexto de um intervalo de amostragem definido como um período de coleta (P) durante o qual o módulo de detecção de tendência 202 observa a corrente de dados contínua com a finalidade de detectar tendências. Existem diferentes modos nos quais o período de coleta P pode ser medido, tal como um intervalo de tempo, uma quantidade de eventos observada, e assim por diante. O período de coleta P deve ser suficientemente grande para garantir que amostras suficientes sejam tiradas para reconhecer uma tendência. Se o período de coleta P for muito curto, os resultados da tendência podem ser distorcidos por eventos refinados, e podem não descrever propriamente a tendências.
As tendências devem ser evidentes no fim do período de coleta P. Antes de seguir para o próximo período de coleta, o módulo de detecção de tendência 202 (figura 2) normaliza os dados observados durante o último período de coleta P, como se o processo de detecção de tendência tivesse concluído. Isso permite que as estruturas de dados de tendência forneçam uma perspectiva de tendência atualizada, que pode, então, ser usada para fazer as posições de seleção de anúncio. Após o período de coleta inicial, as estruturas de dados podem fornecer duas visualizações dos dados: (1) uma predição exata de tendências, com base em períodos de observação anteriores; e (2) um resumo de observações recentes, durante um período de observação atual.
A normalização que pode ser desempenhada no fim de cada período de coleta P inclui converter as contagens em porcentagens ou probabilidades, ou outras tarefas de normalização. A normalização pode ser desempenhada por uma função Normalizar(). A função Normalizar() também é responsável por suprimir uma estrutura do tipo árvore de tendência (para uma tendência hierárquica) para remover quaisquer dados de ocorrência pequena que não constituam uma tendência. Isso é desejável uma vez que irá prevenir que eventos que ocorrem de maneira não frequente se agreguem com o tempo e pareçam, de maneira falsa, como uma tendência depois de algum longo período de tempo.
Existe uma possibilidade de que o algoritmo de detecção de tendência possa envolver alguma quantidade de erro devido aos falsos positivos. Por exemplo, o algoritmo de detecção de tendência pode estimar, incorretamente, que uma tendência está presente com base em algumas poucas observações. No entanto, à medida que mais observações são coletadas, em períodos de coleta adicionais, o algoritmo de detecção de tendência pode perceber que essas observações não representam uma tendência. Se esses erros não forem removidos das estruturas de dados, então essas observações errôneas poderiam se agregar com o tempo, e podem parecer, de modo incorreto, como tendências maiores. Para evitar tais erros, as estruturas de dados podem ser examinadas e quaisquer erros ou inexatidões podem ser removidos.
Uma função Condensar() pode ser definida para examinar uma estrutura de dados de tendência para detectar quaisquer inexatidões, e re-estruturar a estrutura de dados conforme apropriado. Um intervalo de condensar pode ser definido para indicar o intervalo no qual a função Conden- sar() deve desempenhar sua detecção de erro e tarefas de re-estruturação. Os tamanhos relativos de P e C irão variar dependendo da aplicação em particular. P pode ser a mesma que C, P pode ser menor que C, ou P pode ser maior que C.
O algoritmo de detecção de tendência também pode definir uma função Atualizar(), que é responsável por fazer a observação de corrente de dados mais recente, e armazenar as observações de corrente de dados em uma estrutura de dados de tendência do usuário (por exemplo, estrutura de dados de tendência 212 na figura 2). Esta etapa irá envolver, tipicamente, fazer predições sobre se um evento observado é parte de uma tendência, e ajustar a estrutura de dados de maneira apropriada.
A figura 4 retrata a detecção de tendência desempenhada pelo módulo de detecção de tendência 202 da figura 2, para um atributo que cor-responde a uma tendência plana. À medida que a corrente de dados contínua é recebida, uma contagem de tendência é atualizada (em 402) se um pacote de dados for recebido, ou seja, corresponde à tendência. Por exemplo, se um pacote de dados for recebido, que indica que o usuário visitou uma URL em particular, então a contagem para a tendência URL correspondente pode ser acrescida. A atualização pode ser desempenhada pela função Atualizar() discutida acima.
Nota-se também que a estrutura de dados de tendência (212 na figura 2) associada à tendência também pode ser atualizada (em 403). Por exemplo, a função Atualizar() pode especificar que algumas amostras de cada tendência podem ser coletadas.
O módulo de detecção de tendência 202 também pode normalizar (em 404) as contagens e remover a informação sobre a nãotendência a partir da estrutura de dados de tendência, tal como ao usar a função Norma- lizar() observada acima. Normalizar envolver converter contagens brutas de porcentagens, por exemplo, ou outros tipos de normalização. Com base nas contagens normalizadas, o módulo de detecção de tendência 202 identifica (em 406) as tendências menores ou maiores com base nos limites de tendência. A estrutura de dados de tendência é atualizada para refletir quaisquer tendências menores/maiores identificadas. O processo acima é repetido (em 408) durante o período de co- leta P presente.
Para uma tendência hierárquica, diversos algoritmos diferentes possíveis podem ser usados. Um algoritmo positivo é retratado na figura 5. O algoritmo positivo atualiza uma estrutura do tipo árvore (por exemplo, 310 na figura 3) para a tendência hierárquica de uma maneira de cima para baixo. Inicialmente, um nó é adicionado à estrutura de dados do tipo árvore (em 502) no nível atualmente mais geral. No começo, o nível atualmente mais geral é o nível da raiz da estrutura do tipo árvore. No entanto, à medida que este processo iterativamente avança para baixo na estrutura do tipo árvore, o nível atualmente mais baixo pode ser um nível inferior.
Com base nos itens de dados recebidos, este nó adicionado é atualizado (em 504), tal como ao usar a função Atualizar() até que um limite de tendência maior seja cruzado. Em outras palavras, ao usar a abordagem de cima para baixo, os nós de nível inferior na estrutura do tipo árvore não são adicionados à estrutura de dados do tipo árvore até que um nó de nível mais alto indique que ocorreu uma tendência maior.
Uma vez que um nó de tendência maior é identificado, os nós abaixo este nó de tendência maior nó são construídos (em 506). A informação sobre a nãotendência é suprimida (em 508), tal como ao usar a função Normalizar(). O processo se repete (em 510) durante o período de coleta P para, progressivamente, atualizar os nós da estrutura do tipo árvore.
Com a abordagem otimista, novos nós são adicionados à estrutura do tipo árvore de tendência se tais nós estiverem abaixo de um nó associado às tendências maiores. No entanto, a abordagem otimista pode omitir os nós. Para direcionar isso, um algoritmo de predição pode ser usado para predizer os nós que podem ser nós de tendência maior, e tais nós pre- ditivos podem, então, ser adicionados à estrutura do tipo árvore de tendência. Tais predições podem ser desempenhadas pela função Condensar(), por exemplo. Quaisquer nós preditos incorretamente podem ser suprimidos mais tarde pela função Normalizar().
A abordagem otimista é eficiente quanto à maneira computacional, uma vez que os nós de nível inferior não são adicionados na estrutura do tipo árvore de tendência até que uma tendência maior seja detectada em um nível mais alto. A abordagem otimista funciona bem na identificação de tendências para as aplicações nas quais as tendências dominantes existem, e podem não funcionar tão bem para as aplicações com as tendências menos dominantes.
A figura 6 mostra uma abordagem pessimista da detecção de tendência para uma tendência hierárquica. Com a abordagem pessimista, a estrutura do tipo árvore de tendência é construída (em 602) a partir de baixo para cima ao adicionar cada registro de dados à estrutura do tipo árvore de tendência. A contagem associada a cada nó adicionado à estrutura do tipo árvore de tendência é atualizada (em 604), tal como com a função Atuali- zar().
A informação sobre a nãotendência pode ser suprimida a partir da estrutura do tipo árvore de tendência (em 606), ao usar a função Normali- zar(). Também, os nós da folha são quebrados (em 608) em nós de tendência em níveis mais altos. Isso envolver agregar as contagens associadas aos nós de nível inferior para determinar se um nó de nível superior é indicativo de uma tendência maior. O processo se repete (em 610) para o período de coleta P.
A abordagem pessimista é intensiva quanto à maneira computacional, especialmente para as correntes de dados com um grande número de tendências menos dominantes, uma vez que todos os registros de dados são adicionados à estrutura do tipo árvore e suprimidos, mais adiante, se os registros de dados não forem associados às tendências maiores. A abordagem pessimista funciona bem para as aplicações com tendências menos dominantes, mas é dispendiosa, desnecessariamente, quanto à maneira computacional para as aplicações com tendências dominantes.
Um algoritmo de ajuste pode ser usado, o qual é similar ao algoritmo positivo retratado na figura 5. O algoritmo de ajuste leva em consideração as tendências menores assim como as tendências maiores. Com o algoritmo de ajuste, cada nó interno na estrutura do tipo árvore de tendência inclui uma lista de eventos omitidos (eventos associados aos registros de da dos não identificados como tendências maiores). No fim do período de coleta P, quaisquer desses eventos que correspondem a uma tendência menor são salvos; todos os outros eventos insignificantes são descartados. Usando-se a função Condensar(), a estrutura do tipo árvore é reconstruída para incluir os eventos de tendência menor (ao adicionar o nó descendente a partir de um dos nós internos da estrutura do tipo árvore de tendência).
Com base nas tendências maiores identificadas ao usar qualquer das técnicas descritas acima, os anúncios direcionados podem ser gerados e apresentados a um usuário em uma estação móvel em uma rede de comunicações sem fio.
Usando-se as técnicas de acordo com algumas modalidades, uma técnica eficiente é fornecida para fornecer anúncios direcionados (ou outra informação personalizada) que não envolva armazenar todos os registros de dados recebidos em uma corrente de entrada. Deste modo, a extração de registros de dados pode ser possibilitada sem ter que fornecer uma infraestrutura de gerenciamento e armazenamento de dados grande e dispendiosa. Os operadores de serviço associados às redes de comunicações sem fio pode, então, levar a vantagem das oportunidades de renda sem ter que investir em infraestrutura dispendiosa.
As instruções associadas ao software descritas acima (por exemplo, módulo de detecção de tendência 202, módulo de anúncio direcionado 218, etc., na figura 1) podem ser carregadas para a execução em um processador (por exemplo, CPUs 204 e 224 na figura 1). O processador inclui microprocessadores, microcontroladores, módulos processadores ou subsistemas (que incluem um ou mais microprocessadores ou microcontro- ladores), ou outros dispositivos de controle ou de computação. Um "processador" pode se referir a um único componente ou a diversos componentes.
Os dados e instruções (do software) são armazenados em respectivos dispositivos de armazenamento, os quais são implementados como uma ou mais mídia de armazenamento usável por computador ou legível por computador. A mídia de armazenamento inclui diferentes formas de memória que incluem dispositivos semicondutores de memória, tais como memórias de acesso aleatório dinâmica ou estática (DRAMs ou SRAMs), memórias apenas de leitura apagável e programável (EPROMs), memórias apenas de leitura eletricamente apagável e programável (EEPROMs) e memórias rápidas; discos magnéticos, tais como discos fixos, flexíveis e removíveis; outra mídia magnética que inclui fita; e mídia óptica, tal como discos compactos (CDs) ou discos de vídeo digitais (DVDs).
Na descrição anterior, inúmeros detalhes são estabelecidos para fornecer uma compreensão da presente invenção. No entanto, será compreendido por aqueles versados na técnica que a presente invenção pode ser praticada sem esses detalhes. Muito embora a invenção tenha sido descrita com relação a um número de modalidades limitado, aqueles versados na técnica irão observar inúmeras modificações e variações dela. Pretende-se que as reivindicações em anexo cubram tais modificações e variações à medida

Claims (17)

1. Método de fornecer informação personalizada a um usuário de uma estação móvel (112), caracterizado por compreender: receber, em um nó de rede de comunicações sem fio (200), uma corrente de dados (208) associada ao usuário; identificar, no nó de rede de comunicações sem fio (200), uma primeira tendência associada a pelo menos um primeiro atributo na corrente de dados (208) identificando um nível de utilização associado ao primeiro atributo excedendo um primeiro limite pré-definido, e realizando um primeiro algoritmo de detecção de tendência se o primeiro atributo está associado a uma tendência plana e realizando um segundo algoritmo de detecção de tendência se o primeiro atributo está associado a uma tendência hierárquica, sendo uma tendência o nível de utilização associado ao primeiro atributo que excede o limite pré-definido; selecionar informação personalizada com base na primeira ten-dência identificada; e enviar, através do nó de rede de comunicações sem fio (200), a informação personalizada para a apresentação ao usuário na estação móvel (112).
2. Método, de acordo com a reivindicação 1, caracterizado por enviar a informação personalizada compreender enviar a informação para a publicidade com base na primeira tendência identificada.
3. Método, de acordo com a reivindicação 1, caracterizado por compreender adicionalmente: armazenar os itens selecionados dos dados que são representa-tivos da primeira tendência; e descartar outros itens dos dados que não são representativos da primeira tendência.
4. Método, de acordo com a reivindicação 3, caracterizado por compreender adicionalmente: identificar uma segunda tendência associada a um segundo atributo na corrente de dados (208); com base na segunda tendência identificada, enviar informação personalizada adicional para a apresentação ao usuário na estação móvel (112).
5. Método, de acordo com a reivindicação 4, caracterizado por compreender adicionalmente: armazenar itens adicionais selecionados dos dados que são re-presentativos da segunda tendência; e descartar outros itens dos dados que não são representativos ou da primeira tendência ou da segunda tendência.
6. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que os itens selecionados são armazenados em uma estrutura de dados, o método compreendendo adicionalmente: suprimir os itens a partir da estrutura de dados que não são indi-cativos da primeira tendência.
7. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que a primeira tendência é uma tendência hierárquica, e em que os itens selecionados são armazenados em uma estrutura do tipo árvore que possui nós em múltiplos níveis, o método compreendendo adicionalmente: construir a estrutura do tipo árvore de uma maneira de cima para baixo.
8. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que a primeira tendência é uma tendência hierárquica, e em que os itens selecionados são armazenados em uma estrutura do tipo árvore que possui nós em múltiplos níveis, o método compreendendo adicionalmente: construir a estrutura do tipo árvore de uma maneira de baixo pa-ra cima.
9. Método, de acordo com a reivindicação 1, caracterizado por compreender adicionalmente: armazenar itens selecionados dos dados que são representati-vos da primeira tendência em um primeiro tipo de estrutura de dados em resposta a determinação de que o primeiro atributo está associado a uma tendência plana; e armazenar os itens selecionados dos dados que são representa-tivos da primeira tendência em uma estrutura do tipo árvore em resposta à determinação de que o primeiro atributo está associado a uma tendência hierárquica.
10. Método, de acordo com a reivindicação 1, caracterizado por compreender adicionalmente: definir um primeiro limite indicativo de uma tendência menor pa-ra o primeiro atributo; definir um segundo limite indicativo de uma tendência maior para o primeiro atributo; e em que identificar a primeira tendência compreende identificar a tendência maior para o primeiro atributo.
11. Método, de acordo com a reivindicação 1, caracterizado pe-lo fato de que a primeira tendência identificada é uma dos seguintes tipos: tipo uso baseado em porcentagem; tipo uso baseado em cardinalidade; tipo uso baseado em intervalo; e tipo uso baseado em volume, o método com-preendendo adicionalmente: definir um ou mais limites para a primeira tendência identificada com base no tipo da tendência.
12. Nó de rede (200) para uso em uma rede de comunicações (100), caracterizado pelo fato de compreende: uma interface para receber uma corrente de dados (208) associ-ada a um usuário de uma estação móvel (112); um processador (204) para: identificar uma primeira tendência associada a pelo menos um primeiro atributo na corrente de dados (208) identificando um nível de utiliza-ção associado ao primeiro atributo excedendo um primeiro limite pré- definido, e realizando um primeiro algoritmo de detecção de tendência se o primeiro atributo está associado a uma tendência plana e realizando um se-gundo algoritmo de detecção de tendência se o primeiro atributo está asso-ciado a uma tendência hierárquica, sendo a tendência um nível de utilização associado ao primeiro atributo que excede o limite pré-definido; selecionar informação personalizada com base na primeira ten-dência identificada; enviar a informação personalizada para apresentação ao usuário na estação móvel (112); e fornecer um apontador para os itens selecionados dos dados que foram armazenados para a primeira tendência identificada.
13. Nó de rede, de acordo com a reivindicação 12, caracteriza-do pelo fato de que o processador dever descartar outros dados não associ-ados à primeira tendência identificada.
14. Nó de rede, de acordo com a reivindicação 12, caracteriza-do pelo fato de que o processador dever, adicionalmente: armazenar os itens selecionados em um primeiro tipo de estrutu-ra de dados em resposta a determinação de que o atributo está associado a uma tendência plana; e armazenar os itens selecionados dos dados em uma estrutura do tipo árvore em resposta à determinação de que o atributo está associado a uma tendência hierárquica.
15. Nó de rede, de acordo com a reivindicação 12, caracteriza-do pelo fato de que a informação personalizada inclui a informação para a publicidade direcionada.
16. Meio de armazenamento legível por computador compreen-dendo instruções, caracterizado pelo fato de as instruções, quando execu-tadas por um processador (204) de um nó de rede de comunicações sem fio (200), fazem com que o processador: receba uma corrente de dados (208) associada a um usuário de uma estação móvel (112); identifique uma primeira tendência associada a pelo menos um primeiro atributo na corrente de dados (208) identificando um nível de utiliza-ção associado ao primeiro atributo excedendo um primeiro limite pré- definido, e realizando um primeiro algoritmo de detecção de tendência se o primeiro atributo está associado a uma tendência plana e realizando um se-gundo algoritmo de detecção de tendência se o primeiro atributo está asso- ciado a uma tendência hierárquica, sendo uma tendência um nível de utilização associado ao primeiro atributo que excede o limite pré-definido; selecione informação personalizada com base na primeira ten-dência identificada; e envie a informação personalizada para a apresentação ao usuá rio em uma estação móvel.
17. Meio, de acordo com a reivindicação 16, caracterizado pelo fato de que a informação personalizada inclui a informação para a publicidade direcionada.
BRPI0921941-2A 2008-11-20 2009-11-18 método de fornecer informação personalizada a um usuário de uma estação móvel, nó de rede para uso em uma rede de comunicações e meio de armazenamento legível por computador BRPI0921941B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/274,558 2008-11-20
US12/274,558 US8244224B2 (en) 2008-11-20 2008-11-20 Providing customized information to a user based on identifying a trend
PCT/IB2009/007499 WO2010058265A1 (en) 2008-11-20 2009-11-18 Providing customized information to a user based on identifying a trend

Publications (2)

Publication Number Publication Date
BRPI0921941A2 BRPI0921941A2 (pt) 2016-01-05
BRPI0921941B1 true BRPI0921941B1 (pt) 2021-05-11

Family

ID=42172416

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0921941-2A BRPI0921941B1 (pt) 2008-11-20 2009-11-18 método de fornecer informação personalizada a um usuário de uma estação móvel, nó de rede para uso em uma rede de comunicações e meio de armazenamento legível por computador

Country Status (9)

Country Link
US (5) US8244224B2 (pt)
EP (1) EP2347604A4 (pt)
JP (1) JP5722783B2 (pt)
KR (1) KR20110095874A (pt)
CN (1) CN102217331B (pt)
BR (1) BRPI0921941B1 (pt)
CA (1) CA2744076C (pt)
RU (1) RU2516762C2 (pt)
WO (1) WO2010058265A1 (pt)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8799068B2 (en) 2007-11-05 2014-08-05 Facebook, Inc. Social advertisements and other informational messages on a social networking website, and advertising model for same
US20120203831A1 (en) * 2011-02-03 2012-08-09 Kent Schoen Sponsored Stories Unit Creation from Organic Activity Stream
US8312486B1 (en) 2008-01-30 2012-11-13 Cinsay, Inc. Interactive product placement system and method therefor
US20110191809A1 (en) 2008-01-30 2011-08-04 Cinsay, Llc Viral Syndicated Interactive Product System and Method Therefor
US11227315B2 (en) 2008-01-30 2022-01-18 Aibuy, Inc. Interactive product placement system and method therefor
US9361365B2 (en) * 2008-05-01 2016-06-07 Primal Fusion Inc. Methods and apparatus for searching of content using semantic synthesis
WO2009137368A2 (en) 2008-05-03 2009-11-12 Mobile Media Now, Inc. Method and system for generation and playback of supplemented videos
US8244224B2 (en) 2008-11-20 2012-08-14 Research In Motion Limited Providing customized information to a user based on identifying a trend
US20110066495A1 (en) * 2009-09-11 2011-03-17 Yahoo! Inc. System and method for customizing ads in web and mobile applications
US8688519B1 (en) * 2009-12-30 2014-04-01 Google Inc. Targeting mobile applications through search query mining
US9699503B2 (en) 2010-09-07 2017-07-04 Opentv, Inc. Smart playlist
US10210160B2 (en) 2010-09-07 2019-02-19 Opentv, Inc. Collecting data from different sources
US8782033B2 (en) 2010-12-01 2014-07-15 Microsoft Corporation Entity following
US9424002B2 (en) 2010-12-03 2016-08-23 Microsoft Technology Licensing, Llc Meta-application framework
GB2502736A (en) 2011-02-23 2013-12-04 Bottlenose Inc System and method for analyzing messages in a network or across networks
KR102008930B1 (ko) 2011-08-29 2019-08-08 에이아이바이, 인크. 하나의 종단점으로부터 다른 종단점으로의 바이러스성 복사를 위한 컨테이너화된 소프트웨어
US8832092B2 (en) 2012-02-17 2014-09-09 Bottlenose, Inc. Natural language processing optimized for micro content
US9607330B2 (en) 2012-06-21 2017-03-28 Cinsay, Inc. Peer-assisted shopping
US10789631B2 (en) 2012-06-21 2020-09-29 Aibuy, Inc. Apparatus and method for peer-assisted e-commerce shopping
US9009126B2 (en) 2012-07-31 2015-04-14 Bottlenose, Inc. Discovering and ranking trending links about topics
US20140164434A1 (en) * 2012-12-10 2014-06-12 International Business Machines Corporation Streaming data pattern recognition and processing
US8762302B1 (en) 2013-02-22 2014-06-24 Bottlenose, Inc. System and method for revealing correlations between data streams
CN105556518A (zh) 2013-09-11 2016-05-04 辛赛股份有限公司 实况视频内容的动态绑定
EP3050017A4 (en) 2013-09-27 2017-06-21 Cinsay, Inc. Apparatus and method for supporting relationships associated with content provisioning
CN105579997A (zh) 2013-09-27 2016-05-11 辛赛股份有限公司 补充内容的n-层复制
US10009246B1 (en) * 2014-03-28 2018-06-26 Amazon Technologies, Inc. Monitoring service
RU2643434C2 (ru) 2014-09-12 2018-02-01 Общество С Ограниченной Ответственностью "Яндекс" Способ предоставления пользователю сообщения посредством вычислительного устройства и машиночитаемый носитель информации
KR20160133893A (ko) 2015-05-14 2016-11-23 이민열 맞춤 의류 주문 방법 및 장치
US9965604B2 (en) 2015-09-10 2018-05-08 Microsoft Technology Licensing, Llc De-duplication of per-user registration data
US10069940B2 (en) 2015-09-10 2018-09-04 Microsoft Technology Licensing, Llc Deployment meta-data based applicability targetting
US11392835B2 (en) * 2018-08-31 2022-07-19 Accentureglobal Solutions Limited Employee concierge
US20220350825A1 (en) * 2020-11-06 2022-11-03 Khoros, Llc Automated response engine to implement internal communication interaction data via a secured omnichannel electronic data channel and external communication interaction data

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0856993B1 (en) * 1992-12-09 2002-07-31 Discovery Communications, Inc. Set top terminal for cable television delivery systems
US5732128A (en) * 1996-02-29 1998-03-24 Lucent Technologies Inc. Method and apparatus for storing call feature data
US6714975B1 (en) 1997-03-31 2004-03-30 International Business Machines Corporation Method for targeted advertising on the web based on accumulated self-learning data, clustering users and semantic node graph techniques
US6076108A (en) 1998-03-06 2000-06-13 I2 Technologies, Inc. System and method for maintaining a state for a user session using a web system having a global session server
GB2341051B (en) * 1998-08-27 2003-03-19 Motorola Ltd Providing a service in a communication system
JP3501957B2 (ja) * 1998-08-28 2004-03-02 日本電信電話株式会社 位置関連情報検索方式
JP3493333B2 (ja) * 1999-06-09 2004-02-03 エイディシーテクノロジー株式会社 広告付き電話中継装置
JP3247360B2 (ja) * 1999-12-27 2002-01-15 安弘 檜野 ホームページ検索システム及びホームページ検索用データベースの記憶装置
US7139723B2 (en) * 2000-01-13 2006-11-21 Erinmedia, Llc Privacy compliant multiple dataset correlation system
US6801945B2 (en) * 2000-02-04 2004-10-05 Yahoo ! Inc. Systems and methods for predicting traffic on internet sites
WO2001065803A1 (fr) * 2000-02-28 2001-09-07 Mitsubishi Denki Kabushiki Kaisha Adapteur reseau de communications pour mobiles
JP2001352289A (ja) * 2000-06-09 2001-12-21 Quick Search:Kk マーケティングシステムおよびマーケティング方法
US6785666B1 (en) * 2000-07-11 2004-08-31 Revenue Science, Inc. Method and system for parsing navigation information
US20020077880A1 (en) 2000-11-27 2002-06-20 Gordon Donald F. Method and apparatus for collecting and reporting consumer trend data in an information distribution system
JP4442027B2 (ja) * 2000-12-05 2010-03-31 ソニー株式会社 通信システムおよび通信方法
US7143088B2 (en) * 2000-12-15 2006-11-28 The Johns Hopkins University Dynamic-content web crawling through traffic monitoring
US20030167192A1 (en) * 2000-12-29 2003-09-04 The Children's Mercy Hospital System and method for monitoring and analyzing data trends of interest within an organization
US7818224B2 (en) * 2001-03-22 2010-10-19 Boerner Sean T Method and system to identify discrete trends in time series
US7194477B1 (en) * 2001-06-29 2007-03-20 Revenue Science, Inc. Optimized a priori techniques
RU2192049C1 (ru) * 2001-12-26 2002-10-27 Гаврилов Сергей Анатольевич Способ распространения рекламно-информационных сообщений (варианты)
JP4185315B2 (ja) * 2002-06-10 2008-11-26 松下電器産業株式会社 ネットワーク上の端末位置特定方法及びネットワークシステム
JP2004064170A (ja) * 2002-07-25 2004-02-26 Matsushita Electric Ind Co Ltd 電子広告システム及びそれに用いる携帯端末
US7627872B2 (en) * 2002-07-26 2009-12-01 Arbitron Inc. Media data usage measurement and reporting systems and methods
RU2254611C2 (ru) * 2003-03-13 2005-06-20 Общество с ограниченной ответственностью "Мобилити" Способ предоставления пользователям мобильных устройств электронной связи актуальной коммерческой информации на альтернативной основе (варианты) и информационная система для его осуществления (варианты)
US7917152B2 (en) * 2003-06-27 2011-03-29 Nokia Corporation Enhanced fast handover procedures
US7302445B2 (en) 2003-08-29 2007-11-27 International Business Machines Corporation Method, system, and storage medium for providing a dynamic, multi-dimensional commodity modeling process
JP3532561B2 (ja) * 2003-09-01 2004-05-31 パイオニア株式会社 情報提供サーバ及び方法
JP2005107728A (ja) * 2003-09-29 2005-04-21 Hitachi Software Eng Co Ltd 携帯電話端末における広告表示システム及び広告表示方法
JP2005148289A (ja) * 2003-11-13 2005-06-09 Nec Fielding Ltd 広告配信システム,方法およびプログラム
CA2563478A1 (en) * 2004-04-16 2005-10-27 James A. Aman Automatic event videoing, tracking and content generation system
CA2596930A1 (en) * 2005-02-07 2006-08-10 Adzilla, Inc. Method and system of targeting content
US7240834B2 (en) * 2005-03-21 2007-07-10 Mitsubishi Electric Research Laboratories, Inc. Real-time retail marketing system and method
GB0508468D0 (en) * 2005-04-26 2005-06-01 Ramakrishna Madhusudana Method and system providing data in dependence on keywords in electronic messages
EP1878209A4 (en) * 2005-04-29 2009-12-02 Hingi Ltd METHOD AND DEVICE FOR PROVISIONING CONTENT DATA
US7848765B2 (en) * 2005-05-27 2010-12-07 Where, Inc. Location-based services
US9300790B2 (en) * 2005-06-24 2016-03-29 Securus Technologies, Inc. Multi-party conversation analyzer and logger
US20070100779A1 (en) * 2005-08-05 2007-05-03 Ori Levy Method and system for extracting web data
US20070074258A1 (en) * 2005-09-20 2007-03-29 Sbc Knowledge Ventures L.P. Data collection and analysis for internet protocol television subscriber activity
US20070239527A1 (en) * 2006-03-17 2007-10-11 Adteractive, Inc. Network-based advertising trading platform and method
US20070286169A1 (en) * 2006-05-18 2007-12-13 Anthony Roman Radio flag (focused listening and advertising guide) system and method
JP4405500B2 (ja) * 2006-12-08 2010-01-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 傾向分析システムの評価方法および装置
US8577005B2 (en) * 2006-10-18 2013-11-05 First Orion Corp. Automatic reporting of unwanted or unlawful telephonic communication
US8108501B2 (en) * 2006-11-01 2012-01-31 Yahoo! Inc. Searching and route mapping based on a social network, location, and time
KR20090076798A (ko) * 2006-11-08 2009-07-13 가부시키가이샤 시리우스 테크놀로지즈 광고정보 제공 방법, 광고정보 제공 시스템 및 광고정보 제공 프로그램
US9760891B2 (en) 2007-04-02 2017-09-12 Nokia Technologies Oy Providing targeted advertising content to users of computing devices
WO2008134028A1 (en) * 2007-04-27 2008-11-06 Grape Technology Group Inc. System and method for generating and utilizing organically grown content in a directory assistance environment
US20090089169A1 (en) * 2007-09-28 2009-04-02 Google Inc. Event Based Serving
US8503991B2 (en) * 2008-04-03 2013-08-06 The Nielsen Company (Us), Llc Methods and apparatus to monitor mobile devices
US20090319341A1 (en) * 2008-06-19 2009-12-24 Berkobin Eric C Methods and systems for obtaining vehicle entertainment statistics
US8548503B2 (en) * 2008-08-28 2013-10-01 Aol Inc. Methods and system for providing location-based communication services
US8244224B2 (en) 2008-11-20 2012-08-14 Research In Motion Limited Providing customized information to a user based on identifying a trend

Also Published As

Publication number Publication date
RU2011120058A (ru) 2012-12-27
US20130012176A1 (en) 2013-01-10
US9253268B2 (en) 2016-02-02
US20120296738A1 (en) 2012-11-22
CN102217331B (zh) 2014-09-03
CA2744076A1 (en) 2010-05-27
JP2012509633A (ja) 2012-04-19
JP5722783B2 (ja) 2015-05-27
BRPI0921941A2 (pt) 2016-01-05
CN102217331A (zh) 2011-10-12
US20100124911A1 (en) 2010-05-20
US20130013772A1 (en) 2013-01-10
EP2347604A1 (en) 2011-07-27
US8244224B2 (en) 2012-08-14
CA2744076C (en) 2017-05-16
WO2010058265A1 (en) 2010-05-27
US8849256B2 (en) 2014-09-30
US20130013801A1 (en) 2013-01-10
US8649779B2 (en) 2014-02-11
EP2347604A4 (en) 2014-02-26
RU2516762C2 (ru) 2014-05-20
US8649778B2 (en) 2014-02-11
KR20110095874A (ko) 2011-08-25

Similar Documents

Publication Publication Date Title
BRPI0921941B1 (pt) método de fornecer informação personalizada a um usuário de uma estação móvel, nó de rede para uso em uma rede de comunicações e meio de armazenamento legível por computador
US8229470B1 (en) Correlating user interests and location in a mobile network
De Choudhury et al. How does the data sampling strategy impact the discovery of information diffusion in social media?
US9311386B1 (en) Categorizing network resources and extracting user interests from network activity
JP5444477B2 (ja) キャッシングのための方法、サーバ、コンピュータプログラム及びコンピュータプログラム製品
US11468069B1 (en) Graph-based data storage for real-time content suggestions
CN109756528B (zh) 频率控制方法及装置、设备、存储介质、服务器
US20130103678A1 (en) Processing Search Queries Using A Data Structure
CN109788319B (zh) 一种数据缓存方法
CN111277461B (zh) 一种内容分发网络节点的识别方法、系统及设备
KR101172885B1 (ko) 디바이스 식별자를 이용한 디바이스 프로파일 제공 시스템 및 방법
Wang et al. Location-aware influence maximization over dynamic social streams
EP3382981B1 (en) A user equipment and method for protection of user privacy in communication networks
Weerasinghe et al. Adaptive Context Caching for Efficient Distributed Context Management Systems
Hossain et al. Privacy-aware cloaking technique in location-based services
Ju et al. Location privacy protection for smartphone users using quadtree entropy maps
US20160212069A1 (en) Cooperative management of client device cache memory in an http session
WO2018077138A1 (zh) 数据配置方法、索引管理方法、相关装置以及计算设备
US10033826B2 (en) Token based dynamic cache-busting
WO2018099177A1 (zh) 一种扩展潜在用户的方法及装置
WO2020199029A1 (zh) 一种数据处理方法及其装置
US20150358419A1 (en) Method and apparatus for caching user generated content messages
Hossain et al. K-anonymous cloaking algorithm based on weighted adjacency graph for preserving location privacy
Gao et al. Window query processing with proxy cache
CN116756057A (zh) 共享缓存的管理方法、装置及存储介质

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: ROCKSTAR BIDCO, LP (US)

B25A Requested transfer of rights approved

Owner name: 2256355 ONTARIO LIMITED (CA)

B25A Requested transfer of rights approved

Owner name: RESEARCH IN MOTION LIMITED (CA)

B25D Requested change of name of applicant approved

Owner name: BLACKBERRY LIMITED (CA)

B25G Requested change of headquarter approved

Owner name: BLACKBERRY LIMITED (CA)

B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: AS CLASSIFICACOES ANTERIORES ERAM: H04W 4/00 , G06Q 30/00

Ipc: H04L 29/08 (1990.01), G06Q 30/02 (2012.01)

B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 11/05/2021, OBSERVADAS AS CONDICOES LEGAIS.