PAPER
Object-Based Multimedia Scheduling Based on Bipartite Graphs
Huey-Min SUN†a), Student Member, Chia-Mei CHEN††, and LihChyun SHU†††, Nonmembers
SUMMARY In this study, we propose an object-based multimedia model for specifying the QoS (quality of service) requirements, such as the maximum data-dropping rate or the maximum data-delay rate. We also present a resource allocation model, called the net-profit model, in which the satisfaction of user’s QoS requirements is measured by the ben-efit earned by the system. Based on the net-profit model, the system is rewarded if it can allocate enough resources to a multimedia delivery re-quest and fulfill the QoS requirements specified by the user. At the same time, the system is penalized if it cannot allocate enough resources to a multimedia delivery request. We first investigate the problem of how to allocate resources efficiently, so that the QoS satisfaction is maximized. However, the net-profit may be distributed unevenly among the multimedia delivery requests. Thus, the second problem discusses how to allocate the resource efficiently so that the net-profit difference is minimized between any two multimedia requests. A dynamic programming based algorithm is proposed to find such an optimal solution with the minimum net-profit differences.
key words: scheduling, imprecise computation, object-based multimedia, delay, drop, quality-of-service (QoS), optimization, bipartite matching 1. Introduction
The scheduling problem with QoS requirements is an im-portant issue for multimedia delivery across bandwidth con-strained and limited networks. Commercial feasibility de-mands that a number of users may be accommodated in multimedia delivery with a basic level of QoS given a fixed bandwidth communication channel. The channel is required to support as many users as possible. An Internet-access rental store, such as Internet coffee shop or computer class-room rental company, offers a number of computers with au-dio/video functions for customer use within the store which has fixed bandwidth connection to the Internet. Different customer may have different on-line multimedia playback requests on the network with a limited bandwidth. Rental computers may be lent on hourly based with different, but pre-defined, QoS levels. Recent advances in multimedia technology emerge a new paradigm, subscribers can choose videos from a remote server and download the video streams through a network. The multimedia server can collect the requests of subscribers as a batch of requests. Therefore, when the bandwidth is fixed and the multimedia requests
Manuscript received January 22, 2004. Manuscript revised June 14, 2004.
†The author is with the Dept. of Information Management,
Chang Jung University, Tainan County, Taiwan 711, ROC.
††The author is with the Dept. of Information Management,
Na-tional Sun Yat-Set University, Kaohsiung, Taiwan 804, ROC.
†††The author is with the Dept. of Accounting, National Cheng
Kung University, Tainan City, Taiwan 701, ROC. a) E-mail: [email protected]
are known a priori, off-line scheduling is adaptive. This pa-per aims at the environment where the bandwidth can be reserved to satisfy a basic level of QoS but is limited.
In such networks, users may tolerate certain degree of QoS degradation, e.g., less important multimedia data can be dropped or delayed. Partial data dropping can reduce the bandwidth consumption, while some important data for multimedia playback might be missed. Transmission delay allows more data to be transmitted with loose QoS require-ments, although it might be unacceptable for real-time mul-timedia data. Most research considers either the data drop-ping policy or the transmission delay policy in the frame-based multimedia model such as MPEG-1, MPEG-2 and JPEG video. In this paper, we try to show that the data drop-ping and transmission delay policies are suitable for differ-ent types of multimedia requests.
Our previous study [1] indicated that the hybrid policy with the data dropping and transmission delay could work better than the one with only dropping or delay. In the ex-perimental results, when the available bandwidth ratio was downed to 77%, the delay time of the hybrid policy was im-proved about 15% compared to that of the pure delay policy, and the data loss ratio of the hybrid policy was improved about 10% compared to that of the pure dropping policy.
Normally, a mix of various types of multimedia re-quests is transmitted over the networks with limited band-width. Therefore, adopting both of these two policies might deliver better performance and utilization. We propose an object-based multimedia model for describing the QoS re-quirements, including the length, the importance, the dead-line, and the delay bound of a multimedia delivery stream, and derive optimized scheduling algorithms which consider both the dropping and delay policies.
An object-based multimedia, such as MPEG-4 format-ted, can be composed of video, audio, image, text, and syn-chronization data objects. It provides a standardized venue for scene composition, grouping primitive objects in order to form composite objects. In the MPEG-4 standard [2], the coding of text, image, audio and video objects is supported with spatial and temporal scalability. Thus, such objects might be allowed partial data dropped or delayed for unim-portant objects, such as background. However, imunim-portant objects need to be delivered in time, otherwise the playback quality is severely degraded. Therefore, we apply the con-cept of imprecise computation on the proposed problem, in which some mandatory objects have to be delivered on time and some objects are allowed to have partial data dropping Copyright c 2005 The Institute of Electronics, Information and Communication Engineers
or delay under the limited bandwidth networks.
Much of QoS work focuses on call admission control and resource allocation. Call admission control attempts to maintain a desired QoS level by limiting the number of ac-tive calls in a system. Call admission control often does not guarantee QoS. Resource allocation manages resources in finer granularity. For example, resource allocation scheme can reserve a portion of resource for a particular request for a specific period of time, while call admission control only controls the number of existing requests in a system. We as-sume that all mandatory objects are schedulable but all ob-jects may not be schedulable in subsequent sections. Hence, we address the resource allocation issues with limited re-sources in this paper.
1.1 Problem Description and Objective
In this paper, we propose a measurement model, the net-profit model, where net-profit is defined as total reward minus total penalty. Based on the net-profit model, the system gains reward if it can allocate enough resources to a mul-timedia delivery request and fulfill the QoS requirements as specified by the user. At the same time, the system gets penalized if it cannot allocate enough resources to a mul-timedia delivery request. The paper proposes the hybrid scheduling policies with dropping and delaying based on the proposed net-profit model.
Our problems are two-folds: one is to find a schedule with maximum total profit. The other concerns the net-profit distribution among the multimedia delivery requests. The goal is to find an optimal schedule in which the maxi-mum net-profit difference of all requests is the minimum. 1.2 Outline
The paper is organized as follows. Section 2 presents the re-lated works. Section 3 states the proposed object-based mul-timedia model and problems. We make use of the variable weighted bipartite matching algorithm to solve the prob-lem of finding the maximum total net-profit including the mandatory objects in Section 4. Moreover, we find also an optimal schedule to minimize the net-profit difference of all requests in Section 5. The experiment results are shown in Section 6. The conclusions are drawn in Section 7.
2. Related Works
Multimedia applications might not be feasible for schedul-ing all the requests to meet their QoS requirements in the networks with limited bandwidth. Two major policies, drop-ping and delaying, were studied in the existing literature.
Although the solutions for pure dropping and delay-ing policies were widely employed [3]–[6], only recently researchers began to reconcile the dropping and the delay policies in order to satisfy the QoS requirements. Lee and Hamdi [7] proposed a method for constructing a packet dropping mechanism that made decisions as to when it was
necessary to drop packets while still not violating any QoS guarantees. This was achieved by employing a traffic regu-lator that can provide bounded packet dropping, and a traf-fic scheduler that could provide bounded packet delay. The above approach was based on a modified version of the clas-sical EDF (earliest deadline first) algorithm to minimize the packet loss rate, while our approach uses the bipartite graph algorithm to maximize the satisfaction of QoS requirements. Goel et al. [8] proposed a resource management service to integrate QoS adaptation and network/CPU scheduling mechanisms. The approach was based on a method of a classical feedback control system to reduce packet drop and to bound packet delay. Its goal was to deliver the highest quality flow to the receiver within a bounded delay. These methods delay the playback under the delay bound of qual-ity of service. Nevertheless, the delay bound is only set to be a constant due to the frame-based multimedia model. That is, every frame has the same delay bound. With this model, it is hard to suggest which frames to drop or delay given the specification for user requirements when the available bandwidth is not enough for transmitting all frames.
Some researchers [9], [10] examined a differentiated service model of simple integrated media access (SIMA) to satisfy the diverse needs of the Internet users. The SIMA model offers relative QoS for two service classes (real-time and non-real-time) which both contain eight drop prece-dence levels. When real-time service is requested, the SIMA network attempts to minimize the delay and delay variation by using two queues in that the real-time buffer has a higher priority than the non-real-time buffer. Although the model combines delay and drop prioritization, it cannot bound the delay.
In order to improve the user-specified QoS, we pro-pose an object-based multimedia model. Some previous re-search on the object-based multimedia model presented a concept of multimedia objects as components of an object-based model for multimedia system in [11]. Herpel [12] sur-veyed an object description framework in MPEG-4 to man-age the content presentation and the resource requirement. Chen [13] implemented an editor for the object description framework in MPEG-4. Eleftheriadis et al. implemented the Mild Flavor in [25] to employ the object descriptor tool to use the MPEG-4 file as a container for packaging different objects into one file. The object content information tool in the Mild Flavor is also extensively used in order to provide ancillary identification information associated with each ob-ject in the MP4 file. Such information includes the descrip-tions and the requirements of the content author.
These techniques support the content authors and re-source managers such that the properties of a multimedia object can be derived based on the hierarchical structure in the scene. Thus, we propose an object-based multimedia model to describe a multimedia request. In the model, the QoS requirements of a multimedia object can be specified, such as the length, the importance, the deadline, and the delay bound of the object and other related QoS parame-ters. Based on the content description techniques described
above, the proposed object-based model can be practical in a multimedia server.
In an object-based multimedia application, not every object can meet its timing constraint with the limited net-work resource. To achieve graceful degradation given the acceptable user QoS, the user can enable the objects, such as video, image, text or audio, to enlist the property of the partial data dropping according to user’s requirement. The quality of these objects is not significantly affected af-ter partial data dropping. To achieve stricaf-ter QoS require-ment, we employ the mandatory concept of the imprecise scheduling model [14], [15]. Imprecise computation tech-niques provide scheduling flexibility by trading off result quality to satisfy transmission deadlines. These techniques use a basic strategy to minimize the negative effects of tim-ing faults and leave the less important tasks unfinished, if necessary. In the imprecise scheduling model, each task is divided into two subtasks: mandatory and optional. These tasks are dependent because the optional subtask becomes ready for transmission as soon as the mandatory subtask has been completed. A valid schedule that every mandatory task completes by its deadline is called a feasible schedule. Un-der the constraint, called feasible mandatory constraint [16], [17], all mandatory tasks are assumed to be schedulable by way of the resource reservation. Therefore, the mandatory subtask must be processed and completed by the deadline before the optional one. The optional subtask, which refines the result, could be left unfinished at its deadline although it would incur QoS degradation. This imprecise computa-tion technique adapts the object-based multimedia to the soft real-time communication in the limited network resource because it can guarantee the schedulability of all mandatory objects to satisfy basic QoS requirements, which we deem necessary with the property of mandatory in our model.
Based on the mandatory concept, some objects must play an important role as base objects. These objects are not allowed partial data dropping because the object may be a base layer for video display like MPEG-4 FGS(Fine Grained Scalable) [18]. The FGS framework requires two encoders: the base-layer and the enhancement layer. The base-layer can ensure the basic acceptable QoS require-ments of the user, while the enhancement layer can refine the result. Thus, the objects important to the user must be enabled to the mandatory property for satisfying the require-ments.
In brief, there are several differences between our model and the imprecise computation model. In our model, all objects are classified as partial data dropping and manda-tory data and independent of each other. We allow users to describe QoS requirements of the partial dropping ob-ject with the importance, the deadline and the delay bound. Moreover, the mandatory object is described with the impor-tance and the deadline. We allow the object delays except for the mandatory ones, that is we drop the partial data when the finish time of the partial data dropping object exceeds the delay bound. In the imprecise computation model, each task is decomposed into two tasks: the mandatory subtask and
the optional subtask. These tasks are not considered delay situations and dependent because the optional subtask be-comes ready for transmission when the mandatory subtask is completed. Besides, our model also considers the penalty function of the delay.
3. System Model
3.1 Object-Based Multimedia Model
In the proposed object-based multimedia model, a delivery request contains a multimedia request, and consists of mul-tiple scenes to play, which is to be transmitted. A scene is composed of various types of multimedia objects, such as video, audio, image, text, and synchronization data objects, as illustrated in Fig. 1. A video/audio stream can be divided into several video/audio objects. An image/text data object represents an image/text data file. A synchronization data object stores the synchronization information about other types of data objects. The synchronization information is used to reconstruct a scene or a composite set. We term a basic multimedia object unit a primitive object. We as-sume that each primitive object can be separately encoded, stored, and transmitted and that each primitive object oihas
the following a priori information: (1) the size sirepresents
the length of the object to be transmitted; (2) the weight wi indicates the importance of the object; (3) ready time ri
signals ready for transmitting; (4) deadline dispecifies the
latest time to be transmitted completely; (5) delay bound
dbistates the maximum allowable delay time of the object;
and (6) delivery type† : type P stands for less important data which may be partially dropped or delayed and type M stands for mandatory objects which have to be delivered to maintain user’s basic QoS requirement. The attributes and QoS requirements of each object, such as type M or P, size, the importance of the object, etc, are specified by the content author in advance. Objects of type M have to be de-livered to maintain the user’s basic QoS requirements, while those of P may be dropped or delayed based on the available bandwidth after the former objects are scheduled.
The composition of the primitive objects in a scene can be represented by a hierarchical structure. Fig. 2 illus-trates the idea with a distance-learning example. The scene
Fig. 1 Composition of a scene.
†The ‘type’ mentioned in the object-based multimedia model
is not the type of multimedia for presentation interpretation, for example, text, image, or voice. It stands for how importance the multimedia object is in the quality of the playback of the multime-dia request.
Fig. 2 Hierarchical structure of a scene for a distance-learning example.
contains a talking teacher, the background, the white board presentation, and the synchronization control. The talking teacher consists of multiple video, audio objects and a syn-chronization object. The background is composed of an im-age object, an audio object and a synchronization object. The white board presentation is composed of a sequence of text objects. The synchronization control is composed of a synchronization object. We group primitive objects with synchronization information in a set, denoted as a compos-ite set. Herein, there is a common deadline for these objects, because they are simultaneously considered by synchroniza-tion informasynchroniza-tion.
With limited bandwidth resources, not all primitive ob-jects might be delivered in time. Hence, certain QoS must be sacrificed. Unimportant objects might be partially omit-ted or be delayed, to save resource for key objects, such as synchronization objects.
3.2 Precedence Constraints
Precedence constraints specify the dependencies between the primitive objects in multimedia requests. For a sched-ule of the primitive objects to be valid, it must satisfy the precedence constraints between the primitive objects. We use the modified deadlines that allow the precedence con-straints to be ignored temporarily. It has been shown in [19] that a feasible schedule on a uniprocessor system exists for a set of tasks with the given deadlines if and only if there is a feasible schedule of the tasks with the modified deadlines. That is, each task can be completed on time, consistent with given precedence constraints, if and only if each task is com-pleted on time in the sequence obtained by ordering tasks according to increasing values of the modified deadline. Let
S UCCibe the set of all successors of oi, where ojis an
ob-ject in S UCCi. The modified deadline of oiis expressed as
follows. min di, min oj∈S UCCi (dj)
Here, we also use the modified delay bound that is computed as follows. min dbi, min oj∈S UCCi (dj− di)
When we allow an object oito be deferred to its delay
bound dbi, the deferred deadline is expressed as di+ dbi.
To satisfy the precedence constraints without violating the
timing constraints, we change the deadlines and the delay bounds into the modified deadlines and the modified delay bounds in our subsequent discussion, respectively.
3.3 The Net-Profit Model
To measure QoS, we propose the net-profit model for eval-uating the performance of a scheduling. The function of the net-profit is the difference between reward and penalty. We treat the submitted data in time as reward and treat the delay data as penalty.
The weight of an object stands for its importance. As the system delivers more important objects, the playback quality would be better and the system gains more reward. We observe that the reward gained from an object is re-lated to its weight. To avoid defining two more QoS pa-rameters for reward and penalty, we use the weight for the purpose. Namely, if an object is delivered with all its QoS requirements satisfied, the system would gain the reward of its weight.
The two types of reward functions represented in the realistic multimedia application areas were defined [20] as linear and concave. A linear reward function models the case when the benefit to the overall system increased uni-formly during the optional execution. A concave reward function is the case when the greatest increase in reward is obtained during the first portions of the optional execu-tions. A concave reward function considering tasks with no mandatory portions is not suitable for the proposed model. Hence, a linear reward function is used in this paper.
In case of the dropping data, we assume that the re-ward to the system is a decreasing function of the size of the dropped data, since the system should get less reward if it drops more data. To facilitate the analysis in our subsequent discussion, we consider the unit-time tasks for each object. Let us assume that the system consists of m multimedia re-quests for transmitting and each multimedia request Rk
con-sists of nk objects for 1≤ k ≤ m. Moreover, the available
bandwidth is deterministic. Then, we can compute the pro-cessing time, denoted as pi, for the object oi. Hence, we can
divide the object into piunit-time tasks if pi is defined by
integer. We get a new weight,wi j = wpi
i, of a unit-time task
of the object oiwhere 1≤ j ≤ pi. The reward function for
each unit-time task is defined aswi jxi j where xi j = 1 if the
finished time, denoted as fi j, is no greater than the deadline
else xi j = 0. Thus, the reward of the object oiis expressed
aspi
j=1wi jxi jwhere xi j = 1 if fi j≤ dielse xi j= 0.
In case of the delaying data, we assume that the penalty to the system is an increasing function of the ratio of the lay time over the delay bound. The longer the system de-lays, the more penalties it should receive. When the finished time exceeds the delay bound, the system drops the exceed-ing portion if the primitive object is described as partial data dropping. To clearly illustrate the penalty function, we de-note the finished time of the unit time task j of the primitive object oias fi j. The penalty function for the unit-time task
Fig. 3 The penalty function for delaying the primitive object.
j of the object oiis defined aswi jxi j fi j−di
dbi α where xi j = 1
if di ≤ fi j ≤ di+ dbi and 0 < α < 1, else xi j = 0. Fig. 3
illustrates the penalty function. We make use of the coeffi-cientα to control the effect of the delay where 0 < α < 1. Thus, the largerα implies the greater penalty of the delay. The penalty functions of an application can be classified ac-cording to three levels of the coefficient 」 such as 0.2, 0.5, and 0.8. Suppose the services of all multimedia requests are classified as three levels. The users can optionally pay three different prices for QoS. The system determines the coeffi-cient in accordance with the levels. Moreover, a request for each level has a fixed amount of total weight in accordance with the user privilege. We denote the amount for a request
Rkas AW(Rk) in order to analyze the fairness in our
subse-quent discussion. We will minimize the difference among the ratios which are the gained net-profits for each request
Rkover AW(Rk).
In our hybrid scheduling policy with the dropping and the delaying, the net-profit of the j-th unit-time task of ob-ject oi for each multimedia request Rkis the difference
be-tween the reward and the penalty. It is expressed as follow-ing equation (1): Pro f iti j(Rk) = (wi jxi j− wi jxi j max( fi j− di, 0) dbi α), 1≤ i ≤ nk, 1 ≤ j ≤ pi and 1≤ k ≤ m (1) xi j= 0 if the j-th unit-time task of object oiis rejected
for transmission, xi j = 1. In other words, if the task is
fin-ished before its delay bound, xi j= 1.
3.4 Problem Formulization
Our problem is to find a schedule for multiple multimedia requests so that the total net-profit is the maximum and the net-profit difference among the multimedia quests is a min-imum. We adopt the hybrid scheme with the dropping and the delaying policies to solve the problem when the band-width is insufficient. For guaranteeing basic QoS require-ments, users can describe a primitive object as a manda-tory object. In the paper, we consider the off-line schedul-ing in environments satisfyschedul-ing the feasible mandatory con-straint. Hence, we want to schedule the objects such that the total net-profit is maximized under the constraint that all the mandatory objects must be scheduled and completed on time. A solution to the proposed problem is presented in Sect. 4. In addition, we solve the scheduling problem where
the net-profit difference among the multimedia requests is minimized in Sect. 5. We define the following definitions for formulating the proposed problem.
Problem 1. A maximum mandatory perfect matching problem (MMPM)
Let G= (V, E, W) be a bipartite graph, where V is the set of vertices, E = {et,i|t ∈ V and i ∈ V}, and W = {wt,i|wt,i
where et,i ∈ E}. There exists a partition V = L ∪ R, where L∩ R = φ and for every edge of G, et,i ∈ E, t ∈ L, i ∈ R.
A matching M, M ⊆ E, is a collection of edges such that no two edges share a vertex. It exists a pair of vertex set, (LM, RM), such that the sets, LM and RM, are a subset of L and R, respectively. A matching is called a maximum
weighted bipartite matching(MWBM) if its total weights are at least as large as the total weights of any other matching. A matching Mwith a pair of vertices set (LM, RM) if the set
RMmust include a given mandatory set X, X⊆ R, is called a mandatory perfect matching. The MMPM problem is how to find the maximum mandatory perfect matching(MMPM) in the bipartite graph G. That is, the major difference of these two problems is that MMPM is to find the maximum weighted matching which includes a given subset of G.
The MWBM, M, for a bipartite graph G is one that maximizes(t,i)∈Mwt,iwherewt,iis the weight in edge (t, i).
The efficient known algorithm for solving this problem con-verges in O(N3log N) running time [21], where N is the maximal degrees for each vertex.
Problem 2. A maximizing total net-profit problem Given m multimedia requests, R1, R2, . . . , Rm, that
in-clude a number of objects of type Mandatory and type Par-tial. These multimedia objects are divided into N unit-time tasks, 1, 2, .., N. Let X be a set including all the unit-time tasks with type Mandatory. All mandatory objects are as-sumed schedulable, i.e., satisfying the feasible mandatory constraint. There is a weight matrix W based on the net-profit model, where the element W(t, i) is computed from the Profit of the unit-time task i finished at time t for 1 ≤
t, i ≤ N. The problem is how to find the schedule of the
maximum total net-profit such that the schedule includes X. Problem 3. A variant of the subset-sum problem Given a finite set S = ∪N
i=1Vi where Vi is a subset of
positive integers. Letτ be the target of the subset-sum prob-lem and a positive integer. The probprob-lem is to find out all the solutions such that each solution, S, where S ⊆ S , satis-fies the following conditions: (1)a∈Sa= τ where a is an
element of S; (2) no two elements in Sare in the same set
Vi.
Problem 4. A difference-minimized variant of the subset-sum problem
Follow the definitions of Problem 3, let S = ∪mk=1Rk
where Rkis composed of|Rk| subsets Vifor 1≤ i ≤ |Rk| and Rk∩ Rj = φ if k j. There is a fixed amount AW(Rk) for
each Rkand 1≤ k ≤ m such that
Rk
i=1maxa∈Vi(a)= AW(Rk)
where a is an element of Vi. The problem is to determine
the optimal solution such that the solution, S, where S ⊆
condition (3): The difference between maxm k=1 a∈S ∩Rk(a) AW(Rk) and minmk=1 a∈S ∩Rk(a)
AW(Rk) is the minimum.
Problem 5. A difference-minimized net-profit problem Let the maximum total net-profit be MT (Pro f it) based on Problem 2. We know that MT (Pro f it) = mk=1
(Pro f it(Rk)) where Pro f it(Rk) is the net-profit of the k-th
request. There is a fixed amount of weights, AW(Rk), for
each request Rk such that
i∈Ri(max
N
t=1W(t, i)) = AW(Rk).
The problem is to find out an optimal solution such that (1) its total net-profit is equal to MT (Pro f it); and (2) The dif-ference between maxm
k=1( Pro f it(Rk)
AW(Rk) ) and min
m k=1(
Pro f it(Rk)
AW(Rk) ) is
the minimum.
4. Maximizing the Total Net-Profit
According to Problem 2, all the primitive objects can be di-vided into many time tasks and are composed of N unit-time tasks, 1, 2, . . . , N. To facilitate the bipartite matching techniques in the proposed solution, the problem is trans-ferred to Problem 1. We use the following lemma to prove that Problem 2 is transferred to Problem 1.
Lemma 1: Problem 2 can be formulized as Problem 1. Proof. The processing time of each task in Problem 2 is one unit-time and the finish time of each task must be in the integer of [1,N]. Hence, Problem 2 can be expressed as:
Maximize [ Ni=1W(t, i)xi], where W(t, i) = wi(1 −
max(t−di,0)
dbi ), xi = 1 if t − di ≤ dbi, xi = 0 otherwise,
1≤ t ≤ maxN
i=1(di+ dbi), and 1≤ i ≤ N.
In order to find an optimal solution, we compute the values of each W(t, i), where W(t, i) is the profit of task i finished at time t and then obtain a weight matrix shown in Fig. 4. The optimal solution of Problem 2 is to find an optimal combination such that the total sum of profit is the maximum. In the set of an optimal combination, no two el-ements W(t1, i1) and W(t2, i2) in the set have the same finish time. That is, if i1 i2, t1 t2. This is because each unit-time task must be completed at a different time. To transfer Problem 2 to the bipartite graph problem of Problem 1, we construct a graph H(V, E, W), where V = L ∪ R, L repre-sents the set of time, R reprerepre-sents the set of all the tasks, E is the set including the relationship between each task in R and its possible finish time, and W is the weight matrix. The value W(t, i) for task i finished at time t is constructed as the weight of edge(t, i) in graph H. Then, we can get a weighted bipartite graph illustrated in Fig. 5. Thus, Problem 2 can be formulized as Problem 1.
Fig. 4 Weight matrix W.
All the mandatory objects are schedulable by the defi-nitions of Problem 2. Thus, each mandatory task can be di-vided into multiple unit-time tasks and satisfy the deadline requirement of the mandatory task. The condition that a so-lution to Problem 1 must satisfy mandatory perfect matching means that a solution to Problem 2 must satisfy the feasible mandatory constraint, because the given mandatory set X is the set of all the mandatory tasks. An optimal solution for Problem 1, the problem MMPM, can be found based on a MWBM algorithm by adding a constanty to the weights of all adjacent edges of vertices in a given set X, wherey is
i∈R−Xmaxt∈LW(t, i). Tasks in X have higher weight than
any task that is not in X.
According to Lemma 1, we know that a scheduling problem can be transferred to a bipartite matching problem. Therefore, we make use of the algorithm MWBM to solve the Problem 1. Follow the definitions of Problem 1, first we will prove that the set RM from the matching M, found the
algorithm MWBM includes the given mandatory set X if the graph G exists at least a mandatory perfect matching and if the weights of all adjacent edges of vertices in X are added by a constanty. This problem is proved in Theorem 1.
To facilitate the following proof, we define a new bi-partite graph as G = (V, E, W) based on the graph G = (V, E, W). There are the same V and E for the graphs G and
G. The weights set W is similar to the weights set W of
G except that the weights of all adjacent edges of vertices
in a given set X, X ⊆ R, from the graph G are added by a constanty where y is defined asi∈R−Xmaxt∈LW(t, i). The
weights set Wcan be expressed as W(t, i) = W(t, i) + y, if
i∈ X, and W(t, i) = W(t, i), otherwise.
Secondly, we prove that the problem MMPM for the graph G = (V, E, W) is equivalent to the problem MMPM for the graph G = (V, E, W) in Theorem 2. This means
OPT= OPT + y ∗ |X| where OPTand OPT are an optimal solution for the problem of MMPM in the graph Gand G, respectively.
Finally, we prove that the problem MWBM for the graph G = (V, E, W) is equal to the problem MMPM in Theorem 3. Therefore, according to Theorem 2 and 3 under the constraint of mandatory perfect matching for the given mandatory set X, this optimal solution including the given set X in the graph G is equal to subtract a constant value, y ∗ |X|, from the solution of the maximum weighted bipartite matching in the graph G.
Theorem 1: A MWBM, M, and its sets of the vertices,
Fig. 6 An illustration of Theorem 1.
(LM, RM), for Gmust exist X⊆ RMif graph G has at least a
mandatory perfect matching.
Proof. Let the MWBM algorithm can find an optimal matching, M, and its sets of the vertices, (LM, RM), for G.
And, letv be a vertex in X but not in RM. Fig. 6 illustrates the
configuration. On the other hand, we can find a matching,
M, and its sets of the vertices, (LM, RM), such that RM= X because graph G has a mandatory perfect matching for the given set X. However, the new weights W(t, v) for each t of linkedv is larger than the sum of maximum weight of the set
R− X, because the weights W(t, i) for each i ∈ X has been
addedy, y = i∈R−Xmaxt∈LW(t, i). Therefore, the weight
sum of the matching Mis larger than the matching M. This result is contrary to the assumption. So, RMmust include X.
Theorem 2: The problem MMPM for graph G= (V, E, W) is equivalent to the problem MMPM for graph G = (V, E, W), where W(t, i) = W(t, i) + y if i ∈ X otherwise
W(t, i) = W(t, i).
Proof. We assume that there exists an algorithm A that can find an optimal matching for the problem MMPM. For
G, let us denote the optimal solution as OPT , the optimal
matching as M and its sets of the vertices as (LM, RM). The
given set X is in RM. For G, the algorithm A can also find
an optimal solution denoted as OPT. The optimal matching denotes as Mand its sets of the vertices denote as (LM, RM). The given set X is also in RM. There are the same V and
E for the graphs G and G. They have only a difference
between G and G in the weights of all adjacent edges of set X. We want to prove that the problem MMPM for G is equivalent to the problem for G, i.e., there is a constant difference between OPT and OPT. The algorithm A can find out an optimal solution, OPT , and an optimal matching,
M, for G. We addy to the edges ending in X. There is a new
weights sum, OPT+y∗|X|, and we denote the new matching as M”. This is a matching for Gbut it may be not an optimal matching. Thus, OPTmust be no less than OPT+y∗|X| for
G, i.e., OPT≥ OPT + y ∗ |X|. Fig. 7 illustrates the concept of our proof. Algorithm A can find out an optimal solution,
OPT, and an optimal matching, M, for G. We subtracty from the edges ending in X. There is a new weights sum,
OPT−y∗|X|, and we denote the new matching as M”. This
is a matching for G but it may be not an optimal matching. Thus, OPT must be no less than OPT− y ∗ |X| for G, i.e.,
OPT≤ OPT + y ∗ |X|. Therefore, OPT= OPT + y ∗ |X|.
Fig. 7 An illustration of Theorem 2.
Theorem 3: The problem MWBM for Gis equivalent to the problem MMPM for G.
Proof. According to Theorem 1, the problem MWBM for Gcan be used to determine the optimal matching M. Its set of the vertices (LM, RM) includes the given mandatory
set X, i.e., X⊆ RM. This is also the problem MMPM for G.
Theorem 4: The problem MWBM for Gis equivalent to the problem MMPM for G.
Proof. Based on Theorem 2 and Theorem 3, we know that there is a constant difference, y∗|X|, between the optimal solution of the problem MMPM for G = (V, E, W) and the problem MWBM for G= (V, E, W), i.e., OPT = OPT + y ∗ |X|.
Though we have solved the complex problem of hy-brid the dropping and the delaying polices, our algorithm has higher time complexity since it is based on the weighted bipartite matching algorithm. The time complexity of the algorithms is dependent on the edges, the vertices, and the weights of the bipartite graph. The number of edges, |E|, is dependent on the feasible finish time of each unit-time task. If the ready time, deadline and delay bound of each unit-time task are given, we can obtain the maximum edges according to the time interval between the ready time and the delay bound. The number of vertices,|V|, is the sum of the time amount and the number of unit-time tasks. If max-imum weight of an edge in a bipartite graph is bounded by
C, the cost-scaling algorithm of Fredman and Tarjan in [24]
can be reduced to O(√|V||E| log(|V|C)). 5. Minimizing the Net-Profit Difference
In this section, our goal is to find an optimal matching in which the net-profit difference of all multimedia requests is minimized. The objective function is expressed as:
Minimize m max k=1 Pro f it(Rk) AW(Rk) −minm k=1 Pro f it(Rk) AW(Rk) (2) Where k is the index for multimedia request and
MT (Pro f it) =mk=1Pro f it(Rk). To solve the problem, we
apply the algorithm MMPM to find the maximum total net-profit, i.e., MT (Pro f it), for G. Then, we hope to find out all the matching with the same maximum total net-profit,
Fig. 8 A variant of the subset-sum algorithm.
MT (Pro f it). Hence, we propose the algorithm based on the
dynamic programming technique because it can keep all the solutions in the memory. Our algorithm makes use of a vari-ant of the subset-sum algorithm shown in Fig. 8. A varivari-ant of the subset-sum problem defined by Problem 3 is solvable in pseudo-polynomial time by the technique of dynamic pro-gramming [22]. The time complexity is O(|V|2Nτ) where |V| is the maximum elements of Vifor each i, N is the
num-ber of all the sets, andτ is the value of target. The space requirement is O(|V|Nτ).
We propose the algorithm in Fig. 8, it needs two ar-rays to record the possible members for finding the solu-tion. One, E xist(i, j, k), stores a Boolean value represented whether there exists at least a possible element from V1 to Vi where i is the index of the set V, j is the index of
target and k is the index of the element from the set Vi.
The value of the array E xist(i, j, k) is dependent on either
E xist(i− 1, j, k) or Exist(i − 1, j − ai,k, k) where ai,k is the
k-th element of the set Vi. The mean is that E xist(i, j, k)
is assigned true if E xist(i− 1, j, k) is true, i.e., there exists at least a possible element from V1 to Vi−1, at the target j
and if E xist(i− 1, j − ai,k, k) is true, i.e., there exists at least
a possible element from V1 to Vi−1, at the target j− ai,k.
The other, Member(i, j, k), also stores a Boolean value rep-resented whether there is a member. If the value is true, the mean is that the k− th element of the set Viat the target j
Fig. 9 An illustrative example.
is a possible member of the solution. The value of the array
Member(i, j, k) is dependent on Exist(i − 1, j − ai,k, k). The
mean is that the element ai,kis a possible member when the
target value accumulates to j.
Fig. 9 shows an illustrative example for the algorithm. In this example, we have five sets, i.e., V1, V2, V3, V4, and
V5, composed of the set S . The request R1 is composed of
V1, V2, and V3. The request R2 is composed of V4 and V5. Let V1be (2,1), V2 be (4,2), V3be (3,3), V4be (5,2), V5 be (4,4), and the target τ be 10. According to the algorithm stated in Fig. 8, we can find all the solutions from the array Member.
Lemma 2: Problem 3 is solvable by a variant of the subset-sum algorithm of Fig. 8.
Proof. Problem 3 is to find out all the solutions. A solution, denoted as the set S ⊆ S , satisfies whose ele-ments sum toτ and that no two elements are in the same set
Vi. In this algorithm, we employ two arrays E xist(i, j, k)
and Member(i, j, k) to store the information whether ex-ists a member ai,k at the target j. The value of an
ar-ray E xist(i, j, k) is dependent on either Exist(i − 1, j, k) or
E xist(i− 1, j − ai,k, k). The mean is that there exists at least
a possible element from V1to Viif E xist(i, j, k) is true at the
target j. The value of an array Member(i, j, k) is dependent on E xist(i−1, j−ai,k, k) as well. The mean is that the element ai,kis a member of the solution if Member(i, j, k) is true at
the target j. Therefore, when the target accumulates toτ, all the possible elements will be recorded in the array Mem-ber. The algorithm makes use of a recursive call to produce all the solutions based on a tree structure. In the recursive routine, if there exist a member, i.e., Member(i, j, k) = T, the index i of set is reduced by one after building a node to the tree. That is, any two elements of the same set Vi will
not present in the same solution. Therefore, Problem 3 is solvable by a variant of the subset-sum algorithm.
Lemma 3: Problem 4 is solvable by the technique of decremental threshold.
Proof. Based on Lemma 2, we can find out all the so-lutions. When we find the first solution, S, of Problem 3, we treat the value, maxm
k=1 a∈S ∩Rk(a) AW(Rk) - min m k=1 a∈S ∩Rk(a) AW(Rk) , as
Fig. 10 An illustrative example for bipartite graph.
again. If the new value is less than the threshold, the thresh-old is replaced with it. Therefore, after all the solutions are compared with the threshold, the threshold must be the min-imum.
Lemma 4: Problem 5 can be formulized as Problem 4. Proof. To transfer Problem 5 to the set problem of Problem 4,we first create a set T = ∪N
i=1Uiwhere Uiis a
sub-set of positive integers representing all the possible weights of the unit-time task i for 1≤ i ≤ N. We treat MT(Pro f it) as the targetτ defined by the first condition of Problem 4. In Problem 5, no two tasks complete at the same time. This is the second condition of Problem 4. Second, we create a number of sets Qkto represent a number of requests Rkfor
1 ≤ k ≤ m where Qk is composed of |Qk| subsets Ui for
1 ≤ i ≤ |Qk| and Qk∩ Qj = φ if k j. Let S’ be a set
represented a solution of Problem 5. Thus, Problem 5 can be transferred to Problem 4.
Lemma 5: There exists at least a solution by a variant of the subset-sum algorithm if the target MT (Pro f it) is deter-mined by the MMPM algorithm.
Proof. The target MT (Pro f it) is determined by the MMPM algorithm. Moreover, according our MMPM algo-rithm, no two edges share the same vertex i, i.e., no two elements are in the same set Vi. Thus, there exists a solution
such that the sum is MT (Pro f it). Based on Lemma 2, all the solutions are recorded in the array Member. Therefore, there exists at least a solution such that the sum of all the
Pro f it(Rk) is MT (Pro f it).
To identify the relationship between Problem 4 and 5, we give an example to illustrate Problem 5. Fig. 10 shows an illustrative example for a bipartite graph G contained the set L and the set R, composed of the sets R1 and R2. The example is the same as Fig. 9. Let R1 be composed of the sets V1, V2, and V3. Let R2be composed of the sets
V4 and V5. All the unit-time tasks belong to the objects
with type Partial except the unit-time task V2. Let V1 = (a11, a12), V2 = (a21, a22), V3 = (a31, a32), V4 = (a41, a42), and V5 = (a51, a52). Each element of this example is the same as Fig. 9. The maximum net-profit MT (Pro f it), 10, by the MMPM algorithm is the sum of Profit(R1), 6, and
Fig. 11 All the created nodes for the example of Fig. 10.
Profit(R2), 4. The fixed amounts of weights for R1 and R2 are 9. We can make use of the algorithm of Fig. 8 to find out all solutions of the target 10.
To improve the efficiency, we prune the branch of the tree produced by the algorithm of Fig. 8 according to the solution in which is produced by the algorithm MMPM. Be-cause we can find out at least one solution by Lemma 5, we treat maxm k=1 pro f it(Rk) AW(Rk) − min m k=1 pro f it(Rk)
AW(Rk) found the algorithm
MMPM as a threshold. When the value from the solutions is greater than the threshold, we stop branching the tree. For the example of Fig. 10, the threshold is 2/9, i.e., 6/9-4/9. We note that no two edges share a vertex of the L set because the net-profits are from the bipartite matching. Hence, we can exclude the solutions with the edge sharing a vertex of the L set. Before a node is added to the tree, it has to be checked whether shares a vertex of the L set with its ancestries. If they share the same vertex, we stop branching the tree. Be-sides, we must also guarantee all the solutions including the task of type Mandatory. When the program builds all the solutions, the node of type Mandatory task has to be added to the tree. If it is rejected, we stop branching the tree. The aforementioned three improvements will obviously increase the performance of the algorithm. We will show the experi-ment results in next section. Based on the above three filters for each solution shown in Fig. 11, the symbol * represents that the edge shares a vertex and the symbol # represents that the unit-time task with type Mandatory is rejected. There-fore, the solution in the example is only one in that the op-timal matching includes the nodes a11 = 2, a21 = 4, and
a52 = 4. The minimized difference between R1 and R2 is 2/9. Though we have solved the problem of minimized dif-ference net-profit, our algorithm has higher time complex-ity since they are based on the dynamic programming tech-nique. We make use of three methods to improve the perfor-mance of dynamic programming technique. We will show the experiment results in next section.
6. Experimental Results
For the analysis of maximizing total net-profit, we use the MMPM algorithm to present the miss ratios. The program
of the algorithm MMPM is modified by [23] that imple-ment the weighted bipartite matching. To understand the performance of the MMPM algorithm, we compare with the EDF (earliest deadline first) algorithm. First, we consider the miss ratio of tasks scheduled by the EDF algorithm, i.e., ignore the weight of task. Second, we consider the miss ratio of mandatory tasks scheduled by the EDF algorithm. Our MMPM algorithm can guarantee the schedulability of all the mandatory tasks as shown in Theorems 1, 2, 3 and 4 in Sect. 4. Finally, we consider the miss ratio of weights scheduled by the EDF algorithm. In our model, each task has a different weight to represent its importance. Here, the performance index is defined as weighted miss ratio which is the sum of the weight of the missed tasks over the total weight of all the tasks.
For the fairness performance, we use a variant of the subset-sum algorithm based on the dynamic programming technique described in Sect. 5. Before executing the algo-rithm of a variant of the subset-sum problem, we compute the target, i.e., the maximal total net-profit, according to the MMPM algorithm. We also present the improvement rate of fairness. To evaluate the fairness, we compute the max-imum net-profit difference among all requests according to the way in Sect. 3.
A solution solved by a variant of the subset-sum algo-rithm is called a possible solution. The solution of minimiz-ing net-profit difference is found from all the possible solu-tions. A created node is the branch node of the tree needed in order to build a possible solution. The more the nodes are created, the more the searching time is spent. To eval-uate the efficiency between the improved method and the unimproved method based on a variant of the subset-sum algorithm, we consider the performance metrics of evalua-tion based on the average numbers of all the created nodes and all the possible solutions. This is because not all the created nodes are necessary nodes in the possible solutions. Then, we define a node improvement ratio and a solution improvement ratio which are the number of nodes created by the proposed filtered method to that of nodes created by unimproved method and the number of possible solutions by the proposed filtered method to that of possible solutions by unimproved method.
Our experiments are built using C language to imple-ment the algorithms of the MMPM problem and a variant of the subset-sum problem. In our simulation, we observe a variety of parameter effects such as task number, delay bound. We randomly generate 50 cases for each experi-ment based on the base parameters of Table 1. We expect to understand that the performance for the MMPM algorithm, the improved level between the unimproved method and the filtered method for a variant of the subset-sum algorithm, and the improvement rate of the fairness for a variant of the subset-sum algorithm.
For the task number in Fig. 13, the figure illustrates that the gained total weight of our MMPM algorithm can be bet-ter than that of the EDF algorithm.
Second, we present the improved level for a variant of
Table 1 Base parameters.
parameter values
Number of tasks 12
The percentage of tasks that are mandatory 30% Weight of each task 1..6 Number of requests 3 The delay bound (sec) 0..3 The penalty coefficient α 0.5
Fig. 12 The analysis of the miss ratio for delay bound.
Fig. 13 The miss ratio for task number.
the subset-sum algorithm via our filtered method. The ex-perimental results vary the parameters for the delay bound and the number of tasks in Figs. 14, 15, 16 and 17. In Figs. 14 and 16, we use the node improvement ratio and the solution improvement ratio to evaluate the efficiency be-tween the improved method and the unimproved method. In Figs. 15 and 17, we define the ratio of maximum di ffer-ence as maximum differffer-ence among all the net-profits of re-quests to total weights. The figures illustrate the improve-ment of the effectiveness between the improved method and unimproved method. The delay bound affects the ratio of improved level according to the results of Figs. 14 and 15 because the larger delay bound the task has, the more the nodes and the possible solutions the unimproved algorithm is produced.
For the task number in Figs. 16 and 17, the figures il-lustrate that the more tasks the system is increased, the more created nodes and possible solutions the unimproved algo-rithm is produced. Figure 16 illustrates the ratio of the cre-ated nodes and the possible solutions are averagely less than 5/1000 when the number of tasks is greater than 12. Thus, the filtered method can considerably improve the
perfor-Fig. 14 The ratio of improved to unimproved for delay bound.
Fig. 15 The ratio of maximum difference for the delay bound.
Fig. 16 The ratio of improved to unimproved for task number.
Fig. 17 The ratio of maximum difference for task number.
Fig. 18 The improvement rate for the fairness.
mance.
For the fairness performance in Fig. 18, it illustrates that a variant of the subset-sum algorithm can improve the fairness of distribution. The improvement rate of the fair-ness for the MMPM algorithm is defined as the difference between without a variant of the subset-sum algorithm and with the algorithm over without the algorithm.
7. Conclusion
In this paper, we have presented a hybrid policy based on the net-profit model that can provide multiple QoS proper-ties for user requirements. We have devised optimal solu-tions for the complex problems under the model such that the submitted data is treated as a reward and the delay data is treated as a penalty.
Our hybrid scheme can maximize the net profit, i.e., the difference between the reward and the penalty, under the limited bandwidth. To guarantee basic QoS, we incorpo-rate the mandatory task concept from the imprecise com-putation model. The problem of incorporating mandatory objects has been found optimal solutions via the algorithm of the maximum weighted bipartite matching. Though our hybrid policy makes the scheduling problem more complex, it can retain the advantage of both the dropping and the de-laying polices. We compare the MMPM algorithm with a based line EDF algorithm.
To distribute the net-profit evenly, we have devised an algorithm by using the technique of dynamic programming. We make use of the filtered method to prune the branches of the tree. The experiment results have shown the improved performance and the fairness performance. The results of this paper contribute not only to deriving an optimal solu-tion but also to minimize the difference among the net-profit of each multimedia request in the limited network resource. In the future, we plan to extend our model without unit-time task, i.e., 0/1 task. The problem will become more com-plex and it may be NP-Complete. Whether this will e ffi-ciently provide some approximation solution to the problem is worth exploring.
Acknowledgement
This work was supported, in part, by NSC grant NSC 92-2213-E-006-046.
References
[1] H.-M. Sun, C.-M. Chen, and L.-C. Shu, “Real-time scheduling for multimedia streams over resource-constrained networks,” Proc. Real-Time Computing Systems and Applications, pp.331–335, To-kyo, Japan, March 2002.
[2] ISO/IEC JTC1/SC29/WG11, “Overview of the MPEG-4 standard,” N1729 and N1730, Stockholm Meeting, July 1997.
[3] M. Furini and D.F. Towsley, “Real-time traffic transmissions over the Internet,” IEEE Trans. Multimed., vol.3, no.1, pp.33–40, March 2001.
[4] Z.-L. Zhang, S. Nelakuditi, R. Aggarwal, and R.P. Tsang, “Efficient selective frame discard algorithms for stored video delivery across resource constrained networks,” Proc. IEEE INFOCOM’99, vol.2, pp.472–479, 1999.
[5] F.-M. Tsou, H.-B. Chiou, and Z. Tsai, “A novel ATM traffic sched-uler for real-time multimedia data transport with improved packet level QOS,” ICME Conf. Multimedia and Expo, vol.2, pp.1047– 1050, 2000.
[6] S. Shamala, A.K. Ramani, M. Yazid, and M. Othman, “Pro-active QoS scheduling algorithms for real-time multimedia applications in communication system,” Proc. TENCON 2000, vol.2, pp.466–471, 2000.
[7] F.K.L. Lee and M. Hamdi, “Providing deterministic quality of ser-vice guarantee in a wireless environment,” IEEE 49th Vehicular Technology Conference, vol.2, pp.1727–1731, 1999.
[8] A. Goel, M.H. Shor, J. Walpole, D. Steere, and C. Pu, “Using feed-back control for a network and CPU resource management appli-cation,” Proc. American Control Conference, vol.5, pp.2974–2980, 2001.
[9] J. Harju, Y. Koucheryavy, J. Laine, S. Saaristo, K. Kilkki, J. Ruutu, H. Waris, J. Forsten, and J. Oinonen, “Performance measurements and analysis of TCP flows in a differentiated services WAN,” Proc. 25th Annual IEEE Conference, Local Computer Networks, pp.296– 305, Nov. 2000.
[10] J. Laine, S. Saaristo, J. Lemponen, and J. Harju, “Implementation and measurements of simple integrated media access (SIMA) net-work nodes,” IEEE International Conference on Communications, vol.2, pp.796–800, June 2000.
[11] T.D.C. Little and A. Ghafoor, “Network considerations for dis-tributed multimedia object composition and communication,” IEEE Netw., vol.4, no.6, pp.32–40, 45–49, Nov. 1990.
[12] C. Herpel, “Elementary stream management in MPEG-4,” IEEE Trans. Circuits Syst. Video Technol., vol.9, no.2, pp.315–324, 1999. [13] L.H. Chen, “The implementation and application of MPEG-4 based object description framework and streaming manager,” Master The-sis, Dept. of Computer Science and Information Engineering, Na-tional Taiwan University, Taiwan, 2000.
[14] J.W.-S. Liu, K.-J. Lin, W.-K. Shih, A.C.-S. Yu, C. Chung, J. Yao, and W. Zhao, “Fast algorithms for scheduling imprecise computations,” Computer, vol.24, no.5, pp.58–68, May 1991.
[15] W.-K. Shih, J.W.S. Liu, and J.-Y. Chung, “Fast algorithms for scheduling imprecise computations,” Real Time Systems Sympo-sium, pp.12–19, 1989.
[16] W.-K. Shih and J.W.S. Liu, “On-line scheduling of imprecise computations to minimize error,” Real-Time Systems Symposium, pp.280–289, Dec. 1992.
[17] S.K. Baruah and M.E. Hickey, “Competitive on-line scheduling of imprecise computations,” IEEE Trans. Comput., vol.47, no.9, pp.1027–1032, Sept. 1998.
[18] H.M. Radha, M. Van Der Schaar, and Y. Chen, “The MPEG-4 fine-grained scalable video coding method for multimedia streaming over IP,” IEEE Trans. Multimed., vol.3, no.1, pp.53–68, March 2001. [19] E.L. Lawer and J.M. Moore, “A functional equation and its
applica-tion to resource allocaapplica-tion and sequencing problems,” Manage. Sci., vol.16, no.1, pp.77–84, Sept. 1969.
[20] H. Aydin, R. Melhem, D. Mosse, and P. Mejia-Alvarez, “Optimal reward-based scheduling for periodic real-time tasks,” IEEE Trans. Comput., vol.50, no.2, p.111–130, 2001.
[21] R.E. Tarjan, Data Structure and Network Algorithms, Soc. Indus. & Appl. Math., Philadelphia, PA, 1983.
[22] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, Bell Laboratories, Mur-ray Hill, NJ, 1979.
[23] E. Rothberg, Implementation of Algorithms for Maximum Matching on Nonbipartite Graphs, Ph.D. Thesis, Stanford University, 1973. [24] M.L. Fredman and R.E. Tarjan, “Fibonacci heaps and their users
in improved network optimization algorithms,” J. ACM, vol.34, pp.596–615, 1987.
[25] A. Eleftheriadis, D. Hong, and H. Kalva, “MPEG-4 systems,” Proc. SPIE ITCOM, pp.1–12, Boston, MA, July-Aug. 2002.
Huey-Min Sun received the Master de-gree in applied mathematics from National Sun Yat-Sen University, Kaohsiung, Taiwan, in June 1995. He received the Ph.D. in the department of Information Management from National Sun Yat-Sen University in 2004. Since August 1996, he joined the faculty of the Department of In-formation Management, Chang Jung University, Tainan, Taiwan. His research interests include multimedia systems, real-time systems, and in-formation system management.
Chia-Mei Chen received the B.S. in
Computer Science and Information Engineering from National Chiao-Tung University, and the Ph.D. in Computer Science from the Univer-sity of Maryland, College Park. She joined in the National Sun Yat-Sen University as an asso-ciate professor in 1996 and became a full pro-fessor in 2004. She serves as the coordinator of TWCERT/CC (Taiwan Computer Emergency Response Team/Coordination Center). Her cur-rent research interests include mobile networks, multimedia systems, and network security.
LihChyun Shu received the Ph.D. in Com-puter Science from Purdue University, West Lafayette, in 1994. He is an Associate Professor in the Department of Accountancy at National Cheng Kung University, Tainan, Taiwan. His re-search interests include real-time systems, pro-gram analysis and model checking, concurrency control and failure recovery.