BR112012017530B1 - Gerenciamento de uma base de dados de localização para sistema de posicionamento com base em rede - Google Patents

Gerenciamento de uma base de dados de localização para sistema de posicionamento com base em rede Download PDF

Info

Publication number
BR112012017530B1
BR112012017530B1 BR112012017530-0A BR112012017530A BR112012017530B1 BR 112012017530 B1 BR112012017530 B1 BR 112012017530B1 BR 112012017530 A BR112012017530 A BR 112012017530A BR 112012017530 B1 BR112012017530 B1 BR 112012017530B1
Authority
BR
Brazil
Prior art keywords
access point
location
geographic
locations
mobile device
Prior art date
Application number
BR112012017530-0A
Other languages
English (en)
Other versions
BR112012017530A2 (pt
Inventor
Ronald K. Huang
Markus Fischer
Seejo Pylappan
Original Assignee
Apple Inc
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 Apple Inc filed Critical Apple Inc
Publication of BR112012017530A2 publication Critical patent/BR112012017530A2/pt
Publication of BR112012017530B1 publication Critical patent/BR112012017530B1/pt

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/0205Details
    • G01S5/0242Determining the position of transmitters to be subsequently used in positioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)
  • Telephonic Communication Services (AREA)

Abstract

gerenciamento de uma base de dados de localização para sistema de posicionamento com base em rede. a presente invenção refere-se a métodos, produtos de programa e sistemas para o gerenciamento de uma base de dados de localização são descritos. um servidor pode receber a informação de localização a partir dos dispositivos móveis cientes da localização (por exemplo, dispositivos ativados com gps) localizados dentro de uma faixa de comunicação dos pontos de acesso de uma rede de comunicações sem fio. o servidor pode calcular as localizações geográficas medias utilizando as localizações recebidas para cada ponto de acesso. com base nas localizações geográficas média, o servidor pode designar os pontos de acesso para as células de uma grade geográfica. o servidor pode filtrar os pontos de acesso em cada célula com base em popularidade, estabilidade, longevidade, e frescor dos pontos de acesso e dados recebidos. quando um segundo dispositivo móvel conecta a um ponto de acesso em uma célula, a localização do segundo dispositivo móvel pode ser determinado com base nas localizações de pontos de acesso na célula e células vizinhas.

Description

Campo Técnico
A presente invenção refere-se geralmente à determinação de uma localização geográfica para um dispositivo móvel.
Antecedentes
Uma rede de comunicações sem fio pode empregar várias tec-nologias para dispositivos se comunicarem sem fio. Por exemplo, uma rede local sem fio (WLAN) pode incluir uma rede de área local (por exemplo, uma rede de computador cobrindo uma área física relativamente pequena, como uma residência, um escritório ou um pequeno grupo de edifícios tal como uma escola) que utiliza ondas de rádio ao invés de fios para comunicação entre os nós (por exemplo, dispositivos) da rede. Alguns exemplos da tecnologia WLAN incluem WiFi, que pode incluir qualquer produto WLAN que seja baseado em qualquer padrão IEEE 802.11.
A conexão sem fio entre um remetente e um destinatário pode empregar tecnologia de frequência de rádio (RF), uma frequência dentro do espectro eletromagnético associado com a propagação de ondas de rádio. Algumas frequências de rádio ilustrativas utilizadas em WiFi são de 2,5 Gi-gahertz (GHz) ou 5 GHz. Quando uma corrente de RF é suprida para uma antena, um campo eletromagnético pode ser criado. O campo eletromagnético pode propagar através do espaço. Um componente de uma rede de co-municações sem fio pode ser um ponto de acesso (AP). O ponto de acesso pode permitir que um dispositivo móvel sem fio se comunique com uma rede com fio. Uma função do ponto de acesso pode ser a difusão de um sinal sem fio que computadores equipados com adaptadores sem fio ou dispositivos móveis sem fio podem detectar e no qual podem "sintonizar".
Um ponto de acesso de uma rede WiFi pode cobrir uma área geográfica determinada pela intensidade dos sinais enviados a partir de e recebidos pelo ponto de acesso e características físicas da área geográfica. Um numero variável de dispositivos móveis pode ser localizado dentro de uma faixa de comunicação do ponto de acesso. Um dispositivo móvel pode estar dentro da faixa de comunicação de múltiplos pontos de acesso ao mesmo tempo. Um dispositivo móvel pode algumas vezes determinar sua localização utilizando as localizações dos pontos de acesso aos quais o dispositivo móvel pode se comunicar, pela triangulação de sua localização com base na intensidade dos sinais recebidos dos pontos de acesso, se as localizações dos pontos de acesso forem conhecidas.
Sumário
Métodos, produtos de programa e sistemas para o gerenciamento de uma base de dados de localização do sistema de posicionamento com base em rede são descritos. Um computador servidor pode receber informação de localização dos dispositivos móveis cientes de localização (por e- xemplo, dispositivos com GPS) localizados dentro de uma faixa de comunicação de pontos de acesso de uma rede de comunicações sem fio. O computador servidor pode calcular as localizações geográficas médias utilizando as localizações recebidas para cada ponto de acesso. Com base nas localizações geográficas médias, o computador servidor pode designar os pontos de acesso às células de uma grade geográfica. O computador servidor pode filtrar os pontos de acesso em cada célula com base em popularidade, estabilidade, longevidade, e frescor do ponto de acesso e dos dados recebidos. O computador servidor pode armazenar identificadores dos pontos de acesso em associação com as localizações geográficas médias em uma base de dados de localização.
Um dispositivo móvel pode determinar sua localização utilizando localizações de pontos de acesso aos quais o dispositivo móvel pode conectar. O dispositivo móvel, mediante conexão com um ponto de acesso em uma célula em uma grade geográfica, pode solicitar e receber informação de localização do ponto de acesso, localizações de outros pontos de acesso na célula, e localizações dos pontos de acesso nas células vizinhas à célula. O dispositivo móvel pode identificar as localizações da informação recebida que são associadas com os pontos de acesso dentro de uma faixa de comunicação do dispositivo móvel. O dispositivo móvel pode calcular uma locali zação geográfica média utilizando as localizações identificadas. O dispositivo móvel pode calcular adicionalmente uma distância entre cada localização e a média calculada. O dispositivo móvel pode excluir as localizações que estão suficientemente distantes da média. O dispositivo móvel pode repetir o cálculo e exclusão até que um nível de precisão seja alcançado para a localização geográfica média. O dispositivo móvel pode exibir a informação em um monitor de mapa do dispositivo móvel.
As técnicas para o gerenciamento de uma base de dados de lo-calização do sistema de posicionamento com base em rede podem ser im-plementadas para alcançar as seguintes vantagens ilustrativas. Uma área geográfica pode ser associada com um ponto de acesso da rede de comuni-cações sem fio quando a localização real do ponto de aceso é desconhecida. A área geográfica pode corresponder a uma área na qual um dispositivo móvel real que está localizado dentro de uma faixa de comunicação do ponto de acesso deve estar localizado, ao invés e a localização real do ponto de acesso. A área geográfica pode ser estimada com base nos dados em tempo real dos dispositivos móveis, que podem ser atualizados com frequência, e, portanto, podem fornecer informação de localização atualizada. Se um ponto de acesso tiver movido para longe ou for desligado, o ponto de acesso pode ser removido da base de dados para evitar a determinação de localização inválida. A área geográfica pode ser calculada com base nos dados recebidos dos dispositivos móveis em vários momentos do dia, portanto, a á- rea geográfica pode corresponder a vários padrões de utilização, por exemplo, para tempo de deslocamento, horário comercial, ou noite.
Os pontos de acesso associados com a área geográfica podem ser utilizados para determinar uma localização de um dispositivo móvel não ativado com GPS que é localizado dentro de uma faixa de comunicação do ponto de acesso. A transmissão de dados entre o ponto de acesso e o dispositivo móvel pode ocorrer no momento quando o dispositivo móvel está inativo, a fim de evitar a interferência com a comunicação normal entre o dispositivo móvel e o ponto de acesso. Um sistema de determinação de localizações de dispositivos móveis utilizando localizações dos pontos de a- cesso pode limitar automaticamente seu consumo de larguras de banda dos dispositivos móveis, visto que o sistema pode transmitir as localizações dos pontos de acesso que estão diretamente dentro da faixa de comunicação dos dispositivos móveis além de localizações de pontos de acesso em áreas vizinhas. Dessa forma, atualizações frequentes e retransmissões são desne-cessárias mesmo quando os dispositivos móveis se movem. Os mecanismos de filtragem dos pontos de acesso em cada célula podem limitar adicionalmente uma quantidade de dados transmitidos para o dispositivo móvel em cada transmissão. Um dispositivo móvel pode estimar sua localização de forma mais precisa que, por exemplo, utilizando-se a intensidade de sinal para estimar a localização, visto que a intensidade de sinal pode variar devido a várias interferências. Os dispositivos móveis com GPS podem levar vantagem das localizações dos pontos de acesso sem fio quando, por e- xemplo, os sinais GPS estão fracos (por exemplo, dentro de edifícios).
Os detalhes de uma ou mais implementações de gerenciamento de uma base de dados de localização do sistema de posicionamento com base em rede são apresentados nos desenhos em anexo e na descrição abaixo. Outras características, aspectos e vantagens do gerenciamento de uma base de dados de localização serão aparentes a partir da descrição, dos desenhos e das reivindicações.
Breve Descrição dos Desenhos A figura 1a é uma vista geral das técnicas de gerenciamento de uma base de dados de localização; A figura 1b ilustra técnicas de gerenciamento de uma base de dados de localização em um espaço tridimensional; As figuras de 2a a 2c ilustram estágios ilustrativos da determinação de localizações associadas com pontos de acesso em WLAN utilizando dispositivos móveis; A figura 2d ilustra um estágio ilustrativo de determinação de lo-calizações associadas com os pontos de acesso em WLAN utilizando dispo-sitivos móveis em um espaço tridimensional; As figuras 3a e 3b são fluxogramas ilustrando processos ilustra- tivos de determinação de localizações associadas com os pontos de acesso em WLAN utilizando dispositivos móveis; A figura 3c é um diagrama em bloco ilustrando um sistema ilustrativo implementando as técnicas de gerenciamento de uma base de dados de localização; A figura 4a ilustra técnicas para determinação das localizações de dispositivos móveis utilizando uma base de dados de localização no sistema de posicionamento com base em rede; A figura 4b é um fluxograma ilustrando um processo ilustrativo de determinação de uma localização de um dispositivo móvel utilizando uma base de dados de localização; A figura 4c é um fluxograma ilustrando um processo de múltiplas passagens adaptativo ilustrativo de determinação de uma localização de um dispositivo móvel; A figura 5 ilustra uma interface de usuário ilustrativa para determinar as localizações dos dispositivos móveis utilizando localização de pontos de acesso sem fio; A figura 6 é um diagrama em bloco de uma arquitetura de sistema ilustrativa para implementar as características e operações descritas com referencia às figuras de 1 a 5; A figura 7 é um diagrama em bloco de uma arquitetura ilustrativa de um dispositivo móvel. Símbolos de referência similares nos vários desenhos indicam elementos similares.
Descrição Detalhada
Visão Geral do Gerenciamento de uma Base de Dados de Localização
A figura 1a é uma visão geral das técnicas de gerenciamento de uma base de dados de localização para o sistema de posição com base em rede. Uma WLAN pode ser uma rede de comunicações por rádio que inclui um número de pontos de acesso 105. Os pontos de acesso 105 podem incluir um dispositivo de hardware ou software de computador que possa agir como um cubo de comunicação para dispositivos sem fio para conectar a uma rede com fio. Os múltiplos pontos de acesso 105 podem ser distribuídos em uma área (por exemplo, um edifício comercial ou um aeroporto).
O ponto de acesso 105 pode se comunicar com os dispositivos sem fio (por exemplo, dispositivos móveis 108 e 110) utilizando vários protocolos de comunicação. Em algumas implementações, o ponto de acesso 105 pode ser um ponto de acesso de uma rede WiFi™, que implementa um protocolo com baseem IEEE 802.11 (porexemplo, IEEE 802.11a). Em algumas implementações, o ponto de acesso 105 pode ser um ponto de acesso de uma interoperacionalidade mundial para rede de acesso por micro-ondas (WiMAX) que implementa um protocolo com base em IEEE 802.16 (por e- xemplo, IEEE 802.16-2004 ou IEEE 802.16e-2005). O ponto de acesso 105 pode ter uma faixa de comunicação que pode alcançar do local do ponto de acesso 105 até qualquer lugar a menos de dez metros até várias centenas de metros, dependendo dos fatores incluindo configuração do ponto de a- cesso 105 e arredores físicos. Múltiplos dispositivos sem fio 108 e 110 podem conectar a um ponto de acesso quando os dispositivos móveis 108 e 110 estão dentro da faixa de comunicação do ponto de acesso 105. Por sua vez, os pontos de acesso 105 podem estar disponíveis para um único dispositivo móvel 108 ou 110 para conexão. Os dispositivos móveis 108 e 110 podem selecionar um ponto de acesso particular 105 ao qual os dispositivos móveis 108 e 110 podem conectar com base em vários fatores. Por exemplo, a seleção pode ser baseada no fato de se ou não o dispositivo móvel 108 está autorizado a conectar o ponto de aceso 104a, ou se o ponto de a- cesso 105a pode fornecer o sinal mais forte para a conexão sem fio para os dispositivos móveis 108.
O sistema pode determinar as áreas de localização 115 que estão associadas com os pontos de acesso 105. As áreas de localização 115 podem ser calculadas de modo que indiquem onde os dispositivos móveis 108 localizados dentro de uma faixa de comunicação dos pontos de acesso 105 devem estar localizados. O sistema pode realizar a determinação com base nas localizações conhecidas a partir dos dispositivos móveis 108 que estão localizados dentro de uma faixa de comunicação dos pontos de aces- so 105. Os dispositivos móveis 108 podem ser dispositivos móveis cientes de localização, por exemplo, dispositivos móveis ativados por GPS que possuem embutidos, ou acoplados aos mesmos, receptores que podem receber sinais GPS e determinar localizações utilizando os sinais GPS. Os dispositivos móveis cientes de localização 108 são representados como triângulos pretos na figura 1a. Quando os dispositivos móveis cientes de localização 108 estão localizados dentro de uma faixa de comunicação de um ponto de acesso em particular 105 (por exemplo, o ponto de acesso 105a), os dispositivos móveis cientes de localização 108 podem transmitir as localizações dos dispositivos para o ponto de acesso 105a. O ponto de acesso 105a pode retransmitir a transmissão além de um identificador do ponto de acesso 105a, para o sistema. O sistema pode determinar uma área de localização estimada 115a onde qualquer dispositivo móvel 108 ou 110 localizado dentro de uma faixa de comunicação do ponto de acesso 105a deve estar localizado. Nessa especificação, as áreas de localização estimadas 115 serão referidas como áreas de presença, para indicar que o dispositivo móvel 108 ou 110, quando localizado dentro de uma faixa de comunicação de um ponto de acesso particular 105 deve estar presente.
Para se calcular as áreas de presença 115, o sistema pode aplicar um processo interativo (por exemplo, pela realização de uma análise de múltiplas passagens). O processo interativo pode determinar uma área de presença (por exemplo, área de presença 115) que está associada com um ponto de acesso (por exemplo, ponto de acesso 105) como um círculo. O círculo pode ter um centro que corresponde a uma localização geográfica média calculada com base nas localizações dos dispositivos móveis cientes de localização 108 que são localizados dentro de uma faixa de comunicação do ponto de acesso 105. O círculo pode ter um raio que corresponde a uma margem de erro, que pode ser determinada, por exemplo, por uma distância entre uma localização de um dispositivo móvel 108 e uma localização geográfica média. Detalhes adicionais do processo interativo serão descritos abaixo com referência às figuras 2 e 3. O processo interativo pode ser executado periodicamente (por exemplo, a cada seis horas) para capturar dife- rentes padrões de utilização de acesso sem fio durante diferentes horas de um dia além de capturar movimentos em potencial dos pontos de acesso 105.
O sistema pode enviar informação das áreas de presença 115 para os dispositivos móveis, incluindo dispositivos móveis não ativados por GPS (por exemplo, dispositivo móvel 110), que estão localizados dentro de uma faixa de comunicação de pontos de acesso 105 de modo que o dispositivo móvel de recebimento possa determinar as localizações estimadas dos dispositivos utilizando áreas de presença 115. Por exemplo, se o dispositivo móvel 110 estiver localizado dentro de uma faixa de comunicação de ponto de acesso 105b, a localização do dispositivo móvel 110 pode ser estimada de modo a coincidir com a área de presença 115b que é associada com o ponto de acesso 105b.
Em uma determinada área (por exemplo, um aeroporto), inúmeros pontos de acesso 105 podem existir. Adicionalmente, um dispositivo móvel 110 pode ser móvel, pode ser lógico para enviar localizações dos pontos de acesso que não estão imediatamente dentro de uma faixa de comunicação do dispositivo móvel 110, mas estão perto o suficiente do dispositivo móvel 110, de modo que o dispositivo móvel 110 possa utilizar as localizações para rastrear seu movimento. Para evitar o envio de uma grande quantidade de dados de localização para o dispositivo móvel 110, o sistema pode filtrar os pontos de acesso 104 e as áreas de localização 115 de modo que apenas os dados de localização de um número limitado de pontos de acesso (por exemplo, o ponto de acesso 105a), ao invés de dados de localização de cada ponto de acesso que existe no mundo, sejam transmitidos. A filtragem pode ser baseada em vários fatores, incluindo popularidade, estabilidade, longevidade, e frescor das localizações 115 e pontos de acesso 104.
Para filtrar as localizações 115 e os pontos de acesso 105, o sistema pode criar uma grade geográfica 100 que contém as células 102. A célula 102 pode ser um polígono possuindo um formato substancialmente retangular, o polígono correspondendo a uma área geográfica identificável na grade geográfica 100 por uma latitude e uma longitude de um ponto de identificação da área geográfica (por exemplo, um centro ou um canto), e um tamanho (por exemplo, um comprimento medido em graus de longitude, e uma largura medida em graus de latitude). Cada célula 102 podendo ser utilizada como um recipiente que pode conter um determinado número de localizações. Por exemplo, a célula 102 pode ser um retângulo cujo comprimento é igual a 0,0005 graus meridianos (aproximadamente 56 metros) e cuja largura é de 0,0005 graus de latitude (largura em metros pode variar dependendo da latitude). A célula 102 pode ser configurada para manter um número (por exemplo, três) de áreas de presença 115 correspondentes aos pontos de acesso 105. Em algumas implementações, a célula 102 pode "manter" a área de presença 115 se o centro da área de presença 115 estiver localizado dentro dos limites da célula 102. As áreas de presença 115 podem ser selecionadas a partir de todas as áreas de presença 115 que estão localizadas na célula 102 com base em um ou mais fatores de confiabilidade. A seleção pode ser baseada em vários critérios tal como popularidade, estabilidade, longevidade e frescor.
Um ponto de acesso particular (por exemplo, ponto de acesso 105b) e a área de presença associada com o ponto de acesso (por exemplo, área de presença 115b) não precisam ser localizados em uma mesma célula 102. Isso pode acontecer, por exemplo, quando o ponto de acesso 105b está localizado em um edifício na célula 102a e a maior parte dos dispositivos moveis 108 localizados dentro de uma faixa de comunicação do ponto de acesso 105b está localizada em outro edifício na célula 102b. Em algumas implementações, o sistema pode ignorar a localização real do ponto de a- cesso 105b.
Quando o dispositivo móvel 110 conecta a um ponto de acesso (por exemplo, o ponto de acesso 105a, cuja área de presença associada 115a está localizada na célula 102c), ou conectado ao sistema de outras formas (por exemplo, através de uma rede celular), o dispositivo móvel 110 pode receber uma atualização de localização do sistema. A atualização de localização pode incluir todas as áreas de presença 115 que estão localizadas na mesma célula onde a área de presença 115 está localizada (por e- xemplo, célula 102c). A atualização de localização pode incluir adicionalmente as áreas de presença 115 que são localizadas em outras células 102 (por exemplo, célula 102a e célula 102b) que são vizinhas da célula 102c na grade geográfica 100.
Quando o dispositivo móvel 110 conecta o ponto de acesso 105a, o dispositivo móvel 110 pode detectar outros pontos de acesso 105 (por exemplo, o ponto de acesso 105b) que estão disponíveis. O dispositivo móvel 110 pode identificar as áreas de presença (por exemplo, as áreas de presença 115a e 115b) para os pontos de acesso disponíveis. O dispositivo móvel 110 pode calcular uma localização atual do dispositivo móvel 110 utilizando vários algoritmos. Por exemplo, quando apenas uma área de presença 115a for identificada, o dispositivo móvel 110 pode designar a área de presença 115a como a localização atual do dispositivo móvel 110. Quando duas ou mais áreas de presença 115 são identificadas, o dispositivo móvel 110 pode calcular sua localização atual utilizando um processo interativo (por exemplo, uma análise de múltiplas passagens). O processo interativo pode calcular uma localização média das áreas de presença, calcular as distâncias entre as áreas de presença e a localização média, e excluir as áreas de presença que estão mais distantes da localização média. O dispositivo móvel 110 pode repetir as interações até que uma exigência de precisão seja satisfeita para determinação de uma localização do dispositivo móvel 110. O dispositivo móvel 110 pode designar a localização média como uma localização atual do dispositivo móvel 110 e exibir a localização média em um dispositivo de exibição de mapa.
Em algumas implementações, a atualização de localização recebida no dispositivo móvel 110 a partir do sistema pode incluir inúmeras células vizinhas de modo que uma área suficientemente grande (por exemplo, de um ou mais quilômetros quadrados) em torno da área de presença 115a possa ser coberta. Com base na atualização de localização que cobre a área grande, o dispositivo móvel 110 pode evitar ter que solicitar atualizações frequentes quando o dispositivo móvel 110 se move. O dispositivo móvel 110 pode ter oportunidades de receber informação de área de presença atualizada quando, por exemplo, o dispositivo móvel 110 está inativo ou, de outra forma, possui uma largura de banda de comunicação disponível.
A figura 1b ilustra o gerenciamento de uma base de dados de lo-calização em um espaço tridimensional. Alguns dispositivos móveis cientes de localização 108 (por exemplo, dispositivos ativados com GPS) podem identificar as localizações em um espaço tridimensional. As localizações podem ser representadas por latitudes, longitudes e altitudes. Altitudes podem ser expressas, por exemplo, como elevação medida em metros a partir do nível do mar. A localização de um dispositivo móvel em um espaço tridimensional pode ser desejável quando uma altitude do dispositivo móvel é necessária para localização do dispositivo móvel. Por exemplo, a altitude pode ser utilizada para determinar em que piso o dispositivo móvel está localizado em um edifício alto. A localização do dispositivo móvel 108 em um espaço tridimensional pode ser exibida em um mapa bidimensional com a elevação como uma anotação em um mapa tridimensional.
Os dispositivos móveis 108 podem conectar o ponto de acesso 126. Os dispositivos móveis 108 podem ser dispositivos móveis cientes de localização que podem transmitir suas localizações, incluindo coordenadas de latitude, longitude e altitude para o sistema. O sistema pode calcular uma localização média com base nas coordenadas de latitude, longitude e altitude recebidas dos dispositivos móveis 108. O espaço tridimensional 124, possuindo a localização média como um centro e uma margem de erro como um raio, pode ser associado com o ponto de acesso 126. O espaço 124 pode representar um espaço no qual um dispositivo móvel pode estar localizado quando o dispositivo móvel está localizado dentro de uma faixa de comunicação do ponto de acesso 126. Nessa especificação, o espaço 124 será referido como um espaço de presença.
O sistema pode enviar informação sobre o espaço de presença 124 para os dispositivos móveis que estão localizados dentro de uma faixa de comunicação do ponto de acesso 126. Os dispositivos móveis recebendo a informação podem utilizar a informação para determinar suas localizações geográficas. O sistema pode dividir um espaço geográfico tridimensional em grades tridimensionais 120. A grade tridimensional 120 pode ser constituída de células tridimensionais 122. Cada célula tridimensional 122 pode ter uma base que corresponde à célula 102 da grade geográfica 100. Cada célula tridimensional 122 pode ter uma altura (por exemplo, medida em metros) como uma dimensão. O espaço de presença 124 pode ser referido como estado localizado na célula 122 se o centro do espaço de presença 124 estiver na célula 122. O sistema pode limitar o número de espaços de presença na célula 122 com base em uma popularidade do espaço de presença (por exemplo, quantas conexões são criadas a partir dos dispositivos móveis 108 no espaço de presença para o ponto de acesso 126), uma estabilidade do espaço de presença 124 (por exemplo, o quão estável tem sido o espaço de presença 124), uma longevidade do ponto de acesso 126 (por exemplo, por quanto tempo o ponto de acesso 126 tem existido), e um frescor do espaço de presença 124 (por exemplo, quando foi a última transmissão de localização do dispositivo móvel 108 localizado dentro de uma faixa de comunicação do ponto de acesso 126).
O sistema pode transmitir informação sobre o espaço de presença 124 e espaços de presença vizinhos com base nas células tridimensionais 122 da grade tridimensional 120 para um dispositivo móvel (por exemplo, um dispositivo móvel 110) que está localizado dentro de uma faixa de comunicação do ponto de acesso 126. O dispositivo móvel 110 pode utilizar a informação para estimar uma localização atual do dispositivo móvel 110 no espaço tridimensional, e exibir a localização atual estimada em um mapa tridimensional.
Processo de Lado de Servidor Ilustrativo e Sistema para o Gerenciamento de uma Base de Dados de Localização
As figuras de 2a a 2c ilustram estágios ilustrativos de gerenciamento de uma base de dados de localização. Por motivos de conveniência, as técnicas serão descritas com referência a um sistema de posicionamento com base em rede que inclui um servidor que implementa as técnicas.
A figura 2a ilustra um estágio ilustrativo de uma análise de múltiplas passagens que pode ser utilizado para determinar uma área de presen ça associada com o ponto de acesso 105. O ponto de acesso 105 pode possuir uma área de cobertura 202, que pode ser determinada por uma intensidade de sinal de um transmissor do ponto de acesso 105 e outros fatores (por exemplo, características físicas da área geográfica que cerca o ponto de acesso 105). Os dispositivos móveis 108 que são localizados dentro da área de cobertura 202 podem conectar sem fio o ponto de acesso 105. O ponto de acesso 105 pode permitir que os dispositivos móveis 108 conectem uma rede com fio através de vários circuitos de acesso. A rede com fio pode incluir uma rede de dados (por exemplo, a Internet), uma rede de telefonia permutada pública (PSTN), outras redes digitais ou analógicas, ou uma combinação das acima.
O dispositivo móvel 108 pode incluir dispositivos móveis cientes de localização (por exemplo, dispositivos móveis ativados por GPS). Cada dispositivo móvel ciente de localização 108 (representado como um triângulo preto na figura 2a) pode detectar sua localização geográfica atual. A localização geográfica atual pode ser representada por coordenadas geográficas que incluem uma latitude e uma longitude do dispositivo móvel 108. Quando os dispositivos móveis 108 se comunicam com o ponto de acesso 105, os dispositivos móveis 108 podem transmitir informação de localização para o sistema através do ponto de acesso 105. A informação de localização pode ser associada com um identificador do ponto de acesso 105 (por exemplo, um endereço de Controle de Acesso a Meio (MAC) do ponto de acesso 105). O sistema pode utilizar a informação de localização recebida dos múltiplos dispositivos móveis 108 para determinar a área de presença que pode ser associada com o ponto de acesso 105. A área de presença não encerra ne-cessariamente uma localização na qual o ponto de acesso 100 está realmente localizado. Nem é necessário que a área de presença corresponda à localização geométrica ou formato da área de cobertura 202, apesar de a área de presença poder ser localizada dentro da área de cobertura 202.
A distribuição dos dispositivos móveis 108 com a área de cobertura 202 pode corresponder a uma foto dos dispositivos móveis 108 em um momento particular (por exemplo, 8:30 da manhã, hora local, para uma zona horária na qual o ponto de acesso 105 está localizado). Cada dispositivo móvel 108 pode ser associado com uma única localização. A distribuição de dispositivos móveis 108 com a área de cobertura 202 também pode corresponder às localizações dos dispositivos móveis 108 através de um período de tempo (por exemplo, seis horas de 4 da manhã às 10 da manhã). Cada dispositivo móvel 108 pode ser associado com múltiplas localizações (por exemplo, quando o dispositivo móvel 108 está se movendo). Um único dispositivo móvel 108 que está associado com múltiplas localizações pode ser representado por múltiplas localizações no sistema, como ilustrado por múltiplos triângulos na figura 2a.
O servidor pode determinar uma localização geográfica média de um conjunto de localizações recebidas dos dispositivos móveis 108. O conjunto de localizações pode incluir localizações recebidas dos dispositivos móveis 108 em um momento particular ou durante um período de tempo particular. A localização geográfica média pode ser designada como o centro 205 da área englobada pelo círculo 204a. O centro do círculo 204 a não precisa coincidir com a localização do ponto de acesso 105. O servidor pode calcular uma distância entre a localização geográfica média e cada localização no conjunto e identificar um ou mais outliers. Outliers podem ser localizações no conjunto que são localizadas mais distante da localização geográfica média. Outliers (por exemplo, localização 210) cujas distâncias do centro excedem um limite podem ser excluídos do conjunto. O círculo 204a pode ter um raio 206 que corresponde à maior distância entre a localização geográfica média e as localizações em um conjunto atual depois de os outliers serem excluídos.
A figura 2b ilustra um estágio ilustrativo da análise de múltiplas passagens subsequente ao estágio da figura 2a. As localizações cujas distancias para a localização geográfica média da figura 2a (centro 205 do círculo 204a) excedem um limite foram excluídas do conjunto. O limite pode ser configurado de modo que um percentual de posições (por exemplo, 5% das localizações da figura 2a) seja excluído. Uma nova localização geográfica média pode ser calculada com base no restante das localizações no conjun- to (por exemplo, 95% das localizações restantes). A nova localização geográfica média pode ser, por exemplo, um centro 225 do círculo 204b. Em várias implementações, o cálculo na nova localização geográfica média pode incluir a realização da média das localizações restantes no conjunto, a seleção de uma localização geográfica média no conjunto (por exemplo, pela seleção de uma latitude média ou uma longitude média), ou aplicação de outros algoritmos. Os algoritmos para calcular a localização geográfica média podem ser idênticos em cada passagem da análise de múltiplas passagens, ou podem ser distintos um do outro em cada passagem.
A área englobada pelo círculo 204b pode ser menor do que a área englobada pelo círculo 204a como determinado em uma passagem anterior quando as localizações de outlier são excluídas. A área menor pode refletir uma precisão aumentada do cálculo. O centro 225 do círculo 204b não precisa necessariamente coincidir com o centro 205 do círculo 204a. Em algumas implementações, o raio 216 do círculo 204b pode corresponder a uma localização restante do dispositivo móvel 108 que está mais distante do centro 225 do circulo 204b. O raio 216 pode representar uma margem de erro da nova estimativa da área de presença calculada na passagem atual.
A figura 2c ilustra um estágio final ilustrativo da análise de múltiplas passagens. Quando determinadas condições de saída são satisfeitas, o sistema pode encerrar o processo interativo depois do estágio final. O estágio final pode produzir uma localização geográfica média final que corresponde a uma grupamento de posições de dispositivos móveis 108. A localização geográfica média final pode ser apresentada como um centro 235 do círculo 204c. O circulo 204c pode possuir um raio que corresponde a uma margem de erro final, que é baseada em uma distância entre a localização geográfica média final e uma localização no agrupamento. O círculo 204c pode ser designado como área de presença associada com o ponto de a- cesso 105 através do identificador (por exemplo, um endereço MAC) do ponto de acesso 105.
O servidor pode determinar se inclui o identificador de ponto de acesso 105 e área de presença associada em uma base de dados de locali zação com base em vários fatores. Por exemplo, o servidor pode contar o número de áreas de presença na célula 102 da grade geográfica 100, e selecionar um número de áreas de presença com base em popularidade, estabilidade e longevidade. O servidor pode enviar a informação das áreas de presença (incluindo a área de presença 204c se a área de presença 204c for selecionada) na base de dados de localização para um dispositivo móvel (por exemplo, dispositivo móvel 215), independentemente de se o dispositivo móvel 215 é ativado por GPS.
A figura 2d ilustra um estágio ilustrativo de gerenciamento de uma base de dados de localização em um espaço tridimensional. Na figura 2d, os eixos geométricos X, Y e Z podem ser utilizados para indicar o espaço tridimensional. Por exemplo, os eixos X, Y e Z podem representar longitude, latitude e altitude, respectivamente. Por motivos de conveniência, a localização do ponto de acesso 126 é ilustrada de modo a coincidir com o ponto zero nos eixos geométricos X, Y e Z na figura 2d. Em algumas implementações, uma localização real (por exemplo, coordenadas de latitude, longitude e altitude) do ponto de acesso 126 é opcional nos cálculos.
Cada triângulo da figura 2d pode representar uma localização de um dispositivo móvel localizado no espaço tridimensional. As localizações podem possuir projeções (por exemplo, projeção 226) em um plano no espaço tridimensional. O plano pode ser definido em altitude arbitraria (por e- xemplo, a altitude do ponto de acesso 126). Por exemplo, o plano pode ser definido por eixos geométricos X e Y. O ponto de acesso 126 pode corresponder a um espaço de cobertura 222, que pode ser determinado pela intensidade de sinal do ponto de acesso 126 e outros fatores limitantes (por exemplo, pisos, tetos, edifícios no percurso de sinal).
Uma análise de múltiplas passagens pode associar um espaço geográfico com o ponto de acesso 126 com base em WLAN em um conjunto de localizações recebido dos dispositivos móveis cientes de localização 108 que são localizados no espaço celular 202. Em uma passagem da análise de múltiplas passagens, uma localização geográfica média (por exemplo, centro do espaço 224) pode ser determinada, por exemplo, pela realização da mé dia das coordenadas de latitude, longitude e altitude das localizações no conjunto. Distancias entre a localização geográfica média e as localizações no espaço de cobertura 222 podem ser calculadas. As localizações que estão dentro do espaço de cobertura 222, mas são suficientemente distantes da localização geográfica média podem ser excluídas do conjunto e de computações adicionais. Um raio do espaço 224 pode ser determinado, por e- xemplo, pela maior distância entre as localizações restantes no conjunto e localização geográfica média.
O sistema pode repetir os estágios de cálculo de uma localização geográfica média em um conjunto, calculando as distâncias entre a localização geográfica média e as localizações no conjunto, e excluindo do conjunto as localizações com base nas distâncias calculadas. A repetição pode continuar até que uma condição de saída seja satisfeita. Um espaço possuindo um centro na localização geográfica média e um raio que é baseado em uma distância entre a localização geográfica média e uma localização restante no conjunto pode ser designado como um espaço de presença que pode ser associado com o ponto de acesso 126.
A figura 3a é um fluxograma ilustrando o processo ilustrativo 300 do gerenciamento de uma base de dados de localização. Os processos 300 podem ser utilizados, por exemplo, para determinar uma área de presença ou espaço de presença associado com um ponto de acesso da WLAN. A área de presença ou espaço de presença pode ser utilizado para determinar uma localização de um dispositivo móvel não ativado por GPS. Por motivos de conveniência, o processo 300 será descrito com referência a um sistema que implementa o processo 300.
O sistema pode receber (302) um conjunto de localizações de um ou mais primeiros dispositivos móveis 108 localizados dentro de uma faixa de comunicação do ponto de acesso 105. Cada localização pode ser representada por um conjunto de coordenadas geográficas (por exemplo, uma latitude, uma longitude e uma altitude). A localização pode ser associada com um identificador (por exemplo, um endereço MAC) do ponto de a- cesso 105. O identificador do ponto de acesso pode ser automaticamente suprido pelo ponto de acesso 105 quando o ponto de acesso 105 comunica com o sistema. Em várias implementações, o conjunto de localizações pode corresponder a um período de tempo (por exemplo, 6 horas, ou de 6 da manhã até as 10 da manhã de uma zona horária na qual o ponto de acesso 105 está localizado).
Em algumas implementações, o período de tempo pode ser con-figurado para refletir as características de padrões de utilização específicos em várias horas do dia. Uma área na qual os dispositivos móveis localizados dentro de uma faixa de comunicação do ponto de acesso 105 são mais prováveis de estarem localizados pode variar durante o dia, indicando vários padrões de utilização em horas específicas. Por exemplo, o período de tempo pode corresponder a um "tempo de deslocamento", "horário comercial", "período noturno", etc. As características da hora do dia podem corresponder a vários padrões de utilização dos dispositivos móveis 108. Por exemplo, durante o tempo de deslocamento, a área de presença associada com ponto de acesso 105 pode estar em ou perto de uma via expressa; durante o horário comercial, a área de presença associada com o ponto de acesso 105 pode estar em ou perto de um edifício comercial; durante o período noturno, a área de presença associada com o ponto de acesso 105 pode se espalhar sem um ponto de concentração em particular. O sistema pode calcular a á- rea de presença com base nas localizações recebidas, por exemplo, de 4 da manhã às 10 da manhã, e recalcular a área de presença com base na localização recebida das 10 da manhã às 4 da tarde, etc. As localizações recebidas em cada período de tempo de característica podem ser agrupadas em um conjunto no sistema. As localizações podem ser armazenadas em qualquer estrutura de dados (por exemplo, conjunto, lista, registros de dados em uma base de dados relacional, etc.) em um dispositivo de armazenamento acoplado ao servidor.
O sistema pode determinar (304) uma localização geográfica as-sociada com o ponto de acesso 105 com base em uma média do conjunto recebido de localizações. A localização geográfica pode incluir uma área de presença ou um espaço de presença como descrito acima. A área de pre- sença ou espaço de presença pode ser associado com o ponto de acesso 105, por exemplo, pelo endereço MAC do ponto de acesso 105. Em algumas implementações, a determinação da localização geográfica pode incluir a aplicação de um algoritmo de múltiplas passagens no conjunto recebido de localizações, incluindo a exclusão de pelo menos uma localização do conjunto em cada passagem. A determinação da localização geográfica pode incluir a aplicação de algoritmo de múltiplas passagens periodicamente.
O sistema pode designar (306) o ponto de acesso 105 na localização geográfica associada com o ponto de acesso 105 para uma célula (por exemplo, a célula 102) em uma grade geográfica (por exemplo, a grade geográfica 100) com base em vários fatores incluindo a popularidade do ponto de acesso 105, estabilidade da localização geográfica, e longevidade do ponto de acesso 105. Em algumas implementações, a popularidade do ponto de acesso 105 pode medir quantos dispositivos móveis 108 estão localizados dentre de uma faixa de comunicação do ponto de acesso 105. A popularidade do ponto de acesso pode ser medida, por exemplo, por quantas localizações dos dispositivos móveis 107 que estado localizados dentro de uma faixa de comunicação do ponto de acesso 105 são recebidos em um período de tempo pelo sistema.
A estabilidade da área de presença associada com o ponto de acesso 105 pode refletir quão confiável a área de presença é, se a área de presença for utilizada para estimar uma localização de um dispositivo localizado dentro de uma faixa de comunicação do ponto de acesso 105. A estabilidade da área de presença associada com o ponto de acesso 105 pode ser medida, por exemplo, pela comparação das áreas de presença calculadas pelos últimos dois cálculos, e determinar um grau de sobreposição entre as áreas de presença. Quanto maior o grau de sobreposição, mais estável a área de presença.
A longevidade do ponto de acesso 105 pode refletir na qualidade dos dados associados com o ponto de acesso 105. Por exemplo, um ponto de acesso que foi observado na base de dados por um tempo maior pode ser mais confiável do que um ponto de acesso que foi recentemente adicio nado. A longevidade do ponto de acesso 105 pode ser medida por um histórico de dados em uma base de dados de localização.
Em algumas implementações, um frescor dos dados também pode ser utilizado para determinar se a área de presença associada com o ponto de acesso 105 será designada para a célula 102 da grade geográfica 100. O frescor dos dados pode ser medido por quanto tempo atrás o sistema recebeu a localização mais recente do dispositivo móvel 108.
O sistema pode classificar cada área de presença localizada na célula 102 da grade geográfica 100 com base em popularidade, estabilidade, longevidade e frescor. Pelo menos uma parte de todas as áreas de presença localizadas na célula 102 (por exemplo, três áreas de presença, incluindo a área de presença que está associada com o ponto de acesso 105) pode ser designada para a célula 102. Os pontos de acesso designados e as áreas de presença podem ser utilizados para localizar os dispositivos móveis (por e- xemplo, os dispositivos móveis 110) que estão localizados dentro de uma faixa de comunicação do ponto de acesso 105. Áreas de presença não designadas podem ser armazenadas na base de dados de localização para uso futuro.
O sistema pode fornecer (308) a localização geográfica associada com o ponto de acesso 105 para um segundo dispositivo móvel (por e- xemplo, o dispositivo móvel 110) que está localizado dentro de uma faixa de comunicação do ponto de acesso 105. O sistema pode fornecer adicionalmente outras localizações geográficas localizadas na mesma célula, além de localizações geográficas associadas com os pontos de acesso designados para células vizinhas para o segundo dispositivo móvel. As localizações podem ser transmitidas a partir do ponto de acesso 105 para o segundo dispositivo móvel mediante solicitação ou utilizando várias tecnologias de difusão.
Em algumas implementações, o sistema pode receber, processar e transmitir informação de localização tridimensional. Os espaços de presença (por exemplo, o espaço de presença 124) pode ser designado para as células tridimensionais (por exemplo, célula tridimensional 122) em uma grade tridimensional geográfica (por exemplo, grade tridimensional 120). As localizações podem ser transmitidas a partir do ponto de acesso 126 para um segundo dispositivo móvel que está localizado dentro de uma faixa de comunicação do ponto de acesso 126 mediante solicitação ou utilizando várias tecnologias de difusão.
A figura 3b é um fluxograma ilustrando um processo ilustrativo 204 para calcular uma localização geográfica média utilizando um conjunto de localizações. Por motivos de conveniência, o processo 304 será descrito com referencia a um sistema que implementa o processo 304.
O sistema pode calcular (324) uma localização geográfica média utilizando as localizações no conjunto. O cálculo da localização geográfica média pode incluir o cálculo de uma média de latitudes, longitudes e altitudes das localizações no conjunto, e a designação de uma posição na latitude, longitude e altitude médias calculadas como a localização geográfica média. Em algumas implementações, o cálculo da localização geográfica média pode incluir a designação de uma posição em uma latitude média, longitude média e altitude média das posições no conjunto como a localização geográfica média.
O sistema pode calcular (326) as distâncias entre as localizações no conjunto e a localização geográfica média. Em algumas implementações, o sistema pode calcular uma distância linear entre cada uma das localizações no conjunto e a localização geográfica média no espaço Euclidiano. Em algumas implementações, o sistema pode calcular uma distância geodésica entre cada uma das localizações no conjunto e a localização geográfica média, levando em consideração a curvatura da terra.
As distâncias calculadas no estágio 326 podem ser projetadas como um raio associado com um centro. O centro pode ser a localização geográfica média calculada no estágio 324, que pode ser um centro de um círculo (por exemplo, o círculo 204a). O raio do círculo pode ser determinado com base em pelo menos uma distância entre uma localização no conjunto de localizações e a localização geográfica média. Em algumas implementações, o raio pode ser igual à maior distância entre a localização geográfica média e uma localização restante no conjunto. Em algumas implementa- ções, o raio pode ser uma distancia que, quando o círculo 106d é desenhado utilizando-se o raio e a localização geográfica média como um centro, o círculo pode encerrar um percentual (por exemplo, 80%) das localizações restantes no conjunto. O raio pode representar uma margem de erro além da qual uma estimativa de uma localização de um dispositivo móvel não ativado por GPS tem menos chances de ser estatisticamente significativo.
O sistema pode excluir (328) do conjunto pelo menos uma localização com base em uma distância entre a localização média e a localização. Em algumas implementações, o sistema pode excluir as localizações cuja distância para a localização geográfica média excede uma distância limite. Em cada passagem da análise de múltiplas passagens, o sistema pode aumentar uma precisão da localização geográfica média estimada pela exclusão das localizações que parecem estar distantes de uma concentração de localizações (por exemplo, um agrupamento). Uma localização que está distante de um agrupamento de localizações pode ser menos útil na estimativa da área de presença associada com o ponto de acesso 105 e pode ser excluída. Em várias implementações, a distância limite pode variar de uma passagem para a próxima passagem. Em algumas implementações, a distância limite pode ser uma distancia para a localização geográfica média dentro da qual um percentual determinado (por exemplo, 95%) das localizações no conjunto estão localizadas. Em algumas implementações, a distância limite pode ser um conjunto de distancias correspondendo às passagens (por exemplo, 250 metros para a primeira passagem, 150 metros para a segunda passagem, etc.). O sistema pode excluir pelo menos uma localização do conjunto quando a distância entre a localização geográfica média e a localização excede a distância limite.
O sistema pode repetir os estágios 324, 326 e 328 do processo 304 até que uma condição de saída seja satisfeita. O sistema pode determinar (330) se uma condição de saída é satisfeita para encerrar a repetição. Em algumas implementações, a condição de saída pode ser satisfeita quando um n úmero de repetições alcança um número limite (por exemplo, 10 vezes). O numero limite, além do percentual de localizações a serem excluí das, pode ser configurável para sintonizar um equilíbrio entre a certeza (por exemplo, uma área de presença maior pode resultar em mais confiança de que um dispositivo móvel na célula está realmente localizado na área de presença) e precisão (por exemplo, uma área de presença menor pode resultar em uma localização mais precisa de um dispositivo móvel). Por exemplo, quando o percentual é configurado para 95% e o número de passagens é configurado para 10, a passagem final pode produzir um círculo que engloba cerca de 60% de todos os pontos de dados de localização.
Em algumas implementações, a condição de saída do estágio 330 pode ser satisfeita quando a área de presença ou espaço de presença é suficientemente pequeno. Em células nas quais os dispositivos móveis são altamente concentrados, uma área de presença pode ser suficientemente pequena que passagens adicionais não aumentarão necessariamente a pre-cisão. A repetição dos estágios 324, 326, e 328 pode terminar quando o raio do círculo atingir abaixo de um raio limite. Por exemplo, o raio limite pode ser de 8 a 10 metros. O raio limite pode diferir de ponto de acesso para ponto de acesso, com base no padrão de distribuição das localizações no conjunto recebido (por exemplo, número de pontos de dados de localização recebido, densidade dos pontos de dados de localização, e áreas de concentração nas células).
O sistema pode designar (332) a área geográfica como um círculo possuindo a localização geográfica média como um centro e um raio com base em pelo menos uma distância calculada. A área geográfica pode ser associada com um ponto de acesso (por exemplo, ponto de acesso 105). O servidor pode fornecer a área geográfica (por exemplo, o centro e o raio) para um dispositivo móvel para calcular uma localização atual do dispositivo móvel. O centro pode ser representado em latitudes e longitudes. Em algumas implementações onde as distâncias são calculadas em espaços tridimensionais, o centro pode ser adicionalmente representado em uma altitude.
A figura 3c é um diagrama em bloco ilustrando um sistema ilustrativo implementando técnicas de gerenciamento de uma base de dados de localização. O sistema pode incluir um ou mais processadores, um ou mais dispositivos de memória armazenando instruções, e outros componentes de hardware ou software. O sistema pode incluir o motor de localização 350 que pode ser utilizado para determinar uma área de presença ou espaço de presença a ser associado com um ponto de acesso (por exemplo, ponto de a- cesso 105).
O motor de localização 350 pode incluir módulo de coleta de dados 352 que pode receber dados de vários dispositivos móveis através de vários pontos de acesso. Os dados podem incluir múltiplos pontos de dados que podem indicar as localizações de um ou mais dispositivos móveis cientes de localização (por exemplo, dispositivos móveis 108) além de identificadores de pontos de acesso (por exemplo, endereços MAC dos pontos de acesso 105) indicando a qual ponto de acesso os dispositivos móveis 108 estão conectados. Em algumas implementações, os pontos de dados também podem incluir informação sobre em que zona horária os dispositivos móveis 108 estão localizados. O módulo de coleta de dados 352 pode incluir módulo de recepção de dados 354, que pode receber dados transmitidos a partir dos dispositivos moveis 108 e o módulo de indexação de dados 356. O módulo de indexação de dados 356 pode realizar vários processamentos nos pontos de dados recebidos. Por exemplo, o módulo de indexação de dados 356 pode classificar as latitudes, longitudes e altitudes com base nos IDs de célula. O módulo de indexação de dados 356 pode também agrupar os dados em conjuntos com base em períodos de tempo. Por exemplo, um novo conjunto de localizações recebidas pode ser criado para um período de tempo configurável (por exemplo, seis horas).
Os conjuntos de localizações recebidas dos dispositivos móveis 108 podem ser armazenados em uma base de dados de ponto de dados 360. A base de dados de ponto de dados 360 pode armazenar localizações atuais e de histórico dos vários dispositivos móveis 108. A base de dados de ponto de dados 360 pode incluir uma base de dados ad-hoc, base de dados relacional, base de dados orientada por objeto. A base de dados de ponto de dados 360 pode ser hospedada local ou remotamente com relação ao motor de localização 350.
O módulo de cálculo de localização 364 pode ser utilizado para calcular uma localização geográfica média nos conjuntos de pontos de dados na base de dados de pontos de dados, calcular distâncias entre uma localização geográfica média e localizações de vários pontos de dados, e excluir localizações dos conjuntos para computação adicional. O módulo de cálculo de localização 364 pode realizar os cálculos para um conjunto particular (por exemplo, um conjunto de pontos de dados associado com um ID de célula) até que uma condição de saída seja alcançada para o conjunto em particular. O módulo de cálculo de localização 364 pode determinar á- reas de presença ou espaços de presença para cada ponto de acesso (por exemplo, o ponto de acesso 105).
Em algumas implementações, o módulo de cálculo de localização 464 pode realizar verificações de validade nas áreas de presença ou espaços de presença com base em vários critérios e vários dados nos pontos de dados utilizando o verificador de validade 366. Por exemplo, os pontos de dados recebidos dos dispositivos móveis 108 podem incluir Códigos de País Móvel (MCCs) e informação de zona horária. O verificador de validade 366 pode comparar uma área de presença ou espaço de presença calculado com polígonos correspondentes aos países representados pelos MCCs e polígonos correspondentes às zonas horárias. Se uma área de presença ou espaço de presença calculado estiver localizado fora dos polígonos, o verificador de validade 366 pode registrar uma anomalia e remover o ponto de acesso.
O motor de filtragem de localização 368 pode determinar se uma área de presença ou espaço de presença pode ser utilizado para estimar uma localização de um dispositivo móvel que está atualmente localizado dentro de uma faixa de comunicação de um ponto de acesso. O motor de filtragem de localização 368 pode dividir uma região geográfica em células 102 da grade geográfica 100, ou células tridimensionais 122 da grade tridimensional 120. O motor de filtragem de localização 368 pode classificar as áreas de presença ou espaços de presença com base em popularidade, estabilidade, longevidade, e frescor. O motor de filtragem de localização 368 pode designar áreas de presença ou espaços de presença de classificação superior localizados em cada célula 102 ou célula tridimensional 122 para a célula 102 ou células tridimensionais.
As áreas de presença ou espaços de presença podem ser definidos por um centro possuindo coordenadas de latitude, longitude e altitude médias do conjunto de localizações. As áreas de presença ou espaços de presença podem ser adicionalmente definidos por um raio determinado com base nas distâncias das localizações no conjunto de localizações para o centro. As coordenadas de latitude, longitude e altitude dos centros das á- reas de presença ou espaços de presença e os raios das áreas de presença e espaços de presença podem ser armazenadas na base de dados de localização 372. A base de dados de localização 372 pode armazenar as áreas de presença e os espaços de presença designados e não designados. As áreas de presença ou espaços de presença não designados podem ser designados em cálculos subsequentes pelo módulo de cálculo de localização 364. A base de dados de localização 372 pode ser atualizada periodicamente pelo módulo de cálculo de localização 364.
Os dados da base de dados de localização 372 podem ser dis-tribuídos para os dispositivos móveis utilizando-se o módulo de distribuição de dados 376. O módulo de distribuição de dados 376 pode enviar informação das áreas de presença e espaços de presença designados (por exemplo, coordenadas de centro e raios) que é associada com os pontos de a- cesso para os dispositivos móveis (por exemplo, dispositivo móvel não ativado por GPS 110) mediante solicitação, através de difusão, ou utilizando várias tecnologias de difusão sem o recebimento de solicitações dos dispositivos móveis.
Em algumas implementações, o módulo de distribuição de dados 376 pode enviar múltiplas áreas de presença ou espaços de presença para os dispositivos móveis em uma sessão de transmissão. Para se reduzir o número de transmissões de localização para os dispositivos móveis que podem consumir larguras de banda de comunicação do dispositivo móvel, o módulo de distribuição de dados 376 pode utilizar localizador vizinho 378 para localizar as células que são vizinhas da célula na qual o dispositivo móvel 110 está localizado. As células vizinhas podem incluir, por exemplo, um número de células que cerca a célula na qual o dispositivo móvel 110 está localizado de modo que a área total da célula e as células circundantes cubra uma determinada área geográfica (por exemplo, um ou dois quilômetros quadrados). O envio da informação sobre as áreas de presença e espaços de presença associados com múltiplas células (por exemplo, 400 células) para o dispositivo móvel 110 pode reduzir o número de transmissões quando o dispositivo móvel 110 move através das células. Em tais implementações, o módulo de distribuição de dados 376 só precisa enviar uma atualização para o dispositivo móvel 110 quando o dispositivo móvel 110 move para fora de todas as células previamente enviadas.
Processo Ilustrativo para Determinação das Localizações de Dispositivos Móveis Utilizando Localizações de Pontos de Acesso Sem Fio
A figura 4a ilustra técnicas para a determinação de localizações dos dispositivos móveis utilizando localizações dos pontos de acesso sem fio. O dispositivo móvel 400 pode ser um dispositivo móvel ilustrativo que pode utilizar localizações dos pontos de acesso sem fio para determinar sua localização. Uma seção ilustrativa de uma rede de comunicação que inclui os pontos de acesso 400 é ilustrada.
O dispositivo móvel 400 pode ser localizado dentro de uma faixa de comunicação do ponto de acesso 404a. A partir do ponto de acesso 404a, o dispositivo móvel 400 pode receber dados que incluem a informação sobre as áreas de presença ou espaços de presença (incluindo áreas de presença 406) dos pontos de acesso vizinhos. O dispositivo móvel 400 pode armazenar os dados recebidos em um dispositivo de armazenamento. Os dados armazenados podem ser atualizados periodicamente.
No exemplo ilustrado, o dispositivo móvel 400 é localizado dentro de uma faixa de comunicação do ponto de acesso 400a. Adicionalmente, o dispositivo móvel 400 está dentro das faixas de comunicação para os pontos de acesso 404b, 404c e 404d. Os dispositivos móveis 400 podem identificar os pontos de acesso 404a, 404b, 404c e 404d sob os protocolos de comunicação sem fio utilizados em WLAN (por exemplo, IEEE 802.11a). Os pontos de acesso 404a, 404b, 404c e 404d podem ser identificados pelos endereços MAC dos pontos de acesso ou outros identificadores (por exemplo, identificadores Bluetooth™).
O dispositivo móvel 400 pode identificar as áreas de presença 406a, 406b, 406c e 406d que são associadas com os pontos de acesso 404a a d, respectivamente. A identificação das áreas de presença 406a a d pode incluir a recuperação da informação sobre as áreas de presença 406a a d de um dispositivo de memória acoplado ao dispositivo móvel 400. Em algumas implementações, o dispositivo móvel 400 pode solicitar de um servidor as áreas de presença 406a a d enviando para o servidor identificadores de pontos de acesso 404a a d.
Com base nas áreas de presença 406a a d, o dispositivo móvel 400 pode executar um processo interativo (por exemplo, uma análise de múltiplas passagens) nas áreas de presença 406a a d. O processo interativo pode produzir a área geográfica 402, que pode ser uma estimativa da localização geográfica atual do dispositivo móvel 400. A área geográfica 402 pode ser um espaço geográfico quando a informação de localização tridimensional é utilizada. O dispositivo móvel 400 pode exibir a localização atual estimada em um dispositivo de exibição (por exemplo, em um exibidor de mapa).
A figura 4b é um fluxograma ilustrando o processo ilustrativo 410 de determinação de uma localização de um dispositivo móvel utilizando uma base de dados de localização. Por motivos de conveniência, o processo 410 será descrito com referência ao dispositivo móvel 400 que implementa o processo 410.
O dispositivo móvel 400 pode identificar (412) um ponto de a- cesso atual ao qual o dispositivo móvel 400 está conectado. O dispositivo móvel 400 pode utilizar o ponto de acesso atual para determinar se solicita uma atualização de uma base de dados de localização que é hospedada no dispositivo móvel 400. A base de dados de localização hospedada no dispositivo móvel 400 pode incluir registros de pontos de acesso previamente descarregados para o dispositivo móvel 400. Os registros na base de dados de localização hospedada no dispositivo móvel 400 podem incluir identificadores de pontos de acesso (por exemplo, endereços MAC) e localizações correspondentes (por exemplo, coordenadas de latitude/longitude).
No estágio 412, o dispositivo móvel 400 pode determinar se o ponto de acesso atual está incluído nos registros da base de dados de localização. O dispositivo móvel pode realizar uma consulta na base de dados de localização utilizando um identificador (por exemplo, um endereço MAC) do ponto de acesso atual ao qual o dispositivo móvel 400 está conectado. Se o ponto de acesso atual for incluído nos registros da base de dados de localização, o dispositivo móvel pode determinar que a base de dados de localização está atualizada. Se o ponto de acesso atual não estiver incluído nos registros da base de dados de localização, o dispositivo móvel 400 pode determinar que a base de dados de localização necessita de atualização.
O dispositivo móvel 400 pode solicitar (414) de um servidor uma atualização da base de dados de localização do dispositivo móvel 400 utilizando o identificador do ponto de acesso atual. Os registros na base de dados de localização, incluindo os identificadores e localizações dos pontos de acesso, podem ser refrescados utilizando-se novos identificadores e localizações de novos pontos de acesso. O dispositivo móvel 400 pode enviar o identificador do ponto de acesso atual para o servidor. O servidor pode identificar uma célula como uma célula central em uma grade geográfica. Uma célula central pode ser uma célula que inclui uma localização associada com o identificador do ponto de acesso atual para o servidor e envia todas as localizações de ponto de acesso na célula e nas células vizinhas para o dispositivo móvel 400.
O dispositivo móvel 400 pode receber (416) um conjunto de se-gundas localizações associadas com os segundos pontos de acesso. Os segundos pontos de acesso podem ser distribuídos na célula central ou nas células vizinhas à célula central na grade geográfica. A localização associada com o ponto de acesso atual (por exemplo, um centro de uma área circular) pode ser localizada na célula central. As células vizinhas podem ser as células que estão localizadas perto da célula central na grade geográfica. O número de células vizinhas pode ter um valor de modo que a célula central e as células vizinhas possam cobrir uma área geográfica predeterminada (por exemplo, 1,5 quilômetros quadrados). Identificadores dos pontos de acesso e localizações associadas com os pontos de acesso podem ser incluídos na atualização quando as localizações associadas com os pontos de acesso estado dentro da área geográfica coberta pela célula central e as células vizinhas. Uma vantagem ilustrativa de atualização da localização do dispositivo móvel 400 quando o ponto de acesso atual não está incluído nos registros da base de dados de localização é que quando o dispositivo móvel 400 move de célula para célula, nenhuma atualização é necessária até que o dispositivo móvel 400 mova para fora de uma área grande comparada com a área de cobertura de um único ponto de acesso. Dessa forma, atualizações frequentes podem ser evitadas, economizando recursos para o dispositivo móvel 400 (por exemplo, largura de banda, ciclo de CPU, energia de bateria) e servidor (por exemplo, o servidor não precisa enviar atualizações frequentes para um grande número de dispositivos móveis quando os dispositivos movem de um quarteirão para o próximo).
O dispositivo móvel 400 pode atualizar (418) a base de dados de localização hospedada no dispositivo móvel 400 utilizando o conjunto recebido de localizações e identificadores de pontos de acesso. A atualização pode "centralizar" o dispositivo móvel 400 na área geográfica coberta pela célula central e as células vizinhas. O dispositivo móvel 400 pode não precisar solicitar outra atualização até que o dispositivo móvel 400 mova da célula central para uma célula não coberta por uma das células vizinhas. Por e- xemplo, se cada célula tiver aproximadamente 50 metros por 50 metros, e a área geográfica predeterminada tiver 1,5 quilômetros quadrados, cada atualização pode injetar aproximadamente 60 células na base de dados de localização do dispositivo móvel 400. O dispositivo móvel 400 pode não precisar solicitar outra atualização a menos que o dispositivo móvel se mova para fora da área coberta por 600 células.
O dispositivo móvel 400 pode calcular (420) uma localização a- tual do dispositivo móvel 400 utilizando a base de dados de localização hos- pedada no dispositivo móvel 400. O cálculo pode ser realizado utilizando-se um processo de múltiplas passagens adaptativas executado pelo dispositivo móvel 400. Detalhes adicionais do processo de múltiplas passagens serão descritos abaixo com relação à figura 4c. Apesar de outros fatores (por e- xemplo, intensidade de sinal de vários pontos de acesso) poderem auxiliar no cálculo da localização atual, esses fatores não são necessários no cálculo.
O dispositivo móvel 400 pode exibir opcionalmente (422) a loca-lização atual do dispositivo móvel 400 em um dispositivo de exibição de mapa do dispositivo móvel 400. A exibição ilustrativa da localização atual será descrita em maiores detalhes abaixo, com relação à figura 5.
A figura 4c é um fluxograma ilustrando um processo de múltiplas passagens adaptativo ilustrativo 430 de determinação de uma localização de um dispositivo móvel. Por motivos de conveniência, o processo 430 será descrito com referência ao dispositivo móvel 400 que implementa o processo 430.
O dispositivo móvel 400 pode receber (432) identificadores dos pontos de acesso (por exemplo, pontos de acesso 404) de uma rede de co-municação sem fio (por exemplo, uma WLAN). Os pontos de acesso podem ser localizados dentro de uma faixa de comunicação do dispositivo móvel 400. Os identificadores não precisam ser associados com os pontos de a- cesso aos quais o dispositivo móvel 400 está conectado ou pode se conectar. Por exemplo, em uma localização particular, o dispositivo móvel 400 pode estar dentro da faixa de comunicação de entre três e vinte pontos de a- cesso. O dispositivo móvel 400 pode ser capaz de conectar apenas dois dos pontos de acesso (devido, por exemplo, às configurações de segurança dos pontos de acesso e dispositivo móvel 400). O dispositivo móvel 400 pode ser ativamente conectado a apenas um dos dois pontos de acesso. No entanto, todos os identificadores dos pontos de acesso recebidos pelo dispositivo móvel 400 podem ser utilizados no cálculo.
O dispositivo móvel 400 pode identificar (433) um conjunto de localizações associado com os pontos de acesso a partir da base de dados de localização do dispositivo móvel 400. O conjunto de localizações pode corresponder às áreas de presença 406 ou espaços de presença associados com o ponto de acesso. Cada localização pode ser representada por coor-denadas geográficas (por exemplo, latitude, longitude e altitude). Cada loca-lização pode ser associada com um identificador (por exemplo, um endereço MAC) de um ponto de acesso 404. O dispositivo móvel 400 pode identificar as localizações utilizando uma consulta de base de dados.
O dispositivo móvel 400 pode calcular (434) uma localização ge-ográfica média utilizando as localizações no conjunto. O cálculo da localização geográfica média pode incluir o cálculo de uma média de latitudes, longitudes e altitudes das localizações no conjunto, e designação de uma posição na latitude, longitude e altitude médias calculadas como a localização geográfica média. Em algumas implementações, o cálculo da localização geográfica média pode incluir a designação de uma localização em uma latitude mediana, uma longitude mediana, e uma altitude mediana das posições no conjunto de localização geográfica média.
O dispositivo móvel 400 pode calcular (436) as distâncias entre as localizações no conjunto e a localização geográfica média. Em algumas implementações, o sistema pode calcular uma distância linear entre cada uma das localizações no conjunto e a localização geográfica média no espaço Euclidiano. Em algumas implementações, o sistema pode calcular uma distância geodésica entre cada uma das localizações no conjunto e a locali-zação geográfica média, levando em consideração a curvatura da terra.
As distâncias calculadas no estágio 436 podem ser designadas como um raio associado com um centro. O centro pode ser a localização geográfica média calculada no estágio 434, que pode ser um centro de um círculo (por exemplo, o círculo que cerca a área geográfica 402). O raio do círculo pode ser determinado com base em pelo menos uma distância entre uma localização no conjunto de localizações e a localização geográfica média. Em algumas implementações, o raio pode ser igual à distância mais longa entre a localização geográfica média e uma localização restante no conjunto. Em algumas implementações, o raio pode ser uma distância que, onde um círculo é desenhado utilizando-se o raio e a localização geográfica média como um centro, o círculo pode encerrar um percentual (por exemplo, 80%) das localizações restantes no conjunto. O raio pode representar uma margem de erro além da qual uma estimativa de uma localização de um dispositivo móvel ativado por GPS tem mais chances de ser estatisticamente significativo.
O dispositivo móvel 400 pode excluir (438) do conjunto pelo menos uma localização com base em uma distância entre a localização média e a localização. Em algumas implementações, o sistema pode excluir localizações cuja distância para a localização geográfica média excede uma distância limite. Em cada passagem da análise de múltiplas passagens, o sistema pode aumentar uma precisão da localização geográfica média estimada pela exclusão de localizações que parecem estar distantes de uma concentração de localizações (por exemplo, um agrupamento). Uma localização que está distante de um agrupamento de localizações pode ser menos útil na estimativa de uma localização atual do dispositivo móvel 400 e pode ser excluída. Em várias implementações, a distância limite pode variar de uma passagem para a próxima. Por exemplo, a distância limite pode ser um conjunto de distâncias correspondendo às passagens (por exemplo, 50 metros para a primeira passagem, 30 metros para a segunda passagem, etc.) O sistema pode excluir pelo menos uma localização do conjunto quando a distância entre a localização geográfica média e a localização excede a distância limite.
Em algumas implementações, o dispositivo móvel 400 pode de-terminar um percentual limite de localizações a ser excluído. O percentual limite pode ter um valor pré-especificado (por exemplo, 5%). Em cada passagem, o dispositivo móvel 400 pode excluir o percentual limite de localizações que estão localizadas mais distante da localização geográfica média.
O dispositivo móvel 400 pode repetir os estágios 434, 436 e 438 do processo 430 até que uma condição de saída seja satisfeita. O sistema pode determinar (440) se uma condição de saída é satisfeita para encerrar a repetição. Em algumas implementações, a condição de saída pode ser satisfeita quando um número de repetições alcança um número limite (por exem- pio, cinco vezes). O número limite pode se referir a um número de localizações no conjunto originalmente recebido. O número limite, além do percentual de localizações a serem excluídas, pode ser configurável para realizar a sintoniza fina de um equilíbrio entre a certeza (por exemplo, uma área de presença maior pode resultar em maior confiança de que um dispositivo móvel na célula está realmente localizado na área de presença) e precisão (por exemplo, uma área de presença menor pode resultar em uma localização mais precisa de um dispositivo móvel). Por exemplo, quando o percentual é configurado para 95% e o número de passagens é configurado para 10, a passagem final pode produzir um círculo que engloba cerca de 60% de todos os pontos de dados de localização.
Em algumas implementações, a condição de saída do estágio 330 pode ser satisfeita quando a área de presença ou espaço de presença é suficientemente pequeno. Em áreas onde os pontos de acesso 404 são al-tamente concentrados, uma localização atual estimada pode incluir uma á- rea suficientemente pequena de modo que passagens adicionais não aumentarão necessariamente a precisão. A repetição dos estágios 434, 436, e 438 pode encerrar quando o raio do círculo alcança abaixo de um raio limite. Por exemplo, o raio limite pode ser de 8 a 10 metros. O raio limite pode ser baseado em raios de áreas de presença 406. Em algumas implementações, se alguns raios de áreas de presença 406 forem suficientemente pequenos, o raio limite pode ser pequeno, para refletir uma confiança na estimativa.
O dispositivo móvel 400 pode designar (442) a localização atual do dispositivo móvel 400 utilizando um círculo possuindo a localização geográfica média como um centro e um raio com base em pelo menos uma distância calculada. O centro pode ser representado em latitudes e longitudes. Em algumas implementações onde as distâncias são calculadas em espaços tridimensionais, o centro pode ser adicionalmente representado em uma alti-tude. Em algumas implementações, o dispositivo móvel pode exibir adicio-nalmente a localização atual em um dispositivo de exibição em uma interface de usuário de mapa. As interfaces de usuário de mapa ilustrativas serão descritas abaixo com referência à figura 5.
Interfaces de Usuário Ilustrativas para Determinação das Localizações de Dispositivos Móveis
A figura 5 ilustra uma interface de usuário ilustrativa para deter-minação das localizações dos dispositivos móveis utilizando localizações dos pontos de acesso sem fio. Na figura 5, o mapa ilustrativo 502 de uma área geográfica é exibido no dispositivo móvel 500. Em algumas implementações, o dispositivo móvel 500 pode exibir o mapa 502 no monitor sensível a toque 530 do dispositivo móvel 500. O mapa 502 pode ser exibido quando um usuário seleciona um objeto de mapa para visualizar os serviços de mapeamento e com base em localização. Em algumas implementações, objetos, tal como um objeto de mapa, podem ser selecionadas pela ativação de voz. Uma barra de busca 504 e um objeto de lista de bookmarks 506 podem ser exibidos no topo do mapa 502. Abaixo do fundo do mapa um ou mais objetos de exibição podem ser exibidos, por exemplo, um objeto de busca 508, um objeto de direções 510, um objeto de visualização de mapa 512, e um objeto de localização atual 514.
A barra de busca 504 pode ser utilizada para encontrar um endereço ou outra localização no mapa. Por exemplo, um usuário pode registrar seu endereço residencial na barra de busca 504, e a região contendo o endereço será exibida no mapa 502. O objeto de lista de bookmarks 506 pode, por exemplo, puxar uma lista de bookmarks que contém endereços que são frequentemente visitados, tal como o endereço residencial do usuário. A lista de bookmarks também pode, por exemplo, conter bookmarks especiais tal como a localização atual (por exemplo, a localização atual do dispositivo móvel 500).
O objeto de busca 508 pode ser utilizado para exibir a barra de busca 504 e outros menus de busca relacionados com o mapa. O objeto de direções 510 pode, por exemplo, trazer uma interface de menu que permite que o usuário registre uma localização inicial e uma localização final. A interface pode então exibir informação (por exemplo, instruções e tempo de percurso para uma rota da localização inicial até a localização final). O objeto de visualização de mapa 512 pode trazer um menu que permitirá que o usuário selecione as opções de exibição para o mapa 502. Por exemplo, o mapa 502 pode ser alterado de preto e branco para colorido, o fundo do mapa pode ser alterado, ou o usuário pode alterar o brilho do mapa.
O objeto de localização atual 514 pode permitir que o usuário veja uma área geográfica 516 no mapa 502 indicando onde o dispositivo 500 está atualmente localizado. A área geográfica 516 pode corresponder a uma área geográfica estimada (por exemplo, área geográfica 402) cujo centro é uma localização geográfica média dos pontos de dados associados com os pontos de acesso que estão dentro da faixa de comunicação do dispositivo móvel 500. O raio da área geográfica 516 pode ser determinado com base em uma distância entre a localização geográfica média e uma ou mais localizações associadas com os pontos de acesso. Um bookmark de localização atual especial pode ser localizado na lista de bookmarks quando o objeto de localização atual 514 é selecionado. Se o bookmark de localização atual especial tiver sido previamente configurado na lista de bookmarks, a informação do bookmark antigo pode, por exemplo, ser substituída por informação de localização atual nova. Em algumas implementações, o bookmark de localização atual especial é amarrado ao centro da área geográfica 516. Isso é, o bookmark de localização atual especial pode incluir as coordenadas para o centro da área geográfica 516. A área geográfica 516 pode ser baseada nos dados de localização determinados ou estimados utilizando-se as instruções de localização armazenadas em um dispositivo de memória do dispositivo móvel 500. A área geográfica 516 pode, por exemplo, ser representada por um círculo, retângulo, quadrado, hexágono, ou outra região encerrada com linhas de referência, ou algum outro elemento distintivo para diferenciar a área geográfica 516 do mapa 502.
Em algumas implementações, a área geográfica 516 pode indicar uma região na qual o dispositivo móvel 500 é determinado ou estimado como localizado, e a área geográfica pode não ser necessariamente centralizada na posição atual real do dispositivo móvel 500. Nesse exemplo, o dispositivo móvel 500 pode ser localizado fora do centro dentro da área geográfica. Em outro exemplo, a área geográfica 516 pode ser centralizada em uma posição atual estimada do dispositivo móvel 500.
O dispositivo móvel 500 pode, por exemplo, centralizar a visuali-zação do mapa na área geográfica 516 quando o objeto de localização atual 514 estiver selecionado. Em algumas implementações, o nível de aproximação do mapa pode ser ajustado com base na precisão dos dados de localização ou tecnologia, sistema, ou servido que fornece os dados de localização. Por exemplo, o mapa pode ser distanciado quando o dispositivo móvel 500 não recebe sinais GPS para uma precisão mais baixa e utiliza os dados de ponto de acesso para determinar sua localização. O mapa pode ser aproximado para maior precisão se o dispositivo móvel 500 for capaz de utilizar dados de localização GPS para determinar sua localização atual. Em algumas implementações, o nível de aproximação pode ser baseado na velocidade do dispositivo móvel 500 (por exemplo, o mapa pode ser distanciado em velocidades maiores e aproximado quando o dispositivo móvel 500 não está se movendo). Uma combinação de precisão e velocidade também pode ser utilizada.
Se todos os métodos de recuperação de dados com base em lo-calização falharem (por exemplo, quando o dispositivo móvel 500 não está dentro da faixa de comunicação de qualquer ponto de acesso, ou quando o verificador de validade 366 determina que nenhuma área de presença pode ser associada com qualquer um dos pontos de acesso onde o dispositivo móvel 500 pode ser conectado), e não existem outros sistemas ou serviços disponíveis para a determinação ou estimativa da posição atual do dispositivo móvel 500, um erro pode ser exibido para o usuário e nenhuma área geográfica é exibida no mapa 502. O erro pode, por exemplo, conter uma mensagem para o usuário informando o mesmo sobre a falha e a possível razão ou razões para a falha.
O objeto de localização atual 514 pode ser selecionado, por e- xemplo, para ativar a estimativa e exibição da área geográfica 516 no mapa 502, para obter direções para ou da localização atual estimada (isso é, o centro da área geográfica 516), para enviar a localização atual estimada do dispositivo móvel 500 para um amigo (por exemplo, de modo que o amigo possa seguir para a mesma localização), ou para criar um bookmark para a localização atual estimada.
Arquitetura do Sistema Ilustrativo
A figura 6 é um diagrama em bloco de uma arquitetura de sistema ilustrativo 600 para implementação das características e operações descritas com referência às figuras de 1 a 5. Outras arquiteturas são possíveis, incluindo as arquiteturas com mais ou menos componentes. Em algumas implementações, a arquitetura 600 inclui um ou mais processadores 602 (por exemplo, processadores dual-core Intel® Xeon®), um ou mais dispositivos de saída 604 (por exemplo, LCD), uma ou mais interfaces de rede 606, um ou mais dispositivos de entrada 608 (por exemplo, mouse, teclado, monitor sensível a toque) e um ou mais meios legíveis por computador 612 (por e- xemplo, RAM, ROM, SDRAM, disco rígido, disco ótico, memória flash, etc.). Esses componentes podem permutar comunicações e dados através de um ou mais canais de comunicação 610 (por exemplo, barramentos) que podem utilizar vários hardware e software para facilitar a transferência de dados e sinais de controle entre os componentes.
O termo "meio legível por computador" se refere a qualquer meio que participe no fornecimento de instruções para o processador 602 para execução, incluindo sem limitação, mídia não volátil (por exemplo, discos óticos ou magnéticos), mídia volátil (por exemplo, memória), e mídia de transmissão. A mídia de transmissão inclui, sem limitação, cabos coaxiais, fio de cobre e óticas de fibra.
O meio legível por computador 612 pode incluir adicionalmente o sistema operacional 614 (por exemplo, servidor Mac OS®, servidor Windows® NT), módulo de comunicação de rede 616, interface de base de dados 620, módulo de coleta de dados 630, módulo de distribuição de dados 640, e modulo de cálculo de localização 650, como descrito com referência às figuras de 1 a 5. O sistema operacional 614 pode ser de múltiplos usuários, multiprocessamento, multitarefa, multissequências, tempo real, etc. O sistema operacional 614 realiza as tarefas básicas, incluindo, mas não limitadas a: reconhecimento do registro de e fornecimento de saída para os dis positivos 606, 608; manutenção de arquivos de rastreamento e gerenciamento e diretórios nos meios legíveis por computador 612 (por exemplo, memória ou um dispositivo de armazenamento); controle de dispositivos periféricos, e gerenciamento de tráfego de um ou mais canais de comunicação 610. O módulo de comunicações de rede 616 inclui vários componentes para o estabelecimento e manutenção de conexões de rede (por exemplo, software para implementação de protocolos de comunicação, tal como TCP/IP, HTTP, etc.). A interface de base de dados 620 pode incluir interfaces para uma ou mais bases de dados (por exemplo, base de dados de ponto de dados 360 e base de dados de localização 372) em um sistema de arquivo. As bases de dados podem ser organizadas sob uma estrutura de pasta hierárquica, as pastas mapeando os diretórios no sistema de arquivo. O módulo de coleta de dados 630 pode incluir componentes para a coleta de dados a partir de múltiplos dispositivos de móveis sem fio conectados ao sistema 600 através de pontos de acesso ou através de outros canais de comunicação (por exemplo, redes celulares). O módulo de distribuição de dados 640 pode realizar várias funções para a transmissão de dados de localização em associação com os pontos de acesso de uma rede de comunicações sem fio para os dispositivos de computação, incluindo os dispositivos móveis 108 e 110. O módulo de cálculo de localização 650 pode incluir um ou mais componentes para realizar a análise de múltiplas passagens em locais recebidos a partir dos dispositivos móveis 108.
A arquitetura 600 pode ser incluída em qualquer dispositivo capaz de hospedar um programa de aplicativo de base de dados. A arquitetura 600 pode ser implementada em um processamento paralelo ou infraestrutura não hierarquizada ou em um único dispositivo com um ou mais processadores. O software pode incluir múltiplos componentes de software ou pode ser um único corpo de código.
As características descritas podem ser implementadas de forma vantajosa em um ou mais programas de computador que são executáveis em um sistema programável incluindo pelo menos um processador programável acoplado aos dados de recebimento e instruções a partir de, e trans- mitir dados e instruções para um sistema de armazenamento de dados, pelo menos um dispositivo de entrada, e pelo menos um dispositivo de saída. Um programa de computador é um conjunto de instruções que pode ser utilizado, direta ou indíretamente, em um computador para realizar uma determinada atividade ou alcançar um determinado resultado. Um programa de computador pode ser escrito em qualquer forma de linguagem de programação (por exemplo, Objective-C, Java), incluindo linguagens compiladas ou interpretadas, e pode ser desenvolvido em qualquer forma, incluindo como um programa independente ou como um módulo, componente, sub-rotina, aplicativo de rede com base em navegador, ou outra unidade adequada para uso em um ambiente de computação.
Processadores adequados para a execução de um programa de instruções incluem, por meio de exemplo, ambos os microprocessadores de finalidade geral e especial, e o único processador ou um dentre múltiplos processadores ou núcleos, de qualquer tipo de computador. Geralmente, um processador receberá instruções e dados de uma memória de leitura apenas ou uma memória de acesso randômico ou ambas. Os elementos essenciais de um computador são um processador para executar as instruções e uma ou mais memórias para armazenar as instruções e dados. Geralmente, um computador também pode incluir, ou pode ser acoplado de forma operacional para se comunicar com um ou mais dispositivos de armazenamento em massa para armazenar arquivos de dados; tais dispositivos incluem discos magnéticos, tal como discos rígidos internos e discos removíveis; discos magneto-óticos; e discos óticos. Os dispositivos de armazenamento adequados para consubstanciar de forma tangível as instruções de programa de computador e dados incluem todas as formas de memória não volátil, incluindo, por meio de exemplo, dispositivos de memória semicondutores, tal como EPROM, EEPROM, e dispositivos de memória flash; discos magnéticos tal como discos rígidos internos e discos removíveis; discos magneto-óticos; e CD-ROM e DVD-ROM. O processador e a memória podem ser suplementados por, ou incorporados em ASICs (circuitos integrados específicos de aplicativo).
Para fornecer a interação com um usuário, as características podem ser implementadas em um computador possuindo um dispositivo de exibição tal como um CRT (tubo de raio cátodo) ou monitor LCD (monitor de cristal líquido) para exibição de informação para o usuário e um teclado e um dispositivo de apontar tal como um mouse ou um TrackBall pelo qual o usuário pode fornecer registro no computador.
As características podem ser implementadas em um sistema de computador que inclui um componente de extremidade traseira, tal como um servidor de dados, ou que inclui um componente de middleware, tal como um servidor de aplicativo ou um servidor de Internet, ou que inclua um componente de extremidade dianteira, tal com um computador de cliente possuindo uma interface de usuário gráfica ou um navegador de Internet, ou qualquer combinação dos mesmos. Os componentes do sistema podem ser conectados por qualquer forma ou meio de comunicação de dados digital tal como uma rede de comunicação. Exemplos de redes de comunicação incluem, por exemplo, LAN, WAN e computadores e redes formando a Internet.
O sistema de computador pode incluir clientes e servidores. Um cliente e servidor são geralmente remotos um com relação ao outro e interagem tipicamente através de uma rede. A relação entre cliente e servidor surge em virtude de programas de computador rodando nos computadores respectivos e possuindo uma relação cliente-servidor um com o outro.
Arquitetura de Dispositivo Móvel Ilustrativo
A figura 7 é um diagrama em bloco de uma arquitetura ilustrativa 700 de um dispositivo móvel. O dispositivo móvel pode ser, por exemplo, um computador portátil, um assistente digital pessoal, um telefone celular, um tablet eletrônico, um aparelho de rede, uma câmera, um telefone inteligente, um telefone móvel de serviço de rádio em pacote geral melhorado (EGPRS), uma estação base de rede, um aparelho de mídia, um dispositivo de navegação, um dispositivo de correio eletrônico, um console de jogos, ou uma combinação de qualquer dois ou mais desses dispositivos de processamento de dados ou outros dispositivos de processamento de dados.
O dispositivo móvel pode incluir uma interface de memória 702, um ou mais processadores de dados, processadores de imagem e/ou unidades de processamento central 704 e uma interface periférica 706. A interface de memória 702, um ou mais processadores 704 e/ou a interface de periféricos 706 podem ser componentes separados ou podem ser integrados em um ou mais circuitos integrados. Os vários componentes no dispositivo móvel 100 podem ser acoplados por um ou mais barramentos de comunicação ou linhas de sinal.
Sensores, dispositivos, e subsistemas podem ser acoplados à interface de periféricos 706 para facilitar múltiplas funcionalidades. Por e- xemplo, o sensor de movimento 710, o sensor de luz 712, e o sensor de pro-ximidade 714 podem ser acoplados à interface de periféricos 706 para facilitar a orientação, iluminação e proximidade do dispositivo móvel. O processador de localização 715 (por exemplo, o receptor GPS) pode ser conectado à interface de periféricos 706 para fornecer o geoposicionamento. O magne- tômetro eletrônico 716 (por exemplo, um chip de circuito integrado) também pode ser conectado à interface de periféricos 706 para fornecer dados que podem ser utilizados para determinar a direção do Norte magnético.
O subsistema de câmera 720 e um sensor ótico 722, por exemplo, um dispositivo acoplado carregado (CCD) ou um sensor ótico semicondutor de óxido de metal complementar (CMOS) pode ser utilizado para facilitar as funções de câmera, tal como a gravação de fotografias e clipes de vídeo.
As funções de comunicação podem ser facilitadas através de um ou mais subsistemas de comunicação sem fio 724, que podem incluir receptores de frequência de rádio e transmissores e/ou receptores e transmissores óticos (por exemplo, infravermelho). O desenho específico e implementação do subsistema de comunicação 724 pode depender das redes de comunicação através das quais o dispositivo móvel deve operar. Por exemplo, o dispositivo móvel pode incluir subsistemas de comunicação 724 projetados para operar através de uma rede GSM, uma rede GPRS, uma rede EDGE, uma rede Wi-Fi ou WiMAX e uma rede Bluetooth. Em particular, os subsistemas de comunicação sem fio 724 podem incluir protocolos hospedeiros de modo que o dispositivo possa ser configurado como uma estação base para outros dispositivos sem fio.
O subsistema de áudio 726 pode ser acoplado a um alto falante 728 e um microfone 730 para facilitar as funções ativadas por voz, tal como reconhecimento de voz, duplicação de voz, gravação digital, e funções de telefonia.
O subsistema I/O 740 pode incluir um controlador de tela de toque 742 e/ou outros controladores de entrada 744. O controlador de tela de toque 742 pode ser acoplado a uma tela de toque 746 ou parte. A tela de toque 746 e o controlador de tela de toque 742 podem, por exemplo, detectar o contato e movimento ou quebra do mesmo utilizando qualquer uma dentre uma pluralidade de tecnologias de sensibilidade ao toque, incluindo, mas não limitado a tecnológicas capacitivas, resistivas, infravermelho e onda acústica de superfície, além de outros conjuntos de sensor de proximidade ou outros elementos para a determinação de um ou mais pontos de contato com a tela de toque 746.
Outros controladores de entrada 744 podem ser acoplados a outros dispositivos de entrada/controle 748, tal como um ou mais botões, comutadores oscilantes, rodas de polegar, porta de infravermelho, porta USB e/ou um dispositivo apontador tal como uma caneta. Os um ou mais botões (não ilustrados) podem incluir um botão de sobe/desce para o controle do volume do alto falante 728 e/ou microfone 730.
Em uma implementação, uma pressão do botão por uma primeira duração pode desengatar uma trava da tela de toque 746; e uma pressão do botão por uma segunda duração que é maior do que a primeira duração pode ligar o dispositivo móvel para ligar ou desligar. O usuário pode ser capaz de personalizar uma funcionalidade de um ou mais dos botões. A tela de toque 746 pode, por exemplo, ser utilizada também para implementar os botões virtuais ou macios e/ou o teclado.
Em algumas implementações, o dispositivo móvel pode apresentar o áudio gravado e/ou arquivos de vídeo, tal como arquivos MP3, AAC e MPEG. Em algumas implementações, o dispositivo móvel pode incluir a fun- cionalidade de um aparelho de MP3, tai como um iPod™. O dispositivo móvel pode, portanto, incluir um conector de pino que é compatível com o iPod. Outros dispositivos de entrada/saída e controle também podem ser utilizados.
A interface de memória 702 pode ser acoplada à memória 750. A memória 750 pode incluir memória de acesso randômico de alta velocidade e/ou memória não volátil, tal como um ou mais dispositivos de armazenamento em disco magnético, um ou mais dispositivos de armazenamento ótico, e/ou memória flash (por exemplo, NAND, NOR). A memória 750 pode armazenar o sistema operacional 752, tal como Darwin, RTXC, LINUX, U- NIX, OS X, WINDOWS ou um sistema operacional embutido tal como Vx- Works. O sistema operacional 752 pode incluir instruções para o manuseio de serviços de sistema básicos e para a realização de tarefas dependentes de hardware. Em algumas implementações, o sistema operacional 752 pode incluir um kernel (por exemplo, kernel UNIX).
A memória 750 pode armazenar também instruções de comunicação 754 para facilitar a comunicação com um ou mais dispositivos adicionais, um ou mais computadores e/ou um ou mais servidores. A memória 750 pode incluir instruções de interface de usuário gráfica 756 para facilitar o processamento de interface de usuário gráfica; instruções de processamento de sensor 758 para facilitar o processamento relacionado com sensor e funções, instruções de telefone 760 para facilitar os processos relacionados com telefone e funções; instruções de envio de mensagem eletrônica 762 para facilitar os processos e funções relacionados com mensagem eletrônica; instruções de navegação em rede 764 para facilitar os processos e funções relacionados com navegação na rede; instruções de processamento de mídia 766 para facilitar os processos e funções relacionados com processamento de mídia; instruções de GPS/Navegação 768 para facilitar processos e funções relacionados com câmera; dados de magnetômetro 772 e instruções de calibragem 774 para facilitar a calibragem de magnetômetro. A memória 750 pode incluir instruções de localização 776 que podem ser utilizadas para transmitir uma localização atual para um ponto de acesso, e para determinar uma localização atual estimada com base nos dados de localização associados com os pontos de acesso aos quais o dispositivo móvel está dentro de uma faixa de comunicação. A memória 750 pode armazenar também outras instruções de software (não ilustradas), tal como instruções de segurança, instruções de vídeo de rede para facilitar os processos e funções relacionados com vídeo de rede e/ou instruções de compra na rede para facilitar os processos e funções relacionados com compras na rede. Em algumas implementações, as instruções de processamento de mídia 766 são divididas em instruções de processamento de áudio e instruções de processamento de vídeo para facilitar os processos relacionados com processamento de áudio e processos e funções relacionados com processamento de vídeo, respectivamente. Um registro de ativação e Identidade de Equipamento Móvel Internacional (IMEI) ou identificador de hardware similar também pode ser armazenado na memória 750.
Cada uma das instruções e aplicativos identificados acima pode corresponder a um conjunto de instruções para a realização de uma ou mais funções descritas aqui. Essas instruções não precisam ser implementadas como programas de software separados, procedimentos ou módulos. A memória 750 pode incluir instruções adicionais ou menos instruções. Adicionalmente, várias funções do dispositivo móvel podem ser implementadas em hardware e/ou em software, incluindo em um ou mais circuitos integrados específicos de aplicativo e/ou processamento de sinal.
Um número de implementações da invenção foi descrito. Não obstante, será compreendido que várias modificações podem ser feitas sem se distanciar do espírito e escopo da invenção. Por exemplo, dispositivos cientes de localização são referidos como ativados por GPS. Os dispositivos móveis cientes de localização também podem ser baseados em triangulação ou outra tecnologia. Células são representadas como substancialmente retangulares nas figuras. O formato real de uma célula pode variar. As localizações são descritas como "círculos". O termo "círculo" utilizado nessa especificação pode incluir qualquer forma geométrica (por exemplo, uma elipse, um quadrado, um polígono convexo ou côncavo, ou um formato em estilo livre) que não precisa ser perfeitamente circular, mas seja encerrado ou tenha uma aparência de um recinto. O raio de um formato geométrico que não é perfeitamente circular pode incluir uma distância média entre os vários pontos no limite do formato geométrico e um centro do formato geométrico. 5 Redes WiFi e WiMax são utilizadas como exemplos. Outra tecnologia sem fio (por exemplo, rede celular) também pode ser empregada. De acordo, outras implementações estão dentro do escopo das reivindicações em anexo.

Claims (29)

1. Método executado por um computador caracterizado por compreender: receber uma pluralidade de conjuntos de localizações a partir dos primeiros dispositivos móveis que estão localizados dentro de uma faixa de comunicação de um ponto de acesso de uma rede de comunicações sem fio, cada conjunto de localizações correspondendo a um ponto de acesso distinto determinar uma localização geográfica associada com cada ponto de acesso com base em uma média do conjunto recebido de localizações que correspondem ao ponto de acesso; designar a localização geográfica associada com cada ponto de acesso a uma célula em uma grade geográfica para cada célula na grade geográfica, classificar localizações geográficas associadas à célula com base em um número de localizações no conjunto recebido do ponto de acesso correspondente, em que uma localização geográfica que corresponde a um ponto de acesso associado com um maior conjunto de localização recebe uma classificação mais alta; filtrar as localizações geográficas atribuídas a cada célula, incluindo preservar um grupo de uma ou mais localizações geográficas que incluem a localização geográfica de maior classificação para a célula, e fornecer a localização geográfica associada com o ponto de acesso e localizações geográficas dos pontos de acesso designados para células vizinhas a célula na grade geográfica para um segundo dispositivo móvel conectado ao ponto de acesso.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o ponto de acesso é identificado por um endereço de Controle de Acesso à Mídia (MAC) do ponto de acesso, o endereço MAC sendo associado com o conjunto de localizações que correspondem ao ponto de acesso.
3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a rede de comunicações sem fio é uma Rede de Área Local Sem Fio (WLAN) utilizando os protocolos com base no Instituto de Engenheiros Elétricos e Eletrônicos (IEEE) 802.11.
4. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a determinação da localização geográfica associada com o ponto de acesso inclui: aplicar uma análise de múltiplas passagens no conjunto recebido de localizações associadas com o ponto de acesso, incluindo a exclusão de pelo menos uma localização do conjunto em cada passagem.
5. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que a aplicação de análise de múltiplas passagens inclui: (a) calcular uma localização geográfica média utilizando o conjunto de localizações associadas com o ponto de acesso; (b) calcular das distâncias entre a localização geográfica média e as localizações no conjunto; (c) excluir pelo menos uma localização do conjunto com base em uma distância entre a localização geográfica média e a pelo menos uma localização; (d) repetir (a), (b) e (c) até que uma condição de saída seja satisfeita; e (e) designar uma localização geográfica associada com o ponto de acesso utilizando um círculo possuindo a localização geográfica média como um centro de um raio com base em pelo menos uma distância calculada.
6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a grade geográfica inclui uma área geográfica retangular identificável na grade geográfica por uma latitude, uma longitude, e uma altitude de um ponto de identificação da área geográfica.
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a grade geográfica define um espaço tridimensional identificável na grade geográfica por uma latitude, uma longitude, e uma altitude de um ponto de identificação no recinto.
8. Sistema, caracterizado por compreender: um ou mais computadores configurados para realizar as operações compreendendo: receber uma pluralidade de conjuntos de localizações dos primeiros dispositivos móveis que estão localizados dentro de uma faixa de comunicação de um ponto de acesso de uma rede de comunicações sem fio, cada conjunto de localizações correspondendo a um ponto de acesso distinto; determinar uma localização geográfica associada com cada ponto de acesso com base em uma média do conjunto recebido de localizações que correspondem ao ponto de acesso; designar a localização geográfica associada com cada ponto de acesso a uma célula em uma grade geográfica para cada célula na grade geográfica, classificar localizações geográficas associadas à célula com base em um número de localizações no conjunto recebido do ponto de acesso correspondente, em que uma localização geográfica que corresponde a um ponto de acesso associado com um maior conjunto de localização recebe uma classificação mais alta; filtrar as localizações geográficas atribuídas a cada célula, incluindo preservar um grupo de uma ou mais localizações geográficas que incluem a localização geográfica de maior classificação para a célula, e fornecer a localização geográfica associada com o ponto de acesso e localizações geográficas dos pontos de acesso designados para as células vizinhas à célula na grade geográfica para um segundo dispositivo móvel conectado ao ponto de acesso
9. Sistema, de acordo com a reivindicação 8, caracterizado pelo fato de que a determinação da localização geográfica associada com o ponto de acesso inclui: aplicar de uma análise de múltiplas passagens no conjunto recebido de localizações associadas com o ponto de acesso, incluindo a exclusão de pelo menos um local do conjunto em cada passagem.
10. Sistema, de acordo com a reivindicação 9, caracterizado pelo fato de que a aplicação da análise de múltiplas passagens inclui: (a) calcular uma localização geográfica média utilizando o conjunto de localizações associadas com o ponto de acesso; (b) calcular distâncias entre a localização geográfica média e localizações no conjunto; (c) excluir pelo menos uma localização a partir do conjunto com base em uma distância entre a localização geográfica média e a pelo menos uma localização; (d) repetir (a), (b), e (c) até que uma condição de saída seja satisfeita; e (e) designar uma localização geográfica associada com o ponto de acesso utilizando de um círculo possuindo a localização geográfica média como um centro e um raio com base em pelo menos uma distância calculada.
11. Sistema, de acordo com a reivindicação 10, caracterizado pelo fato de que a condição de saída é satisfeita quando um número de repetições alcança um número limite.
12. Sistema, de acordo com a reivindicação 10, caracterizado pelo fato de que a condição de saída é satisfeita quando o raio do círculo atinge abaixo de um rádio limite.
13. Sistema, de acordo com a reivindicação 8, caracterizado pelo fato de que a célula da grade geográfica inclui uma área geográfica retangular identificável na grade geográfica por uma latitude e uma longitude de um ponto de identificação da área geográfica.
14. Sistema, de acordo com a reivindicação 8, caracterizado pelo fato de que a grade geográfica define um espaço tridimensional, e a célula inclui um recinto tridimensional identificável na grade geográfica por uma latitude, uma longitude e uma altitude de um ponto de identificação no recinto.
15. Produto de programa de computador armazenado de forma tangível em um dispositivo de armazenamento, operável para fazer com que o aparelho de processamento de dados realize as operações caracterizado por compreender: receber uma pluralidade de conjuntos de localizações a partir dos primeiros dispositivos móveis que estão localizados dentro de uma faixa de comunicação de um ponto de aceso de uma rede de comunicações sem fio, cada conjunto de localizações correspondendo a um ponto de acesso distinto determinar uma localização geográfica associada com cada ponto de acesso com base em uma média do conjunto recebido de localizações que correspondem a um ponto de acesso distinto; designar a localização geográfica associada com cada ponto de acesso para uma célula em uma grade geográfica para cada célula na grade geográfica, classificar localizações geográficas associadas à célula com base em um número de localizações no conjunto recebido do ponto de acesso correspondente, em que uma localização geográfica que corresponde a um ponto de acesso associado com um maior conjunto de localização recebe uma classificação mais alta; filtrar as localizações geográficas atribuídas a cada célula, incluindo preservar um grupo de uma ou mais localizações geográficas que incluem a localização geográfica de maior classificação para a célula, e fornecer a localização geográfica associada com o ponto de acesso e localizações geográficas dos pontos de acesso designados para as células vizinhas à célula na grade geográfica para um segundo dispositivo móvel conectado ao ponto de acesso.
16. Produto, de acordo com a reivindicação 15, caracterizado pelo fato de que o ponto de acesso é identificado por um endereço MAC do ponto de acesso, o endereço MAC sendo associado com o conjunto de localizações que correspondem ao ponto de acesso.
17. Produto, de acordo com a reivindicação 15, caracterizado pelo fato de que a rede de comunicações sem fio é uma WLAN utilizando protocolos com base em IEEE 802.11.
18. Produto, de acordo com a reivindicação 15, caracterizado pelo fato de que a determinação da localização geográfica associada com o ponto de acesso inclui: aplicar uma análise de múltiplas passagens no conjunto recebido de localizações, incluindo a exclusão de pelo menos uma localização do conjunto em cada passagem associada com o ponto de acesso.
19. Produto, de acordo com a reivindicação 18, caracterizado pelo fato de que a aplicação de uma análise de múltiplas passagens inclui: (a) calcular de uma localização geográfica média utilizando o conjunto de localizações associadas com o ponto de acesso; (b) calcular das distâncias entre a localização geográfica média e localizações no conjunto; (c) excluir pelo menos uma localização a partir do conjunto com base em uma distância entre a localização geográfica média e a pelo menos uma localização; (d) repetir (a), (b), (c) até que uma condição de saída seja satisfeita; e (e) designar uma localização geográfica associada com o ponto de acesso utilizando um círculo possuindo a localização geográfica média como um centro e um raio com base em pelo menos uma distância calculada.
20. Produto, de acordo com a reivindicação 19, caracterizado pelo fato de que a condição de saída é satisfeita quando um número de repetições alcança um número limite.
21. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que classificar localizações geográficas atribuídas a cada célula é adicionalmente baseado em pelo menos uma dentre uma estabilidade, uma longevidade ou uma atualidade de localizações no conjunto associado a cada um dos pontos de acesso que correspondem a cada localização geográfica
22. Método, de acordo com a reivindicação 21, caracterizado pelo fato de que a estabilidade de um ponto de acesso corresponde a uma estabilidade da localização geográfica associada com o ponto de acesso, como determinado em um tempo diferente, a longevidade de um ponto de acesso corresponde a uma duração de tempo em que o ponto de acesso existe, e a atualidade do ponto de acesso corresponde a uma localização mais recente recebida a partir de um primeiro dispositivo que é localizado dentro da faixa de comunicação do ponto de acesso.
23. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o fornecimento ocorre após a detecção de que o segundo dispositivo móvel está se movendo para fora de uma área geográfica.
24. Sistema, de acordo com a reivindicação 9, caracterizado pelo fato de que classificar localizações geográficas atribuídas a cada célula é adicionalmente baseado em pelo menos uma dentre uma estabilidade, uma longevidade ou uma atualidade de localizações no conjunto associado a cada um dos pontos de acesso que correspondem a cada localização geográfica.
25. Sistema, de acordo com a reivindicação 24, caracterizado pelo fato de que a estabilidade de um ponto de acesso corresponde a uma estabilidade da localização geográfica associada com o ponto de acesso, como determinado em um tempo diferente, a longevidade de um ponto de acesso corresponde a uma duração de tempo em que o ponto de acesso existe, e a atualidade do ponto de acesso corresponde a uma localização mais recente recebida a partir de um primeiro dispositivo que é localizado dentro da faixa de comunicação do ponto de acesso.
26. Sistema, de acordo com a reivindicação 9, caracterizado pelo fato de que o fornecimento ocorre após a detecção de que o segundo dispositivo móvel está se movendo para fora de uma área geográfica.
27. Produto, de acordo com a reivindicação 15, caracterizado pelo fato de que classificar localizações geográficas atribuídas a cada célula é adicionalmente baseado em pelo menos uma dentre uma estabilidade, uma longevidade ou uma atualidade de localizações no conjunto associado a cada um dos pontos de acesso que correspondem a cada localização geográfica.
28. Produto, de acordo com a reivindicação 27, caracterizado pelo fato de que a estabilidade de um ponto de acesso corresponde a uma estabilidade da localização geográfica associada com o ponto de acesso, como determinado em um tempo diferente, a longevidade de um ponto de acesso corresponde a uma duração de tempo em que o ponto de acesso existe, e a atualidade do ponto de acesso corresponde a uma localização mais recente recebida a partir de um primeiro dispositivo que é localizado dentro da faixa de comunicação do ponto de acesso.
29. Produto, de acordo com a reivindicação 15, caracterizado pelo fato de que o fornecimento ocorre após a detecção de que o segundo dispositivo móvel está se movendo para fora de uma área geográfica.
BR112012017530-0A 2010-01-15 2010-08-25 Gerenciamento de uma base de dados de localização para sistema de posicionamento com base em rede BR112012017530B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/688,806 2010-01-15
US12/688,806 US8433334B2 (en) 2010-01-15 2010-01-15 Managing a location database for network-based positioning system
PCT/US2010/046707 WO2011087529A1 (en) 2010-01-15 2010-08-25 Managing a location database for network-based positioning system

Publications (2)

Publication Number Publication Date
BR112012017530A2 BR112012017530A2 (pt) 2016-06-28
BR112012017530B1 true BR112012017530B1 (pt) 2021-04-13

Family

ID=43027507

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112012017530-0A BR112012017530B1 (pt) 2010-01-15 2010-08-25 Gerenciamento de uma base de dados de localização para sistema de posicionamento com base em rede

Country Status (9)

Country Link
US (2) US8433334B2 (pt)
EP (1) EP2524553B1 (pt)
JP (2) JP5395963B2 (pt)
KR (1) KR101355269B1 (pt)
CN (2) CN102204374B (pt)
AU (1) AU2010341772B2 (pt)
BR (1) BR112012017530B1 (pt)
MX (1) MX2012008170A (pt)
WO (1) WO2011087529A1 (pt)

Families Citing this family (116)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8756010B2 (en) * 2009-10-12 2014-06-17 Qualcomm Incorporated Method and apparatus for identification of points of interest within a predefined area
US8655371B2 (en) * 2010-01-15 2014-02-18 Apple Inc. Location determination using cached location area codes
US8634860B2 (en) * 2010-01-15 2014-01-21 Apple Inc. Location determination using cached location area codes
US8433334B2 (en) * 2010-01-15 2013-04-30 Apple Inc. Managing a location database for network-based positioning system
US8200251B2 (en) 2010-01-15 2012-06-12 Apple Inc. Determining a location of a mobile device using a location database
US8504059B2 (en) * 2010-01-15 2013-08-06 Apple Inc. Location filtering using mobile country code
US8660576B2 (en) * 2010-01-15 2014-02-25 Apple Inc. Adaptive location determination
US8620344B2 (en) 2010-04-07 2013-12-31 Apple Inc. Location-based application program management
KR101446032B1 (ko) * 2010-05-06 2014-10-02 에스케이텔레콤 주식회사 무선랜 신호를 이용한 위치 측위 방법 및 장치
WO2011150353A1 (en) 2010-05-28 2011-12-01 Gvm, Inc. Remote management system for equipment
KR101440836B1 (ko) * 2010-07-08 2014-11-04 에스케이텔레콤 주식회사 무선랜 신호를 이용한 측위 오차 판별 방법 및 장치
US8923258B2 (en) * 2010-11-12 2014-12-30 Intel Corporation Techniques for autonomous wireless network infrastructure assisted location resolution
US9055408B2 (en) * 2011-04-02 2015-06-09 Open Invention Network, Llc System and method for determining geolocation of wireless access point or wireless device
US9880604B2 (en) 2011-04-20 2018-01-30 Microsoft Technology Licensing, Llc Energy efficient location detection
GB201107849D0 (en) * 2011-05-11 2011-06-22 Cambridge Silicon Radio Ltd Cooperative positioning
US8981995B2 (en) 2011-06-03 2015-03-17 Microsoft Technology Licensing, Llc. Low accuracy positional data by detecting improbable samples
US9464903B2 (en) 2011-07-14 2016-10-11 Microsoft Technology Licensing, Llc Crowd sourcing based on dead reckoning
US9470529B2 (en) 2011-07-14 2016-10-18 Microsoft Technology Licensing, Llc Activating and deactivating sensors for dead reckoning
US9485623B2 (en) * 2011-08-18 2016-11-01 Rivada Research, Llc Method and system for providing enhanced location based trilateration
US9877299B2 (en) 2011-08-18 2018-01-23 Rivada Research, Llc Method and system for performing trilateration for fixed infrastructure nodes (FIN) based on enhanced location based information
CN102333339B (zh) * 2011-09-22 2015-07-08 华为技术有限公司 一种覆盖数据库的校准方法和装置
CN103858496B (zh) * 2011-10-12 2018-01-26 瑞典爱立信有限公司 针对蜂窝电信网络中的网络服务的位置数据的映射
CN103096423A (zh) * 2011-11-04 2013-05-08 宏碁股份有限公司 帮助使用者整理无线接入点清单的方法及移动装置
US9429657B2 (en) 2011-12-14 2016-08-30 Microsoft Technology Licensing, Llc Power efficient activation of a device movement sensor module
US20130155102A1 (en) * 2011-12-20 2013-06-20 Honeywell International Inc. Systems and methods of accuracy mapping in a location tracking system
US8874162B2 (en) 2011-12-23 2014-10-28 Microsoft Corporation Mobile device safe driving
US9363250B2 (en) 2011-12-23 2016-06-07 Microsoft Technology Licensing, Llc Hub coordination service
CN103188763B (zh) * 2011-12-31 2016-07-06 联想(北京)有限公司 一种基于空间的签到方法及装置、电子设备
US8897803B2 (en) * 2012-01-13 2014-11-25 Apple Inc. Finding wireless network access points
US8611247B2 (en) * 2012-01-24 2013-12-17 Qualcomm Incorporated Dynamic data retrieval in a WLAN positioning system
CN103260237B (zh) * 2012-02-20 2016-08-10 华为技术有限公司 一种网络定位方法和相关设备
US20150100743A1 (en) * 2012-03-15 2015-04-09 Nokia Corporation Supporting storage of data
US9319065B2 (en) 2012-03-15 2016-04-19 Nokia Technologies Oy Encoding and decoding of data
US8599812B2 (en) * 2012-03-26 2013-12-03 Qualcomm Incorporated Encoded wireless data delivery in a WLAN positioning system
JP5915382B2 (ja) * 2012-05-29 2016-05-11 株式会社リコー 管理サーバ及び位置情報設定方法
CN103457876B (zh) * 2012-05-30 2016-09-21 方正宽带网络服务有限公司 一种确定最近接入网络资源的方法及系统
US10042035B2 (en) 2012-06-08 2018-08-07 Apple, Inc. System and method for tile-based reduction of access point location information
US9736817B2 (en) 2012-06-19 2017-08-15 Telefonaktiebolaget L M Ericsson (Publ) Method and arrangement for D2D discovery
KR20140005451A (ko) * 2012-07-04 2014-01-15 한국전자통신연구원 가상 인프라 생성을 이용한 단말 위치 추정 방법 및 장치
US9442181B2 (en) 2012-07-18 2016-09-13 Microsoft Technology Licensing, Llc Prediction for power conservation in a mobile device
US8744484B2 (en) 2012-07-24 2014-06-03 Qualcomm Incorporated Wireless network coverage estimation using down-sampled crowd-sourced data
US8995255B2 (en) 2012-08-03 2015-03-31 Intel Corporation Coverage adjustment in E-UTRA networks
EP2883370B1 (en) * 2012-08-09 2018-03-21 Sony Interactive Entertainment Inc. Information processing terminal, information processing method, program, and information storage medium
US8805407B2 (en) 2012-08-31 2014-08-12 The Nielsen Company (Us), Llc. Methods and apparatus to scan a wireless communication spectrum
WO2014042568A1 (en) 2012-09-17 2014-03-20 Telefonaktiebolaget L M Ericsoon (Publ) Method and arrangement for handling d2d communication
WO2014046576A1 (en) * 2012-09-18 2014-03-27 Telefonaktiebolaget L M Ericsson (Publ) A user equipment, a network node, and methods for device discovery in device-to-device (d2d) communications in a wireless telecommunications network
US8886161B2 (en) 2012-10-05 2014-11-11 The Nielsen Company (Us), Llc Methods and apparatus to discover spectrum usage of mobile carriers
US8934369B2 (en) * 2012-10-05 2015-01-13 Cisco Technology, Inc. Direction aware neighbor list infrastructure assisted roaming
US20140155084A1 (en) * 2012-12-03 2014-06-05 Qualcomm Incorporated Multi-mode wireless position association
US9357521B2 (en) * 2013-02-27 2016-05-31 Marvell World Trade Ltd. Determining an estimated location of a base station
US9820231B2 (en) 2013-06-14 2017-11-14 Microsoft Technology Licensing, Llc Coalescing geo-fence events
US8918109B1 (en) * 2013-07-02 2014-12-23 Sprint Spectrum L.P. Using a coverage area identifier to facilitate network reporting
US9107045B2 (en) * 2013-07-09 2015-08-11 Google Inc. Crowdsourcing method to detect broken WiFi indoor locationing model
US9237418B2 (en) 2013-07-26 2016-01-12 Marvell World Trade Ltd. Positioning database management applied to server-based positioning system
US9100926B2 (en) 2013-08-01 2015-08-04 The Nielsen Company (Us), Llc Methods and apparatus to determine a base station location
US9398465B2 (en) * 2013-08-08 2016-07-19 Intel IP Corporation User equipment distribution information collection
US9313767B2 (en) * 2013-09-19 2016-04-12 Qualcomm Incorporated Using broadcast position and transmit power from access points to form assistance data
TWI511603B (zh) * 2013-10-31 2015-12-01 Acer Inc 電子裝置與無線傳輸方法
US9628359B1 (en) * 2013-12-23 2017-04-18 Google Inc. Network selection using current and historical measurements
FR3019285B1 (fr) * 2014-03-26 2016-05-06 Bull Sas Procede d'assistance au deplacement d'un agent dans un environnement interieur
WO2015162458A1 (en) 2014-04-24 2015-10-29 Singapore Telecommunications Limited Knowledge model for personalization and location services
US10182307B2 (en) 2014-06-02 2019-01-15 Geospock Limited System for providing location-based social networking services to users of mobile devices
EP3170013B1 (en) 2014-07-18 2020-08-19 HERE Global B.V. Obtaining radiomaps
US9911398B1 (en) 2014-08-06 2018-03-06 Amazon Technologies, Inc. Variable density content display
US9794511B1 (en) 2014-08-06 2017-10-17 Amazon Technologies, Inc. Automatically staged video conversations
JP6142898B2 (ja) * 2014-09-30 2017-06-07 ダイキン工業株式会社 測位システム
US9730013B2 (en) * 2014-10-31 2017-08-08 Hsiao-Tse Chang Method, recording medium and electronic device of 3D geolocation
EP3026454B1 (de) * 2014-11-27 2024-02-07 Deutsche Telekom AG Verfahren und drahtloses Kommunikationssystem zum automatischen Bestimmen der Position eines stationären drahtlosen Zugangspunktes für mobile Endgeräte, stationärer drahtloser Zuganspunkt und Computerprogramm
US10809349B2 (en) 2014-12-04 2020-10-20 Here Global B.V. Supporting positioning quality assurance
WO2016086993A1 (en) 2014-12-04 2016-06-09 Here Global B.V. Supporting radio model quality assurance
WO2016087008A1 (en) 2014-12-04 2016-06-09 Here Global B.V. Supporting a collaborative collection of data
KR102280542B1 (ko) 2015-01-13 2021-07-22 삼성전자 주식회사 전자 장치, 무선 중계 장치, 및 무선 중계 장치의 위치 정보 제공 방법
US9462427B2 (en) * 2015-01-14 2016-10-04 Kodiak Networks, Inc. System and method for elastic scaling using a container-based platform
ES2821786T3 (es) * 2015-03-20 2021-04-27 Ericsson Telefon Ab L M Método y aparato para facilitar la coexistencia de redes
US9819905B1 (en) 2015-05-28 2017-11-14 Amazon Technologies, Inc. Video communication sessions between whitelisted devices
US9571979B2 (en) 2015-06-10 2017-02-14 The Nielsen Company (Us), Llc Methods and apparatus for cell tower location estimation using multiple types of data sources
JP6623282B2 (ja) * 2015-08-07 2019-12-18 テレフオンアクチーボラゲット エルエム エリクソン(パブル) 差別化された測位
US9973939B2 (en) * 2015-09-25 2018-05-15 Vivint, Inc. UAV network design
US10063419B2 (en) 2015-10-31 2018-08-28 Mcafee, Llc Establishing nodes for global routing manager
US10154378B2 (en) * 2015-11-23 2018-12-11 Electronics And Telecommunications Research Institute System and method for tracking location of worker
US10841852B2 (en) 2015-12-09 2020-11-17 DataSpark, PTE. LTD. Transportation network monitoring using cellular radio metadata
WO2017124189A1 (en) 2016-01-21 2017-07-27 Rx Networks Inc. Location determination using crowd sourced information
KR102541244B1 (ko) 2016-02-03 2023-06-12 삼성전자주식회사 위치 추정 방법 및 이를 수행하는 전자 장치
US10176340B2 (en) 2016-03-13 2019-01-08 DataSpark, PTE. LTD. Abstracted graphs from social relationship graph
US11157520B2 (en) 2016-03-28 2021-10-26 DataSpark, Pte Ltd. Uniqueness level for anonymized datasets
US20170328682A1 (en) 2016-05-11 2017-11-16 Rivada Research, Llc Method and System for Using Enhanced Location-Based Information to Guide Munitions
US9635510B1 (en) 2016-06-24 2017-04-25 Athentek Innovations, Inc. Database for Wi-Fi position estimation
US10264080B2 (en) * 2016-08-11 2019-04-16 Axon Vibe AG Geo-locating individuals based on a derived social network
US10298699B2 (en) * 2016-09-08 2019-05-21 Microsoft Technology Licensing, Llc Physical location determination of internal network components
US10349375B2 (en) 2016-11-16 2019-07-09 At&T Intellectual Property I, L.P. Location determination based on access point emulation
JP6776848B2 (ja) * 2016-11-25 2020-10-28 富士通株式会社 情報処理システム、情報処理装置及び情報処理方法
AU2017399008A1 (en) 2017-02-17 2019-09-05 Dataspark Pte, Ltd Mobility gene for visit data
US10873832B2 (en) 2017-02-17 2020-12-22 DataSpark, PTE. LTD. Mobility gene for trajectory data
US20210172759A1 (en) 2017-02-17 2021-06-10 Dataspark Pte Ltd Map Matching and Trajectory Analysis
WO2018151672A1 (en) * 2017-02-17 2018-08-23 Dataspark Pte. Ltd. Trajectory analysis through fusion of multiple data sources
US10834600B2 (en) * 2017-05-22 2020-11-10 Apple Inc. Managing moving wireless access points in wireless network positioning system
US9974043B1 (en) * 2017-05-31 2018-05-15 Aruba Networks, Inc. Assigning a subset of access points in a wireless network to a high priority
US10545231B2 (en) 2017-06-02 2020-01-28 Apple Inc. Compressing radio maps using different compression models
US10151824B1 (en) * 2017-06-02 2018-12-11 Apple Inc. Compressing radio maps
CN108169709B (zh) * 2018-03-01 2021-11-16 西京学院 一种基于分布式天线的室内三维定位方法
CN110211204B (zh) * 2018-03-06 2022-07-26 腾讯科技(深圳)有限公司 一种确定道路任务包的方法、装置及存储介质
KR102546949B1 (ko) * 2018-07-13 2023-06-23 삼성전자 주식회사 전자 장치, 서버 장치 및 전자 장치의 위치를 결정하는 방법
KR102531062B1 (ko) 2018-07-13 2023-05-11 삼성전자주식회사 액세스 포인트의 위치 추적 방법 및 이를 위한 전자 장치
KR102645260B1 (ko) 2018-10-25 2024-03-11 삼성전자주식회사 전자 장치 및 전자 장치의 위치 측정 방법
US11191054B2 (en) * 2018-11-02 2021-11-30 Qualcomm Incorporated Method and apparatus for estimating a position of a mobile device using bundled positioning reference signals
US10728709B1 (en) 2019-09-13 2020-07-28 Troverlo, Llc Passive asset tracking with existing infrastructure
US11589187B2 (en) 2019-09-13 2023-02-21 Troverlo, Inc. Passive sensor tracking using observations of Wi-Fi access points
US10848934B1 (en) 2019-09-13 2020-11-24 Troverlo, Llc Passive sensor tracking with existing infrastructure
US11917488B2 (en) * 2019-09-13 2024-02-27 Troverlo, Inc. Passive asset tracking using observations of pseudo Wi-Fi access points
US10848935B1 (en) 2019-09-13 2020-11-24 Troverlo, Llc Passive asset tracking with existing infrastructure
US11622234B2 (en) 2019-09-13 2023-04-04 Troverlo, Inc. Passive asset tracking using observations of Wi-Fi access points
CN114902700A (zh) * 2020-01-21 2022-08-12 联想(北京)有限公司 用于无线通信的方法及设备
KR102259156B1 (ko) * 2020-09-28 2021-06-01 박나은 네트워크 환경 내 디바이스 인증 시스템 및 방법
JP2022119232A (ja) * 2021-02-04 2022-08-17 株式会社東海理化電機製作所 制御装置およびプログラム
US11438834B2 (en) 2021-06-14 2022-09-06 Ultralogic 6G, Llc Searchable database of 5G/6G network access information
EP4261562A1 (en) * 2022-04-14 2023-10-18 Aptiv Technologies Limited Method for estimating a position of an object

Family Cites Families (138)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9016277D0 (en) 1990-07-25 1990-09-12 British Telecomm Location and handover in mobile radio systems
US6278936B1 (en) 1993-05-18 2001-08-21 Global Research Systems, Inc. System and method for an advance notification system for monitoring and reporting proximity of a vehicle
US5444450A (en) 1993-08-11 1995-08-22 Motorola, Inc. Radio telecommunications system and method with adaptive location determination convergence
US5412388A (en) 1993-08-11 1995-05-02 Motorola, Inc. Position ambiguity resolution
US5493286A (en) 1994-03-10 1996-02-20 Motorola, Inc. Method for providing communications within a geographic region
US5539924A (en) 1994-03-10 1996-07-23 Motorola, Inc. Method for providing communications within a geographic region
US5519760A (en) 1994-06-22 1996-05-21 Gte Laboratories Incorporated Cellular network-based location system
US5570412A (en) * 1994-09-28 1996-10-29 U.S. West Technologies, Inc. System and method for updating a location databank
US5508707A (en) 1994-09-28 1996-04-16 U S West Technologies, Inc. Method for determining position by obtaining directional information from spatial division multiple access (SDMA)-equipped and non-SDMA-equipped base stations
US5913170A (en) 1994-11-16 1999-06-15 Highwaymaster Communications, Inc. Locating system and method using a mobile communications network
US5642303A (en) 1995-05-05 1997-06-24 Apple Computer, Inc. Time and location based computing
US5802468A (en) 1995-06-28 1998-09-01 Mci Corporation System and method for identifying calling areas within a communication system
US5945944A (en) 1996-03-08 1999-08-31 Snaptrack, Inc. Method and apparatus for determining time for GPS receivers
US5945948A (en) * 1996-09-03 1999-08-31 Motorola, Inc. Method and apparatus for location finding in a communication system
GB2337386B (en) 1996-09-09 2001-04-04 Dennis J Dupray Location of a mobile station
JPH11196452A (ja) * 1997-12-26 1999-07-21 Hitachi Ltd 移動通信端末、処理装置、および、位置登録エリア設定方法
US6122520A (en) 1998-02-13 2000-09-19 Xerox Corporation System and method for obtaining and using location specific information
US6236861B1 (en) 1998-07-30 2001-05-22 Ramot University Authority For Applied Research And Development Ltd. Method for tracking mobile users in a cellular network
US6269246B1 (en) 1998-09-22 2001-07-31 Ppm, Inc. Location determination using RF fingerprinting
AU6249799A (en) 1998-09-22 2000-04-10 Iridium Ip Llc Method and system for providing a global satellite based telecommunication network
JP2000134662A (ja) 1998-10-26 2000-05-12 Fujitsu Ltd 移動通信システムおよび移動機
US6321092B1 (en) 1998-11-03 2001-11-20 Signal Soft Corporation Multiple input data management for wireless location-based applications
US8135413B2 (en) 1998-11-24 2012-03-13 Tracbeam Llc Platform and applications for wireless location and other complex services
US7783299B2 (en) 1999-01-08 2010-08-24 Trueposition, Inc. Advanced triggers for location-based service applications in a wireless location system
DE19911938A1 (de) 1999-03-17 2000-09-21 Viag Interkom Gmbh & Co Kommunikationssystem für den Mobilfunk und geeignetes Verfahren hierfür
US6232915B1 (en) 1999-08-31 2001-05-15 Qwest Communications International Inc. System and method for identifying clusters of geographic locations
US6490519B1 (en) 1999-09-27 2002-12-03 Decell, Inc. Traffic monitoring system and methods for traffic monitoring and route guidance useful therewith
US6424840B1 (en) 1999-11-05 2002-07-23 Signalsoft Corp. Method and system for dynamic location-based zone assignment for a wireless communication network
US6445937B1 (en) 1999-12-02 2002-09-03 Lucent Technologies Inc. Methods and apparatus for mobile phone power management
US7457628B2 (en) 2000-02-29 2008-11-25 Smarter Agent, Llc System and method for providing information based on geographic position
US6625457B1 (en) 2000-04-11 2003-09-23 Ericsson Inc. Mobile terminal with location database
US8050686B1 (en) * 2000-08-29 2011-11-01 Motorola Mobility, Inc. Method of enabling low tier location applications
US6856807B1 (en) 2000-09-07 2005-02-15 Ericsson Inc. Method to control the update frequency of a positioning device by a mobile terminal
US20020067308A1 (en) 2000-12-06 2002-06-06 Xerox Corporation Location/time-based reminder for personal electronic devices
FI111901B (fi) 2000-12-29 2003-09-30 Ekahau Oy Sijainnin arviointi langattomissa tietoliikenneverkoissa
US7133909B2 (en) 2001-01-12 2006-11-07 Microsoft Corporation Systems and methods for locating mobile computer users in a wireless network
US7576692B2 (en) 2001-02-23 2009-08-18 Nokia Corporation Method for positioning, a positioning system, and an electronic device
US6907224B2 (en) 2001-03-15 2005-06-14 Qualcomm Incorporated Time acquisition in a wireless position determination system
US7072666B1 (en) 2001-06-21 2006-07-04 Spring Spectrum L.P. Method and system for communicating location in a cellular wireless system
US20030013449A1 (en) 2001-07-11 2003-01-16 Hose David A. Monitoring boundary crossings in a wireless network
US7974642B2 (en) 2001-09-10 2011-07-05 Sirf Technology, Inc. System and method for estimating cell center position for cell ID based positioning
EP1292168B1 (en) 2001-09-10 2009-05-06 NTT DoCoMo, Inc. Registration and paging in a mobile communication system
FI113731B (fi) 2001-09-21 2004-05-31 Locus Portal Corp Paikannusmenetelmä matkaviestin verkoille
EP1304897A1 (en) 2001-10-22 2003-04-23 Agilent Technologies, Inc. (a Delaware corporation) Methods and apparatus for providing data for enabling location of a mobile communications device
US7127257B2 (en) 2001-12-27 2006-10-24 Qualcomm Incorporated Use of mobile stations for determination of base station location parameters in a wireless mobile communication system
CN100399041C (zh) 2002-01-21 2008-07-02 诺基亚公司 位置信息的提供
JP2003230171A (ja) 2002-01-31 2003-08-15 Ntt Docomo Inc 移動管理装置、移動通信端末及び移動通信システム
US20040203845A1 (en) 2002-03-22 2004-10-14 Lal Amrish K. Method and system for associating location specific data with data in a mobile database
US7565155B2 (en) 2002-04-10 2009-07-21 Networks In Motion Method and system for dynamic estimation and predictive route generation
US6947880B2 (en) * 2002-04-23 2005-09-20 Motorola, Inc. Method for improving accuracy of a velocity model
AU2003275872B2 (en) 2002-10-30 2008-06-12 Blackberry Limited Methods and device for preferably selecting a communication network which makes data service available
US20040203891A1 (en) 2002-12-10 2004-10-14 International Business Machines Corporation Dynamic service binding providing transparent switching of information services having defined coverage regions
US20040176107A1 (en) 2003-02-07 2004-09-09 Lovleen Chadha Methods and systems for position based tasks for wireless devices
US20070207816A1 (en) 2003-02-24 2007-09-06 Polaris Wireless, Inc. Location Estimation of Wireless Terminals Based on Combinations of Signal-Strength Measurements and Geometry-of-Arrival Measurements
DE10316063A1 (de) 2003-04-08 2004-10-28 O2 (Germany) Gmbh & Co. Ohg Kommunikationssystem für den Mobilfunk mit wenigstens einem in einem Gesamtgebiet befindlichen Teilnehmergebiet
US7346359B2 (en) 2003-07-31 2008-03-18 Pango Networks, Inc. Method for RF fingerprinting
US20050239478A1 (en) 2003-09-03 2005-10-27 Nokia Corporation Terminal location
WO2005062066A2 (en) 2003-10-22 2005-07-07 Awarepoint Corporation Wireless position location and tracking system
US7373109B2 (en) 2003-11-04 2008-05-13 Nokia Corporation System and method for registering attendance of entities associated with content creation
JP4046705B2 (ja) 2004-03-23 2008-02-13 三洋電機株式会社 移動通信支援装置、移動通信端末および移動通信システム
US7460872B2 (en) 2004-07-06 2008-12-02 International Business Machines Corporation Method and application for automatic tracking of mobile devices for computer network processor systems
ATE356507T1 (de) 2004-09-27 2007-03-15 Ibm System und verfahren zur dynamischen planung von aufgaben in abhängigkeit von der position eines mobilen benutzers
JP4922175B2 (ja) 2004-10-19 2012-04-25 ヤフー! インコーポレイテッド 位置に基づくソーシャルネットワーキングシステム及び方法
US7433693B2 (en) 2004-10-27 2008-10-07 Qualcomm Incorporated Location-sensitive calibration data
US8244272B2 (en) * 2005-02-22 2012-08-14 Skyhook Wireless, Inc. Continuous data optimization of moved access points in positioning systems
US8369264B2 (en) * 2005-10-28 2013-02-05 Skyhook Wireless, Inc. Method and system for selecting and providing a relevant subset of Wi-Fi location information to a mobile client device so the client device may estimate its position with efficient utilization of resources
KR101099151B1 (ko) 2004-10-29 2011-12-27 스카이후크 와이어리스, 인크. 위치 표지 데이터베이스와 서버, 위치 표지 데이터베이스구축 방법 및 이것을 이용한 위치 기반 서비스
FR2880505B1 (fr) 2004-12-31 2007-05-11 Evolium Sas Soc Par Actions Si Procede et systeme pour l'exploitation d'un reseau de communications mobiles
JP4465661B2 (ja) 2005-03-01 2010-05-19 株式会社カシオ日立モバイルコミュニケーションズ 移動通信端末及び通信制御方法
WO2006096416A2 (en) 2005-03-04 2006-09-14 Skyhook Wireless, Inc. Encoding and compression of a location beacon database
US8010100B2 (en) 2005-03-15 2011-08-30 Mformation Technologies, Inc. System and method for monitoring and measuring end-to-end performance using wireless devices
US7450064B2 (en) 2005-03-22 2008-11-11 Qualcomm, Incorporated Methods and systems for deriving seed position of a subscriber station in support of unassisted GPS-type position determination in a wireless communication system
US8589532B2 (en) 2005-06-24 2013-11-19 Qualcomm Incorporated Apparatus and method for determining WLAN access point position
US7478578B2 (en) 2005-06-24 2009-01-20 Honeywell International Inc. Commercial airliner missile protection using formation drone aircraft
US8126477B2 (en) * 2005-07-07 2012-02-28 Qualcomm Incorporated Methods and devices for interworking of wireless wide area networks and wireless local area networks or wireless personal area networks
US8311543B2 (en) * 2005-07-07 2012-11-13 Qualcomm Incorporated Methods and devices for interworking of wireless wide area networks and wireless local area networks or wireless personal area networks
UA91866C2 (ru) * 2005-07-07 2010-09-10 Квелкомм Инкорпорейтед Способ и устройство для межсетевого взаимодействия беспроводных глобальных сетей и беспроводных локальных сетей или беспроводных персональных локальных сетей
RU2390791C2 (ru) * 2005-11-07 2010-05-27 Квэлкомм Инкорпорейтед Позиционирование для wlan и других беспроводных сетей
US7664511B2 (en) * 2005-12-12 2010-02-16 Nokia Corporation Mobile location method for WLAN-type systems
US20070290924A1 (en) 2005-12-14 2007-12-20 Innerwireless, Inc. Wireless resource monitoring system and method
KR100651594B1 (ko) 2005-12-29 2006-11-30 주식회사 팬택 목적지 방향표시 기능을 제공하는 이동통신 단말기 및 그방향표시 방법
US8706159B2 (en) 2006-01-03 2014-04-22 Apple Inc. Media data transfer
US7471954B2 (en) 2006-02-24 2008-12-30 Skyhook Wireless, Inc. Methods and systems for estimating a user position in a WLAN positioning system based on user assigned access point locations
JP2007232458A (ja) 2006-02-28 2007-09-13 Seiko Epson Corp 測位装置、測位装置の制御方法、測位装置の制御プログラム、測位装置の制御プログラムを記録したコンピュータ読み取り可能な記録媒体
US20070233899A1 (en) 2006-04-03 2007-10-04 Aborn Justin A Locating devices
US7551929B2 (en) 2006-05-08 2009-06-23 Skyhook Wireless, Inc. Estimation of speed and direction of travel in a WLAN positioning system using multiple position estimations
US7551579B2 (en) 2006-05-08 2009-06-23 Skyhook Wireless, Inc. Calculation of quality of wlan access point characterization for use in a wlan positioning system
US7515578B2 (en) 2006-05-08 2009-04-07 Skyhook Wireless, Inc. Estimation of position using WLAN access point radio propagation characteristics in a WLAN positioning system
AU2006350335A1 (en) 2006-05-16 2008-05-08 Tomtom International B.V. Navigation device with automatic GPS precision enhancement
US7561890B2 (en) 2006-06-22 2009-07-14 Sony Ericsson Mobile Communications Ab Hotspot location database system, mobile terminal for use in such a system and method for creating maintaining and updating such a system
US8144673B2 (en) 2006-07-07 2012-03-27 Skyhook Wireless, Inc. Method and system for employing a dedicated device for position estimation by a WLAN positioning system
US7974645B2 (en) 2006-08-30 2011-07-05 At&T Mobility Ii Llc Mobile registration using a service area identifier or plurality of service area identifiers
WO2008029326A2 (en) * 2006-09-06 2008-03-13 Koninklijke Philips Electronics N. V. Locating reference nodes for positioning
US20080225779A1 (en) 2006-10-09 2008-09-18 Paul Bragiel Location-based networking system and method
JP4957174B2 (ja) 2006-10-19 2012-06-20 ソニー株式会社 位置記憶装置、無線端末、位置記憶システム、位置登録方法、位置更新方法およびプログラム
GB2443860B (en) 2006-10-19 2011-02-16 Vodafone Plc Controlling the use of access points in a telecommunications network
US9226257B2 (en) 2006-11-04 2015-12-29 Qualcomm Incorporated Positioning for WLANs and other wireless networks
US9110903B2 (en) 2006-11-22 2015-08-18 Yahoo! Inc. Method, system and apparatus for using user profile electronic device data in media delivery
GB2445986A (en) * 2007-01-17 2008-07-30 Connect Spot Ltd Database Update Systems for Wireless communications Systems
US8798639B2 (en) * 2007-01-17 2014-08-05 Qualcomm Incorporated Method and apparatus for using historic network information for determining approximate position
US8000276B2 (en) 2007-02-05 2011-08-16 Wefi, Inc. Providing easy access to radio networks
EP1959659B1 (en) 2007-02-15 2009-04-22 Research In Motion Limited Emergency number selection for mobile communications device
KR100896680B1 (ko) 2007-04-13 2009-05-14 에스케이 텔레콤주식회사 G-pCell 데이터베이스를 이용하여 위치에 따라이동통신 단말기에 네트워크 기반의 위치 측위를 제공하는방법 및 시스템
US8768356B2 (en) 2007-04-23 2014-07-01 At&T Mobility Ii Llc Dual mode device with MAC address capture and pairing
US9109904B2 (en) 2007-06-28 2015-08-18 Apple Inc. Integration of map services and user applications in a mobile device
US8290513B2 (en) 2007-06-28 2012-10-16 Apple Inc. Location-based services
US9066199B2 (en) 2007-06-28 2015-06-23 Apple Inc. Location-aware mobile device
US9288751B2 (en) 2007-08-29 2016-03-15 Qualcomm Incorporated Use of position data to select wireless access point
US20090067420A1 (en) 2007-09-11 2009-03-12 General Instrument Corporation Location Determination for a Packet-Switched Device for Providing Location-Based Services
US8711034B2 (en) 2007-10-02 2014-04-29 Ricoh Co., Ltd. Geographically self-labeling access points
EP2056532A1 (en) 2007-11-05 2009-05-06 Spotigo GmbH Determining positions in a wireless radio system
US8620996B2 (en) 2007-11-19 2013-12-31 Motorola Mobility Llc Method and apparatus for determining a group preference in a social network
WO2009070138A1 (en) 2007-11-29 2009-06-04 David Stackpole Dynamic geosocial networking
WO2009089308A2 (en) 2008-01-10 2009-07-16 Apple Inc. Wireless data acquisition for mobile electronic devices
US9094933B2 (en) 2008-01-14 2015-07-28 Qualcomm Incorporated Wireless communication paging utilizing multiple types of node identifiers
US9392572B2 (en) 2008-03-04 2016-07-12 Yahoo! Inc. Using location-based request data for identifying beacon locations
US20090234876A1 (en) 2008-03-14 2009-09-17 Timothy Schigel Systems and methods for content sharing
US8213389B2 (en) 2008-04-15 2012-07-03 Apple Inc. Location determination using formula
US8761786B2 (en) 2008-05-02 2014-06-24 Pine Valley Investments, Inc. System and method for assigning communication cells to servers in a cellular communication system
US20090280801A1 (en) 2008-05-09 2009-11-12 Ajay Malik Cell Sensor for Access Ports
US8089398B2 (en) 2008-06-06 2012-01-03 Skyhook Wireless, Inc. Methods and systems for stationary user detection in a hybrid positioning system
US8885736B2 (en) 2008-06-13 2014-11-11 Ikanos Communications, Inc. Systems and methods for positioning and messaging of reserved tones for peak-to-average ratio (PAR) reduction in DSL systems
US8155666B2 (en) 2008-06-16 2012-04-10 Skyhook Wireless, Inc. Methods and systems for determining location using a cellular and WLAN positioning system by selecting the best cellular positioning system solution
US7916071B2 (en) 2008-12-23 2011-03-29 Andrew, Llc System and method for determining a reference location of a mobile device
US20100255856A1 (en) 2009-04-03 2010-10-07 Microsoft Corporation Location Sensing Selection for Mobile Devices
US8467805B2 (en) 2009-05-08 2013-06-18 Andrew Llc System and method for determining a reference location using cell table data mining
US8434153B2 (en) 2009-08-24 2013-04-30 Microsoft Corporation Application display on a locked device
CN101667208B (zh) 2009-09-25 2013-06-26 深圳创维数字技术股份有限公司 数字电视接收机及其节目搜索、节目切换方法
US8374632B2 (en) 2010-01-04 2013-02-12 Alcatel Lucent Method and apparatus for providing geo-location enablement for wireless device
US8504059B2 (en) * 2010-01-15 2013-08-06 Apple Inc. Location filtering using mobile country code
US8634860B2 (en) 2010-01-15 2014-01-21 Apple Inc. Location determination using cached location area codes
US8433334B2 (en) 2010-01-15 2013-04-30 Apple Inc. Managing a location database for network-based positioning system
US8660576B2 (en) 2010-01-15 2014-02-25 Apple Inc. Adaptive location determination
US8655371B2 (en) 2010-01-15 2014-02-18 Apple Inc. Location determination using cached location area codes
US8200251B2 (en) * 2010-01-15 2012-06-12 Apple Inc. Determining a location of a mobile device using a location database
US20110252422A1 (en) 2010-04-07 2011-10-13 Apple Inc. Opportunistic Multitasking
US8447326B2 (en) * 2010-04-07 2013-05-21 Apple Inc. Selective location determination
US8886158B2 (en) * 2010-12-30 2014-11-11 GreatCall, Inc. Extended emergency notification systems and methods

Also Published As

Publication number Publication date
EP2524553B1 (en) 2019-05-22
CN104125638A (zh) 2014-10-29
BR112012017530A2 (pt) 2016-06-28
US20130231132A1 (en) 2013-09-05
JP2014060737A (ja) 2014-04-03
AU2010341772A1 (en) 2012-08-23
AU2010341772B2 (en) 2015-02-19
US20110176523A1 (en) 2011-07-21
JP2013517679A (ja) 2013-05-16
MX2012008170A (es) 2012-11-06
KR20120124446A (ko) 2012-11-13
JP5722408B2 (ja) 2015-05-20
JP5395963B2 (ja) 2014-01-22
US8433334B2 (en) 2013-04-30
CN104125638B (zh) 2018-02-02
US9119168B2 (en) 2015-08-25
CN102204374A (zh) 2011-09-28
WO2011087529A1 (en) 2011-07-21
CN102204374B (zh) 2014-05-07
KR101355269B1 (ko) 2014-01-27
EP2524553A1 (en) 2012-11-21

Similar Documents

Publication Publication Date Title
BR112012017530B1 (pt) Gerenciamento de uma base de dados de localização para sistema de posicionamento com base em rede
KR101343174B1 (ko) 위치 데이터베이스를 이용한 모바일 장치의 위치 결정
US9078230B2 (en) Selective location determination
JP5389275B2 (ja) 国識別コードを用いた位置フィルタリング
AU2016225929A1 (en) Managing a location database for network-based positioning system
AU2015202130A1 (en) Managing a location database for network-based positioning system

Legal Events

Date Code Title Description
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: A CLASSIFICACAO ANTERIOR ERA: H04W 64/00

Ipc: G01S 5/02 (2010.01), H04W 64/00 (2009.01)

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 13/04/2021, OBSERVADAS AS CONDICOES LEGAIS.