Interweaving Real-Time Jobs with Energy Harvesting to Maximize Throughput

12/14/2022
āˆ™
by   Baruch Schieber, et al.
āˆ™
0
āˆ™

Motivated by baterryless IoT devices, we consider the following scheduling problem. The input includes n unit time jobs š’„ = {J_1, ā€¦, J_n}, where each job J_i has a release time r_i, due date d_i, energy requirement e_i, and weight w_i. We consider time to be slotted; hence, all time related job values refer to slots. Let T=max_i{d_i}. The input also includes an h_t value for every time slot t (1 ā‰¤ t ā‰¤ T), which is the energy harvestable on that slot. Energy is harvested at time slots when no job is executed. The objective is to find a feasible schedule that maximizes the weight of the scheduled jobs. A schedule is feasible if for every job J_j in the schedule and its corresponding slot t_j, t_jā‰  t_j' if jā‰ j', r_j ā‰¤ t_j ā‰¤ d_j, and the available energy before t_j is at least e_j. To the best of our knowledge, we are the first to consider the theoretical aspects of this problem. In this work we show the following. (1) A polynomial time algorithm when all jobs have identical r_i, d_i and w_i. (2) A 1/2-approximation algorithm when all jobs have identical w_i but arbitrary r_i and d_i. (3) An FPTAS when all jobs have identical r_i and d_i but arbitrary w_i. (4) Reductions showing that all the variants of the problem in which at least one of the attributes r_i, d_i, or w_i are not identical for all jobs are NP-Hard.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset