KR101730271B1 - Method for optimal task distribution considering energy consumption fairness between mobile devices - Google Patents

Method for optimal task distribution considering energy consumption fairness between mobile devices Download PDF

Info

Publication number
KR101730271B1
KR101730271B1 KR1020150182240A KR20150182240A KR101730271B1 KR 101730271 B1 KR101730271 B1 KR 101730271B1 KR 1020150182240 A KR1020150182240 A KR 1020150182240A KR 20150182240 A KR20150182240 A KR 20150182240A KR 101730271 B1 KR101730271 B1 KR 101730271B1
Authority
KR
South Korea
Prior art keywords
task
terminals
terminal
processing
energy
Prior art date
Application number
KR1020150182240A
Other languages
Korean (ko)
Inventor
문승현
김상선
신민호
Original Assignee
한국과학기술원
명지대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원, 명지대학교 산학협력단 filed Critical 한국과학기술원
Priority to KR1020150182240A priority Critical patent/KR101730271B1/en
Application granted granted Critical
Publication of KR101730271B1 publication Critical patent/KR101730271B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

A method for distributing a task according to an embodiment of the present invention comprises the steps of: collecting a parameter for distributing a task from a plurality of terminals; calculating an optimum distribution ratio for each terminal based on a parameter value by collecting the parameter from the plurality of terminals; and dividing the task based on the calculated optimum distribution ratio of the task to allocate the divided task to each terminal.

Description

복수의 모바일 단말간 에너지 소모 형평성을 고려한 태스크 최적 분배 기법{METHOD FOR OPTIMAL TASK DISTRIBUTION CONSIDERING ENERGY CONSUMPTION FAIRNESS BETWEEN MOBILE DEVICES}[0001] METHOD FOR OPTIMAL TASK DISTRIBUTION [0002] CONSIDERING ENERGY CONSUMPTION FAIRNESS BETWEEN MOBILE DEVICES [

아래의 설명은 태스크 분산 처리 기술에 관한 것으로, 복수의 모바일 단말간 에너지 소모 형평성을 고려한 태스크 최적 분배 기법에 관한 것이다.
The following description relates to task distributed processing technology and relates to a task optimal distribution method considering energy consumption equilibrium among a plurality of mobile terminals.

다수의 모바일 단말을 이용하여 태스크를 분산처리 시, 소요시간을 최소화 하기 위해 태스크를 모바일 단말에 적절히 분배해야 한다. 모바일 단말의 사용 가능한 에너지(배터리)는 태스크의 분산 처리시 사용되는 모든 모바일 단말에 있어서 중요한 자원이다. When distributing tasks using multiple mobile terminals, tasks should be appropriately distributed to mobile terminals in order to minimize the time required. The available energy (battery) of the mobile terminal is an important resource for all mobile terminals used in the distributed processing of tasks.

하지만 종래의 기술들은 소요시간을 최소화 하는 것에 초점을 맞추고 있으며, 모바일 단말의 중요한 자원인 사용 가능한 에너지(배터리)소모의 형평성을 고려하지 않고 있다. However, the prior art focuses on minimizing the time required and does not consider the equity of the available energy (battery) consumption which is an important resource of the mobile terminal.

한국공개특허 제10-2008-0024681호는 분산처리스시템에서의 태스크 할당방법 및 시스템에 관하여 개시하고 있다. 상기 특허는 상호의존적인 전압조절 기능을 가진 프로세서를 여러 개 포함하는 분산처리 시스템에서 효율적인 태스크 할당을 통하여 적은 양의 에너지로 같은 성능을 내는 방법을 제안하고 있을 뿐이 다.Korean Patent Laid-Open No. 10-2008-0024681 discloses a task allocation method and system in a distributed processing system. The patent only proposes a method of achieving the same performance with a small amount of energy through efficient task allocation in a distributed processing system including several processors having interdependent voltage regulation function.

이에 따라 모바일 단말의 특수성이 제한된 이용가능 에너지를 태스크 분산 처리에 동원하는 모든 단말을 공평하게 사용하면서 총 태스크 처리시간을 최소화하는 기술을 제안하기로 한다.
Therefore, we propose a technique that minimizes the total task processing time by fairly using all the terminals that mobilize the limited available energy of the mobile terminal for task distribution processing.

일 실시예에 따른 태스크 분배 시스템은 태스크의 분산 처리를 수행함에 따라 사용되는 모바일 단말들간의 에너지 소모의 형평성을 고려하여 태스크의 처리 소요시간을 최소화하는 방안을 제안한다.
The task distribution system according to an exemplary embodiment of the present invention proposes a method of minimizing the task processing time in consideration of the equity of energy consumption among the mobile terminals used in the distributed processing of tasks.

일 실시예에 따른 태스크(Task)를 분산 처리하는 방법은, 복수의 단말들로부터 상기 태스크의 분산 처리를 위한 파라미터를 수집하는 단계; 상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 단계; 및 상기 계산된 태스크의 최적의 분배 비율에 기초하여 상기 태스크를 분할하고, 상기 분할된 태스크를 상기 각각의 단말에게 할당하는 단계를 포함할 수 있다.A method of distributing tasks according to an embodiment includes: collecting parameters for distributed processing of the tasks from a plurality of terminals; Calculating an optimal distribution ratio of the task to each terminal based on a parameter value according to collecting the parameters from the plurality of terminals; And dividing the task based on an optimal distribution ratio of the calculated task, and allocating the divided task to each of the terminals.

일측에 따르면, 상기 복수의 단말들로부터 상기 태스크의 분산 처리를 위한 파라미터를 수집하는 단계는, 상기 각각의 단말에서 단위 태스크를 처리할 때 소모되는 에너지 소모량, 상기 각각의 단말의 상대적 태스크 처리속도 및 상기 각각의 단말에서 이용 가능한 에너지를 수집하는 단계를 포함할 수 있다.According to one aspect of the present invention, the step of collecting the parameters for the distributed processing of the tasks from the plurality of terminals may include calculating an amount of energy consumed in processing the unit tasks in the respective terminals, a relative task processing speed of the respective terminals, And collecting energy available at each of the terminals.

또 다른 일측에 따르면, 상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 단계는, 상기 복수의 단말들을 이용하여 상기 태스크를 분산 처리하기 위하여 목적함수를 이용하여 상기 복수의 단말들의 상대적 태스크 처리 속도와 상기 각각의 단말의 태스크 할당 비율에 기초하여 0과 1사이의 값이 되도록 정규화하는 단계를 포함할 수 있다.According to another aspect of the present invention, the step of calculating an optimal distribution ratio of the task to each terminal based on a parameter value by collecting the parameters from the plurality of terminals comprises: And performing normalization so as to be a value between 0 and 1 on the basis of the relative task processing rate of the plurality of terminals and the task allocation ratio of each terminal using an objective function to perform distributed processing.

또 다른 일측에 따르면, 상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 단계는, 상기 태스크의 분산 처리가 수행되는 단말들 간의 소비되는 에너지의 형평성을 보장하기 위하여 상기 태스크의 분산 처리시 사용되는 모든 단말들 사이의 에너지 소비차이가 특정값을 초과하지 않을 수 있다. According to another aspect of the present invention, the step of calculating an optimal distribution ratio of the task to each terminal based on the parameter value by collecting the parameters from the plurality of terminals includes: The energy consumption difference between all the terminals used in the distribution processing of the task may not exceed a certain value in order to ensure the equity of energy consumed between the terminals.

또 다른 일측에 따르면, 상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 단계는, 상기 각각의 단말의 현재 남아있는 에너지 잔량에서 기설정된 한계에너지를 제외한 에너지가 이용 가능할 수 있다. According to another aspect of the present invention, the step of calculating an optimal distribution ratio of the task to each terminal based on a parameter value as the parameter is collected from the plurality of terminals includes: The energy may be available except for the predetermined limit energy.

또 다른 일측에 따르면, 상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 단계는, 상기 목적함수를 선형 프로그램(Linear Programming)으로 해결하기 위하여 상기 목적함수를 상기 선형 프로그램으로 해결이 가능한 형태로 전환할 수 있다. According to another aspect of the present invention, the step of calculating an optimal distribution ratio of the task to each terminal based on a parameter value by collecting the parameters from the plurality of terminals comprises the steps of: It is possible to convert the objective function into a form that can be solved by the linear program.

또 다른 일측에 따르면, 상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 단계는, 상기 각각의 단말에 할당되는 태스크의 비율의 총합은 1이 되고, 상기 각각의 단말에 할당되는 태스크의 비율은 0 이상일 수 있다. According to another aspect of the present invention, the step of calculating an optimal distribution ratio of the task to each terminal based on a parameter value by collecting the parameters from the plurality of terminals may include calculating a ratio of a task allocated to each terminal Is 1, and the ratio of the tasks assigned to each terminal may be 0 or more.

일 실시예에 따른 태스크(Task)를 분산 처리하는 시스템은, 복수의 단말들로부터 상기 태스크의 분산 처리를 위한 파라미터를 수집하는 파라미터 수집부(Parameter Collector); 상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 선형 프로그램 최적화부(LP Optimizer); 및 상기 계산된 태스크의 최적의 분배 비율에 기초하여 상기 태스크를 분할하고, 상기 분할된 태스크를 상기 각각의 단말에게 할당하는 태스크 스케줄러(Task Scheduler)를 포함할 수 있다.A system for distributing tasks according to an exemplary embodiment includes a parameter collector for collecting parameters for distributed processing of the tasks from a plurality of terminals; A linear program optimizer (LP Optimizer) for calculating an optimum distribution ratio of the task to each terminal based on a parameter value according to collecting parameters from the plurality of terminals; And a task scheduler for dividing the task based on an optimal distribution ratio of the calculated task and assigning the divided task to each of the terminals.

일측에 따르면, 상기 파라미터 수집부는, 상기 각각의 단말에서 단위 태스크를 처리할 때 소모되는 에너지 소모량, 상기 각각의 단말의 상대적 태스크 처리속도 및 상기 각각의 단말에서 이용 가능한 에너지를 수집할 수 있다. According to one aspect, the parameter collecting unit may collect energy consumption consumed when processing a unit task at each terminal, relative task processing speed of each terminal, and energy available at each terminal.

또 다른 일측에 따르면, 상기 선형 프로그램 최적화부는, 상기 복수의 단말들을 이용하여 상기 태스크를 분산 처리하기 위하여 목적함수를 이용하여 상기 복수의 단말들의 상대적 태스크 처리 속도와 상기 각각의 단말의 태스크 할당 비율에 기초하여 0과 1사이의 값이 되도록 정규화할 수 있다.According to another aspect of the present invention, the linear program optimizing unit optimizes the relative task processing speed of the plurality of terminals and the task allocation ratio of each of the terminals using the objective function to distribute the tasks using the plurality of terminals It can be normalized to be a value between 0 and 1 on the basis.

또 다른 일측에 따르면, 상기 선형 프로그램 최적화부는, 상기 태스크의 분산 처리가 수행되는 단말들 간의 소비되는 에너지의 형평성을 보장하기 위하여 상기 태스크의 분산 처리시 사용되는 모든 단말들 사이의 에너지 소비차이가 특정값을 초과하지 않을 수 있다. According to another aspect of the present invention, the linear program optimizing unit optimizes the energy consumption of all the terminals used in the distributed processing of the tasks to ensure the fairness of the energy consumed between the terminals to which the distributed processing of the tasks is performed, Value may not be exceeded.

또 다른 일측에 따르면, 상기 선형 프로그램 최적화부는, 상기 각각의 단말의 현재 남아있는 에너지 잔량에서 기설정된 한계에너지를 제외한 에너지가 이용 가능할 수 있다. According to another aspect of the present invention, the linear program optimizing unit may be able to use energy excluding a predetermined threshold energy from the remaining energy remaining amount of each of the terminals.

또 다른 일측에 따르면, 상기 선형 프로그램 최적화부는, 상기 목적함수를 선형 프로그램(Linear Programming)으로 해결하기 위하여 상기 목적함수를 상기 선형 프로그램으로 해결이 가능한 형태로 전환할 수 있다. According to another aspect of the present invention, the linear program optimization unit may convert the objective function into a form that can be solved by the linear program in order to solve the objective function by linear programming.

또 다른 일측에 따르면, 상기 선형 프로그램 최적화부는, 상기 각각의 단말에 할당되는 태스크의 비율의 총합은 1이 되고, 상기 각각의 단말에 할당되는 태스크의 비율은 0 이상일 수 있다.
According to another aspect of the present invention, in the linear program optimization unit, the sum of the ratios of the tasks assigned to the respective terminals is 1, and the ratio of the tasks assigned to the respective terminals may be 0 or more.

일 실시예에 따른 태스크 분배 시스템은 Linear Programming(LP) 기법을 이용하여 단말간 에너지 소모 형평성을 고려한 태스크 처리 소요시간을 최소화하는 태스크 분배 기법을 제안할 수 있다.
A task distribution system according to an exemplary embodiment can propose a task distribution technique that minimizes task processing time considering energy consumption equilibrium among terminals using a linear programming (LP) technique.

도 1은 일 실시예에 따른 태스크 분산 처리 시스템의 구성을 설명하기 위한 블록도이다.
도 2 및 도 3은 일 실시예에 따른 태스크 분산 처리 시스템의 동작을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 태스크 분산 처리 시스템의 태스크 분산 처리 방법을 설명하기 위한 흐름도이다.
도 5는 일 실시에에 따른 태스크 분산 처리 시스템의 태스크 분산 처리 예를 설명하기 위한 도면이다.
1 is a block diagram for explaining a configuration of a task distributed processing system according to an embodiment.
FIG. 2 and FIG. 3 are diagrams for explaining the operation of the task distributed processing system according to one embodiment.
4 is a flowchart for explaining a task distributed processing method of a task distributed processing system according to an embodiment.
5 is a diagram for explaining an example of task distribution processing of the task distributed processing system according to one embodiment.

이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.

태스크 분산 처리 시스템에서 복수의 단말들은 다양한 토폴로지가 고려됨에 따라 마스터 단말(100)이 될 수 있고, 슬레이브 단말(110)이 될 수도 있다. 이때, 마스터 단말(100)과 슬레이브 단말(110)은 관리자에 의하여 직접 설정될 수 있으며, 복수의 조건 및 환경에 기초하여 마스터 단말(100)과 슬레이브 단말(110)이 자동으로 결정될 수 있다. 또한, 다양한 상황에 따라 마스터 단말(100)과 슬레이브 단말(110)이 자동으로 변동되어 각각의 역할을 수행하게 된다. 아래의 실시예에서는 마스터 단말(100)과 슬레이브 단말(110)이 결정된 후, 태스크를 분산 처리하는 기술에 대하여 설명하기로 한다. In the task distributed processing system, a plurality of terminals may be a master terminal 100 or a slave terminal 110 in consideration of various topologies. At this time, the master terminal 100 and the slave terminal 110 can be directly set by the administrator, and the master terminal 100 and the slave terminal 110 can be automatically determined based on a plurality of conditions and environments. In addition, the master terminal 100 and the slave terminal 110 are automatically changed according to various situations and perform their respective roles. In the following embodiment, description will be made on a technique of distributing tasks after the master terminal 100 and the slave terminal 110 are determined.

도 1은 일 실시예에 따른 태스크 분산 처리 시스템의 구성을 설명하기 위한 블록도이다. 1 is a block diagram for explaining a configuration of a task distributed processing system according to an embodiment.

태스크 분산 처리 시스템은 복수의 단말들을 이용하여 태스크의 분산 처리를 수행하기 위한 것으로, 각각의 단말(100, 110)은 파라미터 수집부(Parameter Collector)(103), 선형 프로그램 최적화부(Linear Programming Optimizer)(102) 및 태스크 스케줄러(Task Scheduler)(101)를 포함할 수 있다. 또한, 각각의 단말(100, 110)은 파라미터를 수집하는 Resource Manager(112) 및 할당된 태스크를 처리하는 Worker(111)를 더 포함할 수 있다. Each of the terminals 100 and 110 includes a Parameter Collector 103, a Linear Programming Optimizer 103, and a Linear Programming Optimizer 103. The task collective processing system is a task distributing system for distributing tasks using a plurality of terminals. A scheduler 102 and a task scheduler 101. [ Each of the terminals 100 and 110 may further include a Resource Manager 112 for collecting parameters and a worker 111 for processing an assigned task.

단말은 전자 기기의 일종으로, 예를 들면, 스마트폰(smart phone), 휴대폰, 네비게이션, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 태블릿 PC 등과 같이 이동형 단말일 수 있다. 일례로 단말은 무선 또는 유선 통신 방식을 이용하여 네트워크를 통해 다른 단말과 통신할 수 있다. 실시예들에서는 단말을 모바일 단말이라고 가정하여 설명하기로 한다. 단말에는 태스크 분산 처리를 위한 애플리케이션이 설치되어 구동될 수 있다.The terminal may be a portable terminal such as a smart phone, a mobile phone, a navigation device, a personal digital assistant (PDA), a portable multimedia player (PMP), a tablet PC, or the like. For example, a terminal can communicate with another terminal through a network using a wireless or wired communication scheme. In the embodiments, it is assumed that the terminal is a mobile terminal. An application for task distribution processing may be installed and driven in the terminal.

Resource Manager(112)는 파라미터로부터 태스크 분산 처리를 위한 파라미터에 대한 값을 추출할 수 있다. Resource Manager(112)는 추출된 파라미터값인 단위 태스크를 처리할 때 소모되는 에너지 소모량, 상대적 태스크 처리속도 및 이용 가능한 에너지를 파라미터 수집부(103)로 전달할 수 있다.The Resource Manager 112 may extract a value for a parameter for task distribution processing from the parameter. The Resource Manager 112 may transmit the amount of consumed energy, the relative task processing speed, and the available energy to the parameter collecting unit 103 when processing the unit task, which is an extracted parameter value.

파라미터 수집부(103)는 복수의 단말들로부터 태스크 분산 처리를 위한 파라미터에 따른 파라미터 값을 Resource Manager(112)로부터 전달받을 수 있다. 파라미터 수집부(103)는 슬레이브 단말(110)들로부터 파라미터를 수집함에 따른 파라미터값, 예를 들면, 단위 태스크를 처리할 때 소모되는 에너지 소모량, 상대적 태스크 처리속도 및 이용 가능한 에너지를 수집할 수 있다. 파라미터 수집부(103)는 슬레이브 단말(110)들로부터 수집된 파라미터에 따른 파라미터 값을 선형 프로그램 최적화부(102)로 전달할 수 있다. The parameter collecting unit 103 can receive parameter values according to parameters for task distribution processing from a plurality of terminals from the Resource Manager 112. [ The parameter collecting unit 103 may collect parameter values as the parameters are collected from the slave terminals 110, for example, the energy consumption consumed when processing the unit tasks, the relative task processing speed, and the available energy . The parameter collecting unit 103 may transmit the parameter values according to the parameters collected from the slave terminals 110 to the linear program optimizing unit 102.

선형 프로그램 최적화부(102)는 슬레이브 단말(110)들로부터 수집된 파라미터값을 기반으로 각각의 슬레이브 단말(110)에 대한 태스크의 최적의 분배 비율을 계산할 수 있다. 선형 프로그램 최적화부(102)는 슬레이브 단말(110)들을 이용하여 태스크를 분산 처리하기 위하여 목적함수를 이용하여 슬레이브 단말(110)들의 상대적 태스크 처리 속도와 각각의 슬레이브 단말(110)의 태스크 할당 비율에 기초하여 0과 1사이의 값이 되도록 정규화할 수 있다. The linear program optimizer 102 may calculate an optimal distribution ratio of tasks for each slave terminal 110 based on the parameter values collected from the slave terminals 110. [ The linear program optimizing unit 102 optimizes the relative task processing speed of the slave terminals 110 and the task allocation ratio of each slave terminal 110 using the objective function to distribute the task using the slave terminals 110 It can be normalized to be a value between 0 and 1 on the basis.

선형 프로그램 최적화부(102)에서 태스크의 분산 처리가 수행되는 단말들 간의 소비되는 에너지 형평성을 보장하기 위하여 태스크의 분산 처리시 사용되는 모든 단말들 사이의 에너지 소비차는 특정값을 초과하지 않을 수 있다. 선형 프로그램 최적화부(102)는 각각의 슬레이브 단말(110)의 현재 남아있는 에너지 잔량에서 기설정된 한계에너지를 제외한 에너지를 이용 가능할 수 있다. 선형 프로그램 최적화부(102)는 목적함수를 선형 프로그램으로 해결하기 위하여 목적함수를 선형 프로그램이 해결이 가능한 형태로 전환할 수 있다. 선형 프로그램 최적화부(102)에서 각각의 슬레이브 단말(110)에 해당되는 태스크의 비율의 총합은 1이 되고, 각각의 슬레이브 단말(110)에 해당되는 태스크의 비율은 0이상일 수 있다. 선형 프로그램 최적화부(102)는 계산된 태스크의 할당 비율을 태스크 스케줄러(101)로 전달할 수 있다. The energy consumption difference between all the terminals used in the task distribution processing may not exceed a certain value in order to guarantee the energy fairness among the terminals in which the task scheduling is performed in the linear program optimizing unit 102. [ The linear program optimizing unit 102 may be able to use energy excluding the preset limit energy from the remaining remaining energy amount of each slave terminal 110. [ The linear program optimizing unit 102 may convert the objective function into a form in which the linear program can solve in order to solve the objective function with a linear program. The sum of the ratios of the tasks corresponding to each slave terminal 110 in the linear program optimizing unit 102 is 1 and the ratio of the tasks corresponding to each slave terminal 110 can be 0 or more. The linear program optimizer 102 may transmit the computed allocation ratio of the task to the task scheduler 101.

태스크 스케줄러(101)는 계산된 태스크의 최적의 분배 비율에 기초하여 태스크를 분할하고, 분할된 태스크를 각각의 슬레이브 단말(110)에게 할당할 수 있다. 태스크 스케줄러(101)는 각각의 슬레이브 단말(110)에게 태스크를 할당함에 따라 슬레이브 단말(110)의 Worker(111)에서 할당된 태스크를 전달받아 태스크를 처리할 수 있다. The task scheduler 101 may divide the task based on the calculated distribution ratio of the tasks and allocate the divided tasks to the respective slave terminals 110. [ The task scheduler 101 can receive a task assigned by the worker 111 of the slave terminal 110 and process the task by assigning the task to each slave terminal 110. [

일 실시예에 따른 태스크 분산 처리 시스템은 복수의 모바일 단말을 이용하여 태스크의 분산처리 시 사용되는 모바일 단말들간의 에너지 소모의 형평성을 고려하여 태스크 처리 소요시간을 최소화할 수 있다. The task distributed processing system according to an exemplary embodiment can minimize the task processing time in consideration of the equity of energy consumption among the mobile terminals used in the task distribution processing by using a plurality of mobile terminals.

도 2 및 도 3은 일 실시예에 따른 태스크 분산 처리 시스템의 동작을 설명하기 위한 도면이다. FIG. 2 and FIG. 3 are diagrams for explaining the operation of the task distributed processing system according to one embodiment.

태스크 분산 처리 시스템은 선형 프로그래밍 기법을 이용하여 다수의 모바일 단말을 이용하여 태스크의 분산 처리시 사용되는 모바일 단말들간의 에너지 소모의 형평성을 고려하여 태스크 처리 소요시간을 최소화하는 것을 수학적 모델로 모델링할 수 있다. The task distributed processing system can be modeled as a mathematical model that minimizes task processing time considering the energy consumption of mobile terminals used in distributed processing of tasks using multiple mobile terminals using linear programming technique have.

태스크 분산 처리 시스템은 마스터 단말(210)과 복수의 슬레이브 단말(210)간의 동작을 통하여 태스크의 분산 처리를 수행할 수 있다. 태스크 분산 처리 시스템은 태스크를 분산 처리하는 모바일 단말들로부터 태스크 분배 기법에 사용되는 파라미터를 수집하고, 수집된 파라미터를 이용하여 태스크 최적 분배 비율을 계산한 후, 태스크를 분할하여 각각의 단말에 할당할 수 있다. The task distributed processing system can perform task distribution processing through operations between the master terminal 210 and the plurality of slave terminals 210. [ The task distribution processing system collects the parameters used in the task distribution method from the mobile terminals that distribute the task, calculates the task optimal distribution ratio using the collected parameters, and allocates the task to each terminal .

마스터 단말(200)의 선형 프로그램 최적화부는 슬레이브 단말(210)로부터 수집된 파라미터 값을 전달받음에 따라 슬레이브 단말(210)에 대한 태스크의 최적의 분배 비율을 계산할 수 있다. 이때, 마스터 단말(200)은 모든 슬레이브 단말 간의 에너지 소모차가 f값 이하이면서 소요시간이 최소화되도록 태스크의 분배 비율을 계산할 수 있다. The linear program optimizer of the master terminal 200 can calculate the optimum distribution ratio of the task for the slave terminal 210 as it receives the parameter values collected from the slave terminal 210. [ At this time, the master terminal 200 can calculate the distribution ratio of the tasks such that the energy consumption difference between all the slave terminals is less than the f value and the time required is minimized.

선형 프로그램 최적화부는 n개의 모바일 단말을 이용하여 태스크를 분산 처리함에 있어서, 총합이 1이 되도록 정규화한i(1...n)번째 단말의 상대적 태스크 처리속도(Relative Throughput)을

Figure 112015124703658-pat00001
, 각각의 단말의 태스크 할당 비율을
Figure 112015124703658-pat00002
라고 할 때, 목적함수를 다음과 같이 나타낼 수 있다. The linear program optimization unit estimates the relative task throughput (relative throughput) of the i (1 ... n) th terminal normalized so that the sum becomes 1 in distributing the tasks using n mobile terminals
Figure 112015124703658-pat00001
, The task allocation ratio of each terminal is
Figure 112015124703658-pat00002
, The objective function can be expressed as follows.

Figure 112015124703658-pat00003
Figure 112015124703658-pat00003

이때, 목적함수에 복수 개의 제약조건이 부가될 수 있다. i(1...n)번째 단말이 단위 태스크를 처리할 때 소모되는 에너지를

Figure 112015124703658-pat00004
라고 할 때, 태스크의 분산 처리가 수행되는 슬레이브 단말들 간의 소비되는 에너지의 형평성을 보장하기 위해 분산 처리시 사용되는 모든 슬레이브 단말과 마스터 단말 간의 에너지 소비차이가 특정값 f(Fairness Threshold)을 초과하지 않아야 한다는 제약조건이 추가될 수 있다. At this time, a plurality of constraints may be added to the objective function. the energy consumed when the i (1 ... n) th terminal processes a unit task
Figure 112015124703658-pat00004
The energy consumption difference between all the slave terminals and the master terminal used in the distribution process does not exceed the specific value f (Fairness Threshold) in order to ensure the equity of the energy consumed between the slave terminals in which the task distribution processing is performed A constraint condition may be added.

제약조건 1:Constraint 1:

Figure 112015124703658-pat00005
Figure 112015124703658-pat00005

분산 처리될 총 태스크의 양을

Figure 112015124703658-pat00006
, 각각의 슬레이브 단말의 현재 남아있는 에너지 잔량에서 해당 단말의 사용자로부터 지정된 한계에너지를 제외한 이용 가능한 에너지를
Figure 112015124703658-pat00007
라 할 때, 각각의 슬레이브 단말은 상기 에너지만 이용 가능하므로 이에 대한 제약조건이 추가될 수 있다.The total amount of tasks to be distributed
Figure 112015124703658-pat00006
, The available energy excluding the specified limit energy from the user of the corresponding terminal in the remaining energy remaining amount of each slave terminal
Figure 112015124703658-pat00007
, Each slave terminal can use only the energy, so that a constraint condition can be added.

제약조건 2:Constraint 2:

Figure 112015124703658-pat00008
Figure 112015124703658-pat00008

Mini-max 문제 형태의 목적함수를 선형 프로그래밍(Linear Programming)으로 해결하기 위하여 선형 프로그래밍이 가능한 형태로 전환하는 제약조건이 추가될 수 있다. To solve the objective function of the mini-max problem form by linear programming, a constraint can be added to convert it into a form that can be linearly programmed.

제약조건 3:Constraint 3:

Figure 112015124703658-pat00009
Figure 112015124703658-pat00009

각각의 슬레이브 단말(210)에 할당되는 태스크의 비율의 총합은 1이어야 하므로 이에 대한 제약조건이 추가될 수 있다.The total sum of the ratios of the tasks allocated to the respective slave terminals 210 must be 1, and thus a constraint on this can be added.

제약조건 4:Constraint 4:

Figure 112015124703658-pat00010
Figure 112015124703658-pat00010

각각의 슬레이브 단말(210)에 할당되는 태스크의 비율은 0 이상이어야 하므로 이에 대한 제약조건이 추가될 수 있다.The ratio of the tasks assigned to each of the slave terminals 210 must be equal to or larger than 0, so that a constraint condition can be added.

제약조건 5:Constraint 5:

Figure 112015124703658-pat00011
Figure 112015124703658-pat00011

상기 기술한 목적함수와 제약조건을 고려하여 최적의 태스크 할당 문제를 선형 프로그래밍으로 다음과 같이 나타낼 수 있다.Considering the above objective function and constraint conditions, the optimal task assignment problem can be expressed as linear programming as follows.

Figure 112015124703658-pat00012
Figure 112015124703658-pat00012

이때,

Figure 112015124703658-pat00013
는 i(1...n)번째 단말이 단위 태스크를 처리할 때 소모되는 에너지,
Figure 112015124703658-pat00014
는 각각의 단말의 태스크 할당 비율, f는 지정함수(Fair Threshold),
Figure 112015124703658-pat00015
는 분산 처리될 총 태스크의 양,
Figure 112015124703658-pat00016
은 이용 가능한 에너지,
Figure 112015124703658-pat00017
는 i(1...n)번째 단말의 상대적 태스크의 처리속도를 나타낸다.At this time,
Figure 112015124703658-pat00013
Is the energy consumed when the i (1 ... n) th terminal processes a unit task,
Figure 112015124703658-pat00014
Is a task allocation ratio of each terminal, f is a designation function (Fair Threshold)
Figure 112015124703658-pat00015
Is the total amount of tasks to be distributed,
Figure 112015124703658-pat00016
Is the energy available,
Figure 112015124703658-pat00017
Represents the processing speed of the relative task of the i (1 ... n) th UE.

마스터 단말(200)은 상기 기술한 목적함수를 심플렉스 알고리즘(Simplex Algorithm)과 같은 LP solution을 이용하여 각각의 슬레이브 단말에 분배할 태스크의 비율을 계산할 수 있다. 이때, 심플렉스 알고리즘(Simplex Algorithm)은 선형계획 문제의 최적해를 구하는 알고리즘으로, 인접해있는 극단점들의 목적함수의 값을 계속 검토하여 최적해를 구하는 방법이다. 심플렉스 알고리즘은 "

Figure 112015124703658-pat00018
" 형태의 제약조건에만 이용 가능하므로 "
Figure 112015124703658-pat00019
"와 "
Figure 112015124703658-pat00020
" 형태의 제약조건을 가진 문제의 경우 Two-Phase Simplex Method으로 최적해를 구할 수 있다. Two-Phase Simplex Method심플렉스에서는 인위변수(Artificial Variable)가 도입되며, 이는 초기기저유용해(Initial Basic Feasible Solution)를 찾는데 이용된다. The master terminal 200 can calculate the ratio of the task to be distributed to each of the slave terminals using the LP solution such as the Simplex Algorithm. At this time, the Simplex Algorithm is an algorithm for finding an optimal solution of a linear programming problem. The optimal solution is obtained by continuously examining the value of an objective function of adjacent extreme points. The Simplex algorithm is "
Figure 112015124703658-pat00018
"Since it is available only for constraints of the form"
Figure 112015124703658-pat00019
"Wow "
Figure 112015124703658-pat00020
"Two-Phase Simplex Method Two-Phase Simplex Method In Artificial Variables, Artificial Variable is introduced, which is called Initial Basic Feasible Solution ).

마스터 단말(200)은 심플렉스 알고리즘을 이용하여 각각의 슬레이브 단말에 분배할 태스크의 비율을 계산할 수 있다. The master terminal 200 can calculate the ratio of the task to be distributed to each slave terminal using the simplex algorithm.

도 3을 참고하면, 마스터 단말(300)은 계산된 태스크 분배 비율에 기초하여 전체 태스크를 분할하여 각각의 슬레이브 단말(310)에 할당할 수 있다. 각각의 슬레이브 단말(310)은 할당된 태스크에 대한 처리를 수행할 수 있다. 이를 통하여 320과 같이 각각의 슬레이브 단말 간 에너지 소모차가 f값 이하이면서 소요 시간을 최소화시킬 수 있다. Referring to FIG. 3, the master terminal 300 can divide the entire tasks based on the calculated task distribution ratios and allocate them to the respective slave terminals 310. Each slave terminal 310 can perform processing for the assigned task. As a result, the energy consumption difference between each slave terminal is less than the f value and the time required can be minimized.

도 5를 참고하면, 태스크 분산 처리 시스템의 태스크 분산 처리 예를 설명하기 위한 도면이다. 도 5는 슬레이브 단말이 2인 경우에, 태스크 분산 처리 과정을 나타낸 것으로, 도 2 및 도 3에서 설명한 목적함수와 제약조건을 적용함에 따라 도 5와 같이 태스크 분산 처리를 위한 과정이 수행될 수 있다. 5 is a diagram for explaining an example of task distribution processing of the task distribution processing system. FIG. 5 shows a task distribution process when the slave terminal is 2, and a process for task distribution processing may be performed as shown in FIG. 5 by applying the objective function and the constraint condition described in FIGS. 2 and 3 .

도 4는 일 실시예에 따른 태스크 분산 처리 시스템의 태스크 분산 처리 방법을 설명하기 위한 흐름도이다.4 is a flowchart for explaining a task distributed processing method of a task distributed processing system according to an embodiment.

태스크 분산 처리 방법은 태스크 분산 처리 시스템에 의하여 수행될 수 있으며, 태스크 분산 처리 시스템에 대한 설명은 도 1 내지 도 3을 참고하기로 한다. The task distributed processing method can be performed by the task distributed processing system, and the task distributed processing system will be described with reference to FIG. 1 to FIG.

단계(410)에서 태스크 분산 처리 시스템은 복수의 단말들로부터 태스크의 분산 처리를 위한 파라미터를 수집할 수 있다. 태스크 분산 처리 시스템은 슬레이브 단말이 단위 태스크를 처리할 때 소모되는 에너지, 각각의 슬레이브 단말의 상대적 태스크 처리속도, 각각의 슬레이브 단말에서 이용 가능한 에너지 값을 수집할 수 있다. In step 410, the task distribution processing system may collect parameters for distributed processing of tasks from a plurality of terminals. The task distributed processing system can collect the energy consumed when the slave terminal processes the unit task, the relative task processing speed of each slave terminal, and the energy value available in each slave terminal.

단계(420)에서 태스크 분산 처리 시스템은 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 태스크의 최적의 분배 비율을 계산할 수 있다. In step 420, the task distribution processing system may calculate an optimal distribution ratio of tasks for each terminal based on parameter values as parameters are collected from a plurality of terminals.

태스크 분산 처리 시스템은 슬레이브 단말로부터 수집된 파라미터 값을 전달받음에 따라 슬레이브 단말에 대한 태스크의 최적의 분배 비율을 계산할 수 있다. 이때, 태스크 분산 처리 시스템은 모든 슬레이브 단말 간의 에너지 소모차이가 f값 이하이면서 소요시간이 최소화되도록 태스크의 분배 비율을 계산할 수 있다. The task distributed processing system can calculate the optimum distribution ratio of the task to the slave terminal according to the received parameter values collected from the slave terminal. At this time, the task distribution processing system can calculate the task allocation ratio such that the energy consumption difference between all the slave terminals is less than the f value and the required time is minimized.

태스크 분산 처리 시스템은 n개의 모바일 단말을 이용하여 태스크를 분산 처리함에 있어서, 총합이 1이 되도록 정규화한i(1...n)번째 단말의 상대적 태스크 처리속도(Relative Throughput)을

Figure 112015124703658-pat00021
, 각각의 단말의 태스크 할당 비율을
Figure 112015124703658-pat00022
라고 할 때, 목적함수를 다음과 같이 나타낼 수 있다. In the distributed task scheduling system, the relative task processing speed (Relative Throughput) of the i (1 ... n) -th UE normalized so that the sum becomes 1 in distributing the tasks using n mobile terminals
Figure 112015124703658-pat00021
, The task allocation ratio of each terminal is
Figure 112015124703658-pat00022
, The objective function can be expressed as follows.

Figure 112015124703658-pat00023
Figure 112015124703658-pat00023

이때, 목적함수에 복수 개의 제약조건이 부가될 수 있다. i(1...n)번째 단말이 단위 태스크를 처리할 때 소모되는 에너지를

Figure 112015124703658-pat00024
라고 할 때, 태스크의 분산 처리가 수행되는 슬레이브 단말들 간의 소비되는 에너지의 형평성을 보장하기 위해 분산 처리시 사용되는 모든 슬레이브 단말과 마스터 단말 간의 에너지 소비차이가 특정값 f(Fairness Threshold)을 초과하지 않아야 한다는 제약조건이 추가될 수 있다. At this time, a plurality of constraints may be added to the objective function. the energy consumed when the i (1 ... n) th terminal processes a unit task
Figure 112015124703658-pat00024
The energy consumption difference between all the slave terminals and the master terminal used in the distribution process does not exceed the specific value f (Fairness Threshold) in order to ensure the equity of the energy consumed between the slave terminals in which the task distribution processing is performed A constraint condition may be added.

제약조건 1:Constraint 1:

Figure 112015124703658-pat00025
Figure 112015124703658-pat00025

분산 처리될 총 태스크의 양을

Figure 112015124703658-pat00026
, 각각의 슬레이브 단말의 현재 남아있는 에너지 잔량에서 해당 단말의 사용자로부터 지정된 한계에너지를 제외한 이용 가능한 에너지를
Figure 112015124703658-pat00027
라 할 때, 각각의 슬레이브 단말은 상기 에너지만 이용 가능하므로 이에 대한 제약조건이 추가될 수 있다.The total amount of tasks to be distributed
Figure 112015124703658-pat00026
, The available energy excluding the specified limit energy from the user of the corresponding terminal in the remaining energy remaining amount of each slave terminal
Figure 112015124703658-pat00027
, Each slave terminal can use only the energy, so that a constraint condition can be added.

제약조건 2:Constraint 2:

Figure 112015124703658-pat00028
Figure 112015124703658-pat00028

Mini-max 문제 형태의 목적함수를 선형 프로그래밍(Linear Programming)으로 해결하기 위하여 선형 프로그래밍이 가능한 형태로 전환하는 제약조건이 추가될 수 있다. To solve the objective function of the mini-max problem form by linear programming, a constraint can be added to convert it into a form that can be linearly programmed.

제약조건 3:Constraint 3:

Figure 112015124703658-pat00029
Figure 112015124703658-pat00029

각각의 슬레이브 단말에 할당되는 태스크의 비율의 총합은 1이어야 하므로 이에 대한 제약조건이 추가될 수 있다.The total sum of the ratios of the tasks assigned to each slave terminal must be 1, so that a constraint can be added thereto.

제약조건 4:Constraint 4:

Figure 112015124703658-pat00030
Figure 112015124703658-pat00030

각각의 슬레이브 단말에 할당되는 태스크의 비율은 0 이상이어야 하므로 이에 대한 제약조건이 추가될 수 있다.The ratio of the tasks allocated to each slave terminal must be equal to or larger than 0, and thus a constraint condition may be added thereto.

제약조건 5:Constraint 5:

Figure 112015124703658-pat00031
Figure 112015124703658-pat00031

단계(430)에서 태스크 분산 처리 시스템은 계산된 태스크의 최적의 분배 비율에 기초하여 태스크를 분할하고, 분할된 태스크를 각각의 단말에게 할당할 수 있다. In step 430, the task distribution processing system may partition the task based on the optimal distribution ratio of the calculated task and assign the divided task to each terminal.

일 실시예에 따른 태스크 분배 시스템은 태스크의 분산 처리시 모바일 단말간 에너지 소모의 형평성을 고려하면서 태스크 처리 소요시간을 최소화하기 위하여 Linear Programing 기법을 이용하여 문제를 수학적으로 모델링하고, 이를 소프트웨어로 개발하기 위한 모듈을 설계한다.The task distribution system according to one embodiment mathematically models a problem using a linear programming technique in order to minimize the task processing time while considering the equity of the energy consumption between the mobile terminals in the distributed processing of the task, The module is designed.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (14)

태스크(Task)를 분산 처리하는 방법에 있어서,
복수의 단말들로부터 상기 태스크의 분산 처리를 위한 파라미터를 수집하는 단계;
상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 단계; 및
상기 계산된 태스크의 최적의 분배 비율에 기초하여 상기 태스크를 분할하고, 상기 분할된 태스크를 상기 각각의 단말에게 할당하는 단계
를 포함하고,
상기 복수의 단말들로부터 상기 태스크의 분산 처리를 위한 파라미터를 수집하는 단계는,
상기 각각의 단말에서 단위 태스크를 처리할 때 소모되는 에너지 소모량, 상기 각각의 단말의 상대적 태스크 처리속도 및 상기 각각의 단말에서 이용 가능한 에너지를 수집하는 단계
를 포함하고,
상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 단계는,
목적함수(
Figure 112016118840711-pat00037
)를 이용하여 상기 복수의 단말들의 상대적 태스크 처리 속도와 상기 각각의 단말의 태스크 할당 비율에 기초하여 0과 1사이의 값이 되도록 정규화하되, 상기 태스크의 분산 처리시 사용되는 모든 단말들 사이의 에너지 소비차이가 특정값 이하인 제약 조건 및 상기 각각의 단말의 현재 남아있는 에너지 잔량에서 기설정된 한계에너지를 제외한 에너지를 이용하는 제약 조건을 추가함으로써 상기 태스크의 분산 처리가 수행되는 단말들 간의 소비되는 에너지의 형평성을 보장하는 단계
를 포함하고,
상기 목적함수에서 총합이 1이 되도록 정규화한i(1...n)번째 단말의 상대적 태스크 처리속도(Relative Throughput)을
Figure 112016118840711-pat00038
, 각각의 단말의 태스크 할당 비율을
Figure 112016118840711-pat00039
나타내는
태스크 분산 처리 방법.
A method for distributing tasks, the method comprising:
Collecting parameters for distributed processing of the tasks from a plurality of terminals;
Calculating an optimal distribution ratio of the task to each terminal based on a parameter value according to collecting the parameters from the plurality of terminals; And
Dividing the task based on an optimal distribution ratio of the calculated task, and allocating the divided task to each of the terminals
Lt; / RTI >
Wherein the step of collecting parameters for the distributed processing of the tasks from the plurality of terminals comprises:
Collecting energy consumption consumed when processing a unit task in each terminal, a relative task processing speed of each terminal, and energy available in each terminal
Lt; / RTI >
Wherein the step of calculating an optimal distribution ratio of the task to each terminal based on a parameter value by collecting parameters from the plurality of terminals comprises:
The objective function (
Figure 112016118840711-pat00037
) Is normalized to be a value between 0 and 1 based on the relative task processing rate of the plurality of terminals and the task allocation ratio of each terminal, and the energy between all the terminals used in the distribution processing of the task A constraint condition in which the consumption difference is equal to or less than a specific value, and a constraint condition that uses energy excluding the predetermined threshold energy from the remaining energy remaining amount of each of the terminals, ≪ / RTI >
Lt; / RTI >
The relative task processing speed (Relative Throughput) of the i (1 ... n) th terminal normalized so that the sum becomes 1 in the objective function
Figure 112016118840711-pat00038
, The task allocation ratio of each terminal is
Figure 112016118840711-pat00039
representative
Task distributed processing method.
삭제delete 삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 단계는,
상기 목적함수를 선형 프로그램(Linear Programming)으로 해결하기 위하여 상기 목적함수를 상기 선형 프로그램으로 해결이 가능한 형태로 전환하는
것을 특징으로 하는 태스크 분산 처리 방법.
The method according to claim 1,
Wherein the step of calculating an optimal distribution ratio of the task to each terminal based on a parameter value by collecting parameters from the plurality of terminals comprises:
In order to solve the objective function by linear programming, the objective function is converted into a form that can be solved by the linear program
Wherein the task distribution processing method comprises:
제1항에 있어서,
상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 단계는,
상기 각각의 단말에 할당되는 태스크의 비율의 총합은 1이 되고, 상기 각각의 단말에 할당되는 태스크의 비율은 0 이상인
것을 특징으로 하는 태스크 분산 처리 방법.
The method according to claim 1,
Wherein the step of calculating an optimal distribution ratio of the task to each terminal based on a parameter value by collecting parameters from the plurality of terminals comprises:
The sum of the ratios of the tasks allocated to the respective terminals is 1, and the ratio of the tasks allocated to the respective terminals is 0 or more
Wherein the task distribution processing method comprises:
태스크(Task)를 분산 처리하는 시스템에 있어서,
복수의 단말들로부터 상기 태스크의 분산 처리를 위한 파라미터를 수집하는 파라미터 수집부(Parameter Collector);
상기 복수의 단말들로부터 파라미터를 수집함에 따른 파라미터값을 기반으로 각각의 단말에 대한 상기 태스크의 최적의 분배 비율을 계산하는 선형 프로그램 최적화부(LP Optimizer); 및
상기 계산된 태스크의 최적의 분배 비율에 기초하여 상기 태스크를 분할하고, 상기 분할된 태스크를 상기 각각의 단말에게 할당하는 태스크 스케줄러(Task Scheduler)
를 포함하고,
상기 파라미터 수집부는,
상기 각각의 단말에서 단위 태스크를 처리할 때 소모되는 에너지 소모량, 상기 각각의 단말의 상대적 태스크 처리속도 및 상기 각각의 단말에서 이용 가능한 에너지를 수집하고,
상기 선형 프로그램 최적화부는,
목적함수()를 이용하여 상기 복수의 단말들의 상대적 태스크 처리 속도와 상기 각각의 단말의 태스크 할당 비율에 기초하여 0과 1사이의 값이 되도록 정규화하되, 상기 태스크의 분산 처리시 사용되는 모든 단말들 사이의 에너지 소비차이가 특정값 이하인 제약 조건 및 상기 각각의 단말의 현재 남아있는 에너지 잔량에서 기설정된 한계에너지를 제외한 에너지를 이용하는 제약 조건을 추가함으로써 상기 태스크의 분산 처리가 수행되는 단말들 간의 소비되는 에너지의 형평성을 보장하는 것
을 포함하고,
상기 목적함수에서 총합이 1이 되도록 정규화한i(1...n)번째 단말의 상대적 태스크 처리속도(Relative Throughput)을
Figure 112016118840711-pat00041
, 각각의 단말의 태스크 할당 비율을
Figure 112016118840711-pat00042
나타내는
태스크 분산 처리 시스템.
1. A system for distributing tasks, comprising:
A parameter collector for collecting parameters for the task distribution processing from a plurality of terminals;
A linear program optimizer (LP Optimizer) for calculating an optimum distribution ratio of the task to each terminal based on a parameter value according to collecting parameters from the plurality of terminals; And
A Task Scheduler for dividing the task based on an optimal distribution ratio of the calculated task and allocating the divided task to each of the terminals,
Lt; / RTI >
Wherein the parameter collecting unit comprises:
An energy consumption amount consumed when processing a unit task in each terminal, a relative task processing speed of each terminal, and an energy available in each terminal,
Wherein the linear program optimization unit comprises:
The objective function ( ) Is normalized to be a value between 0 and 1 based on the relative task processing rate of the plurality of terminals and the task allocation ratio of each terminal, and the energy between all the terminals used in the distribution processing of the task A constraint condition in which the consumption difference is equal to or less than a specific value, and a constraint condition that uses energy excluding the predetermined threshold energy from the remaining energy remaining amount of each of the terminals, To guarantee
/ RTI >
The relative task processing speed (Relative Throughput) of the i (1 ... n) th terminal normalized so that the sum becomes 1 in the objective function
Figure 112016118840711-pat00041
, The task allocation ratio of each terminal is
Figure 112016118840711-pat00042
representative
Task distributed processing system.
삭제delete 삭제delete 삭제delete 삭제delete 제8항에 있어서,
상기 선형 프로그램 최적화부는,
상기 목적함수를 선형 프로그램(Linear Programming)으로 해결하기 위하여 상기 목적함수를 상기 선형 프로그램으로 해결이 가능한 형태로 전환하는
것을 특징으로 하는 태스크 분산 처리 시스템.
9. The method of claim 8,
Wherein the linear program optimization unit comprises:
In order to solve the objective function by linear programming, the objective function is converted into a form that can be solved by the linear program
Wherein the task distribution processing system comprises:
제8항에 있어서,
상기 선형 프로그램 최적화부는,
상기 각각의 단말에 할당되는 태스크의 비율의 총합은 1이 되고, 상기 각각의 단말에 할당되는 태스크의 비율은 0 이상인
것을 특징으로 하는 태스크 분산 처리 시스템.
9. The method of claim 8,
Wherein the linear program optimization unit comprises:
The sum of the ratios of the tasks allocated to the respective terminals is 1, and the ratio of the tasks allocated to the respective terminals is 0 or more
Wherein the task distribution processing system comprises:
KR1020150182240A 2015-12-18 2015-12-18 Method for optimal task distribution considering energy consumption fairness between mobile devices KR101730271B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150182240A KR101730271B1 (en) 2015-12-18 2015-12-18 Method for optimal task distribution considering energy consumption fairness between mobile devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150182240A KR101730271B1 (en) 2015-12-18 2015-12-18 Method for optimal task distribution considering energy consumption fairness between mobile devices

Publications (1)

Publication Number Publication Date
KR101730271B1 true KR101730271B1 (en) 2017-04-25

Family

ID=58703406

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150182240A KR101730271B1 (en) 2015-12-18 2015-12-18 Method for optimal task distribution considering energy consumption fairness between mobile devices

Country Status (1)

Country Link
KR (1) KR101730271B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102484004B1 (en) * 2022-08-23 2022-12-30 재단법인대구경북과학기술원 Method and apparatus for performing task offloading between terminal and satellite in mec network

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006053654A (en) 2004-08-10 2006-02-23 Olympus Corp Job allocation device
JP2007264794A (en) * 2006-03-27 2007-10-11 Fujitsu Ltd Parallel distributed processing program and system
JP2007299401A (en) 2006-04-27 2007-11-15 Internatl Business Mach Corp <Ibm> Method and system for executing fair share scheduling based on individual user's resource usage and tracking thereof
JP2008123205A (en) 2006-11-10 2008-05-29 Internatl Business Mach Corp <Ibm> Job execution method, job execution system, and job execution program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006053654A (en) 2004-08-10 2006-02-23 Olympus Corp Job allocation device
JP2007264794A (en) * 2006-03-27 2007-10-11 Fujitsu Ltd Parallel distributed processing program and system
JP2007299401A (en) 2006-04-27 2007-11-15 Internatl Business Mach Corp <Ibm> Method and system for executing fair share scheduling based on individual user's resource usage and tracking thereof
JP2008123205A (en) 2006-11-10 2008-05-29 Internatl Business Mach Corp <Ibm> Job execution method, job execution system, and job execution program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102484004B1 (en) * 2022-08-23 2022-12-30 재단법인대구경북과학기술원 Method and apparatus for performing task offloading between terminal and satellite in mec network

Similar Documents

Publication Publication Date Title
Badri et al. Energy-aware application placement in mobile edge computing: A stochastic optimization approach
EP3170076A1 (en) System and method for electronic work prediction and dynamically adjusting server resources
US8799916B2 (en) Determining an allocation of resources for a job
Jung et al. Synchronous parallel processing of big-data analytics services to optimize performance in federated clouds
EP3673370B1 (en) System and method for distributed resource requirement and allocation
CN107295090B (en) Resource scheduling method and device
US20110295811A1 (en) Changing a number of disk agents to backup objects to a storage device
US9705335B2 (en) Method and system for allocating energy
CN105446979A (en) Data mining method and node
US10360074B2 (en) Allocating a global resource in a distributed grid environment
JP2010277589A (en) Data center batch job quality of service control
CN104484220A (en) Method and device for dispatching dynamic resources of virtual cluster
KR101471749B1 (en) Virtual machine allcoation of cloud service for fuzzy logic driven virtual machine resource evaluation apparatus and method
CN114072766A (en) System and method for digital labor intelligent organization
Mechalikh et al. PureEdgeSim: A simulation framework for performance evaluation of cloud, edge and mist computing environments
US20150277980A1 (en) Using predictive optimization to facilitate distributed computation in a multi-tenant system
CN105808341B (en) A kind of methods, devices and systems of scheduling of resource
JP2017514247A5 (en)
JP2021504780A (en) Application Prioritization for Automatic Diagonal Scaling in a Distributed Computing Environment
KR20200091789A (en) Platform for concurrent execution of gpu operations
Delavar et al. A synthetic heuristic algorithm for independent task scheduling in cloud systems
Gawali et al. Standard deviation based modified cuckoo optimization algorithm for task scheduling to efficient resource allocation in cloud computing
CN105824705A (en) Task distribution method and electronic equipment
CN115134371A (en) Scheduling method, system, equipment and medium containing edge network computing resources
Wu et al. On workflow scheduling for end-to-end performance optimization in distributed network environments

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant