CN109522120A - 一种基于Hadoop的智能家居管理平台 - Google Patents
一种基于Hadoop的智能家居管理平台 Download PDFInfo
- Publication number
- CN109522120A CN109522120A CN201811358495.XA CN201811358495A CN109522120A CN 109522120 A CN109522120 A CN 109522120A CN 201811358495 A CN201811358495 A CN 201811358495A CN 109522120 A CN109522120 A CN 109522120A
- Authority
- CN
- China
- Prior art keywords
- data
- smart home
- task
- indicate
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
本发明涉及一种基于Hadoop的智能家居管理平台,包括基于SSH的智能家居管理模块、一种基于改进后的遗传‑蚁群算法的任务调度器。智能家居管理模块实现对家居设备的监测与控制,实现一个松藕合、易于维护、为家庭用户提供便捷服务的智能家居管理系统。同时,将改进后的遗传‑蚁群算法与Hadoop平台任务调度器融合,对平台访问任务进行调度,合理分配计算资源,提高平台的负载均衡水平、减少任务执行时间。本发明不仅有效解决了传统智能家居服务器存在的冗余性较差、数据处理能力较差等问题,还能在平台集成用户行为数据挖掘系统,决策出智能控制方案,提高智能家居智能化程度,改善用户体验效果,同时也有助于推动物联网智能家居产业的发展。
Description
技术领域
本发明属物联网技术领域,涉及一种基于Hadoop的智能家居管理平台。
背景技术
随着物联网技术的迅猛发展,基于物联网的智能家居技术与产品应运而生。智能家居,本着为人们服务的目的,以传统家居环境为基础,利用个人通信技术、传感技术、智能控制技术等现代技术将各类家居设备集成起来,建立舒适的家居环境和高效的家庭日程事务管理系统,为用户提供安全、舒适、环保节能的智能化家居体验。但传统意义上的智能家居,在家庭内部设立有智能家居的服务器,所有设备的数据都存储到服务器上,用户通过服务器来进行对设备的控制和查看设备当前的状态。这种模式下的智能家居不够灵活,添加和管理设备需要通过繁杂的系统更新,并且系统需要周期性的维护,而这些操作是用户所不能掌握的,严重影响了用户的体验效果。以家庭服务器为核心的智能家居系统,一旦服务器宕机,整个系统便瘫痪掉,这是人们所不能接受的事情,系统冗余性差。并且,这种方式的智能家居系统的成本是很高的,从服务器到后期的更新和维护,普通家庭是无法承担这样的花销的。从经济上来考虑,这种智能家居模式也是得不到推广的。
云计算作为新一代的计算技术,能够通过提供虚拟化服务来提升系统的性能,降低系统成本,同时还能保证系统的可靠性和可用性。如今,大多数公司的云计算系统大多基于一个进行分布式处理软件框架之下,即Hadoop平台。用户可以方便的利用Hadoop整合计算机资源搭建自己的计算平台,完成海量数据处理,不需要了解Hadoop底层实现细节。虽然每个计算机都可能容易出现故障,但Hadoop平台本身设计用于检测和处理应用程序层故障,在一组计算机上提供高可用的服务。
云计算技术的发展为智能家居系统的发展创造了新的机遇,它能够较好地解决传统智能家居系统中出现的问题。除了冗余性差外,原有的家庭服务器在智能家居系统不断扩大及用户数量增加导致的数据量的不断增加的情况下,也无法满足海量数据的存储与计算。结合Hadoop平台能够进行海量数据的存储和计算、容错性及冗余性高的优势,将Hadoop平台应用于智能家居领域,可以把智能家居系统的数据存放在Hadoop平台上,用户可以通过家庭网络、社区网络或外部网络随时随地地访问数据,控制家中各类电器。用户不需要花费资金购买设备来搭建自己的系统平台,只需要通过普通终端浏览器订制自己需要的服务并按需付费即可,为用户节省了成本。至于系统如何搭建、信息如何获取、整理和计算,这些全部交付给云端服务器去处理,用户都不用了解。此外,云服务的数据存储全部交于专业团队管理,保证了数据的安全。由于云服务将数据存储和计算全部交付给云端服务器处理,用户端的设备要求降低,用户只需要一个联网的能够访问浏览器的普通设备就可以享受系统的各项服务。
然而,Hadoop平台的使用仍存在一些挑战(例如性能,资源管理等)。为了确保运行在Hadoop平台上的智能家居管理软件响应时间满足用户访问需求,必须合理分配计算资源,保证平台上各服务器点的用户访问任务负载在其承受范围内,才能保证整个平台正常运行。资源管理问题与任务调度有关,Hadoop平台任务调度是指将用户任务分配给可用资源,以改善任务的执行,提高资源利用率。Hadoop平台上的智能家居管理软件面向的是一个甚至多个社区的家庭用户。试想,面对数量众多的智能家居用户的访问任务,若智能家居用户向云平台发送的访问请求数据时,长时间内没有响应,这是用户所不能接受的,带来的会是用户体验效果极差的结果。因此,需要提出一种高效的任务调度算法,提高任务执行效率、资源利用率,从而改善用户体验效果。
发明内容
有鉴于此,本发明的目的在于针对传统的智能家居系统存在的弊端,提出基于Hadoop的智能家居管理平台,对现有的智能家居系统进行升级改造,能够在智能家居系统中充分发挥出Hadoop平台在数据存储和计算方面的强大性能、容错性及冗余性高的优势,不但能够降低总体投入,同时还能够为系统的可靠稳定高效运行提供技术保障。另外,借助Hadoop平台,还能使智能家居的规模更加庞大,资源的配置更加灵活,利用Hadoop平台计算能力强的特点可以对智能家居用户行为数据及环境监测数据进行分析,从而获得符合用户生活习惯的家居设备智能控制决策,更好地为用户提供服务,推进智能家居的“智能化”进程。
为达到上述目的,本发明提供如下技术方案:
一种基于Hadoop的智能家居管理平台,包括智能家居管理模块和任务调度器;
所述智能家居管理模块包括
表示层,由JSP页面构成,用于向用户显示接收到的控制层数据,包括智能家居设备信息管理页面、智能家居用户信息管理页面、智能家居设备控制页面、设备数据查看页面以及室内环境监控页面;
控制层,用于接收用户的控制请求信息并调用业务层完成业务运算逻辑;
业务层,用于完成系统的业务逻辑操作,业务层接收控制层传入的参数实现整个系统的业务逻辑;
数据持久层,用于将业务层处理后的数据进行持久化,把智能家居系统的数据信息保存在数据库中,或将数据库的数据取出,输出给业务层;
数据层,用于实现智能家居管理系统的数据库管理,同时通过数据库中的用户行为及环境数据,结合数据挖掘技术在业务层实现对用户行为及环境数据的分析,训练出符合用户生活习惯的智能控制决策;
所述任务调度器用于实现对平台的访问任务进行调度,合理分配计算资源,提高平台的负载均衡水平、减少任务执行时间,改善用户体验效果。
进一步,所述智能家居管理模块是基于Struts2+Spring4+Hibernate框架设计的;
所述控制层采用Struts2框架的StrutsPrepareAndExecuteFilter组件和Action对象,StrutsPrepareAndExecuteFilter组件接收用户的请求信息,然后根据系统配置要求将请求传递给相应的Action对象,Action对象调用相应的业务方法,将返回的业务结果转换为逻辑视图名返回给StrutsPrepareAndExecuteFilter组件,StrutsPrepareAndExecuteFilter组件根据返回的逻辑视图名定位到相应的视图页面,生成相应内容并输出响应;
所述业务层采用Spring4框架,主要由系统的业务逻辑Service对象组成;
所述数据持久层采用Hibernate框架的数据访问DAO对象,通过DAO对象将业务层处理后的数据进行持久化,把智能家居系统的数据信息保存在数据库中,或通过DAO对象将数据库的数据取出,输出给业务层。
进一步,在所述表示层中,所述智能家居设备信息管理页面包括设备信息、设备管理、设备报修、远程维护设备,所述智能家居用户信息管理页面包括用户信息、用户权限管理、用户管理,所述智能家居设备控制页面包括设备控制及参数设置,所述设备数据查看页面可以对设备能耗数据进行查看,所述室内视频监控页面包括监控视频查看、摄像头操作控制及参数设置;
进一步,所述数据库包括MySQL数据库和Hadoop的Hive数据仓库,Hive数据仓库主要用于获取MySQL数据库传来的用户行为及环境数据,并结合数据挖掘技术在业务层实现对用户行为及环境数据的分析,训练出符合用户生活习惯的智能控制决策。
进一步,所述任务调度器是基于改进后的遗传-蚁群算法的任务调度方法进行调度的,其调度步骤包括:
S1:将所有可能的应用任务调度方案编码成染色体,初始化种群;
S2:选取完成时间、成本、CPU利用率、内存利用率四个目标来量化资源调度的满意程度,选取合适的适应度函数,并计算种群染色体适应度值:
适应度函数:F=-ω1Timetotal-ω2Costtotal+ω3ldcpu+ω4ldmem+ω5ldnet,式中
Timetotal表示任务总运行时间,表示每个计算资源M执行该资源上的所有子任务所需的时间,ETC(i,M)表示第i个子任务在第M个计算资源上执行完成所需的时间,j表示第j个计算资源;
Costtotal表示任务总运行成本,TimeM表示每个计算资源执行该资源上的所有子任务所需的时间,RCU(M)表示计算资源单元时间任务运行的成本;
ldcpu表示CPU利用率,表示资源集群k在t时刻的CPU负载;ldmem表示内存利用率,表示应用集群k在t时刻的内存负载;ldnet表示带宽利用率,表示应用集群k在t时刻的网络负载,其中,N表示Δt时间内采集到监控数据的次数;cpuki、memki、netki分别表示集群k的第i台计算资源的CPU、内存、网络容量;cpuusedkitm、memusedkitm、netusedkitm分别表示集群k的第i台计算资源在tm监控时刻的CPU、内存、网络使用量;
ω1,ω2,ω3,ω4,ω5表示权重系数,且0≤ωi≤1,
S3:轮盘赌的方式选择适应度函数值两个染色体p1、p2,个体被选中的概率通过公式表示,S表示种群规模;
S4:以交叉概率cross_rate将所述S3中获取的两个染色体进行交叉操作,
和其中Fmax表示种群中最大的适应度值,F′表示要交叉的两个个体中较大的适应度值,表示该代种群的平均适应度值,k1,k2为0-1之间取值的系数;
S5:随机选取种群中的一个染色体,以变异概率mutate_rate将该染色体进行变异操作, 和mutate_rate=k4,其中F表示要变异个体的适应度值,k3,k4为0-1之间取值的系数,变异的概率一般为0.0001-0.1之间;
S6:当遗传算法阶段满足收敛条件时,将结果作为蚁群算法开始的信息素初始值,进入蚁群算法;若不满足收敛条件则将结果作为新的染色体种再次进行遗传算法直至满足收敛条件,收敛条件采用了最优跨度适应度函数值的标准差来判断,即F(i)表示这一代种群的第i个个体的适应度值,ξ表示收敛阈值;
S7:根据遗传算法退出时所得到的当前最优调度方案,将m只蚂蚁分别置于相应的计算节点,并为每个计算节点的信息素分别赋初值:τi(0)=ri-loadi(0),i=1,2,…,n;ri为计算节点pi所实际拥有的计算能力,loadi(0)为根据遗传算法终止时所得到的最优调度方案,应指派给计算节点pi的应用任务所实际占用的计算负载;
S8:将每个蚂蚁当前所在的计算节点分别置于各自的解集tabu中;
S9:检查每个计算节点上的任务执行情况,并根据具体的任务执行结果,为每个计算节点分别赋予不同的信息素增量Δτ,若任务从节点i执行成功并返回,则该节点赋予信息素增量Δτi=Ce×K,若任务从节点i执行失败并返回,则该节点赋予信息素增量Δτi=Cp×K,K表示对应任务的执行开销,Ce、Cp表示相应的奖惩因子;
S10:更新所有计算节点的信息素值τi(t)=τi(t)+Δτi,i=1,2,…,n;检查是否有计算节点加入或退出云计算系统,对于新加入的节点,根据其计算能力为其设置信息素初始值,对于退出的节点,将其信息素值置为0;
S11:根据各计算节点的信息素分布情况,计算概率
当节点i,j可用时, 否则基于得到的最大概率值为每只蚂蚁分别选取下一个计算节点j,tj(t)表示t时刻计算节点j的信息素,ηj表示计算节点j固有的计算能力,α和β分别表示计算节点的信息素及其固有计算能力的重要程度;
S12:将计算节点j置于当前蚂蚁的解集tabu中,根据所有蚂蚁所选取的计算节点,计算对应的时间、成本、CPU利用率、内存利用率四个目标函数值,修正并记录当前最优的任务调度方案;
S13:若循环计数器N达到约定的最大迭代次数,或者迭代出现退化现象,那么当前记录的最优解即为求取的最优调度方案,则修正当前各计算节点的信息素ρ为信息素的挥发率,K为当前任务的执行开销,输出当前的最优任务调度方案,否则,清空所有蚂蚁的解集tabu,返回S9继续执行算法。
本发明的有益效果在于:
1、本发明中基于SSH(Struts2+Spring4+Hibernate)框架设计的智能家居管理模块,采用的Struts2框架使业务控制器Action对象不与物理视图关联,由StrutsPrepareAndExecuteFilter来决定,当需要将某个视图名映射到不同视图资源时,不需要修改Action对象的程序,只需修改配置文件,同时采用了分层的思想使得智能家居管理模块的功能需求发生变化的时候,不需要修改程序的每一层,只需要调整程序的其中某一层或某几层就可以达到目的,整个应用系统也更容易被维护;
2、本发明包含了智能家居设备控制及管理功能、视频监控功能、家庭环境监测功能,实现了远程控制及维护家居设备,给智能家居用户带来了便利,减少了智能家居系统建设成本;
3、本发明集成了智能家居用户行为数据及环境监测数据分析系统,根据用户行为及环境数据智能的决策出符合用户生活习惯的智能控制方案,实现智能控制家居设备,不仅为用户带来了极大的方便,也推进了智能家居的“智能化”进程;
4、本发明的平台采用改进的遗传-蚁群算法的任务调度方法,对平台的访问任务进行调度,合理分配计算资源,提高平台的负载均衡水平、减少任务执行时间,不仅保证了平台的稳定运行,同时也改善了用户体验效果。
附图说明
为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如下附图进行说明:
图1为本发明的基于Hadoop的智能家居管理平台结构图;
图2为本发明的基于SSH的智能家居管理模块框架图;
图3为本发明的改进后的遗传-蚁群算法的任务调度方法的流程图。
具体实施方式
下面将结合附图,对本发明的优选实施例进行详细的描述。
如图1所示,为基于Hadoop的智能家居管理平台结构图。采集到的智能家居设备数据发送至家庭网关,家庭网关访问基于Hadoop的智能家居管理平台将数据上传至服务器,同时网关也可以转发平台发送的设备控制指令;客户端通过互联网访问平台获取查询的数据以及下发控制指令;来自客户端或是网关的访问任务通过平台的任务调度模块进行计算资源分配完成访问任务并获取对应服务,从而提高平台的负载均衡水平、减少任务执行时间,保证了平台的稳定运行,也改善了用户体验效果。
一种基于Hadoop的智能家居管理平台,包括基于SSH的智能家居管理模块,基于改进后的遗传-蚁群算法的任务调度方法两个部分。
如图2所示,所述基于SSH的智能家居管理模块包括表示层、控制层、业务层、数据持久层和数据层,控制层调用业务层完成业务运算逻辑从而能够使显示出表示层所构建的多个页面,业务层再调用数据持久层将页面信息写入数据库;
所述基于SSH的智能家居管理模块表示层由JSP页面构成,包括智能家居设备信息管理页面、智能家居用户信息管理页面、智能家居设备控制页面、设备数据查看页面以及室内环境监控页面,表示层显示控制层发送过来的数据。
1、智能家居设备信息管理页面包括的功能:
(1)设备信息:普通用户、家庭用户管理员以及设备供应商维护人员、设备供应商高级管理员可以查看智能家居设备的信息,包括设备的名称、设备的位置、设备的功能、设备的工作数据以及设备的工作状态等,操作人员可以在系统中根据关键字或者其他的信息查询到相关的设备信息。
(2)设备管理:家庭用户管理员可以对智能家居设备进行增删改查的操作,以实现对智能家居设备的管理。
(3)设备报修:普通用户及家庭用户管理员可以在智能家居设备运行发生故障时,进行线上报修,以方便设备供应商维护人员和设备供应商高级管理员能够及时收到设备维修请求服务,派出维护人员对设备进行维修。
(4)远程维护设备:普通用户、家庭用户管理员以及设备供应商维护人员、设备供应商高级管理员可以通过线上远程设备维护对设备进行初次维护,若能解决设备运行故障则不必派出维护人员到现场进行维修,减少了维护成本,提高了售后维修服务的效率。
2、智能家居用户信息管理页面包括的功能:
(1)用户信息:普通用户、家庭管理员及设备供应商高级管理员可以根据自身权限查看不同的用户信息,设备供应商高级管理员可以查看家庭管理员、设备供应商维护人员以及普通用户的信息进行查看,家庭管理员可以查看普通用户的信息,操作人员可以在系统中根据关键字或者其他的信息查询到相关的用户信息。
(2)用户权限管理:高级别用户可以对低级别用户的操作权限进行管理,设备供应商高级管理员可对普通用户、家庭用户管理员以及设备供应商维护人员操作权限进行增删改查的操作,家庭用户管理员可以对普通用户的操作权限进行增删改查的操作。
(3)用户管理:根据用户权限级别可对自身及其以下级别的用户进行增删改查的操作,设备供应商高级管理员可对设备供应商高级管理员、普通用户、家庭用户管理员以及设备供应商维护人员进行增删改查的操作,家庭用户管理员可以对家庭用户管理员、普通用户进行增删改查的操作。
3、智能家居设备控制页面包括的功能:
(1)设备控制:普通用户及家庭管理员可以通过设备控制页面对智能家居设备进行远程控制。
(2)设备参数设置:用户可以根据自身需求,对各类传感器设备的监测数据进行上下限设置,以便在监测数据超过预设报警值时会向用户推送报警信息,方便用户及时作出对应的决策,保证家居环境的安全与舒适。
4、设备数据查看页面主要实现设备能耗数据查看的功能,包括当前设备能耗数据查看及设备历史能耗数据查看。用户可以根据关键字或其他的关联信息查看智能家居设备的当前能耗数据以及历史能耗数据,以方便用户能够能及时获知家中设备的能耗情况,并且可以通过设备能耗数据对家居设备的工作状态进行预判断,对发生故障的设备做出及时的维护。
5、室内视频监控页面包括的功能:
(1)监控视频查看:用户可以通过视频监控页面进行实时监控视频查看及历史监控视频查看,以实现对家中环境进行实时监控。
(2)摄像头操作控制及参数设置:用户可以远程遥控摄像头的转向,实现对家中环境的全方位监控,同时用户可以对摄像头进行参数设置,对重点监视区域进行标记,以便在该区域出现异常的时候能够及时的发送报警信息。
所述控制层采用Struts2框架的StrutsPrepareAndExecuteFilter组件和Action对象,StrutsPrepareAndExecuteFilter组件接收用户的请求信息,然后根据系统配置要求将请求传递给相应的Action对象,Action对象调用相应的业务方法,将返回的业务结果转换为逻辑视图名返回给StrutsPrepareAndExecuteFilter组件,StrutsPrepareAndExecuteFilter组件根据干会的逻辑视图名定位到相应的视图页面,生成相应内容并输出响应。
所述基于SSH的智能家居管理模块业务层采用Spring4框架,主要由系统的业务逻辑Service对象组成,完成系统的业务逻辑操作,在智能家居管理系统中,业务层接收控制层传入的参数实现智能家居设备控制、智能家居设备管理、家庭环境监控、智能控制决策等,实现整个系统的业务逻辑。
所述基于SSH的智能家居管理模块数据持久层采用Hibernate框架的数据访问DAO对象,通过DAO对象将业务层处理后的数据进行持久化,把智能家居系统的数据信息保存在数据库中,或通过DAO对象将数据库的数据取出,输出给业务层。
所述基于SSH的智能家居管理模块数据层实现智能家居管理系统的数据库管理,数据库使用MySQL数据库和Hadoop的Hive数据仓库,Hive数据仓库主要用于获取MySQL传来的用户行为及环境数据,并结合数据挖掘技术在业务层实现对用户行为及环境数据的分析,训练出符合用户生活习惯的智能控制决策。
所述基于改进后的遗传-蚁群算法的任务调度方法,针对文献(邓见光.云计算任务调度策略研究[D].华南理工大学,2014.)所提出遗传-蚁群算法中目标函数约束目标单一的不足,提出改进后的遗传-蚁群算法,并将算法与Hadoop平台的任务调度器融合,实现对平台的访问任务进行调度,合理分配计算资源,提高平台的负载均衡水平、减少任务执行时间,改善用户体验效果;
如图3所示,所述方法包括以下步骤:
S1:将所有可能的应用任务调度方案编码成染色体,初始化种群;
S2:选取完成时间、成本、CPU利用率、内存利用率四个目标来量化资源调度的满意程度选取合适的适应度函数,并计算种群染色体适应度值:
适应度函数:F=-ω1Timetotal-ω2Costtotal+ω3ldcpu+ω4ldmem+ω5ldnet,式中
Timetotal表示任务总运行时间,表示每个计算资源(M)执行该资源上的所有子任务所需的时间,ETC(i,M)表示第i个子任务在第M个计算资源上执行完成所需的时间,j表示第j个计算资源;
Costtotal表示任务总运行成本,TimeM表示每个计算资源(M)执行该资源上的所有子任务所需的时间,RCU(M)表示计算资源单元时间任务运行的成本;
ldcpu表示CPU利用率,表示资源集群k在t时刻的CPU负载;ldmem表示内存利用率,表示应用集群k在t时刻的内存负载;ldnet表示带宽利用率,表示应用集群k在t时刻的网络负载,其中,N表示Δt时间内采集到监控数据的次数;cpuki、memki、netki分别表示集群k的第i台计算资源的CPU、内存、网络容量;cpuusedkitm、memusedkitm、netusedkitm分别表示集群k的第i台计算资源在tm监控时刻的CPU、内存、网络使用量;
ω1,ω2,ω3,ω4,ω5表示权重系数,且0≤ωi≤1,
S3:轮盘赌的方式选择适应度函数值两个染色体p1、p2,个体被选中的概率通过公式表示,S表示种群规模;
S4:以交叉概率cross_rate将所述S3中获取的两个染色体进行交叉操作, 和cross_rate=k2,其中Fmax表示种群中最大的适应度值,F′表示要交叉的两个个体中较大的适应度值,表示该代种群的平均适应度值,k1,k2为0-1之间取值的系数;
S5:随机选取种群中的一个染色体,以变异概率mutate_rate将该染色体进行变异操作, 和mutate_rate=k4,其中F表示要变异个体的适应度值,k3,k4为0-1之间取值的系数,变异的概率一般为0.0001-0.1之间;
S6:当遗传算法阶段满足收敛条件时,将结果作为蚁群算法开始的信息素初始值,进入蚁群算法;若不满足收敛条件则将结果作为新的染色体种再次进行遗传算法直至满足收敛条件,收敛条件采用了最优跨度适应度函数值的标准差来判断,即
F(i)表示这一代种群的第i个个体的适应度值,ξ表示收敛阈值;
S7:根据遗传算法退出时所得到的当前最优调度方案,将m只蚂蚁分别置于相应的计算节点,并为每个计算节点的信息素分别赋初值:τi(0)=ri-loadi(0),i=1,2,…,n;ri为计算节点pi所实际拥有的计算能力,loadi(0)为根据遗传算法终止时所得到的最优调度方案,应指派给计算节点pi的应用任务所实际占用的计算负载;
S8:将每个蚂蚁当前所在的计算节点分别置于各自的解集tabu中;
S9:检查每个计算节点上的任务执行情况,并根据具体的任务执行结果,为每个计算节点分别赋予不同的信息素增量Δτ,若任务从节点i执行成功并返回,则该节点赋予信息素增量Δτi=Ce×K,若任务从节点i执行失败并返回,则该节点赋予信息素增量Δτi=Cp×K,K表示对应任务的执行开销,Ce、Cp表示相应的奖惩因子;
S10:更新所有计算节点的信息素值τi(t)=τi(t)+Δτi,i=1,2,…,n;检查是否有计算节点加入或退出云计算系统,对于新加入的节点,根据其计算能力为其设置信息素初始值,对于退出的节点,将其信息素值置0;
S11:根据各计算节点的信息素分布情况,计算概率:当节点i,j可用时, 否则基于得到的最大概率值为每只蚂蚁分别选取下一个计算节点j,tj(t)表示t时刻计算节点j的信息素,ηj表示计算节点j固有的计算能力,α和β分别表示计算节点的信息素及其固有计算能力的重要程度;
S12:将计算节点j置于当前蚂蚁的解集tabu中,根据所有蚂蚁所选取的计算节点,计算对应的时间、成本、CPU利用率、内存利用率四个目标函数值,修正并记录当前最优的任务调度方案;
S13:若循环计数器N达到约定的最大迭代次数,或者迭代出现退化现象,那么当前记录的最优解即为求取的最优调度方案,则修正当前各计算节点的信息素值ρ为信息素的挥发率,K为当前任务的执行开销,输出当前的最优任务调度方案,否则,清空所有蚂蚁的解集tabu,返回S9继续执行算法。
综上,本发明所提出的基于Hadoop的智能家居管理平台,包括基于SSH的智能家居管理模块,基于改进后的遗传-蚁群算法的任务调度方法两个部分。基于SSH的智能家居管理模块包括表示层、控制层、业务层、数据持久层和数据层,表示层显示智能家居管理模块的功能页面,控制层接收用户请求的信息,将控制的信息传递给业务层,业务层根据需求调用数据持久层完成业务逻辑操作,数据持久层实现对智能家居管理系统的数据库的数据存取操作;所采用的Struts2框架使得业务控制器Action对象不与物理视图关联,由该框架中的核心控制器StrutsPrepareAndExecuteFilter来决定,当需要将某个视图名映射到不同视图资源时,不需要修改Action对象的程序,只需修改配置文件,采用分层思想使得在智能家居管理模块的功能需求发生变化的时候,不需要修改程序的每一层,只需要调整程序的其中某一层或某几层就可以达到目的;基于改进后的遗传-蚁群算法的任务调度方法,与平台任务调度器融合,对平台的访问任务进行调度,合理分配计算资源,提高平台的负载均衡水平、减少任务执行时间,不仅保证了平台的稳定运行,同时也改善了用户体验效果,从而实现一个易维护、能够智能控制家具设备、为智能家居用户提供便捷服务的基于Hadoop的智能家居管理平台。
最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离本发明权利要求书所限定的范围。
Claims (5)
1.一种基于Hadoop的智能家居管理平台,其特征在于:包括智能家居管理模块和任务调度器;
所述智能家居管理模块包括
表示层,由JSP页面构成,用于向用户显示接收到的控制层数据,包括智能家居设备信息管理页面、智能家居用户信息管理页面、智能家居设备控制页面、设备数据查看页面以及室内环境监控页面;
控制层,用于接收用户的控制请求信息并调用业务层完成业务运算逻辑;
业务层,用于完成系统的业务逻辑操作,业务层接收控制层传入的参数实现整个系统的业务逻辑;
数据持久层,用于将业务层处理后的数据进行持久化,把智能家居系统的数据信息保存在数据库中,或将数据库的数据取出,输出给业务层;
数据层,用于实现智能家居管理系统的数据库管理,同时通过数据库中的用户行为及环境数据,结合数据挖掘技术在业务层实现对用户行为及环境数据的分析,训练出符合用户生活习惯的智能控制决策;
所述任务调度器用于实现对平台的访问任务进行调度,合理分配计算资源,提高平台的负载均衡水平、减少任务执行时间,改善用户体验效果。
2.根据权利要求1所述的基于Hadoop的智能家居管理平台,其特征在于:所述智能家居管理模块是基于Struts2+Spring4+Hibernate框架设计的;
所述控制层采用Struts2框架的StrutsPrepareAndExecuteFilter组件和Action对象,StrutsPrepareAndExecuteFilter组件接收用户的请求信息,然后根据系统配置要求将请求传递给相应的Action对象,Action对象调用相应的业务方法,将返回的业务结果转换为逻辑视图名返回给StrutsPrepareAndExecuteFilter组件,StrutsPrepareAndExecuteFilter组件根据返回的逻辑视图名定位到相应的视图页面,生成相应内容并输出响应;
所述业务层采用Spring4框架,主要由系统的业务逻辑Service对象组成;
所述数据持久层采用Hibernate框架的数据访问DAO对象,通过DAO对象将业务层处理后的数据进行持久化,把智能家居系统的数据信息保存在数据库中,或通过DAO对象将数据库的数据取出,输出给业务层。
3.根据权利要求1-2任一所述的基于Hadoop的智能家居管理平台,其特征在于:在所述表示层中,所述智能家居设备信息管理页面包括设备信息、设备管理、设备报修、远程维护设备,所述智能家居用户信息管理页面包括用户信息、用户权限管理、用户管理,所述智能家居设备控制页面包括设备控制及参数设置,所述设备数据查看页面可以对设备能耗数据进行查看,所述室内视频监控页面包括监控视频查看、摄像头操作控制及参数设置。
4.根据权利要求1-2任一所述的基于Hadoop的智能家居管理平台,其特征在于:所述数据库包括MySQL数据库和Hadoop的Hive数据仓库,Hive数据仓库主要用于获取MySQL数据库传来的用户行为及环境数据,并结合数据挖掘技术在业务层实现对用户行为及环境数据的分析,训练出符合用户生活习惯的智能控制决策。
5.根据权利要求1-2任一所述的基于Hadoop的智能家居管理平台,其特征在于:所述任务调度器是基于改进后的遗传-蚁群算法的任务调度方法进行调度的,其调度步骤包括:
S1:将所有可能的应用任务调度方案编码成染色体,初始化种群;
S2:选取完成时间、成本、CPU利用率、内存利用率四个目标来量化资源调度的满意程度,选取合适的适应度函数,并计算种群染色体适应度值:
适应度函数:F=-ω1Timetotal-ω2Costtotal+ω3ldcpu+ω4ldmem+ω5ldnet,式中Timetotal表示任务总运行时间, 表示每个计算资源M执行该资源上的所有子任务所需的时间,ETC(i,M)表示第i个子任务在第M个计算资源上执行完成所需的时间,j表示第j个计算资源;
Costtotal表示任务总运行成本,TimeM表示每个计算资源执行该资源上的所有子任务所需的时间,RCU(M)表示计算资源单元时间任务运行的成本;
ldcpu表示CPU利用率,表示资源集群k在t时刻的CPU负载;ldmem表示内存利用率,表示应用集群k在t时刻的内存负载;ldnet表示带宽利用率,表示应用集群k在t时刻的网络负载,其中,N表示Δt时间内采集到监控数据的次数;cpuki、memki、netki分别表示集群k的第i台计算资源的CPU、内存、网络容量;cpuusedkitm、memusedkitm、netusedkitm分别表示集群k的第i台计算资源在tm监控时刻的CPU、内存、网络使用量;
ω1,ω2,ω3,ω4,ω5表示权重系数,且0≤ωi≤1,
S3:轮盘赌的方式选择适应度函数值两个染色体p1、p2,个体被选中的概率通过公式表示,S表示种群规模;
S4:以交叉概率cross_rate将所述S3中获取的两个染色体进行交叉操作,
和cross_rate=k2,其中Fmax表示种群中最大的适应度值,F′表示要交叉的两个个体中较大的适应度值,表示该代种群的平均适应度值,k1,k2为0-1之间取值的系数;
S5:随机选取种群中的一个染色体,以变异概率mutate_rate将该染色体进行变异操作, 和mutate_rate=k4,其中F表示要变异个体的适应度值,k3,k4为0-1之间取值的系数,变异的概率一般为0.0001-0.1之间;
S6:当遗传算法阶段满足收敛条件时,将结果作为蚁群算法开始的信息素初始值,进入蚁群算法;若不满足收敛条件则将结果作为新的染色体种再次进行遗传算法直至满足收敛条件,收敛条件采用了最优跨度适应度函数值的标准差来判断,即F(i)表示这一代种群的第i个个体的适应度值,ξ表示收敛阈值;
S7:根据遗传算法退出时所得到的当前最优调度方案,将m只蚂蚁分别置于相应的计算节点,并为每个计算节点的信息素分别赋初值:τi(0)=ri-loadi(0),i=1,2,…,n;ri为计算节点pi所实际拥有的计算能力,loadi(0)为根据遗传算法终止时所得到的最优调度方案,应指派给计算节点pi的应用任务所实际占用的计算负载;
S8:将每个蚂蚁当前所在的计算节点分别置于各自的解集tabu中;
S9:检查每个计算节点上的任务执行情况,并根据具体的任务执行结果,为每个计算节点分别赋予不同的信息素增量Δτ,若任务从节点i执行成功并返回,则该节点赋予信息素增量Δτi=Ce×K,若任务从节点i执行失败并返回,则该节点赋予信息素增量Δτi=Cp×K,K表示对应任务的执行开销,Ce、Cp表示相应的奖惩因子;
S10:更新所有计算节点的信息素值τi(t)=τi(t)+Δτi,i=1,2,…,n;检查是否有计算节点加入或退出云计算系统,对于新加入的节点,根据其计算能力为其设置信息素初始值,对于退出的节点,将其信息素值置为0;
S11:根据各计算节点的信息素分布情况,计算概率当节点i,j可用时, 否则基于得到的最大概率值为每只蚂蚁分别选取下一个计算节点j,tj(t)表示t时刻计算节点j的信息素,ηj表示计算节点j固有的计算能力,α和β分别表示计算节点的信息素及其固有计算能力的重要程度;
S12:将计算节点j置于当前蚂蚁的解集tabu中,根据所有蚂蚁所选取的计算节点,计算对应的时间、成本、CPU利用率、内存利用率四个目标函数值,修正并记录当前最优的任务调度方案;
S13:若循环计数器N达到约定的最大迭代次数,或者迭代出现退化现象,那么当前记录的最优解即为求取的最优调度方案,则修正当前各计算节点的信息素ρ为信息素的挥发率,K为当前任务的执行开销,输出当前的最优任务调度方案,否则,清空所有蚂蚁的解集tabu,返回S9继续执行算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811358495.XA CN109522120B (zh) | 2018-11-14 | 2018-11-14 | 一种基于Hadoop的智能家居管理平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811358495.XA CN109522120B (zh) | 2018-11-14 | 2018-11-14 | 一种基于Hadoop的智能家居管理平台 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109522120A true CN109522120A (zh) | 2019-03-26 |
CN109522120B CN109522120B (zh) | 2022-10-11 |
Family
ID=65778027
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811358495.XA Active CN109522120B (zh) | 2018-11-14 | 2018-11-14 | 一种基于Hadoop的智能家居管理平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109522120B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110794697A (zh) * | 2019-11-15 | 2020-02-14 | 武汉工程大学 | 一种基于Android的智能家居控制系统和控制方法 |
CN116540616A (zh) * | 2023-07-06 | 2023-08-04 | 北京邮电大学 | 一种新型家居资源调度决策控制系统、方法及其应用 |
CN117093364A (zh) * | 2023-08-08 | 2023-11-21 | 国网湖南省电力有限公司 | 实时量测数据的并行处理方法及系统、电子设备、介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104104702A (zh) * | 2013-04-09 | 2014-10-15 | 华北电力大学(保定) | 面向家庭物联网的云计算架构 |
US20170006135A1 (en) * | 2015-01-23 | 2017-01-05 | C3, Inc. | Systems, methods, and devices for an enterprise internet-of-things application development platform |
WO2017054101A1 (zh) * | 2015-09-30 | 2017-04-06 | 苏州富米信息技术有限公司 | 一种物联云在线监测通用平台系统 |
CN107038031A (zh) * | 2017-04-11 | 2017-08-11 | 重庆邮电大学 | 一种基于soa的智慧社区管理系统 |
CN107995263A (zh) * | 2017-11-20 | 2018-05-04 | 河海大学 | 一种基于云计算以及树莓派的多终端智能家居控制平台 |
CN108111377A (zh) * | 2017-12-18 | 2018-06-01 | 佛山市厚德众创科技有限公司 | 一种基于Hadoop的智能家居信息处理系统 |
CN108170530A (zh) * | 2017-12-26 | 2018-06-15 | 北京工业大学 | 一种基于混合元启发式算法的Hadoop负载均衡任务调度方法 |
-
2018
- 2018-11-14 CN CN201811358495.XA patent/CN109522120B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104104702A (zh) * | 2013-04-09 | 2014-10-15 | 华北电力大学(保定) | 面向家庭物联网的云计算架构 |
US20170006135A1 (en) * | 2015-01-23 | 2017-01-05 | C3, Inc. | Systems, methods, and devices for an enterprise internet-of-things application development platform |
WO2017054101A1 (zh) * | 2015-09-30 | 2017-04-06 | 苏州富米信息技术有限公司 | 一种物联云在线监测通用平台系统 |
CN107038031A (zh) * | 2017-04-11 | 2017-08-11 | 重庆邮电大学 | 一种基于soa的智慧社区管理系统 |
CN107995263A (zh) * | 2017-11-20 | 2018-05-04 | 河海大学 | 一种基于云计算以及树莓派的多终端智能家居控制平台 |
CN108111377A (zh) * | 2017-12-18 | 2018-06-01 | 佛山市厚德众创科技有限公司 | 一种基于Hadoop的智能家居信息处理系统 |
CN108170530A (zh) * | 2017-12-26 | 2018-06-15 | 北京工业大学 | 一种基于混合元启发式算法的Hadoop负载均衡任务调度方法 |
Non-Patent Citations (4)
Title |
---|
R. IRUDAYARAJ, A. LATEEF, K. M. SADYOJATHA AND ULAGANATHAN: "Smart home based user data prediction algorithm model", 《2017 INTERNATIONAL CONFERENCE ON ELECTRICAL, ELECTRONICS, COMMUNICATION, COMPUTER, AND OPTIMIZATION TECHNIQUES (ICEECCOT)》 * |
X. -Q. LI, X. DING, Y. ZHANG, Z. -P. SUN AND H. -W. ZHAO: "IoT Family Robot Based on Raspberry Pi", 《2016 INTERNATIONAL CONFERENCE ON INFORMATION SYSTEM AND ARTIFICIAL INTELLIGENCE (ISAI)》 * |
张小琳,何青,李雯,韦龙: "《基于云计算的智能家居管理系统的研究》", 《无线互联科技》 * |
黎林峰: "智能家居:任重道远", 《中国建设信息化》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110794697A (zh) * | 2019-11-15 | 2020-02-14 | 武汉工程大学 | 一种基于Android的智能家居控制系统和控制方法 |
CN116540616A (zh) * | 2023-07-06 | 2023-08-04 | 北京邮电大学 | 一种新型家居资源调度决策控制系统、方法及其应用 |
CN116540616B (zh) * | 2023-07-06 | 2023-09-08 | 北京邮电大学 | 一种新型家居资源调度决策控制系统、方法及其应用 |
CN117093364A (zh) * | 2023-08-08 | 2023-11-21 | 国网湖南省电力有限公司 | 实时量测数据的并行处理方法及系统、电子设备、介质 |
CN117093364B (zh) * | 2023-08-08 | 2024-04-02 | 国网湖南省电力有限公司 | 实时量测数据的并行处理方法及系统、电子设备、介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109522120B (zh) | 2022-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zuo et al. | A multi-objective optimization scheduling method based on the ant colony algorithm in cloud computing | |
Huang et al. | A multiagent minority-game-based demand-response management of smart buildings toward peak load reduction | |
CN106315319B (zh) | 一种电梯智能预调度方法及系统 | |
Chen et al. | A reinforcement learning-empowered feedback control system for industrial internet of things | |
CN109522120A (zh) | 一种基于Hadoop的智能家居管理平台 | |
CN102326134A (zh) | 能量感知服务器管理 | |
CN106934497A (zh) | 基于深度学习的智慧小区用电量实时预测方法及装置 | |
CN107450983A (zh) | 一种基于虚拟聚类的分级网络资源调度方法及系统 | |
Xia | Resource scheduling for piano teaching system of internet of things based on mobile edge computing | |
Sági et al. | Smart home automation | |
Mazidi et al. | An autonomic decision tree‐based and deadline‐constraint resource provisioning in cloud applications | |
Amato et al. | Multi-agent negotiation of decentralized energy production in smart micro-grid | |
Xin et al. | A deep learning architecture for power management in smart cities | |
Cardellini et al. | Self-adaptive container deployment in the fog: A survey | |
Pitt et al. | Democratisation of the SmartGrid and the active participation of prosumers | |
Muhammad et al. | Deep-reinforcement-learning-based sustainable energy distribution for wireless communication | |
Zhang et al. | Joint energy and workload scheduling for fog-assisted multimicrogrid systems: A deep reinforcement learning approach | |
CN102724100B (zh) | 一种针对组合服务的板卡资源分配系统及方法 | |
CN107122235A (zh) | 基于应用优先级的公共基础设施资源调度方法 | |
Zhu et al. | SAAS parallel task scheduling based on cloud service flow load algorithm | |
CN101661588A (zh) | 基于多Agent的设备维护智能协同决策系统及方法 | |
Sedlak et al. | Controlling data gravity and data friction: from metrics to multidimensional elasticity strategies | |
CN104166581B (zh) | 一种面向增量制造设备的虚拟化方法 | |
Machorro-Cano et al. | Pesshiot: Smart platform for monitoring and controlling smart home devices and sensors | |
Kou et al. | Distributed demand-side management for microgrids in modern power system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |