• No results found

Concluding Remarks

If Vi is a task block in S, then

7.4 Concluding Remarks

In this chapter, we have given polynomial-time algorithms for the total weighted error problem and the maximum weighted error problem. Our algorithms are for a single processor, parallel and identical processors, and uniform processors.

Choi et al. [20] have given a faster algorithm to obtain an approximate value for the maximum weighted error problem on a single processor. Their algorithm runs in time O(n log n+ cn), where

c= min 

q : Error Bound≤ max{wi× oi} 2q



The Error Bound is the bound on the difference between the approximate value and the optimal value. Recently, Wan et al. [16] extended their algorithm to the case of parallel and identical processors, and the case of uniform processors. They obtained algorithms that run in time O(cn2log2n) for parallel and identical processors, and O(cmn3) for uniform processors.

References

1. K.-J. Lin, S. Natarajan, and J. W. S. Liu, Concord: a distributed system making use of imprecise results, in Proc. of COMPSAC ’87, Tokyo, Japan, 1987.

2. K.-J. Lin, S. Natarajan, and J. W. S. Liu, Imprecise results: utilizing partial computations in real-time systems, in Proc. of the 8th Real-Time Systems Symposium, San Francisco, CA, 1987.

3. K.-J. Lin, S. Natarajan, and J. W. S. Liu, Scheduling real-time, periodic job using imprecise results, in Proc. of the 8th Real-Time Systems Symposium, San Francisco, CA, 1987.

4. W.-K. Shih, J. W. S. Liu, J.-Y. Chung, and D. W. Gillies, Scheduling tasks with ready times and deadlines to minimize average error, ACM Operating Systems Review, July 1989.

5. W. A. Horn, Some simple scheduling algorithms, Naval Research Logistics Quarterly, 21, 177–185, 1974.

6. J. Blazewicz, Scheduling preemptible tasks on parallel processors with information loss, Technique et Science Informatiques, 3, 415–420, 1984.

7. J. Blazewicz and G. Finke, Minimizing weighted execution time loss on identical and uniform processors, Information Processing Letters, 24, 259–263, 1987.

8. J. Y-T. Leung, Minimizing total weighted error for imprecise computation tasks and related problems, in J. Y-T. Leung (ed), Handbook of Scheduling: Algorithms, Models, and Performance Analysis, CRC Press, Boca Raton, FL, 2004, pp. 34-1–34-16.

9. C. N. Potts and L. N. Van Wassenhove, Single machine scheduling to minimize total late work, Operations Research, 40, 586–595, 1992.

10. C. N. Potts and L. N. Van Wassenhove, Approximation algorithms for scheduling a single machine to minimize total late work, Operations Research Letters, 11, 261–266, 1992.

11. W.-K. Shih, J. W. S. Liu, and J.-Y. Chung, Algorithms for scheduling imprecise computations with timing constraints, SIAM Journal on Computing, 20, 537–552, 1991.

12. J. Y-T. Leung, V. K. M. Yu, and W.-D. Wei, Minimizing the weighted number of tardy task units, Discrete Applied Mathematics, 51, 307–316, 1994.

13. A. Federgruen and H. Groenevelt, Preemptive scheduling of uniform machines by ordinary network flow techniques, Management Science, 32, 341–349, 1986.

14. J. B. Orlin, A faster strongly polynomial minimum cost flow algorithm, in Proc. of 20th ACM Symposium on Theory of Computing, 377–387, 1988.

15. K. I-J. Ho, J. Y-T. Leung, and W.-D. Wei, Minimizing maximum weighted error for imprecise computation tasks, Journal of Algorithms, 16, 431–452, 1994.

16. G. Wan, J. Y-T. Leung, and M. L. Pinedo, Scheduling imprecise computation tasks on uniform processors, Working paper.

17. H. N. Gabow and R. E. Tarjan, A linear-time algorithm for a special case of disjoint set union, Journal of Computer and System Science, 30, 209–221, 1985.

18. R. E. Tarjan, Data Structures and Network Algorithms, Society for Industrial and Applied Mathematics, Philadelphia, PA, 1983.

19. R. McNaughton, Scheduling with deadlines and loss functions, Management Science, 6, 1–12, 1959. 20. K. Choi, G. Jung, T. Kim, and S. Jung, Real-time scheduling algorithm for minimizing maximum weighted error with O(N log N+ cN) complexity, Information Processing Letters, 67, 311–315, 1998.

8

Imprecise

Computation Model:

Bicriteria and Other

Related Problems

Joseph Y-T. Leung New Jersey Institute of Technology

8.1 Introduction ... 8-1 8.2 Total w-Weighted Error with Constraints ... 8-2 8.3 Maximum w-Weighted Error with Constraints ... 8-3 8.4 0/1-Constraints ... 8-6

Feasibility Test • Total Error • Number of Imprecisely Scheduled Tasks

8.5 Conclusions ... 8-10

8.1 Introduction

In the last chapter, we have given algorithms for the total w-weighted error and the maximum w-weighted error problems. In this chapter, we will consider bicriteria scheduling problems. In the bicriteria scheduling problems, we are concerned with (1) minimizing the total w-weighted error, subject to the constraint that the maximum w-weighted error is minimum and (2) minimizing the maximum w-weighted error, subject to the constraint that the total w-weighted error is minimum. For a given task system TS, we use ww(TS) to denote the minimum total w-weighted error, subject to the constraint that the maximum w-weighted error is minimum. Similarly, we use ϒw

w(TS) to denote the maximum w-weighted error, subject to the constraint that the total w-weighted error is minimum. In Sections 8.2 and 8.3, we shall give algorithms to compute w

w(TS) and ϒww(TS), respectively.

The Imprecise Computation Model has also been studied under the 0/1-constraint, where each optional subtask is either fully executed or totally discarded. With the 0/1-constraint, two problems have been studied: (1) minimize the total error and (2) minimize the number of imprecisely scheduled tasks (i.e., tasks whose optional subtasks have been discarded). The 0/1-constraint is motivated by some practical applications. In real life, many tasks can be implemented by either a fast or a slow algorithm, with the slow algorithm producing better-quality results than the fast one. Owing to deadline constraints, it may not be possible to meet the deadline of every task if each task were to execute the slow version. Thus, the problem of scheduling tasks with primary version (slow algorithm) and alternate version (fast algorithm) can be reduced to one of scheduling with 0/1-constraint. The execution time of the fast algorithm is the mandatory execution time, while the execution time of the slow algorithm is the total execution time (i.e., mandatory plus optional execution time).

In this chapter, we shall be concerned with scheduling imprecise computation tasks with 0/1-constraint on a single processor. In classical scheduling theory, Lawler [1] has given an algorithm to solve the problem

of preemptively scheduling a set of tasks with release dates on a single processor so as to minimize the weighted number of tardy tasks. In this problem, each task has a processing time, weight, release date, and due date. A task cannot start until its release date and it is expected to be complete by its due date. Preemption is allowed. A task is tardy if it is not completed by its due date. The problem is to find a schedule with the minimum weighted number of tardy tasks. Lawler’s algorithm runs in O(nk2W2) time, where n is the number of tasks, k is the number of release dates, and W is the total weights of the tasks. In the following we will show that Lawler’s algorithm can be used to solve the above two 0/1-constraint scheduling problems on a single processor.

Consider the problem of minimizing the total error. Let TS be a set of n imprecise computation tasks and let σ=ni=1oi. For each task Ti, we create two tasks, an M-task with execution time miand weight σ+ 1 and an O-task with execution time oiand weight oi. Both tasks have release date riand due date ¯di. It is clear that a schedule for the M- and O-tasks that minimizes the weighted number of tardy tasks is also a feasible schedule that minimizes the total error for TS. Using Lawler’s algorithm, such a schedule can be found in O(n5σ2) time. Hence it can be solved in pseudopolynomial time. We note that the problem of minimizing the total error is NP-hard in the ordinary sense [2].

Now consider the problem of minimizing the number of imprecisely scheduled tasks. Let TS be a set of n imprecise computation tasks. For each task Ti, we create two tasks—an M-task with execution time miand weight n+ 1 and an O-task with execution time oiand weight 1. Both tasks have release date ri and due date ¯di. It is clear that a schedule for the M- and O-tasks that minimizes the weighted number of tardy tasks is also a feasible schedule that minimizes the number of imprecisely scheduled tasks for TS. Using Lawler’s algorithm, such a schedule can be found in O(n7) time.

Since the running times of the above algorithms are unacceptably high, there is a need for fast approxi- mation algorithms. Ho et al. [3] gave two approximation algorithms, both of which run in O(n2) time. The first one, the largest-optional-execution-time-first algorithm, is used to minimize the total error. It has been shown [3] that the total error produced by the algorithm is at most three times that of the optimal solution and the bound is tight. The second algorithm, the smallest-optional-execution-time-first algorithm, is used to minimize the number of imprecisely scheduled tasks. It was shown [3] that the number of imprecisely scheduled tasks produced by the algorithm is at most two times that of an optimal solution and the bound is tight.

In this chapter, we will present these two approximation algorithms in Section 8.4. In Section 8.4.1, we will give an algorithm to test if a set of tasks is feasible. In Section 8.4.2, we will present the largest- optional-execution-time-first algorithm and show that it has a worst-case bound of 3. In Section 8.4.3, we will present the smallest-optional-execution-time-first algorithm and show that it has a worst-case bound of 2. Finally, we will draw some concluding remarks in the last section.