调度问题2

一个好的调度系统,要解决资源最优利用的问题。将需求和可用资源进行最优匹配,从而达到资源利用最大化。


以蚂蚁金服的客户和小二为例, 应该如何从数学上定义这样的一种系统呢? 

答案:用映射关系(Map)的方式最自然不过.

先定义三个变量集合:VC,VS,E

VC : 把用户看作是需求发起方, 可以理解为原象中的元素, 用VC这个集合来表示。

VS : 把小二看做是服务的承接方,也可以理解为原象映射所成的象,用VS这个集合来表示。

E : 把这些用户和小二形成的服务关系做一个简化,认为完成一次服务后就在两个元素之间形成一次连接。这个连接用 E 来描述.

那么这样的情况下,蚂蚁金服的服务现场就可以用一个巨大映射关系 M(VC,VS,E) 来表示.

通过这样的一个映射关系, 我们可以采用模型来以用户的数据和小二的数据为参数建立一个数学模型, 来求得一个整个系统的性能, 我们假设性能为 S ,那么 S 应该是 M 的一个函数, 我们用一个不太严谨的数学式来表达这个函数关系, 那就是 S = F(VC,VS,E) .

自然地, 这个系统的性能要越高越好, 那么 S 越大说明这个系统承载能力越强.

到这里,那么什么是一个调度系统呢? 

一个调度系统其实就是在改变这个映射关系的构造, 也就是提出一个策略 Z 将映射关系 M -> M'。 这个策略可以改变小二的数量VS -> VS',或者是通过引导改变请求用户的数量VC->VC',撮合服务关系E -> E'(促成了一次服务)

那么现在我们的思路很清晰了, 我们想要找的便是一个调度系统(或者一系列策略),使得我们通过这个策略完成了M->M'。而对于新的G'所形成的性能:S'>S。事实上我们需要一个策略使得每一次采用这个策略调度后,在接下来的单位时间里这个系统的性能是能最大化的. 在这样定义过后,我们便可以很好地描述这个系统并通过数学对这个资源分配做优化。

目前大部分的应用在于建立了一个又一个的Z(调度策略), 将可用的服务人员、人员的服务能力、等待服务的用户、用户咨询的业务、用户等待的时间等因素按不同的权重进行综合排序,这些作为参数放进这个策略中, 最终撮合双方,达成服务,帮助我们实现性能最大化。

至此,我们已经成功的定义了一个简化的调度系统(Z的集合)。

纯属逻辑推理,有不当之处请指正。



作者:AnthonyD
链接:https://www.jianshu.com/p/4113a710e40e
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

猜你喜欢

转载自blog.csdn.net/OYY_90/article/details/82932564