1.一种基于集合竞优算法的智能手机能耗优化方法,该智能手机包括中间件软件的系统,所述中间件软件的系统包括监视组件、挖掘组件及调度组件,其中,监视组件:记录来自用户和应用程序的信息,这些信息存储在智能手机的数据库里;
挖掘组件:利用数据库进行预测,对应用程序对于用户的重要性进行预测,预测结果将被播送到调度组件;
调度组件:确定调度策略,然后执行;
其特征在于:该方法是采集用户在屏幕关闭时使用的网络活动数据,利用决策树预测应用程序对用户的重要性;将得到的重要性的值引入到集合竞优算法中,运行相对重要的应用程序的运行,约束应用程序的网络请求,减少屏幕关闭后的网络活动,降低网络活动造成的电池损耗;
还包括以下步骤:
将功率监控器连接到智能手机上,应用定时器和程序流量状态软件对多名用户进行为期一个月的追踪调查,统计出各应用程序的使用次数、时长和耗费的网络流量占一天中所用程序的百分比,对这些连续值进行分析,根据使用次数、时长和耗费的网络流量三个属性先预测出应用程序对用户是否重要;
使用决策树算法中的连续属性离散化技术,采用二分法对连续值属性进行处理的过程具体为:
对连续值处理的定义如下,给定样本集D和连续属性a,样本集中的连续属性有不同取值,将这些值从小到大进行排序,记为{a1,a2,...an},基于划分点t将D分为子集 和 其中 是样本集取值中不大于t的样本, 则是样本集中取值大于t的样本;计算每个属性的信息增益如下:其中,Ent(D)为样本集D的信息熵,Ta为候选划分点集合, 作为候选划分点,选取最优的划分点进行样本集合的划分,根据式(2)计算出信息增益;
由应用程序的三个属性的信息增益来定义其重要性,计算公式如式(3):
其中,Gain(Di1,a)为第i个值的“时长比例”信息增益,Gain(Di2,a)为第i个值的次数比例信息增益,Gain(Di3,a)为第i个值的网络流量比例信息增益;
管理应用程序的网络请求,首先预测屏幕关闭下的网络活跃时间段,屏幕关闭时网络活跃时段指的是当屏幕关闭状下,仍然有数据通过移动网络传输的时间段;定义时间段ti作为屏幕关闭下的网络活跃时间段,当且仅当ti满足公式(4):其中,P(ti)为时间段ti内使用网络的概率,U(ti)j观测数据里第j天m个应用程序在时间段ti的网络活动,时间段集合Tn表示所有满足公式(4)的网络活跃时间段ti的集合;选择用集合竞优问题来实现算法调度,屏幕关闭下的网络活跃时间段为ti,集合容量定义为:C(ti)=Bandwidth·ti (5)
其中,Bandwidth是运营商提供的频带宽度,ti表示一个集合;建立多集合问题的数学模型描述,见公式(6)和(7),其中公式(6)满足公式(7):其中,Xij=1表示物体i属于集合j,反之Xij=0表示不属于;每一个网络活动ni表示一个应用程序,Cj为m个集合的容量,对于每一个ti∈Tn,创造一个独立的项目集;将多集合问题转换成单个集合问题:数据传输/接收数据模型,见式(8):其中,C(ti)表示集合的容量,每个项目的重要性为 该网络活动的权重为w(ni),即ti时间段中数据传输/接收的总和;集合竞优问题是一种组合优化问题,具有最优子结构性质,用子问题定义状态,建立集合竞优问题状态转移方程:设有n个应用程序,v[i][w]为最优解,其递归式见式(9):对于初始状态,v[0,w]表示虽然手机网络开启但不允许任何应用程序运行,同样的v[i,0]表示数据连接关闭,应用程序仍然无法运行;
在集合竞优问题中不会满足所有应用程序的活动,空余的空间就降低了网络活动所需要的能耗;按上述算法计算后,可以求得时间段ti内可以运行的应用程序数量n(ti),定义时间段ti内所有发出网络请求的应用程序数量表示为N(ti)。