Table 2 ILP-based problem statement for peer-dependent scheduling and allocation scheme.

From: Peer-driven task scheduling and resource allocation for enhanced performance in industrial IoT systems

Component

Mathematical formulation

Description

Decision variables

\({x}_{ij}\in \left\{\text{0,1}\right\}\)

\({y}_{ij}\in \left\{\text{0,1}\right\}\)

\({C}_{i}\in {\mathbb{Z}}^{+}\)

\({x}_{ij}=1\) if task \({T}_{i}\) is assigned to processor \({P}_{j}\)

\({y}_{ij}=1 \text{if task }{T}_{j}\) depends on task \({T}_{i}\)

Objective function

\(min\sum_{i=1}^{n}{C}_{i}\,or\,\text{min}\,{max}_{i}{C}_{i}\)

Minimize total completion time or makespan

Constraint 1: task assignment

\(\sum_{j=1}^{m}{x}_{ij}=1 {\forall }_{i}\epsilon \{1,\dots .,n\}\)

Each task is assigned to exactly one processor

Constraint 2: peer dependency

\({C}_{i}\ge {C}_{i}+{t}_{i}-M\left(1-{y}_{ij}\right) \forall (i,j)\in D\)

Task \({T}_{j}\) must execute after dependent task \({T}_{i}\); M is a large constant

Constraint 3: resource limitation

\(\sum_{i=1}^{n}{{r}_{i}x}_{ij}\le {R}_{j} {\forall }_{j}\epsilon \{1,\dots .,m\}\)

Total resource usage must not exceed capacity of each processor

Constraint 4: execution time bounds

\({C}_{i}\ge\) \({t}_{i}\) \({\forall }_{i}\)

Each task’s completion time must be at least its execution time

Constraint 5: binary nature

\({x}_{ij},{y}_{ij}\in\) \(\left\{\text{0,1}\right\}\)

Binary decisions for assignment and dependencies