(57)【要約】【課題】位置に基づく情報を提供するための方法、システム、およびプログラムを提供する。【解決手段】モバイルコンピューティングデバイスの地理的な位置が、サーバシステムにおいて受信される。コンテンツの要求が、サーバシステムにおいて、モバイルコンピューティングデバイスから受信される。地理的な位置に対応する検索領域は、サーバシステムにより選択される。検索領域は、地理的な位置に対応する検索領域群から選択される。検索領域群の検索領域の少なくとも1つが、検索領域の他の少なくとも1つの中に、地理的に入れ子にされる。選択された検索領域に対して最も関連があるものとして順位付けられる検索結果は、サーバシステムにより決定される。決定された検索結果を表すコンテンツは、サーバシステムにより提供され、モバイルコンピューティングデバイスにより受信するためのものである。【選択図】図１２
2018037109.tif 000002
【特許請求の範囲】
【請求項１】
位置に基づく情報を提供するための、コンピュータで実施される方法であって、
サーバシステムにおいて、モバイルコンピューティングデバイスの地理的な位置を受信するステップと、
前記サーバシステムにおいて、前記モバイルコンピューティングデバイスからコンテンツの要求を受信するステップと、
前記サーバシステムによって、前記地理的な位置に対応する検索領域を選択するステップと、
前記サーバシステムによって、前記選択された検索領域に対して最も関連があるものとして順位付けされる検索結果を決定するステップと、
前記サーバシステムによって、前記モバイルコンピューティングデバイスにより受信するために、前記決定された検索結果を表すコンテンツを提供するステップと、
を具備し、
前記検索領域は、前記地理的な位置に対応する検索領域群から選択され、
前記検索領域群の中の前記検索領域の少なくとも1つは、前記検索領域の他の少なくとも1つの中に地理的に入れ子にされることを特徴とする方法。
【請求項２】
前記要求は、リソースに対するHTTP要求であり、
前記要求は、前記モバイルコンピューティングデバイスのユーザーにより生成された、検索エンジンシステムに対するクエリを含まず、
前記サーバシステムは、前記検索領域を選択し、前記モバイルコンピューティングデバイスのユーザーにより生成された、検索エンジンシステムに対するクエリを用いることなく、前記検索領域を決定することを特徴とする請求項1に記載の方法。
【請求項３】
前記検索領域群の前記検索領域の各々は、人間が理解可能な1つまたは複数の言語の単語による、説明のための異なる語句を割り当てられ、
前記検索結果を決定するステップは、前記選択された検索領域に割り当てられる前記説明のための語句を含むクエリを、検索エンジンシステムに提出するステップを含むことを特徴とする請求項2に記載の方法。
【請求項４】
前記決定された検索結果は、地理的な座標を用いて位置を特定するコンテンツに対応しないことを特徴とする請求項3に記載の方法。
【請求項５】
前記検索領域群の前記検索領域の前記少なくとも1つは、前記検索領域の少なくとも前記他の1つの中に完全に地理的に入れ子にされることを特徴とする請求項1に記載の方法。
【請求項６】
前記検索領域群の前記検索領域の前記少なくとも1つは、前記検索領域の少なくとも前記他の1つの中に部分的に地理的に入れ子にされることを特徴とする請求項1に記載の方法。
【請求項７】
位置に基づく情報を提供するための、コンピュータで実施される方法であって、
モバイルコンピューティングデバイスによって、前記モバイルコンピューティングデバイスの地理的な位置を決定するステップと、
前記モバイルコンピューティングデバイスから離れたサーバシステムにより受信するために、前記モバイルコンピューティングデバイスによって前記地理的な位置を提供するステップと、
前記サーバシステムにより受信するために、前記モバイルコンピューティングデバイスによってコンテンツの要求を送信し、前記サーバシステムに、
(i)前記地理的な位置に対応する検索領域を選択することであって、前記検索領域が、前記地理的な位置に対応する検索領域群から選択され、前記検索領域群の前記検索領域の少なくとも1つが、前記検索領域の他の少なくとも1つの中に地理的に入れ子にされること、および
(ii)前記選択された検索領域に対して最も関連があるものとして順位付けられる検索結果を決定すること、
を行わせるステップと、
前記モバイルコンピューティングデバイスによって、前記決定された検索結果を表すコンテンツを、前記サーバシステムから受信するステップと、
前記モバイルコンピューティングデバイスによって、前記決定された検索結果を表す前記コンテンツを表示するステップと、
を含むことを特徴とする方法。
【請求項８】
前記コンテンツは、ウェブページに表示され、
前記表示されたコンテンツは、物理的な場所を特定し、
前記ウェブページは、別の検索結果を表し、それが別の物理的な場所を特定するコンテンツの表示は含まれないことを特徴とする請求項7に記載の方法。
【請求項９】
前記ウェブページは、物理的な場所を特定する前記コンテンツに加えて、
(i)音声クエリを検索エンジンシステムに提出するためのユーザー入力を受け取るための、音声クエリ入力ボタンと、
(ii)前記選択された検索領域を示すものと、
(iii)前記選択された検索領域を変更するためのユーザーが選択可能な選択肢と、
を表示することを特徴とする請求項8に記載の方法。
【請求項１０】
前記ウェブページは、物理的な場所を特定する前記コンテンツに加えて、
(i)検索クエリを定義する文字によるユーザー入力を受け取るための検索ボックスと、
(ii)ユーザー入力を受信し、前記検索クエリを検索エンジンシステムに提出するための検索ボタンと、
(iii)前記選択された検索領域を示すものと、
(iv)前記選択された検索領域を変更するための、ユーザーが選択可能な選択肢と、
を表示することを特徴とする請求項8に記載の方法。
【請求項１１】
前記選択された検索領域を前記検索領域群の他の検索領域に変更するユーザー入力を、前記ユーザーが選択可能な選択肢を用いて、受け取るステップと、
前記モバイルコンピューティングデバイスによって、前記検索領域を変更する前記ユーザー入力に応答して、前記他の検索領域に対して最も関連があるものと決定された第2の検索結果を表すコンテンツを受信するステップと、
前記決定された検索結果の前記表示されたコンテンツを、前記第2の検索結果のコンテンツの表示で置き換えるステップと、
をさらに含むことを特徴とする請求項10に記載の方法。
【請求項１２】
前記検索領域を変更する前記ユーザー入力を受け取ったことに応答して、前記他の検索領域が、前記検索領域に関して修正の前よりも関連があるものとしてスコアを付けられるように、前記他の検索領域のスコアを修正するステップをさらに含み、
前記他の検索領域の前記スコアは、前記検索領域と前記他の検索領域のどちらを前記ウェブページに表示するかを選択する際に用いられることを特徴とする請求項11に記載の方法。
【請求項１３】
(i)検索クエリを定義する文字によるユーザー入力を受け取るための検索ボックスと、
(ii)前記検索ボックスに入力された前記検索クエリを検索エンジンシステムに提出する、ユーザー入力を受け取るための検索ボタンと、
を含む第1のウェブページを、前記モバイルコンピューティングデバイスによって、表示するステップと、
前記検索ボックスが検索クエリを定義するユーザー入力を受信していない場合に、前記検索ボタンを選択するユーザー入力を受け取るステップと、
をさらに含み、
検索結果を表すコンテンツの前記送信された要求は、前記検索ボタンを選択する前記ユーザー入力を受け取ったことに応答して、前記モバイルコンピューティングデバイスにより送信されることを特徴とする請求項7に記載の方法。
【請求項１４】
前記決定された検索結果を表す前記受信されたコンテンツは、前記決定された検索結果が特定するURI(Uniform Resource Identifier)を含み、
前記決定された検索結果を表す前記コンテンツを表示するステップは、前記URIにより特定される第2のウェブページを表示するステップを含むことを特徴とする請求項13に記載の方法。
【請求項１５】
前記第2のウェブページは、前記検索ボタンを選択する前記ユーザー入力を受け取った後にユーザー入力を受け取ることなく、前記モバイルコンピューティングデバイスにより表示されることを特徴とする請求項14に記載の方法。
【請求項１６】
前記URIを特定する前記決定された検索結果は、様々な異なる情報プロバイダによりホストされるウェブページのURIを特定する検索結果群から選択されることを特徴とする請求項15に記載の方法。
【請求項１７】
位置に基づく情報を提供するためのシステムであって、
要求するコンピューティングデバイスの地理的な位置を受信し、前記地理的な位置に対応する検索領域を選択するように構成される、検索領域決定器と、
前記選択された検索領域を含むクエリに対して最も関連があるものとして順位付けられる検索結果を決定し、前記要求するコンピューティングデバイスに、前記決定された検索結果を表すコンテンツを提供するように構成される、検索エンジンと、
複数のモバイルコンピューティングデバイスと、
を含み、
前記検索領域は、前記地理的な位置に対応する検索領域群から選択され、
前記検索領域群の前記検索領域の少なくとも1つは、前記検索領域の少なくとも他の1つの中に地理的に入れ子にされ、
前記複数のうちの特定のモバイルデバイスはそれぞれ、
前記特定のコンピューティングデバイスの特定の地理的な位置を決定し、前記特定の地理的な位置を前記検索領域決定器に提供するための、地理的な位置決定器と、
特定の検索結果を表すコンテンツを前記検索エンジンから受信し、前記特定の検索結果を表す前記コンテンツを表示するための、検索結果表示生成器と、
を含むことを特徴とするシステム。
【請求項１８】
前記特定の検索結果を表す前記コンテンツの前記表示は、選択可能なグラフィカルインターフェース要素を含み、
前記グラフィカルインターフェース要素をユーザーが選択することで、前記モバイルコンピューティングデバイスに、前記特定の検索結果を表す追加のコンテンツの表示へ案内させることを特徴とする請求項17に記載のシステム。
【請求項１９】
前記検索領域群の前記検索領域の各々に割り当てられるスコアを修正するための、検索領域重み付け器をさらに含み、
前記検索領域の各々の前記スコアは、前記検索領域決定器により前記検索領域を選択する際に用いられることを特徴とする請求項18に記載のシステム。
【請求項２０】
前記検索領域重み付け器は、前記特定の検索結果に対する前記選択可能なグラフィカルインターフェース要素を、ユーザーが選択したことに応答して、前記決定された検索領域の前記スコアを修正することを特徴とする請求項19に記載のシステム。
【請求項２１】
前記特定の検索結果に対する追加のコンテンツの前記表示は、前記選択された検索領域以外の、前記検索領域群の少なくとも1つの別の検索領域に対する、選択可能なグラフィカルインターフェース要素の表示を含み、
前記検索領域重み付け器は、前記他の検索領域に対する前記グラフィカルインターフェース要素をユーザーが選択したことに応答して、前記他の検索領域に対する重みを修正することを特徴とする請求項20に記載のシステム。
【請求項２２】
前記クエリは、前記モバイルコンピューティングデバイスのユーザーにより入力された文字列を含まないことを特徴とする請求項17に記載のシステム。
【請求項２３】
前記検索エンジンは、特定のインターフェース要素の選択に応答して、前記特定の検索結果を決定し、
前記特定のインターフェース要素は、クエリ入力テキストボックスを用いて提供されたユーザーコンテンツによって定義されるクエリを、コンピューティングデバイスから前記検索エンジンに提出するのに用いられ、
前記特定のインターフェース要素の前記選択は、前記クエリ入力テキストボックスがユーザーコンテンツを提供されていない場合に実行されることを特徴とする請求項17に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、2009年12月4日に出願された、「Location-Based Searching」という表題の米国特許仮出願第61/266870号の優先権を主張し、上記の出願の内容の全てが、参照によって本明細書に組み込まれる。
【０００２】
この文書は全般に、位置に基づく検索のための技術、方法、システム、および機構を説明する。
【背景技術】
【０００３】
位置情報に対応する強力なモバイルデバイスの人気に伴って、近くの関心のある場所についての情報を迅速に見つけ出すことについて、ユーザーの関心が高まっている。この関心に対応するために、決定された地理的な位置に基づいて情報を取り出すための、システムおよび方法が定められてきた。しかし、近くの関心のある場所についての関連情報を迅速に発見することは、面倒で煩わしいことがある。
【０００４】
たとえば、システムは、モバイルデバイスからの全地球測位システム(GPS)情報またはタワー三角測量技術を用いることなどによって、ユーザーのクエリを提出するモバイルデバイスの地理的な位置を特定することができる。そのような情報は、「周辺の」検索を実行するためにサーバシステムにより用いることができ、報告されたデバイスの位置の近くに位置する検索結果が、他の結果よりも優先される。そのような技術は、たとえば、ユーザーが「イタリアンレストラン」を自身のモバイルデバイスでクエリとして提出した場合に、ユーザーの周囲のレストランの名前を返すために用いられうる。
【発明の概要】
【課題を解決するための手段】
【０００５】
この文書は、位置に基づく検索を実行するための技術、方法、システム、および機構を説明する。一般に、モバイルデバイスのユーザーが、(たとえば、クエリをタイプするまたは発声することによって)明示的に検索クエリを入力する必要なく、モバイルコンピューティングデバイスは、検索結果に対応するコンテンツを表示することができる。検索結果は、クエリに応答するものとして、検索領域に対して検索エンジンにより選択されたものであってよく、この検索領域は、モバイルコンピューティングデバイスの地理的な位置に基づいて選択されたものである。検索領域は、地理的な位置に対応するいくつかの検索領域から選択されてもよい。このいくつかの領域は、互いに地理的に入れ子にされてもよく、全てがその地理的な位置を含む領域であってもよい。検索結果は、ユーザーがデバイスの電源を入れることで、ユーザーがデバイス上でブラウザを起動することで、ユーザーがクエリを定義することなく「検索」ボタンを選択することで、または他の同様の方式で、自動的に生成されうる。
【０００６】
いくつかの例では、検索結果のコンテンツの表示はウェブページで提供され、ユーザーがコンテンツを選択することで、モバイルコンピューティングデバイスに、(たとえば異なるウェブページに案内することによって)検索結果に対応する追加のコンテンツを表示させることができる。ウェブページは、他の検索結果のコンテンツを含まなくてもよい。さらに、ウェブページは、検索結果を選択するために用いられた検索領域を示すものを含みうる。
【０００７】
ユーザーは、選択された検索領域を変更するためにユーザー入力を与えることができる。選択された検索領域を変更することで、検索エンジンに新たな検索結果を決定させることができ、コンピューティングデバイスに新たな検索結果のコンテンツを表示させることができる。ウェブページは、文字による検索クエリを定義するための検索ボックスの表示、およびクエリを提出するためのインターフェース要素をさらに含みうる。検索領域を変更するユーザー入力は、検索領域の各々のスコアを修正するために用いられてもよく、スコアは、いくつかの検索領域からの検索領域の選択において用いられる。
【０００８】
いくつかの例では、同一のウェブページまたは異なるウェブページが、文字による検索クエリを定義するための検索ボックスと、クエリを提出するためのインターフェース要素とを含む。ユーザーが検索ボックスでクエリを定義していない場合、クエリを提出するためのインターフェース要素をユーザーが選択することで、コンピューティングデバイスに、選択された検索結果のコンテンツを表示するウェブページへ案内させることができる。
【０００９】
本明細書で説明される実装形態は、検索領域に基づく少なくとも1つの結果の項目(Result Item)を提供する方法に関する。方法は、モバイルデバイスから、位置に基づく検索の要求を受信するステップを含む。方法はさらに、モバイルデバイスから地理的な位置を受信するステップを含む。加えて、方法は、地理的な位置および許容誤差に基づいて、検索領域を決定するステップを含む。さらに、方法は、検索領域に基づいて少なくとも1つの結果の項目を求めるステップをさらに含む。最後に、方法は、検索の要求に応答して、少なくとも1つの結果の項目をユーザーに提供するステップをさらに含む。
【００１０】
別の実装形態によれば、検索位置に基づいて少なくとも1つの結果の項目を提供するためのシステムが、提供される。モバイル検索モジュールが提供され、ユーザーからの要求を受け取るように構成される。モバイル検索モジュールはさらに、地理的な位置決定器モジュールから地理的な位置を受信し、その地理的な位置をサーバに通信するように構成される。さらに、モバイル検索モジュールは、決定された検索領域に基づいて、サーバから少なくとも1つの結果の項目を受信するように構成され、決定された検索領域は、通信された地理的な位置に基づく。最後に、モバイル検索モジュールは、ディスプレイを用いて、ユーザーに少なくとも1つの結果の項目を提供するように構成される。
【００１１】
ある例では、特定の実装形態が、以下の利点のうちの1つまたは複数を実現するために実装されうる。検索結果は、ユーザーのモバイルコンピューティングデバイスの地理的な位置の抽象度に基づいて、そのユーザーに対して特定されうる。したがって、検索結果は、全般的な領域に関連がありうる。地理的な領域に関連がある検索結果を示すものは、検索クエリを定義および提出するためのテキストボックスに付随するものとして、ウェブページに表示されうる。したがって、ユーザーが検索クエリを定義して提出するためにウェブページを訪れるときに、ユーザーの位置に関連する推奨される検索結果を与えられうる。また、ユーザーは、検索クエリが定義されていないときに、ユーザー入力を与えて検索クエリを提出することができる。そのように、検索クエリを「空」で提出することで、コンピューティングデバイスに、推奨される検索クエリのコンテンツを表示させることができる。
【００１２】
1つまたは複数の実装形態の詳細が、以下の添付図面および説明において述べられる。他の特徴、目的、および利点は、説明および図面から、ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【００１３】
【図１】位置に基づく検索を提供するための、ネットワークのアーキテクチャを示す図である。
【図２】図1のシステムのコンポーネントの、より詳細な図である。
【図３Ａ】図2のシステムのコンポーネントがどのように相互に動作しうるかを示す、図である。
【図３Ｂ】図2のシステムのコンポーネントがどのように相互に動作しうるかを示す、図である。
【図３Ｃ】図2のシステムのコンポーネントがどのように相互に動作しうるかを示す、図である。
【図４】ユーザーおよび異なる検索領域を示す図である。
【図５】ユーザー、異なる検索領域、および地理的な位置の推定の許容誤差を示す図である。
【図６Ａ】例示的なユーザーインターフェースを示す図である。
【図６Ｂ】例示的なユーザーインターフェースを示す図である。
【図６Ｃ】例示的なユーザーインターフェースを示す図である。
【図６Ｄ】例示的なユーザーインターフェースを示す図である。
【図６Ｅ】例示的なユーザーインターフェースを示す図である。
【図６Ｆ】例示的なユーザーインターフェースを示す図である。
【図７Ａ】例示的なユーザーインターフェースを示す図である。
【図７Ｂ】例示的なユーザーインターフェースを示す図である。
【図７Ｃ】例示的なユーザーインターフェースを示す図である。
【図８】例示的なユーザーインターフェースを示す図である。
【図９Ａ】検索の位置に基づいて少なくとも1つの結果の項目を提供する、コンピュータで実施される例示的な方法の流れ図である。
【図９Ｂ】検索の位置に基づいて少なくとも1つの結果の項目を提供する、コンピュータで実施される例示的な方法の流れ図である。
【図１０】1つの実装形態を実装するために用いられうる、例示的なコンピュータシステムを示す図である。
【図１１】モバイルコンピューティングデバイスにより実行される、位置に基づく検索を示す図である。
【図１２】モバイルコンピューティングデバイスとサーバシステムとの間の通信に基づいて、位置に基づく検索を実行するためのシステムの概念的な図である。
【図１３】この文書で説明されるシステムおよび方法を実施するために用いられうる、システムの概念的な図である。
【図１４】クライアント、サーバ、または複数のサーバのいずれかとして、この文書で説明されるシステムおよび方法を実装するために用いられうる、コンピューティングデバイスのブロック図である。
【発明を実施するための形態】
【００１４】
様々な図面における同様の参照記号は、同様の要素を示す。
【００１５】
この文書は、全般に、位置に基づく検索を説明する。モバイルコンピューティングデバイスは、サーバシステムが、コンピューティングデバイスの地理的な位置に対応するコンテンツを提供することを要求することができ、それに応答して、そのようなコンテンツを表示するために受信することができる。様々な例において、コンテンツは、明示的にユーザーが入力した文字または音声によるクエリに応答して提供されるものではない。たとえば、コンテンツは、デバイスがある地理的な領域に入ったこと、デバイスの電源が入れられたこと、またはデバイスがデバイスの周囲の物理的な領域の変化を感知したこと(たとえば、マイクロフォンがデバイスの周囲の音が変わったのを検知したこと、または加速度計が、デバイスまたはデバイスのユーザーの状態が、たとえば静止中から歩行中のように変わったのを検知したこと)に応答して、提供されうる。
【００１６】
コンテンツは、モバイルデバイスの地理的な位置に間接的に基づいて、モバイルデバイスに対して選択されうる。たとえば、地理的な位置に対応する検索領域を決定することができ、決定された検索領域は、クエリの一部として検索エンジンに提供されうる。クエリに応答する、最も関連があると順位付けられた検索結果のコンテンツは、表示するためにモバイルコンピューティングデバイスに返されうる。
【００１７】
さらに詳細には、個人がコンピューティングデバイスを用いてもよく、モバイルコンピューティングデバイスは、自身の地理的な位置の推定(以下デバイスの「地理的な位置」)を求めることができる。たとえば、モバイルコンピューティングデバイスは、近くのWi-Fiルータまたは携帯電話電波塔を識別することによって、または、携帯電話電波塔または宇宙の航法衛星からの信号を三角測量することによって、モバイルコンピューティングデバイスの地理的な位置を決定することができる。モバイルコンピューティングデバイスは、たとえば、周期的な位置の更新として、または、地理的な位置に基づいて特定されることになる検索結果のコンテンツの要求(たとえば検索クエリ)とともに、サーバシステムに地理的な位置を提供することができる。
【００１８】
サーバシステムは、地理的な位置を受信し、地理的な位置に対応するいくつかの「検索領域」のうちの1つを選択することができる。たとえば、地理的な位置に対応する検索領域は、その地理的な位置を含む検索領域、または、その地理的な位置に地理的に近い検索領域であってよい。概念的な例示として、地理的な位置は、マトリョーシカ人形のように、互いに地理的に入れ子にされた7個の検索領域に対応しうる。入れ子にされた検索領域の例示的なセットは、大陸、国、州、郡、市、近隣地域、ショッピングセンター、および店舗の指定子を含む。したがって、入れ子にされた検索領域群の各検索領域は、「最上位」の検索領域を除いて、より上位の検索領域を空間的に含んでもよく、入れ子にされた検索領域群の各検索領域は、「最下位」の検索領域を除いて、より下位の検索領域を空間的に含んでもよい。
【００１９】
第1の検索領域は、第2の検索領域の中に、完全に地理的に入れ子にされうる。たとえば、第1の検索領域には、第2の検索領域の外にある部分はなくてもよい。第1の検索領域は、第2の検索領域の中に、部分的に地理的に入れ子にされてもよい。たとえば、第1の検索領域の一部が第2の検索領域の外側にあってもよく、第1の検索領域の一部が第2の検索領域の内側にあってもよい。
【００２０】
複数の検索領域が地理的な位置に対応しうるので(たとえば、地理的な位置がいくつかの検索領域の各々の中にあるので)、様々な要因を各検索領域に「スコアを付ける」ために用いることができ、したがって、最も関連があるものとスコアを付けられる検索領域を選択する際に用いることができる。この様々な要因は、決定された地理的な位置の正確さ、(この文書全体でより詳細に説明されるような)検索領域に対応する検索結果とのユーザー対話を含む。
【００２１】
推定される地理的な位置は地理的な座標により定義されうるが、選択された検索領域は、境界を定める地理的な座標のセット(たとえば、多くの地理的な座標により定義される、都市または近隣地域の非円形の境界)により定義されうる領域を特定することができる。
【００２２】
選択された検索領域は、検索エンジンに提出されうる。選択された検索領域は、自然言語による説明のための言葉と関連付けられうる。例示として、サーバシステムが、サンフランシスコ市またはサンフランシスコ大都市圏の中のある位置を表す座標を、モバイルデバイスから受信したことに応答して、サンフランシスコ市という検索領域が、サーバシステムにより選択されうる。サンフランシスコ市が、(たとえば、「ベイエリア」および「カリフォルニア」を含む検索領域群から)検索領域として選択されると、「サンフランシスコ」という言葉が、サンフランシスコに対する、自然言語による説明のための言葉として取り出されうる。
【００２３】
いくつかの例では、説明のための言葉が、地理的な座標の代わりに、検索エンジンに提出される。たとえば、サーバシステムにおける検索エンジンは、説明のための言葉「サンフランシスコ」を受信し、「サンフランシスコ」という言葉を用いて検索を実行することができる。様々な例において、検索エンジンは、検索の際に地理的な座標を受け取らず、使用しない。様々な例において、説明のための言葉は、検索クエリのコンテンツにすぎない。検索エンジンは、ウェブページ上のテキストボックスを通じて、インターネットのユーザーから文字によるクエリを受信する、通常の検索エンジンであってよい。したがって、モバイルコンピューティングデバイスは、(自然言語のクエリに変換される)座標を提供することによってクエリを実行し、ユーザーが自然言語のクエリをテキストボックスに入力した場合と同じでありうる、1つまたは複数の検索結果を受信することができる。
【００２４】
様々な例において、モバイルコンピューティングデバイスは、特定のウェブページに対してリソースを要求する際に、自動的に検索結果を要求する。たとえば、ユーザーは、検索エンジンのウェブサイトのURI(Uniform Resource Identifier)を入力して、「Go」ボタンを選択することができる。コンピューティングデバイスは、インターネットを通じて要求を送信し、それに応答して、特定のウェブページの表示を生成するためのリソースを受信することができる。特定のウェブページは、モバイルコンピューティングデバイスの地理的な位置に関連する、単一の検索結果を示すものを表示するように構成されうる。たとえば、ウェブページは、図8に表示されるウェブページであってよく、単一の検索結果を示すものは、グラフィカルユーザーインターフェース要素810であってよい。
【００２５】
様々な例において、ウェブページは、単一の検索結果を示すものを要求するための、実行可能コード(たとえばJavaScript(登録商標))によりレンダリングされる。他の例では、サーバシステムは、ウェブページのリソースを提供するための要求を受信すると、モバイルコンピューティングデバイスの地理的な位置を特定し、検索領域を決定し、検索領域に応じた検索結果を決定し、ウェブページの表示を生成するためのリソースとともに検索結果を示すものを提供する。したがって、ユーザーは、図8のウェブページの表示を要求することができ、ウェブページは、ユーザーが、ウェブページのリソースの要求を提出した後(たとえば、上述の「Go」ボタンを選択した後、またはウェブページのブックマックを選択した後)にモバイルコンピューティングデバイスに何らユーザー入力を与えることなく、表示のために出現しうる。
【００２６】
様々な例において、ウェブページは、検索エンジンのクエリをユーザーが提出したことに応答して表示されるウェブページではなくてもよい。様々な例において、モバイルコンピューティングデバイスの現在の位置に関連する単一の検索結果を示すものは、ユーザーが文字または音声によるクエリを入力していなくても、ウェブページに表示されうる。そのような状況で検索エンジンに提出されるクエリは、モバイルコンピューティングデバイスの地理的な位置に基づいていてもよく、サーバシステムにより生成されてもよい。
【００２７】
検索結果は、検索結果のリポジトリから検索エンジンにより選択されていてもよい。様々な例において、リポジトリ中の検索結果の各々は、インターネット上の情報サービス提供者によりホストされウェブサイトを巡回しウェブサイトのコンテンツを識別する検索エンジンクローラーにより検索結果として識別された、ウェブページを特定する。たとえば、グラフィカルインターフェース要素801は、映画館「Century 16」を識別する。グラフィカルインターフェース要素810を選択することで、モバイルコンピューティングデバイスに、映画館の会社によりホストされかつ運営され、映画館の会社が選択したドメインでホストされる、ウェブページへ案内させることができる。
【００２８】
他の例では、検索結果のリポジトリは、単一の情報プロバイダによりホストされるウェブページを特定する。群の中のウェブページの各々は、同様の体裁であってよく、単一の場所を各々特定してもよい(たとえば、各ページは、この文書全体で説明されるようなPLACE PAGEであってよい)。したがって、単一の情報プロバイダは、数百、数千、または数百万もの地理的な場所についてのウェブサイト群を、保存することができる。
【００２９】
単一の情報プロバイダによりホストされるウェブページをリポジトリが特定する例では、各ウェブページのために保存されるデータは、いくつかの情報のカテゴリーの各々のコンテンツを含むように構成されうる。たとえば、映画館「Century 16」のグラフィカルユーザーインターフェース要素をユーザーが選択すると、映画館Century 16のための追加のコンテンツを表示するページが、ユーザーに提示されうる。このページは、映画館の写真、映画館の場所を特定する地図、映画館の電話番号および住所、ならびに映画館に対するユーザーの評価を含みうる。
【００３０】
加えて、映画館のためのページは、映画館の場所に対応する検索領域を表示してもよい。たとえば、映画館は、「カリフォルニア州マウンテンビュー」、「ベイエリア」、および「カリフォルニア」という検索領域の中に地理的に位置していてもよい。したがって、これらの検索領域の各々へのリンクが、映画館のためのウェブページの表示領域に現れてもよい。関連する検索領域の1つに対するグラフィカルインターフェース要素をユーザーが選択することで、関連する検索領域のコンテンツの表示への案内を引き起こすことができる。たとえば、検索領域についての全般的な情報が提示されうる。いくつかの例では、選択された検索領域について最も関連があると判定されたウェブサイトが、表示されうる。
【００３１】
映画館のためのウェブページにおいて、ユーザーが検索領域を選択して、選択された検索領域の強調、または検索エンジンに提供された検索領域の強調を修正し、映画館「Century 16」の検索結果を識別することができる。たとえば、モバイルデバイスのユーザーが映画館「Century 16」のボタン810を選択し、次いで「ベイエリア」に対応する閲覧コンテンツへのリンクを選択した場合、「ベイエリア」へのリンクを選択することは、選択された検索領域と、選択された検索領域の検索結果に不満足であることを示しうる。したがって、検索領域「ベイエリア」はより重みを与えられてもよく、検索領域「カリフォルニア州マウンテンビュー」は重みを軽くされてもよい。この重み付けは、モバイルコンピューティングデバイスの周りの地理的な領域に対するものであってよく、または、モバイルデバイスの地理的な位置が対応する最下層の領域(たとえば、検索領域カリフォルニア州マウンテンビュー)に基づいてもよい。
【００３２】
図8に表示されるウェブページはまた、検索結果(たとえば、インターフェース要素810と関連する検索結果)を選択するために用いられた検索領域を特定する、インターフェース要素815も含む。言い換えると、ウェブページは、検索結果を決定するために用いられた、検索領域を示すものを表示する。様々な例において、ユーザーは、たとえば、リンク「位置の改善(Refine location)」830を選択することによって、または検索領域825に対し表示される文字を選択することによって、検索領域を変更することができる。
【００３３】
リンク「位置の改善(Refine location)」830を選択したことに応答して、ユーザーは、モバイルコンピューティングデバイスの地理的な位置に対応する他の検索領域の一覧を示されうる。ユーザーが他の検索領域の1つを選択したことに応答して、検索領域の文字列825は、新たに選択された検索領域を特定するように更新されてもよく、インターフェース要素810は、新たに選択された検索領域に応じた新たな検索結果を表示するように更新されてもよい。
【００３４】
様々な例において、サーバシステムは、ユーザー入力の結果として、検索領域への変更の統計的なデータベースを保持する。第1の検索領域から第2の検索領域に変更することで、第2の検索領域への重み付けを重くし、第1の検索領域への重み付けを軽くすることができる。検索領域のいずれかに対する、変更された重み付けは、検索領域の全ての選択に対する全般的なものであってよく、または、第1の検索領域の決定のもととなった決定された地理的な位置と関連する領域に対する、検索領域の選択に固有のものであってもよい。決定された地理的な位置に関連する領域は、地理的な位置が対応する最下層の検索領域であってもよい。
【００３５】
いくつかの例では、インターフェース要素810をユーザーが選択すると表示されるウェブページは、ユーザーがクエリを提出するためにグラフィカルインターフェース要素を選択したとき、関連するクエリの入力テキストボックスがユーザーの入力を何も受け取っていないときに表示されうる。たとえば、ユーザーが、検索エンジンのクエリ入力のテキストボックス850の隣に現れる、クエリ提出グラフィカルインターフェース要素860を選択すると、クエリ入力テキストボックス850に文字を入力する必要なく、モバイルデバイスは、ユーザーが単にインターフェース要素810を選択した場合と同じページを表示することができる。
【００３６】
様々な例において、クエリ提出インターフェース要素860を表示するウェブページが、検索領域825の文字による表示、インターフェース要素810、およびリンク830の組み合わせを何ら含まなくても、ユーザーは、クエリ提出インターフェース要素860を選択して、ウェブページへの案内を引き起こすことができる。様々な例において、クエリ提出インターフェース要素860の選択に応答して、決定された検索結果を特定するコンテンツが、クエリ入力のテキストボックス850からドロップダウンするボックスの中に表示される。
【００３７】
様々な例において、ドロップダウンボックスは、現在の検索領域に対する、最も人気のあるクエリの推奨を含む。様々な例において、ドロップダウンボックスは、現在の検索領域に対して最も関連があるものとして順位付けされる、検索結果の一覧を含む。様々な例において、ドロップダウンボックスは、現在の位置に関連がある、検索領域の一覧を含む。ユーザーがドロップダウンボックスから検索領域を選択することで、モバイルデバイスに、検索領域と関連するウェブページへ、または検索領域に最も関連があると順位付けされた単一のウェブページへ、案内させることができる。
【００３８】
実際には、クエリ提出ボタン860の選択(または、ユーザーが入力したクエリがない場合に、ユーザーにより入力されるクエリを通常「提出する」であろうユーザー入力を与えること)は、モバイルコンピューティングデバイスの現在の位置に対する、「I'm Feeling Lucky」ボタンであると考えられうる。それに応答する表示は、モバイルコンピューティングデバイスの位置(またはそれから決定された検索領域)に対して最も高く順位付けされた単一のウェブサイトのためのものであってよく、または、応答する検索結果の一覧のためのものであってもよい。様々な例において、モバイルコンピューティングデバイスの現在の位置に対する「I'm Feeling Lucky」ボタンは、クエリ提出インターフェース要素である必要はない。
【００３９】
様々な例において、ウェブページは、遠隔のコンピューティングデバイスからネットワーク接続を通じて受信されるコンテンツを少なくとも一部用いる、クライアントデバイスによって生成される、表示であってよい。ウェブページは、ウェブブラウザによりレンダリングされてもされなくてもよい。たとえば、ウェブページは、アプリケーションプログラムにより生成される表示であってよい。
【００４０】
[概要]
この文書で説明される方法およびシステムの実装形態は、位置に基づく検索に関する。位置に基づく検索は、たとえば、地理的な位置から検索領域を決定するステップと、検索領域の近くのPOI(point of interest)を検索するステップと、検索を改善するステップと、検索結果を提示するステップとを含みうる。この文書は、特定の用途のための例示的な実装形態に言及するが、他の実装形態も考えられることを理解されたい。
【００４１】
モバイルユーザーは、ユーザーの現在の地理的な位置の近くに、どのようなPOIがあるかを知ることを望むことが多い。たとえば、そのようなPOIは、限定はされないが、レストラン、店舗、事業所、公園、ランドマーク、および観光地であってよい。さらに、ユーザーは、すぐ近くのPOIには関心がないことがあり、むしろ、限定はされないがたとえば、自分が現在その中にいる特定のショッピングセンター、町、または市に近い地点に関心がありうる。したがって、この情報をユーザーのモバイルデバイスに提供しうるアプリケーションは、ユーザーにとって大変便利であろう。
【００４２】
以下のセクションは、位置に基づく検索を実行するためのシステムおよび方法を、より詳細に説明する。
【００４３】
[システム]
このセクションは、モバイルデバイスのユーザーが、位置に基づく検索を実行することを可能にする、システムを説明する。図1は、セルラーネットワーク100の概念的な表現を例示する。ネットワーク100は、様々なモバイルデバイス110A〜Cおよび無線基地局140A〜Cを含む。ネットワーク100は、たとえば、GSM(登録商標)、TDMAまたはCDMA技術に対応したモバイルネットワーク、任意の形態のワイヤレスネットワーク(たとえばIEEE802.11、Bluetooth(登録商標)または他のWi-Fiネットワーク)、または有線もしくはワイヤレスネットワークの組み合わせであってよい。以下の説明ではGSM(登録商標)ネットワークが例として用いられるが、この説明はGSM(登録商標)ネットワークに限定されるものではないことに留意されたい。3個のモバイルデバイスおよび3個の無線基地局が、例示を目的として示されるが、ネットワーク100は、任意の数のモバイルデバイスおよび無線基地局を含んでもよい。ネットワーク100は、限定はされないが、Wi-Fi、Bluetooth(登録商標)、またはセルラー信号を含む信号を送信および受信するために用いられうる。ある例では、ネットワーク100と関連する各デバイスは、帯域(周波数帯)の割り当てられた部分のセグメント(チャネル)で、既知のプロトコルに従って、データ(パケット)を送信および受信することができる。たとえば、プロトコルのIEEE802.11シリーズは、2.4GHz周波数帯に位置するISMバンド、または4.9GHz周波数帯に位置する公共安全向けバンドのような、帯域の所定のチャネルで送信されうる、様々な種類の形式のパケットを規定する。
【００４４】
モバイルデバイス110A〜Cは、ワイヤレスネットワークを通じて、任意の形態のデータを交換するように構成される、任意のデバイスを含みうる。各モバイルデバイス110A〜Cは、無線基地局140A〜Cと通信することができる。無線基地局140A〜Cは、モバイルデバイス110A〜Cが、ネットワーク100またはネットワーク100に接続される任意の他のネットワークを通じて通信することを可能にしうる。ある実装形態では、受動的な無線位置決め技術により、デバイス110A〜Cのユーザーが、全地球測位システム(GPS)機能なしで、たとえばWi-Fi、Bluetooth(登録商標)登録商標、セルラー信号により、自身のおおよその位置(たとえば、大都市圏、または緯度および経度のデータ)を求めることを可能にしうる。ある実装形態では、受動的な無線位置決め技術は、GPS技術の機能を妨げることがある、いわゆるアーバンキャニオンや建物内での問題を回避することができる。
【００４５】
各無線基地局140A〜Cは、ネットワークのハブ170として動作する、ある形態の無線受信機または送信機であってよい。各無線基地局140A〜Cはまた、有線のネットワークとネットワーク100の間のゲートウェイ、または、任意の他のネットワークとネットワーク170の間のゲートウェイであってよい。ある実装形態では、各無線基地局140A〜Cは、Wi-Fiルータまたは任意の他の形態のワイヤレス通信ハブであってよい。別の例では、無線基地局140A〜Cは、1つまたは複数のクライアントデバイスをサポートするワイヤレスルータであってよく、一部の無線基地局は信号リピータとして動作してもよい。たとえば、カバレッジ領域130Aでは、モバイルデバイス110Aは、無線基地局140Aを用いてデータを送受信する。
【００４６】
図2は、モバイルデバイス110にワイヤレスに接続された、図1に示されるような無線基地局140を示す。位置検索サーバ250は、ネットワーク170に通信可能に接続される。位置検索サーバ250は、1つまたは複数のコンピューティングデバイス上で実装されうる。そのようなコンピューティングデバイスは、限定はされないが、パーソナルコンピュータ、ワークステーションのようなモバイルデバイス、ミニコンピュータ、クラスタ化されたコンピュータシステム、および組込みシステムを含みうる。そのようなコンピューティングデバイスは、限定はされないが、1つまたは複数のプロセッサを有するデバイス、および、命令を実行し保存するためのメモリも含みうる。そのようなコンピューティングデバイスは、ソフトウェア、ファームウェア、およびハードウェアを含みうる。ソフトウェアは、1つまたは複数のアプリケーションおよびオペレーティングシステムを含みうる。ハードウェアは、限定はされないが、プロセッサ、メモリ、およびグラフィカルユーザーインターフェースディスプレイを含みうる。以下の図10の説明で論じられるように、本明細書で説明される実装形態は、ハードウェア、ソフトウェア、またはこれらの組み合わせを用いて実装することができ、コンピュータシステムまたは他の処理システムにおいて実装することができる。
【００４７】
位置検索サーバ250はウェブサーバを含んでもよく、同じ位置または異なる位置においてウェブサーバと通信するように接続されうる。ウェブサーバは、HTTP応答によりHTTP要求に応答する、ソフトウェアコンポーネントであってよい。説明のための例として、ウェブサーバは、限定はされないが、Apache HTTP Server、Apache Tomcat、MICROSOFT Internet Information Server、JBOSS Application Server、WEBLOGIC Application Server、またはSUN JAVA（登録商標） System Web Serverであってよい。ウェブサーバは、HTTP要求に応答してコンテンツを生成する、ウェブアプリケーションを格納しうる。ウェブサーバは、生成されたコンテンツをパッケージ化して、HTTP応答の形でクライアントにコンテンツを提供することができる。そのようなコンテンツは、HTML、拡張マークアップ言語(XML)、文書、映像、画像、音声、マルチメディア機能、またはこれらの任意の組み合わせを含みうる。説明された実装形態のコンピュータによる実装は、図10の説明においてさらに論じられる。
【００４８】
図3Aは、ユーザーが位置に基づく検索を実行することを可能にするための、システム300のアーキテクチャを示す図である。大まかに言って、本明細書で説明される実装形態では、モバイルデバイス110はまず地理的な位置を求め、次いで「検索領域」がこの位置に基づいて決定される。以下でさらに論じられるように、地理的な位置は、たとえば、緯度および経度の組み合わせ、または住所により特定されるような、物理的な位置の推定でありうる。他の種類の物理的な位置の特定が用いられてもよい。
【００４９】
図3Aの図は、位置に基づく検索を実行するある実装形態による、図1および2に示されるシステム100および200のコンポーネントのいくつかの、より詳細な図である。ある実装形態では、図3Aは、モバイルデバイス110および位置検索サーバ250を示し、モバイルデバイス110は、モバイル検索アプリケーション210および位置決定器330を含む。図3Aに示される実装形態では、モバイル検索アプリケーション210は、ディスプレイ320、検索要求器325、および検索領域決定器340を含む。図3Aに示される実装形態では、モバイルデバイス110は、検索領域342を位置検索サーバ250に転送し、結果の項目352を受信する。
【００５０】
大まかに言って、以下で説明されるように、本明細書で説明される実装形態では、図3Aに示されるように、位置決定器330はモバイルデバイス110の地理的な位置を決定し、この決定された位置を検索領域決定器340に転送する。検索領域決定器340は、様々な実装形態について以下で説明される様々な技術に従って、地理的な領域に基づいて検索領域を決定する。そして、実装形態は、決定された検索領域342を用いて、位置検索サーバ250に提出されるクエリの一部を形成する。実装形態では、次いで、位置検索サーバ250は、検索領域342に基づいて結果の項目352を返す。本明細書で用いられる場合、結果の項目352は少なくとも1つの結果の項目を含んでもよく、実装形態では、これらの結果の項目は受信後にディスプレイ320に一覧表示される。また、本明細書で用いられる場合、結果の項目352は、以下で論じられるような、様々な異なる情報の項目を含んでもよい。
【００５１】
図3Bの図は、位置に基づく検索を実行する図1および2に示される、システム100および200のコンポーネントの追加の実装形態である。ある実装形態に従って、図3Bはモバイルデバイス110および位置検索サーバ250を示し、モバイルデバイス110は、モバイル検索アプリケーション210および位置決定器330を含む。図3Bに示される実装形態では、モバイル検索アプリケーション210は、ディスプレイ320、検索領域決定器340、検索要求器325を含み、位置検索サーバ250はカテゴリー決定器360を含む。本明細書で示されるように、特定のデバイス、たとえばモバイルデバイス110および位置検索サーバ250に含まれるものとして示されるコンポーネントは、一般に、両方のデバイスに存在していてもよく、用途の要件に応じて、2つのデバイス間で機能の実行を分割していてもよい。図3Bに示される実装形態では、カテゴリー決定器360は、位置検索サーバ250に含まれる。一実装形態(図示せず)では、モバイルデバイス110と位置検索サーバ250の両方が、カテゴリー決定器360を各々有し、その機能は必要に応じて2つのデバイスの間で分割される。別の実装形態(図示せず)では、カテゴリー決定器360は、モバイルデバイス110上のモバイル検索アプリケーション210に含まれる。
【００５２】
大まかに言って、以下でさらに説明されるように、図3Bで説明される実装形態では、位置決定器330は、モバイルデバイス110の地理的な位置を決定し、この決定された地理的な位置332に対応する値を、検索領域決定器340に転送する。図3Aでも示されるように、実装形態は次いで、決定された検索領域342を用いて、位置検索サーバ250に提出されるクエリの一部を形成する。図3Bの実装形態では、カテゴリー決定器360は、受信された検索領域342の値に応じて、検索カテゴリーの一覧を決定し、カテゴリーの一覧362に対応する値を、モバイルデバイス110に転送し戻す。このカテゴリーの一覧362の生成は、以下でさらに論じられる。
【００５３】
実装形態では、カテゴリーの一覧362がディスプレイ320に示された後、モバイルデバイス110は、ユーザーが特定のカテゴリーを選択できるようにし、この選択されたカテゴリー364に対応する値は、位置検索サーバ250に転送し戻される。示されない実装形態では、1つまたは複数の選択されたカテゴリーがデフォルトで一覧にされてもよく、ユーザーは、追加の受信されたカテゴリーの一覧362の値の表示を選択できるようになりうる。実装形態は次いで、選択されたカテゴリー364を用いて、位置検索サーバ250に提出されるクエリの一部を形成する。実装形態では、位置検索サーバ250は次いで、検索領域342および選択されたカテゴリー364に基づいて結果の項目352を返し、モバイル検索アプリケーション210は、ディスプレイ320に結果の項目352を表示する。
【００５４】
別の実装形態(図示せず)では、選択されたカテゴリー364に対応する値を位置検索サーバ250に転送する代わりに、選択されたカテゴリー364を用いて、カテゴリーの一覧362とともに既に転送された結果の項目352を、フィルタリングする。このフィルタリングされた検索の項目の一覧は、カテゴリーが選択された後に直ちに表示されうる。
【００５５】
図3Cは、位置に基づく検索を実行する、図1および2に示されるシステム100および200のコンポーネントの、別のさらに詳細な実装形態である。ある実装形態に従って、図3Cはモバイルデバイス110および位置検索サーバ250を示し、モバイルデバイス110は、モバイル検索アプリケーション210および位置決定器330を含む。図3Cに示される実装形態では、モバイル検索アプリケーション210は、ディスプレイ320および検索要求器325を含み、位置検索サーバ250は検索領域決定器340を含む。本明細書で示されるように、特定のデバイス、たとえばモバイルデバイス110および位置検索サーバ250に含まれるものとして示されるコンポーネントは、一般に、両方のデバイスに存在していてもよく、用途の要件に応じて、2つのデバイス間で機能の実行を分割していてもよい。図3Cに示される実装形態では、検索領域決定器340は、位置検索サーバ250に含まれる。一実装形態(図示せず)では、モバイルデバイス110と位置検索サーバ250の両方が、検索領域決定器340を各々有し、その機能は必要に応じて2つのデバイスの間で分割される。
【００５６】
大まかに言って、以下で説明されるように、図3Cで説明される実装形態では、位置決定器330はモバイルデバイス110の地理的な位置332を決定し、この決定された地理的な位置332に対応する値を、位置検索サーバ250上の検索領域決定器340に転送する。この実装形態では、検索領域決定器340は、地理的な位置332に基づいて可能性のある検索領域を決定し、検索領域の一覧333に対応する値をモバイルデバイス110に転送し戻す。検索領域の一覧333をディスプレイ320に表示した後、モバイルデバイス110は、ユーザーが特定の検索領域を選択できるようにして、この選択された領域334に対応する値が、位置検索サーバ250に転送し戻される。図3Cに示されるように、最もふさわしい検索領域がユーザーに対してデフォルトで設定されていてもよく、ユーザーは、検索領域を、検索領域の一覧333で挙げられた受信された値のうちの1つに変更できるようになりうる。次いで、実装形態は、選択された検索領域334を用いて、位置検索サーバ250に提出されたクエリの一部を形成する。そして、位置検索サーバ250は結果の項目352を返し、モバイル検索アプリケーション210は結果の項目352をディスプレイ320に表示する。
【００５７】
[位置決定器330]
位置決定器330は、地理的な位置を様々な方法で決定することができる。位置決定器330の実装形態は、ワイヤレスデバイスからの位置推定の測定値を用いる。そのような位置推定の測定値は、モバイルデバイス110がGPSに対応する場合には、GPSにより得られてもよく、または受動的な無線による位置決めによるものでもよい。地理的な位置はまた、モバイルアプリケーションに特有の位置情報、たとえば、用いられている地図アプリケーションもしくはナビゲーションアプリケーションの表示画面の中心、または他の同様のデータを用いて推定されてもよい。図5に関して論じられるように、地理的な位置の決定に用いられる方法に応じて、異なる許容誤差が発生しうる。この許容誤差は実装形態により用いられ、システムの動作に影響を与えうる。
【００５８】
[検索領域決定器340]
図4に示されるように、地理的な位置は様々な方法で特徴付けられうる。本明細書で説明されるいくつかの実装形態では、「検索領域」とは、ユーザーの地理的な位置を検索する際の抽象度を指す。たとえば、図4では、ユーザー405は店舗405のすぐ外にいて、店舗450は、商業中心地440、近隣地域430、町420、および州410の中にある。商業中心地440は、非商業的なPOIである州立公園にも近接する。用語450、440、430、420および410の各々は、実例の抽象度または検索領域に相当する。他の実装形態(図示せず)では、検索領域は、たとえば、決定された地理的な位置からの距離として評価される、決定される詳細度であってよい。他の実装形態では、検索領域は、抽象度と詳細度の両方の概念の組み合わせであってよい。
【００５９】
検索領域決定器340は、決定された地理的な位置および地図リソースを用いて、対応する検索領域342を決定することができる。たとえば、GOOGLE MAPSが、地理的な位置に対応する様々な検索領域を返すことができる。他の技術も、所与の位置的な位置から異なる検索領域を決定するのに利用可能である。
【００６０】
地理的な位置を、検索の前に検索領域として特徴付けられるようにすることで、位置に基づく有用なユーザーへの検索結果を準備することが容易になりうる。たとえば、ユーザーの物理的な位置405は、商業中心地440の中にある特定の電器店450の外側であってよい。この地理的な位置に基づいて、2つの異なる例示的かつ有用な結果が、位置に基づく検索に応答して生成されうる。
結果1:店舗450のウェブサイトにリンクする結果の項目
結果2:商業中心地440の中の他の店舗を列挙する結果
【００６１】
上で示されたような、異なる結果の項目は、ユーザーの選択された検索領域に基づいて与えられうる。検索領域が電器店450に設定されている場合は、結果1が選択された結果の項目となる可能性が高く、検索領域が商業中心地440に設定されている場合は、結果2が選択された結果の項目となる可能性が高い。検索領域と地理的な領域との概念を分離することで、本明細書で説明される実装形態は、位置に基づく検索結果の精度向上をユーザーに対して実現する。
【００６２】
実装形態では、検索が実行される「領域」は、たとえば以下のようなさらなるレベルの基準および記述を用いて実行されうる。
A1:特定のスーパーマーケット、たとえば「Food Land」
A2:特定の商業中心地、たとえばショッピングプラザ、たとえば「Culmore Plaza」
A3:特定の近隣地域、たとえば「Lakeside」
A4:特定の「町の一部」、たとえば「West End」
A5:特定の市、たとえば「バージニア州フェアファックス」
A6:ある領域、たとえば中部大西洋岸地域
【００６３】
上記の検索領域の特徴付けは全て、単一の地理的な位置を含みうる。これらの例A1〜A6は例示であり、限定的であることは意図されない。他の検索領域の特徴付けも利用されうる。
【００６４】
特定の地理的な領域に対する、可能性のある検索領域の特徴付けが特定されると、実装形態は、位置検索のための検索領域を様々な方法で設定することができる。図3A〜Cに関して上で論じられたように、実装形態では、検索領域は自動的に決定されてもよく、ユーザーにより選択されてもよく、またはこれらの手法の組み合わせが用いられてもよい。
【００６５】
図5に示されるように、実装形態は、所定の許容誤差または導出された許容誤差のいずれかを用いて、特定の検索領域の選択を支援することができる。たとえば、特定の地理的な位置の決定により、個人がスーパーマーケットにいることが示されるが、許容誤差510Aが0.5マイルに設定されている場合、近隣レベルの検索領域を選択することができ、別の実装形態では、検索領域は0.5マイルの詳細度に設定されていてもよい。あるいは、許容誤差510Bが比較的小さく、たとえば500フィートに設定される場合、店舗450を含む検索領域が用いられうる。
【００６６】
上で図3Cとともに説明したように、検索領域を改善するための実装形態により用いられる別の技術は、地理的な位置が推定された後、かつ検索が実行される前に、ユーザーが決定された検索領域の一覧333から選択できるようにすることである。たとえば、上記のA1〜A6の一覧はユーザーに提示されてもよく、ユーザーは、実行を望む検索に対して最も適切な検索領域から、選択することができる。あるいは、追加の実装形態では、特定のユーザーまたは検索に対する「最良の」検索領域を選択するための基準を用いることができる。以下で図8とともに論じられるように、ユーザーは、一覧を表示して様々な検索領域を選択することが可能になりうる。
【００６７】
上で説明される、ユーザーにより選択される検索領域の選択の変形形態は、ユーザーが、全ての実行される位置検索について、特定の検索領域のレベルへの選好を規定すること、たとえば全ての検索について、近隣レベルの検索領域を示すことを可能にすることを含む。
【００６８】
[位置検索サーバ250]
実装形態の位置検索サーバ250は、検索の要求、検索領域に対応する値、カテゴリーに対応する値を受信し、これらの入力に応じた1つまたは複数の結果を生成する。結果の項目は、様々な方法で位置検索サーバ250により選択されうる。いくつかの実装形態は、検索の項目を選択する既知の技術、たとえば、人気および関連度を、本明細書で開示される概念、たとえば検索領域と組み合わせることができる。例示的な結果の選択の要因には、以下のようなものがある。
S1:所与の検索領域に対して最も関連度が高い結果の項目。
S2:所与の検索領域に対して最も人気が高い結果の項目。
S3:様々な交通手段、たとえば徒歩、自動車による移動、または自転車などに応じた、所与の検索領域の近隣において最も近くにある結果の項目。考慮される方法は、検索領域の特性に基づいて変化しうる。たとえば、自動車による移動は、ショッピングモールの検索領域の中の位置では不可能でありうる。
S4:結果の項目の選好のユーザープロファイルと一致する結果の項目。
S5:検索の時間帯。様々な実装形態が、検索領域を含む他の要因とともに、時間帯を考慮して、検索結果を選択することができる。たとえば、午後5時に位置に基づく検索を実行するユーザーは、タクシーおよびレストランを強調する検索結果を与えられうる。なぜなら、これらは一般にこの時間帯に所望される結果であるためである。
S6:同じユーザーにより実行された前の検索。様々な実装形態が、ユーザーの検索履歴を考慮することができる。たとえば、ユーザーが前の検索において、特定のレストランの検索結果を選択し、その後ユーザーがそのレストランの近くで位置に基づく検索を実行した場合、その結果が位置に基づく検索において推奨されうる。
S7:ユーザーにより用いられる他のデータアプリケーション。様々な実装形態が、他のアクセス可能なアプリケーションに保存される情報を利用することができる。たとえば、ユーザーが、Google社によるGOOGLE CALENDARのようなカレンダーのアプリケーションに予定を保存している場合、位置検索サーバ250はこの情報にアクセスすることができ、その情報を用いて、位置に基づく検索の結果の選択に影響を与えることができる。たとえば、ユーザーのカレンダー中の予定に保存されている位置の近くにユーザーがいるときに、ユーザーが位置に基づく検索を実行すると、この位置に関する結果の項目が優先されうる。
【００６９】
上記の例の全ては、結果の項目を選択するための異なる方法である。実装形態は、上記の技術S1〜S7の組み合わせを用いて、結果の項目を選択することができる。この特徴の例S1〜S7は例示的であり、他の実装形態も適宜用いられうる。
【００７０】
[結果の項目352]
図3A〜3Cに関連して上で論じられたように、実装形態は、様々な異なる結果の項目を一覧にして、表示して、または提示することができる。本明細書で説明される位置に基づく検索の実装形態は、一覧の形のURLと、他の標準的な検索エンジンの結果の項目とを少なくとも返すことができるようにされ、URLは、追加のユーザー入力なしでウェブページとして表示される。
【００７１】
結果の項目として表示されるウェブページは、ウェブ検索の基準と組み合わされた検索領域に基づいて、上記の要因S1〜S4で説明されたように選択される、従来のウェブページであってよい。たとえば、店舗レベルの検索領域に対して選択される結果の項目は、その店舗のメインのウェブページであってよい。ある例では、「Joe's Electronics」を訪問しているユーザーは、「Joe's Electronics」のウェブページのURLという、結果の項目を提示される。この例では、表示される結果の項目の一覧にある項目は、Joe'sが販売する特定の製品の評価、さらには、Joe'sの商行為に対する米国商事改善協会の警告も含みうる。
【００７２】
図6Aに示されるように、本明細書で説明される実装形態はまた、単一のドメイン上の固有のURL群から選択されたURLを返してもよく、固有のURL群の各URLは、異なる位置的な場所、たとえば、Google社によるGoogle PLACE PAGEを表す。特定の検索領域610、たとえば空港に対して表示される単一のURLは、関連するURLへのウェブのリンクを含む特定の場所についての情報と、場所についての説明のための情報、たとえば文字による説明、地図、および写真との集合体であってよい。実施形態において、結果の項目としてのPLACE PAGESは、追加のユーザー入力を伴うことなく、図6Bのように一覧で表示されてもよく、または図6Cに示されるように単一の結果として表示されてもよい。
【００７３】
[カテゴリー決定器360]
図6Dおよび7Bに示され、図3Cとともに上で論じられたように、実装形態は、ユーザーが、結果のカテゴリーの一覧から選択して表示することを可能にする。図3に関して上で論じられたように、実装形態は、カテゴリー決定器360を用いてカテゴリーの一覧を生成する。実装形態において、このカテゴリーの一覧の表示と、ユーザーがその一覧からカテゴリーを選択できるようにすることは、検索の要求の後に、しかし結果の一覧が表示される前に行われる。
【００７４】
実装形態のカテゴリー決定器360は、様々な方法でカテゴリーの一覧を生成することができる。
C1.カテゴリーの標準的な一覧に基づいて生成する。
C2.ユーザーにより構成可能な一覧に基づいて生成する。
C3.受信された検索領域342または選択された検索領域334に基づいて生成する。この手法を利用する実装形態は、検索領域の抽象度に注目し、対応するカテゴリーを提供する。たとえば、図4の検索領域について述べると、ユーザー405が店舗450の検索領域を選択した場合、店舗およびその商品、たとえば商品の種類、店舗についての情報、および他の関連情報に関するカテゴリーが送信されうる。あるいは、ユーザー405が検索領域として商業中心地440を選択した場合、そのショッピングセンターにおける他の買い物の機会、地図、写真および他の関連情報に関するカテゴリーが送信されうる。ユーザーが非商業的なPOI460、たとえば州立公園を選択した場合、公園の土産物店および食事についての商業的なカテゴリーとともに、周辺環境によるレクリエーションおよび公園でのレクリエーションという非商業的なカテゴリーが提示されうる。
C4:同様の検索を実行する、同じような位置にいる他のユーザーの間での、カテゴリーの人気に基づいて生成する。
C5:検索の時間帯に基づいて生成する。様々な実装形態が、検索領域を含む他の要因とともに、時間帯を考慮して、カテゴリーを選択することができる。たとえば、午後5時に位置に基づく検索を実行するユーザーは、タクシーおよびレストランを強調するカテゴリーを与えられうる。なぜなら、これらは一般にこの時間帯に所望される結果であるためである。
【００７５】
これらのカテゴリー生成の手法の例C1〜C5は例示であり、他の実装形態は、上記の技術C1〜C5の組み合わせを用いてカテゴリーを選択することができ、または、他のそのような手法を用いることもできる。
【００７６】
実装形態では、カテゴリーが選択されると、適切なサブカテゴリーのセットが示されてもよく、または、ユーザーは、以下で説明される結果の項目の一覧に案内されうる。サブカテゴリーを表示する実装形態は、上で列挙されたカテゴリー生成手法C1〜C5の変形形態を用いて選択されてもよい。
【００７７】
[結果の項目の表示]
図6Bおよび6Eに示されるように、実装形態は、上で論じられた結果の項目の一覧、すなわちPLACE PAGES 650A〜CとURL622A〜Cのいずれかを直ちに表示することができる。項目は、関連度、近さ、推定移動時間による方法を含む、様々な方法で順位付けされフィルタリングされうる。
【００７８】
図6Cおよび6Fに示されるように、実装形態により用いられる他の手法は、検索の後に直ちに、追加のユーザー入力を伴うことなく、結果の項目を視覚的に表示する。たとえば、検索を実行した後に直ちに、結果の項目がユーザーのディスプレイに表示される。直ちに表示するこの手法を用いた実装形態での例示的な検索は、ユーザーにより提供される情報、たとえば検索用語を有さなくてもよく、たとえば検索ボタンを選択することで明示されるような検索の要求のみを有してもよい。ユーザーにより提供される情報のない、この実装形態は、「バイナリ要求」と呼ばれる。
【００７９】
[例示的な実装形態]
図7A〜Cは、位置に基づく検索のグラフィカルユーザーインターフェースの例である。図7Aに示されるGUIを用いる実装形態の例示的な動作では、ユーザーは、GUIの更新(update)ボタン710を押すことによって、位置決定器330にユーザーの位置を更新するように要求することができる。そして、アプリケーションは、位置決定器330からの更新された位置を要求する。次いで、位置決定器330は地理的な位置を返し、その地理的な位置は735においてGUI上に表示されうる。あるいは、図9Bの流れ図で説明される実装形態では、位置決定器330は、ユーザーの要求を伴わずに、設定された地理的な位置を自動的に更新することができる。さらに別の実装形態では、735において表示される値は、地理的な位置に基づいて決定された検索領域である。
【００８０】
次いで、ユーザーはGUIボタン740を押して検索を要求することができ、このボタン740は、たとえば図7Aにおいて「現在地付近を検索」という名前で示されている。上で論じられたように、様々な実装形態は、この時点で異なるステップを実行する。図7Bに示される一実装形態は、本明細書で説明される処理により生成されるカテゴリーの一覧の表示に進み、ユーザーによるカテゴリーの選択を可能にする。いくつかの実装形態はそのようなカテゴリーを用いて、検索結果の項目を選択する。図7Bに示されるようないくつかの実装形態は、カテゴリー化されていない結果の項目を直ちに表示できるようにするボタン、たとえば、「ここで検索(Explore right here)」という名前のボタン750Bによって、カテゴリーを一覧にする。実装形態では、ボタン750Bをクリックすると、図7Cに示される画面になる。図7Cはさらに、ユーザーが、「結果をさらに表示する(Show more results)」という名前のボタン780を選択し、追加の検索結果を見られることを示す。たとえば、実装形態では、ボタン770が選択されると、選択された項目、すなわち「タクシーサービス(Taxi Cab Service)」を表すURLが表示されうる。
【００８１】
ボタン750Bをクリックする代わりに、図7Bに示される実装形態では、ユーザーは、一覧にされたカテゴリー、たとえば750C〜Fを選択することができ、このカテゴリーに対応する結果が一覧表示される。実装形態では、「さらにカテゴリーを見る」という名前のボタン751が、ユーザーに追加のカテゴリーを提示する。
【００８２】
図8は、モバイル環境での位置に基づく検索のGUIの例である。図8に示される実装形態は、たとえば、値825がユーザーの現在の地理的な位置を示し、ボタン810が、上で図3Cに関して論じられたようなデフォルトの決定された検索領域により動的に名付けられるという点で、図7Aとは異なる。実装形態では、インジケータ810が、検索領域が選択されたことをユーザーに示すために表示される。さらなる実装形態では、たとえば、インジケータ810の形または色のいずれかが、図5に関して論じられたような、検索領域の決定に通じた許容誤差をユーザーに示すことができる。他の実装形態では、インジケータ810の形と色の両方が、ユーザーに情報を与えてもよい。
【００８３】
上で図3Cに関して同様に論じられるように、図8に示される実装形態では、ユーザーは、「位置の改善(Refine location)」リンク830を選択し、他の可能性のある検索領域の一覧、たとえば、Century 16 Plaza、Barcroft Neighborhood、バージニア州フォールズチャーチ、またはワシントンD.C.圏内から選択することができる。この実装形態ではまた、ボタン810を選択することで、位置に基づく検索が実行され、図7A〜7Cのセクションおよび本明細書の全体で説明されたようなステップと、同様のステップが実行される。
【００８４】
[方法900]
このセクションは、検索の位置に基づいて、少なくとも1つの結果の項目を提供する、コンピュータで実施される方法を説明する。図9A〜Dは、検索の位置に基づいて少なくとも1つの結果の項目を提供するための、例示的な方法900の流れ図である。方法900はある実装形態に関して説明されるが、方法900は限定的であることは意図されず、他の適用形態において用いられてもよい。
【００８５】
図9Aに示されるように、方法900の実装形態は、要求が受信されて検索を実行する、段階910で開始する。ある実装形態では、図3A〜Cの位置検索サーバ250のような位置検索サーバは、モバイルデバイスから位置に基づく検索の要求を受信することができる。段階910が完了すると、方法900は段階920に進む。
【００８６】
段階920において、地理的な位置が、モバイルデバイスから受信される。ある実装形態では、図3A〜Cの位置決定器330のような位置決定器が、モバイルデバイスの地理的な位置を決定または推定し、この地理的な位置を位置検索サーバ250に送信することができる。段階920が完了すると、方法900は段階930に続く。
【００８７】
段階930において、検索領域が、地理的な位置に基づいて決定される。ある実装形態では、図3A〜Cの検索領域決定器340のような検索領域決定器が、この検索領域を決定することができる。段階930が完了すると、方法900は段階935に進む。
【００８８】
段階935において、検索のカテゴリーの一覧が決定され、選択のためにユーザーに提示される。ある実装形態では、図3A〜Cのカテゴリー決定器360のようなカテゴリー決定器が、検索のカテゴリーの一覧を決定することができる。ある実装形態では、図3A〜Cのディスプレイ320のようなディスプレイが、カテゴリーの一覧を表示することができる。段階935が完了すると、方法900は段階937に続き、選択されたカテゴリーがユーザーから受信される。段階937が完了すると、方法900は段階940に続く。
【００８９】
段階940において、少なくとも1つの結果の項目が、検索領域およびユーザーが選択したカテゴリーに基づいて決定される。ある実装形態では、図3A〜Cの位置検索サーバ250のような位置検索サーバが、この少なくとも1つの結果の項目を決定することができる。段階940が完了すると、方法900は段階950に進む。
【００９０】
段階950において、少なくとも1つの結果の項目が、モバイルデバイスに提供される。ある実装形態では、図1、2および3A〜Cのモバイルデバイス110のようなモバイルデバイスが、少なくとも1つの結果の項目を受信することができる。段階950が完了すると、方法900は終了する。
【００９１】
段階910、920、930、935、937、940および950は、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組み合わせとして実装されうる。
【００９２】
図9Bに示されるように、方法900の実装形態は、地理的な位置が決定される段階920で開始する。ある実装形態では、図3A〜Cの位置決定器330のような位置決定器が、モバイルデバイスの地理的な位置を決定または推定することができる。段階920が完了すると、方法900は段階910に続く。
【００９３】
段階910において、要求が受信されて検索を実行する。ある実装形態では、図3A〜Cの検索要求器325のような検索要求器が、ユーザーからの要求を受信して検索を実行することができる。段階910が完了すると、方法900は段階915に進む。
【００９４】
段階915において、可能性のある検索領域の一覧が、地理的な位置に基づいて決定される。ある実装形態では、図3A〜Cの検索領域決定器340のような検索領域決定器が、これらの可能性のある検索領域を決定することができる。段階915が完了すると、方法900は段階917に進み、可能性のある検索領域がユーザーに提示され、ユーザーは、検索領域を選択できるようになる。段階919において、選択された検索領域が受信され、方法900は段階940に進む。
【００９５】
段階940において、少なくとも1つの結果の項目が、選択された検索領域に基づいて決定される。ある実装形態では、図3A〜Cの位置検索サーバ250のような位置検索サーバが、検索領域に基づいて少なくとも1つの結果の項目を決定することができる。段階940が完了すると、方法900は段階950に進む。
【００９６】
段階950において、少なくとも1つの結果の項目が、モバイルデバイスに提供される。ある実装形態では、図1、2および3A〜Cのモバイルデバイス110のようなモバイルデバイスが、少なくとも1つの結果の項目を受信することができる。段階950が完了すると、方法900は終了する。
【００９７】
段階920、910、915、917、919、940および950は、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組み合わせとして実装されうる。
【００９８】
[例示的なコンピュータシステムの実装形態]
本明細書で説明される実装形態は、ハードウェア、ソフトウェア、またはこれらの組み合わせを用いて実装することができ、携帯電話もしくは他のモバイル処理システムを含む、コンピュータシステムまたは他の処理システムにおいて実装することができる。ハードウェア、ソフトウェア、またはそれらの任意の組み合わせは、図1、2、3A〜Cのモジュールのいずれか、および図9A〜Bの任意の段階を具現化することができる。ある実装形態では、プロセッサにより実行されると、プロセッサに実装形態において説明された方法を実行させる、符号化コンピュータ可読命令を有する、コンピュータ可読媒体が開示される。説明された方法を実行できるプロセッサを有するコンピュータシステム1000の例が、図10に示される。コンピュータシステム1000は、プロセッサ1004のような1つまたは複数のプロセッサを含む。プロセッサ1004は、通信バス1006に接続される。様々なソフトウェアの実装形態が、この例示的なコンピュータシステムに関して説明される。
【００９９】
ある実装形態では、モバイルデバイスである例示的なコンピュータシステム1000は、デバイスの地理的な位置を決定するための、GPS1006を含みうる。
【０１００】
コンピュータシステム1000はまた、ランダムアクセスメモリ(RAM)またはソリッドステートメモリのようなメインメモリ1008を含み、二次的なメモリ1010も含んでもよい。二次的なメモリ1010は、たとえば、フロッピー（登録商標）ディスクドライブ、磁気テープドライブ、光ディスクドライブ、メモリーカードポートなどを代表する、ハードディスクドライブ1012および/または取り外し可能な記憶ドライブ1014を含んでもよい。取り外し可能な記憶ドライブ1014は、よく知られている方法で、取り外し可能な記憶ユニット1018から読み取り、取り外し可能な記憶ユニット1018に書き込む。取り外し可能な記憶ユニット1018は、磁気テープ、光ディスク、メモリーカードなどを代表し、これは、取り外し可能な記憶ドライブ1014により読み取られ書き込まれる。理解されるように、メインメモリ1008および取り外し可能な記憶ユニット1018は、コンピュータソフトウェアおよび/またはデータを保存した、コンピュータが利用可能な記憶媒体を含む。
【０１０１】
代替的な実装形態では、二次的なメモリ1010は、コンピュータプログラムまたは他の命令を、コンピュータシステム1000にロードできるようにするための、他の同様の手段を含みうる。そのような手段は、たとえば、取り外し可能な記憶ユニット1022およびインターフェース1020を含みうる。そのようなものの例は、(EPROM、PROMのような)取り外し可能なメモリチップおよび関連するソケット、ならびに、ソフトウェアおよびデータを取り外し可能記憶ユニット1022からコンピュータシステム1000に転送することを可能にする、取り外し可能な記憶ユニット1022およびインターフェース1020を含みうる。
【０１０２】
コンピュータシステム1000は、通信インターフェース1024も含みうる。通信インターフェース1024は、コンピュータシステム1000が、外部および/または遠隔のデバイスと通信できるようにする。たとえば、通信インターフェース1024は、ソフトウェアおよびデータを、コンピュータシステム1000と外部のデバイスとの間で転送できるようにする。通信インターフェース1024は、コンピュータシステム1000が、LAN、WAN、インターネットなどのような通信ネットワークを通じて、通信できるようにもする。通信インターフェース1024は、有線またはワイヤレスの接続を介して、離れた場所またはネットワークとのインターフェースをとることができる。通信インターフェース1024の例は、モデム、(イーサネット（登録商標）カードのような)ネットワークインターフェース、通信ポート、PCMCIAスロットおよびカードなどを含みうる。コンピュータシステム1000は、通信インターフェース1024を介して、データおよび/またはコンピュータプログラム製品を受信する。通信インターフェース1024を介して転送されるソフトウェアおよびデータは、通信インターフェース1024により受信されうる、電子信号、電磁信号、光信号、または他の信号でありうる、信号1028の形態である。信号1028は、通信経路(すなわちチャネル)1026を介して、通信インターフェース1024に提供される。このチャネルは信号1028を搬送し、ワイヤまたはケーブル、光ファイバ、電話線、携帯電話リンク、RFリンク、および他の有線またはワイヤレスの通信チャネルを用いて、実装されうる。
【０１０３】
この文書では、用語「コンピュータプログラム媒体」および「コンピュータ利用可能媒体」は、一般に、取り外し可能な記憶ドライブ1014のような媒体と、ハードディスクドライブ1012に設置されるハードディスクとを指すのに用いられる。これらのコンピュータプログラム製品は、コンピュータシステム1000にソフトウェアを提供するための手段である。
【０１０４】
コンピュータプログラム(コンピュータ制御ロジックとも呼ばれる)は、メインメモリ1008および/または二次的なメモリ1010に保存される。コンピュータプログラムは、信号1028および通信インターフェース1024を介しても受信されうる。そのようなコンピュータプログラムは、実行されると、コンピュータシステム1000が、本明細書で論じられる機能を実行できるようにする。具体的には、コンピュータプログラムは、実行されると、プロセッサ1004が、この明細書で論じられた機能を実行できるようにする。したがって、そのようなコンピュータプログラムは、コンピュータシステム1000のコントローラを代表する。
【０１０５】
ソフトウェアを用いて実装される実装形態では、ソフトウェアは、コンピュータプログラム製品に保存され、取り外し可能な記憶ドライブ1014、ハードディスクドライブ1012、または通信インターフェース1024を用いた、コンピュータシステム1000にロードされうる。制御ロジック(ソフトウェア)は、プロセッサ1004により実行されると、プロセッサ1004に、本明細書で説明されるような機能を実行させる。
【０１０６】
コンピュータシステム1000は、タッチスクリーン、キーボード、キーパッド、トラックボール、ポインティングデバイスなどのような、入力/出力/表示デバイス1032も含みうる。
【０１０７】
ここで論じられるシステムは、本明細書で説明されるもの以外の、ソフトウェア、ハードウェア、およびオペレーティングシステムの実装形態とともに機能しうる。本明細書で説明される機能を実行するのに適した、任意のソフトウェア、ハードウェア、およびオペレーティングシステムの実装形態が、用いられうる。
【０１０８】
図11は、モバイルコンピューティングデバイスにより実行される、位置に基づく検索を示す。この例では、ユーザーは、モバイルコンピューティングデバイス1100で、ウェブページ1102の表示を見ている。ウェブページ1102は、文字によるクエリを定義するユーザー入力を受信するための、クエリ入力テキストボックス1104を含む。たとえば、ユーザーは、クエリ入力テキストボックス1104の場所を指で押すことによって、クエリ入力テキストボックス1104を選択することができ、その後、物理的なキーボードまたは仮想キーボードを用いて、クエリ入力テキストボックス1104に文字を入力することができる。ユーザーは、クエリ提出インターフェース要素1106を選択することによって、入力されたクエリを提出することができる。クエリ提出インターフェース要素1106が選択されると、サーバシステムは、入力された検索クエリに応じた検索結果を特定し、検索結果の一覧を、ユーザーに表示するために、モバイルコンピューティングデバイス1100に提供することができる。
【０１０９】
しかし、この例では、ユーザーは、クエリ入力テキストボックス1104を用いて文字によるクエリを定義することなく、クエリ提出インターフェース要素1106を選択する。このユーザーの選択に応答して、ウェブページ1102の表示は、ウェブページ1152の表示と置き換えられる。この例では、ウェブページ1152は、ミネアポリス市によりホストされる。モバイルコンピューティングデバイスは、ミネアポリス市の中に位置しうる。したがって、(テキストボックス1104にクエリを入力せずに)クエリ提出インターフェース要素1106を選択すると、モバイルコンピューティングデバイス1100は、地理的な位置に対する検索結果と関連するコンテンツを返すように、サーバシステムに要求するようになりうる。
【０１１０】
サーバシステムは、モバイルコンピューティングデバイスの推定された地理的な位置を取得して、推定された地理的な位置に少なくとも一部基づいて、検索領域を決定することができる。この例における決定された検索領域は、「ミネアポリス」でありうる。したがって、サーバシステムは、文字によるクエリ「ミネアポリス」により、検索エンジンにクエリを行うことができる。単一の、最も関連があるものとして順位付けられた検索結果が、サーバシステムにより選択されてもよく、選択された検索結果が特定するURLは、ウェブページとして表示するために、モバイルコンピューティングデバイスに提供されうる。たとえば、サーバシステムは、URLに対応するリソースを取り出すためにリダイレクトを実行するように、モバイルコンピューティングデバイスに要求することができる。
【０１１１】
様々な例において、ユーザーが文字を入力することなく、文字の入力のためのテキストボックスを選択し、通常クエリを提出するキーボード(たとえば、「enter」または「return」キー)を選択したとき、「空の」クエリがサーバシステムに提出される。様々な例において、「空の」クエリは、ユーザーが文字の入力のためのテキストボックスを選択し、所定の時間内(たとえば5秒以内)に文字を入力できなかった場合に、サーバシステムに提出される。
【０１１２】
様々な例において、クエリ提出インターフェース要素1106を選択した後に、ユーザーデバイス1100に表示されるウェブページ1152は、選択された検索領域に関連する検索結果の一覧を特定する情報を提示する。様々な例において、「空の」クエリを提出することで、クエリ入力テキストボックス1102からボックスがドロップダウンし、このボックスは、その地理的な位置に関連すると判定された、推奨される検索クエリ、または、その地理的な位置に関連すると判定された、検索結果を含む。
【０１１３】
図12は、モバイルコンピューティングデバイスとサーバシステムとの間の通信に基づいて、位置に基づく検索を実行するためのシステムの、概念的な図である。モバイルコンピューティングデバイス1200は、地理的な位置1206をサーバシステム1202に提出し、サーバシステム1202は地理的な位置1206を用いて、検索領域1214を決定する。ローカル検索エンジン1216は、検索領域1214を用いて、検索結果を特定する。検索結果1220のコンテンツが、コンテンツを表示するモバイルコンピューティングデバイス1200に送信される。
【０１１４】
さらに詳細には、位置決定器1204は、モバイルコンピューティングデバイス1200の推定された地理的な位置を決定する。たとえば、位置決定器1204は、(たとえば、投稿の受信者が、ユーザーが「チェックイン」した場所を見られるように)ユーザーがソーシャルネットワークに投稿するために「チェックイン」した場所を特定することができる。位置決定器1204はまた、送信デバイスからの信号を用いて、位置を決定することもできる。1つまたは複数の信号源の位置の特定、または、複数の信号を用いたデバイスの三角測量を用いて、デバイスの位置を特定することができる。決定された地理的な位置は、モバイルコンピューティングデバイスの推定された地理的な位置であってよい。
【０１１５】
モバイルコンピューティングデバイス1200は、地理的な位置1206をサーバシステムに送信する。この送信は、モバイルコンピューティングデバイスがコンピューティングデバイス1200の地理的な位置をサーバシステムに知らせるときに、周期的に行われうる。いくつかの例では、地理的な位置1206は、検索要求提出器1210による要求とともに、またはそれに応答して提供される。
【０１１６】
検索要求提出器1210は、地理的な位置1206に応じた検索結果をサーバシステムに決定させる指示を、サーバシステムに与える。たとえば、検索要求提出器1210はウェブブラウザであってよく、要求は、特定のウェブページのリソースに対するHTTP要求、または、表示されているウェブページの一部でありうるグラフィカルユーザーインターフェース要素を生成するためのコードに対するXHR要求であってよい。いくつかの例では、要求は、ユーザーが生成したクエリ(たとえば、ユーザーがタイプまたは発声したクエリ)を含まなくてもよい。いくつかの例では、要求は、モバイルコンピューティングデバイスのユーザーが、検索クエリ提出インターフェース要素を選択したことに応じて、ウェブブラウザによってサーバシステムに提供され、このとき、提出インターフェース要素に関連するフィールドに、ユーザー定義のクエリは提供されていない。
【０１１７】
検索領域決定器1208は、モバイルコンピューティングデバイスの地理的な位置を受信し、受信された地理的な位置に基づいて、モバイルコンピューティングデバイスのために検索領域を選択する。検索領域は、モバイルコンピューティングデバイスを含む、またはモバイルコンピューティングデバイスに近い領域を特定する、いくつかの検索領域から選択されうる。検索領域の選択は、ユーザーの移動速度、ユーザーの移動方向、地理的な位置判定の精度、(この文書全体でより詳細に論じられるような)特定の検索領域を用いて生成された検索結果とのユーザーインターアクション、推奨された検索領域のユーザーによる修正を含む、様々な要因に基づきうる。モバイルコンピューティングデバイスは、選択された検索領域を定義するユーザー入力を受信しなくてもよい。様々な例において、選択された検索領域は、自然言語の説明のための文字列により表される。
【０１１８】
ローカル検索エンジン1216は、選択された検索領域1214を受信し、選択された検索領域1214に応じた検索結果を決定する。様々な例において、検索エンジンは、インターネット中からウェブページ上の情報を特定するデータベースにクエリを行う。したがって、言葉の文字列がクエリとして用いられてよく、1つまたは複数の検索結果が言葉の文字列に基づいて選択されうる。したがって、ウェブサイトが地理的な位置を座標として特定できなくても、ウェブページは、地理的な座標に関連し元の要求に応じた、関連するものとして順位付けられた検索結果によって、特定されうる。例示として、ミネアポリス市のウェブページは、市の緯度および経度の座標を特定できなくてもよいが、ミネアポリス市のウェブページという検索結果が、言葉の文字列に検索領域「ミネアポリス」を含む、検索クエリに応じたものとして選択されうる。ミネアポリス市のウェブページは、ミネアポリスという言葉を多く含みうるので、「ミネソタ州ミネアポリス」というアンカーテキストを用いるウェブサイトによって、リンクされうる。
【０１１９】
いくつかの例では、検索結果は、位置および場所を特定するウェブページのリポジトリから選択され、このリポジトリは、単一の情報プロバイダによりホストされる。リポジトリは、多くの事業所、公園、建物、市などの位置および場所を特定することができる。位置または場所の各々の入力は、対応する検索領域を特定することができる。
【０１２０】
検索結果1220のコンテンツは、モバイルコンピューティングデバイスに送信されうる。いくつかの例では、コンテンツは、検索結果に対する説明のための名前(たとえば、検索結果が特定する場所の名前)、および検索結果と関連するURI(たとえば、その場所によりホストされる、またはその場所を説明するウェブサイトのURI)を含む。
【０１２１】
検索結果表示生成器1222は、検索結果のコンテンツを受信するウェブブラウザであってよく、ウェブページ上に検索結果のコンテンツを視覚的に示すものを提供する。たとえば、検索結果表示生成器1222は、検索エンジンのウェブサイト上で、説明のための名前を表示する文字列を含み、選択されるとウェブブラウザにURIのウェブサイトへ案内させる、グラフィカルインターフェース要素を生成することができる。
【０１２２】
別の例では、検索結果1220のコンテンツは、検索結果と関連するURIへのリダイレクト要求を含みうる。したがって、検索結果表示生成器1222は、リダイレクト要求、URIに対応する要求リソースを、ネットワークを通じて受信し、そのリソースに対応するコンテンツを含むウェブページの表示を生成することができる。
【０１２３】
検索領域重み付け器1226は、検索領域に基づいてクエリとして生成された検索結果とのユーザーインターアクションについての統計データを保存し、ユーザー対話に基づいて検索領域のスコアに重みを与えることができる。たとえば、検索領域は、サーバシステムにより自動的にユーザーに対して選択されてよく、検索結果の表示を生成するために用いられうる。ユーザーが検索領域を変更すると(たとえば、現在の検索領域を表示するリンクを選択し、現れる代替の検索領域の一覧から異なる検索領域を選択することによって)、検索領域および代替の検索領域に対するスコアが修正されうる。
【０１２４】
ここで図13を参照すると、この文書で説明されるシステムおよび方法を実装するのに用いられうる、システムの概念的な図が示される。モバイルコンピューティングデバイス1310は、基地局1340とワイヤレスに通信することができ、基地局1340は、ネットワーク1350を通じて、多くのサービス1360へのワイヤレスアクセスを、モバイルコンピューティングデバイスに提供することができる。
【０１２５】
この例では、モバイルコンピューティングデバイス1310は、コンテンツをモバイルコンピューティングデバイス1310のユーザーに提示するためのタッチスクリーンディスプレイデバイス1312を含む、持ち運び型の携帯電話(たとえば、スマートフォンまたはアプリケーション電話)として示される。モバイルコンピューティングデバイス1310は、モバイルコンピューティングデバイス1310の動作に影響を与えるユーザー入力を受信するための、様々な入力デバイス(たとえば、キーボード1314およびタッチスクリーンディスプレイデバイス1312)を含む。さらなる実装形態では、モバイルコンピューティングデバイス1310は、ラップトップコンピュータ、タブレットコンピュータ、携帯情報端末、組み込みシステム(たとえばカーナビゲーションシステム)、デスクトップコンピュータ、またはコンピュータ化されたワークステーションであってよい。
【０１２６】
モバイルコンピューティングデバイス1310は、視覚、聴覚、および触覚による、ユーザーへの様々な出力機構を含みうる。例示的な視覚的な出力機構はディスプレイデバイス1312であり、これは、組み合わされて視覚的なユーザーインターフェースを提供する、映像、グラフィックス、画像、および文字を視覚的に表示することができる。たとえば、ディスプレイデバイス1312は、3.7インチのAMOLEDスクリーンであってよい。他の視覚的な出力機構は、LEDのステータスランプ(たとえば、ボイスメールが受信されると点滅するランプ)を含みうる。
【０１２７】
例示的な触覚による出力機構は、振動による通知を行う(たとえば、電話の着信をユーザーに通知するために、またはタッチスクリーン1312とのユーザーの接触を確認するために振動する)ための、不均衡おもりに接続された小型の電気モータである。さらに、モバイルコンピューティングデバイス1310は、電気信号を、音、たとえば音楽、音による警告、または電話中の個人の声に変換する、1つまたは複数のスピーカー1320を含みうる。
【０１２８】
ユーザー入力を受信するための例示的な機構はキーボード1314を含み、キーボード1314は、完全なqwertyキーボードであってもよく、または、数字「0〜9」、「*」、および「#」のキーを含む従来のキーパッドであってもよい。キーボード1314は、ユーザーが物理的にキーボードのキーと接触したとき、またはキーを押したときに、入力を受け取る。トラックボール1316のユーザーによる操作、またはトラックパッドの操作によって、ユーザーは、(たとえば、ディスプレイデバイス1312上でカーソルの位置を操作するために)回転の方向および速度の情報を、モバイルコンピューティングデバイス1310に提供できるようになる。
【０１２９】
モバイルコンピューティングデバイス1310は、タッチスクリーンディスプレイデバイス1312との物理的な接触の位置(たとえば、指またはスタイラスによる接触の位置)を、判定できてもよい。タッチスクリーン1312を用いて、様々な「仮想的な」入力機構を生み出すことができ、ユーザーは、グラフィカルユーザーインターフェース要素と接触することによって、タッチスクリーン1312に示されるグラフィカルユーザーインターフェース要素と対話する。「仮想的」な入力機構の例は「ソフトウェアキーボード」であり、キーボードはタッチスクリーンに表示され、ユーザーは、各キーに対応するタッチスクリーン1312の領域を押すことによって、キーを選択する。
【０１３０】
モバイルコンピューティングデバイス1310は、機械式ボタンまたはタッチ感知式ボタン1318a〜dを含みうる。加えて、モバイルコンピューティングデバイスは、1つまたは複数のスピーカー1320の出力音量を調整するためのボタン、モバイルコンピューティングデバイスの電源をオンまたはオフにするためのボタンを含みうる。マイクロフォン1322は、モバイルコンピューティングデバイス1310が、可聴の音を、デジタル的に符号化されコンピュータ可読メモリに保存されうる電気信号、または別のコンピューティングデバイスに送信されうる電気信号に、変換することを可能にする。モバイルコンピューティングデバイス1310は、デジタルコンパス、加速度計、近接センサー、および周辺光センサーも含みうる。
【０１３１】
オペレーティングシステムは、モバイルコンピューティングデバイスのハードウェア(たとえば、入力/出力機構およびコンピュータ可読媒体から取り出されたプロセッサが実行する命令)とソフトウェアの間のインターフェースを提供することができる。例示的なオペレーティングシステムは、ANDROID（登録商標）モバイルデバイスプラットフォーム、APPLE IPHONE（登録商標）/MAC OS Xオペレーティングシステム、MICROSOFT WINDOWS（登録商標） 7/WINDOWS（登録商標） MOBILEオペレーティングシステム、SYMBIANオペレーティングシステム、RIM BLACKBERRY（登録商標）オペレーティングシステム、PALM WEBオペレーティングシステム、様々なUNIX（登録商標）系のオペレーティングシステム、または、コンピュータ化されたデバイス向けのプロプライエタリなオペレーティングシステムを含む。オペレーティングシステムは、コンピューティングデバイスとユーザーとの間の対話を容易にするアプリケーションプログラムの実行のための、プラットフォームを提供することができる。
【０１３２】
モバイルコンピューティングデバイス1310は、タッチスクリーン1312によりグラフィカルユーザーインターフェースを提示することができる。グラフィカルユーザーインターフェースは、1つまたは複数のグラフィカルユーザーインターフェース要素の集合体であり、静的(たとえば、画面が長時間同じままに見える)または動的(たとえば、グラフィカルユーザーインターフェースがユーザー入力を伴わずに動くグラフィカルインターフェース要素を含む)であってよい。
【０１３３】
グラフィカルインターフェース要素は、文字列、線、図形、画像、またはこれらの組み合わせであってよい。たとえば、グラフィカルインターフェース要素は、デスクトップに表示されるアイコンおよびそのアイコンに関連する文字列であってよい。いくつかの例では、グラフィカルインターフェース要素は、ユーザー入力により選択可能である。たとえば、ユーザーは、グラフィカルインターフェース要素の表示に対応するタッチスクリーンの領域を押すことで、グラフィカルインターフェース要素を選択することができる。いくつかの例では、ユーザーはトラックボールを操作して、単一のグラフィカルインターフェース要素を、関心があるものとして強調することができる。グラフィカルインターフェース要素をユーザーが選択することで、モバイルコンピューティングデバイスによる、事前に定められた動作を起こすことができる。さらに、またはあるいは、いくつかの例では、選択可能なグラフィカルインターフェース要素は、キーボード1304上のボタンに対応する。ボタンをユーザーが選択することで、事前に定められた動作を起こすことができる。
【０１３４】
いくつかの例では、オペレーティングシステムは、モバイルコンピューティングデバイス1310の電源を入れたとき、スリープ状態からモバイルコンピューティングデバイス1310を起動したとき、モバイルコンピューティングデバイス1310を「アンロック」したとき、または、「ホーム」ボタン1318cのユーザー選択を受け取ったときに表示される、「デスクトップ」ユーザーインターフェースを提供する。デスクトップグラフィカルインターフェースは、ユーザー入力により選択されると対応するアプリケーションプログラムを起動する、いくつかのアイコンを表示することができる。起動されるアプリケーションプログラムは、そのアプリケーションプログラムが終了するまで、または画面から隠れるまで、デスクトップグラフィカルインターフェースを置き換える、グラフィカルインターフェースを提示することができる。
【０１３５】
ユーザー入力により、モバイルコンピューティングデバイス1310の動作の手順を操作することができる。たとえば、一回のユーザー入力(たとえば、タッチスクリーンの一回のタップ、タッチスクリーンのスワイプ、ボタンとの接触、または同時のこれらの組み合わせ)により、ユーザーインターフェースの表示を変化させる動作を引き起こすことができる。ユーザー入力がなければ、ユーザーインターフェースは、ある特定の時間変化しなかった可能性がある。たとえば、地図アプリケーションが数秒後にデフォルトで拡大していた可能性があっても、タッチスクリーン1312へのマルチタッチユーザー入力により、地図アプリケーションにおいてある場所の「拡大」を引き起こすことができる。
【０１３６】
デスクトップグラフィカルインターフェースは、「ウィジェット」も表示することができる。ウィジェットは、実行されたアプリケーションプログラムと関連し、アプリケーションプログラムを実行することで制御されるコンテンツをデスクトップに表示する、1つまたは複数のグラフィカルインターフェース要素である。ウィジェットのアプリケーションプログラムは、携帯電話により起動することができる。さらに、ウィジェットは、画面全体を占めなくてもよい。代わりに、ウィジェットは、デスクトップの小さな一部分のみを「占有」し、そのデスクトップの一部分で、コンテンツを表示しタッチスクリーンによるユーザー入力を受け取る。
【０１３７】
モバイルコンピューティングデバイス1310は、1つまたは複数の位置特定機構を含みうる。位置特定機構は、携帯電話の位置的な位置の推定をオペレーティングシステムおよびアプリケーションプログラムに提供する、ハードウェアおよびソフトウェアの集合体を含みうる。位置特定機構は、衛星に基づく位置決め技術、基地局の送信アンテナの特定、複数の基地局による三角測量、インターネットアクセスポイント(IP)の位置の決定、検索エンジンのクエリに基づくユーザーの位置の推測による特定、(たとえば場所に「チェックイン」することによる)ユーザーにより提供される場所の特定を利用することができる。
【０１３８】
モバイルコンピューティングデバイス1310は、他のアプリケーションモジュールおよびハードウェアを含みうる。着信処理ユニットは、電話の着信を示すものを受け取り、着信した電話にユーザーが出られるようにすることができる。メディアプレーヤーは、ユーザーが、モバイルコンピューティングデバイス1310のローカルメモリに保存された音楽を聞き、映像を再生できるようにすることができる。携帯電話1310は、デジタルカメラセンサーと、対応する画像および映像の保存編集ソフトウェアとを含みうる。インターネットブラウザは、ユーザーが、ウェブページに対応するアドレスを入力することで、またはウェブページへのリンクを選択することで、ウェブページのコンテンツを閲覧できるようにすることができる。
【０１３９】
モバイルコンピューティングデバイス1310は、基地局1340とワイヤレスに情報を通信するためのアンテナを含みうる。基地局1340は、モバイルコンピューティングデバイス1310が地理的に移動するときに、モバイルコンピューティングデバイス1310が、ネットワーク1350との通信を維持するのを可能にする、基地局群(たとえば携帯電話セルラーネットワーク)の中の多くの基地局のうちの1つであってよい。あるいは、またはさらに、コンピューティングデバイス1310は、Wi-Fiルータまたは有線接続(たとえばイーサネット（登録商標）、USB、またはFIREWIRE（登録商標）)を通じて、ネットワーク1350と通信してもよい。コンピューティングデバイス1310はまた、BLUETOOTH(登録商標)プロトコルを用いる他のコンピューティングデバイスとワイヤレスに通信してもよく、または、アドホックなワイヤレスネットワークを利用してもよい。
【０１４０】
基地局のネットワークを運用するサービスプロバイダは、モバイルコンピューティングデバイス1310をネットワーク1350に接続し、モバイルコンピューティングデバイス1310と、サービス1360を提供する他のコンピュータ化されたデバイスとの間の通信を可能にすることができる。サービス1360は様々なネットワーク(たとえば、サービスプロバイダの内部ネットワーク、公衆電話交換回線網、およびインターネット)を通じて提供されうるが、ネットワーク1350は単一のネットワークとして示される。サービスプロバイダは、モバイルコンピューティングデバイス1310と、サービス1360に関連するコンピューティングデバイスとの間で、情報パケットおよび音声データをルーティングする、サーバシステム1352を運用することができる。
【０１４１】
ネットワーク1350は、モバイルコンピューティングデバイス1310と別のコンピューティングデバイスとの間で音声通信またはFAX通信を確立するために、モバイルコンピューティングデバイス1310を公衆電話交換回線網(PSTN)1362に接続することができる。たとえば、サービスプロバイダのサーバシステム1352は、モバイルコンピューティングデバイス1310への着信を示すものを、PSTN1362から受信することができる。逆に、モバイルコンピューティングデバイス1310は、PSTN1362を通じてアクセス可能なデバイスに関連する電話番号へ電話を発信する通信を、サービスプロバイダのサーバシステム1352に送信することができる。
【０１４２】
ネットワーク1350は、PSTNではなくIPネットワークを通じて音声通信をルーティングする、ボイスオーバーインターネットプロトコル(VoIP)サービス1364によって、モバイルコンピューティングデバイス1310と接続することができる。たとえば、モバイルコンピューティングデバイス1310のユーザーは、VoIPアプリケーションを起動し、そのプログラムを用いて電話を発信することができる。サービスプロバイダのサーバシステム1352は、その電話の音声データをVoIPサービスに転送することができ、VoIPサービスは、対応するコンピューティングデバイスに、インターネットを通じて、場合によっては接続の最終レグでPSTNを用いて、その通話をルーティングすることができる。
【０１４３】
アプリケーションストア1366は、モバイルコンピューティングデバイス1310のユーザーがネットワーク1350を通じてダウンロードできモバイルコンピューティングデバイス1310にインストールできる、遠隔に保存されたアプリケーションプログラムの一覧を、ユーザーが閲覧できるようにしうる。アプリケーションストア1366は、サードパーティのアプリケーション開発者により開発されたアプリケーションのリポジトリとして動作しうる。モバイルコンピューティングデバイス1310にインストールされるアプリケーションプログラムは、アプリケーションプログラムに対して指定されるサーバシステムと、ネットワーク1350を通じて通信できてもよい。たとえば、VoIPアプリケーションプログラムを、アプリケーションストア1366からダウンロードすることができ、ユーザーがVoIPサービス1364と通信できるようにする。
【０１４４】
モバイルコンピューティングデバイス1310は、ネットワーク1350を通じてインターネット1368のコンテンツにアクセスすることができる。たとえば、モバイルコンピューティングデバイス1310のユーザーは、指定されたURLにおいてアクセス可能な遠隔のコンピューティングデバイスからのデータを要求する、ウェブブラウザアプリケーションを起動することができる。様々な例において、サービス1360のいくつかは、インターネットを通じてアクセス可能である。
【０１４５】
モバイルコンピューティングデバイスは、パーソナルコンピュータ1370と通信することができる。たとえば、パーソナルコンピュータ1370は、モバイルコンピューティングデバイス1310のユーザーの自宅用コンピュータであってよい。したがって、ユーザーは、自身のパーソナルコンピュータ1370からメディアをストリーミングできてもよい。ユーザーはまた、自身のパーソナルコンピュータ1370のファイル構造を見て、選択された文書をコンピュータ化されたデバイス間で送信することもできる。
【０１４６】
音声認識サービス1372は、モバイルコンピューティングデバイスのマイクロフォン1322により録音された音声通信データを受け取り、その音声通信を対応する文字列データに変換することができる。いくつかの例では、変換された文字列は、ウェブのクエリとして検索エンジンに提供され、それに応答する検索エンジンの検索結果が、モバイルコンピューティングデバイス1310に送信される。
【０１４７】
モバイルコンピューティングデバイス1310は、ソーシャルネットワーク1374と通信することができる。ソーシャルネットワークは、多数のメンバーを含んでもよく、メンバーの一部は知人として関連付けられることに同意している。モバイルコンピューティングデバイス1310上のアプリケーションプログラムは、ソーシャルネットワーク1374にアクセスし、モバイルコンピューティングデバイスのユーザーの知人に基づいて、情報を取り出すことができる。たとえば、「アドレス帳」アプリケーションプログラムが、ユーザーの知人の電話番号を取り出すことができる。様々な例において、コンテンツが、ユーザーから他のメンバーへのソーシャルネットワークの距離に基づいて、モバイルコンピューティングデバイス1310に送信されうる。たとえば、広告およびニュース記事のコンテンツが、そのようなコンテンツとの交流のレベルに基づいて、ユーザーと「親密な」メンバー(たとえば、「友人」または「友人の友人」のメンバー)により、ユーザーのために選択されうる。
【０１４８】
モバイルコンピューティングデバイス1310は、ネットワーク1350を通じて、個人の連絡先のセット1376にアクセスすることができる。各々の連絡先は個人を特定することができ、その個人についての情報(たとえば、電話番号、電子メールアドレス、および誕生日)を含みうる。連絡先のセットは、モバイルコンピューティングデバイス1310の遠隔でホストされるので、ユーザーは、いくつかのデバイスで、共通の連絡先のセットとして、連絡先1376にアクセスしそれを保持することができる。
【０１４９】
モバイルコンピューティングデバイス1310は、クラウドベースのアプリケーションプログラム1378にアクセスすることができる。クラウドコンピューティングは、モバイルコンピューティングデバイス1310の遠隔でホストされ、ウェブブラウザまたは専用のプログラムを用いてデバイス1310によりアクセスされうる、アプリケーションプログラム(たとえば、ワードプロセッサまたは電子メールプログラム)を提供する。例示的なクラウドベースのアプリケーションプログラムには、ワードプロセッサおよびスプレッドシートサービスのGOOGLE DOCS、ウェブメールサービスのGOOGLE GMAIL、および写真管理サービスのPICASAがある。
【０１５０】
地図サービス1380は、モバイルコンピューティングデバイス1310に、街路地図、経路計画情報、および衛星画像を提供することができる。例示的な地図サービスは、GOOGLE MAPSである。地図サービス1380はまた、クエリを受け取り、位置に特有の結果を返すこともできる。たとえば、モバイルコンピューティングデバイス1310は、モバイルコンピューティングデバイスの推定位置と、「ピザ屋」というユーザーが入力したクエリとを、地図サービス1380に送信することができる。地図サービス1380は、近くの「ピザ屋」の地理的な位置を特定する、地図に重畳された「マーカー」とともに、街路地図を返すことができる。
【０１５１】
経路案内サービス1382は、モバイルコンピューティングデバイス1310に、ユーザーが提供した目的地への経路案内指示を行うことができる。たとえば、経路案内サービス1382は、デバイスの推定位置における道路レベルの景色を、音声命令を提供するためのデータおよび目的地にデバイス1310のユーザーを案内する矢印を重畳するためのデータとともに、デバイス1310に流すことができる。
【０１５２】
様々な形態のストリーミングメディア1384が、モバイルコンピューティングデバイス1310により要求されうる。たとえば、コンピューティングデバイス1310は、事前に記録された映像ファイルのストリーム、生のテレビ番組、または生のラジオ番組を要求することができる。ストリーミングメディアを提供する例示的なサービスには、YOUTUBE（登録商標）およびPANDORAがある。
【０１５３】
マイクロブログサービス1386は、モバイルコンピューティングデバイス1310から、投稿の受信者を特定しない、ユーザーが入力した投稿を受信することができる。マイクロブログサービス1386は、そのユーザーへの登録に同意したマイクロブログサービス1386の他のメンバーに、その投稿を広めることができる。
【０１５４】
検索エンジン1388は、モバイルコンピューティングデバイス1310から、ユーザーが入力した文字または音声によるクエリを受け取り、クエリに応じたインターネットでアクセス可能な文書のセットを決定し、その文書の検索結果の一覧を表示するための情報をデバイス1310に提供することができる。音声によるクエリが受け取られる例では、音声認識サービス1372が、受け取られた音声を、検索エンジンに送信される文字によるクエリに変換することができる。
【０１５５】
これらのサービスおよび他のサービスは、サーバシステム1390で実装されうる。サーバシステムは、サービスまたはサービスのセットを提供するハードウェアとソフトウェアの組み合わせであってよい。たとえば、物理的に分かれており、ネットワーク化されコンピュータ化されたデバイスのセットは、論理的なサーバシステムとしてともに動作し、数百の個々のコンピューティングデバイスにサービスを提供するのに必要な操作を処理することができる。
【０１５６】
様々な実装形態において、別の動作(たとえば、決定または特定)に「応答して」実行される動作は、前の動作が成功しなかった場合(たとえば、決定が行われなかった場合)には実行されない。この文書で条件的な表現により説明される特徴は、任意選択の実装形態を説明しうる。いくつかの例では、第1のデバイスから第2のデバイスへの「送信」は、第1のデバイスが、第2のデバイスが受信するためにデータをネットワークに置くことを含むが、第2のデバイスがデータを受信することは含まなくてもよい。逆に、第1のデバイスからの「受信」は、ネットワークからデータを受信することを含みうるが、第1のデバイスがデータを送信することは含まなくてもよい。
【０１５７】
図14は、クライアントまたはサーバまたは複数のサーバのいずれかとしての、この文書で説明されるシステムおよび方法を実施するために用いられうる、コンピューティングデバイス1400、1450のブロック図である。コンピューティングデバイス1400は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータのような、様々な形態のデジタルコンピュータを表すことが意図される。コンピューティングデバイス1450は、携帯情報端末、携帯電話、スマートフォン、および他の同様のコンピューティングデバイスのような、様々な形態のモバイルデバイスを表すことが意図される。加えて、コンピューティングデバイス1400または1450は、Universal Serial Bus(USB)フラッシュドライブを含みうる。USBフラッシュドライブは、オペレーティングシステムおよび他のアプリケーションを保存することができる。USBフラッシュドライブは、入力/出力コンポーネント、たとえば、ワイヤレス送信機または、別のコンピューティングデバイスのUSBポートに挿入されうるUSBコネクタを含みうる。ここで示されるコンポーネント、コンポーネントの接続および関係、コンポーネントの機能は、単に例示的なものであることが意図され、この文書で説明および/または特許請求される実装形態を限定することは意図されない。
【０１５８】
コンピューティングデバイス1400は、プロセッサ1402、メモリ1404、格納デバイス1406、メモリ1404および高速インターフェース1408に接続する高速拡張ポート1410、ならびに、低速バス1414および格納デバイス1406に接続する低速インターフェース1412を含む。コンポーネント1402、1404、1406、1408、1410、および1412の各々は、様々なバスを用いて相互接続され、共通のマザーボード上に搭載されてもよく、または適宜他の方式で搭載されてもよい。プロセッサ1402は、メモリ1404または格納デバイス1406に保存された命令を含む、コンピューティングデバイス1400内での実行のための命令を処理し、高速インターフェース1408に結合されるディスプレイ1416のような外部の入力/出力デバイスに、GUIのためのグラフィカル情報を表示することができる。他の実装形態では、複数のプロセッサおよび/または複数のバスが、複数のメモリおよび複数の種類のメモリとともに適宜用いられてもよい。また、複数のコンピューティングデバイス1400が接続されてもよく、各デバイスは、(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な動作の一部を行う。
【０１５９】
メモリ1404は、コンピューティングデバイス1400の中で情報を保存する。一実装形態では、メモリ1404は、1つまたは複数の揮発性メモリユニットである。別の実装形態では、メモリ1404は、1つまたは複数の非揮発性メモリユニットである。メモリ1404はまた、磁気ディスクまたは光ディスクのような、別の形態のコンピュータ可読媒体であってもよい。
【０１６０】
格納デバイス1406は、コンピューティングデバイス1400に大容量の記憶を提供することができる。一実装形態では、格納デバイス1406は、ストレージエリアネットワークもしくは他の構成におけるデバイスを含む、フロッピー（登録商標）ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、テープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、もしくはデバイスの配列のような、コンピュータ可読媒体であってよく、またはそうしたコンピュータ可読媒体を含みうる。コンピュータプログラム製品は、情報の担体に有形に具現化されうる。コンピュータプログラム製品はまた、実行されると、上で説明されたような1つまたは複数の方法を実行する命令を含みうる。この情報の担体は、メモリ1404、格納デバイス1406、またはプロセッサ1402上のメモリのような、コンピュータ可読媒体または機械可読媒体である。
【０１６１】
高速コントローラ1408は、帯域を消費するコンピューティングデバイス1400の動作を管理し、低速コントローラ1412は、帯域をあまり消費しない動作を管理する。そのような機能の割り当ては、例示的なものにすぎない。一実装形態では、高速コントローラ1408は、メモリ1404、ディスプレイ1416(たとえば、グラフィックスプロセッサまたはアクセレレータを通じて)、および、様々な拡張カード(図示せず)を受け入れることができる高速拡張ポート1410に結合される。実装形態では、低速コントローラ1412は、格納デバイス1406および低速拡張ポート1414に結合される。様々な通信ポート(たとえば、USB、Bluetooth（登録商標）、イーサネット（登録商標）、ワイヤレスイーサネット（登録商標）)を含みうる低速拡張ポートは、たとえばネットワークアダプタを通じて、キーボード、ポインティングデバイス、スキャナ、または、スイッチもしくはルータのようなネットワーキングデバイスのような、1つまたは複数の入力/出力デバイスに結合されうる。
【０１６２】
コンピューティングデバイス1400は、図面において示されるように、複数の異なる形態で実装されうる。たとえば、コンピューティングデバイス1400は標準的なサーバ1420として実装されてもよく、またはそのようなサーバのグループにおいて複数個実装されてもよい。コンピューティングデバイス1400は、ラックサーバシステム1424の一部として実装されてもよい。加えて、コンピューティングデバイス1400は、ラップトップコンピュータ1422のような、パーソナルコンピュータとして実装されてもよい。あるいは、コンピューティングデバイス1400のコンポーネントは、デバイス1450のようなモバイルデバイス(図示せず)の他のコンポーネントと組み合わされうる。そのようなデバイスの各々は、コンピューティングデバイス1400、1450の1つまたは複数を含んでもよく、全体のシステムは、互いに通信する複数のコンピューティングデバイス1400、1450からなっていてもよい。
【０１６３】
コンピューティングデバイス1450は、コンポーネントの中でもとりわけ、プロセッサ1452、メモリ1464、ディスプレイ1454のような入力/出力デバイス、通信インターフェース1466、および送受信機1468を含む。デバイス1450はまた、さらなる記憶容量を提供するために、マイクロドライブまたは他のデバイスのような格納デバイスを提供されてもよい。コンポーネント1450、1452、1464、1454、1466および1468の各々は、様々なバスを用いて相互に接続され、コンポーネントのいくつかは、共通のマザーボード上に搭載されてもよく、または適宜他の方法で搭載されてもよい。
【０１６４】
プロセッサ1452は、メモリ1464に保存された命令を含む、コンピューティングデバイス1450中の命令を実行することができる。プロセッサは、別々の複数のアナログプロセッサおよびデジタルプロセッサを含むチップのチップセットとして、実装されうる。加えて、プロセッサは、複数のアーキテクチャのいずれを用いて実装されてもよい。たとえば、プロセッサ410は、CISC(Complex Instruction Set Computers)プロセッサ、RISC(Reduced Instruction Set Computer)プロセッサ、またはMISC(Minimal Instruction Set Computer)プロセッサであってよい。このプロセッサはたとえば、ユーザーインターフェースの制御のような、デバイス1450の他のコンポーネントの調整、デバイス1450により実行されるアプリケーション、およびデバイス1450によるワイヤレス通信を実現することができる。
【０１６５】
プロセッサ1452は、ディスプレイ1454に結合される、制御インターフェース1458および表示インターフェース1456を通じて、ユーザーと対話することができる。ディスプレイ1454は、たとえば、TFT(薄膜トランジスタ液晶ディスプレイ)ディスプレイもしくはOLED(有機発光ダイオード)ディスプレイ、または他の適切なディスプレイ技術であってよい。ディスプレイインターフェース1456は、グラフィカルな情報および他の情報をユーザーに提示するために、ディスプレイ1454を駆動するための適切な回路を含んでもよい。制御インターフェース1458は、ユーザーからの命令を受信し、この命令を、プロセッサ1452に提出するために変換することができる。加えて、外部インターフェース1462は、他のデバイスとのデバイス1450の近くの領域での通信を可能にするために、プロセッサ1452と通信していてもよい。外部インターフェース1462は、たとえば、いくつかの実装形態では有線通信を、または他の実装形態ではワイヤレス通信を実現することができ、複数のインターフェースも用いられうる。
【０１６６】
メモリ1464は、コンピューティングデバイス1450の中で情報を保存する。メモリ1464は、1つまたは複数のコンピュータ可読媒体、1つまたは複数の揮発性メモリユニット、または1つまたは複数の非揮発性メモリユニットのうちの、1つまたは複数として実装されうる。拡張メモリ1474は、拡張インターフェース1472を通じてデバイス1450に提供または接続されてもよく、拡張インターフェース1472はたとえば、SIMM(Single In Line Memory Module)カードインターフェースを含みうる。そのような拡張メモリ1474は、デバイス1450のためのさらなる記憶領域を提供することができ、または、デバイス1450のためのアプリケーションまたは他の情報を保存することもできる。具体的には、拡張メモリ1474は、上で説明された処理を実行または補助するための命令を含んでもよく、セキュリティ情報も含んでよい。したがって、たとえば、拡張メモリ1474は、デバイス1450のためのセキュリティモジュールとして提供されてもよく、デバイス1450を安全に使用できるようにする命令によりプログラムされてもよい。加えて、セキュリティアプリケーションが、ハッキング不可能な方法で、SIMMカード上の位置特定情報のような追加の情報とともに、SIMMカードを介して提供されうる。
【０１６７】
メモリは、たとえば、以下で論じられように、フラッシュメモリおよび/またはNVRAMメモリを含みうる。一実装形態では、コンピュータプログラム製品は、情報の担体に有形に具現化される。コンピュータプログラム製品は、実行されると上で説明されたような1つまたは複数の方法を実行する、命令を含む。情報の担体は、メモリ1464、拡張メモリ1474、または、たとえば送受信機1468もしくは外部インターフェース1462を通じて受けられうるプロセッサ1452上のメモリのような、コンピュータ可読媒体または機械可読媒体である。
【０１６８】
デバイス1450は、通信インターフェース1466を通じてワイヤレスに通信することができ、通信インターフェース1466は、必要に応じてデジタル信号処理回路を含みうる。通信インターフェース1466は、とりわけ、GSM(登録商標)音声通話、SMS、EMS、もしくはMMSメッセージングのような様々な方式、または、CDMA、TDMA、PDC、WCDMA（登録商標）、CDMA2000、もしくはGPRSのような様々なプロトコルの下で、通信を実現することができる。そのような通信は、たとえば、高周波送受信機1468を通じて発生しうる。加えて、Bluetooth(登録商標)、Wi-Fi、または他のそのような送受信機(図示せず)を用いるなどして、短距離の通信が行われうる。加えて、GPS(全地球測位システム)受信モジュール1470は、デバイス1450に、案内および位置に関連するさらなるワイヤレスデータを提供することができ、このデータは、デバイス1450上で実行されるアプリケーションにより適宜用いられうる。
【０１６９】
デバイス1450は、音声コーデック1460を用いて、音声により通信することもでき、音声コーデック1460は、ユーザーからの話された情報を受け取り、その情報を使用可能なデジタル情報に変換することができる。音声コーデック1460は、たとえばデバイス1450のハンドセットのようなスピーカーを通じて、ユーザーに可聴の音を同様に生成することができる。そのような音は、音声通話の音を含んでもよく、録音された音(たとえば音声メッセージ、音楽ファイルなど)を含んでもよく、また、デバイス1450上で動作するアプリケーションにより生成される音を含んでもよい。
【０１７０】
コンピューティングデバイス1450は、図面で示されるように、複数の異なる形態で実装されうる。たとえば、コンピューティングデバイス1450は、携帯電話1480として実装されてもよい。コンピューティングデバイス1450はまた、スマートフォン1482、携帯情報端末、または他の同様のモバイルデバイスの一部として実装されてもよい。
【０１７１】
ここで説明されるシステムおよび技術の様々な実装形態は、デジタル電子回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはこれらの組み合わせとして、実現されうる。これらの様々な実装形態は、少なくとも1つのプログラム可能なプロセッサを含むプログラム可能システムで実行可能かつ/または解釈可能な、1つまたは複数のコンピュータプログラムとしての実装形態を含んでもよく、少なくとも1つのプログラム可能なプロセッサは、専用プロセッサまたは汎用プロセッサであってよく、記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスと、データおよび命令を送受信するように結合されうる。
【０１７２】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)は、プログラム可能なプロセッサのための機械命令を含み、高水準の手続き型プログラミング言語および/もしくはオブジェクト指向プログラミング言語に、ならびに/またはアセンブリ/機械言語に実装されうる。本明細書で用いられる場合、用語「機械可読媒体」「コンピュータ可読媒体」は、機械命令を機械可読信号として受け取る機械可読媒体を含む機械命令および/またはデータを、プログラム可能なプロセッサに提供するのに用いられる、任意のコンピュータプログラム製品、装置および/またはデバイス(たとえば、磁気ディスク、光ディスク、メモリ、プログラム可能ロジックデバイス(PLD))を指す。用語「機械可読信号」は、機械命令および/またはデータをプログラム可能プロセッサに提供するのに用いられる、任意の信号を指す。
【０１７３】
ユーザーとの対話を実現するために、ここで説明されるシステムおよび技術は、ユーザーに情報を表示するための表示デバイス(たとえば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ)と、ユーザーがコンピュータに入力できるようにするためのキーボードおよびポインティングデバイス(たとえば、マウスまたはトラックボール)とを有する、コンピュータ上で実装されうる。他の種類のデバイスも、ユーザーとの対話を実現するために用いられうる。たとえば、ユーザーに与えられるフィードバックは、任意の形態の感覚によるフィードバック(たとえば、視覚的なフィードバック、音声のフィードバック、または触覚によるフィードバック)であってよく、ユーザーからの入力は、音による入力、発話による入力、または接触による入力を含む、任意の形態で受け取られうる。
【０１７４】
ここで説明されるシステムおよび技術は、(たとえばデータサーバとして)バックエンドのコンポーネントを含む、または、ミドルウェアのコンポーネント(たとえばアプリケーションサーバ)を含む、または、フロントエンドのコンポーネント(たとえば、グラフィカルユーザーインターフェースを有する、または、ここで説明されるシステムおよび技術の実装形態とユーザーが対話できるようにするためのウェブブラウザを有する、クライアントコンピュータ)を含む、または、そのようなバックエンドのコンポーネント、ミドルウェアのコンポーネント、もしくはフロントエンドのコンポーネントの任意の組み合わせを含む、コンピューティングシステムにおいて実装されうる。システムのコンポーネントは、デジタルデータ通信の任意の形態または媒体(たとえば通信ネットワーク)によって、相互に接続されうる。通信ネットワークの例には、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、(アドホックなまたは静的なメンバーを有する)ピアツーピアネットワーク、グリッドコンピューティング基盤、およびインターネットがある。
【０１７５】
コンピューティングシステムは、クライアントおよびサーバを含みうる。クライアントおよびサーバは、一般に互いに離れており、通常は通信ネットワークを通じて対話する。クライアントとサーバの関係は、互いにクライアントとサーバの関係を有するそれぞれのコンピュータで実行されるコンピュータプログラムによって、発生する。
【０１７６】
添付の特許請求の範囲および上の説明で説明された実施形態の代わりとして、本発明は、以下の実施形態の1つによっても説明されうる。
【０１７７】
実施形態1は、位置に基づく情報を提供するための、コンピュータで実施される方法を対象とし、その方法は、サーバシステムにおいて、モバイルコンピューティングデバイスの地理的な位置を受信するステップと、サーバシステムにおいて、モバイルコンピューティングデバイスからコンテンツの要求を受信するステップと、サーバシステムによって、地理的な位置に対応する検索領域を選択するステップであって、検索領域が地理的な位置に対応する検索領域群から選択され、検索領域群の検索領域の少なくとも1つが、検索領域の他の少なくとも1つの中へ地理的に入れ子にされる、ステップと、サーバシステムによって、選択された検索領域に対して最も関連があるものとして順位付けされる検索結果を決定するステップと、サーバシステムによって、モバイルコンピューティングデバイスにより受信するために、決定された検索結果を表すコンテンツを提供するステップとを、含む。
【０１７８】
実施形態2は、実施形態1の方法に関連し、要求が、リソースに対するHTTP要求であり、要求が、モバイルコンピューティングデバイスのユーザーにより生成された、検索エンジンシステムに対するクエリを含まず、サーバシステムが、検索領域を選択し、モバイルコンピューティングデバイスのユーザーにより生成された、検索エンジンシステムに対するクエリを用いることなく、検索領域を決定する。
【０１７９】
実施形態3は、実施形態1または2の方法に関連し、検索領域群の検索領域の各々が、人間が理解する1つまたは複数の言語の言葉による、説明のための異なる語句を割り当てられ、検索結果を決定するステップが、選択された検索領域に割り当てられる説明のための語句を含むクエリを、検索エンジンシステムに提出するステップを含む。
【０１８０】
実施形態4は、実施形態1から3のうちの任意の1つの方法に関連し、決定された検索結果が、地理的な座標を用いて位置を特定するコンテンツに対応しない。
【０１８１】
実施形態5は、位置に基づく情報を提供するための、コンピュータで実施される方法を対象とし、その方法は、モバイルコンピューティングデバイスによって、モバイルコンピューティングデバイスの地理的な位置を決定するステップと、モバイルコンピューティングデバイスから離れたサーバシステムにより受信するために、モバイルコンピューティングデバイスによって地理的な位置を提供するステップと、サーバシステムにより受信するために、モバイルコンピューティングデバイスによってコンテンツの要求を送信し、サーバシステムに、(i)地理的な位置に対応する検索領域を選択することであって、検索領域が、地理的な位置に対応する検索領域群から選択され、検索領域群の検索領域の少なくとも1つが、検索領域の他の少なくとも1つの中に地理的に入れ子にされること、および(ii)選択された検索領域に対して最も関連があるものとして順位付けられる検索結果を決定することを行わせるステップと、モバイルコンピューティングデバイスによって、決定された検索結果を表すコンテンツを、サーバシステムから受信するステップと、モバイルコンピューティングデバイスによって、決定された検索結果を表すコンテンツを表示するステップとを含む。
【０１８２】
実施形態6は、実施形態5の方法に関連し、コンテンツがウェブページに表示され、表示されたコンテンツが物理的な場所を特定し、ウェブページが、別の検索結果を表し別の物理的な場所を特定するコンテンツの表示を含まない。
【０１８３】
実施形態7は、実施形態6の方法に関連し、ウェブページが、物理的な場所を特定するコンテンツに加えて、(i)音声クエリを検索エンジンシステムに提出するためのユーザー入力を受け取るための、音声クエリ入力ボタンと、(ii)選択された検索領域を示すものと、(iii)選択された検索領域を変更するためのユーザーが選択可能な選択肢とを表示する。
【０１８４】
実施形態8は、実施形態6の方法に関連し、ウェブページが、物理的な場所を特定するコンテンツに加えて、(i)検索クエリを定義する文字によるユーザー入力を受け取るための検索ボックスと、(ii)検索クエリを検索エンジンシステムに提出するための、ユーザー入力を受信するための、検索ボタンと、(iii)選択された検索領域を示すものと、(iv)選択された検索領域を変更するための、ユーザーが選択可能な選択肢とを表示する。
【０１８５】
実施形態9は、実施形態7または8の方法に関連し、選択された検索領域を検索領域群の他の1つの検索領域に変更するユーザー入力を、ユーザーが選択可能な選択肢を用いて、受け取るステップと、モバイルコンピューティングデバイスによって、検索領域を変更するユーザー入力に応答して、他の検索領域に対して最も関連があるものと決定された第2の検索結果を表すコンテンツを受信するステップと、決定された検索結果の表示されたコンテンツを、第2の検索結果のコンテンツの表示で置き換えるステップとを、さらに含む。
【０１８６】
実施形態10は、実施形態9の方法に関連し、検索領域を変更するユーザー入力を受け取ったことに応答して、他の検索領域が、検索領域に関して修正の前よりも関連があるものとしてスコアを付けられるように、他の検索領域のスコアを修正するステップをさらに含み、他の検索領域のスコアが、検索領域と他の検索領域のどちらをウェブページに表示するかを選択する際に用いられる。
【０１８７】
実施形態11は、実施形態5の方法に関連し、モバイルコンピューティングデバイスによって、(i)検索クエリを定義する文字によるユーザー入力を受け取るための検索ボックスと、(ii)検索ボックスに入力された検索クエリを検索エンジンシステムに提出する、ユーザー入力を受け取るための検索ボタンとを含む、第1のウェブページを表示するステップと、検索ボックスが検索クエリを定義するユーザー入力を受信していない場合に、検索ボタンを選択するユーザー入力を受け取るステップとをさらに含み、検索結果を表すコンテンツに対する送信された要求が、検索ボタンを選択するユーザー入力を受け取ったことに応答して、モバイルコンピューティングデバイスにより送信される。
【０１８８】
実施形態12は、実施形態11の方法に関連し、決定された検索結果を表す受信されたコンテンツが、決定された検索結果が特定するURI(Uniform Resource Identifier)を含み、決定された検索結果を表すコンテンツを表示するステップが、URIにより特定される第2のウェブページを表示するステップを含む。
【０１８９】
実施形態13は、実施形態12の方法に関連し、第2のウェブページが、検索ボタンを選択するユーザー入力を受け取った後にユーザー入力を受け取ることなく、モバイルコンピューティングデバイスにより表示される。
【０１９０】
実施形態14は、実施形態13の方法に関連し、URIを特定する決定された検索結果が、様々な異なる情報プロバイダによりホストされるウェブページのURIを特定する検索結果群から、選択される。
【０１９１】
実施形態15は、位置に基づく情報を提供するためのシステムを対象とし、このシステムは、要求するコンピューティングデバイスの地理的な位置を受信し、地理的な位置に対応する検索領域を選択するように構成される、検索領域決定器であって、検索領域が、地理的な位置に対応する検索領域群から選択され、検索領域群の検索領域の少なくとも1つが、検索領域の少なくとも他の1つの中に地理的に入れ子にされる、検索領域決定器と、選択された検索領域を含むクエリに対して最も関連があるものとして順位付けられる検索結果を決定し、要求するコンピューティングデバイスに、決定された検索結果を表すコンテンツを提供するように構成される、検索エンジンと、複数のモバイルコンピューティングデバイスであって、それらの複数のうちの特定のモバイルデバイスがそれぞれ、特定のコンピューティングデバイスの特定の地理的な位置を決定し、特定の地理的な位置を検索領域決定器に提供するための、地理的な位置決定器と、特定の検索結果を表すコンテンツを検索エンジンから受信し、特定の検索結果を表すコンテンツを表示するための、検索結果表示生成器とを含む、複数のモバイルコンピューティングデバイスとを含む。
【０１９２】
実施形態16は、実施形態15のシステムに関連し、特定の検索結果を表すコンテンツの表示が、選択可能なグラフィカルインターフェース要素を含み、グラフィカルインターフェース要素をユーザーが選択することで、モバイルコンピューティングデバイスに、特定の検索結果を表す追加のコンテンツの表示へ案内させる。
【０１９３】
実施形態17は、実施形態15または16のシステムに関連し、検索領域群の検索領域の各々に割り当てられるスコアを修正するための、検索領域重み付け器をさらに含み、検索領域の各々のスコアが、検索領域決定器により検索領域を選択する際に用いられる。
【０１９４】
実施形態18は、実施形態17のシステムに関連し、特定の検索結果に対する選択可能なグラフィカルインターフェース要素を、ユーザーが選択したことに応答して、検索領域重み付け器が、決定された検索領域のスコアを修正する。
【０１９５】
実施形態19は、実施形態17または18のシステムに関連し、特定の検索結果に対する追加のコンテンツの表示が、選択された検索領域以外の、検索領域群の少なくとも1つの別の検索領域に対する、選択可能なグラフィカルインターフェース要素の表示を含み、検索領域重み付け器が、他の検索領域に対するグラフィカルインターフェース要素をユーザーが選択したことに応答して、他の検索領域に対する重みを修正する。
【０１９６】
実施形態20は、実施形態15から19のいずれか1つのシステムに関連し、クエリが、モバイルコンピューティングデバイスのユーザーにより入力された文字列を含まない。
【０１９７】
実施形態21は、実施形態15から20のいずれか1つのシステムに関連し、検索エンジンが、特定のインターフェース要素の選択に応答して、特定の検索結果を決定し、特定のインターフェース要素が、クエリ入力テキストボックスを用いて提供されたユーザーコンテンツによって定義されたクエリを、コンピューティングデバイスから検索エンジンに提出するのに用いられ、特定のインターフェース要素の選択が、クエリ入力テキストボックスがユーザーコンテンツを提供されていない場合に実行される。
【０１９８】
実施形態22は、実施形態15から21のいずれか1つに関連し、検索領域群の検索領域の少なくとも1つが、検索領域の少なくとも他の1つの中に、完全に地理的に入れ子にされる。
【０１９９】
実施形態23は、実施形態15から21のいずれか1つのシステムに関連し、検索領域群の検索領域の少なくとも1つが、検索領域の少なくとも他の1つの中に、部分的に地理的に入れ子にされる。
【０２００】
実施形態24は、実施形態1から14のいずれか1つの方法に関連し、検索領域群の検索領域の少なくとも1つが、検索領域の少なくとも他の1つの中に完全に地理的に入れ子にされる。
【０２０１】
実施形態25は、実施形態1から14のいずれか1つの方法に関連し、検索領域群の検索領域の少なくとも1つが、検索領域の少なくとも他の1つの中に部分的に地理的に入れ子にされる。
【０２０２】
実施形態26は、命令を保存する記録媒体を対象とし、その命令は、1つまたは複数のプロセッサにより実行されると、実施形態1から14のいずれか1つの方法に従って動作を実行する。
【０２０３】
実施形態27は、命令を保存する記録媒体を含むシステム対象とし、その命令は、1つまたは複数のプロセッサにより実行されると、実施形態1から14のいずれか1つの方法に従って動作を実行する。
【０２０４】
いくつかの実装形態が上で詳細に説明されてきたが、他の修正形態が可能である。さらに、この文書で説明されるシステムおよび方法を実行するための他の機構が、用いられてもよい。加えて、図面で示される論理フローは、所望の結果を得るために、示される特定の順序、または逐次的な順序を必要としない。他のステップが提供されてもよく、または説明されたフローからステップが削除されてもよく、他のコンポーネントが、説明されたシステムに追加されてもよく、説明されたシステムから削除されてもよい。したがって、他の実装形態は、以下の特許請求の範囲の中にある。
【符号の説明】
【０２０５】
110A  モバイルデバイス
130A  カバレッジ領域
140A  無線基地局
170  ネットワーク
210  モバイル検索アプリケーション
250  位置検索サーバ
300  システム
320  ディスプレイ
325  検索要求器
330  位置決定器
332  地理的な位置
333  検索領域の一覧
334  選択された検索領域
340  検索領域決定器
342  検索領域
352  結果の項目
360  カテゴリー決定器
362  カテゴリーの一覧
364  選択されたカテゴリー
610  特定の検索領域
650  Place Pages
1000  コンピュータシステム
1004  プロセッサ
1006  通信バス
1006  GPS
1008  メインメモリ
1010  二次的なメモリ
1012  ハードディスクドライブ
1014  取り外し可能な記憶ドライブ
1018  取り外し可能な記憶ユニット
1020  インターフェース
1024  通信インターフェース
1032  入力/出力/表示デバイス
1102  ウェブページ
1104  クエリ入力テキストボックス
1106  クエリ提出インターフェース要素
1200  モバイルコンピューティングデバイス
1202  サーバシステム
1204  位置決定器
1206  地理的な位置
1208  検索領域決定器
1210  検索要求提出器
1214  検索領域
1216  ローカルの検索エンジン
1220  検索結果のコンテンツ
1222  検索結果表示生成器
1226  検索領域重み付け器
1310  モバイルコンピューティングデバイス
1340  基地局
1350  ネットワーク
1352  サーバシステム
1360  多くのサービス
1400  コンピューティングデバイス
1402  プロセッサ
1404  メモリ
1406  格納デバイス
1408  高速インターフェース
1410  高速拡張ポート
1412  低速インターフェース
1414  低速バス
1416  ディスプレイ
1420  サーバ
1422  ラップトップコンピュータ
1424  サーバシステム
1450  コンピューティングデバイス
1480  携帯電話
1482  スマートフォン
【図１】
2018037109.tif 000003
【図２】
2018037109.tif 000004
【図３Ａ】
2018037109.tif 000005
【図３Ｂ】
2018037109.tif 000006
【図３Ｃ】
2018037109.tif 000007
【図４】
2018037109.tif 000008
【図５】
2018037109.tif 000009
【図６Ａ】
2018037109.tif 000010
【図６Ｂ】
2018037109.tif 000011
【図６Ｃ】
2018037109.tif 000012
【図６Ｄ】
2018037109.tif 000013
【図６Ｅ】
2018037109.tif 000014
【図６Ｆ】
2018037109.tif 000015
【図７Ａ】
2018037109.tif 000016
【図７Ｂ】
2018037109.tif 000017
【図７Ｃ】
2018037109.tif 000018
【図８】
2018037109.tif 000019
【図９Ａ】
2018037109.tif 000020
【図９Ｂ】
2018037109.tif 000021
【図１０】
2018037109.tif 000022
【図１１】
2018037109.tif 000023
【図１２】
2018037109.tif 000024
【図１３】
2018037109.tif 000025
【図１４】
2018037109.tif 000026
【手続補正書】
【提出日】平成29年12月6日(2017.12.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
位置に基づく情報を提供するための、コンピュータで実施される方法であって、前記方法は、
コンピューティングシステムにおいて、モバイルコンピューティングデバイスの地理的な位置を受信するステップと、
前記コンピューティングシステムによって、前記地理的な位置に対応する第１検索領域を選択するステップであって、検索領域は、検索領域群内の検索領域に対するスコアに基づいて、前記地理的な位置に対応する前記検索領域群から選択される、ステップと、
前記コンピューティングシステムによって、前記第１検索領域に対して最も関連性が高く順位付けされた第１検索結果を決定するステップと、
前記コンピューティングシステムによって、かつ前記第１検索領域に対して最も関連性が高く順位付けされた前記第１検索結果の決定に応答して前記モバイルコンピューティングデバイスにより受信されるように、モバイルコンピューティングデバイスに、
(i)前記第１検索結果を表すコンテンツ、及び
(ii)前記第１検索領域を示すもの
を提示させるための第１情報を提供するステップと、
前記コンピューティングシステムによって、モバイルコンピューティングデバイスでのユーザ入力が、前記第１検索領域を前記検索領域群内の第２検索領域に変更したというインジケーションを受信するステップと、
前記コンピューティングシステムによって、前記第２検索領域に対して最も関連性が高く順位付けされた第２検索結果を決定するステップと、
前記コンピューティングシステムによって、かつユーザ入力が前記第１検索領域を前記第２検索領域に変更したというインジケーションを受信することに応答してモバイルコンピューティングデバイスにより受信されるように、モバイルコンピューティングデバイスに、
(iii)前記第２検索結果を表すコンテンツ、及び
(iv)前記第２検索領域を示すもの
を提示させるための第２情報を提供するステップであって、前記第２情報は、前記第１情報とは異なる、ステップと、
前記コンピューティングシステムによって、ユーザ入力が、前記第１検索領域から前記第２検索領域に変更されたというインジケーションを受信したことに応答して、検索領域スコアの修正前よりも、前記第２検索領域が、前記第１検索領域に対してより関連性があるスコアとなるように、検索領域スコアを修正するステップと、
を具備することを特徴とするコンピュータで実施される方法。
【請求項２】
前記検索領域群内の少なくとも１つの検索領域は、前記検索領域群内の少なくとも他の検索領域内に完全に地理的にネストされている.
ことを特徴とする請求項１に記載のコンピュータで実施される方法。
【請求項３】
前記第１検索結果を決定する前記ステップは、検索エンジンシステムにクエリを提出するステップと、前記検索エンジンシステムから前記第１検索結果を受信するステップとを含むことを特徴とする請求項１に記載のコンピュータで実施される方法。
【請求項４】
前記地理的な位置は、地理的な座標を含み、
前記第１検索結果を決定する前記ステップは、検索エンジンシステムにクエリを提供するステップを含み、
前記クエリは、前記地理的な座標を含んでいないことを特徴とする請求項１に記載のコンピュータで実施される方法。
【請求項５】
前記検索領域群内の各前記検索領域は、人間が理解可能な１つ又は複数の単語の異なる説明的な語句が割り当てられ、
前記第１検索結果を決定する前記ステップは、検索エンジンシステムに、前記第１検索領域に割り当てられる、人間が理解可能な１つ又は複数の単語の異なる説明的な語句を提供するステップと、前記検索エンジンシステムからの応答として、前記第１検索結果を受信するステップとを含むことを特徴とする請求項１に記載のコンピュータで実施される方法。
【外国語明細書】
2018037109000001.pdf