JP2014164568A - Terminal device, distributed processing method, distributed processing program, and distributed processing system - Google Patents
Terminal device, distributed processing method, distributed processing program, and distributed processing system Download PDFInfo
- Publication number
- JP2014164568A JP2014164568A JP2013035769A JP2013035769A JP2014164568A JP 2014164568 A JP2014164568 A JP 2014164568A JP 2013035769 A JP2013035769 A JP 2013035769A JP 2013035769 A JP2013035769 A JP 2013035769A JP 2014164568 A JP2014164568 A JP 2014164568A
- Authority
- JP
- Japan
- Prior art keywords
- server
- throughput
- application
- execute
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
Description
本発明は、端末装置、分散処理方法、分散処理プログラムおよび分散処理システムに関する。 The present invention relates to a terminal device, a distributed processing method, a distributed processing program, and a distributed processing system.
近年、分散処理技術、通信技術、端末技術等のIT技術の発展、普及により、時間、場所に拘らずに必要な場面で必要なリソースを利用することが可能となりつつある。例えば、画像認識や動画編集などの負荷の高い処理を行うアプリケーションでは、サーバと端末との実行環境の特性に応じて実行する処理を振分け、分散処理を行うことで結果的に処理の高速化を図ることができる。 In recent years, with the development and popularization of IT technology such as distributed processing technology, communication technology, and terminal technology, it is becoming possible to use necessary resources in necessary scenes regardless of time and place. For example, in an application that performs heavy processing such as image recognition and video editing, the processing to be executed is distributed according to the characteristics of the execution environment between the server and the terminal, and the processing speed is increased as a result. Can be planned.
このサーバと端末との実行環境の特性に応じて実行する処理について、処理の実行環境の振分けの指定は、アプリ開発時に設定されて固定されるため、処理速度が低下する場合があった。例えば、通信環境の悪化等の外部要因によっては処理の実行環境を変更した方が良い場合が生じることもあり、上記のように処理の振分けが固定的であると結果的に応答時間が長くなり、ユーザビリティが下がる場合があった。これに対して、電界強度などの通信状況の測定結果をもとに、処理の実行をサーバへ切替えるか判断して動的に切替制御を行う技術が知られている。 Regarding the processing to be executed in accordance with the characteristics of the execution environment between the server and the terminal, the processing execution environment assignment specification is set and fixed at the time of application development, so the processing speed may be reduced. For example, depending on external factors such as deterioration of the communication environment, it may be better to change the execution environment of the process. As described above, if the process distribution is fixed, the response time becomes longer. In some cases, usability decreased. On the other hand, there is known a technique for performing dynamic switching control by determining whether to switch processing execution to a server based on a measurement result of a communication state such as electric field strength.
しかしながら、上記した電界強度などの通信状況の測定結果をもとに、処理の実行をサーバへ切替えるか判断して制御する技術では、応答時間悪化の原因の所在がアプリケーション実行環境か通信環境かが不明であり、適切な実行環境の切替制御ができず、端末におけるアプリケーションの処理速度が低下する場合があるという課題があった。 However, in the technology that determines whether to switch the execution of processing to the server based on the measurement result of the communication state such as the electric field strength described above, whether the cause of the response time deterioration is the application execution environment or the communication environment. There is a problem that it is unknown and switching of the appropriate execution environment cannot be performed, and the processing speed of the application in the terminal may decrease.
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、端末におけるアプリケーションの処理速度を向上させることを目的とする。 Accordingly, the present invention has been made to solve the above-described problems of the prior art, and an object thereof is to improve the processing speed of an application in a terminal.
上述した課題を解決し、目的を達成するために、本発明に係る端末装置は、通信状況を測定する測定部と、複数の端末装置から収集された情報に基づいて作成されたモデルを用いて、前記測定部によって測定された通信状況からスループットを予測する予測部と、前記予測部によって予測されたスループットに応じて、アプリケーションに関する処理を自装置またはサーバに実行させるか判断し、自装置またはサーバに前記処理を実行させるように制御する制御部と、を有することを特徴とする。 In order to solve the above-described problems and achieve the object, a terminal device according to the present invention uses a measurement unit that measures a communication state and a model created based on information collected from a plurality of terminal devices. A prediction unit that predicts throughput from the communication status measured by the measurement unit, and determines whether the device or server is to execute processing related to the application according to the throughput predicted by the prediction unit. And a control unit that controls to execute the processing.
また、本発明に係る分散処理方法は、端末装置において実行される分散処理方法であって、通信状況を測定する測定工程と、複数の端末装置から収集された情報に基づいて作成されたモデルを用いて、前記測定工程によって測定された通信状況からスループットを予測する予測工程と、前記予測工程によって予測されたスループットに応じて、アプリケーションに関する処理を自装置またはサーバに実行させるか判断し、自装置またはサーバに前記処理を実行させるように制御する制御工程と、を含んだことを特徴とする。 The distributed processing method according to the present invention is a distributed processing method executed in a terminal device, and includes a measurement process for measuring a communication state and a model created based on information collected from a plurality of terminal devices. Using the prediction process for predicting the throughput from the communication status measured by the measurement process, and determining whether or not the apparatus or server is to execute processing related to the application according to the throughput predicted by the prediction process. Or a control step of controlling the server to execute the process.
また、本発明に係る分散処理プログラムは、通信状況を測定する測定ステップと、複数の端末装置から収集された情報に基づいて作成されたモデルを用いて、前記測定ステップによって測定された通信状況からスループットを予測する予測ステップと、前記予測ステップによって予測されたスループットに応じて、アプリケーションに関する処理を自装置またはサーバに実行させるか判断し、自装置またはサーバに前記処理を実行させるように制御する制御ステップと、をコンピュータに実行させることを特徴とする。 Further, the distributed processing program according to the present invention uses a measurement step for measuring a communication state and a model created based on information collected from a plurality of terminal devices, based on the communication state measured by the measurement step. A prediction step for predicting throughput, and control for determining whether or not the device or server is to execute the process related to the application according to the throughput predicted by the prediction step, and controlling the device or server to execute the process And causing the computer to execute the steps.
また、本発明に係る分散処理システムは、端末装置とサーバとを備える分散処理システムであって、前記端末装置は、通信状況を測定する測定部と、複数の端末装置から収集された情報に基づいて作成されたモデルを用いて、前記測定部によって測定された通信状況からスループットを予測する予測部と、前記予測部によって予測されたスループットに応じて、アプリケーションに関する処理を自装置またはサーバに実行させるか判断し、自装置またはサーバに前記処理を実行させるように制御する制御部と、を有し、前記サーバは、前記端末装置によってアプリケーションに関する処理をサーバに実行させると判断された場合には、該処理を実行し、前記端末装置に処理結果を送信する処理部を有することを特徴とする。 The distributed processing system according to the present invention is a distributed processing system including a terminal device and a server, and the terminal device is based on information collected from a measuring unit that measures a communication state and a plurality of terminal devices. A prediction unit that predicts throughput from the communication status measured by the measurement unit using the model created by the measurement unit, and causes the apparatus or server to execute processing related to the application according to the throughput predicted by the prediction unit A control unit that controls to cause the device or server to execute the process, and the server determines that the terminal device causes the server to execute a process related to an application. It has a processing part which performs this processing and transmits a processing result to the above-mentioned terminal unit.
実施形態に係る端末装置、分散処理方法、分散処理プログラムおよび分散処理システムは、端末におけるアプリケーションの処理速度を向上させることとか可能となる。 The terminal device, the distributed processing method, the distributed processing program, and the distributed processing system according to the embodiment can improve the processing speed of the application in the terminal.
以下に添付図面を参照して、この発明に係る端末装置、分散処理方法、分散処理プログラムおよび分散処理システムの実施形態を詳細に説明する。なお、この実施形態によりこの発明が限定されるものではない。 Hereinafter, embodiments of a terminal device, a distributed processing method, a distributed processing program, and a distributed processing system according to the present invention will be described in detail with reference to the accompanying drawings. In addition, this invention is not limited by this embodiment.
[第一の実施形態]
まず、図1を用いて、第一の実施の形態に係るシステムの概要について説明する。図1は、本実施形態に係るシステムの構成を示すブロック図である。同図に示すように、本実施形態に係るシステムは、ネットワーク10、複数のモバイル端末20および予測モデル生成サーバ30、複数の演算処理サーバ40を有する。また、各モバイル端末20、予測モデル生成サーバ30および演算処理サーバ40は、ネットワーク10を介して、それぞれ接続されている。ここでネットワーク10とは、例えば、3G(3rd Generation)や、LTE(Long Term Evolution)、WiFi(Wireless Fidelity)(登録商標)などである。なお、各モバイル端末20および各サーバ30、40における通信は、無線通信に限定されるものではなく、有線通信であってもよい。なお、ここでは、各サーバ30、40と通信する装置として、モバイル端末20を例にして説明するが、後述するように、各サーバ30、40と通信する装置は、モバイル端末20に限定されるものではない。
[First embodiment]
First, the outline of the system according to the first embodiment will be described with reference to FIG. FIG. 1 is a block diagram showing a configuration of a system according to the present embodiment. As shown in the figure, the system according to the present embodiment includes a
また、以下の説明では、各モバイル端末20が分散実行環境を有する各演算処理サーバ40と協調してアプリケーションを実行するシステムについて説明するが、このシステムは、このような実施形態に限定されるものではない。例えば、モバイル端末20同士や演算処理サーバ40同士で協調してアプリケーションを実行するシステムであってもよい。また、このシステムでは、各モバイル端末20および各演算処理サーバ40等の実行環境の種類や、実行するアプリケーションの種別が同一であってもよい。
In the following description, a system in which each
各モバイル端末20は、各種アプリケーションを実行する情報処理装置である。各モバイル端末20は、各サーバ40と協調してアプリケーションを実行する。例えば、モバイル端末20は、携帯電話、PHS(Personal Handyphone System)、PDA(Personal Digital Assistant)、タブレットPC(Personal Computer)等、インターネットに接続して、各サーバ30、40や他のユーザ端末との間で情報を送受信できるものであれば、任意の装置であってよい。また、モバイル端末に限定されず、家庭またはオフィスに設置されたコンピュータを使用してもよい。
Each
モバイル端末20は、通信状況を測定し、複数のモバイル端末20から収集された情報に基づいて作成されたモデルを用いて、測定された通信状況からスループットを予測する。また、モバイル端末20は、スループットを用いて、アプリに関する演算処理をモバイル端末20から演算処理サーバ40にオフロードするかどうかを判断し、アプリケーションに関する演算処理を自装置または演算処理サーバ40に実行させるように制御する。
The
予測モデル生成サーバ30は、複数のモバイル端末20から通信に関するデータを収集し、スループットを予測するためのモデルを生成する。演算処理サーバ40は、モバイル端末20におけるアプリケーションに関する演算処理を実行し、モバイル端末20に実行結果を送信する。
The prediction
次に、図2を用いて、モバイル端末20および各サーバ30、40の構成を説明する。図2は、第一の実施形態に係るモバイル端末および各サーバの構成を説明するための図である。
Next, the structure of the
まず、予測モデル生成サーバ30の構成について説明する。予測モデル生成サーバ30は、データ収集部31およびモデル生成部32を有する。
First, the configuration of the prediction
データ収集部31は、3Gや、LTE、WiFiなどのネットワーク10を介して、複数のモバイル端末20から通信に関するデータを収集する。例えば、データ収集部31は、図3に示すように、複数のモバイル端末20から通信に関するデータとして、無線通信状況パラメータである遅延や電界強度などのデータを収集する。
The
モデル生成部32は、データ収集部31によって収集された通信に関するデータを用いて、スループットを予測するためのモデルを生成する。また、モデル生成部32は、データ収集部31によって通信に関するデータが収集されるごとに、該データを解析し、モデルを更新する。例えば、モデル生成部32は、データ収集部31によって収集された通信に関するデータの平均や分散をもとめることで分析・学習し、モデルを生成する。例えば、ここで生成されるモデルとしては、A(例えば、電界強度、RTT(Round-Trip Time))が分かれば、B(スループット)が分かる、AとBの関係式である。そして、モデル生成部32は、モデルを生成した後、図3に示すように、生成したモデルをモバイル端末20に送信する。
The
ここで、学習および予測の方法についての一例を説明する。ここで説明する例としては、例えば、学習パラメータを、事前にモバイル端末20から収集されたNW種別(3Gや、LTE、WiFiなど)、電界強度、RTTや、スループットとし、説明変数(予測に利用するパラメータ)を、アプリケーションを実行する直前のモバイル端末20のNW種別(3Gや、LTE、WiFiなど)、電界強度やRTTとし、目的変数(予測結果)を、アプリケーションを実行する直前のスループットとする。なお、学習・予測方法、学習パラメータ、説明変数、目的変数は適宜変更可能である。
Here, an example of a learning and prediction method will be described. As an example described here, for example, the learning parameters are NW types (3G, LTE, WiFi, etc.), electric field strength, RTT, and throughput collected from the
各学習パラメータを収集し、説明変数{NW種別、電界強度、RTT}がどのような状態の時に目的変数{スループット}がいくつになるかを回帰分析する。回帰分析した結果は、説明変数{NW種別、電界強度、RTT}と目的変数{スループット}の関係式(モデル)として求められる。 Each learning parameter is collected, and regression analysis is performed to determine what the objective variable {throughput} is when the explanatory variable {NW type, electric field strength, RTT} is in a state. The result of the regression analysis is obtained as a relational expression (model) of the explanatory variable {NW type, electric field strength, RTT} and the objective variable {throughput}.
また、学習のタイミングとしては、ストリーム処理、バッチ処理、またはストリーム処理とバッチ処理とを組み合わせた処理が考えられる。いずれを選択するかは、ユーザによって適宜変更設定することができる。このストリーム処理(Jubatus(登録商標)等を使うリアルタイム分析)は、その時間に取得したデータを用いて機械学習を行うので、その時間の収集データ量が多い時に有効である。また、バッチ処理は、日、週、季節、年などの単位でデータを蓄積し、機械学習を行うので、周期ごとの傾向が分かり、長期的にデータが取得できる場合に有効であり、さらに、その時間の収集データ量が少なくても分析可能である。また、ストリーム処理とバッチ処理とを組み合わせた処理は、バッチ処理で周期毎の傾向を把握し、その瞬間のストリーム処理の結果と比較することで、異常検知が可能である、その時間の収集データ量が少なくてもよりよい精度で分析することが可能である。 The learning timing may be stream processing, batch processing, or processing that combines stream processing and batch processing. Which one to select can be changed and set as appropriate by the user. This stream processing (real-time analysis using Jubatus (registered trademark) or the like) is effective when the amount of collected data at that time is large because machine learning is performed using data acquired at that time. In addition, batch processing accumulates data in units of days, weeks, seasons, years, etc., and performs machine learning, so it is effective when you can understand trends for each cycle and acquire data in the long term. Analysis is possible even if the amount of data collected during that time is small. In addition, the combined processing of stream processing and batch processing is the collected data of that time that can detect anomalies by grasping the trend of each cycle in batch processing and comparing it with the result of stream processing at that moment Even a small amount can be analyzed with better accuracy.
また、後述するモバイル端末20の予測部22bは、アプリケーションを使おうとする時に、その場で目的変数{NW種別、電界強度、RTT}を測定し、それらの値を関係式に当てはめることで、図4に例示するように、目的変数を測定した時から数分間先までの目的変数{スループットの分布}を予測するようにしてもよい。図4に示すように、演算処理サーバ40へアプリケーションの処理をオフロードするかのオフロード判断を行った後、アプリケーションを使用している時間中は、時間の経過とともに、測定されるスループットが変化する。このため、モデル生成部32は、ある時点のスループットを予測するモデルを生成するだけでなく、所定の時間中のスループットの分布を予測することができるモデルを生成するようにしてもよい。また、混雑した時間帯毎に学習することで、高い精度で予測できる。
Further, the
図2の説明に戻って、モバイル端末20について説明する。モバイル端末20は、アプリケーション21および該アプリの実行箇所を切り替えるアプリ実行箇所切替部22を有する。アプリケーション21は、演算処理を実行する演算処理部21aを有する。この演算処理部21aは、演算処理サーバ40の演算処理部41aと同一のものである。演算処理部21aは、アプリを実行する際に、制御部22cに対して、演算処理サーバ40へアプリケーションの処理をオフロードするか否かを問い合わせる。
Returning to the description of FIG. 2, the
アプリ実行箇所切替部22は、アプリケーションを実行するための演算処理をモバイル端末20で実行するか演算処理サーバ40で実行するかを判断して、切り替える。アプリ実行箇所切替部22は、実行箇所を切り替える測定部22a、予測部22bおよび制御部22cを有する。
The application execution
測定部22aは、通信状況を測定する。具体的には、測定部22aは、アプリケーションを実行する直前に、通信状況に関する情報として、アプリケーション実行直前において利用されているNW種別や、アプリケーション実行直前の電界強度およびRTTを測定し、予測部22bに通知する。
The
予測部22bは、複数のモバイル端末20から収集された情報に基づいて作成されたモデルを用いて、測定部22aによって測定された通信状況からスループットを予測する。例えば、予測部22bは、測定部22aによって測定されたA{NW種別、電界強度、RTT}をモデルに適用し、B{スループット}を予測する。
The
また、上記したように、アプリケーションを使っている間数分間のスループットを分布として予測してもよい。ある時点のスループットではなく、所定の時間帯のスループットの分布を予測することで、混んでいる時間帯などスループットの値の変動が大きいときの予測にも対応できる。つまり、図5に例示するように、混んでいる時間帯などスループットの値の変動が大きいときに、オフロードの判断が頻繁に切り替わることがないように、スループットの分布とオフロードを行うか否かの判断を行うためのスループットの閾値とを比較して、オフロードの成功確率(図5の例では、オフロード成功率80%)を解析することができる。このように、所定の時間帯のスループットの分布を予測して閾値の設定した場合のオフロード成功率を求めておくことで、アプリケーション実行中に何度もスループットを予測する必要がなくなり、さらに閾値ごとに学習する必要がないというメリットがある。 Further, as described above, throughput for several minutes while using an application may be predicted as a distribution. By predicting the distribution of throughput in a predetermined time zone instead of the throughput at a certain point in time, it is possible to cope with prediction when the fluctuation of the throughput value is large, such as a crowded time zone. In other words, as illustrated in FIG. 5, whether the distribution of the throughput and the offload are performed so that the determination of the offload is not frequently switched when the fluctuation of the throughput value is large, such as a busy time zone. It is possible to analyze the offload success probability (in the example of FIG. 5, the offload success rate is 80%) by comparing with the throughput threshold for making such a determination. In this way, it is not necessary to predict the throughput many times during application execution by calculating the success rate of offload when the threshold distribution is set by predicting the distribution of throughput in a predetermined time zone. There is an advantage that it is not necessary to learn every time.
制御部22cは、予測部22bによって予測されたスループットに応じて、アプリケーションに関する処理を自装置または演算処理サーバ40に実行させるか判断し、自装置または演算処理サーバ40に実行させるように制御する。
The
例えば、制御部22cは、予測されたスループットを用いて、サーバ側で処理を実行した場合にかかる実行時間を算出し、算出したサーバ側で処理を実行した場合にかかる実行時間と自装置側で処理を実行した場合にかかる実行時間とを比較し、比較の結果に応じて、処理を自装置またはサーバに実行させるように制御する。
For example, the
図6の例を用いて説明すると、制御部22cは、モバイル端末側処理時間(EC)が、オーバーヘッド(OV)とサーバ処理時間(ES)とNW通信時間(上り、下り)との合計時間よりも大きい場合には、演算処理サーバ40へアプリケーションの処理をオフロードし、小さい場合には、自装置で処理を実行する。ここでオーバーヘッドとは、通信時間を求めるために必要な時間および説明変数を測定するために必要な時間であり事前に把握されている。また、モバイル端末側処理時間(EC)およびサーバ処理時間(ES)は、過去の実行時間から統計的に把握された時間である。また、制御部22cは、NW通信時間(NT)については、下記(1)式を用いて算出する。
If it demonstrates using the example of FIG. 6, as for the
このように、演算処理サーバ40で実行した方が実行時間が短ければ、アプリケーションに関する演算処理を演算処理サーバ40へオフロードするので、アプリケーション処理の効率向上を目的とし、アプリケーション実行環境の切替制御を実現することが可能である。
In this way, if the execution time is shorter in the
また、例えば、制御部22cは、予め実行するアプリケーションごとにかかる処理時間を基に設定された閾値が設定され、予測部22bによって予測されたスループットが予め設定された閾値を超えている場合には、アプリケーションに関する処理を演算処理サーバ40に実行させ、超えていない場合には、アプリケーションに関する処理を自装置に実行させるようにしてもよい。
Further, for example, when the threshold set based on the processing time required for each application to be executed in advance is set and the throughput predicted by the
また、上記したように処理時間をパラメータとしたオフロードの判断を行う場合の他に、電池消費量、アプリ要求精度(例えば、画像認識の精度)、各NWにかかる料金を用いてオフロードの判断を行ってもよい。例えば、省電力を目的として、測定したスループットから演算処理サーバ40で実行した場合の電池消費量を算出し、モバイル端末20で実行した場合の電池消費量と演算処理サーバ40で実行した場合の電池消費量との比較によりオフロードの判断を行うようにしてもよい。つまり、モバイル端末20で実行した場合よりも演算処理サーバ40で実行した方が、電池消費量が低い場合には、オフロードして演算処理サーバ40に処理を実行させる。このスループットに対する電池消費量に関する情報は、アプリケーションを実行した場合に、どれくらいの時間でどれくらい電池を消費するかを測定することで取得できる。
Moreover, in addition to the case where the offload is determined using the processing time as a parameter as described above, the offload is determined using the battery consumption, the accuracy required for the application (for example, the accuracy of image recognition), and the charge for each NW Judgment may be made. For example, for the purpose of power saving, the battery consumption when executed by the
また、アプリケーションの精度を重視する場合には、測定したスループットから演算処理サーバ40で実行した場合のアプリ要求精度を算出し、アプリ要求精度に応じてオフロードの判断を行ってもよい。つまり、アプリ要求精度が低いようなアプリケーションを起動した場合には、オフロードして演算処理サーバ40に処理を実行させる。このアプリ要求精度に関する情報は、予めユーザにより設定されているものとする。
Further, when importance is placed on the accuracy of the application, the application request accuracy when executed by the
また、料金を重視する場合には、測定したスループットから演算処理サーバ40で実行した場合のNWにかかる料金を算出し、NWにかかる料金に応じてオフロードの判断を行ってもよい。つまり、NWにかかる料金が少なくて済むアプリケーションを起動した場合には、オフロードして演算処理サーバ40に処理を実行させる。このNWにかかる料金に関する情報は、事前にユーザにより設定されているものとする。なお、上記した各種パラメータは、機械学習により最適化するようにしてもよい。
Further, in the case where the charge is regarded as important, the charge for the NW when executed by the
図2に戻って、演算処理サーバ40は、アプリケーション41を有する。アプリケーション41の演算処理部41aは、モバイル端末20によってアプリケーションに関する処理をサーバに実行させると判断された場合には、モバイル端末20におけるアプリケーションに関する演算処理を実行し、モバイル端末20に処理結果を送信する。
Returning to FIG. 2, the
なお、例えば、大地震などが起こり、急激な通信状況の悪化を異常検知した場合には、スループット予測をせず、オフロードをしないと判断しないようにしてもよい。これにより、緊急時にはNWの利用を控え、安否確認に関係のないアプリによるNWの圧迫を防ぐことができる。また、異常値を利用しないので、通常のデータの過学習を防ぐことができる。 Note that, for example, when a major earthquake or the like occurs and an abnormal detection of a sudden deterioration in communication status is detected, throughput prediction may not be performed and it may not be determined that offloading is not performed. This makes it possible to refrain from using the NW in an emergency and to prevent the NW from being compressed by an application unrelated to safety confirmation. Moreover, since no abnormal value is used, overlearning of normal data can be prevented.
[システムによる学習モデル生成処理]
次に、図7を用いて、第一の実施形態に係るシステムによる処理を説明する。図7は、第一の実施形態に係るシステムの学習モデル生成処理の処理手順を示すシーケンス図である。
[Learning model generation processing by the system]
Next, processing by the system according to the first embodiment will be described with reference to FIG. FIG. 7 is a sequence diagram showing a processing procedure of learning model generation processing of the system according to the first embodiment.
図7に示すように、各モバイル端末20の測定部22aは、無線ネットワークに接続し、無線通信状況パラメータ(遅延、電界強度など)と、スループットを測定する(ステップS101)。そして、予測モデル生成サーバ30のデータ収集部31は、各モバイル端末20に対して無線通信状況パラメータとスループットのデータ収集を要求する(ステップS102)。例えば、データ収集部31は、一定間隔で、NW越しに自動送信するように要求することで、無線通信状況パラメータとスループットのデータを各モバイル端末20に対して要求する。
As shown in FIG. 7, the
そして、データ収集部31は、無線通信状況パラメータとスループットのデータの各モバイル端末20から取得し(ステップS103)、取得したデータを所定の記憶部に蓄積するとともに(ステップS104)、モデル生成部32に取得したデータを通知する(ステップS105)。そして、モデル生成部32は、収集したデータを学習し、モデルを生成して(ステップS106)、アプリを使用しているモバイル端末20の予測部22bに生成したモデルを通知する(ステップS107)。
Then, the
[モバイル端末による分散処理]
次に、図8を用いて、モバイル端末の分散処理の一例について説明する。図8は、第一の実施形態に係るモバイル端末の分散処理の処理手順を示すフローチャートである。図8に示すように、モバイル端末20の測定部22aは、アプリケーション使用の要求をユーザから受け付けると(ステップS201肯定)、電界強度およびRTTを測定する(ステップS202)。
[Distributed processing by mobile devices]
Next, an example of mobile terminal distributed processing will be described with reference to FIG. FIG. 8 is a flowchart showing a processing procedure of distributed processing of the mobile terminal according to the first embodiment. As illustrated in FIG. 8, when the
そして、モバイル端末20の予測部22bは、予測モデル生成サーバ30により生成されたモデルを用いて、電界強度およびRTTからスループットを予測する(ステップS203)。続いて、モバイル端末20の制御部22cは、スループットから演算処理サーバ40側で実行した場合の実行時間を算出する(ステップS204)。
Then, the
そして、制御部22cは、演算処理サーバ40側で実行した方がモバイル端末20側で実行するより早いか判定する(ステップS205)。具体的には、制御部22cは、予測されたスループットを用いて、サーバ側で処理を実行した場合にかかる実行時間を算出し、算出したサーバ側で処理を実行した場合にかかる実行時間と自装置側で処理を実行した場合にかかる実行時間とを比較し、比較の結果に応じて、処理を自装置またはサーバに実行させるように制御する。
Then, the
この結果、制御部22cは、演算処理サーバ40側で実行した方がモバイル端末20側で実行するより早い場合には(ステップS205肯定)、演算処理サーバ40側でアプリケーションに関する演算処理を実行させる(ステップS206)。また、制御部22cは、演算処理サーバ40側で実行した方がモバイル端末20側で実行するより遅い場合には(ステップS205否定)、モバイル端末20側でアプリケーションに関する演算処理を実行させる(ステップS207)。
As a result, if the
[第一の実施形態の効果]
上述してきたように、モバイル端末20では、通信状況を測定し、複数のモバイル端末20から収集された情報に基づいて作成されたモデルを用いて、測定された通信状況からスループットを予測し、予測されたスループットに応じて、アプリケーションに関する処理を自装置または演算処理サーバ40に実行させるか判断し、自装置または演算処理サーバ40に処理を実行させるように制御する。このため、モバイル端末20は、他端末を含む通信環境の状況等も加味してより高い精度で適切なアプリケーション実行環境を選定し、シームレスな切替制御を自律的に実行することができ、モバイル端末20におけるアプリケーションの処理速度を向上させることが可能である。
[Effect of the first embodiment]
As described above, the mobile terminal 20 measures the communication status, predicts the throughput from the measured communication status using the model created based on the information collected from the plurality of
また、第一の実施形態によれば、柔軟にアプリケーションを実行する箇所を切り替えることで、処理速度を最適化した状態でアプリケーションを使うことができる。また、モバイル端末20のスペックが悪く、通信状況がいい場合にはサーバで処理を行うことで処理を高速化できる。また、モバイル端末20のスペックが良いのにもかかわらず演算処理サーバ側で処理を行っている場合には、モバイル端末20で実行することによって、NWを無駄に利用する必要がなくなり、帯域を圧迫しない。また、モバイル端末20で取得できる情報だけでスループットの予測を行うため、通信事業者でない企業や個人でもスループットを把握することができる。また、短時間かつモバイル端末20で取得できるパラメータを用いてスループットを予測し、予測した結果を元にアプリ実行箇所を柔軟に選択することができる。
Further, according to the first embodiment, the application can be used in a state in which the processing speed is optimized by switching the place where the application is executed flexibly. Further, when the specifications of the
また、第一の実施形態によれば、モバイル端末20側で収集可能な情報を基に他端末の実行状況データも活用して機械学習で予測したスループットを用いて、通信環境の状況等も加味した適切なアプリケーション実行環境を選定し、シームレスな切替制御を自律的に実行することが可能である。また、複数台のモバイル端末からデータを収集してモデルを生成するので、一台で収集したデータだけではなく集合知としてのデータを利用するため、より精度の高い予測が可能となる。
In addition, according to the first embodiment, using the throughput predicted by machine learning using the execution status data of other terminals based on information that can be collected on the
[システム構成]
また、本実施形態において説明した各処理の内、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上述文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[System configuration]
In addition, among the processes described in the present embodiment, all or part of the processes described as being automatically performed can be manually performed, or the processes described as being performed manually can be performed. All or a part can be automatically performed by a known method. In addition, the processing procedures, control procedures, specific names, and information including various data and parameters shown in the above-described document and drawings can be arbitrarily changed unless otherwise specified.
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。 Further, each component of each illustrated apparatus is functionally conceptual, and does not necessarily need to be physically configured as illustrated. That is, the specific form of distribution / integration of each device is not limited to the one shown in the figure, and all or a part of the distribution / integration may be functionally or physically distributed in arbitrary units according to various loads or usage conditions. Can be integrated and configured.
また、例えば、予測モデル生成サーバ30を設けずに、データ収集部およびモデル生成部をモバイル端末20が備えるようにしてもよい。また、スループットの予測およびオフロードするか否かの判断する処理、または、スループットの予測処理を、モバイル端末20ではなく外部のサーバ等に実行させるようにしてもよい。
Further, for example, the
[プログラム]
図9は、開示の技術に係る分散処理プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。図9に例示するように、コンピュータ1000は、例えば、メモリ1010と、CPU(Central Processing Unit)1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。コンピュータ1000の各部はバス1080によって接続される。
[program]
FIG. 9 is a diagram illustrating that information processing by the distributed processing program according to the disclosed technique is specifically realized using a computer. As illustrated in FIG. 9, the
メモリ1010は、図9に例示するように、ROM1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、図9に例示するように、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、図9に例示するように、ディスクドライブ1041に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1041に挿入される。シリアルポートインタフェース1050は、図9に例示するように、例えばマウス1051、キーボード1052に接続される。ビデオアダプタ1060は、図9に例示するように、例えばディスプレイ1061に接続される。
The
ここで、図9に例示するように、ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、開示の技術に係る分散処理プログラムは、コンピュータによって実行される指令が記述されたプログラムモジュール1093として、例えばハードディスクドライブ1031に記憶される。具体的には、上記実施形態で説明した制御部12の各部と同様の情報処理を実行する手順各々が記述されたプログラムモジュールが、ハードディスクドライブ1031に記憶される。
Here, as illustrated in FIG. 9, the hard disk drive 1031 stores, for example, an
また、分散処理プログラムによる情報処理に用いられるデータは、プログラムデータ1094として、例えばハードディスクドライブ1031に記憶される。そして、CPU1020が、ハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出し、各種の手順を実行する。
Data used for information processing by the distributed processing program is stored as
なお、分散処理プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られない。例えば、プログラムモジュール1093やプログラムデータ1094は、着脱可能な記憶媒体に記憶されても良い。この場合、CPU1020は、ディスクドライブなどの着脱可能な記憶媒体を介してデータを読み出す。また、同様に、分散処理プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されても良い。この場合、CPU1020は、ネットワークインタフェースを介して他のコンピュータにアクセスすることで各種データを読み出す。
Note that the
[その他]
なお、本実施形態で説明した分散処理プログラムは、インターネットなどのネットワークを介して配布することができる。また、制御プログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
[Others]
Note that the distributed processing program described in the present embodiment can be distributed via a network such as the Internet. The control program can also be executed by being recorded on a computer-readable recording medium such as a hard disk, a flexible disk (FD), a CD-ROM, an MO, and a DVD, and being read from the recording medium by the computer.
10 ネットワーク
20 モバイル端末
21、41 アプリケーション
22a 測定部
22b 予測部
22c 制御部
30 予測モデル生成サーバ
31 データ収集部
32 モデル生成部
40 演算処理サーバ
DESCRIPTION OF
Claims (7)
複数の端末装置から収集された情報に基づいて作成されたモデルを用いて、前記測定部によって測定された通信状況からスループットを予測する予測部と、
前記予測部によって予測されたスループットに応じて、アプリケーションに関する処理を自装置またはサーバに実行させるか判断し、自装置またはサーバに前記処理を実行させるように制御する制御部と、
を有することを特徴とする端末装置。 A measurement unit for measuring the communication status;
Using a model created based on information collected from a plurality of terminal devices, a prediction unit that predicts throughput from the communication status measured by the measurement unit,
In accordance with the throughput predicted by the prediction unit, a control unit that determines whether to execute the process related to the application on the own device or the server, and controls the own device or the server to execute the process;
The terminal device characterized by having.
をさらに有することを特徴とする請求項1に記載の端末装置。 A generation unit that generates a model for predicting throughput using data related to communication collected from a plurality of terminal devices;
The terminal device according to claim 1, further comprising:
通信状況を測定する測定工程と、
複数の端末装置から収集された情報に基づいて作成されたモデルを用いて、前記測定工程によって測定された通信状況からスループットを予測する予測工程と、
前記予測工程によって予測されたスループットに応じて、アプリケーションに関する処理を自装置またはサーバに実行させるか判断し、自装置またはサーバに前記処理を実行させるように制御する制御工程と、
を含んだことを特徴とする分散処理方法。 A distributed processing method executed in a terminal device,
A measurement process for measuring the communication status;
Using a model created based on information collected from a plurality of terminal devices, a prediction step of predicting throughput from the communication status measured by the measurement step,
In accordance with the throughput predicted by the prediction step, it is determined whether to execute the process related to the application on the own device or the server, and the control step for controlling the own device or the server to execute the process;
The distributed processing method characterized by including.
複数の端末装置から収集された情報に基づいて作成されたモデルを用いて、前記測定ステップによって測定された通信状況からスループットを予測する予測ステップと、
前記予測ステップによって予測されたスループットに応じて、アプリケーションに関する処理を自装置またはサーバに実行させるか判断し、自装置またはサーバに前記処理を実行させるように制御する制御ステップと、
をコンピュータに実行させることを特徴とする分散処理プログラム。 A measurement step for measuring the communication status;
Using a model created based on information collected from a plurality of terminal devices, predicting the throughput from the communication status measured by the measuring step;
A control step of determining whether to execute the process related to the application in the own apparatus or the server according to the throughput predicted in the prediction step, and controlling the own apparatus or the server to execute the process;
A distributed processing program characterized by causing a computer to execute.
前記端末装置は、
通信状況を測定する測定部と、
複数の端末装置から収集された情報に基づいて作成されたモデルを用いて、前記測定部によって測定された通信状況からスループットを予測する予測部と、
前記予測部によって予測されたスループットに応じて、アプリケーションに関する処理を自装置またはサーバに実行させるか判断し、自装置またはサーバに前記処理を実行させるように制御する制御部と、を有し、
前記サーバは、
前記端末装置によってアプリケーションに関する処理をサーバに実行させると判断された場合には、該処理を実行し、前記端末装置に処理結果を送信する処理部を有することを特徴とする分散処理システム。 A distributed processing system comprising a terminal device and a server,
The terminal device
A measurement unit for measuring the communication status;
Using a model created based on information collected from a plurality of terminal devices, a prediction unit that predicts throughput from the communication status measured by the measurement unit,
According to the throughput predicted by the prediction unit, determine whether to execute the process related to the application to the own device or the server, and a control unit to control the own device or the server to execute the process.
The server
A distributed processing system, comprising: a processing unit configured to execute a process related to an application by the terminal device and to transmit the processing result to the terminal device when it is determined to cause the server to execute the process related to the application.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013035769A JP2014164568A (en) | 2013-02-26 | 2013-02-26 | Terminal device, distributed processing method, distributed processing program, and distributed processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013035769A JP2014164568A (en) | 2013-02-26 | 2013-02-26 | Terminal device, distributed processing method, distributed processing program, and distributed processing system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014164568A true JP2014164568A (en) | 2014-09-08 |
Family
ID=51615107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013035769A Pending JP2014164568A (en) | 2013-02-26 | 2013-02-26 | Terminal device, distributed processing method, distributed processing program, and distributed processing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014164568A (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016126801A (en) * | 2014-12-31 | 2016-07-11 | 三星電子株式会社Samsung Electronics Co.,Ltd. | Electronic system with learning mechanism and method of operation thereof, and non-volatile computer readable storage medium |
JP2017175259A (en) * | 2016-03-22 | 2017-09-28 | Kddi株式会社 | Radio terminal, server, control method and communication system |
JP2018092626A (en) * | 2016-11-28 | 2018-06-14 | タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited | System and method for offloading robotic functions to network edge-augmented clouds |
WO2021100546A1 (en) * | 2019-11-20 | 2021-05-27 | 富士フイルム株式会社 | Artificial intelligence processing system, upload management device, method, and program |
WO2021260839A1 (en) * | 2020-06-24 | 2021-12-30 | 日本電信電話株式会社 | Information processing device, information processing method, and program |
JP2022009740A (en) * | 2018-08-03 | 2022-01-14 | 日本電信電話株式会社 | Control system and control method |
CN114510002A (en) * | 2020-11-17 | 2022-05-17 | 丰田自动车株式会社 | Information processing device, information processing method, recording medium having information processing program recorded thereon, and information processing system |
JP7263580B1 (en) | 2022-02-14 | 2023-04-24 | ソフトバンク株式会社 | Server system and vehicle |
-
2013
- 2013-02-26 JP JP2013035769A patent/JP2014164568A/en active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016126801A (en) * | 2014-12-31 | 2016-07-11 | 三星電子株式会社Samsung Electronics Co.,Ltd. | Electronic system with learning mechanism and method of operation thereof, and non-volatile computer readable storage medium |
JP2017175259A (en) * | 2016-03-22 | 2017-09-28 | Kddi株式会社 | Radio terminal, server, control method and communication system |
JP2018092626A (en) * | 2016-11-28 | 2018-06-14 | タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited | System and method for offloading robotic functions to network edge-augmented clouds |
JP2022009740A (en) * | 2018-08-03 | 2022-01-14 | 日本電信電話株式会社 | Control system and control method |
JP7208560B2 (en) | 2018-08-03 | 2023-01-19 | 日本電信電話株式会社 | Control system and control method |
WO2021100546A1 (en) * | 2019-11-20 | 2021-05-27 | 富士フイルム株式会社 | Artificial intelligence processing system, upload management device, method, and program |
WO2021260839A1 (en) * | 2020-06-24 | 2021-12-30 | 日本電信電話株式会社 | Information processing device, information processing method, and program |
CN114510002A (en) * | 2020-11-17 | 2022-05-17 | 丰田自动车株式会社 | Information processing device, information processing method, recording medium having information processing program recorded thereon, and information processing system |
JP2022080171A (en) * | 2020-11-17 | 2022-05-27 | トヨタ自動車株式会社 | Information processing device, information processing method, information processing program, and information processing system |
JP7371609B2 (en) | 2020-11-17 | 2023-10-31 | トヨタ自動車株式会社 | Information processing device, information processing method, information processing program, and information processing system |
JP7263580B1 (en) | 2022-02-14 | 2023-04-24 | ソフトバンク株式会社 | Server system and vehicle |
JP2023117867A (en) * | 2022-02-14 | 2023-08-24 | ソフトバンク株式会社 | Server system and vehicle |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2014164568A (en) | Terminal device, distributed processing method, distributed processing program, and distributed processing system | |
CN101593133B (en) | Method and device for load balancing of resources of virtual machine | |
JP6478976B2 (en) | Battery consumption analysis and prediction of wireless devices | |
US20210042578A1 (en) | Feature engineering orchestration method and apparatus | |
CN110891093A (en) | Method and system for selecting edge computing node in delay sensitive network | |
AU2013281104B2 (en) | Application-provided context for potential action prediction | |
CN107908465A (en) | The method for scheduling task of big data platform | |
US10108522B1 (en) | Sampling technique to adjust application sampling rate | |
JP2009237859A (en) | Virtual machine management system | |
KR20140096784A (en) | Method for migrating software of micro server based and device supporting the same | |
CN105302641A (en) | Node scheduling method and apparatus in virtual cluster | |
CN112463367A (en) | Method and system for optimizing performance of storage system, electronic equipment and storage medium | |
KR20220042928A (en) | A method of implementing an self-organizing network for a plurality of access network devices and an electronic device performing the same | |
JP6690546B2 (en) | Communication system, communication device, communication method, and recording medium | |
CN104268004A (en) | Virtual machine migration method under cloud computing operation system | |
US20210133211A1 (en) | Adaptive Usage of Storage Resources Using Data Source Models and Data Source Representations | |
Wang et al. | Edge computing for artificial intelligence | |
JP5979185B2 (en) | Operation management apparatus, operation management system, information processing method, and operation management program | |
US10216606B1 (en) | Data center management systems and methods for compute density efficiency measurements | |
KR102227644B1 (en) | Method for measuring workload by learning on micro data center environment | |
CN113886746A (en) | Page loading method, device, equipment and medium | |
CN113904940A (en) | Resource adjusting method and device, electronic equipment and computer readable storage medium | |
CN114416326A (en) | Big data control method, device, control system and readable storage medium | |
Jägemar et al. | Automatic message compression with overload protection | |
Huaijun et al. | Research and implementation of mobile cloud computing offloading system based on Docker container |