一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

多主体模拟系统以及多主体模拟方法与流程

2022-12-10 00:34:09 来源:中国专利 TAG:


1.本公开涉及使用相互作用的多个主体(agent,智能体、代理)来模拟(simulate,仿真)对象世界的多主体模拟(mas:multi-agent simulation)系统以及多主体模拟方法。


背景技术:

2.已知使用相互作用的多个主体来进行对象世界的模拟的多主体模拟。例如,专利文献1公开了与作为多主体模拟系统的人流模拟有关的发明。在该发明中,作为诱发主体行动的信息,例如对设施的移动进行建议的信息、与优先利用券有关的信息、与服务券、打折券、优惠券有关的信息这样的给与移动动机的信息被提供给主体。
3.此外,作为本公开的技术领域中的表示申请时的技术水平的文献,在上述专利文献1之外也可以例示下述的专利文献2和专利文献3。
4.现有技术文献
5.专利文献1:日本特开2019-021143号公报
6.专利文献2:日本特开2019-212245号公报
7.专利文献3:国际公开第2015/132893号


技术实现要素:

8.发明要解决的技术问题
9.在现实的世界中,各种各样的服务被提供并被利用。但是,关于将进行各种各样的服务的提供和利用的世界作为模拟的对象世界的多主体模拟,具有进一步研究的余地。
10.本公开是鉴于如上述那样的问题而完成的。本公开的目的在于提供一种多主体模拟系统以及方法,其能够使用多个主体对进行各种各样的服务的提供和利用的世界进行模拟。
11.用于解决问题的技术方案
12.本公开提供使用相互作用的多个主体来模拟对象世界的多主体模拟系统。本公开的系统具备按提供在对象世界中利用的多个服务的各服务系统来设置的多个后端服务器、和按多个主体的各主体来设置的多个主体模拟器。多个主体模拟器被编程为一边通过第1消息的交换使主体彼此相互作用,一边对各主体的状态进行模拟。另外,多个后端服务器和多个主体模拟器被编程为通过种类与第1消息不同的第2消息的交换,同时对多个服务进行模拟。
13.多个主体包括利用多个服务的多个第1主体、和被使用于多个服务的提供的多个第2主体。另外,多个主体模拟器包括多个第1主体模拟器和多个第2主体模拟器。多个第1主体模拟器设置于多个第1主体的各个第1主体,被编程为对各第1主体的状态进行模拟。多个第2主体模拟器设置于多个第2主体的各个第2主体,被编程为对各第2主体的状态进行模拟。
14.在本公开的系统中,第2消息包括从多个第1主体模拟器的各个第1主体模拟器发
送的、包含与多个第1主体各自的服务利用有关的信息的消息。另外,第2消息包括从多个后端服务器的各个后端服务器发送的、包含与对于多个第1主体的各个第1主体的服务提供状态有关的信息的消息。另外,第2消息包括从多个第2主体模拟器的各个第2主体模拟器发送的、包含与多个第2主体各自的动作状态有关的信息的消息。进一步,第2消息包括从多个后端服务器的各个后端服务器发送的、包含与对于多个第2主体的各个第2主体的动作指示有关的信息的消息。
15.本公开的系统也可以还具备中央控制器,该中央控制器与多个主体模拟器进行通信,对多个主体模拟器间的第1消息的收发进行控制。在该情况下,多个主体模拟器也可以在多个主体模拟器间经由中央控制器进行第1消息的交换,不经由中央控制器而与多个后端服务器直接进行第2消息的交换。另外,在本公开的系统中,第1主体模拟器也可以具备客户端模拟器,该客户端模拟器对第1主体的作为多个服务的客户端的举止进行模拟。进一步,在本公开的系统中,多个后端服务器也可以进行用于使各自提供的服务相互进行协作的消息的交换。
16.本公开提供使用相互作用的多个主体来模拟对象世界的多主体模拟方法。本公开的方法使用按提供在对象世界中利用的多个服务的各服务系统而设置的多个后端服务器、和按多个主体的各主体而设置的多个主体模拟器来实施。本公开的方法包括:在多个主体模拟器之间进行第1消息的交换,一边通过第1消息的交换使主体彼此相互作用,一边对各主体的状态进行模拟。另外,本公开的方法包括:在多个后端服务器与多个主体模拟器之间进行种类与第1消息不同的第2消息的交换,通过第2消息的交换来同时对多个服务进行模拟。
17.多个主体包括利用多个服务的多个第1主体、和被使用于多个服务的提供的多个第2主体。另外,多个主体模拟器包括设置于多个第1主体的各个第1主体的多个第1主体模拟器、和设置于多个第2主体的各个第2主体的多个第2主体模拟器。本公开的方法包括:使多个第1主体模拟器对各第1主体的状态进行模拟,使多个第2主体模拟器对各第2主体的状态进行模拟。
18.在本公开的方法中,第2消息包括从多个第1主体模拟器的各个第1主体模拟器发送的、包含与多个第1主体各自的服务利用有关的信息的消息。另外,第2消息包括从多个后端服务器的各个后端服务器发送的、包含与对于多个第1主体的各个第1主体的服务提供状态有关的信息的消息。另外,第2消息包括从多个第2主体模拟器的各个第2主体模拟器发送的、包含与多个第2主体各自的动作状态有关的信息的消息。进一步,第2消息包括从多个后端服务器的各个后端服务器发送的、包含与对于多个第2主体的各个第2主体的动作指示有关的信息的消息。
19.在本公开的方法中,也可以在多个主体模拟器之间经由与多个主体模拟器进行通信的中央控制器进行第1消息的交换。多个主体模拟器和多个后端服务器也可以不经由中央控制器而直接进行第2消息的交换。另外,在本公开的方法中,也可以使设置于第1主体模拟器的客户端模拟器对第1主体的作为多个服务的客户端的举止进行模拟。进一步,在本公开的方法中,也可以使多个后端服务器进行用于使各自提供的服务相互进行协作的消息的交换。
20.发明的效果
21.在本公开的多主体模拟系统以及方法中,直接使用提供在模拟的对象世界中利用的服务的服务系统的后端服务器。多个后端服务器在多个主体模拟器与多个主体模拟器间交换第2消息,该第2消息的种类与被使用于各主体的状态的模拟的第1消息不同。根据本公开的多主体模拟系统以及方法,通过多个后端服务器与多个主体模拟器之间的第2消息的交换,能够同时对在对象世界中被提供并被利用的多个服务进行模拟。
附图说明
22.图1是表示本公开的实施方式涉及的多主体模拟系统的概要的图。
23.图2是表示本公开的实施方式涉及的多主体模拟系统的概要的图。
24.图3是表示本公开的实施方式涉及的多主体模拟系统的构成的框图。
25.图4是表示本公开的实施方式涉及的行人主体用的主体模拟器的构成和信息流的框图。
26.图5是表示本公开的实施方式涉及的自主移动体主体用的主体模拟器的构成和信息流的框图。
27.图6是表示本公开的实施方式涉及的vr行人主体用的主体模拟器的构成和信息流的框图。
28.图7是表示本公开的实施方式涉及的路侧传感器主体用的主体模拟器的构成和信息流的框图。
29.图8是表示本公开的实施方式涉及的多主体模拟系统的模拟结果的汇总和用于评价的构成的框图。
30.图9是表示本公开的实施方式涉及的多主体模拟系统的物理构成的例子的图。
31.标号说明
32.2 虚拟世界(模拟对象世界)
33.4a、4b、4c、4d 主体
34.10 计算机
35.30、32 子网
36.40 网关
37.100 多主体模拟系统
38.200 主体模拟器
39.201 行人主体用主体模拟器
40.202 自主机器人/车辆主体用主体模拟器
41.203 vr行人主体用主体模拟器
42.204 路侧传感器主体用主体模拟器
43.210 收发控制器
44.220 3d物理引擎
45.230 服务系统客户端模拟器
46.240 模拟器核
47.300 中央控制器
48.310 移动消息分发器
49.320 模拟编排器
50.400 服务系统用后端服务器
具体实施方式
51.以下,参照附图对本公开的实施方式进行说明。但是,在以下所示的实施方式中,在提及了各要素的个数、数量、量、范围等的数的情况下,除了特别地明示了的情况、在原理上明显被确定为该数的情况之外,本公开涉及的思想并不限定于该所提及的数。另外,对于在以下所示的实施方式中说明的构造等,除了特别地明示了的情况、在原理上明显被确定为此的情况之外,并一定是本公开涉及的思想所必需的。
52.1.多主体模拟系统的概要
53.使用图1和图2对本公开的实施方式涉及的多主体模拟系统的概要进行说明。以下,将多主体模拟系统省略地记载为mas系统。
54.1-1.mas系统的构成和功能的概略
55.图1表示本实施方式的mas系统100的概略构成。mas系统100通过使多个主体4a、4b、4c、4d相互作用,对作为模拟对象的世界(模拟对象世界)2进行模拟。并不限定于本公开的mas系统的模拟对象世界。本实施方式的mas系统100将如下世界作为模拟对象世界2,该世界是人与进行自主移动的移动体、例如机器人和车辆共存并能够接受使用了进行自主移动的移动体的各种各样的服务提供的世界。作为在模拟对象世界2中提供的服务,例如可以举出使用了自主驾驶车辆的按需(on-demand)巴士、定期运行型巴士等的移动性服务、使用自主移动型的机器人配送货物的物流服务。
56.模拟对象世界2由大量的多种主体构成。构成模拟对象世界2的主体包括表示移动物体的主体和表示安置物体的主体。作为表示为主体的移动物体,可例示行人、机器人、低速移动体(mobility)、车辆、实际存在的人使用vr系统来参加的行人、电梯等。作为表示为主体的安置物体,可例示包括摄像头的传感器、自动门等。
57.但是,在图1中,为了使说明容易理解,在模拟对象世界2中仅表示了3个主体4a、4b、4c、4d。其中,主体4a、4b表示行人,主体4c表示物流机器人,主体4d表示自动驾驶巴士。以下,有时将主体4a、4b称为行人主体4a、4b,将主体4c称为物流机器人主体4c,将主体4d称为自动驾驶巴士主体4d。另外,在以下中,将作为虚拟的世界的模拟对象世界2与现实世界相区别地称为虚拟世界2。
58.mas系统100具备多个主体模拟器200。主体模拟器200按主体4a、4b、4c、4d而设置。以下,在对各主体模拟器200进行区别的情况下,将对行人主体4a的状态进行模拟的主体模拟器200记载为主体模拟器a。同样地,将对主体4b、4c、4d的状态进行模拟的主体模拟器200记载为主体模拟器b、c、d。各主体模拟器200具有与作为对象的主体的种类相应的构成差异。对于主体的不同种类的主体模拟器200的构成,将随后进行详细的描述。
59.主体模拟器200一边通过消息的交换来使主体彼此相互作用,一边对各主体的状态进行模拟。在主体模拟器200间交换的消息包括与主体在虚拟世界2内的位置、移动有关的信息(移动信息)。移动信息包括与关于主体的位置、移动的现状以及将来计划有关的信息。与现状有关的信息例如是指当前时刻的位置、方向、速度、加速度。与将来计划有关的信息例如是指将来时刻的位置、方向、速度以及加速度的列表。以下,将在主体模拟器200间交
换的与主体的位置、移动有关的消息称为移动消息。
60.主体模拟器200基于周围主体的状态,运算作为模拟对象的对象主体(自身主体)的状态。周围主体是存在于自身主体的周围、与自身主体相互作用的相互作用主体。并且,表示周围主体的状态的信息是移动消息。各主体模拟器200通过与其他主体模拟器200相互交换移动消息,能够掌握周围主体的状态。
61.mas系统100具备与主体模拟器200进行通信的中央控制器300。在mas系统100中,主体模拟器200间的移动消息的交换经由中央控制器300来进行。在主体模拟器200与中央控制器300之间由实线表示的信息流表示移动消息流。
62.在图1所示的例子中,中央控制器300接收从主体模拟器a输出了的移动消息。并且,中央控制器300对主体模拟器b、c、d发送主体模拟器a的移动消息。同样地,主体模拟器b的移动消息由中央控制器300发送至主体模拟器a、c、d。另外,主体模拟器c的移动消息由中央控制器300发送至主体模拟器a、b、d,主体模拟器d的移动消息由中央控制器300发送至主体模拟器a、b、c。
63.mas系统100能够对在虚拟世界2中提供的服务进行模拟。作为由mas系统100模拟的服务,例如可以举出使用了自主驾驶车辆的按需巴士、定期运行型巴士等的移动性服务、使用自主移动型的机器人来配送货物的配送服务。另外,由mas系统100模拟的服务典型地为能够通过用户在用户终端中对服务应用程序进行操作来利用的服务。
64.在图1所示的例子中,对行人主体4a提供使用了自动驾驶巴士主体4d的按需巴士服务。在按需巴士服务中进行:使自动驾驶巴士主体4d在行人主体4a通过服务应用程序的操作所指定了的乘车地点停车,使行人主体4a乘坐自动驾驶巴士主体4d。并且,进行:使自动驾驶巴士主体4d在行人主体4a通过服务应用程序的操作所指定了的下车地点6停车,使行人主体4a从自动驾驶巴士主体4d下车。
65.另外,在图1所示的例子中,对行人主体4a也提供使用了物流机器人主体4c的配送服务。在配送服务中进行:预先使物流机器人主体4c在行人主体4a从自动驾驶巴士主体4d下车的下车地点6待机。并且,进行:若自动驾驶巴士主体4d到达了下车地点6,则从行人主体4a向物流机器人主体4c交付货物,通过物流机器人主体4c将所收取的货物配送到自家。
66.此外,在图1所示的例子中,行人主体4b只是行人。但是,也可以提供如下的配送服务:行人主体4b一边走一边使用用户终端来点披萨,通过其他的物流机器人主体将披萨配送到自己现在正走着的场所。另外,在虚拟世界2中,也可以在使用了自主移动的移动体的服务以外,也提供票券的销售、车辆的充电等的与现实世界同样的服务。
67.虚拟世界2中的服务的提供由服务系统用的后端服务器400进行。mas系统100按服务系统而具备后端服务器400。后端服务器400是与在现实世界的服务系统中实际使用的服务器相同的后端服务器。
68.另外,mas系统100具备不同的服务系统用的多个后端服务器400。在图1所示的例子中,具备用于提供按需巴士服务的后端服务器400和用于提供配送服务的后端服务器400。由此,能够在虚拟世界2中同时对多种服务进行模拟。以下,在对各后端服务器400进行区别的情况下,将提供按需巴士服务的服务系统用的后端服务器400记载为后端服务器x。另外,将提供配送服务的服务系统用的后端服务器400记载为后端服务器y。
69.对于由mas系统100进行的服务的模拟,通过后端服务器400与主体模拟器200之间
的服务消息的交换来进行。在主体模拟器200与后端服务器400之间由点线表示的信息流表示服务消息流。各后端服务器400与关系到服务的提供的主体模拟器200之间交换服务消息。在图1所示的例子中,后端服务器x与主体模拟器a、d之间交换服务消息,后端服务器y与主体模拟器a、c之间交换服务消息。
70.被交换的服务消息的内容根据主体模拟器200负责的主体的种类而不同。主体模拟器a负责的行人主体4a是利用由使用后端服务器x、y的各服务系统提供的服务的主体。后端服务器x、y从主体模拟器a接收包括服务利用信息的服务消息。服务利用信息是指与用户的服务系统的利用有关的现状和与将来计划有关的信息,包括当前的利用状态和基于应用程序操作的输入信息。另外,后端服务器x、y向主体模拟器a发送包括服务提供状态信息的服务消息。服务提供状态信息是指与服务系统中的用户的状态有关的信息、且通过用户终端的服务应用程序提供的信息。
71.主体模拟器d负责的自动驾驶巴士主体4d是通过使用后端服务器x的服务系统被使用于服务的提供的主体。主体模拟器c负责的物流机器人主体4c是通过使用后端服务器y的服务系统被使用于服务的提供的主体。后端服务器x、y从主体模拟器c、d接收包括动作状态信息的服务消息。动作状态信息是指与物流机器人、自动驾驶巴士的现状以及将来计划有关的信息。与现状有关的信息例如是指搭载传感器的状态、测定数据、搭载致动器的状态、与行动决定有关的状态。与将来计划有关的信息例如是指将来时刻、致动器的状态、与行动决定有关的状态的列表。另外,后端服务器x、y向主体模拟器c、d发送包括动作指示信息的服务消息。动作指示信息是包括用于使用物流机器人、自动驾驶巴士提供服务的将来计划的全部或者一部分的信息。例如,物流机器人、自动驾驶巴士应该移动的目标地点、路径包含于动作指示信息。
72.在mas系统100中,在多个后端服务器400间根据各个协定来进行服务消息的交换。此时所交换的服务消息例如包括各个服务中的用户的利用状态、服务的提供状况。通过在多个后端服务器400间交换服务消息,能够使在虚拟世界2中提供的服务相互协作。
73.在图1所示的例子中,在后端服务器x与后端服务器y之间进行服务消息的交换。通过使按需巴士服务和配送服务进行协作,例如能够使物流机器人主体4c预先在行人主体4a从自动驾驶巴士主体4d下车的下车地点6进行待机。另外,存在因拥堵等而自动驾驶巴士主体4d晚点的情况、行人主体4a没赶上所预定的自动驾驶巴士主体4d的情况。在那样的情况下,通过在后端服务器x、y间交换服务消息,能够使让物流机器人主体4c去往下车地点6的时间与行人主体4a的预测到达时间相匹配。
74.1-2.mas系统中的服务消息的具体例
75.图2表示在图1所示的虚拟世界2中交换的服务消息的具体例。在图2中,实线表示移动消息流,点线表示服务消息流。
76.图2所示的主体模拟器200在主体模拟器a、b、c、d之外还包括主体模拟器e、f。主体模拟器e负责的主体为固定摄像头。主体模拟器f负责的主体为自动门。存在于虚拟世界2的主体包括如包括固定摄像头的路侧传感器、自动门那样的安置物体。
77.以下,对各服务中的服务消息的内容的具体例进行说明。
78.在按需巴士服务中,在主体模拟器a与后端服务器x之间,进行基于用户终端的服务应用程序的服务的请求、和从后端服务器x对其的响应。并且,在主体模拟器d与后端服务
器x之间,从后端服务器x向主体模拟器d进行乘客的id、乘车地点、下车地点以及路径的指示。然后,进行基于后端服务器x的包括状态监视的自动驾驶巴士主体4d的管制。
79.在配送服务中,在主体模拟器a与后端服务器y之间进行基于用户终端的服务应用程序的服务的请求、和从后端服务器y对其的响应。并且,在主体模拟器c与后端服务器y之间,从后端服务器y向主体模拟器c发送对于物流机器人主体4c的动作指示。然后,进行基于后端服务器y的包括状态监视的物流机器人主体4c的管制。另外,后端服务器y对主体模拟器f指示用于物流机器人主体4c通行的自动门的开门。进一步,后端服务器y从主体模拟器e取得虚拟世界2中的物流机器人主体4c的位置信息的计算所需要的固定摄像头的图像信息。此外,从中央控制器300向主体模拟器e发送为了生成图像信息所需要的周围主体的位置信息。
80.2.mas系统的整体构成和信息流
81.以下,使用图3对mas系统100的整体构成和信息流进行说明。如图3所示,mas系统100具备多个主体模拟器200、一个中央控制器300以及多个服务系统用的后端服务器400。详细将在后面进行描述,但它们分散地设置于多个计算机。也即是,mas系统100是以通过多个计算机进行的并行分散处理为前提的系统。
82.中央控制器300作为其功能而具备移动消息分发器310和模拟编排器320。中央控制器300是安装于计算机的应用软件。移动消息分发器310和模拟编排器320是构成应用软件的程序。中央控制器300也可以与一个或者多个主体模拟器200共用作为硬件的计算机,但优选专用一个计算机。
83.移动消息分发器310对主体模拟器200间的移动消息的收发进行中继。在主体模拟器200与移动消息分发器310之间由实线表示的信息流表示移动消息流。移动消息分发器310承担中央控制器300具备的上述的移动消息的交换功能。移动消息分发器310与构成mas系统100的全部主体模拟器200之间进行通信。
84.模拟编排器(simulation conductor)320通过与主体模拟器200之间的模拟控制消息的交换来对主体模拟器200的模拟进行控制。在主体模拟器200与模拟编排器320之间由虚线表示的信息流是模拟控制消息流。模拟编排器320与构成mas系统100的全部主体模拟器200之间进行通信,对模拟控制消息进行交换。与经由移动消息分发器310在多个主体模拟器200间交换移动消息不同,模拟控制消息被在模拟编排器320与各个主体模拟器200之间个别地进行交换。通过模拟控制消息的交换,例如对模拟速度、模拟的停止、模拟的暂停、模拟的重新开始以及模拟的时间粒度进行控制。相对于在mas系统100整体上对模拟速度进行控制,模拟的停止、模拟的暂停、模拟的重新开始以及模拟的时间粒度被按主体模拟器200来进行控制。
85.后端服务器400是与在现实世界的服务系统中实际使用的服务器相同的后端服务器。mas系统100具备不同的服务系统用的多个后端服务器400。服务的模拟通过后端服务器400与主体模拟器200之间的服务消息的交换来进行。但是,与移动消息不同,服务消息的交换不经由中央控制器300而直接进行。在主体模拟器200与后端服务器400之间以及后端服务器400间由点线表示的信息流表示服务消息流。
86.在mas系统100中,通过多个后端服务器400与多个主体模拟器200之间的服务消息的交换,在现实世界中被提供并被利用的多个服务被同时进行模拟。进一步,服务消息的交
换不经由中央控制器300而直接进行,因此,各后端服务器400各自的处理能力被原样地反映于模拟。由此,能够同时高精度地对由多个服务系统提供的服务进行模拟。
87.主体模拟器200根据所负责的主体的种类而存在多个种类。例如,存在行人主体用的主体模拟器201、自主机器人/车辆主体用的主体模拟器202、vr行人主体用的主体模拟器203以及路侧传感器主体用的主体模拟器204。以下,主体模拟器200设为这些多种主体模拟器201、202、203、204的总称。
88.主体模拟器200作为其功能而具备收发控制器210、3d物理引擎220、服务系统客户端模拟器230以及模拟器核240。主体模拟器200是安装于计算机的应用软件。收发控制器210、3d物理引擎220、服务系统客户端模拟器230以及模拟器核240是构成应用软件的程序。这些功能在主体模拟器201、202、203、204之间不同。在此,对主体模拟器201、202、203、204间大致共同的功能进行说明,关于各个主体模拟器201、202、203、204的功能的详细,将在后面进行描述。
89.收发控制器210是主体模拟器200与其他程序之间的接口。收发控制器210进行来自移动消息分发器310的移动消息的接收和向移动消息分发器310的移动消息的发送。但是,在主体模拟器204中,仅进行移动消息的接收。收发控制器210进行来自模拟编排器320的模拟控制消息的接收和向模拟编排器320的模拟控制消息的发送。另外,收发控制器210进行来自后端服务器400的服务消息的接收和向后端服务器400的服务消息的发送。但是,在主体模拟器204中仅进行服务消息的发送。
90.3d物理引擎220基于从其他主体模拟器200接收到的移动消息,推定三维空间中的周围主体的当前状态。由3d物理引擎220进行使用图3说明过的基于周围主体的过去状态的当前状态的推定。3d物理引擎220基于周围主体的当前状态,生成在从自身主体的观测中得到的周边信息。另外,3d物理引擎220基于后述的模拟器核240的模拟结果,对三维空间中的自身主体的状态进行更新,生成表示了自身主体的状态的移动消息。但是,在主体模拟器204中,所负责的主体是不动的,因此,不进行自身主体的状态的更新和移动消息的生成。
91.服务系统客户端模拟器230对后端服务器400涉及的作为服务系统的客户端的自身主体的举止进行模拟。由收发控制器210接收到的服务消息被输入到服务系统客户端模拟器230。并且,从收发控制器210发送由服务系统客户端模拟器230生成的服务消息。但是,在主体模拟器204中,仅进行服务消息的生成。
92.模拟器核240对下一时间步中的自身主体的状态进行模拟。算出自身主体的状态的时间步的时间间隔为上述的时间粒度。模拟器核240中的模拟的内容按主体模拟器200的种类而不同。此外,主体模拟器204由于所负责的主体是不动的,不需要自身主体的状态的模拟,因此,没有模拟器核240。
93.3.主体模拟器的详细构成和信息流
94.接着,使用图4~图7对构成mas系统100的各种主体模拟器201、202、203、204的详细构成和信息流进行说明。此外,在图4~图7中,由实线表示的块(block)间的信息流表示移动消息流。另外,由点线表示的块间的信息流表示服务消息流。并且,由虚线表示的块间的信息流表示模拟控制消息流。
95.3-1.行人主体用主体模拟器
96.图4是表示行人主体用的主体模拟器201的构成和信息流的框图。以下,对行人主
体用的主体模拟器201的整体构成和各部的详细以及主体模拟器201中的信息流进行说明。
97.3-1-1.行人主体用主体模拟器的整体构成
98.主体模拟器201作为其功能而具备收发控制器211、3d物理引擎221、服务系统客户端模拟器231以及模拟器核241。这些功能作为概念而分别包含于收发控制器210、3d物理引擎220、服务系统客户端模拟器230以及模拟器核240。
99.收发控制器211作为接收各种消息的功能而具备移动消息接收部211a、服务消息接收部211b以及控制消息接收部211c。另外,收发控制器211作为发送各种消息的功能而具备移动消息发送部211d、服务消息发送部211e以及控制消息发送部211f。进一步,收发控制器211具备剩余时间率算出部211g和模拟动作控制部211h。构成收发控制器211的各部211a~211h分别是程序或者程序的一部分。
100.3d物理引擎221作为其功能而具备周围主体状态更新部221a、视觉信息生成部221b以及自身主体状态更新部221c。构成3d物理引擎221的各部221a、221b、221c分别为程序或者程序的一部分。
101.服务系统客户端模拟器231作为其功能而具备服务提供状态信息处理部231a和服务利用信息生成部231b。构成服务系统客户端模拟器231的各部231a、231b分别是程序或者程序的一部分。
102.模拟器核241作为其功能而具备整体移动方针决定部241a、行动决定部241b、下一时间步状态算出部241d、服务利用行动决定部241e以及速度调整部241g。构成模拟器核241的各部241a、241b、241d、241f、241g分别是程序或者程序的一部分。
103.3-1-2.收发控制器的详细
104.在收发控制器211中,移动消息接收部211a从移动消息分发器310取得移动消息。移动消息接收部211a向3d物理引擎221的周围主体状态更新部221a输出所接收到的移动消息。另外,移动消息接收部211a向剩余时间率算出部211g输出包括接收到移动消息的时刻的信息。
105.服务消息接收部211b从后端服务器400接收服务消息。服务消息接收部211b向服务系统客户端模拟器231的服务提供状态信息处理部231a输出所接收到的服务消息。
106.控制消息接收部211c从模拟编排器320接收模拟控制消息。控制消息接收部211c向模拟动作控制部211h输出所接收到的模拟控制消息。
107.移动消息发送部211d从3d物理引擎221的自身主体状态更新部221c取得包括自身主体的当前状态的移动消息。移动消息发送部211d向移动消息分发器310发送所取得的移动消息。另外,移动消息发送部211d向剩余时间率算出部211g发送包括移动消息的发送完成时刻的信息。
108.服务消息发送部211e从服务系统客户端模拟器231的服务利用信息生成部231b取得包括服务利用信息的服务消息。服务消息发送部211e向后端服务器400发送所取得的服务消息。
109.控制消息发送部211f从剩余时间率算出部211g取得包括与模拟的速度状况有关的信息的模拟控制消息。另外,控制消息发送部211f从模拟动作控制部211h取得包括主体模拟器201的控制状态的模拟控制消息。控制消息发送部211f向模拟编排器320发送从剩余时间率算出部211g和模拟动作控制部211h取得的模拟控制消息。
110.剩余时间率算出部211g从移动消息接收部211a取得包括移动消息的接收时刻的信息。另外,剩余时间率算出部211g从移动消息发送部211d取得包括移动消息的发送完成时刻的信息。进一步,剩余时间率算出部211g从模拟器核241的下一时间步状态算出部241d取得用于自身主体的状态更新的计算的开始时刻。
111.在此,将用于本次时间步中的自身主体的状态更新的计算的开始时刻设为ta(n)。将用于下一时间步中的自身主体的状态更新的计算的开始时刻设为ta(n 1)。将下一时间步中的自身主体的状态更新的计算所需要的其他主体的移动消息中的最后接收到的移动消息的接收时刻设为te_last(n)。将下下一时间步中的自身主体的状态更新的计算所需要的其他主体的移动消息中的最初接收到的移动消息的接收时刻设为te_first(n 1)。另外,将本次时间步中的移动消息的发送完成时刻作为td(n)。
112.剩余时间率算出部211g通过以下的各式来计算剩余时间、剩余时间率以及延迟时间。
113.剩余时间=ta(n 1)-te_last(n)
114.剩余时间率=(ta(n 1)-te_last(n))/(ta(n 1)-ta(n))
115.延迟时间=td(n)-te_first(n 1)
116.剩余时间率算出部211g向控制消息发送部211f输出包括剩余时间、剩余时间率以及延迟时间的模拟控制消息。剩余时间、剩余时间率以及延迟时间是与模拟的速度状况有关的信息。接收到包括这些信息的模拟控制消息的模拟编排器320决定应该对主体模拟器201指示的控制内容。应该对主体模拟器201指示的控制内容例如是指模拟速度、模拟的停止、模拟的暂停以及模拟的重新开始。模拟编排器320制作包括应该指示的控制内容的模拟控制消息,并发送给主体模拟器201。
117.模拟动作控制部211h从控制消息接收部211c取得模拟控制消息。模拟动作控制部211h按照模拟控制消息所包括的指示,对主体模拟器201的模拟动作进行控制。例如在被指示了模拟的时间粒度的变更的情况下,模拟动作控制部211h将主体模拟器201的模拟的时间粒度从初始值变更为所被指示了的时间粒度。时间粒度的初始值被作为设定值来存储于主体模拟器201。另外,时间粒度的上限值和下限值被按主体的种类而存储于模拟编排器320。
118.在基于模拟控制消息的指示内容为模拟速度的情况下,模拟动作控制部211h使3d物理引擎221、模拟器核241的动作频率变化,使模拟速度进行加速或者减速。例如对于模拟器核241,向模拟器核241的速度调整部241g输出所被指示了的模拟速度。此外,模拟速度意味着虚拟世界2的时间流相对于现实世界的时间流的速度比。在被指示了模拟的停止的情况下,模拟动作控制部211h使主体模拟器201的模拟停止。在被指示了模拟的暂停的情况下使模拟暂停,在被指示了重新开始的情况下使模拟重新开始。模拟动作控制部211h向控制消息发送部211f输出包括主体模拟器201的当前的控制状态的模拟控制消息。
119.3-1-3.3d物理引擎的详细
120.在3d物理引擎221中,周围主体状态更新部221a从移动消息接收部211a取得移动消息。从移动消息接收部211a取得的移动消息是经由移动消息分发器310从其他主体模拟器发送了的移动消息。周围主体状态更新部221a基于所取得的移动消息,推定存在于自身主体的周围的周围主体的当前状态。
121.在根据过去状态推定周围主体的当前状态的情况下,周围主体状态更新部221a使用保存于日志的周围主体的过去状态。使用周围主体的过去状态来推定当前状态的方法为如使用图3说明过的那样。周围主体状态更新部221a向视觉信息生成部221b输出所推定的周围主体的当前状态,并且,对日志进行更新。
122.视觉信息生成部221b从周围主体状态更新部221a取得周围主体的当前状态。视觉信息生成部221b基于周围主体的当前状态,生成在从自身主体的观测中得到的周边信息。自身主体为行人,因此,在观测中得到的周边信息意味着由行人的眼睛捕捉到的视觉信息。视觉信息生成部221b向模拟器核241的整体移动方针决定部241a、行动决定部241b以及服务利用行动决定部241e输出所生成的视觉信息。
123.自身主体状态更新部221c从模拟器核241的下一时间步状态算出部241d取得由模拟器核241进行了模拟的下一时间步中的自身主体的状态。自身主体状态更新部221c基于模拟器核241的模拟结果,对三维空间中的自身主体的状态进行更新。自身主体状态更新部221c向收发控制器211的移动消息发送部211d输出包括被进行了更新的自身主体的状态的移动消息。移动消息所包括的自身主体的状态包括本次时间步中的位置、方向、速度、加速度和下一时间步中的位置、方向、速度、加速度。另外,自身主体状态更新部221c向服务系统客户端模拟器231的服务利用信息生成部231b输出与被进行了更新的自身主体的状态有关的信息。
124.3-1-4.服务系统客户端模拟器的详细
125.在服务系统客户端模拟器231中,服务提供状态信息处理部231a从服务消息接收部211b取得服务消息。从服务消息接收部211b取得的服务消息包括服务提供状态信息。服务提供状态信息处理部231a对服务提供状态信息进行处理,取得与作为服务系统的用户的自身主体的状态有关的信息、和向用户终端的服务应用程序的输入项目。与作为自身主体的用户的状态有关的信息是在用户终端所提示的信息,输入项目是为了自身主体利用服务而被请求输入的信息。服务提供状态信息处理部231a向模拟器核241的整体移动方针决定部241a和服务利用行动决定部241e输出与作为自身主体的用户的状态有关的信息和向用户终端的服务应用程序的输入项目。
126.服务利用信息生成部231b从模拟器核241的服务利用行动决定部241e取得自身主体的服务利用行动的决定结果。另外,服务利用信息生成部231b从3d物理引擎221的自身主体状态更新部221c取得三维空间中的自身主体的状态。服务利用信息生成部231b基于所取得的这些信息来生成服务利用信息,并且,对自身主体的服务的利用状态进行更新。服务利用信息生成部231b向收发控制器211的服务消息发送部211e输出包括服务利用信息的服务消息。
127.3-1-5.模拟器核的详细
128.在模拟器核241中,整体移动方针决定部241a从3d物理引擎221的视觉信息生成部221b取得视觉信息。另外,整体移动方针决定部241a从服务系统客户端模拟器231的服务提供状态信息处理部231a取得与作为自身主体的用户的状态有关的信息、和向用户终端的服务应用程序的输入项目。整体移动方针决定部241a基于所取得的这些信息,决定自身主体在虚拟世界2中的整体的移动方针。整体移动方针决定部241a向行动决定部241b输出所决定的整体的移动方针。
129.行动决定部241b从整体移动方针决定部241a取得整体的移动方针,并且,从3d物理引擎221的视觉信息生成部221b取得视觉信息。行动决定部241b通过向移动模型241c输入整体的移动方针和视觉信息,决定自身主体的行动。移动模型241c是基于一定的移动方针对行人会根据映现于行人的眼睛的周边状况来如何移动进行了模型化的模拟模型。行动决定部241b向下一时间步状态算出部241d输出所决定的自身主体的行动。
130.下一时间步状态算出部241d取得由行动决定部241b决定的自身主体的行动。下一时间步状态算出部241d基于自身主体的行动,算出下一时间步中的自身主体的状态。所算出的自身主体的状态包括下一时间步中的自身主体的位置、方向、速度以及加速度。下一时间步状态算出部241d向3d物理引擎221的自身主体状态更新部221c输出所算出的下一时间步中的自身主体的状态。另外,下一时间步状态算出部241d向收发控制器211的剩余时间率算出部211g输出用于自身主体的状态更新的计算的开始时刻。
131.服务利用行动决定部241e从3d物理引擎221的视觉信息生成部221b取得视觉信息。另外,服务利用行动决定部241e从服务系统客户端模拟器231的服务提供状态信息处理部231a取得与作为自身主体的用户的状态有关的信息、和向用户终端的服务应用程序的输入项目。服务利用行动决定部241e通过向行动模型241f输入所取得的这些信息,决定自身主体的作为服务系统的用户的行动(服务利用行动)。行动模型241f是对在对用户提示与服务有关的信息、被请求了向用户终端的服务应用程序的输入的情况下用户会根据映现于用户的眼睛的周边状况来如何移动进行了模型化的模拟模型。服务利用行动决定部241e向服务利用信息生成部231b输出所决定的服务利用行动。
132.速度调整部241g从模拟动作控制部211h取得模拟速度。从模拟动作控制部211h取得的模拟速度是由模拟编排器320指示了的模拟速度。速度调整部241g按照来自模拟编排器320的指示,使基于模拟器核241的自身主体的模拟速度加速或者减速。
133.3-2.自主机器人/车辆主体用主体模拟器
134.图5是表示自主机器人/车辆主体用的主体模拟器202的构成和信息流的框图。自主机器人/车辆主体是指在后端服务器400关系到的服务系统中被使用于提供服务的自主机器人或者自主车辆的主体。以下,对自主机器人/车辆主体用的主体模拟器202的整体构成和各部的详细以及主体模拟器202中的信息流进行说明。
135.3-2-1.自主机器人/车辆主体用主体模拟器的整体构成
136.主体模拟器202作为其功能而具备收发控制器212、3d物理引擎222、服务系统客户端模拟器232以及模拟器核242。这些功能作为概念而分别包含于收发控制器210、3d物理引擎220、服务系统客户端模拟器230以及模拟器核240。
137.收发控制器212作为接收各种消息的功能而具备移动消息接收部212a、服务消息接收部212b以及控制消息接收部212c。另外,收发控制器212作为接收各种消息的功能而具备移动消息发送部212d、服务消息发送部212e以及控制消息发送部212f。进一步,收发控制器212具备剩余时间率算出部212g和模拟动作控制部212h。构成收发控制器211的各部212a~212h分别为程序或者程序的一部分。
138.3d物理引擎222作为其功能而具备周围主体状态更新部222a、传感器信息生成部222b以及自身主体状态更新部222c。构成3d物理引擎222的各部222a、222b、222c分别为程序或者程序的一部分。
139.服务系统客户端模拟器232作为其功能而具备路径计划用信息接收部232a和动作状态信息生成部232b。构成服务系统客户端模拟器232的各部232a、232b分别为程序或者程序的一部分。
140.模拟器核242作为其功能而具备整体的路径计划部242a、局部路径计划部242b、致动器操作量决定部242c以及下一时间步状态算出部242d。构成模拟器核242的各部242a、242b、242c、242d分别为程序或者程序的一部分。
141.3-2-2.收发控制器的详细
142.在收发控制器212中,移动消息接收部212a从移动消息分发器310接收移动消息。移动消息接收部212a向3d物理引擎222的周围主体状态更新部222a输出所接收到的移动消息。另外,移动消息接收部212a向剩余时间率算出部212g输出包括接收到移动消息的时刻的信息。
143.服务消息接收部212b从后端服务器400接收服务消息。服务消息接收部212b向服务系统客户端模拟器232的路径计划用信息接收部232a输出所接收到的服务消息。
144.控制消息接收部212c从模拟编排器320接收模拟控制消息。控制消息接收部212c向模拟动作控制部212h输出所接收到的模拟控制消息。
145.移动消息发送部212d从3d物理引擎222的自身主体状态更新部222c取得包括自身主体的当前状态的移动消息。移动消息发送部212d向移动消息分发器310发送所取得的移动消息。另外,移动消息发送部212d向剩余时间率算出部212g发送包括移动消息的发送完成时刻的信息。
146.服务消息发送部212e从服务系统客户端模拟器232的动作状态信息生成部232b取得包括动作状态信息的服务消息。服务消息发送部212e向后端服务器400发送所取得的服务消息。
147.控制消息发送部212f从剩余时间率算出部212g取得包括与模拟的速度状况有关的信息的模拟控制消息。另外,控制消息发送部212f从模拟动作控制部212h取得包括主体模拟器202的控制状态的模拟控制消息。控制消息发送部212f向模拟编排器320发送从剩余时间率算出部212g和模拟动作控制部212h取得的模拟控制消息。
148.剩余时间率算出部212g从移动消息接收部212a取得包括移动消息的接收时刻的信息。另外,剩余时间率算出部212g从移动消息发送部212d取得包括移动消息的发送完成时刻的信息。进一步,剩余时间率算出部212g从模拟器核242的下一时间步状态算出部242d取得用于自身主体的状态更新的计算的开始时刻。
149.剩余时间率算出部212g基于所取得的信息,通过上述的各式来计算剩余时间、剩余时间率以及延迟时间。剩余时间率算出部212g向控制消息发送部212f输出包括剩余时间、剩余时间率以及延迟时间的模拟控制消息。接收到包括这些信息的模拟控制消息的模拟编排器320制作包括应该对主体模拟器202进行指示的控制内容的模拟控制消息,并发送给主体模拟器202。
150.模拟动作控制部212h从控制消息接收部212c取得模拟控制消息。模拟动作控制部212h按照模拟控制消息所包含的指示,对主体模拟器202的模拟动作进行控制。例如,在被指示了模拟的时间粒度的变更的情况下,模拟动作控制部212h将主体模拟器202的模拟的时间粒度从初始值变更为所被指示了的时间粒度。时间粒度的初始值被作为设定值来存储
于主体模拟器202。另外,时间粒度的上限值和下限值被按主体的种类而存储于模拟编排器320。
151.在基于模拟控制消息的指示内容为模拟速度的情况下,模拟动作控制部212h按照所被指示了的模拟速度,使3d物理引擎222、模拟器核242的动作频率变化,对主体模拟器202的运算速度进行加速或者减速。在被指示了模拟的停止的情况下,模拟动作控制部212h使主体模拟器202的模拟停止。在被指示了模拟的暂停的情况下使模拟暂停,在被指示了重新开始的情况下使模拟重新开始。模拟动作控制部212h向控制消息发送部212f输出包括主体模拟器202的当前的控制状态的模拟控制消息。
152.3-2-3.3d物理引擎的详细
153.在3d物理引擎222中,周围主体状态更新部222a从移动消息接收部212a取得移动消息。从移动消息接收部212a取得的移动消息是经由移动消息分发器310而从其他主体模拟器发送了的移动消息。周围主体状态更新部222a基于所取得的移动消息,推定存在于自身主体的周围的周围主体的当前状态。
154.在根据过去状态推定周围主体的当前状态的情况下,周围主体状态更新部222a使用保存于日志的周围主体的过去状态。使用周围主体的过去状态来推定当前状态的方法为如使用图3说明过的那样。周围主体状态更新部222a向传感器信息生成部222b输出所推定的周围主体的当前状态,并且,对日志进行更新。
155.传感器信息生成部222b从周围主体状态更新部222a取得周围主体的当前状态。传感器信息生成部222b基于周围主体的当前状态,生成在从自身主体的观测中得到的周边信息。自身主体为自主机器人或者自主车辆,因此,在观测中得到的周边信息意味着通过自主机器人或者自主车辆的传感器捕捉的传感器信息。传感器信息生成部222b向模拟器核242的整体的路径计划部242a和服务系统客户端模拟器232的动作状态信息生成部232b输出所生成的传感器信息。
156.自身主体状态更新部222c从模拟器核242的下一时间步状态算出部242d取得通过模拟器核242进行了运算的下一时间步中的自身主体的状态。自身主体状态更新部222c基于模拟器核242的运算结果,对三维空间中的自身主体的状态进行更新。自身主体状态更新部222c向收发控制器212的移动消息发送部212d输出包括被进行了更新的自身主体的状态的移动消息。移动消息所包括的自身主体的状态包括本次时间步中的位置、方向、速度、加速度和下一时间步中的位置、方向、速度、加速度。另外,自身主体状态更新部222c向服务系统客户端模拟器232的动作状态信息生成部232b输出与被进行了更新的自身主体的状态有关的信息。
157.3-2-4.服务系统客户端模拟器的详细
158.在服务系统客户端模拟器232中,路径计划用信息接收部232a从服务消息接收部211b取得服务消息。从服务消息接收部212b取得的服务消息包括用于服务系统使用自主机器人/车辆提供服务的动作指示信息和与其他服务系统有关的信息。路径计划用信息接收部232a向模拟器核242的整体的路径计划部242a输出动作指示信息和其他服务系统信息。
159.动作状态信息生成部232b从模拟器核242的致动器操作量决定部242c取得自身主体的下一时间步中的致动器操作量。另外,动作状态信息生成部232b从3d物理引擎222的传感器信息生成部222b取得传感器信息,并且,从自身主体状态更新部222c取得三维空间中
的自身主体的状态。动作状态信息生成部232b基于所取得的这些信息,生成表示服务的提供涉及的自身主体的动作状态的动作状态信息。动作状态信息生成部232b向收发控制器212的服务消息发送部212e输出包括动作状态信息的服务消息。
160.3-2-5.模拟器核的详细
161.在模拟器核242中,整体的路径计划部242a从3d物理引擎222的传感器信息生成部222b取得传感器信息。另外,整体路径计划部242a从服务系统客户端模拟器232的路径计划用信息接收部232a取得动作指示信息和其他服务系统信息。整体路径计划部242a基于所取得的这些信息,对虚拟世界2中的自身主体的整体路径进行计划。整体路径意味着从自身主体的当前位置到目标地点为止的路径。从传感器信息生成部222b和路径计划用信息接收部232a取得的信息每次都会变化,因此,整体路径计划部242a按时间步而重新制订整体路径计划。整体路径计划部242a向局部路径计划部242b输出所决定的整体路径计划。
162.局部路径计划部242b从整体路径计划部242a取得整体路径计划。局部路径计划部242b基于整体路径计划,制订局部路径计划。局部路径例如意味着从当前时间点到预定时间步后为止的路径、或者从当前位置到预定距离为止的路径。局部路径计划例如由自身主体应该追寻的位置的集合和各位置处的速度或者加速度来表示。局部路径计划部242b向致动器操作量决定部242c输出所决定的局部路径计划。
163.致动器操作量决定部242c从局部路径计划部242b取得局部路径计划。致动器操作量决定部242c基于局部路径计划,决定下一时间步中的自身主体的致动器操作量。在此所说的致动器是指对自身主体的方向、速度以及加速度进行控制的致动器。在自身主体为用车轮进行行驶的自主机器人或者自主车辆的情况下,例如制动装置、驱动装置、转向装置等的致动器成为操作对象。致动器操作量决定部242c向下一时间步状态算出部242d和服务系统客户端模拟器232的动作状态信息生成部232b输出所决定的致动器操作量。
164.下一时间步状态算出部242d取得由致动器操作量决定部242c决定了的致动器操作量。下一时间步状态算出部242d基于致动器操作量来算出下一时间步中的自身主体的状态。所算出的自身主体的状态包括下一时间步中的自身主体的位置、方向、速度以及加速度。下一时间步状态算出部242d向3d物理引擎222的自身主体状态更新部222c输出所算出的下一时间步中的自身主体的状态。另外,下一时间步状态算出部242d向收发控制器212的剩余时间率算出部212g输出用于自身主体的状态更新的计算的开始时刻。
165.3-3.vr行人主体用主体模拟器
166.图6是表示vr行人主体用的主体模拟器203的构成和信息流的框图。vr行人主体是指用于实际存在的人使用vr(virtual reality,虚拟现实)系统参加作为模拟的对象的虚拟世界2的行人主体。以下,对vr行人主体用的主体模拟器203的整体构成和各部的详细以及主体模拟器203中的信息流进行说明。
167.3-3-1.vr行人主体用主体模拟器的整体构成
168.主体模拟器203作为其功能而具备收发控制器213、3d物理引擎223、服务系统客户端模拟器233以及模拟器核243。这些功能作为概念而分别包含于收发控制器210、3d物理引擎220、服务系统客户端模拟器230以及模拟器核240。
169.收发控制器213作为接收各种消息的功能而具备移动消息接收部213a、服务消息接收部213b以及控制消息接收部213c。另外,收发控制器213作为发送各种消息的功能而具
备移动消息发送部213d、服务消息发送部213e以及控制消息发送部213f。进一步,收发控制器213具备模拟动作控制部213h。构成收发控制器213的各部213a~213f、213h分别为程序或者程序的一部分。
170.3d物理引擎223作为其功能而具备周围主体状态更新部223a、视觉信息生成部223b以及自身主体状态更新部223c。构成3d物理引擎223的各部223a、223b、223c分别为程序或者程序的一部分。
171.服务系统客户端模拟器233作为其功能而具备服务提供状态信息处理部233a和服务利用信息生成部233b。构成服务系统客户端模拟器231的各部233a、233b分别为程序或者程序的一部分。
172.模拟器核243作为其功能而具备认知判断用信息提示部243a、移动操作受理部243b、下一时间步状态算出部243c以及应用程序操作受理部243d。构成模拟器核243的各部243a、243b、243c、243d分别为程序或者程序的一部分。
173.3-3-2.收发控制器的详细
174.在收发控制器213中,移动消息接收部213a从移动消息分发器310接收移动消息。移动消息接收部213a向3d物理引擎223的周围主体状态更新部223a输出所接收到的移动消息。
175.服务消息接收部213b从后端服务器400接收服务消息。服务消息接收部213b向服务系统客户端模拟器233的服务提供状态信息处理部233a输出所接收到的服务消息。
176.控制消息接收部213c从模拟编排器320接收模拟控制消息。控制消息接收部213c向模拟动作控制部213h输出所接收到的模拟控制消息。
177.移动消息发送部213d从3d物理引擎223的自身主体状态更新部223c取得包括自身主体的当前状态的移动消息。移动消息发送部213d向移动消息分发器310发送所取得的移动消息。
178.服务消息发送部213e从服务系统客户端模拟器233的服务利用信息生成部233b取得包括服务利用信息的服务消息。服务消息发送部213e向后端服务器400发送所取得的服务消息。
179.控制消息发送部213f从模拟动作控制部213h取得包括主体模拟器203的控制状态的模拟控制消息。控制消息发送部213f向模拟编排器320发送从模拟动作控制部213h取得的模拟控制消息。
180.模拟动作控制部213h从控制消息接收部213c取得模拟控制消息。模拟动作控制部213h按照模拟控制消息所包括的指示,对主体模拟器203的模拟动作进行控制。在不满足vr行人主体向虚拟世界2的参加条件的情况下,从模拟编排器320对主体模拟器203指示模拟的停止。
181.前述的主体模拟器201、202以及后述的主体模拟器204能够根据需要对模拟速度进行变更。但是,在模拟速度被变更了的情况下,经由vr行人主体来参加虚拟世界2的实际存在的参加者有可能对于与现实世界不同的时间流感到强烈的违和感。因而,在mas系统100中,将以实际时间进行模拟作为参加条件,容许vr行人主体向虚拟世界2的参加。在与现实世界的时间流相比而模拟速度被进行加速或者减速的情况下,模拟编排器320使主体模拟器203的模拟停止。模拟动作控制部213h向控制消息发送部213f输出包括主体模拟器203
的当前的控制状态的模拟控制消息。
182.3-3-3.3d物理引擎的详细
183.在3d物理引擎223中,周围主体状态更新部223a从移动消息接收部213a取得移动消息。从移动消息接收部213a取得的移动消息是经由移动消息分发器310而从其他主体模拟器发送了的移动消息。周围主体状态更新部223a基于所取得的移动消息,推定存在于自身主体的周围的周围主体的当前状态。
184.在根据过去状态推定周围主体的当前状态的情况下,周围主体状态更新部223a使用保存于日志的周围主体的过去状态。使用周围主体的过去状态来推定当前状态的方法为使用图3说明过的那样。周围主体状态更新部223a向视觉信息生成部223b输出所推定的周围主体的当前状态,并且,对日志进行更新。
185.视觉信息生成部223b从周围主体状态更新部223a取得周围主体的当前状态。视觉信息生成部223b基于周围主体的当前状态,生成在从自身主体的观测中得到的周边信息。自身主体为行人,因此,在观测中得到的周边信息意味着通过行人的眼睛捕捉的视觉信息。视觉信息生成部223b向模拟器核243的认知判断用信息提示部243a和移动操作受理部243b输出所生成的视觉信息。
186.自身主体状态更新部223c从模拟器核243的下一时间步状态算出部243c取得通过模拟器核243进行了运算的下一时间步中的自身主体的状态。自身主体状态更新部223c基于模拟器核243的运算结果,对三维空间中的自身主体的状态进行更新。自身主体状态更新部223c向收发控制器213的移动消息发送部213d输出包括被进行了更新的自身主体的状态的移动消息。移动消息所包括的自身主体的状态包括本次时间步中的位置、方向、速度、加速度和下一时间步中的位置、方向、速度、加速度。另外,自身主体状态更新部223c向服务系统客户端模拟器233的服务利用信息生成部233b输出与被进行了更新的自身主体的状态有关的信息。
187.3-3-4.服务系统客户端模拟器的详细
188.在服务系统客户端模拟器233中,服务提供状态信息处理部233a从服务消息接收部213b取得服务消息。从服务消息接收部213b取得的服务消息包括服务提供状态信息。服务提供状态信息处理部233a对服务提供状态信息进行处理,取得与作为服务系统的用户的自身主体的状态有关的信息、和向用户终端的服务应用程序的输入项目。与作为自身主体的用户的状态有关的信息是在用户终端所提示的信息,输入项目是为了自身主体利用服务而被请求输入的信息。服务提供状态信息处理部233a向模拟器核243的认知判断用信息提示部243a和应用程序操作受理部243d输出与作为自身主体的用户的状态有关的信息和向用户终端的服务应用程序的输入项目。
189.服务利用信息生成部233b从模拟器核243的应用程序操作受理部243d取得经由vr行人主体参加虚拟世界2的实际存在的参加者在vr上的服务应用程序的操作。另外,服务利用信息生成部233b从3d物理引擎223的自身主体状态更新部223c取得三维空间中的自身主体的状态。服务利用信息生成部233b基于所取得的这些信息来生成服务利用信息,并且,对自身主体的服务的利用状态进行更新。服务利用信息生成部233b向收发控制器213的服务消息发送部213e输出包括服务利用信息的服务消息。
190.3-3-5.模拟器核的详细
191.在模拟器核243中,认知判断用信息提示部243a从3d物理引擎223的视觉信息生成部223b取得视觉信息。另外,认知判断用信息提示部243a从服务系统客户端模拟器231的服务提供状态信息处理部233a取得与作为自身主体的用户的状态有关的信息、和向用户终端的服务应用程序的输入项目。所取得的这些信息是对于经由vr行人主体来参加虚拟世界2的实际存在的参加者来说的认知判断用的信息。认知判断用信息提示部243a通过vr系统对实际存在参加者提示认知判断用的信息。
192.移动操作受理部243b从3d物理引擎223的视觉信息生成部223b取得视觉信息。并且,移动操作受理部243b一边通过vr系统对实际存在参加者提示视觉信息,一边受理实际存在参加者在vr上的移动操作。移动操作受理部243b向下一时间步状态算出部243d输出所受理到的实际存在参加者在vr上的移动操作。
193.下一时间步状态算出部243d从移动操作受理部243b取得实际存在参加者在vr上的移动操作。下一时间步状态算出部243d基于实际存在参加者在vr上的移动操作,算出下一时间步中的自身主体的状态。所算出的自身主体的状态包括下一时间步中的自身主体的位置、方向、速度以及加速度。下一时间步状态算出部243d向3d物理引擎223的自身主体状态更新部223c输出所算出的下一时间步中的自身主体的状态。
194.应用程序操作受理部243d从3d物理引擎223的视觉信息生成部223b取得视觉信息。另外,应用程序操作受理部243d从服务系统客户端模拟器233的服务提供状态信息处理部233a取得与作为自身主体的用户的状态有关的信息、和向用户终端的服务应用程序的输入项目。应用程序操作受理部243d一边通过vr系统对实际存在参加者提示所取得的这些信息,一边受理实际存在参加者在vr上的服务应用程序的操作。应用程序操作受理部243d向服务系统客户端模拟器233的服务利用信息生成部233b输出所受理到的实际存在参加者在vr上的服务应用程序的操作。
195.3-4.路侧传感器主体用主体模拟器
196.图7是表示路侧传感器主体用的主体模拟器204的构成和信息流的框图。路侧传感器主体是指被使用于取得自主机器人/车辆主体在虚拟世界2中的位置信息的路侧传感器的主体。通过路侧传感器主体取得的自主机器人/车辆主体的位置信息被使用在后端服务器400关系到的服务系统中。以下,对路侧传感器主体用的主体模拟器204的整体构成和各部的详细以及主体模拟器204中的信息流进行说明。
197.3-4-1.路侧传感器主体用主体模拟器的整体构成
198.主体模拟器204作为其功能而具备收发控制器214、3d物理引擎224以及服务系统客户端模拟器234。这些功能作为概念而分别包含于收发控制器210、3d物理引擎220以及模拟器核240。主体模拟器204与其他主体模拟器不同,不具备模拟器核。
199.收发控制器214作为接收各种消息的功能而具备移动消息接收部214a和控制消息接收部214b。另外,收发控制器212作为发送各种消息的功能而具备服务消息发送部214e和控制消息发送部214f。进一步,收发控制器212具备剩余时间率算出部214g和模拟动作控制部214h。构成收发控制器214的各部212a、214c、214e、214f、214g、214h分别为程序或者程序的一部分。
200.3d物理引擎224作为其功能而具备周围主体状态更新部224a和传感器信息生成部224b。构成3d物理引擎224的各部224a、224b分别为程序或者程序的一部分。
201.服务系统客户端模拟器234作为其功能而具备服务消息生成部234a。构成服务系统客户端模拟器234的服务消息生成部234a是程序或者程序的一部分。
202.3-4-2.收发控制器的详细
203.在收发控制器214中,移动消息接收部214a从移动消息分发器310接收移动消息。移动消息接收部214a向3d物理引擎224的周围主体状态更新部224a输出所接收到的移动消息。另外,移动消息接收部214a向剩余时间率算出部214g输出包括接收到移动消息的时刻的信息。
204.控制消息接收部214c从模拟编排器320接收模拟控制消息。控制消息接收部214c向模拟动作控制部214h输出所接收到的模拟控制消息。
205.服务消息发送部214e从服务系统客户端模拟器234的服务消息生成部234a取得包括传感器信息的服务消息。服务消息发送部214e向后端服务器400发送所取得的服务消息。
206.控制消息发送部214f从剩余时间率算出部214g取得包括与模拟的速度状况有关的信息的模拟控制消息。另外,控制消息发送部214f从模拟动作控制部214h取得包括主体模拟器202的控制状态的模拟控制消息。控制消息发送部214f向模拟编排器320发送从剩余时间率算出部214g和模拟动作控制部214h取得的模拟控制消息。
207.剩余时间率算出部214g从移动消息接收部214a取得包括移动消息的接收时刻的信息。另外,剩余时间率算出部214g从服务消息发送部214e取得包括服务消息的发送完成时刻的信息。剩余时间率算出部214g基于所取得的信息,通过上述的各式来计算剩余时间、剩余时间率以及延迟时间。但是,在剩余时间和剩余时间率的计算中,对ta(n 1)和ta(n)使用根据主体模拟器202的动作频率计算的计算值。另外,对于td(n),代替本次时间步中的移动消息的发送完成时刻而使用服务消息的发送完成时刻。
208.剩余时间率算出部214g向控制消息发送部214f输出包括剩余时间、剩余时间率以及延迟时间的模拟控制消息。接收到包括这些信息的模拟控制消息的模拟编排器320制作包括应该对主体模拟器204进行指示的控制内容的模拟控制消息,并发送给主体模拟器204。
209.模拟动作控制部214h从控制消息接收部214c取得模拟控制消息。模拟动作控制部214h按照模拟控制消息所包括的指示,对主体模拟器202的模拟动作进行控制。例如,在被指示了模拟的时间粒度的变更的情况下,模拟动作控制部214h将主体模拟器202的模拟的时间粒度从初始值变更为所被指示了的时间粒度。时间粒度的初始值被作为设定值来存储于主体模拟器204。另外,时间粒度的上限值和下限值被按主体的种类而存储于模拟编排器320。
210.在基于模拟控制消息的指示内容为模拟速度的情况下,模拟动作控制部214h按照所被指示的模拟速度使3d物理引擎224的动作频率变化,对主体模拟器204的运算速度进行加速或者减速。在指示了模拟的停止的情况下,模拟动作控制部214h使通过主体模拟器204进行的模拟停止。在指示了模拟的暂停的情况下使模拟暂停,在被指示了重新开始的情况下使模拟重新开始。模拟动作控制部214h向控制消息发送部214f输出包括主体模拟器204的当前的控制状态的模拟控制消息。
211.3-4-3.3d物理引擎的详细
212.在3d物理引擎224中,周围主体状态更新部224a从移动消息接收部214a取得移动
消息。从移动消息接收部214a取得的移动消息是经由移动消息分发器310而从其他主体模拟器发送了的移动消息。周围主体状态更新部224a基于所取得的移动消息,推定存在于自身主体的周围的周围主体的当前状态。
213.在根据过去的状态推定周围主体的当前状态的情况下,周围主体状态更新部224a使用保存于日志的周围主体的过去状态。使用周围主体的过去状态来推定当前状态的方法为使用图3说明过的那样。周围主体状态更新部224a向传感器信息生成部224b输出所推定的周围主体的当前状态,并且,对日志进行更新。
214.传感器信息生成部224b从周围主体状态更新部224a取得周围主体的当前状态。传感器信息生成部224b基于周围主体的当前状态,生成在从自身主体的观测中得到的周边信息。自身主体为如摄像头那样的安置型的路侧传感器,因此,在观测中得到的周边信息意味着通过路侧传感器捕捉的传感器信息。传感器信息生成部224b向服务系统客户端模拟器234的服务消息生成部234a输出所生成的传感器信息。
215.3-4-4.服务系统客户端模拟器的详细
216.在服务系统客户端模拟器234中,服务消息生成部234a从3d物理引擎224的传感器信息生成部224b取得传感器信息。服务消息生成部234a向收发控制器214的服务消息发送部214e输出包括所取得的传感器信息的服务消息。
217.4.mas系统的模拟结果的汇总和评价
218.通过mas系统100进行模拟,由此,得到关于模拟的对象世界的各种各样的数据。图8表示用于对mas系统100的模拟结果进行汇总并进行评价的构成。
219.mas系统100在各处具备存储通过模拟得到的数据的日志的数据记录器。在主体模拟器200设置有数据记录器250、260、270、280。数据记录器250存储收发控制器210内的数据日志(控制器日志)。数据记录器260存储3d物理引擎220内的数据日志(3d物理引擎日志)。数据记录器270存储服务系统客户端模拟器230内的数据日志(服务模拟日志)。数据记录器280存储模拟器核240内的数据日志(模拟核日志)。
220.在中央控制器300设置有数据记录器330、340。数据记录器330存储移动消息分发器310内的数据日志(移动消息分发器日志)。数据记录器340存储模拟编排器320内的数据日志(编排器日志)。
221.在后端服务器400设置有数据记录器410。数据记录器410存储后端服务器400内的数据日志(服务系统日志)。
222.另外,mas系统100具备服务系统日志汇总部500、主体移动日志汇总部510、模拟核日志汇总部520、资产信息数据库530、时间空间数据库540以及查看器550。这些安装于模拟结果评价用的计算机。
223.在服务系统日志汇总部500中,从数据记录器270、410收集有数据日志。收集于服务系统日志汇总部500的这些数据日志是与服务系统有关的数据日志。能够根据该数据日志来评价服务是否已被正确地提供。另外,也能够对包括如物流机器人那样的服务用资源的工作率的、服务提供上的着眼点进行评价。
224.在主体移动日志汇总部510中,从数据记录器250、260、330、340收集有数据日志。收集于主体移动日志汇总部510的这些数据日志是与主体的移动有关的数据日志。能够根据该数据日志,对主体的正常动作进行确认。另外,也能够确认有无如主体重复那样的问
题。在模拟的途中产生了错误的情况下,能够从数据日志输出模拟内容被设想为有效的时间范围。
225.在模拟核日志汇总部520中,从数据记录器280和主体移动日志汇总部510收集有数据日志。收集于模拟核日志汇总部520的这些数据日志是与模拟的着眼点有关的数据日志。若是对于行人的模拟,则能够根据该数据日志对人的密度进行评价,若是机器人的模拟,则能够根据该数据日志对内部的判断结果等的着眼点进行评价。
226.在资产信息数据库530中保存有从bim/cim数据或者bim/cim数据变换而得到的建筑物等的固定物的三维信息和各主体的三维信息。
227.在时间空间数据库540中保存有模拟用的虚拟数据。基于通过服务系统日志汇总部500、主体移动日志汇总部510以及模拟核日志汇总部520汇总后的各数据日志的评价结果被反映于时间空间数据库540的虚拟数据。
228.查看器550使用保存于资产信息数据库530的固定物、主体的三维信息和保存于时间空间数据库540的虚拟数据,将虚拟世界2显示于监视器。
229.5.mas系统的物理构成
230.对mas系统100的物理构成进行说明。图9是表示mas系统100的物理构成的一个例子的图。mas系统100例如可以由配置在同一子网30上的多个计算机10构成。进一步,通过网关40将子网30和其他子网32相连接,能够将mas系统100扩大到配置在了子网32上的多个计算机10。
231.在图9所示的例子中,作为软件的中央控制器300安装于一个计算机10。但是,也可以使中央控制器300的功能分散于多个计算机10。
232.另外,mas系统100具备多个后端服务器400。在图9所示的例子中,各个后端服务器400安装于各自分开的计算机10。但是,也可以使后端服务器400的功能分散于多个计算机10。另外,也可以通过将一个服务器分割为多个服务器的虚拟化技术,在一个计算机10安装多个后端服务器400。
233.在图9所示的例子中,在一个计算机10安装有多个主体模拟器200。作为在一个计算机10上使多个主体模拟器200独立地动作的方法,可以使用虚拟化技术。作为虚拟化技术,既可以是虚拟机,也可以是容器虚拟化。既可以在一个计算机10安装相同种类的多个主体模拟器200,也可以安装种类不同的多个主体模拟器200。此外,也可以在一个计算机10仅安装有一个主体模拟器200。
234.如上所述,mas系统100不是采用通过单一的计算机进行的处理,而是采用使用了多个计算机10的并行分散处理。由此,能够防止因计算机的处理能力而搭乘于虚拟世界2的主体的数量受到限制、因计算机的处理能力而在虚拟世界2中提供的服务的数量受到限制。也即是,根据mas系统100,能够进行通过并行分散处理实现的大规模的模拟。
235.6.其他
236.也可以设置用于从外面观察虚拟世界2的观察用主体。观察用主体例如既可以如街角摄像头那样的安置物体,也可以是如具备了摄像头的无人机那样的移动物体。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献