随机任务 - 资源系统的调度与应用
1. 随机序的定义
在随机任务 - 资源系统中,随机序是一个重要的概念,用于比较随机向量的大小关系。以下是几种常见的随机序定义:
-
通常随机(强)序
:设 (X) 和 (Y) 是 (n) 维随机向量,如果对于所有从 (\mathbb{R}^n) 到 (\mathbb{R}) 的递增函数 (f),只要期望存在,都有 (E[f(X)] \leq E[f(Y)]),则称 (X \leq_{st} Y)。
-
上正交序
:如果对于所有的 (x \in \mathbb{R}^n),都有 (P(X > x) \leq P(Y > x)),则称 (X \leq_{uo} Y)。
-
下正交序
:如果对于所有的 (x \in \mathbb{R}^n),都有 (P(X \leq x) \geq P(Y \leq x)),则称 (X \leq_{lo} Y)。
可以证明,(X \leq_{st} Y) 意味着 (X \leq_{uo} Y) 以及 (X \leq_{lo} Y)。
此外,还有积分序的定义:
-
凸序
:若对于所有从 (\mathbb{R}^n) 到 (\mathbb{R}) 的凸函数 (f),只要期望存在,都有 (E[f(Z_1, \cdots, Z_n)] \leq E[f(Z_1’, \cdots, Z_n’)]),则称 ((Z_1, \cdots, Z_n) \leq_{cx} (Z_1’, \cdots, Z_n’))。
-
递增凸序
:若对于所有从 (\mathbb{R}^n) 到 (\mathbb{R}) 的递增凸函数 (f),只要期望存在,都有 (E[f(Z_1, \cdots, Z_n)] \leq E[f(Z_1’, \cdots, Z_n’)]),则称 ((Z_1, \cdots, Z_n) \leq_{icx} (Z_1’, \cdots, Z_n’))。
2. 关联性
关联性用于强化正相关的概念。两个变量 (X) 和 (Y) 正相关是指 (cov(X, Y) = E[(X - E[X])(Y - E[Y])] \geq 0),即 (X) 大时 (Y) 也大。而关联性则对 (X) 和 (Y) 的任意函数都有类似性质。
具体定义为:一个随机向量(或序列)(X) 是关联的,如果对于所有从 (\mathbb{R}^n)(或 (\mathbb{R}^N))到 (\mathbb{R}) 的递增函数 (f) 和 (g),都有 (cov(g(X), f(X)) \geq 0)。
在动态系统中,关联性比简单的正相关更有用,因为它可以通过单调算子传播。例如,对于动态系统 (X_{n + 1} = \varphi(X_n, Z_n)),如果 (\varphi) 关于两个变量都是非递减的,并且 ((Z_n) {n \in \mathbb{N}}) 是关联的,那么 ((X_n) {n \in \mathbb{N}}) 也是关联的。
此外,如果向量 ((X_1, \cdots, X_n)) 是关联的,那么 ((X_1, \cdots, X_n) \leq_{lo} (X_1^ , \cdots, X_n^ )) 且 ((X_1, \cdots, X_n) \leq_{uo} (X_1^ , \cdots, X_n^ )),其中 ((X_1^ , \cdots, X_n^ )) 是 ((X_1, \cdots, X_n)) 的独立版本。
3. 静态问题的应用
在静态任务 - 资源问题中,我们将静态模型看作一个算子 (\varphi),其输入是外生数据(任务的到达时间、大小、处理器速度等)(X = \varphi(Z_1, \cdots, Z_N)),输出 (X) 对应系统的状态或系统设计者感兴趣的量(如完工时间、所有任务的离开时间、响应时间、拉伸度等)。
对于静态系统,将任务 - 资源系统看作一个抽象算子对于设计比较方法非常有用,有如下定理:
如果对于 (\omega = st, cx) 或 (icx),有 ((Z_1, \cdots, Z_n) \leq_{\omega} (Z_1’, \cdots, Z_n’)),并且 (\varphi) 是非递减的,那么 (\varphi(Z_1, \cdots, Z_n) \leq_{\omega} \varphi(Z_1’, \cdots, Z_n’))。
3.1 1|| (\sum C_i) 问题
这是任务资源框架中调度理论的经典问题之一。一个无调度限制的资源执行 (N) 个任务,所有任务在时间 (0) 到达,目标是最小化完成时间的总和(或平均完成时间)。
考虑所有任务的大小 (\sigma_1, \cdots, \sigma_N) 是独立的。对于给定的调度(或排列)(\alpha),目标函数为 (X_{\alpha} = \sum_{i = 1}^N C_i = \sum_{i = 1}^N (N - i + 1) \sigma_{\alpha(i)})。
有两种特殊的调度:SEPT(最短期望处理时间)和 LEPT(最长期望处理时间)。显然,对于任何排列 (\alpha),都有 (E[X_{SEPT}] \leq E[X_{\alpha}] \leq E[X_{LEPT}]),即 SEPT 是平均意义下的最优策略,LEPT 是最差策略。
进一步地,使用 (hr) 和 (lr) 序对变量 (\sigma_i) 进行比较,可以比较 (X) 的分布,而不仅仅是它们的期望:
- 如果对于所有的 (i),都有 (\sigma_i \leq_{lr} \sigma_{i + 1}),那么 (X_{SEPT} \leq_{st} X_{\alpha} \leq_{st} X_{LEPT})。
- 如果对于所有的 (i),都有 (\sigma_i \leq_{hr} \sigma_{i + 1}),那么 (X_{SEPT} \leq_{icx} X_{\alpha} \leq_{icx} X_{LEPT})。
3.2 PERT 图
PERT 图是一种更一般的静态模型,(N) 个大小为 (\sigma_1, \cdots, \sigma_N) 的任务要在大量资源((m > N))上执行,并且受到一个无环通信图 (G) 的约束。
PERT 图的关键路径长度就是系统的完工时间 (C_{max} = \varphi(\sigma_1, \cdots, \sigma_N) = \max_{c \in P(G)} \sum_{i \in c} \sigma_i),其中 (P(G)) 是图 (G) 中的路径集合。
由于图 (G) 中的路径共享节点,它们的执行时间不是独立的,因此计算 (C_{max}) 的分布是一个非常困难的问题。但是,可以通过比较来证明一些结果:
- 如果 (\sigma_i \leq_{\omega} \sigma_i’)((\omega = st) 或 (icx)),那么 (C_{max} \leq_{\omega} C_{max}’)。
- 如果任务大小是独立(或关联)的,那么路径都是关联的,并且有 (\sigma_c \leq_{st} \sigma_c^
)(其中 (\sigma_c = \sum_{i \in c} \sigma_i),(\sigma_c^
= \sum_{i \in c} \sigma_i^
),((\sigma_1^
, \cdots, \sigma_n^
)) 是 ((\sigma_1, \cdots, \sigma_n)) 的独立版本),进而 (C_{max} \leq_{st} C_{max}^
)。
此外,引入新的概念“New Better than Used in Expectation (NBUE)”,即如果对于所有的 (t \in \mathbb{R}),都有 (E[X - t | X > t] \leq E[X]),则称变量 (X) 是 NBUE 的。假设任务大小都是 NBUE 的并不是一个强假设,因为在大多数情况下,任务的部分执行不应增加预期的剩余工作量。
如果任务大小都是 NBUE 的,那么有:
(\max_{c \in P(G)} \sum_{i \in c} E[\sigma_i] \leq_{icx} E[C_{max}] \leq_{icx} \max_{c \in P(G)} \sum_{i \in c} X_e(E[\sigma_i]) \leq_{icx} \max_{c \in P(G)} X_e(\sum_{i \in c} E[\sigma_i]))
其中 (X_e(E[\sigma])) 是期望为 (E[\sigma]) 的指数分布随机变量。最后一个表达式有一个封闭形式的分布,可以用于得到任意 PERT 图完工时间的数值上下界。
4. 动态系统的应用
在动态系统中,有无限多个任务按照一个递增的到达序列 (r_1 \leq \cdots \leq r_n \leq \cdots) 到达系统。动态模型可以用一个算子 (\varphi_n) 来建模:(X_n = \varphi_n(X_{n - 1}, Z_n)),其中 (Z_n) 对应输入的外生过程(到达时间、大小、资源可用性、速度等),(X_n) 是系统在第 (n) 步的状态,感兴趣的量是 (X_1, \cdots, X_n, \cdots) 的函数。
定义了两种动态系统的性质:
-
时间单调性
:一个动态系统对于序 (\omega) 是时间单调的,如果 (X_n \leq_{\omega} X_{n - 1})。
-
(\omega) - 保序性
:一个动态系统是 (\omega) - 保序的,如果对于所有的 (k),(Z_k \leq_{\omega} Z_k’) 意味着对于所有的 (n),(X_n \leq_{\omega} X_n’)。
如果 ((Z_1, \cdots, Z_n) \leq_{\omega} (Z_1’, \cdots, Z_n’)) 并且所有的 (\varphi_n) 都是递增的(或递增且凸的),那么 (X_n \leq_{\omega} X_n’)((\omega = st) 或 (icx))。
4.1 单队列
队列是最简单的任务 - 资源系统之一,由无限多个任务和两个资源组成:一个是执行任务的服务器,一个是存储到达任务的缓冲区(容量有限或无限)。
设 (W_n) 表示第 (n) 个任务的响应时间。FIFO 队列是一种动态系统,形式为 (W_n = \varphi(W_{n - 1}, Z_n)),其中 (Z_n = \sigma_n - \tau_n),(\varphi) 由 Lindley 方程定义:(W_n = \max(W_{n - 1} + Z_n, \sigma_n))。
可以证明,在初始为空的队列中,对于所有的 (n),都有 (W_n \leq_{st} W_{n + 1})。这个结果对于一般队列的平稳(或极限)状态的存在性和唯一性有重要意义。
基于输入过程的比较:
- 如果 ((W_0, Z_1, \cdots, Z_n) \leq_{\omega} (W_0’, Z_1’, \cdots, Z_n’)),那么 (W_n \leq_{\omega} W_n’)((\omega = st) 或 (icx))。
- 当流量强度固定时,到达时间为周期性时平均等待时间最小。
- 如果到达过程是 Poisson 过程,任务大小是 NBUE 的,那么平均等待时间可以由一个已知队列(M/M/1)的等待时间来界定:(E[W] \leq \frac{1}{E[\frac{1}{\sigma_1}] - E[\frac{1}{r_1}]})。
不同服务规则的比较:
在单队列中,考虑 FIFO(F)和任意不基于任务大小的服务规则 (\pi)。对于所有的 (n) 和所有的凸递增且对称的函数 (f),都有 (f(W_F^1, \cdots, W_F^n) \leq_{st} f(W_{\pi}^1, \cdots, W_{\pi}^n))。
4.2 队列网络
为了建模复杂的网络或并行计算机,需要考虑资源之间的相互连接以及任务可能需要多个资源处理的情况,这通常用队列网络来建模。
一个开放的队列网络 (Q) 由 (m) 个队列 (Q_1, \cdots, Q_m) 通过通信网络相互连接而成。每个队列 (Q_i) 有一个缓冲区,容量为 (c_i \in \mathbb{N} \cup {\infty})。系统的状态由向量 (x = (x_1, \cdots, x_m)) 描述,其中 (x_i) 是队列 (Q_i) 中的任务数量。
网络中的事件 (e \in E) 对应系统状态的变化,有三种可能的类型:新任务的到达、任务的完成或一个任务(完成后)从一个队列转移到另一个队列。
整个动态过程可以用一个算子 (\varphi : X \times E \to X) 来描述,网络的演化由递归序列 (X_{n + 1} = \varphi(X_n, e_{n + 1})) 描述。
4.3 多队列轮询:平衡序列
这是一个具有单个处理资源和 (m) 个队列的排队系统,任务来自 (m) 个外生过程。问题是选择服务器访问队列的序列 (a = (a_1, \cdots, a_i, \cdots)),以最小化所有任务的平均期望响应时间。
设 (R_j) 是队列 (j) 的无限释放日期序列,(\sigma_j) 是进入队列 (j) 的任务大小序列。服务器访问所有队列的频率为 (\alpha = (\alpha_1, \cdots, \alpha_m))。
所有任务的平均响应时间可以表示为 (\varphi_a(R_1, \cdots, R_m, \sigma_1, \cdots, \sigma_m) = \limsup_{n \to \infty} \frac{1}{n} \sum_{i = 1}^n \sum_{j = 1}^m \alpha_j (E[W_j^1] + \cdots + E[W_j^n]))。
如果 ((\sigma_1, \cdots, \sigma_m) \leq_{icx} (\beta_1, \cdots, \beta_m)),那么 (\varphi_a(R_1, \cdots, R_m, \sigma_1, \cdots, \sigma_m) \leq \varphi_a(R_1, \cdots, R_m, \beta_1, \cdots, \beta_m))。
引入队列 (j) 的不平衡度 (U_j(a) = \max_k \frac{1}{T} \sum_{i = k}^{T + k} (a_i(j) - i \alpha_j)),总不平衡度 (U(a) = \sum_{j = 1}^m U_j(a))。
如果释放序列和所有任务的大小是平稳独立序列,那么 (U(a) \leq U(a’)) 意味着 (\varphi_a \leq \varphi_{a’})。此外,如果 (b) 是由每个队列的最平衡序列组成的虚拟轮询序列,那么存在一个常数 (C),使得 (\varphi_b \leq \varphi_a \leq \varphi_b + C U(a))。
这个定理表明,一旦频率给定,选择服务器的最佳轮询序列对应于选择每个队列中最规则的访问模式。
综上所述,随机序和关联性在静态和动态任务 - 资源系统的分析和优化中起着重要作用。通过比较输入变量的随机序,可以得到系统性能指标的比较结果,从而为系统的设计和调度提供理论依据。
随机任务 - 资源系统的调度与应用(续)
5. 随机序与关联性的总结
随机序和关联性是分析随机任务 - 资源系统的重要工具。随机序包括通常随机序、上正交序、下正交序、凸序和递增凸序等,它们用于比较随机向量的大小关系。关联性则强化了正相关的概念,并且在动态系统中具有重要的传播性质。
| 随机序类型 | 定义 |
|---|---|
| 通常随机序 ((\leq_{st})) | 对于所有递增函数 (f),(E[f(X)] \leq E[f(Y)]) |
| 上正交序 ((\leq_{uo})) | 对于所有 (x \in \mathbb{R}^n),(P(X > x) \leq P(Y > x)) |
| 下正交序 ((\leq_{lo})) | 对于所有 (x \in \mathbb{R}^n),(P(X \leq x) \geq P(Y \leq x)) |
| 凸序 ((\leq_{cx})) | 对于所有凸函数 (f),(E[f(Z_1, \cdots, Z_n)] \leq E[f(Z_1’, \cdots, Z_n’)]) |
| 递增凸序 ((\leq_{icx})) | 对于所有递增凸函数 (f),(E[f(Z_1, \cdots, Z_n)] \leq E[f(Z_1’, \cdots, Z_n’)]) |
关联性的定义为:一个随机向量(或序列)(X) 是关联的,如果对于所有递增函数 (f) 和 (g),(cov(g(X), f(X)) \geq 0)。关联性在动态系统中的传播可以用以下流程图表示:
graph LR
A[(Z_n) 关联] --> B[\(\varphi\) 非递减]
B --> C[(X_n) 关联]
A --> C
6. 静态问题应用的深入分析
在静态问题中,将任务 - 资源系统看作抽象算子为比较系统性能提供了有效的方法。
6.1 1|| (\sum C_i) 问题的进一步理解
SEPT 和 LEPT 调度策略在平均意义下的优劣是明确的,但通过 (hr) 和 (lr) 序可以比较目标函数 (X) 的分布。这意味着不仅可以知道平均性能的好坏,还能了解性能的波动情况。例如,当 (\sigma_i \leq_{lr} \sigma_{i + 1}) 时,(X_{SEPT} \leq_{st} X_{\alpha} \leq_{st} X_{LEPT}),这表明 SEPT 调度下目标函数的分布整体上小于其他调度,而 LEPT 调度下目标函数的分布整体上大于其他调度。
6.2 PERT 图的复杂度与解决思路
PERT 图由于路径之间的相互依赖,计算完工时间 (C_{max}) 的分布是一个复杂的问题。但通过随机序的比较和引入 NBUE 性质,可以得到 (C_{max}) 的上下界。具体步骤如下:
1. 比较任务大小的随机序:如果 (\sigma_i \leq_{\omega} \sigma_i’)((\omega = st) 或 (icx)),则 (C_{max} \leq_{\omega} C_{max}’)。
2. 利用关联性:如果任务大小是独立(或关联)的,路径也是关联的,从而得到 (\sigma_c \leq_{st} \sigma_c^
) 和 (C_{max} \leq_{st} C_{max}^
)。
3. 引入 NBUE 性质:假设任务大小是 NBUE 的,得到 (C_{max}) 的上下界不等式:(\max_{c \in P(G)} \sum_{i \in c} E[\sigma_i] \leq_{icx} E[C_{max}] \leq_{icx} \max_{c \in P(G)} \sum_{i \in c} X_e(E[\sigma_i]) \leq_{icx} \max_{c \in P(G)} X_e(\sum_{i \in c} E[\sigma_i]))。
7. 动态系统应用的关键要点
动态系统的建模和分析依赖于算子 (\varphi_n) 和输入的外生过程 (Z_n)。时间单调性和 (\omega) - 保序性是动态系统的重要性质。
7.1 单队列的性能分析
单队列中,FIFO 队列的响应时间 (W_n) 满足 (W_n \leq_{st} W_{n + 1}),这对于队列的平稳状态分析有重要意义。基于输入过程的比较可以得到响应时间的随机序关系,例如,如果 ((W_0, Z_1, \cdots, Z_n) \leq_{\omega} (W_0’, Z_1’, \cdots, Z_n’)),那么 (W_n \leq_{\omega} W_n’)。不同服务规则的比较表明,FIFO 调度在某些情况下具有最优性。
7.2 队列网络的动态建模
队列网络通过算子 (\varphi) 和递归序列 (X_{n + 1} = \varphi(X_n, e_{n + 1})) 来描述其动态演化。网络中的事件包括任务的到达、完成和转移,这些事件导致系统状态的变化。
7.3 多队列轮询的优化策略
多队列轮询问题的关键是选择服务器的访问序列 (a) 以最小化平均期望响应时间。通过引入不平衡度 (U(a)),可以证明选择最平衡的访问模式可以优化系统性能。具体步骤如下:
1. 计算每个队列的不平衡度 (U_j(a)) 和总不平衡度 (U(a))。
2. 比较不同访问序列的不平衡度:如果 (U(a) \leq U(a’)),则 (\varphi_a \leq \varphi_{a’})。
3. 找到最平衡的序列 (b):存在常数 (C),使得 (\varphi_b \leq \varphi_a \leq \varphi_b + C U(a))。
8. 实际应用中的启示
在实际的任务 - 资源系统设计和调度中,可以根据上述理论和方法进行优化:
1.
静态系统
:在 1|| (\sum C_i) 问题中,优先选择 SEPT 调度策略以最小化平均完成时间。在 PERT 图中,通过比较任务大小的随机序和引入 NBUE 性质,得到完工时间的上下界,为项目的进度安排提供参考。
2.
动态系统
:在单队列中,根据输入过程的随机序比较来优化响应时间。在队列网络中,合理设计服务器的轮询序列,选择最平衡的访问模式以提高系统性能。
总之,随机序和关联性为随机任务 - 资源系统的分析和优化提供了强大的工具,通过深入理解和应用这些概念,可以更好地设计和调度系统,提高系统的性能和效率。
超级会员免费看
1811

被折叠的 条评论
为什么被折叠?



