基于群代理协同交互的共乘出行仿真系统及其实现方法与流程

文档序号:16200369发布日期:2018-12-08 06:33阅读:159来源:国知局
基于群代理协同交互的共乘出行仿真系统及其实现方法与流程

本发明属于代理技术领域,涉及多个代理之间协同交互,具体涉及一种基于群代理协同交互的共乘出行仿真系统及其实现方法。

背景技术

作为一种新兴的交通方式,共乘出行既环保又可持续,因为它不仅能让乘客节省出行成本,比如燃料、通行费和停车费,还能减少汽车的交通拥堵和交通拥堵。共乘—内涵主要体现在同一车辆同一时间可供具有相同出行需求的用户出行使用。从共乘出行的可操作性分析,多人共乘上下班就会减少成本,也可以满足共乘者对舒适性、方便性的要求。共乘所具有的节约费用和提供便利的优势,成为人们首选的出行方式。从共乘出行的经济可行分析,共乘能够满足搭乘共乘车辆的乘客对出行的舒适性和方便性的要求,节省了出行时间成本。基于共乘出行可操作性和经济可行性两点分析,对共乘出行服务的研究,考虑到现实中人力资源的有限性,有必要对其进行系统仿真,这样可以降低共乘出行服务研究的成本消耗。它也是解决较复杂的实际问题的一条有效途径。

作为人工智能的一项重要研究,群agent技术主要研究一组自治的agent在分布式开放的动态环境下,通过交互、合作、竞争、协商等智能行为完成复杂的控制或任务求解,由于它更能体现人类的社会智能,更加适合开放的,动态的社会环境,因而在共乘出行下,群agent技术可使得通过交互、协商等行为完成复杂的出行计划制定以及动态乘客搭乘任务求解。使用agent进行共乘过程的仿真包括以下步骤:(1)创建共乘需求;(2)与其它代理通信共乘时间、出行od与上下车地点;(3)与感兴趣的代理协商共乘需求,确定出行计划;(4)执行计划;(5)向系统内代理提供反馈。

现有多agent系统交互系统主要考虑在无目标冲突的情况下各agent的相互帮助,实现目标。这种研究并不适合于共乘出行下利益驱动的司乘人员协商过程。考虑到共乘出行系统中,司机和乘客具有智能、自治活动,且处于资源有限、动态演化的交通环境中,有必要提供给一种新的共乘出行仿真系统。



技术实现要素:

本发明的目的是提供一种基于群代理协同交互的共乘出行仿真系统及其实现方法。

为了实现上述目的,本发明采用如下的技术方案:

一种基于群代理协同交互的共乘出行仿真系统,包括多代理系统架构、jade平台与共乘系统;其中,

多代理系统架构用于提供共乘出行背景下的约束条件,通过约束条件产生共乘出行的动机模型、路径匹配模型和协商模型;

共乘系统支持在约束条件下,司机代理和乘客代理通过动机模型、路径匹配模型与协商模型,达到共乘出行规划制定与执行;

jade平台包括代理管理系统和消息传输系统;其中,代理管理系统用于提供共乘系统、司机代理和乘客代理访问和实现监督控制;消息传输系统用于管理jade平台内部或多代理系统架构与jade平台之间的消息传输、消息编码以及消息解析的操作。

本发明进一步的改进在于,约束条件包括司机的出发位置信息、目的地、出发时间、到达时间、座位数以及信誉度,和乘客的出发位置信息、目的地、出发时间以及到达时间。

一种多代理协同交互的共乘出行仿真系统的实现方法,包括以下步骤:

步骤1:通过对乘客代理和司机代理的poi签到数据进行预处理,生成一组出行约束条件;

步骤2:在出行约束条件下,司机代理产生共乘动机,构造动机模型;

步骤3:司机代理将共乘动机与多个乘客代理进行沟通协商,将协商结果形成路径匹配模型;

步骤4:满足路径匹配模型的司机代理和乘客代理进行共乘协商,生成协商模型;

步骤5:通过代理管理系统,从而得到司机代理和乘客代理的动机模型、路径匹配模型、协商模型;

步骤6:在jade平台中,代理管理系统通过动机模型、路径匹配模型与协商模型,生成司机代理和乘客代理之间的共乘系统。

本发明进一步的改进在于,步骤1中乘客代理和司机代理的poi签到数据包括经度、纬度、到达时间、离开时间以及位置信息。

本发明进一步的改进在于,步骤1中,约束条件包括司机的出发位置信息、目的地、出发时间、到达时间、座位数以及信誉度,和乘客的出发位置信息、目的地、出发时间以及到达时间。

本发明进一步的改进在于,步骤3中沟通协商的内容包括司机代理和乘客代理出发时间与到达时间。

本发明进一步的改进在于,路径匹配模型用于通过相似度搜寻司机agent和乘客agent的相似路径。

本发明进一步的改进在于,相似度通过以下过程得到:首先计算出司机agent单位距离上所消耗的时间成本m,其次分别计算出乘客agent在单位距离上所消耗的时间成本n1、n2、n3,然后将乘客agent在单位距离上所消耗的时间成本n1、n2与n3相加得n,最后计算m/n,所得值即为相似度大小。

与现有的技术相比,本发明具有的有益效果:

本系统属于分布式架构,每个代理都属于一个智能体,并且之间是相互独立的,增大了系统代理的数量,系统的扩展性更高。ams对司机代理和乘客代理进行管理和协调,司机代理通过acl(agentcommunicationlanguage)与乘客代理实施交互和通讯,实现共乘出行中的合作、协同与协商的操作。本发明去除传统的jadeplatform中的目录服务器(df),只保留了agent管理系统和消息传输系统两大模块,提高整个仿真系统运作效率。

与传统的共乘过程相比,本发明将多代理技术与jade平台进行绑定,系统的容错性提高,便于对代理生命周期的管理,各个代理之间协同完成共乘出行服务。本发明一种基于群代理协同交互的共乘出行仿真系统,采用代理技术模拟司机与乘客出行活动,并支持两者在出行利益不一致的情况下,通过交互机制,逐步实施协调,调整其与环境的关系,改变不同代理之间的行为,以仿真完整的共乘出行。本发明采用了仿真技术,所以可以缩短研发周期、改进生产过程、降低成本以及辅助决策。

附图说明

图1为本发明的多代理协同交互的共乘出行系统框架。

具体实施方式

以下结合附图对本发明的基于多代理协同交互的共乘出行仿真系统的实现进行具体的说明。

本发明采用面向三层架构的jade平台,包括masarchitecture(多代理系统架构)、jadeplatform(jade平台)与ridesharesystem(共乘系统);其中,

多代理系统架构用于提供共乘出行背景下的约束条件,通过约束条件产生共乘出行的动机模型、路径匹配模型和协商模型。

比如,其中的约束条件包括司机的出发位置信息、目的地、出发时间、到达时间、座位数以及信誉度,乘客的出发位置信息、目的地、出发时间以及到达时间。

jade平台主要包括代理管理系统(ams,agentmanagementsystem)和消息传输系统(mts,messagetransportsystem)。其中ams是一个提供访问和代理平台实现监督控制的agent(代理)。它负责维护驻留jade平台上的代理活动与生存周期,管理第三方应用与jade平台的交互,规范agent的标识。mts管理jade平台内部或多代理系统架构与jade平台之间的消息传输、消息编码以及消息解析等操作。

共乘系统支持在一组约束条件下,司机代理和乘客代理通过动机模型、路径匹配模型与协商模型,达到共乘出行规划制定与执行。

本发明进一步改进在于,在多代理系统架构层中,对司机代理和乘客代理的约束条件进行数据处理,从而设计共乘出行所需要的动机模型、路径匹配模型、协商模型。其中,对司机代理和乘客代理的约束条件进行数据处理的具体过程为:选取司机和乘客代理的偏好,如出发时间、到达地点作为共乘出行的约束条件,路径模型和协商模型的数据处理指的是对这路径模型和协商模型建立的数学公式进行数据验证。

本发明进一步的改进在于,去除传统的jadeplatform中的目录服务器(df),只保留了agent管理系统和消息传输系统两大模块,提高整个仿真系统运作效率。

本发明对jade平台进行了改进。jade(javaagentdevelopmentframework)是一套软件开发框架。目的在于开发多agent系统以及遵循fipa标准的智能agent应用程序。jade平台是用java编写的,是由各种java包组成的,这些软件包为应用程序提供了现成的函数和抽象借口,独立的应用程序。多agent系统中,通信是进行问题求解的关键,也是各agent实现协作目的的基础。agent通信语言(agentcommunicationlanguage,acl)是一种用于表达agent间交互消息的描述语言。它提供了agent之间进行交流的工具,使agent之间能够相互通信从而相互作用以达到求解问题的目的。aclmessage类描述了可以在agent之间进行交换的acl消息。它包含了由fipa规范制定的一套属性。

agent通信语言特点如下:

(a)支持响应一个消息。根据fipa规范,一条响应消息必须由一套组织完善的规则构成,例如为in-reply-to属性设置合适的值,使用相同的conversation-id等等。jade通过aclmessage类的createreply()方法帮助程序员完成这个工作。这个方法返回一个新的aclmessage对象,它是对当前消息的一个有效回应。

(b)支持java序列化以及发送字节序列。一些应用程序也许受益于通过aclmessage的内容传送字节序列。一个典型的使用就是利用java的序列化在两个agent之间传送java对象。aclmessage类支持程序员使用setcontentobject()和getcontentobject()方法来传送aclmessage对象,这两个方法自动激活base64编码。

(c)acl编码器。在正常情况下,agent从不需要显示地调用aclmessage的编码器,因为平台会自动地完成。然而,在一些特殊情况下,程序员应该使用stringaclcodec类提供的方法来把acl消息解析和编码成字符串(string)格式。

(d)拥有消息模板(messagetemplate)类,jade行为模型允许一个agent执行几个并行任务。然而任何agent都应具有执行多个同时对话的能力。因为接收消息的队列是被全部agent行为所共享,所以要实现一个基于模式匹配的队列访问模式。messagetemplate类允许构建匹配acl消息的模式。程序员通过使用这个类的方法,可以为每个aclmessage属性创建一个模式。用户还可以定义应用程序指定的模式,这个模式继承了matchexpression接口,提供了一个新的match()方法,可以用于模式匹配阶段。

参见图1,一种基于上述多代理协同交互的共乘出行仿真系统的实现方法,包括以下步骤:

步骤1:通过对乘客agent和司机agent的poi签到数据进行预处理,其中乘客agent和司机agent的poi签到数据包括经度、纬度、到达时间、离开时间以及位置信息,经过a1模块之后生成一组出行约束。

表1poi签到数据

根据经纬度距离计算公式计算出距离两个地点之间的距离l。其中wa、wb表示a、b两点的纬度,ja、jb表示a、b两点的经度,r表示地球半径,取值为6378137.0米。

步骤2:以约束条件作为a2模块的输入,司机agent产生共乘动机,构造动机模型。动机模型的描述为agent(出发时间、达到时间、目的地)。司机agent(10:07,11:10,利民誉印服务社)乘客agent(10:31,10:44,清华大学)。

步骤3:司机agent将共乘动机与多个乘客agent进行沟通,将协商结果输入a3模块形成(路径)匹配模型。该模型主要用于通过相似度搜寻司机agent和乘客agent的相似路径。

相似度有两种基本类别:

(1)客观相似度,即对象之间的相似度是对象的多维特征之间的某种函数关系,比如对象之间的欧氏距离;

(2)主观相似度,即相似度是人对研究对象的认知关系。

本发明采用客观相似度。首先计算出司机agent单位距离上所消耗的时间成本m,其次分别计算出乘客agent在单位距离上所消耗的时间成本n1、n2、n3,然后将其相加得n,最后计算m/n,所得值即为相似度大小。

步骤4:满足路径匹配模型的司机agent和乘客agent进行共乘协商,通过模块a4生成协商模型。协商的内容主要包括司机agent和乘客agent出发时间与到达时间。

在共乘阶段中,将司机和乘客分别作为一个代理,只有当两个代理期望的行程开始时间可以协调时,协商才会成功。

步骤5:采用ams优化模块a5,从而得到司机agent和乘客agent的动机模型、路径匹配模型、协商模型。其中,优化指的是ams(代理管理系统)负责监督管理对agent平台的访问和使用的agent,保留agent标识符目录(aid)和agent状态信息。

步骤6:在jade平台中,ams通过动机模型、路径匹配模型与协商模型,生成司机agent和乘客agent之间的共乘系统。在整个仿真系统的运行当中,多代理之间的交互是通过消息传输系统(mts)完成的。

本发明中模块a1、模块a2、模块a3、模块a4与模块a5均为现有的模块,能够实现本发明中的功能即可。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1