IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インターナショナル・ビジネス・マシーンズ・コーポレーションの特許一覧

<>
  • 特許-予測通信補償 図1
  • 特許-予測通信補償 図2
  • 特許-予測通信補償 図3
  • 特許-予測通信補償 図4
  • 特許-予測通信補償 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-06-10
(45)【発行日】2025-06-18
(54)【発明の名称】予測通信補償
(51)【国際特許分類】
   H04W 88/06 20090101AFI20250611BHJP
   H04M 3/42 20060101ALI20250611BHJP
   H04W 48/16 20090101ALI20250611BHJP
【FI】
H04W88/06
H04M3/42 Z
H04W48/16 132
【請求項の数】 15
(21)【出願番号】P 2023516645
(86)(22)【出願日】2021-08-31
(65)【公表番号】
(43)【公表日】2023-10-11
(86)【国際出願番号】 CN2021115797
(87)【国際公開番号】W WO2022057619
(87)【国際公開日】2022-03-24
【審査請求日】2024-01-23
(31)【優先権主張番号】17/021,183
(32)【優先日】2020-09-15
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【弁理士】
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【弁理士】
【氏名又は名称】片岡 忠彦
(72)【発明者】
【氏名】クワトラ,シカール
(72)【発明者】
【氏名】アウワド,アシュラフ マフムード モハメド アフメド
(72)【発明者】
【氏名】グリフィン,アダム リー
(72)【発明者】
【氏名】トリム,クレイグ エム.
【審査官】吉江 一明
(56)【参考文献】
【文献】国際公開第2019/148314(WO,A1)
【文献】米国特許出願公開第2014/0161103(US,A1)
【文献】特表2017-537568(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04W 4/00 - 99/00
H04M 3/42
(57)【特許請求の範囲】
【請求項1】
予期されるオーディオ通信問題を予測的に補償する為の、コンピュータに実装された方法であって、
ユーザに関連付けられた第1のデバイスの状態を決定すること;
前記ユーザに関連付けられた第2のデバイスの更なる状態を決定すること;
前記第1のデバイスが現在接続されて、通信を行うところの第1のネットワークに対する第1の信号強度と、前記第1のデバイスが前記通信を実行する際に利用するように構成されているところの第2のネットワークに対する第2の信号強度とを、前記状態に基づいて決定すること;
前記第2のデバイスが現在接続されて、前記通信を行うところの前記第1のネットワークに対する第3の信号強度を、前記更なる状態に基づいて決定すること;
前記第1の信号強度及び前記第2の信号強度の各々が個別に最小閾値を満たさない結果として、前記第1のネットワークを前記第2のネットワーク上にレイヤー化することによって、全体的な信号強度を有する全体信号を生成すること、ここで、前記全体的な信号強度は前記第1の信号強度及び前記第2の信号強度よりも比較的に大きい信号強度を有する;並びに、
前記第1のデバイス又は前記第2のデバイスを使用して前記通信を実行するかについて、
前記第1のデバイスが選択されることに応じて、前記全体信号を使用して、前記通信を実行すること
前記第2のデバイスが選択されることに応じて、前記通信を行う為に前記第2のデバイスを利用するように前記ユーザに指示を送信すること
を含む、前記方法。
【請求項2】
前記指示が前記通信中に送信され、及び、前記方法が、
前記第2のデバイスを前記通信に事前対応的に接続すること
を更に含む、請求項に記載の、コンピュータに実装された方法。
【請求項3】
前記ユーザに関連付けられた追加の状態を決定すること、ここで、前記追加の状態は、前記ユーザが前記通信において入来する音声通信を理解することを妨げる周囲の雑音状態に関連する;
前記入来する音声通信を音声からテキストに変換すること;及び、
前記変換された入来する音声通信を前記ユーザに提示すること
を更に含む、請求項1に記載の、コンピュータに実装された方法。
【請求項4】
前記第2の信号強度が前記第1の信号強度よりも大きく、及び、前記方法が、
前記第1のデバイスが前記第2のネットワークに接続されるように、前記第1のデバイスを前記第2のネットワークと関連付けること
を更に含む、請求項1に記載の、コンピュータに実装された方法。
【請求項5】
前記第1のネットワークがセルラーネットワークであり、及び前記第2のネットワークがWiFiネットワークである、請求項1に記載の、コンピュータに実装された方法。
【請求項6】
予期されるオーディオ通信問題を予測的に補償する為のコンピュータプログラムであって、
ユーザに関連付けられた第1のデバイスの状態を決定すること;
前記ユーザに関連付けられた第2のデバイスの更なる状態を決定すること;
前記第1のデバイスが現在接続されて、通信を行うところの第1のネットワークに対する第1の信号強度と、前記第1のデバイスが前記通信を実行する際に利用するように構成されているところの第2のネットワークに対する第2の信号強度とを、前記状態に基づいて決定すること;
前記第2のデバイスが現在接続されて、前記通信を行うところの前記第1のネットワークに対する第3の信号強度を、前記更なる状態に基づいて決定すること;
前記第1の信号強度及び前記第2の信号強度の各々が個別に最小閾値を満たさない結果として、前記第1のネットワークを前記第2のネットワーク上にレイヤー化することによって、全体的な信号強度を有する全体信号を生成すること、ここで、前記全体的な信号強度は前記第1の信号強度及び前記第2の信号強度よりも比較的に大きい信号強度を有する;並びに、
前記第1のデバイス又は前記第2のデバイスを使用して前記通信を実行するかについて、
前記第1のデバイスが選択されることに応じて、前記全体信号を使用して、前記通信を実行すること
前記第2のデバイスが選択されることに応じて、前記通信を行う為に前記第2のデバイスを利用するように前記ユーザに指示を送信すること
を含む方法の各工程を1以上のプロセッサに実行させる、前記コンピュータプログラム。
【請求項7】
前記指示が前記通信中に送信され、及び、前記方法が、
前記第2のデバイスを前記通信に事前対応的に接続すること
を更に含む、請求項に記載のコンピュータプログラム。
【請求項8】
前記方法が、
前記ユーザに関連付けられた追加の状態を決定すること、ここで、前記追加の状態は、前記ユーザが前記通信において入来する音声通信を理解することを妨げる周囲の雑音状態に関連する;
前記入来する音声通信を音声からテキストに変換すること;及び、
前記変換された入来する音声通信を前記ユーザに提示すること
を更に含む、請求項に記載のコンピュータプログラム。
【請求項9】
前記第2の信号強度が前記第1の信号強度よりも大きく、及び、前記方法が、
前記第1のデバイスが前記第2のネットワークに接続されるように、前記第1のデバイスを前記第2のネットワークと関連付けること
を更に含む、請求項に記載のコンピュータプログラム。
【請求項10】
前記第1のネットワークがセルラーネットワークであり、及び前記第2のネットワークがWiFiネットワークである、請求項に記載のコンピュータプログラム。
【請求項11】
予期されるオーディオ通信問題を予測的に補償する為のコンピュータシステムであって、該コンピュータシステムは、1以上のコンピュータプロセッサ、1以上のコンピュータ可読記憶媒体、及び下記の方法を実行することができる前記1以上のプロセッサのうちの少なくとも1つによって実行する為の、前記1以上のコンピュータ可読記憶媒体上に記憶された複数のプログラム命令を備えており、前記方法は、
ユーザに関連付けられた第1のデバイスの状態を決定すること;
前記ユーザに関連付けられた第2のデバイスの更なる状態を決定すること;
前記第1のデバイスが現在接続されて、通信を行うところの第1のネットワークに対する第1の信号強度と、前記第1のデバイスが前記通信を実行する際に利用するように構成されているところの第2のネットワークに対する第2の信号強度とを、前記状態に基づいて決定すること;
前記第2のデバイスが現在接続されて、前記通信を行うところの前記第1のネットワークに対する第3の信号強度を、前記更なる状態に基づいて決定すること;
前記第1の信号強度及び前記第2の信号強度の各々が個別に最小閾値を満たさない結果として、前記第1のネットワークを前記第2のネットワーク上にレイヤー化することによって、全体的な信号強度を有する全体信号を生成すること、ここで、前記全体的な信号強度は前記第1の信号強度及び前記第2の信号強度よりも比較的に大きい信号強度を有する;並びに、
前記第1のデバイス又は前記第2のデバイスを使用して前記通信を実行するかについて、
前記第1のデバイスが選択されることに応じて、前記全体信号を使用して、前記通信を実行すること
前記第2のデバイスが選択されることに応じて、前記通信を行う為に前記第2のデバイスを利用するように前記ユーザに指示を送信すること
を含む、前記コンピュータシステム。
【請求項12】
前記指示が前記通信中に送信され、及び、前記方法が、
前記第2のデバイスを前記通信に事前対応的に接続すること
を更に含む、請求項11に記載のコンピュータシステム。
【請求項13】
前記方法が、
前記ユーザに関連付けられた追加の状態を決定すること、ここで、前記追加の状態は、前記ユーザが前記通信において入来する音声通信を理解することを妨げる周囲の雑音状態に関連する;
前記入来する音声通信を音声からテキストに変換すること;及び、
前記変換された入来する音声通信を前記ユーザに提示すること
を更に含む、請求項11に記載のコンピュータシステム。
【請求項14】
前記第2の信号強度が前記第1の信号強度よりも大きく、及び、前記方法が、
前記第1のデバイスが前記第2のネットワークに接続されるように、前記第1のデバイスを前記第2のネットワークと関連付けること
を更に含む、請求項11に記載のコンピュータシステム。
【請求項15】
前記第1のネットワークがセルラーネットワークであり、及び前記第2のネットワークがWiFiネットワークである、請求項11に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
例示的な実施態様は一般的に通信に関し、より特には、オーディオ通信が問題を経験する時期を予測し、そして、該問題を補償する為の様式を決定することに関する。
【背景技術】
【0002】
ユーザは、1以上の携帯機器を利用して、他のユーザと音声通信を行いうる。様々な要因に依存して、音声通信の為の現在の通信リンクが進行中であるときに、複数の異なる種類の問題が発生しうる。該問題は、異なるネットワークからのネットワーク信号の利用可能性、位置が特に混雑しているか又はうるさいこと、周囲の文脈的状況等に関連しうる。例えば、該ユーザが移動しており且つ電話で会話している場合に、該ユーザは、外部雑音の故に、受信している音声コンテントを聞くことができないかもしれないし、該ユーザの現在のデバイスは適切な信号強度等を受信していないかもしれない。慣用的なアプローチの下では、該ユーザは単に通信を終了し、そして、後日に、該問題が自然に解決したときに再試行することが必要とされる、又は該ユーザは会話を続ける為に緊張しながら通信を継続しうる。
【発明の概要】
【課題を解決するための手段】
【0003】
該例示的な実施態様は、予期されるオーディオ通信問題(expected audio communication issues)の為に予測的に(predictively)補償する為の方法、コンピュータプログラム製品及びコンピュータシステムを開示する。該方法は、ユーザに関連付けられた第1のデバイスの状態を決定することを含む。該方法は、該第1のデバイスが現在接続されて、通信を行うところの第1のネットワークに対する第1の信号強度と、該第1のデバイスが該通信を実行する際に利用するように構成されているところの第2のネットワークに対する第2の信号強度とを、該状態に基づいて決定することを含む。該第1の信号強度及び該第2の信号強度の各々が個別に最小閾値を満たさない結果として、該方法は、該第1のネットワークを該第2のネットワーク上にレイヤー化することによって、全体的な信号強度を有する全体信号を生成することを含む。該全体的な信号強度は、該第1の信号強度及び該第2の信号強度よりも比較的に大きい信号強度を有する。該方法は、該全体信号を使用して、該通信を実行することを含む。
【0004】
以下の発明の詳細な説明は、例示として与えられるものであって、例示的な実施態様をそれのみに限定することを意図するものでなく、添付の図面と併せて最もよく理解されるであろう。
【図面の簡単な説明】
【0005】
図1図1は、例示的な実施態様に従う、音声補償システム100の例示的な概略図を図示する。
図2図2は、例示的な実施態様に従う、予期されるオーディオ通信問題の為に予測的に補償する際の、音声補償システム100のスマートデバイス110の動作を示す方法の例示的なフローチャート図を図示する。
図3図3は、例示的な実施態様に従う、図1の音声補償システム100のハードウェアコンポーネントを示す例示的なブロック図を図示する。
図4図4は、例示的な実施態様に従うクラウドコンピューティング環境を図示する。
図5図5は、例示的な実施態様に従う抽象化モデル層を図示する。
【発明を実施するための形態】
【0006】
該図面は、必ずしも縮尺通りではない。該図面は、単なる模式的な表現であり、例示的な実施態様の特定のパラメータを描写することを意図していない。該図面は、典型的な例示的な実施態様のみを描写することを意図している。該図面において、同様の番号付けは、同様の要素を表す。
【0007】
特許請求の範囲に記載されている構造及び方法の詳細な実施態様が本明細書において開示されている。しかしながら、開示された実施態様が、様々な形態で具現化されうる特許請求の範囲に記載された構造及び方法の例にすぎないことが、理解されることができる。しかしながら、本発明は、様々な形態で具体化されてもよく、本明細書において記載された例示的な実施態様に制限されると解釈されるべきでない。発明の詳細な説明において、周知の特徴及び技術の詳細は、提示された実施態様を不必要に分かりにくくするのを避ける為に、省略されうる。
【0008】
本明細書における「1つの実施態様」、「或る実施態様」、「例示的な実施態様」等への言及は、記載された実施態様が特定の特徴、構造又は特性を含むことができるが、全ての実施態様が特定の特徴、構造又は特性を含んでいてもよく又は含んでいなくてもよいことを示す。その上、そのようなフレーズは、必ずしも同じ実施態様を言及するものでない。更に、特定の特徴、構造又は特性が実施態様に関連して記載されている場合、明示的に記載されているかどうかにかかわらず、他の実施態様に関連してそのような特徴、構造又は特性に影響を与えることは当業者の知識の範囲内であることが提示される。
【0009】
例示的な実施態様の提示を不明瞭にしない為に、以下の発明の詳細な説明において、当技術分野で知られている幾つかの処理工程又は操作は、提示の為に及び説明の為に一緒に組み合わされている場合があり、幾つかの事例においては、発明の詳細な説明に記載されていない場合がある。他の例において、当技術分野で知られている幾つかの処理工程又は操作は、全く説明されていないかもしれない。以下の説明は、様々な例示的な実施態様に従う特有の特徴又は要素に焦点を当てていることが理解されるべきである。
【0010】
該例示的な実施態様は、予期される状態又は存在する状態に基づいて補償手段を定義するルールの1組を通じて、予期されるオーディオ通信問題を予測的に補償する為の方法、コンピュータプログラム製品及びシステムに向けられている。該例示的な実施態様は、通信リンクを改善し並びにシームレスな方法で該通信における中断を防止する為に、動的なモード変更、利用可能なメカニズムのレイヤー化等を通じてシームレス通信が達成されうるところの知的メカニズムを提供しうる。ユーザが期待しうるシームレスな品質を通信が欠く可能性がある多種多様な理由によって、該例示的な実施態様は、通信が進行する為に入力方法の動的且つモジュール式のレイヤー化を利用しうる。該例示的な実施態様の主要な利点は、該ユーザから要求されるアクションを最小化する為に予測的な様式で入来する音声メッセージを受信する為に、ユーザが音声通信を実行する為のシームレスなメカニズムを提供することを含みうる。例示的な実施態様の詳細な実装は下記の通りである。
【0011】
慣用的なアプローチは、通信が行われるように並びに通信中に生じうる問題を補償するように、多くの様々なソリューションを提供してきた。例えば、慣用的なアプローチは、3つ以上の異なる種類のネットワークで異機種無線デバイスを管理する。別の例において、慣用的なアプローチは、無線セルラーネットワークを使用して既に進行中の通信を無線ボイスオーバーIP(VoIP:Voice over IP)ネットワークに自動的に切り替えたり又はその逆の切り替えを行ったりする。更なる例において、慣用的なアプローチは、移動確率データベース(migration probability database)を使用して、無線ネットワークの地理的位置の間のモバイルデバイスの移動を予測する。さらに別の例において、慣用的なアプローチは、セルラー無線通信ネットワークのセルラー無線プロトコルに影響を与えること無しに、第1のセルラー無線通信インタフェースから第2の無線通信インタフェースにデータをオフロードする。追加の例において、慣用的なアプローチは、無線音声接続の垂直ハンドオーバーを実行する。しかしながら、これらの慣用的なアプローチは、VoIPとセルラーとを動的にレイヤー化して、コンテキスト属性に沿った暗黙的及び明示的なフィードバックに基づくシームレスな通信を楽しむ為に通信を強化するものでなく、これらの慣用的なアプローチは、信号強度及び周囲の状態に基づくスピーチからテキストへのリアルタイムの会話を記述もしない。
【0012】
当業者であれば理解できるように、ネットワークの可用性は不安定であったり、又は過度の混雑及び切り替えの為の信号の瞬間的な過負荷を通じた貧弱な帯域があったりする。その上、ひどい天候及びソフトウェアの不具合が存在し得、それは、通話の切断、及び貧弱なユーザエクスペリエンスを結果として生じうる。これらの問題及び慣用的なアプローチの欠点に鑑みて、該例示的な実施態様は、ユーザ若しくは人々のグループ又はそれらの組み合わせについての動きのパターンを動的に投影若しくは予測又は投影且つ予測する為の機構を提供する。位置決定方法からの静的若しくは動的又は静的且つ動的なユーザクラスタリング及び密度に由来し且つそれらに基づくデータを使用して、該例示的な実施態様は、存在する又は予測される問題を補償する為に使用される統計及び機械学習入力をコンパイルしうる。パターン分析及び他の利用可能な解析アプローチに基づいて、該例示的な実施態様は、補償手段が(例えば、セルラー通信システムとVoIP通信システムとの間で)影響される時期を事前対応的に決定してもよく、並びに事前需要帯域幅拡張の為の予測入力(forecasting input)を提供して、プロバイダがインフラニーズ及び計画された購買力に対する洞察を行うことを可能にし、それによってベンダーサービスプロバイダについてのコスト及びユーザについての高いレベルの通話品質を低減させてもよい。その上、該例示的な実施態様は、ユーザに関連付けられた複数のデバイスにわたってユーザの好みに基づく補償手段を利用するオプションを留保しながら、両方の信号品質がそれ自体で相対的に弱い場合に、セルラーとVoIPとの両方のレイヤー化を含む補償手段を利用しうる。なお更には、該例示的な実施態様は、特に、ユーザが入来する音声通信を適切に解読することを許さない周辺の状態により、音声をテキストにリアルタイムで書きおこす音声転写を含む補償手段を提供してもよい。
【0013】
該例示的な実施態様は、音声通信と、該音声通信中に生じうる問題の補償とを特に参照して説明されている。しかしながら、該例示的な実施態様は、任意の種類の通信、より一般的にはデータ交換、に使用する為に利用され若しくは修正され又は利用且つ修正されてもよい。従って、例示的な実施態様によって提供される機構は、通信又はデータ交換中に生じる又は生じると予測される問題を事前対応的に補償する際に使用する為に利用され若しくは修正され又は利用且つ修正されてもよい。
【0014】
図1は、例示的な実施態様に従う音声補償システム100を示す。該例示的な実施態様に従うと、音声補償システム100は、プライマリスマートデバイス110、1以上のプロファイルリポジトリ120、プロファイリングサーバ130、及び1以上のセカンダリスマートデバイス140を備えていてもよく、それらは全てネットワーク108を介して相互接続されうる。例示的な実施態様のプログラミング及びデータは、ネットワーク108を介して複数のサーバにわたってリモートで格納及びアクセスされてもよく、代替的に又は追加的に、該例示的な実施態様のプログラミング及びデータは、1つの物理的なコンピューティングデバイスに、又は図示されているもの以外の他のコンピューティングデバイス間でローカルに格納されてもよい。
【0015】
該例示的な実施態様は、ユーザに関連付けられうる(例えば、該ユーザによってアクセスされ及び使用可能でありうる)複数のスマートデバイスを有しうる該ユーザに関して説明されている。該複数のスマートデバイスは、プライマリスマートデバイス110と、1以上のセカンダリスマートデバイス140とを備えうる。プライマリ及びセカンダリの指定は、該例示的な実施態様が実施されうる観点を代表するものであり、優先順位を定義するものではない。例えば、プライマリスマートデバイス110は、現在使用中のデバイスであってもよく、一方、セカンダリスマートデバイス140は、ユーザによって現在利用可能である(例えば、該ユーザの使用可能な近接範囲内にある)デバイスであってもよい。従って、「プライマリ」の指定は使用中のデバイスを云い、並びに「セカンダリ」の指定は、使用可能であるが現在は使用されていないデバイスを云う場合がある。
【0016】
例示的な実施態様において、ネットワーク108は、接続された複数のデバイスの間でデータを転送することができる通信チャネルでありうる。従って、音声補償システム100のコンポーネントは、ネットワーク108を介して相互接続されたネットワークコンポーネント又はネットワークデバイスを表わしうる。例示的な実施態様において、ネットワーク108は、インターネットであってもよく、該インターネットに接続された複数のデバイスの間の通信をサポートする為のネットワーク及びゲートウェイの世界的な集合体を表す。その上、ネットワーク108は、様々な種類の接続、例えば、有線、無線、光ファイバ等、を利用し得、それらは、イントラネットネットワーク、ローカルエリアネットワーク(LAN:local area network)、ワイドエリアネットワーク(WAN:wide area network)、又はそれらの組み合わせとして実装されうる。更なる実施態様において、該ネットワーク108は、ブルートゥース(Bluetooth)ネットワーク、WiFiネットワーク、又はそれらの組み合わせでありうる。なお更なる実施態様において、ネットワーク108は、固定電話網、無線網、閉域網、衛星網、又はそれらの組み合わせからなる2つ以上の当事者間の電話通話を促進する為に使用される電気通信ネットワークであってもよい。一般的に、ネットワーク108は、接続されたデバイス間の通信をサポートするであろう接続及びプロトコルの任意の組み合わせを表しうる。例えば、ネットワーク108はまた、ネットワーク108を利用しない音声補償システム100のコンポーネント間の直接的又は間接的な有線又は無線接続を表しうる。以下で詳細に説明されているように、補償手段を決定する為に使用されうる情報を交換する際に、プライマリスマートデバイス110と、ネットワーク108を利用してもしなくてもよいセカンダリスマートデバイス140の1つとの間で接続が確立されてもよい。ネットワーク108を介して音声通信を行う為に、プライマリスマートデバイス110と、更なるユーザの更なるスマートデバイス(図示せず)との間に、更なる接続が確立されてもよい。
【0017】
例示的な実施態様において、プライマリスマートデバイス110は、音声通信クライアント112、状態クライアント114、及び補償クライアント116を備えていてもよく、エンタープライズサーバ、ラップトップコンピュータ、ノートブック、タブレットコンピュータ、ネットブックコンピュータ、パーソナルコンピュータ(PC:personal computer)、デスクトップコンピュータ、サーバ、パーソナルデジタルアシスタント(PDA:personal digital assistant)、回転電話、タッチトーン電話、スマートフォン、携帯電話、仮想デバイス、シンクライアント、モノのインターネット(IoT:Internet of Things)デバイス、又は他の計算デバイスとの間でデータを受信及び送信できる任意の他の電子デバイス若しくは計算システムであってもよい。プライマリスマートデバイス110は、単一のデバイスとして示されているが、他の実施態様において、プライマリスマートデバイス110は、一緒に動作するか又は独立して動作するクラスタ又は複数のコンピューティングデバイスで、モジュール方式等で構成されていてもよい。プライマリスマートデバイス110は、図3を参照してハードウェア実装として、図4を参照してクラウド実装の一部として、若しくは図5を参照して処理の為の機能抽象化層を利用するものとして、又はそれらを組み合わせたものとして、より詳細に記載される。
【0018】
1以上のセカンダリスマートデバイス140は、プライマリスマートデバイス110と実質的に類似していてもよい。従って、1以上のセカンダリスマートデバイス140は、プライマリスマートデバイス110の対応するクライアントと実質的に類似するところの、音声通信クライアント142、状態クライアント144、及び補償クライアント146を備えていてもよい。効率化の為に、プライマリスマートデバイス110及びそのコンポーネントの説明は、1以上のセカンダリスマートデバイス140及びそのコンポーネントに適用可能でありうる。従って、音声通信クライアント112の為の以下の説明は、音声通信クライアント142等にも適用されうる。上述されているように、プライマリスマートデバイス110は、該ユーザによって現在使用されているデバイスに関する見通しを提供し、一方、1以上のセカンダリスマートデバイス140は、該ユーザがアクセス可能である利用可能なデバイスであってもよい。しかしながら、1以上のセカンダリスマートデバイス140を備えていることは例示的に過ぎず、音声補償システム100はまた、1以上のセカンダリスマートデバイス140のいずれかを備えていること無しに、プライマリスマートデバイス110のみを備えていてもよいことに留意されたい。
【0019】
例示的な実施態様において、音声通信クライアント112は、クライアント-サーバ関係におけるクライアントとして機能してもよく、並びにプライマリスマートデバイス110のユーザがネットワーク108を介して更なるデバイスを介して更なるユーザとの通信を実行することを可能にすることができるソフトウェア、ハードウェア若しくはファームウェアベースのアプリケーション又はそれらの組み合わせであってもよい。実施態様において、状態クライアント114は、選択された更なるユーザの為の入力を受信し、並びに(例えば、更なるユーザが通信要求を受け入れた結果として)通信リンクを確立して、該ユーザと該更なるユーザとの間で音声通信を交換し、そして、該通信が終了したときに該通信リンクを解除する為の後続の動作を実行し、通信、例えば、ブルートゥース(Bluetooth)、2.4gHz及び5gHzインターネット、近距離通信、Z-Wave、Zigbee等を包含する上記の通信、を行う為に用いられるデータに関連付けられたデータ伝送及び交換の為の様々な有線接続プロトコル若しくは無線接続プロトコル又はそれらの組み合わせを利用してもよい。
【0020】
音声通信クライアント112は、通信を実行する為のユーザインタフェースを提供するように構成されていてもよい。例えば、該ユーザインタフェースは、アドレス帳を格納してもよく、又は該通信を確立する際に1人以上の更なるユーザを選択する為の入力機能を提供してもよい。別の例において、該ユーザインタフェースは、該ユーザが該通信を実行する為のパラメータ(例えば、音量制御)を選択しうるオプションを提供してもよい。音声通信クライアント112は、音声通信が関与する様々な異なる種類の通信を実行してもよい。例えば、音声通信クライアント112は、オーディオ機能を利用した電話通信を実行してもよい。別の例において、音声通信クライアント112は、ビデオ及びオーディオ機能を利用したビデオ通信を実行してもよい。
【0021】
音声通信クライアント112はまた、該例示的な実施態様の特徴を取り入れるように構成されていてもよい。例示的な実装において、音声通信クライアント112は、利用又は適用されうる補償手段のオプション又はアラートを提示する為に、更なるクライアント又はプログラムからの入力を受信するように構成されていてもよい。この例示的な実装に従うと、音声通信クライアント112は、ユーザインタフェース(例えば、オーバーレイ)を介して該ユーザに機能を提示してもよい。別の例示的な実施態様において、音声通信クライアント112は、該例示的な実施態様の特徴を予めプログラムされるように構成されていてもよい。従って、更なるクライアント又はプログラムから指示を受信することに応じて、音声通信クライアント112は、音声通信クライアント112のユーザインタフェースを介してオプション又はアラートを提示してもよい。
【0022】
例示的な実施態様において、状態クライアント114は、クライアント-サーバ関係においてクライアントとして機能してもよく、並びにプライマリスマートデバイス110によって経験されている状態、例えば、信号強度、利用可能な信号、周囲の雑音、音声入力解釈等を包含する上記の状態、を決定することができるソフトウェア、ハードウェア若しくはファームウェアベースのアプリケーション又はそれらの組み合わせであってもよく、並びに通信中、例えば、ブルートゥース(Bluetooth)、2.4gHz及び5gHzインターネット、近距離通信、Z-Wave、Zigbee等を包含する上記の通信中、に生じる又は生じると予測される補償の為に用いられるデータに関連付けられたデータ送信及び交換の為に様々な有線接続プロトコル若しくは無線接続プロトコル又はそれらの組み合わせを利用してもよい。
【0023】
状態クライアント114は、複数のセンサを利用してもよく、若しくはプライマリスマートデバイス110によって経験されている状態に関連する情報を決定した利用可能なコンポーネントからデータを受信してもよく、又はそれらの利用及び受信を行ってもよい。例えば、プライマリスマートデバイス110は、信号を送信若しくは受信又は送受信するように構成されたアンテナとともに、ネットワークカード又はチップを備えていてもよい。プライマリスマートデバイス110はまた、利用可能な信号の信号強度を測定することに関連する機能を備えていてもよい。状態クライアント114は、対応する信号を使用する際の相対的な品質を決定する為に解釈されうる信号強度に関連する情報を受信してもよい。別の例において、プライマリスマートデバイス110は、オーディオを受信し、そして、該オーディオを対応するオーディオデータに変換するように構成されたマイクロフォン又は他の音声入力デバイスを備えていてもよい。状態クライアント114は、オーディオデータを受信し、そして、周囲の雑音状態(例えば、背景雑音)、ユーザ経験(例えば、ユーザからの発話の解釈)等を解釈してもよい。更なる例において、状態クライアント114は、該ネットワークカード又はチップを利用して、該ユーザによって使用可能である(例えば、該ユーザの近接範囲内にある)セカンダリスマートデバイス140を決定してもよい。状態クライアント114は、セカンダリスマートデバイス140によって経験されている状態(例えば、プライマリスマートデバイス110について決定されたのと実質的に同様の状態)を決定する為に、セカンダリスマートデバイス140から情報を要求してもよい。更に別の例において、状態クライアント114は、対応する時間にユーザによって経験されることが予測される確からしい状態(probable conditions)を示す情報を受信してもよい。以下で更に詳細に説明されるように、状態クライアント114は、可能性の高い状態(例えば、ユーザが所与の日において所与の時間帯にコンサートに出席することが予定されている場合、それは、該ユーザが高周囲雑音(high ambient noise)を経験する可能性が高いという状態を示す)を推論する際に使用できる直接的若しくは間接的又は直接的且つ間接的な情報を示しうる種々の種類の情報(例えば、カレンダープログラム、プロファイリングサーバ130等)にアクセスを有しうる。
【0024】
例示的な実施態様において、補償クライアント116は、クライアント-サーバ関係におけるクライアントとして機能してもよく、並びにネットワーク108を介して現在経験されている状態の所定の組若しくは発生すると予測されている状態の所定の組又はそれらの組み合わせの状態の所定の組の下で利用する為の補償手段を決定することができるソフトウェア、ハードウェア若しくはファームウェアベースのアプリケーション又はそれらの組み合わせであってもよい。実施態様において、補償クライアント116は、いつ、どのように補償手段を利用するかを定義する為に、プロファイリングサーバ130によって決定されたルールの1組を利用して、通信中、例えば、ブルートゥース(Bluetooth)、2.4gHz及び5gHzインターネット、近距離無線通信、Z-Wave、Zigbee等を包含する上記の通信中、に生じる又は予測される問題を補償する為に用いられるデータに関連付けられたデータ伝送及び交換の為の様々な有線接続プロトコル若しくは無線接続プロトコル又はそれらの組み合わせを利用してもよい。
【0025】
補償クライアント116は、プライマリスマートデバイス110によって又はプライマリスマートデバイス110を利用するユーザによって経験されている又は予測される状態に基づいて、補償手段を適用するように構成されていてもよい。以下で更に詳細に説明されるように、補償クライアント116は、プライマリスマートデバイス110及びセカンダリスマートデバイス140を使用する際に、該ユーザの為に設定されるルールに基づいて行動方針を決定してもよい。補償クライアント116は、プライマリスマートデバイス110とセカンダリスマートデバイス140との間の決定、音声からテキストへの変換機能の利用、第1のネットワークから第2のネットワークへの利用可能なネットワークへの切り替え、改善された信号強度の為の複数のネットワークのレイヤー化等のうちの少なくとも1つを含む様々な異なる補償手段を利用してもよい。
【0026】
上述されているように、 音声補償システム100は、プライマリスマートデバイス110と、プライマリスマートデバイス110がユーザによって現在使用されており、ユーザに関連付けられた1以上のセカンダリスマートデバイス140とを備えていてもよい。後述されているように、該例示的な実施態様は、セカンダリスマートデバイス140のうちの1つが代わりに使用されることになる補償手段を利用してもよい。該ユーザがセカンダリスマートデバイス140のうちの1つを代わりに利用する場合、使用中のいずれのデバイスもプライマリスマートデバイス110に指定されていてもよい。従って、使用中のセカンダリスマートデバイス140がプライマリスマートデバイス110として指定され、並びに使用されなくなったプライマリスマートデバイス110がセカンダリスマートデバイス140として指定されてもよい。
【0027】
例示的な実施態様において、プロファイルリポジトリ120は、1以上のプロファイル122を備えていてもよく、並びにエンタープライズサーバ、ラップトップコンピュータ、ノートブック、タブレットコンピュータ、ネットブックコンピュータ、PC、デスクトップコンピュータ、サーバ、PDA、回転電話、タッチトーン電話、スマートフォン、携帯電話、仮想デバイス、シンクライアント、IoTデバイス、又は他の計算デバイスとデータを格納し、受信し及び送信することができる他の任意の電子デバイス又はコンピューティングシステムであってもよい。プロファイルリポジトリ120は単一のデバイスとして示されているが、他の実施態様において、プロファイルリポジトリ120は、一緒に動作するか又は独立して動作するクラスタ又は複数の電子デバイスで、モジュール方式等で構成されていてもよい。プロファイルリポジトリ120はまた、別個のコンポーネントとして示されているが、他の実施態様において、プロファイルリポジトリ120は、音声補償システム100の他のコンポーネントのうちの1以上と共に組み込まれていてもよい。例えば、プロファイルリポジトリ120は、プロファイリングサーバ130内に組み込まれていてもよい。従って、プロファイリングサーバ130によるプロファイルリポジトリ120へのアクセスは、ローカルに実行されてもよい。別の例において、プロファイルリポジトリ120に表されるプロファイル122は、プライマリスマートデバイス110内若しくはセカンダリスマートデバイス140内又はそれらの組み合わせ内に組み込まれていてもよい(例えば、プライマリスマートデバイス110及びセカンダリスマートデバイス140の各々は、これらのデバイスに関連付けられたユーザのプロファイル122を備えているプロファイルリポジトリ120を有する)。従って、プロファイルリポジトリ120へのアクセス、及び該ユーザに関連付けられたプロファイル122へのアクセスは、プライマリスマートデバイス110若しくはセカンダリスマートデバイス140又はそれらの組み合わせからの送信を通じて実行されてもよい。プロファイルリポジトリ120は、図3を参照してハードウェア実装として、図4を参照してクラウド実装の一部として、若しくは図5を参照して処理の為の機能抽象化層を利用するものとして、又はそれらを組み合わせたものとして、より詳細に記載される。
【0028】
例示的な実施態様において、プロファイル122のそれぞれは、プライマリスマートデバイス110及びセカンダリスマートデバイス140に関連付けられたユーザに関連付けられてもよい。プロファイル122は、通信中に生じる又は生じうる問題を補償する際に使用される後続の動作の為に使用されうる様々な種類の情報が入力されていてもよい。例えば、プロファイル122は、プライマリスマートデバイス110及びセカンダリスマートデバイス140の技術的情報を含んでいてもよい。該技術情報は、コンポーネント(例えば、マイクロフォン)及び該コンポーネントに関連付けられた設定(例えば、オーディオ入力を受信する為の感度)に関連付けられた情報を備えていてもよい。別の例において、プロファイル122は、ユーザが所与の時間にどこに位置しうるかを示す位置情報が取り込まれていてもよい。該位置情報は、直接入力、例えばカレンダーアプリケーション、に基づく、若しくは履歴データ或いは期待基準からの推論情報に基づく、又はそれらの組み合わせに基づいていてもよい。
【0029】
例示的な実施態様において、プロファイリングサーバ130は、識別プログラム132及びルールプログラム134を備えていてもよく、並びにクライアント112、114、116、142、144、146とのクライアント-サーバ関係においてサーバとして機能するとともに、プロファイルリポジトリ120と通信可能な関係にあってもよい。プロファイリングサーバ130は、エンタープライズサーバ、ラップトップコンピュータ、ノートブック、タブレットコンピュータ、ネットブックコンピュータ、PC、デスクトップコンピュータ、サーバ、PDA、回転電話、タッチトーン電話、スマートフォン、携帯電話、仮想デバイス、シンクライアント、IoTデバイス、又は他の計算デバイスとの間でデータを受信及び送信できる任意の他の電子デバイス若しくは計算システムであってもよい。プロファイリングサーバ130は、単一のデバイスとして示されているが、他の実施態様において、プロファイリングサーバ130は、一緒に動作するか又は独立して動作するクラスタ又は複数のコンピューティングデバイスで構成されていてもよい。プロファイリングサーバ130はまた、別個のコンポーネントとして示されているが、他の実施態様において、プロファイリングサーバ130の動作及び特徴は、音声補償システム100の他のコンポーネントのうちの1つ又は複数と共に組み込まれていてもよい。例えば、プロファイリングサーバ130の動作及び機能は、プライマリスマートデバイス110若しくはセカンダリスマートデバイス140又はそれらの組み合わせに組み込まれていてもよい。プロファイリングサーバ130は、図3を参照してハードウェア実装として、図4を参照してクラウド実装の一部として、又は図5を参照して処理の為の機能抽象化層を利用するものとして、又はそれらを組み合わせたものとして、より詳細に記載される。
【0030】
最初に、音声補償システム100のコンポーネント間のデータの交換は、該コンポーネントの構成に基づく様々な様式で実行されてもよい。選択されたコンポーネントの上記説明は、該コンポーネントが別個のコンポーネントと相互作用しうることを意味しうるクライアント-サーバ関係が確立されうることを示す。それ故に、例示的な実装に従うと、プロファイリングサーバ130と共にプライマリスマートデバイス110及びセカンダリスマートデバイス140は、データを交換する為にネットワーク108を利用する別々のコンポーネントであってもよい。該例示的な実施態様の特徴を実行する際に、プライマリスマートデバイス110は、プロファイリングサーバ130とデータを交換し、そして補償手段を決定し、そして適用してもよい。該例示的な実施態様は更に、プライマリスマートデバイス110に組み込まれるクライアント及びプロファイリングサーバ130に組み込まれるプログラムに関して、異なる構成を利用してもよい。例えば、プライマリスマートデバイス110は、音声通信クライアント112及び状態クライアント114を備えていてもよい。しかし、補償クライアント116は、プライマリスマートデバイス110上の対応するクライアントが、ネットワーク108を介して補償手段を適用する為の指示をプロファイリングサーバ130から受信しうるように、プロファイリングサーバ130に含まれてもよい。別の例示的な実装に従うと、上述されているように、プロファイリングサーバ130及びプロファイルリポジトリ120の動作は、プライマリスマートデバイス110に組み込まれていてもよい。このように、例示的な実施態様の特徴は、音声補償システム100の単一のコンポーネント(例えば、プライマリスマートデバイス110)内に組み込まれていてもよい。全ての動作を実行するプライマリスマートデバイス110は、追加のリソース及び処理要件を必要とする場合があるが、生じうる問題は、別のプロファイリングサーバ130との実施態様における接続が利用できない信号強度に関連しうる。従って、プライマリスマートデバイス110内で或る組み込まれた機構は、そのようなシナリオに対処しうる。例示の目的の為に、該例示的な実施態様は、図1の音声補償システム100内に例示される構成において説明される。従って、プロファイリングサーバ130は、いつ、どのように補償手段を適用するかを定義するルールを決定してもよい。プライマリスマートデバイス110がネットワーク108を介してプロファイリングサーバ130と接続を有する時間中に、プライマリスマートデバイス110は、ルールを受信しうる。該補償手段をいつ、どのように適用するかを決定することに関与する後続の動作は、プライマリスマートデバイス110によって実行されてもよい。
【0031】
例示的な実施態様において、識別プログラム132は、プライマリスマートデバイス110及び1以上のセカンダリスマートデバイス140に関連付けられたユーザを識別するように構成された、ソフトウェア、ハードウェア若しくはファームウェアアプリケーション又はそれらの組み合わせであってもよい。従って、ユーザ、プライマリスマートデバイス110、及びセカンダリスマートデバイス140の為に把握されている情報は、該ユーザについての対応するプロファイル122において関連付けられていてもよい。
【0032】
識別プログラム132は更に、生じうるイベントを識別するように構成されていてもよい。上述されているように、該例示的な実施態様は、潜在的に生じうるイベント及び夫々のイベントに関連付けられた対応する状態に基づいて、補償手段を事前対応的に利用するように構成されていてもよい。例えば、識別プログラム132は、該ユーザが或る時間にどこにいうるかを示しうる、ユーザのスケジュール情報を受信してもよい。別の例において、識別プログラム132は、位置情報を受信し、並びに該ユーザの位置を、該位置で生じうるイベント又は該位置の一般的な雰囲気に関連させてもよい。識別プログラム132はまた、位置のクラスタリング又は人口密度を利用して、該位置の一般的な雰囲気を決定してもよい。これらの将来のイベントを識別する際に、識別プログラム132は、この情報で該ユーザに関連付けられたプロファイル122を更新してもよい。
【0033】
例示的な実施態様において、ルールプログラム134は、補償手段を利用する際に使用されるべきルールを生成するように構成されたソフトウェア、ハードウェア若しくはファームウェアアプリケーション又はそれらの組み合わせであってもよい。該ルールは、補償手段と、存在する状態若しくは存在すると予測される状態又はそれらの組み合わせの状態との間の相関関係を定義してもよい。該ルールは更に、該補償手段を効果的にする為の準備における事前対応的な動作を含む補償手段がどのように実行されるべきかを設定してもよい。該通信を行う為の改善された信号を提供する為に、ルールプログラム134が制定しうる補償手段は、プライマリスマートデバイス110から複数のセカンダリスマートデバイス140のうちの1つへの切り替え、音声通信のプライマリスマートデバイス110のユーザが読むことができるテキストへの変換、第1のネットワークから、第2のネットワークが該通信を行う為に十分な信号を提供するところの該第2のネットワークへの関連付け、又は複数のネットワークのレイヤー化を含みうる。
【0034】
ルールプログラム134は、各補償手段の為に、対応する様式で事前対応的な動作を実行してもよい。例えば、複数のセカンダリスマートデバイス140のうちの1つへの切り替えの場合に、ルールプログラム134は、セカンダリスマートデバイス140がプライマリスマートデバイス110になる(例えば、該ユーザがデバイスにおいて使用を切り替える)ときにシームレスに移行する為にセカンダリスマートデバイス140上にコンタクトが予めダイヤルされるルールを定義してもよい。別の例において、音声通信のテキストへの変換の場合に、ルールプログラム134は、音声通信クライアント112の為のユーザインタフェースが、該音声通信が受信される場合にリアルタイムでテキストを表示するビューを導入するルールを定義してもよい。更なる例において、第2のネットワークへの関連付け又は複数のネットワークのレイヤー化の場合に、ルールプログラム134は、新規又は複数の接続が確立されることに関与するバックグラウンド動作を実行してもよい。
【0035】
ルールプログラム134は更に、補償手段と、経験している又は経験しそうな状態との間の相関関係でルールを定義してもよい。例えば、複数のセカンダリスマートデバイス140のうちの1つへの切り替えの場合に、ルールプログラム134は、セカンダリスマートデバイス140が利用可能であり並びに該通信を実行するネットワークへの信号強度がプライマリスマートデバイス140のネットワークへの信号よりも良好な信号強度を有する場合に該状態を定義するルールを生成してもよい。別の例において、音声通信のテキストへの変換の場合に、ルールプログラム134は、周囲の雑音が該通信において該更なるユーザによって発話された音声通信を適切に解読することができない場合において、該状態を定義するルールを生成しうる。更なる例において、第2のネットワークへの関連付けの場合に、ルールプログラム134は、更なるネットワークがセルラーネットワーク、WiFiネットワーク、ホットスポット等であってもよい通信を実行する為に利用されうる十分な信号強度を有するプライマリスマートデバイス110に利用可能である場合において、該状態を定義するルールを生成しうる。更に別の例において、複数のネットワークのレイヤー化の為に、ルールプログラム134は、複数のネットワークが検出されたが、該ネットワークが個々のレベルで不十分な信号強度を有する場合において、該状態を定義するルールを生成しうる。該ルールは、レイヤー化されたネットワークが該通信を実行する為に十分な信号強度を有するように、どのネットワークがレイヤー化されるべきであるかを示しうる。該レイヤー化は、ベース信号の上に搬送波(carrier wave)をレイヤー化するのと実質的に同様の様式で行われてもよい。
【0036】
ルールプログラム134はまた、識別プログラム132からの情報を、ルール及び対応する補償手段に組み込みうる。例えば、ルールプログラム134は、該ユーザが出席することを予定している将来のイベントが、該ユーザが更なるユーザからの入来する音声通信を適切に解読することを妨げる可能性が高い周囲雑音を有する場合のルールを定義してもよい。該ルールは、音声からテキストへの変換の為の補償手段が準備されることを示してもよい。別の例において、ルールプログラム134は、該ユーザが計画されたルート又は可能性の高いルートに沿って起点から目的地まで絶えず位置を変更しうる場合のルールを定義してもよい。該ルールは、更なるネットワークへの関連付けの為の補償手段が準備されるべきであることを示してもよく、ここで、該ルールは、該位置に基づいて該通信を実行する為に、十分な信号強度を提供しうるところの更なるネットワークの可能性を設定してもよい。ルールプログラム134は、選択された位置で利用可能である様々なネットワークと、プライマリスマートデバイス110と実質的に同様の技術特性を有するデバイスによって経験される対応する信号強度とを示す様々なデータベース又はクラウドソースされた情報へのアクセスを有していてもよい。
【0037】
プロファイリングサーバ130は、様々なタイミングでこの情報を用いてプロファイル122を更新してもよい。例えば、新しい予測情報が利用可能になる場合に(例えば、カレンダーアプリケーションに対する更新)、ルールプログラム134は、新しい予測情報及び以前に決定されたルールの為の何らかの対応する変更に基づいて、対応するルールを準備してもよい。別の例において、プロファイリングサーバ130は、プライマリスマートデバイス110若しくはセカンダリスマートデバイス140又はそれらの組み合わせがプロファイリングサーバ130とデータを交換することができる間、プロファイル122を連続的に又は予め定められた時間間隔で更新してもよい。
【0038】
プロファイリングサーバ130はまた、該ユーザに関連付けられたプロファイル122の最新の形態を、プライマリスマートデバイス110若しくはセカンダリスマートデバイス140又はそれらの組み合わせに提供するように構成されていてもよい。この様式において、補償クライアント116は、いつ、どのように補償手段を利用するかを決定するかに基づく適切なルールを有していてもよい。プロファイル122を武器に、補償クライアント116は、(例えば、状態クライアント114に従って)経験されている状態又は経験しそうな状態を利用し並びに該状態の為の適切な補償手段を利用してもよい。
【0039】
補償クライアント116は、手動入力を必要とすること無しに、例示的な実施態様の特徴が該ユーザに提供されるところのバックグラウンド動作として実行されてもよいことに留意されたい。従って、補償クライアント116に提供される該ルールは、該状態が示すように作用されてもよく、該ユーザに対する警告が必要とされる何らかの変化が提供されてもよく、一方で、該ユーザの注意を必要としない他の変化が省略されてもよい。例えば、補償クライアント116は、音声通信がテキストに変換されることをユーザに警告して、テキストを読むことができるように、プライマリスマートデバイス110が保持されている位置を変更する為にユーザを準備させてもよい。別の例において、補償クライアント116は、通信を実行又は継続する為に、新しいネットワークへの関連付けが作成されるであろうことを該ユーザに警告してもよい。そのような機能は、特に、新しいネットワークがそれに関連付けられたコスト(例えば、金銭的)を有する場合、該ユーザが新しいネットワークの使用を受け入れることを要求してもよい。更なる例において、補償クライアント116は、新しいネットワークへの関連付けが、過去の時点でユーザによって使用されることが知られている場合に、又はプライマリスマートデバイス110が以前に関連付けたネットワークである場合に、該ユーザに対する警告を省略してもよい。しかしながら、例示的な実施態様の特徴の自動化されたバックグラウンドアプローチの使用は、例示的なものに過ぎない。別の例示的な実装において、補償クライアント116は、選択された動作が手動入力を必要とする半自動化アプローチにおいて利用されうる。例えば、補償クライアント116は、該状態に基づいて、使用されるべき補償手段に関する推奨事項を生成してもよい。従って、該ユーザは、補償手段を受け入れ、並びに補償クライアント116は、後続の対応する動作を進めてもよいし、又は該補償手段を拒否して、そして、現在のパラメータの下で通信を継続してもよい。この様式において、該補償手段を利用又は回避する際に、手動オーバーライドオプションが該ユーザに提示されてもよい。
【0040】
上述されているように、該例示的な実施態様は、通信の為に生じた又は生じる可能性のある問題に対処する為に、様々な補償手段を利用しうる。該補償手段は、接続性アプローチ(connectivity approaches)、デバイスアプローチ、又はインタフェースアプローチを備えていてもよい。音声補償システム100は、音質を高める為に、夫々のネットワークへの信号強度が両方とも弱い場合(例えば、個々のネットワークを使用して通信を実行する為の許容閾値以下)、セルラー及びVoIPの両方をレイヤー化する方法を提供してもよい。音声補償システム100はまた、個々のデバイスで受信された夫々の信号強度を検査した後に発生するように、該ユーザに関連付けられたデバイス間の切り替えを提供してもよい。該切り替えはまた、ユーザの好み、例えば、該ユーザに関連付けられた様々なデバイスを使用する為の好みの順序(例えば、通信の場合に、スマートフォンがタブレットよりも好ましい)、に基づいて変更されていてもよい。弱い信号がレイヤー化後もなお持続する場合に、若しくは周囲の雑音状態が該通信における更なるユーザからの発話を聞くことを妨げる場合に、又はそれらの組み合わせの場合に、音声補償システム100は、低帯域幅環境における通信の為の追加方法として、リアルタイム音声「フリーフロー」(free flowing)テキスト表示フォーマットで、該更なるユーザからの音声をテキスト形式に書き起こしてもよい。
【0041】
例示的な実装において、音声補償システム100は、補償手段がいつ適用されうるかを予測しうる。例えば、ユーザは、コンサートに対するチケットを購入してもよい。別の例において、音声補償システム100の予測システム(例えば、識別プログラム132)は、オンラインイベントスケジュールの為に主要な会場をスキャンし、そして、それらのイベントを予測パターンモデルに組み込んでもよい。更なる例において、帯域幅のニーズは、過去のデータに基づいて予想されていてもよい。更に別の例において、自発的なイベント(例えば、抗議活動)は、イベントに参加するユーザからの位置データの集計に基づいて動的に対処されていてもよい。これらの入力を使用して、音声補償システム100は、補償手段、例えばレイヤー化技術、が効果を発揮するように予測若しくは準備又は予測且つ準備してもよく、並びにベンダー又はITプロバイダは、ネットワーク飽和を防ぐ為に、より高いレベルのデータ消費に備えてもよい。これは更に、人工知能又はルールプログラム134がネットワーク混雑を監視しうるところのリアルタイム密度マップにおいて可視化されてもよい。
【0042】
該例示的な実装に従うと、(例えば、状態クライアント114内に具現化されるような)オーディオエンジン若しくは信号監視エンジン又はそれらの組み合わせは、クリアでない音声品質を結果として生じるネットワーク内に問題又は飽和があることを識別しうる。補償クライアント116は、ネットワーク信号強度が比較的良好であるユーザの別のデバイス(例えば、プライマリスマートデバイス110となるセカンダリスマートデバイス140のうちの1つ)に通信がシームレスに変更されるところの補償手段を適用してもよい。
【0043】
該例示的な実装に従うと、(例えば、状態クライアント114内に具現化されるような)ノイズエンジンは、周辺又は周囲の雑音が、該通信の内容をユーザが聞くことが可能でないことを識別してもよい。補償クライアント116は、該ユーザの為の通信のモードが音声からテキストに変更されるという補償手段を適用してもよく、そして、該ユーザがテキストの形態で同じものを返信しうる。状態クライアント114は、ユーザ嗜好及びプライバシー嗜好に基づいて、劣化の指標(IoD:Indicators of Degradation)を更に聴取してもよい。該IoDは、周囲雑音があまりにも高すぎるときを識別する為に、又は一般的に、該ユーザが該更なるユーザからの音声通信を理解することができないときを示す為に、該ユーザからの言語キューを定義してもよい。例えば、該IoDは、音声からテキストへの変換を介した通信を改善する為に使用される、「聞こえません」(I can’t hear you)、「何と言いましたか」(What did you say?)、「声を出してください」(Please speak up)等を含みうる。この情報はまた、その文脈の共有を通じて、近くにいる他のユーザの通信品質を補完して、該他のユーザの為の通信性能を向上させる為に使用されうる。
【0044】
該例示的な実装に従うと、電話ネットワーク信号(例えば第1のネットワーク、例えばセルラーネットワーク)が通信を継続する為に十分な強さでない又は十分に満足できない場合、補償クライアント116は、ルールを利用して、通信モード又は使用中のネットワークが、プライマリスマートデバイス110の現在の位置で利用できる更なるネットワーク、例えば有料WiFi、に変更してもよいか、又はセキュア化されていない料金(unsecured fee)又は無料WiFiが接続されてもよいかを判断する為に費用対効果解析を実行してもよい。例示的な実施態様の特徴において、該ネットワークが競合するエンティティ(例えば、競合する通信プロバイダを有するマーケットプレイス)に属しうる事象において、該例示的な実施態様は、ネットワーク間の利用可能な帯域幅から「ピギーバック」(piggy-back)する為に別のキャリアとの通信のレイヤー化を可能にしてもよい。例えば、第1のネットワーク回線が帯域幅を制限されている場合に、第2のネットワークは、競合するネットワーク間の負荷分散を通じて、顧客ベースにより良いサービスを提供する為に利用可能な帯域幅を共有していてもよい。
【0045】
該例示的な実装に従うと、補償クライアント116は、ルールが音声通信中のネットワーク停止を予測しうるように、異なるユーザからの履歴データ解析に基づく該ルールを使用してもよい。従って、現在の通信の優先順位に基づいて、補償クライアント116は、シームレス通信を確保する為に、並列ネットワークを事前対応的に作成してもよい。例えば、架電(dialing)が事前に実行されてもよい、電話会議に他のデバイスと事前対応的に参加してもよい、等である。
【0046】
該例示的な実装に従うと、(例えば、状態クライアント114内に具現化されるような)信号監視エンジンは、中断されない通信セッションの最小閾値レベルを満たさない信号強度を提供するだけの上記のアプローチを決定してもよい。従って、補償クライアント116は、利用可能なネットワークから受信される信号強度が最小閾値レベル未満である結果として、複数のネットワーク(例えば、セルラー及びVoIP)のレイヤー化を実行してもよい。
【0047】
以下は、例示的な実施態様の特徴が提供されうる例示的なプロセスを提供する。以下は、図1の音声補償システム100に関して説明され、並びに、選択されたコンポーネントの為に更なる詳細を提供してもよく又は上記の説明を拡張してもよい。以下はまた、複数のセカンダリスマートデバイス140が存在する実施態様であってもよい。以下はまた、プロファイリングサーバ130の動作が、プライマリスマートデバイス110に組み込まれた構成であってもよい。従って、識別プログラム132及びルールプログラム134の動作は、プライマリスマートデバイス110によって実行されてもよい。
【0048】
プライマリスマートデバイス110及びセカンダリスマートデバイス140は、夫々のデバイスの状態クライアント114及び144を通じて測定された電話ネットワーク信号強度を互いに共有していてもよい。プライマリスマートデバイス110及びセカンダリスマートデバイス140は、例えば、該デバイスのうちのどちらが通信を実行する為に比較的に良いネットワーク強度を有するかを決定するところの補償クライアント116に信号強度を提供してもよい。プライマリスマートデバイス110若しくはセカンダリスマートデバイス140又はそれらの組み合わせはまた、プライマリスマートデバイス110の近傍の更なるネットワーク、例えばWiFiネットワーク、の利用可能性を確認するとともに、これらの更なるネットワークに関するコスト及びソーシャルネットワークフィードバックを収集してもよい。これらのプロセスは、通信の準備、通信の開始時若しくは通信が実行されている間又はそれらの組み合わせにおいて発生してもよい。
【0049】
音声通信セッション(例えば、電話通信)の間、プライマリスマートデバイス110内にインストールされた補償クライアント116は、通信セッションの更なるユーザからの入来する音声通信の受信したオーディオ品質を分析してもよく、該オーディオ品質が特定の閾値制限を満たすかを検証してもよい。状態クライアント114はまた、何らかの外部雑音(例えば、周囲の雑音状態)を追跡してもよく、並びに該ユーザが話されたコンテント(例えば、該更なるユーザからの発話)を理解することに困難性を有するかを検証してもよい。補償クライアント116は、履歴データ(例えば、履歴データ解析プログラム(図示せず)によって解析されたもの)を利用して、ネットワーク強度低下のパターンを識別してもよい。この情報に基づいて、補償クライアント116は、そのような補償手段が使用されるべきである場合に、シームレスな通信を確保する為に、事前対応的な様式で通信の並列モードを開始してもよい。
【0050】
補償クライアント116はまた、プロファイリングサーバ130による決定からプロファイル122内に格納されうるところのルールを利用してもよい。プロファイル122は、何らかの通信問題を解析し及び対応する際に支援する為に作成されるところの動的プロファイルであってもよい。プロファイル122は、通信ニーズを事前対応的に解析する際に多くの要因を考慮してもよい。この動作を行う際に、プロファイリングサーバ130は、識別プログラム132及びルールプログラム134を利用してもよい。補償クライアント116と連携する識別プログラム132は、状況及び状態の解析を実行するように構成されていてもよい。識別プログラム132は、多くの要因に基づいて通信を追跡し且つ記録してもよい。例えば、該要因は、位置プロファイルが、周囲の地形の性質、エリアの地理、雑音の履歴、ジッタ(jitter)、更なるネットワークの利用可能性等を考慮しうるところの位置を含んでいてもよい。別の例において、該要因は、活動、例えば、事象の種類、予期されるユーザの数及び種類、ユーザの人口統計等、を含んでいてもよい。更なる例において、該要因は、デバイスの種類及び数、呼(call)の種類(例えば、ビジネス、個人等)、データ消費(例えば、ビデオ、オーディオ、画像等)、ハンドオーバー能力(handover ability)、呼の設定、通信に対する当事者等を包含する考慮した通信を備えていてもよい。更に別の例において、該要因は、以前のデータを含む履歴及び共有された情報、位置及び通信に関する経験についてのユーザからの投票等を含んでいてもよい。ルールプログラム134は、通信問題の種類に基づいてアクションの1組を事前対応的に準備しうるところのルールを生成するように構成された決定ベースのエンジンであってもよい。ルールプログラム134は、様々な要因、例えば、個々の通話品質、全体的なネットワーク状況及び飽和係数等、を比較することによって、通信ニーズに動的に対応するように訓練されていてもよい。ルールプログラム134は、該補償手段の為の様々な種類の動作の為のルールを生成してもよい。該補償手段は、通話に影響を与えること無しに、通話セッションの切り替え、該通信を完了する為の推奨されたチャネルに関する該ユーザの為の警告、第1のネットワーク(例えば、セルラー)から第2のネットワーク(例えば、VoIP)への通信のホップ、ネットワークの種類(例えば、WiFi)を通じたエリア内通話の完了、スピーチからテキストモードへの変換等を備えていてもよい。上記プロセスの例示的な使用において、該ユーザは、同じエリア又は建物内に位置する更なるユーザを共に呼び出したいと思うかもしれない。該通信セッションは、識別プログラム132が2つの当事者、位置、WiFiの利用可能性等を識別することによって完了してもよく、一方、ルールプログラム134は、補償クライアント116がセルラーネットワークからWiFiへの通信の切り替えを許可するところのルールに従うようにWiFiの利用可能性を認識できるようになってもよい。
【0051】
通信が進行中である場合、状態クライアント114は、入来する音声通信の品質を測定してもよい。補償クライアント116は、現在の通信の為に適切なスイッチングモードを分析してもよく、並びにシームレスな通信を保証する為に、並列ネットワーク接続を事前対応的に作成してもよい。その上、利用可能な通信モード(例えば、セルラー及びVoIP)の信号強度が相対的に弱い(例えば、該通信を実行する為の十分な閾値未満)場合に、補償クライアント116は、セルラー信号をVoIP信号の上にレイヤー化するか又はその逆に、該ユーザがシームレスに該通信に従事する為の十分な閾値を満たしうる強い信号強度を結合してもよい。
【0052】
図2は、例示的な実施態様に従う、予期されるオーディオ通信問題の為に予測的に補償する際の、音声補償システム100のスマートデバイス110の動作を示す方法の例示的なフローチャート図を図示する。方法200は、通信が音声通信クライアント112を介して行われている間又は行われるであろう間に、状態クライアント114、補償クライアント116、識別プログラム132、及びルールプログラム134によって行われるところの動作に関連しうる。従って、方法200は、プロファイリングサーバ130の動作が、ユーザによって使用されているプライマリスマートデバイス110内に組み込まれ、一方、複数のセカンダリスマートデバイス140がまた該ユーザによって使用可能であるところの例示的な実施態様に関して記載されている。方法200は、プライマリスマートデバイス110の観点で記載されるであろう。
【0053】
プライマリスマートデバイス110及びセカンダリスマートデバイス140は、ネットワークの信号強度を測定しうる(工程202)。例えば、該ネットワークは、電話通信が実行されうるセルラーネットワークであってもよい。しかしながら、該セルラーネットワークの使用は例示的なものに過ぎない。別の例示的な実施態様において、該ネットワークは、WiFiネットワーク、又は音声通信が実行されてもよい任意の他の種類のネットワークであってもよい。プライマリスマートデバイス110及びセカンダリスマートデバイス140は、後続の検討の為に利用可能でありうる他のネットワークに対する信号強度を測定してもよい。
【0054】
プライマリスマートデバイス110は、該ユーザが複数のセカンダリスマートデバイス140のうちの少なくとも1つにアクセスを有するかを判断しうる(判断204)。上述されているように、該ユーザは、複数のデバイスに関連付けられていてもよく、並びにプライマリスマートデバイス110、及び複数のセカンダリスマートデバイス140のうちの少なくとも1つをユーザ身辺に有していてもよい。従って、該ユーザがプライマリスマートデバイス110、及び複数のセカンダリスマートデバイス140のうちの少なくとも1つを有する結果(判断204、「はい」の分岐)、プライマリスマートデバイス110は、該ユーザに関連付けられた複数のデバイスのうちのどのデバイスが比較的良好な信号強度を有するか(すなわち、どのデバイスが該ネットワークに対する最高の信号強度を有するか)を決定しうる(工程206)。プライマリスマートデバイス110は、どのデバイスが通信の為に使用されるかに関する指示を該ユーザに送信しうる(工程208)。方法200は、更なる動作、例えば、該決定されたデバイスが使用されるか又は該ユーザが現在使用中のプライマリスマートデバイス110を利用することを続けるかに対する入力を、該ユーザから受信する動作、を組み込んでもよい。
【0055】
プライマリスマートデバイス110のみが利用可能である場合(判断204、「いいえ」の分岐)、又はユーザが、プライマリスマートデバイス110及び複数のセカンダリスマートデバイスのうちプライマリスマートデバイス110を選択した場合、プライマリスマートデバイス110は、その現在及び予測される状態並びに該ユーザの為の状態を判断しうる(工程210)。例えば、該状態は、夫々のネットワークからの利用可能な信号、対応する信号強度、周囲の雑音状態、位置情報、イベント情報等に関連してもよい。プライマリスマートデバイス110は、通信が実行されるべきであるときに備えて、プライマリスマートデバイス110の状態及び該ユーザの状態を監視し続けてもよい。
【0056】
その後の時間で、該ユーザは、プライマリスマートデバイス110がそのようなアクションが実行されているかどうかを判断しうるように、通信を実行することを選択しうる(判断212)。通信が実行されていない場合(判断212、「いいえ」の分岐)、プライマリスマートデバイス110は、該状態を監視することを続ける。通信機能(例えば、音声通信クライアント112を介して)が通信を実行する為に使用された結果として(判断212、「はい」の分岐)、プライマリスマートデバイス110は、補償手段を利用する際に決定されるところのルールに基づいて複数の動作を実行しうる。例えば、状態の1組がユーザ若しくはプライマリスマートデバイス110若しくはそれらの組み合わせに存在すると判断することに応じて補償措置が講じられることができるように、該ルールは、識別プログラム132及びルールプログラム134によって決定されうる。
【0057】
プライマリスマートデバイス110は、該状態が、該ユーザが入来する音声通信を理解することを妨げる周辺(surrounding)又は周囲(ambient)の雑音状態を含むかを判断しうる(判断214)。従って、この判断は、該通信中に生じうる。周囲の雑音状態は接続性の考慮から独立していてもよく、プライマリスマートデバイス110は、該通信中のいつでもこの動作を実行してもよく、並びにIoDを更に利用して、該ユーザが更なるユーザを理解する際に困難性を有するか判断してもよい。周囲の雑音状態が存在する結果として(判断214、「はい」の分岐)、プライマリスマートデバイス110は、該ユーザが、更なるユーザからの音声通信を読みうるように、音声がテキストに変換される補償手段を利用しうる(工程216)。該周囲の雑音状態がまた該更なるユーザが該ユーザを理解することを妨げる場合等に、プライマリスマートデバイス110はまた、該ユーザからの入力音声通信を変換して、該更なるユーザに転送されるべきテキストに変換しうる。
【0058】
周囲の雑音状態が許容範囲内である結果(判断214、「いいえ」の分岐)として、プライマリスマートデバイス110は、該通信を実行する為に十分な信号強度を提供する更なるネットワークが利用可能であるかを判断しうる(判断218)。この動作を実行する際に、プライマリスマートデバイス110は、第1のネットワークに対する現在の信号強度が通信を実行する為に十分でなく、従って該ユーザは満足のいくユーザ経験を提供されると判断したかもしれない。従って、プライマリスマートデバイス110は、該通信を実行する際に使用されうる更なるネットワーク、例えば、WiFiネットワーク又は非セキュアネットワーク、を特定しうる。該第1のネットワークに対する該信号強度は貧弱であるが、該第2のネットワークに対する該信号強度は良好である(判断218、「はい」の分岐)場合の結果として、プライマリスマートデバイス110は、該通信を行う為にプライマリスマートデバイス110が第2のネットワークに関連付けられるところの補償手段を利用しうる(工程220)。
【0059】
該更なるネットワークがまた貧弱である信号強度を有する結果(判断218、「いいえ」の分岐)として、プライマリスマートデバイス110は、全体的な信号強度を強化して該通信を実行する為にネットワークがレイヤー化されうる補償手段を利用しうる(工程222)。そのようなシナリオにおいて、該第1のネットワークに対する該信号強度及び該第2のネットワークに対する該信号強度は貧弱であるかもしれないが、該レイヤー化は、該通信を実行する為の最小閾値を満たす可能性のある全体的な信号強度を結果として生じうる。例えば、プライマリスマートデバイス110は、WiFiネットワーク上に該セルラーネットワークをレイヤー化してもよく、又はその逆であってもよい。
【0060】
補償手段を利用する上述されたプロセスは、例示的なものに過ぎない。例えば、該補償手段を使用する為の考慮事項の順序は、例示の為に示されているに過ぎない。既に述べられているように、音声をテキストに変換する為の補償手段は、信号強度の考慮事項から独立していてもよい。従って、該例示的な実施態様は、優先順位に従って、又は互いに独立した個別ベースで、又は同時進行ベースで等の順序付けられたリストとして各補償手段を考慮してもよい。例示的な実装に従うと、プライマリスマートデバイス110は、レイヤー化補償手段を利用し、並びに同時に他の補償手段を追加的に考慮してもよい。例えば、プライマリスマートデバイス110は、WiFiネットワーク上にセルラーネットワークをレイヤー化することを選択してもよく、並びにまた、音声からテキストへの補償手段を利用してもよい。
【0061】
該例示的な実施態様は、該通信を成功裡に実行するシームレスな方法が該ユーザに提供されるように、通信の為に存在しうる又は通信の為に既に存在する問題に対処するメカニズムを提供するように構成される。該例示的な実施態様は、予期される又は経験されている状態に基づいて、問題を克服しうる補償手段を利用してもよい。該補償手段は、ネットワークの為の信号強度が最小閾値を個別に満たさない可能性があるところの通信を実行する為に十分である信号強度を生成する為のネットワークのレイヤー化を含みうる。該補償手段は更に、音声からテキストへの変換メカニズム、更なるネットワークメカニズムへの切り替え、及び1以上のネットワークに対して比較的良好な信号強度を有しうる更なるデバイスの選択を含みうる。
【0062】
図3は、例示的な実施態様に従う、図1の音声補償システム100内のデバイスのブロック図を図示する。図3は、1つの実装の例示のみを提供し、異なる実施態様が実装されうるところの環境に関していかなる制限も示唆しないことが理解されるべきである。図示されている環境に対する多くの変更がなされうる。
【0063】
本明細書において使用されるデバイスは、1以上のプロセッサ02、1以上のコンピュータ可読RAM 04、1以上のコンピュータ可読ROM 06、1以上のコンピュータ可読記憶媒体08、デバイスドライバ12、読み取り/書き込みドライブ又はインタフェース14、ネットワークアダプタ又はインタフェース16、を備えていてもよく、それらの全てが通信ファブリック18上で相互接続される。通信ファブリック18は、プロセッサ(例えば、マイクロプロセッサ、通信及びネットワークプロセッサ)、システムメモリ、周辺デバイス、及びシステム内の他の任意のハードウェアコンポーネントの間でデータ若しくは制御情報又はそれらの組み合わせを渡す為に設計された任意のアーキテクチャで実装されうる。
【0064】
1以上のオペレーティングシステム10及び1以上のアプリケーションプログラム11が、夫々のRAM 04(典型的にはキャッシュメモリを備えている)の1以上を介して1以上のプロセッサ02によって実行する為に該コンピュータ可読記憶媒体08上に格納される。図示されている実施態様において、該コンピュータ可読記憶媒体08の各々は、内蔵ハードドライブの磁気ディスク記憶装置、CD-ROM、DVD、メモリスティック、磁気テープ、磁気ディスク、光ディスク、半導体記憶装置(例えば、RAM、ROM、EPROM、フラッシュメモリ)、又はコンピュータプログラム及びデジタル情報を格納することができる他の任意のコンピュータ可読有形記憶デバイスでありうる。
【0065】
本明細書において使用されるデバイスはまた、1以上のポータブルコンピュータ可読記憶媒体26から読み出し、及びそれに書き込む為のR/Wドライブ又はインタフェース14を備えていてもよい。該デバイス上のアプリケーションプログラム11は、1以上のポータブルコンピュータ可読記憶媒体26上に格納されてもよく、夫々のR/Wドライブ又はインタフェース14を介して読み出され、そして、夫々のコンピュータ可読記憶媒体08内にロードされてもよい。
【0066】
本明細書において使用されるデバイスはまた、ネットワークアダプタ又はインタフェース16、例えば、TCP/IPアダプタカード又は無線通信アダプタ(例えば、OFDMA技術を使用する4G無線通信アダプタ)、を備えていてもよい。該コンピューティングデバイス上のアプリケーションプログラム11は、ネットワーク(例えば、インターネット、ローカルエリアネットワーク若しくは他のワイドエリアネットワーク又は無線ネットワーク)及びネットワークアダプタ又はインタフェース16を介して、外部のコンピュータ又は外部記憶デバイスから該コンピューティングデバイスにダウンロードされてもよい。ネットワークアダプタ又はインタフェース16から、該プログラムは、コンピュータ可読記憶媒体08上にロードされてもよい。該ネットワークは、銅線、光ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ若しくはエッジサーバ又はそれらの組み合わせから構成されていてもよい。
【0067】
本明細書において使用されるデバイスはまた、ディスプレイスクリーン20、キーボード又はキーパッド22、及びコンピュータマウス又はタッチパッド24を備えていてもよい。デバイスドライバ12は、画像化の為にディスプレイスクリーン20に、キーボード又はキーパッド22に、コンピュータマウス又はタッチパッド24に、若しくは英数字文字入力及びユーザ選択の圧力検知の為にディスプレイスクリーン20に、又はそれらの組み合わせにおいてインタフェースする。デバイスドライバ12、R/Wドライブ又はインタフェース14、及びネットワークアダプタ又はインタフェース16は、ハードウェア及びソフトウェア(コンピュータ可読記憶媒体08若しくはROM 06又はそれらの組み合わせ上に格納されている)を備えていてもよい。
【0068】
本明細書に記載されたプログラムは、該プログラムが本発明の特定の実施形態において実装される用途に基づいて識別される。しかしながら、本明細書における特定の任意のプログラム名称は、単に便宜の為に使用され、従って、本発明は、そのような名称によって識別され若しくは暗示され又は識別且つ暗示される特定の任意の用途でのみ使用することに限定されるべきではないことが理解されるべきである。
【0069】
上記に基づいて、コンピュータシステム、方法及びコンピュータプログラム製品が開示されている。しかしながら、例示的な実施態様の範囲から逸脱すること無しに、多数の修正及び置換が行われることができる。それ故に、例示的な実施態様は、例として開示されているものであり、限定されたものでない。
【0070】
本開示はクラウドコンピューティングに関する詳細な説明を含むが、本明細書に列挙される教示の実装はクラウドコンピューティング環境に限定されないことが予め理解されるべきである。むしろ、本発明の実施態様は、現在知られている又は後に開発される任意の他の種類のコンピューティング環境と組み合わされて実装されることができる。
【0071】
クラウドコンピューティングは、最小限の管理労力又はサービスのプロバイダとの相互作用で迅速にプロビジョニングされ且つ解放されることができる構成可能なコンピューティングリソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理(processing)、メモリ、ストレージ、アプリケーション、仮想マシン、及びサービス)の共有プールへの便利なオンデマンドネットワークアクセスを可能にする為のサービス提供のモデルである。このクラウドモデルは、少なくとも5つの特徴、少なくとも3つのサービスモデル、及び少なくとも4つのデプロイメントモデル(deployment model)を含みうる。
【0072】
特徴は下記の通りである。
【0073】
オンデマンドセルフサービス(On-demand self-service):クラウドコンシューマ(cloud consumer)は、サービスのプロバイダとのヒューマンインターラクション(human interaction)を必要とせずに、必要に応じて、コンピューティング機能、例えばサーバ時間及びネットワークストレージ、を一方的にプロビジョニングすることができる。
【0074】
ブロードネットワークアクセス:機能は、ネットワークを介して利用可能であり、及び異種のシン(thin)クライアント・プラットフォーム又はシック(thick)クライアント・プラットフォーム(例えば、携帯電話、ラップトップ、及びPDA)による使用を促進する標準的なメカニズムを介してアクセスされる。
【0075】
リソースのプーリング:プロバイダのコンピューティングリソースは、マルチテナントモデルを使用して複数のコンシューマにサービスを提供する為にプールされ、及び様々な物理リソースと仮想リソースが需要に従って動的に割り当てられ及び再割り当てされる。コンシューマは一般的に、提供されたリソースの正確な場所についての制御又は知識を有していないが、より高いレベルの抽象化での場所(例えば、国、州又はデータセンター)を特定できうるという点で、場所に依存しないといえる。
【0076】
迅速な順応性:機能は、迅速且つ弾力的にプロビジョニングされ、場合によっては自動的に、迅速にスケールアウトされ、迅速にリリースされて迅速にスケールインされうる。コンシューマにとって、プロビジョニングに利用可能な機能はしばしば、無制限であり及びいつでも任意の量で購入されることができる。
【0077】
測定されたサービス:クラウド・システムは、サービスの種類(例えば、ストレージ、処理、帯域幅、及びアクティブなユーザアカウント)に適した何らかの抽象化レベルでの計量機能を用いることによって、リソースの使用を自動的に制御し及び最適化する。リソース使用は監視され、制御され、及び報告されることができ、利用されるサービスのプロバイダ及びコンシューマの両方についての透明性を提供することができる。
【0078】
サービスモデルは下記の通りである。
【0079】
サービスとしてのソフトウェア(SaaS:Software as a Service):クラウドインフラストラクチャにおいて実行しているプロバイダのアプリケーションを使用する為に、コンシューマに提供される機能である。該アプリケーションは、シン・クライアント・インタフェース、例えばウェブブラウザ(例えば、ウェブベースの電子メール)、を通じて、様々なクライアント・装置からアクセス可能である。該コンシューマは、制限されたユーザ固有のアプリケーション構成設定のありうる例外として、基礎をなすクラウドインフラストラクチャ、例えば、ネットワーク、サーバ、オペレーティングシステム、ストレージ、又は個々のアプリケーション機能さえも包含する基礎をなすクラウドインフラストラクチャ、を管理又は制御しない。
【0080】
サービスとしてのプラットフォーム(PaaS:Platform as a Service):プロバイダによってサポートされるプログラミング言語及びツールを用いて生成された、コンシューマが生成した又は取得したアプリケーションを、クラウドインフラストラクチャ上にデプロイする為に、該コンシューマに提供される機能である。該コンシューマは、基礎をなすクラウドインフラストラクチャ、例えば、ネットワーク、サーバ、オペレーティングシステム、又はストレージを包含する基礎をなすクラウドインフラストラクチャ、を管理又は制御しないが、デプロイされたアプリケーション、及び場合によってはアプリケーション・ホスティング環境構成に対して制御を有する。
【0081】
サービスとしてのインフラストラクチャ(IaaS:Infrastructure as a Service):コンシューマが、オペレーティングシステム及びアプリケーションを含むことができる任意のソフトウェアをデプロイ及び実行することができる、処理、ストレージ、ネットワーク、及び他の基本的なコンピューティングリソースをプロビジョニングする為に、該コンシューマに提供される機能である。該コンシューマは、基礎をなすクラウドインフラストラクチャを管理又は制御しないが、オペレーティングシステム、ストレージ、デプロイされたアプリケーションに対する制御、並びに、場合によっては、ネットワークコンポーネント(例えば、ホストのファイアウォール)を選択することの制限された制御を有する。
【0082】
デプロイメントモデル(Deployment Models)は下記の通りである。
【0083】
プライベートクラウド:クラウドインフラストラクチャは、ある組織の為のみに運営される。該クラウドインフラストラクチャは、該組織又は第三者によって管理され得、及びオンプレミス(on-premises)又はオフプレミス(off-premises)に存在しうる。
【0084】
コミュニティクラウド:クラウドインフラストラクチャは、幾つかの組織によって共有され、及び共通の関心事項(例えば、ミッション、セキュリティ要件、ポリシー、及びコンプライアンス考慮事項)を有する特定のコミュニティをサポートする。該クラウドインフラストラクチャは、該組織又は第三者によって管理され得、及びオンプレミス又はオフプレミスに存在しうる。
【0085】
パブリッククラウド:クラウドインフラストラクチャは、一般公衆又は大規模な業界グループに対して利用可能であり、及びクラウドサービスを販売する組織によって所有される。
【0086】
ハイブリッドクラウド:クラウドインフラストラクチャは、固有のエンティティのままであるが、データ及びアプリケーションの移行性を可能にする標準化された又は専用の技術(例えば、クラウド間の負荷分散の為のクラウド・バースティング)によって一緒にされる2以上のクラウド(プライベート、コミュニティ、又はパブリック)の混成物である。
【0087】
クラウドコンピューティング環境は、無国籍性(statelessness)、低結合性、モジュール性、及びセマンティック相互運用性(semantic interoperability)に焦点を有する指向されたサービスである。クラウドコンピューティングの中核(heart)は、相互接続されたノードのネットワークを含むインフラストラクチャである。
【0088】
ここで図4を参照すると、例示的なクラウドコンピューティング環境50が図示されている。図示されているように、クラウドコンピューティング環境50は、クラウドコンシューマ、例えば、パーソナルデジタルアシスタント(PDA:personal digital assistant)又は携帯電話54A、デスクトップコンピュータ54B、ラップトップコンピュータ54C若しくは自動車コンピュータシステム54N等又はそれらの組み合わせ、によって用いられるローカルコンピューティングデバイスが通信しうる1以上のクラウドコンピューティングノード40を備えている。ノード40は、互いに通信しうる。それらは、1以上のネットワーク、例えば、本明細書において記載されている、プライベートクラウド、コミュニティクラウド、パブリッククラウド、若しくはハイブリッドクラウド、又はそれらの組み合わせ、において物理的又は仮想的にグループ化されていてもよい(図示せず)。これにより、クラウドコンピューティング環境50は、クラウドコンシューマがローカルコンピューティングデバイス上のリソースを維持する必要がないサービスとして、インフラストラクチャ、プラットフォーム若しくはソフトウェア又はそれらの組み合わせを提供することができる。図示されているコンピューティングデバイス54A~Nの種類は、例示のみを意図されていること、並びにコンピューティングノード40及びクラウドコンピューティング環境50は、任意の種類のネットワーク若しくはネットワークアドレス可能接続又はそれらの組み合わせを介して(例えば、ウェブブラウザを使用して)任意の種類のコンピュータ化されたデバイスと通信することが理解される。
【0089】
ここで図5を参照すると、クラウドコンピューティング環境50(図4)によって提供される機能的抽象化層の1組が示されている。図5に示されているコンポーネント、層及び機能は、単に例示であることが意図されていること、並びに本発明の実施態様はそれらに限定されないことが理解されるべきである。図示されている通り、下記の複数の層及び対応する複数の機能が提供される。
【0090】
ハードウェア及びソフトウェア層60は、ハードウェアコンポーネント及びソフトウェアコンポーネントを包含する。ハードウェアコンポーネントの例は、メインフレーム61、RISC(Reduced Instruction Set Computer(縮小命令セット・コンピュータ))アーキテクチャ・ベースのサーバ62;サーバ63;ブレード・サーバ64;記憶デバイス65;並びに、ネットワーク及びネットワーキング・コンポーネント66を包含する。幾つかの実施態様において、ソフトウェアコンポーネントは、ネットワーク・アプリケーション・サーバ・ソフトウェア67及びデータベース・ソフトウェア68を包含する。
【0091】
仮想化層70は、抽象化層を提供し、この抽象化層から、仮想エンティティの下記の例が提供されうる:すなわち、仮想サーバ71;仮想ストレージ72;仮想ネットワーク73;例えば仮想プライベートネットワークを包含する該仮想ネットワーク73;仮想アプリケーション及びオペレーティングシステム74;並びに、仮想クライアント75。
【0092】
1つの例において、管理層80は、以下で説明される複数の機能を提供しうる。リソース・プロビジョニング81は、クラウドコンピューティング環境内でタスクを実行する為に利用されるコンピューティングリソース及び他のリソースの動的な調達を提供する。計量及び価格決定82は、リソースがクラウドコンピューティング環境内で利用される場合のコスト追跡と、これらのリソースの消費についての課金又は請求とを提供する。1つの例において、これらのリソースは、アプリケーション・ソフトウェア・ライセンスを包含しうる。セキュリティは、クラウドコンシューマ及びタスクに対する識別検証と、データ及び他のリソースに対する保護とを提供する。ユーザ・ポータル83は、コンシューマ及びシステム管理者の為に、クラウドコンピューティング環境へのアクセスを提供する。サービスレベル管理84は、要求されるサービスレベルが満たされるように、クラウド・コンピューティング・リソースの割り当て及び管理を提供する。サービス・レベル・アグリーメント(SLA:Service Level Agreement)の計画及び履行85は、将来の要件がSLAに従って予測されるクラウド・コンピューティング・リソースの為の事前配置及びその調達を提供する。
【0093】
ワークロード層90は、該クラウドコンピューティング環境が利用されうる複数の機能の例を提供する。この層から提供されうる複数のワークロード及び複数の機能の例は、マッピング及びナビゲーション91;ソフトウェア開発及びライフサイクル管理92;仮想教室教育の提供93;データ分析処理94;トランザクション処理95;並びに、シームレス通信処理96を包含する。
【0094】
本発明は、統合のありうる任意の技術的詳細レベルでの、システム、方法若しくはコンピュータプログラム製品又はそれらの組み合わせでありうる。該コンピュータプログラム製品は、プロセッサに本発明の観点を実行させる為のコンピュータ可読プログラム命令を有する1以上のコンピュータ可読記憶媒体を包含しうる。
【0095】
該コンピュータ可読記憶媒体は、命令実行デバイスによって使用する為の命令を保持且つ記憶することができる有形のデバイスであることができる。該コンピュータ可読記憶媒体は、例えば、電子ストレージデバイス、磁気ストレージデバイス、光ストレージデバイス、電磁ストレージデバイス、半導体ストレージデバイス、又はこれらの任意の適切な組み合わせでありうるが、これらに限定されない。該コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストは、下記を包含する:ポータブルのコンピュータディスケット(登録商標)、ハードディスク、ランダムアクセスメモリ(RAM:random access memory)、読み取り専用メモリ(ROM:read only memory)、消去可能なプログラマブル読み取り専用メモリ(EPROM(erasable programmable read-only memory)又はフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM:static random access memory)、ポータブル・コンパクトディスク読み取り専用メモリ(CD-ROM:compact disc read-only memory)、デジタル多用途ディスク(DVD:digital versatile disk)、メモリスティック、フロッピーディスク、機械的に符号化されたデバイス、例えば、パンチカード若しくは命令が記録されている溝内の隆起構造又はこれらの任意の適切な組み合わせ。本明細書において使用される場合、コンピュータ可読記憶媒体は、一時的な信号それ自体、例えば、電波又は他の自由に伝播する電磁波、導波管若しくは他の伝送媒体を伝播する電磁波(例えば、光ファイバケーブルを通過する光パルス)、又は電線を介して送信される電気信号、であると解釈されるべきでない。
【0096】
本明細書において記載されたコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から個々のコンピューティングデバイス/処理デバイスに、又はネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク若しくはワイヤレスネットワーク又はそれらの組み合わせ、を介して外部コンピュータ又は外部記憶デバイスにダウンロードされることができる。該ネットワークは、銅線伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ若しくはエッジサーバ又はこれらの組み合わせで構成されうる。各コンピューティングデバイス/処理デバイスにおけるネットワークアダプタカード又はネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、そして、該コンピュータ可読プログラム命令を、個々のコンピューティングデバイス/処理デバイス内にコンピュータ可読記憶媒体中に記憶する為に伝送する。
【0097】
本発明の動作を実行する為のコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA:instruction-set-architecture)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の為の構成データ、又は、1以上のプログラミング言語、例えばオブジェクト指向プログラミング言語、例えば、Smalltalk、C++等、慣用的な手続き型プログラミング言語(例えば、「C」プログラミング言語又は同様のプログラミング言語)、の任意の組み合わせで書かれているソースコード又はオブジェクトコードのいずれか、でありうる。該コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に、ユーザのコンピュータ上で部分的に、ユーザのコンピュータ上でスタンドアロン・ソフトウェア・パッケージとして部分的に、ユーザのコンピュータ上で部分的に且つリモート・コンピュータ上で部分的に、又はリモート・コンピュータ若しくはサーバ上で全体的に、実行されうる。後者のシナリオにおいて、該リモート・コンピュータは、任意の種類のネットワーク、例えば、ローカルエリアネットワーク(LAN:local area network)若しくはワイドエリアネットワーク(WAN:wide area network)、を介してユーザのコンピュータに接続されうるか、又は該接続は(例えば、インターネットサービスプロバイダを使用したインターネットを通じて)外部コンピュータに対して行われうる。幾つかの実施態様において、電子回路、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA:field-programmable gate arrays)又はプログラマブルロジックアレイ(PLA:programmable logic arrays)、は、本発明の観点を実行する為に、コンピュータ可読プログラム命令の状態情報を利用することによって、電子回路をパーソナライズすることによって、コンピュータ可読プログラム命令を実行しうる。
【0098】
本発明の観点は、本発明の実施態様に従う、方法、装置(システム)及びコンピュータプログラム製品若しくはコンピュータプログラムのフローチャート図若しくはブロック図又はそれらの組み合わせを参照して本明細書において記載されている。該フローチャート図若しくは該ブロック図又はそれらの組み合わせの各ブロック、並びに該フローチャート図若しくは該ブロック図又はそれらの組み合わせにおける複数のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装されることができることが理解されるであろう。
【0099】
これらのコンピュータ可読プログラム命令は、該コンピュータ又は他のプログラム可能なデータ処理装置のプロセッサを介して実行する命令が該フローチャート図若しくはブロック図又はそれらの組み合わせの1以上のブロックにおいて特定された機能/動作を実装する為の手段を作成するように、コンピュータのプロセッサ又は他のプログラム可能なデータ処理装置に提供されて、マシンを作り出しうる。記憶された命令を有するコンピュータ可読記憶媒体が該フローチャート図若しくはブロック図又はそれらの組み合わせの1以上のブロックにおいて特定される機能/動作の観点を実装する命令を含む製造品を含むように、これらのコンピュータ可読プログラム命令はまた、コンピュータプログラム可能なデータ処理装置若しくは他のデバイス又はこれらの組み合わせに特定の様式で機能するように指示することができるコンピュータ可読記憶媒体中に記憶されうる。
【0100】
該コンピュータ可読プログラム命令はまた、コンピュータ上、他のプログラム可能なデータ処理装置上又は他のデバイス上で実行される命令が、該フローチャート図若しくはブロック図若しくはそれらの組み合わせの1以上のブロックにおいて特定される機能/動作を実装するように、上記のコンピュータ上、他のプログラム可能なデータ処理装置上又は他のデバイス上にロードされて、コンピュータ、他のプログラム可能な装置又は他のデバイス上で一連の操作工程を実行させて、コンピュータに実装されたプロセスを生成しうる。
【0101】
図面中のフローチャート図及びブロック図は、本発明の様々な実施態様に従う、システム、方法及びコンピュータプログラム製品若しくはコンピュータプログラムのありうる実装の、アーキテクチャ、機能及び動作を示す。これに関連して、該フローチャート図又はブロック図における各ブロックは、命令のモジュール、セグメント、又はその一部を表し得、それは、特定された1以上の論理機能を実装する為の1以上の実行可能命令を含む。幾つかの代替の実装において、該ブロックにおいて示されている機能は、図面中に示されている順序とは異なって生じうる。例えば、連続して示されている2つのブロックは、実際には、関与する機能に依存して、同時に、実質的に同時に、部分的又は全体的に時間的に重複する様式で実行される1つの工程として達成されうるか、又は該ブロックは、逆の順序で実行されうる。該ブロック図若しくはフローチャート図又はこれらの組み合わせの各ブロック、並びに該ブロック図若しくはフローチャート図又はこれらの組み合わせの複数のブロックの組み合わせは、特定された機能又は動作を実行する特別な目的のハードウェアベースのシステムによって実装することができ、又は特別な目的のハードウェアとコンピュータ命令との組み合わせを実行することができることに留意されたい。
図1
図2
図3
図4
図5