17.04.2015 Views

DARPA ULTRALOG Final Report - Industrial and Manufacturing ...

DARPA ULTRALOG Final Report - Industrial and Manufacturing ...

DARPA ULTRALOG Final Report - Industrial and Manufacturing ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Manuscript for IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS 9<br />

problem is NP-hard on the number of components in general. The increase of the number of<br />

tasks <strong>and</strong> consideration of alternative algorithms make the problem even harder. Moreover, there<br />

can be large number of nodes in our networks.<br />

Though it may be possible to use some available heuristic algorithms from the job shop<br />

scheduling problem by taking into account alternative algorithms, our scheduling problem has a<br />

particular characteristic, i.e., the number of tasks for each component can be large. Though the<br />

increase of the number of tasks adds more complexity, it can also lead us to develop an efficient<br />

heuristic programming model. In this section, we characterize an optimal resource allocation by<br />

analyzing the impacts of the largeness <strong>and</strong> subsequently build a mathematical programming<br />

model solvable in polynomial time.<br />

3.1 Optimal resource allocation<br />

Consider current time t=0 <strong>and</strong> assume that each component uses a value mode common to all<br />

the tasks (i.e. pure strategy). We will discuss the optimality of the pure strategy later in this<br />

subsection. We define Load Index LI i which represents component i’s total CPU time required to<br />

process its tasks. As a component needs to process its own root tasks as well as incoming tasks<br />

from its predecessors, its number of tasks L i is identified as in (3), where i denotes the immediate<br />

predecessors of component i. Then, LI i is represented as in (4).<br />

∑<br />

L i = rti<br />

+ La<br />

(3)<br />

a∈i<br />

LI = L f v )<br />

(4)<br />

i<br />

To provide theoretical foundation of optimal resource allocation policy, we convert a network<br />

into a network with tasks having infinitesimal processing times. Each root task is divided into r<br />

infinitesimal tasks <strong>and</strong> each f i (v i ) is replaced with f i (v i )/r. Then, the load index of each component<br />

i<br />

i ( i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!