论文部分内容阅读
随着云计算技术的快速发展,云机器人已成为家庭服务机器人的重点研究方向之一。机器人在任务执行过程中,根据用户需要会向云端发送多种任务请求;在多机共存环境下,多个机器人也会在同一时间段向云端发送不同的请求。因此,如何实时、高效地对用户任务进行调度,是云机器人系统中亟待解决的核心问题,具有重要的理论意义和实际价值。本文针对山东大学服务机器人实验室环境的特点,搭建了 一个小型的IaaS(Infrastructure as a Service)类云管理平台,实现了对一定量基础设施的管理与监控。其次深入研究了云环境中的任务调度问题,针对批模式和在线模式分别设计了相应的调度策略。本文的工作主要可分为以下几个部分:(1)云管理平台CloudStack的搭建。随着实验室环境中基础设施数量的逐渐增多,为了实现统一管理与监控,本文选用了功能与界面都相对友好、安装难易程度可接受且开源的CloudStack为基本框架,完成了小型IaaS类私有云平台的搭建。其中,一台物理机充当管理节点并配置了 MySQL数据库、开启了 NFS(Network File System)服务作为主存储使用,另一台作为KVM(Kernel-based VirtualMachine)宿主机使用。管理节点统一处理用户请求,借助MySQL记录系统中的各类信息并监控计算节点、存储和VM(Virtual Machine)等的状态,帮助管理员和用户了解当前整个系统中各部分的运行情况,方便应对突发状况。计算节点从管理节点处获得相关信息并最终完成用户请求。功能测试表明:该系统运行正常且可以顺利完成相应功能,为来访用户提供计算与存储资源。(2)研究云环境中任务的批调度模式并设计相应的调度策略。针对云环境中的大量用户任务,提出了一种面向服务质量的静态多任务混合调度算法。该算法考虑了任务在不同资源节点上的执行差异,将该差异与自定义的优先级相结合得到任务权重。具体执行过程中,以任务权重由高到低形成分配顺序,并结合贪婪算法的基本思想来避免负载失衡。仿真结果表明,该算法能够处理实际云环境中任务多且复杂的情况,可有效提高云机器人系统的系统性能与服务质量。(3)研究云环境中任务的在线调度模式并设计相应的调度算法。针对云环境中用户任务到达的不确定性,提出了一种面向服务质量的动态改进蚁群算法。该算法以任务的动态到达为基础,以任务的到达时间及各任务对资源的需求量来衡量优先级的高低;在任务分配过程中,又综合考虑了节点固有执行能力、当前负载情况等多种因素。仿真结果表明该算法能够适应动态的云计算环境,在顺利完成用户任务的前提下明显提高了负载均衡能力和服务质量。