JP7441080B2 - Simulator, simulation method and simulation program - Google Patents

Simulator, simulation method and simulation program Download PDF

Info

Publication number
JP7441080B2
JP7441080B2 JP2020038114A JP2020038114A JP7441080B2 JP 7441080 B2 JP7441080 B2 JP 7441080B2 JP 2020038114 A JP2020038114 A JP 2020038114A JP 2020038114 A JP2020038114 A JP 2020038114A JP 7441080 B2 JP7441080 B2 JP 7441080B2
Authority
JP
Japan
Prior art keywords
agent
destination
agents
time
destinations
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.)
Active
Application number
JP2020038114A
Other languages
Japanese (ja)
Other versions
JP2021140491A (en
Inventor
あゆみ 古河
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Secom Co Ltd
Original Assignee
Secom Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Secom Co Ltd filed Critical Secom Co Ltd
Priority to JP2020038114A priority Critical patent/JP7441080B2/en
Publication of JP2021140491A publication Critical patent/JP2021140491A/en
Application granted granted Critical
Publication of JP7441080B2 publication Critical patent/JP7441080B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、群集の行動を予測するシミュレータ、シミュレーション方法及びシミュレーションプログラムに関する。 The present invention relates to a simulator, a simulation method, and a simulation program for predicting crowd behavior.

近年、大勢の人々が集まる空間について、空間設計やその改善の効果、運用施策の導入やその改善等の効果を予測するために、群集の行動を予測するシミュレータが用いられている。また、そのようなシミュレータで用いる方法の一つとして、群集を構成する個体それぞれをエージェントと呼ばれるデータで表すマルチエージェントシミュレーションが知られている。
マルチエージェントシミュレーションにより移動を伴う行動を模擬する場合、そのシミュレーションは、模擬対象の空間内にエージェントが向かうべき目的地を複数設定するとともに、エージェントそれぞれの目的地を設定して行われる。
例えば特許文献1には避難者を模した個体それぞれの目的地を当該個体の位置から最も近い出口に決定することが記載されている。
In recent years, simulators that predict crowd behavior have been used to predict the effects of spatial design and improvements, introduction of operational measures, and improvements in spaces where large numbers of people gather. Furthermore, as one of the methods used in such a simulator, multi-agent simulation is known in which each individual forming a crowd is represented by data called an agent.
When simulating an action that involves movement using a multi-agent simulation, the simulation is performed by setting a plurality of destinations for the agent to go to within the space to be simulated, and setting a destination for each agent.
For example, Patent Document 1 describes that the destination of each individual imitating an evacuee is determined to be the exit closest to the location of the individual.

特開2019-185074号公報JP 2019-185074 Publication

しかしながら、従来のシミュレータが行うマルチエージェントシミュレーションでは、エージェントが一律の基準で目的地を決定していたため複数のエージェントが一斉に同じ目的地に向かうという不自然な挙動を発生することがあった。
例えば、目的地までの距離で目的地を決定する従来技術では、互いに近傍に位置するエージェントが一斉に同じ目的地に向かってしまう。また、待ち数の少なさで目的地を決定することも考えられるが、その場合、まずエージェントが最も待ち数の少ない目的地に一斉に向かい、当該目的地に到達すると当該目的地の待ち数が増加するため2番目に待ち数の少なかった目的地に一斉に向かうという挙動が一斉移動するエージェントの数を減らしながら繰り返されてしまう。
However, in multi-agent simulations performed by conventional simulators, agents determine destinations based on uniform criteria, which can result in unnatural behavior in which multiple agents head to the same destination all at once.
For example, in the conventional technology that determines a destination based on the distance to the destination, agents located close to each other end up heading to the same destination all at once. It is also possible to decide on a destination based on the number of waiters, but in that case, the agents head all at once to the destination with the least number of waiters, and when they arrive at that destination, the number of waiters at that destination increases. As the number of agents increases, the behavior of heading all at once to the destination with the second lowest number of queues is repeated while reducing the number of agents moving at the same time.

本発明は、上記の問題点を鑑みてなされたものであり、移動する複数のエージェントが不自然に1つの目的地に集中する挙動を解消できるシミュレータ、シミュレーション方法及びシミュレーションプログラムを目的とする。 The present invention has been made in view of the above problems, and aims to provide a simulator, a simulation method, and a simulation program that can eliminate the behavior of a plurality of moving agents unnaturally concentrating on one destination.

本発明の一形態によれば、複数のエージェントが、所定の空間において複数の目的地へ移動する行動を模擬するシミュレータが与えられる。シミュレータは、エージェント毎に、複数の目的地の各々における待ち時間に関する統計情報を記憶する統計情報記憶手段と、複数のエージェントの中から処理対象である対象エージェントを順次選択するエージェント選択手段と、複数のエージェントのうち対象エージェント以外を少なくとも1以上含む他エージェントの行動に応じて、複数の目的地の各々への他エージェントの到達数を予測する到達数予測手段と、到達数と対象エージェントの統計情報とに基づいて、複数の目的地の各々における待ち時間を予測する待ち時間予測手段と、目的地について待ち時間が短いほど高くなる評価値を算出する評価値算出手段と、評価値に基づいて目的地へ移動する対象エージェントの行動を模擬する行動模擬手段と、を備える。 According to one aspect of the present invention, a simulator is provided that simulates the behavior of a plurality of agents moving to a plurality of destinations in a predetermined space. The simulator includes a statistical information storage means for storing statistical information regarding waiting times at each of a plurality of destinations for each agent, an agent selection means for sequentially selecting a target agent to be processed from among the plurality of agents, and a plurality of agents. arrival number prediction means for predicting the number of arrivals of other agents to each of a plurality of destinations according to the actions of other agents including at least one agent other than the target agent among the agents, and statistical information on the number of arrivals and the target agent. a waiting time prediction means for predicting the waiting time at each of a plurality of destinations based on the above; an evaluation value calculation means for calculating an evaluation value that increases as the waiting time for a destination is shorter; and a behavior simulating means for simulating the behavior of a target agent moving to the ground.

本発明の他の形態によれば、複数のエージェントが、所定の空間において複数の目的地へ移動する行動を模擬するシミュレーション方法が与えられる。シミュレーション方法では、所定の記憶装置にエージェント毎に記憶された、複数の目的地の各々における待ち時間に関する統計情報を読み込む処理と、複数のエージェントの中から処理対象である対象エージェントを順次選択する処理と、複数のエージェントのうち対象エージェント以外を少なくとも1以上含む他エージェントの行動に応じて、複数の目的地の各々への他エージェントの到達数を予測する処理と、到達数と対象エージェントの統計情報とに基づいて、複数の目的地の各々における待ち時間を予測する処理と、目的地について待ち時間が短いほど高くなる評価値を算出する処理と、評価値に基づいて目的地へ移動する対象エージェントの行動を模擬する処理と、をコンピュータが実行する。 According to another aspect of the present invention, a simulation method is provided for simulating the behavior of a plurality of agents moving to a plurality of destinations in a predetermined space. The simulation method involves a process of reading statistical information about waiting times at each of a plurality of destinations, which is stored for each agent in a predetermined storage device, and a process of sequentially selecting a target agent to be processed from among the plurality of agents. and a process of predicting the number of arrivals of other agents to each of the plurality of destinations according to the actions of other agents including at least one agent other than the target agent among the plurality of agents, and statistical information of the number of arrivals and the target agent. A process for predicting the waiting time at each of a plurality of destinations based on the above, a process for calculating an evaluation value that increases as the waiting time for a destination is shorter, and a target agent that moves to the destination based on the evaluation value. A computer executes a process that simulates the behavior of

本発明の更なる他の形態によれば、複数のエージェントが、所定の空間において複数の目的地へ移動する行動を模擬するシミュレーションプログラムが与えられる。シミュレーションプログラムは、所定の記憶装置にエージェント毎に記憶された、複数の目的地の各々における待ち時間に関する統計情報を読み込む処理と、複数のエージェントの中から処理対象である対象エージェントを順次選択する処理と、複数のエージェントのうち対象エージェント以外を少なくとも1以上含む他エージェントの行動に応じて、複数の目的地の各々への他エージェントの到達数を予測する処理と、到達数と対象エージェントの統計情報とに基づいて、複数の目的地の各々における待ち時間を予測する処理と、目的地について待ち時間が短いほど高くなる評価値を算出する処理と、評価値に基づいて目的地へ移動する対象エージェントの行動を模擬する処理と、をコンピュータが実行させる。 According to still another aspect of the present invention, a simulation program is provided that simulates the behavior of a plurality of agents moving to a plurality of destinations in a predetermined space. The simulation program includes a process of reading statistical information regarding waiting times at each of a plurality of destinations, which is stored for each agent in a predetermined storage device, and a process of sequentially selecting a target agent to be processed from among the plurality of agents. and a process of predicting the number of arrivals of other agents to each of the plurality of destinations according to the actions of other agents including at least one agent other than the target agent among the plurality of agents, and statistical information of the number of arrivals and the target agent. A process for predicting the waiting time at each of a plurality of destinations based on the above, a process for calculating an evaluation value that increases as the waiting time for a destination is shorter, and a target agent that moves to the destination based on the evaluation value. A computer executes a process that simulates the behavior of.

本発明によれば、移動する複数のエージェントの群集行動を模擬するシミュレーションにおいて、これらのエージェントが不自然に1つの目的地に集中する挙動を解消できる。 According to the present invention, in a simulation simulating the crowd behavior of a plurality of moving agents, it is possible to eliminate the behavior of these agents unnaturally concentrating on one destination.

実施形態に係るシミュレータの一例の概略構成図である。FIG. 1 is a schematic configuration diagram of an example of a simulator according to an embodiment. 実施形態に係るシミュレータの一例の機能ブロック図である。FIG. 2 is a functional block diagram of an example of a simulator according to an embodiment. 空間情報記憶手段に記憶される対象空間の地図情報の一例の模式図である。FIG. 3 is a schematic diagram of an example of map information of a target space stored in a spatial information storage means. 空間情報記憶手段に記憶される空間情報(行動目的情報及び目的地情報)の一例を示す図である。FIG. 3 is a diagram showing an example of spatial information (behavior purpose information and destination information) stored in a spatial information storage means. エージェント情報記憶手段に記憶される第1のエージェント情報の一例を示す図である。FIG. 3 is a diagram showing an example of first agent information stored in an agent information storage means. エージェント情報記憶手段に記憶される第2のエージェント情報の一例を示す図である。It is a figure which shows an example of the 2nd agent information stored in an agent information storage means. エージェント情報記憶手段に記憶される第3のエージェント情報の一例を示す図である。FIG. 7 is a diagram showing an example of third agent information stored in agent information storage means. エージェント情報記憶手段に記憶される第4のエージェント情報の一例を示す図である。It is a figure which shows an example of the 4th agent information stored in an agent information storage means. 統計情報記憶手段に記憶される統計情報の一例を示す図である。It is a figure which shows an example of the statistical information stored in a statistical information storage means. (a)及び(b)は1番目の行動目的を達成する成功確率の算出方法の一例の説明図である。(a) and (b) are explanatory diagrams of an example of a method of calculating the probability of success in achieving the first behavioral objective. (a)~(c)は2番目以降の行動目的を達成する成功確率の算出方法の一例の説明図である。(a) to (c) are explanatory diagrams of an example of a method of calculating the probability of success in achieving the second and subsequent behavioral objectives. (a)及び(b)は、統計情報記憶手段に記憶される確率分布が統計情報更新手段によって更新されて、エージェント毎に違いが生じる様子を説明する図である。(a) and (b) are diagrams illustrating how the probability distribution stored in the statistical information storage means is updated by the statistical information updating means and differences occur for each agent. 第1実施形態のシミュレーション方法の全体処理の一例のフローチャートである。3 is a flowchart of an example of the overall processing of the simulation method according to the first embodiment. 統計情報更新処理の一例のフローチャートである。3 is a flowchart of an example of statistical information update processing. 統計情報更新処理の一例のフローチャートである。3 is a flowchart of an example of statistical information update processing. 行動決定処理の一例のフローチャートである。It is a flow chart of an example of action decision processing. 評価値算出処理の一例のフローチャートである。It is a flowchart of an example of evaluation value calculation processing. エージェント状態更新処理の一例のフローチャートである。12 is a flowchart of an example of agent state update processing. 第2実施形態における目的地へのエージェントの到達数の予測方法の説明図である。FIG. 7 is an explanatory diagram of a method for predicting the number of agents arriving at a destination in the second embodiment. 第2実施形態における待ち時間算出手段の一例の機能ブロック図である。It is a functional block diagram of an example of a waiting time calculation means in a 2nd embodiment. 第2実施形態における所要時間分布算出処理の一例のフローチャートである。12 is a flowchart of an example of a required time distribution calculation process in the second embodiment.

以下において、図面を参照して本発明の実施形態を説明する。なお、以下に示す本発明の実施形態は、本発明の技術的思想を具体化するための装置や方法を例示するものであって、本発明の技術的思想は、構成部品の構造、配置等を下記のものに特定するものではない。本発明の技術的思想は、特許請求の範囲に記載された請求項が規定する技術的範囲内において、種々の変更を加えることができる。 Embodiments of the present invention will be described below with reference to the drawings. Note that the embodiments of the present invention shown below exemplify devices and methods for embodying the technical idea of the present invention. is not limited to the following: The technical idea of the present invention can be modified in various ways within the technical scope defined by the claims.

本発明の実施形態として、客席、トイレおよび売店を有する劇場において複数の人が客席、トイレおよび売店を利用する行動を予測するシミュレータの例を示す。
すなわち、本実施形態において、シミュレーションの対象となる空間(対象空間)は劇場であり、群集を構成する個体は人であり、各個体の行動目的は、劇場の座席への「着席」と、「用便」と、「買い物」である。以下、シミュレータにおける個体のデータを「エージェント」と表記する。
As an embodiment of the present invention, an example of a simulator that predicts the behavior of a plurality of people using seats, toilets, and shops in a theater having seats, toilets, and shops will be shown.
That is, in this embodiment, the space to be simulated (target space) is a theater, the individuals making up the crowd are people, and the purpose of each individual's behavior is to "take a seat" in the theater seat and "``Urban'' and ``Shopping.'' Hereinafter, the data of an individual in the simulator will be referred to as an "agent."

また、この実施形態においては、シミュレーションの実施者(以下「利用者」と表記する)が、シミュレータを用いて幕間時間の群集の行動を予測する例について説明する。また、複数回の幕間時間を経て群集の行動の予測が変化する例について説明する。ちなみに、簡単化のために、幕前、幕後は省略するものとする。
なお、本明細書において説明される劇場は、あくまで対象空間の一例であり、本発明の対象はこれに限定されるものではない。
Further, in this embodiment, an example will be described in which a simulation implementer (hereinafter referred to as "user") uses a simulator to predict the behavior of a crowd during intermission time. Furthermore, an example will be described in which the prediction of crowd behavior changes after a plurality of intermission times. Incidentally, for the sake of simplicity, the periods before and after the curtain will be omitted.
Note that the theater described in this specification is just an example of a target space, and the target of the present invention is not limited to this.

(第1実施形態)
(構成)
図1は、第1実施形態に係るシミュレータの一例の概略構成図である。
シミュレータ1は、操作入力部2、ファイル入出力部3、記憶部4、制御部5、および表示部6からなる。これらのうちのファイル入出力部3、記憶部4および制御部5はいわゆるコンピュータで実現でき、操作入力部2および表示部6は当該コンピュータの周辺機器として実現できる。
操作入力部2は、キーボード、マウス等のユーザーインターフェースであり、利用者に操作されてデータの入力等に用いられる。操作入力部2は、制御部5に接続され、利用者の操作を操作信号に変換して制御部5に出力する。
(First embodiment)
(composition)
FIG. 1 is a schematic configuration diagram of an example of a simulator according to a first embodiment.
The simulator 1 includes an operation input section 2, a file input/output section 3, a storage section 4, a control section 5, and a display section 6. Of these, the file input/output section 3, storage section 4, and control section 5 can be realized by a so-called computer, and the operation input section 2 and display section 6 can be realized as peripheral devices of the computer.
The operation input unit 2 is a user interface such as a keyboard and a mouse, and is operated by a user and used for inputting data and the like. The operation input section 2 is connected to the control section 5 , converts a user's operation into an operation signal, and outputs the signal to the control section 5 .

ファイル入出力部3は、DVD(Digital Versatile Disc)ドライブ、USB(Universal Serial Bus)インターフェース、ネットワークインターフェース等であり、一方が不図示の外部機器、記録メディア、ネットワーク等に接続され、他方が制御部5に接続され、データをファイルとして制御部5に入力し、およびデータをファイルとして制御部5から出力する。
記憶部4は、ROM(Read Only Memory)、RAM(Random Access Memory)等のメモリ装置であり、各種プログラムや各種データを記憶する。記憶部4は、制御部5と接続されて制御部5との間でこれらの情報を入出力する。
The file input/output unit 3 includes a DVD (Digital Versatile Disc) drive, a USB (Universal Serial Bus) interface, a network interface, etc., and one side is connected to an external device (not shown), a recording medium, a network, etc., and the other side is a control unit. 5, inputs data to the control unit 5 as a file, and outputs data from the control unit 5 as a file.
The storage unit 4 is a memory device such as a ROM (Read Only Memory) or a RAM (Random Access Memory), and stores various programs and various data. The storage unit 4 is connected to the control unit 5 and inputs and outputs this information to and from the control unit 5.

制御部5は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、MCU(Micro Control Unit)等の演算装置で構成される。制御部5は、記憶部4と接続され、記憶部4からプログラムを読み出して実行することにより各種処理部として動作し、各種データを記憶部4に記憶させ、読み出す。また、制御部5は、操作入力部2、ファイル入出力部3および表示部6とも接続され、利用者が操作入力部2を操作して入力されたデータを取得し、ファイル入出力部3を介して外部からファイルとしてデータを取得および出力し、所得したデータに基づいたシミュレーションを行って群集の行動を予測し、予測結果のデータをファイルとしてファイル入出力部3から出力させ、および/または予測結果のデータを画像化して表示部6に表示させる。
表示部6は、液晶ディスプレイ又はCRT(Cathode Ray Tube)ディスプレイ等のディスプレイ装置であり、制御部5と接続され、制御部5による予測結果を表示する。利用者は表示された予測結果を視認して群集の行動に関する考察等を行う。
The control unit 5 is composed of arithmetic devices such as a CPU (Central Processing Unit), a DSP (Digital Signal Processor), and an MCU (Micro Control Unit). The control unit 5 is connected to the storage unit 4 and operates as a various processing unit by reading and executing programs from the storage unit 4, and stores various data in the storage unit 4 and reads them out. The control unit 5 is also connected to the operation input unit 2, the file input/output unit 3, and the display unit 6, and receives data input by the user by operating the operation input unit 2, and displays the file input/output unit 3. acquire and output data from the outside as a file through the computer, perform a simulation based on the acquired data to predict the behavior of the crowd, output the prediction result data as a file from the file input/output unit 3, and/or make a prediction. The resulting data is converted into an image and displayed on the display unit 6.
The display unit 6 is a display device such as a liquid crystal display or a CRT (Cathode Ray Tube) display, and is connected to the control unit 5 and displays prediction results by the control unit 5. The user visually checks the displayed prediction results and considers the behavior of the crowd.

(シミュレータ1の機能)
図2は、第1実施形態に係るシミュレータ1の一例の機能ブロック図である。
操作入力部2は、条件設定手段20の一部等として機能し、ファイル入出力部3は条件設定手段20の一部および予測結果出力手段60の一部等として機能する。
記憶部4は模擬条件記憶手段40、空間情報記憶手段41、エージェント情報記憶手段42および統計情報記憶手段43等として機能する。
(Functions of simulator 1)
FIG. 2 is a functional block diagram of an example of the simulator 1 according to the first embodiment.
The operation input unit 2 functions as a part of the condition setting means 20, and the file input/output unit 3 functions as a part of the condition setting means 20 and a part of the prediction result output means 60.
The storage unit 4 functions as a simulation condition storage means 40, a spatial information storage means 41, an agent information storage means 42, a statistical information storage means 43, and the like.

制御部5は、CPU、DSP、MCU等の演算装置によって記憶部4に格納されたコンピュータプログラムを実行することにより、評価値算出手段50、目的地選択手段51、行動模擬手段52および統計情報更新手段53等として機能する。
条件設定手段20は、シミュレーションに必要な各種条件の入力を受け付け、入力された条件を模擬条件記憶手段40、空間情報記憶手段41、エージェント情報記憶手段42および統計情報記憶手段43に記憶させる。
The control unit 5 executes a computer program stored in the storage unit 4 by a calculation device such as a CPU, DSP, or MCU, thereby updating the evaluation value calculation means 50, the destination selection means 51, the behavior simulation means 52, and the statistical information update. It functions as means 53 and the like.
The condition setting means 20 receives input of various conditions necessary for simulation, and stores the input conditions in the simulation condition storage means 40, the spatial information storage means 41, the agent information storage means 42, and the statistical information storage means 43.

条件設定手段20は、例えば、操作入力部2および制御部5が協働して実現され、利用者が操作入力部2を操作して入力した値を、制御部5が記憶部4に記憶させる。条件設定手段20は、条件の一部または全部が記されたファイルを入力するファイル入出力部3を含んでもよく、利用者が操作入力部2を操作して指定したファイルを制御部5がファイル入出力部3を介して取得して当該ファイルに記された値を記憶部4に記憶させる。
条件設定手段20により入力されて模擬条件記憶手段40が記憶する条件は、例えば、仮想時刻の上限T、行動決定間隔、観測間隔、エージェント基本速さ(1時刻で進もうとする距離)の設定を含む。
The condition setting means 20 is realized by, for example, the operation input section 2 and the control section 5 working together, and the control section 5 causes the storage section 4 to store a value input by the user by operating the operation input section 2. . The condition setting means 20 may include a file input/output unit 3 that inputs a file in which a part or all of the conditions are written, and the control unit 5 inputs a file specified by the user by operating the operation input unit 2. The values obtained through the input/output unit 3 and written in the file are stored in the storage unit 4.
The conditions inputted by the condition setting means 20 and stored in the simulated condition storage means 40 include, for example, the settings of the upper limit T of the virtual time, the action decision interval, the observation interval, and the basic speed of the agent (the distance the agent attempts to travel in one time). including.

第1実施形態のシミュレーションは、仮想時刻を進めながら行われる。例えば、仮想時刻が(T-1)に達するまで仮想時刻を0から1ずつ増加させながら仮想時刻毎にエージェントの情報を更新する処理が繰り返される。操作入力部2にて利用者による終了指示の入力を受け付け、終了指示が入力された時点で強制終了する処理を加えてもよい。
仮想時刻は、実際の時間の経過を模擬したものであるが、シミュレータが1時刻分の演算を終えるたびに進められ、実際の時間の経過よりも高速に刻まれる。例えば、仮想時刻の1時刻を実際の0.1秒間に対応させ、仮想時刻を0から始まり1ずつ増加する整数で表す。
The simulation of the first embodiment is performed while advancing virtual time. For example, the process of updating agent information at each virtual time while increasing the virtual time by 1 from 0 until the virtual time reaches (T-1) is repeated. A process may be added in which input of a termination instruction by the user is accepted through the operation input unit 2, and the process is forcibly terminated when the termination instruction is input.
The virtual time simulates the actual passage of time, but is advanced each time the simulator completes one hour's worth of calculations, and is clocked at a faster rate than the actual passage of time. For example, one virtual time corresponds to 0.1 seconds of actual time, and the virtual time is expressed as an integer starting from 0 and increasing by 1.

空間情報記憶手段41は、対象空間を表す地図情報と、対象空間において達成可能な行動目的を定義する行動目的情報と、対象空間内において行動目的を達成可能な場所である目的地に関する目的地情報を含んだ空間情報を記憶する。なお、対象空間には、少なくとも1つの行動目的に対して、この行動目的を達成できる複数の目的地が存在している。
図3は地図情報100の一例の模式図であり、図4は、行動目的情報110及び目的地情報111の一例を示す図である。これらの空間情報は、目的地情報111に含まれる「キュー」を除いて、条件設定手段20を用いた利用者による入力操作により予め設定される。
The spatial information storage means 41 stores map information representing the target space, behavioral purpose information that defines the behavioral purpose that can be achieved in the target space, and destination information regarding a destination that is a place where the behavioral purpose can be achieved in the target space. Store spatial information including. Note that in the target space, for at least one behavioral objective, there are a plurality of destinations where this behavioral objective can be achieved.
FIG. 3 is a schematic diagram of an example of map information 100, and FIG. 4 is a diagram showing an example of action purpose information 110 and destination information 111. These spatial information, except for the "queue" included in the destination information 111, are set in advance by the user's input operation using the condition setting means 20.

図3に示す地図情報100において線分は壁を表しており、線分以外の領域が、エージェントが移動可能な移動可能領域である。
またローマ数字I~Xは、各目的地に付与される目的地IDであり、図3の地図情報100において各目的地の場所を示している。
2重丸印Q1~Q10は、各目的地I~Xの位置を表す代表点の位置を示す。実際には領域である目的地I~Xの位置を、点情報として定義して取り扱いを容易にしている。
丸印Q11~Q21は、エージェントが壁を回避しながら移動可能領域を移動するために経由できる経由点を示す。移動可能領域でエージェントが移動する経路は、代表点同士、経由点同士、代表点と経由点を結ぶ局所的な経路(以下、「局所経路」と表記する)により定義される。
In the map information 100 shown in FIG. 3, line segments represent walls, and areas other than the line segments are movable areas in which the agent can move.
Further, Roman numerals I to X are destination IDs given to each destination, and indicate the location of each destination in the map information 100 of FIG. 3.
Double circles Q1 to Q10 indicate the positions of representative points representing the positions of each destination I to X. In reality, the positions of destinations I to X, which are areas, are defined as point information to facilitate handling.
Circles Q11 to Q21 indicate waypoints through which the agent can move in the movable area while avoiding walls. A route along which an agent moves in a movable area is defined by a local route (hereinafter referred to as a "local route") connecting representative points, transit points, and representative points and transit points.

図4を参照する。行動目的情報110は、行動目的ID(1~3)に対応付けて、各行動目的の「行動目的名」を含んでいる。
また、目的地情報111は、目的地ID(I~X)に対応付けて、各目的地の「目的地名」、「代表点」、「性別制限」、「サービス窓口数」、「達成可能な行動目的」、「サービス時間分布」及び「キュー」を含んでいる。
See FIG. 4. The behavioral purpose information 110 includes the “behavioral purpose name” of each behavioral purpose in association with the behavioral purpose ID (1 to 3).
The destination information 111 also includes the "destination name", "representative point", "gender restriction", "number of service counters", "achievable ``behavioral purpose'', ``service time distribution'', and ``queue''.

「目的地名」は、当該目的地の名称である。例えば、目的地Iは「客席」であり、目的地IIは「女子トイレ1」であり、目的地IIIは「女子トイレ2」であり、目的地IVは「男子トイレ1」であり、目的地Vは「男子トイレ2」であり、目的地VI~Xは「売店1」~「売店5」である。
「代表点」は、上述した代表点Q1~Q10のXY座標値である。
“Destination name” is the name of the destination. For example, destination I is "guest seats," destination II is "women's restroom 1," destination III is "women's restroom 2," destination IV is "men's restroom 1," and destination V is "Men's Restroom 2", and destinations VI to X are "Stand 1" to "Stand 5".
The "representative point" is the XY coordinate value of the representative points Q1 to Q10 described above.

「性別制限」は、当該目的地を利用可能なエージェントの属性制限の一つであり、当該目的地を利用可能なエージェントの性別である。
「サービス窓口数」は、当該目的地を同時に利用可能なエージェントの最大数である。以下の説明において「サービス」とは、行動目的の達成のための目的地の利用を意味する。例えば、目的地が「トイレ」であればサービスは用便のための場所の提供であり、目的地が「売店」であればサービスは販売役務である。
“Gender restriction” is one of the attribute restrictions for agents who can use the destination, and is the gender of the agent who can use the destination.
The "number of service counters" is the maximum number of agents that can use the destination at the same time. In the following explanation, "service" means the use of a destination to achieve a behavioral purpose. For example, if the destination is a "toilet", the service is the provision of a place to relieve themselves, and if the destination is a "store", the service is sales services.

「達成可能な行動目的」は、当該目的地で達成可能な行動目的である。
「サービス時間分布」は、当該目的地におけるサービスの所要時間(以下「サービス時間」と表記する)を確率分布で表した統計情報である。例えば、サービス時間を正規分布で表したときの平均値と分散が記憶される。サービス時間分布は、当該目的地において各エージェントが行動目的を達成するのに要したサービス時間を決定するのに使用される。
"Achievable behavioral objectives" are behavioral objectives that can be achieved at the destination.
The "service time distribution" is statistical information that represents the time required for a service at the destination (hereinafter referred to as "service time") using a probability distribution. For example, the average value and variance when the service time is expressed as a normal distribution are stored. The service time distribution is used to determine the service time required by each agent to achieve its behavioral objective at the destination.

「キュー」は、当該目的地に滞在しているエージェントのエージェントIDを当該目的地への到達順に並べたバッファである。キューは、行動模擬手段52によって逐次更新される。
キュー内の順序がサービス窓口数以下であるエージェントが、目的地においてサービスを受けているエージェントであり、キュー内の順序がサービス窓口数より大きなエージェントが、サービス待ちのエージェントである。また、サービス待ちのエージェントの数が待機数(待ち数)である。
The "queue" is a buffer in which the agent IDs of agents staying at the destination are arranged in the order of arrival at the destination. The queue is sequentially updated by the behavior simulator 52.
An agent whose order in the queue is less than or equal to the number of service windows is an agent receiving service at the destination, and an agent whose order in the queue is greater than the number of service windows is an agent waiting for service. Further, the number of agents waiting for service is the waiting number (waiting number).

図4の空間情報111の例では、売店1には4つのエージェント#9、#63、#39、#83が到達しており、サービス窓口数が1であることからキューの先頭のエージェント#9のみがサービスを受けている(例えば、レジで精算している)ことを示す。また、残りのエージェント#63、#39、#83はサービス待ちであり(商品を選んでいるかレジ待ち)、待機数は3であることを示す。 In the example of the spatial information 111 in FIG. 4, four agents #9, #63, #39, and #83 have arrived at the kiosk 1, and since the number of service counters is 1, the agent #9 at the head of the queue Indicates that only the customer is receiving the service (for example, paying at the cash register). In addition, the remaining agents #63, #39, and #83 are waiting for service (either selecting a product or waiting at the register), indicating that the number of agents waiting is three.

図2を参照する。エージェント情報記憶手段42は、統計情報記憶手段43とともに群集を構成する複数のエージェントのそれぞれに関する情報を記憶する。以下、エージェント情報記憶手段42が記憶する情報を「エージェント情報」と表記する。
図5、図6、図7及び図8に、それぞれエージェント情報120、121、122及び123の一例を示す。各図において数値の横にかぎ括弧で示した文字列は図の見易さを考慮して意味を付記したものである。
例えばエージェント情報120の初期位置において(4.55,14.00)「扉1」と表記した個所に実際に記憶されているのは値(4.55,14.00)であり、それは「扉1」の座標を意味する。なお、以下の説明では、値の表記を省略して代わりに意味で説明する場合もある。
See FIG. 2. The agent information storage means 42 and the statistical information storage means 43 store information regarding each of the plurality of agents forming the crowd. Hereinafter, the information stored in the agent information storage means 42 will be referred to as "agent information."
Examples of agent information 120, 121, 122, and 123 are shown in FIGS. 5, 6, 7, and 8, respectively. In each figure, character strings shown in angle brackets next to numerical values have meanings added in consideration of the ease of viewing the figure.
For example, in the initial position of the agent information 120, the value (4.55, 14.00) is actually stored in the location where "Door 1" is written as (4.55, 14.00); 1” coordinates. Note that in the following explanation, the value may be omitted and the meaning may be used instead.

図5のエージェント情報120は、条件設定手段20を用いた利用者による入力操作により設定される情報の一部である。エージェント情報120としてエージェントID、生成時刻、初期位置及び性別の組合せが記憶される。初期位置は、エージェントの位置の初期値であり、生成時刻にエージェントを生成する位置を示す。
図5の例は、女性のエージェント#1が、「幕間1」内の仮想時刻0に「扉1」の座標に生成されることを示している。また「幕間2」及び「幕間3」については説明を省略する。さらに「幕間4」内の仮想時刻99600に「扉3」の座標に生成されること等を示している。第1実施形態のシミュレーションの例では、同一エージェントが複数回生成されることに注意されたい。
The agent information 120 in FIG. 5 is a part of information set by a user's input operation using the condition setting means 20. As agent information 120, a combination of agent ID, creation time, initial position, and gender is stored. The initial position is the initial value of the agent's position, and indicates the position at which the agent is generated at the generation time.
The example in FIG. 5 shows that female agent #1 is generated at the coordinates of "door 1" at virtual time 0 within "interlude 1." Further, descriptions of "Intermission 2" and "Intermission 3" will be omitted. Furthermore, it is shown that the image is generated at the coordinates of "Door 3" at virtual time 99600 within "Interlude 4". Note that in the simulation example of the first embodiment, the same agent is generated multiple times.

図6のエージェント情報121も、条件設定手段20を用いた利用者により入力操作によって設定される。エージェント情報121は、エージェントIDと生成時刻の組合せに対応付けて、「行動目的ID」、「達成期限」、「希望達成度」、「終端目的フラグ」、「達成フラグ」の組合せを含んでいる。ただし、これらの情報のうち、達成フラグは行動模擬手段52によって適宜更新される。 The agent information 121 in FIG. 6 is also set by the user using the condition setting means 20 through an input operation. The agent information 121 includes combinations of "action purpose ID", "achievement deadline", "desired achievement level", "terminal purpose flag", and "achievement flag" in association with the combination of agent ID and generation time. . However, among these pieces of information, the achievement flag is updated as appropriate by the behavior simulation means 52.

「行動目的ID」は、各場面(幕間)においてエージェントが対象空間で行動する目的(行動目的)のIDである。各場面において各エージェントに対して複数の行動目的を設定できる。
「達成期限」は、各場面のエージェントの各行動目的に対する達成期限であり、当該エージェントの生成時刻以降の仮想時刻が指定される。
「希望達成度」は、各場面のエージェントの各行動目的の達成に対する優先度合いである。例えば、希望達成度は、行動目的を達成したことによってエージェントが得ることができる主観的な満足度合い(効用)であってよい。希望達成度が高い行動目的ほど優先度合いが高い。
The "action purpose ID" is the ID of the purpose (action purpose) for which the agent acts in the target space in each scene (interlude). Multiple action objectives can be set for each agent in each scene.
The "achievement deadline" is the deadline for achieving each action objective of the agent in each scene, and a virtual time after the generation time of the agent is specified.
The "desired achievement level" is the priority level of the agent in each scene for achieving each action objective. For example, the degree of desired achievement may be the subjective degree of satisfaction (utility) that the agent can obtain by achieving the behavioral purpose. The higher the degree of desired achievement, the higher the priority level of the behavioral purpose.

「終端目的フラグ」は、各場面での行動の最後に必ず達成すべき行動目的を示すフラグである。終端目的フラグに値「1」が設定された行動目的は、その達成順序が最後の行動目的であると制約される。一方で、終端目的フラグに値「0」が設定された行動目的は、達成の順序は任意であり且つ達成するか否かは任意である。
「達成フラグ」は、各場面のエージェントの各行動目的が達成されたか否かを表すフラグである。達成フラグの初期値は「0」であり、値「0」は未達成、値「1」は達成済みを示す。
The "terminal purpose flag" is a flag that indicates the purpose of the action that must be achieved at the end of the action in each scene. The action goal for which the value "1" is set in the final goal flag is constrained to be the last action goal in the order of achievement. On the other hand, the action goals for which the value "0" is set in the terminal goal flag can be achieved in any order, and whether or not they are achieved is arbitrary.
The "achievement flag" is a flag indicating whether or not each action objective of the agent in each scene has been achieved. The initial value of the achievement flag is "0"; a value of "0" indicates that the achievement has not been achieved, and a value of "1" indicates that the achievement has been achieved.

図6の例は、「幕間1」の「エージェント#1」は、最後に「着席」を達成することを必達条件として、「用便」を「3分後」までに達成し、且つ「着席」と「買い物」を「10分後」までに達成することを目標としており、「着席」「用便」「買い物」の希望達成度はそれぞれ「35」「100」「40」であり、いずれの行動目的も未達成であること等を示している。 In the example of FIG. 6, "Agent #1" in "Intermission 1" must complete "Urage" by "3 minutes later" and "Seated" with the final condition of achieving "Seated". ” and “Shopping” within 10 minutes, and the desired achievement levels for “Sitting,” “Urling,” and “Shopping” are “35,” “100,” and “40,” respectively. It also shows that the behavioral objectives of the students have not been achieved.

図7のエージェント情報122は時刻毎に生成される情報である。エージェント情報122は、エージェントIDと仮想時刻との組合せに対応付けて、「目的地ID」、「局所経路」、「移動速度」、「位置」および「状況」の組合せを含む。
「目的地ID」は、仮想時刻が示す時点の各エージェントが移動の目標としている目的地のIDを示す。なお、第1実施形態のシミュレータ1の例では、生成時刻における目的地IDは空欄としている。
「局所経路」は、仮想時刻が示す時点の各エージェントが移動している局所経路を示す。なお、第1実施形態のシミュレータ1の例では、生成時刻および移動していない時刻における局所経路は空欄としている。
Agent information 122 in FIG. 7 is information generated at each time. The agent information 122 includes combinations of "destination ID", "local route", "travel speed", "position", and "situation" in association with the combination of agent ID and virtual time.
"Destination ID" indicates the ID of the destination to which each agent is moving at the time indicated by the virtual time. Note that in the example of the simulator 1 of the first embodiment, the destination ID at the generation time is left blank.
"Local route" indicates a local route along which each agent is moving at the time point indicated by the virtual time. Note that in the example of the simulator 1 of the first embodiment, the local route at the generation time and the time when the vehicle is not moving is left blank.

「移動速度」は、仮想時刻が示す時点の各エージェントが単位時間(1仮想時刻)で移動しようとする移動量を示す。図7のエージェント情報122の例では移動速度をベクトルで表現している。
移動速度は、あくまで各エージェントが意図する移動量であって、必ずしも仮想時刻が示す時点にエージェントが移動する移動量と一致するとは限らない。例えば、エージェント間の物理的な制約等によって、現時刻の位置が前時刻の位置に現時刻の移動速度を加えた値にならない場合もある。
また、便宜上、生成時刻における移動速度と、目的地に到達してから当該目的地で達成可能な行動目的を達成するまでの移動速度は0ベクトルとする。
"Movement speed" indicates the amount of movement that each agent attempts to move per unit time (one virtual time) at the time indicated by the virtual time. In the example of agent information 122 in FIG. 7, the moving speed is expressed as a vector.
The moving speed is just the amount of movement that each agent intends, and does not necessarily match the amount of movement that the agent will move at the time indicated by the virtual time. For example, due to physical constraints between agents, the position at the current time may not be the sum of the position at the previous time and the moving speed at the current time.
Further, for convenience, the moving speed at the generation time and the moving speed from reaching the destination to achieving the action objective that can be achieved at the destination are assumed to be 0 vectors.

「位置」は、仮想時刻が示す時点の各エージェントの対象空間における位置である。各エージェントの位置の初期値は、上述したエージェント情報120を参照して当該エージェントの生成時刻に設定された初期位置である。
目的地に到達してから当該目的地で達成可能な行動目的を達成するまでは目的地の代表点の座標が設定される。
“Position” is the position of each agent in the target space at the point in time indicated by the virtual time. The initial value of the position of each agent is the initial position set at the generation time of the agent with reference to the agent information 120 described above.
The coordinates of the representative point of the destination are set from the time the user reaches the destination until the user achieves the action objective that is achievable at the destination.

「状況」は、仮想時刻が示す時点の各エージェントの状況であり、取り得る値は「移動中」「待機中」「処理中」「達成」である。
「移動中」は、目的地に未到達であり移動中であることを示す。
「待機中」は、目的地に到達したがサービス待ちであることを示す。
「処理中」は、目的地にてサービスを受けていることを示す。
「達成」は、目的地にてサービスを受け終わり行動目的を達成したことを示す。
第1実施形態のシミュレータ1の例では、便宜上、生成時刻における状況として「達成」を指定する。
"Status" is the status of each agent at the time indicated by the virtual time, and the possible values are "moving,""waiting,""processing," and "achieved."
"Moving" indicates that the destination has not been reached and the vehicle is moving.
"Waiting" indicates that the destination has been reached but the vehicle is waiting for service.
"Processing" indicates that the service is being received at the destination.
"Achieved" indicates that the user completed the service at the destination and achieved the behavioral purpose.
In the example of the simulator 1 of the first embodiment, for convenience, "achievement" is specified as the status at the generation time.

図7の例は、シミュレーション終了時点のエージェント情報122を例示している。
例えば「幕間1」の「エージェント#1」が「女子トイレ1」「売店2」「客席」の順に移動して、時刻「2909」「2969」において「売店2」「客席」で行動目的を達成したことが、その間の各時刻の移動速度、位置および状況とともに記録されている
また、その過程において、時刻「1322」から「2686」まで「売店2」でサービス待ちであったこと、時刻「2687」から「2908」までサービスを受けたことが記録されている。
The example in FIG. 7 illustrates the agent information 122 at the end of the simulation.
For example, "Agent #1" in "Intermission 1" moves in the order of "Women's Restroom 1", "Concession 2", and "Audience Seat", and achieves the action objective in "Concession 2" and "Audience Seat" at times "2909" and "2969". In addition, in the process, it was recorded that he was waiting for service at "Kiosk 2" from time "1322" to "2686", and that he was waiting for service at "2687" at time "2687". It is recorded that the service was received from ``2908'' to ``2908''.

図8のエージェント情報123はサービスを受け終わったか否かを判定するために、行動模擬手段52により必要に応じて生成される。エージェント情報123は、エージェントIDに対応付けて、サービス完了時刻を含んでいる。エージェント情報123に含まれている情報は、該当するエージェントが現時刻の目的地でサービスを受けている間、保持され、サービスが完了すると消去される。 The agent information 123 in FIG. 8 is generated as necessary by the behavior simulation means 52 in order to determine whether or not the service has been received. The agent information 123 includes the service completion time in association with the agent ID. The information contained in the agent information 123 is retained while the corresponding agent is receiving service at the current destination, and is deleted when the service is completed.

「エージェントID」は、目的地でサービスを受けているエージェント(つまり状況が「処理中」のエージェント)を示す。サービスを受けている目的地はエージェント情報122により特定できる。
「サービス完了時刻」は、当該目的地にて当該エージェントがサービスを受け終わる時刻である。
図8のエージェント情報123には、図4の空間情報111に例示した売店1~5のキューの先頭のエージェント#9、#34、#76、#5、#36などに対してサービス完了時刻が保持されている。
"Agent ID" indicates an agent receiving service at the destination (that is, an agent whose status is "processing"). The destination receiving the service can be specified by the agent information 122.
The "service completion time" is the time when the agent finishes receiving the service at the destination.
The agent information 123 in FIG. 8 includes service completion times for agents #9, #34, #76, #5, #36, etc. at the head of the queue of stands 1 to 5 illustrated in the spatial information 111 in FIG. Retained.

エージェント情報121に含まれる達成フラグ、並びに、エージェント情報122に含まれる位置および状況は、状態値の一例であり、エージェントの状態を表す。
エージェント情報121に含まれる行動目的、行動目的毎の達成期限、行動目的毎の希望達成度および行動目的毎の終端目的フラグ、並びに、エージェント情報122に含まれる目的地、局所経路および移動速度は、行動パラメータの一例である。行動パラメータは、エージェントの状態値に作用するパラメータである。
なお、図5~図8に示したエージェント情報120、121、122及び123は、あくまで一例であり、本発明のエージェント情報の構成はこれに限定されるものではない。
The achievement flag included in the agent information 121 and the position and status included in the agent information 122 are examples of status values and represent the status of the agent.
The behavioral objectives, the deadline for achieving each behavioral objective, the desired achievement level for each behavioral objective, and the final objective flag for each behavioral objective included in the agent information 121, as well as the destination, local route, and movement speed included in the agent information 122, are as follows: This is an example of a behavioral parameter. Behavioral parameters are parameters that act on the agent's state values.
Note that the agent information 120, 121, 122, and 123 shown in FIGS. 5 to 8 are merely examples, and the configuration of the agent information of the present invention is not limited thereto.

図2を参照する。統計情報記憶手段43はエージェント情報記憶手段42とともに、群集を構成する複数のエージェントのそれぞれに関する情報を記憶する。
統計情報記憶手段43が記憶する情報は、各目的地において行動目的を達成するのに要する所要時間に関する統計情報である。かかる統計情報を、エージェント毎に記憶することにより、実世界の各個体が所要時間について有する知識の違いを模擬することができる。すなわち、統計情報記憶手段43は、エージェント毎に、複数の目的地で行動目的を達成するのに要する各々の所要時間に関する統計情報を記憶する。
See FIG. 2. The statistical information storage means 43, together with the agent information storage means 42, stores information regarding each of the plurality of agents making up the crowd.
The information stored in the statistical information storage means 43 is statistical information regarding the time required to achieve the behavioral purpose at each destination. By storing such statistical information for each agent, it is possible to simulate differences in the knowledge that each individual in the real world has about the required time. That is, the statistical information storage means 43 stores statistical information regarding the time required for each agent to achieve an action objective at a plurality of destinations.

行動目的毎の所要時間は、目的地に至る移動時間と、目的地における待ち時間と、目的地におけるサービス時間の和であると定義する。
目的地における待ち時間は、当該目的地における待ち数を当該目的地のサービス窓口数で除した結果と、サービス時間との積で算出されるとモデル化する。
The time required for each behavioral purpose is defined as the sum of the travel time to the destination, the waiting time at the destination, and the service time at the destination.
The waiting time at a destination is modeled as being calculated as the product of the number of people waiting at the destination divided by the number of service counters at the destination and the service time.

また、目的地に至る移動時間は、目的地に至る各局所経路の経路長を当該局所経路の移動速度で除した結果を総和することによって算出されるとモデル化される。
このため、統計情報記憶手段43は、エージェント毎に、目的地毎の待ち数の確率分布(待ち数分布)、目的地毎のサービス時間の確率分布(サービス時間分布)、局所経路毎の移動速度の確率分布(移動速度分布)を統計情報として記憶している。
例えば待ち数分布、サービス時間分布、移動速度分布のそれぞれを正規分布でモデル化する。そして各分布を観測値で更新するために待ち数分布、サービス時間分布、移動速度分布のそれぞれの正規分布のパラメータの同時確率分布を用いる。統計情報記憶手段43は、待ち数分布、サービス時間分布、移動速度分布のそれぞれ同時確率分布のパラメータである平均値μ、自由度ν、仮説的標本数κ、尺度母数λの4パラメータを記憶する。同時確率分布をΝ・χ―2(μ,ν,κ,λ)と表記する。
Further, the travel time to reach the destination is modeled as being calculated by summing the results of dividing the route length of each local route to the destination by the travel speed of the local route.
For this reason, the statistical information storage means 43 stores, for each agent, the probability distribution of the waiting number for each destination (waiting number distribution), the probability distribution of the service time for each destination (service time distribution), and the travel speed for each local route. The probability distribution (moving speed distribution) is stored as statistical information.
For example, each of the waiting number distribution, service time distribution, and moving speed distribution is modeled using a normal distribution. Then, in order to update each distribution with observed values, joint probability distributions of the parameters of the normal distributions of the waiting number distribution, service time distribution, and moving speed distribution are used. The statistical information storage means 43 stores four parameters of the joint probability distribution of the waiting number distribution, the service time distribution, and the moving speed distribution: the mean value μ, the degree of freedom ν, the hypothetical sample number κ, and the scale parameter λ. do. The joint probability distribution is expressed as Ν・χ −2 (μ, ν, κ, λ).

これら待ち数分布、サービス時間分布および移動速度分布の初期値は、条件設定手段20を介して予め設定される。初期値は、経験や一般常識、実測した統計情報などを基に作成してよい。全エージェントに共通の初期値としてもよいし、エージェント毎に異なる初期値としてもよい。
また、エージェントと所要時間の組合せの一部を設定せず、当該組合せについて統計情報記憶手段43が記憶しない初期設定としてもよい。これにより、例えばエージェント#1が売店4の存在を知らないというような、実世界の個体における知識の欠落を模擬することができる。
本実施形態では、エージェント毎に各行動目的に対応する1以上の目的地に関する分布(待ち数分布、及びサービス時間分布)の初期値を記憶する初期設定とする。記憶される目的地は事前のランダム抽選により決定しておく。また、本実施形態では、局所経路に関してはエージェントと局所経路の全組合せについて局所経路に関する分布(移動速度分布)の初期値を記憶する初期設定とする。
また、本実施形態において統計情報記憶手段43は、エージェント毎の情報とは別に、目的地毎に当該目的地に関する分布の初期値を記憶する。この情報は各エージェントが目的地を初めて観測したときの初期値として利用される。
The initial values of the waiting number distribution, service time distribution and moving speed distribution are set in advance via the condition setting means 20. The initial value may be created based on experience, common sense, actually measured statistical information, etc. The initial value may be common to all agents, or may be a different initial value for each agent.
Alternatively, some of the combinations of agents and required times may not be set, and the statistical information storage means 43 may not store the combinations in the initial settings. Thereby, it is possible to simulate a lack of knowledge among individuals in the real world, such as agent #1 not knowing the existence of the store 4, for example.
In this embodiment, the initial settings are such that initial values of distributions (waiting number distribution and service time distribution) regarding one or more destinations corresponding to each action purpose are stored for each agent. The destination to be memorized is determined by a random lottery in advance. Furthermore, in this embodiment, the initial setting for the local route is to store the initial value of the distribution (traveling speed distribution) regarding the local route for all combinations of agents and local routes.
Furthermore, in this embodiment, the statistical information storage means 43 stores, for each destination, the initial value of the distribution regarding the destination, in addition to the information for each agent. This information is used as an initial value when each agent observes the destination for the first time.

後述するように、各エージェントの統計情報は、当該エージェントの行動に伴って得られる観測値によって個々に更新及び参照される。これにより、実世界において個体の経験知が個々に異なるがごとく、仮想時間が経過するに従って互いに異なるものとなる。
また、統計情報記憶手段43は、エージェントと所要時間の組合せのうちの記憶していない組合せについて(すなわち、エージェントが知らない目的地や局所経路について)、観測値が得られた時点で追加して記憶することで、実世界の個体における新たな知識の獲得を模擬してもよい。
As will be described later, the statistical information of each agent is individually updated and referenced based on observed values obtained in accordance with the actions of the agent. As a result, just as the experiential knowledge of individuals differs from one another in the real world, they become different from each other as virtual time passes.
Furthermore, the statistical information storage means 43 adds observed values for combinations of agents and required times that are not stored (that is, destinations and local routes unknown to the agent) when obtained. Memorization may simulate the acquisition of new knowledge by individuals in the real world.

図9に、統計情報記憶手段43に記憶される統計情報130及び131の一例を示す。
統計情報130は、エージェントIDと目的地IDの組合せに対応付けられた「待ち数分布」と「サービス時間分布」を含む。
「待ち数分布」と「サービス時間分布」は、それぞれ当該エージェントが、当該目的地について記憶している「待ち数分布」と「サービス時間分布」の同時確率分布である。
図9の統計情報130の例では、エージェント#1について、客席、女子トイレ1、男子トイレ1、売店1、売店2および売店3の待ち数分布およびサービス時間分布が記憶され、女子トイレ2、男子トイレ2、売店4および売店5の分布は記憶されていない。
統計情報131は、エージェントIDと局所経路の組合せに対応付けられた「移動速度分布」を含む。「移動速度分布」は、当該エージェントが、当該局所経路について記憶している「移動速度分布」の同時確率分布である。
統計情報記憶手段43は、特許請求の範囲に記載の「目的地記憶手段」の一例である。
FIG. 9 shows an example of statistical information 130 and 131 stored in the statistical information storage means 43.
The statistical information 130 includes "waiting number distribution" and "service time distribution" that are associated with the combination of agent ID and destination ID.
The "waiting number distribution" and "service time distribution" are joint probability distributions of the "waiting number distribution" and "service time distribution" that the agent has stored for the destination, respectively.
In the example of statistical information 130 in FIG. 9, for agent #1, the waiting number distribution and service time distribution for customer seats, women's restroom 1, men's restroom 1, store 1, store 2, and store 3 are stored, and the waiting number distribution and service time distribution for agent #1 are stored. The distribution of toilets 2, kiosks 4, and kiosks 5 is not stored.
The statistical information 131 includes a "moving speed distribution" associated with a combination of an agent ID and a local route. The "travel speed distribution" is a joint probability distribution of the "travel speed distribution" that the agent has stored for the local route.
The statistical information storage means 43 is an example of a "destination storage means" described in the claims.

図2を参照する。評価値算出手段50は、各場面(幕間)において各エージェントが行動目的を達成する目的地を選択するにあたって選択の基準とする評価値を算出する。
上記の通り、各場面においてエージェントが達成すべき行動目的が複数設定することがあるため、各場面において達成すべき行動目的は、複数設定された行動目的の順列(以下「行動パターン」と表記する)によって表現される。
また、同じ行動目的を達成できる複数の目的地が存在することがある。この場合には各々行動目的を達成する目的地には複数の選択肢がある。
評価値算出手段50は、各行動パターンに対して選択しうる目的地の選択肢毎に評価値を算出する。そして、エージェントと選択肢と評価値とを対応付けた評価値情報を目的地選択手段51に出力する。なお、行動パターンに対して選択しうる目的地の選択肢は目的地の順列となり、以下その順列を「目的地パターン」と表記する。
See FIG. 2. The evaluation value calculation means 50 calculates an evaluation value to be used as a selection criterion when each agent selects a destination to achieve an action objective in each scene (interlude).
As mentioned above, the agent may set multiple behavioral objectives to be achieved in each scene, so the behavioral objectives to be achieved in each scene are defined as a permutation of the multiple behavioral objectives (hereinafter referred to as "behavior pattern"). ) is expressed by
In addition, there may be multiple destinations where the same behavioral objective can be achieved. In this case, there are multiple options for destinations that each achieve the purpose of action.
The evaluation value calculation means 50 calculates an evaluation value for each selectable destination option for each behavior pattern. Then, evaluation value information in which agents, options, and evaluation values are associated with each other is output to the destination selection means 51. Note that the destination options that can be selected for the action pattern are permutations of destinations, and these permutations are hereinafter referred to as "destination patterns."

そのために、まず、評価値算出手段50は行動パターンの情報を生成する。具体的には、評価値算出手段50は、エージェント情報121に記憶されているエージェントIDと生成時刻(各場面)の組合せのうち達成フラグが0である行動目的IDを有する各組合せについて、当該組合せに対応付けられた行動目的IDの中から達成フラグが0である行動目的IDを順に並べた順列を生成する。ただし、評価値算出手段50は、終端目的フラグが設定された行動目的を順列の最後に設定する。
例えば、図6のエージェント情報121におけるエージェント#1であれば、仮想時刻が0の時の行動パターンは、P={用便,買い物,着席}、P={買い物,用便,着席}、P={用便,着席}、P={買い物,着席}、P={着席}の5通りとなる。
For this purpose, the evaluation value calculation means 50 first generates information on behavior patterns. Specifically, the evaluation value calculation means 50 calculates, for each combination having an action objective ID whose achievement flag is 0, among the combinations of agent ID and generation time (each scene) stored in the agent information 121, A permutation is generated in which action goal IDs whose achievement flags are 0 are arranged in order from among action goal IDs associated with . However, the evaluation value calculation means 50 sets the behavioral purpose for which the terminal purpose flag is set at the end of the permutation.
For example, for agent #1 in the agent information 121 in FIG. 6, the behavior pattern when the virtual time is 0 is P 1 = {errands, shopping, sitting}, P 2 = {shopping, errands, sitting}. , P 3 = {use, sitting}, P 4 = {shopping, sitting}, and P 5 = {sitting}.

次に、評価値算出手段50は目的地パターンの情報を生成する。具体的には、評価値算出手段50は、各行動パターンについて、空間情報111において「達成可能な行動目的」が当該行動パターンの各要素と合致し、性別制限を満たし、当該行動パターンが生成されたエージェントの統計情報130に記憶されている目的地IDを、当該行動パターンの各要素に対する目的地IDの選択肢とする。そして、評価値算出手段50は、各行動パターンについて、当該行動パターンの各要素に対して取得した選択肢から目的地IDを1つずつ選択し、選択された目的地IDを当該行動パターンの各要素の順で並べた目的地IDの順列を目的地パターンとして生成する。
例えば、図6のエージェント情報121における幕間1のエージェント#1の行動パターンP={用便,買い物,着席}に対し、図4の空間情報111および図9の統計情報130を参照して生成される目的地パターンは、M11={女子トイレ1,売店1,客席}、M12={女子トイレ1,売店2,客席}、M13={女子トイレ1,売店3,客席}の3通りとなる。
Next, the evaluation value calculation means 50 generates destination pattern information. Specifically, the evaluation value calculation means 50 determines, for each behavior pattern, that the "achievable behavioral purpose" in the spatial information 111 matches each element of the behavior pattern, the gender restriction is satisfied, and the behavior pattern is generated. The destination ID stored in the statistical information 130 of the agent selected is used as a destination ID option for each element of the behavior pattern. Then, for each behavior pattern, the evaluation value calculation means 50 selects one destination ID from the options obtained for each element of the behavior pattern, and assigns the selected destination ID to each element of the behavior pattern. A permutation of destination IDs arranged in this order is generated as a destination pattern.
For example, for the action pattern P 1 of agent #1 in intermission 1 in the agent information 121 in FIG. The following destination patterns are M 11 = {women's toilet 1, shop 1, audience seats}, M 12 = {women's toilet 1, shop 2, audience seats}, M 13 = {women's toilet 1, shop 3, audience seats}. It becomes a street.

そして、評価値算出手段50は、目的地パターン毎の評価値Eを次式(1)~(4)に従って算出する。

Figure 0007441080000001
Figure 0007441080000002
Figure 0007441080000003
Figure 0007441080000004
Then, the evaluation value calculating means 50 calculates the evaluation value E for each destination pattern according to the following equations (1) to (4).
Figure 0007441080000001
Figure 0007441080000002
Figure 0007441080000003
Figure 0007441080000004

式(1)において、Pは評価値を算出する対象のエージェントの各場面での行動パターンのうちi番目の行動パターンであり、Mijは行動パターンPに対応する目的地パターンのうちのj番目の目的地パターンであり、Nは行動パターンPに含まれる行動目的数である。
isは、行動パターンPの第s要素(すなわちs番目に実行する行動目的)を示す。
ijsは、目的地パターンMijの第s要素(すなわちs番目の目的地)を示す。
p(Pis,mijs)は、行動目的Pisの達成期限までに、行動目的Pisを目的地mijsで達成する確率である。以下、この確率を成功確率と称する。上記の通り、行動目的Pisの達成期限は、エージェント情報121として設定されており、図6に示すとおり、エージェント毎に、各場面で達成すべき行動目的の行動目的ID毎にそれぞれ達成期限が指定されている。成功確率p(Pis,mijs)の算出方法の詳細は後述する。
In equation (1), P i is the i-th behavior pattern among the behavior patterns in each scene of the agent whose evaluation value is to be calculated, and M ij is the i-th behavior pattern among the destination patterns corresponding to the behavior pattern P i . This is the j-th destination pattern, and N i is the number of behavioral objectives included in the behavioral pattern P i .
P is indicates the s-th element of the action pattern P i (that is, the s-th action purpose to be executed).
m ijs indicates the s-th element (ie, the s-th destination) of the destination pattern M ij .
p(P is , m ijs ) is the probability of achieving the behavioral purpose P is at the destination m ijs by the deadline for achieving the behavioral purpose P is . Hereinafter, this probability will be referred to as success probability. As mentioned above, the deadline for achieving the behavioral purpose P is is set as the agent information 121, and as shown in FIG. specified. Details of the method for calculating the success probability p (P is , m ijs ) will be described later.

式(1)においてV(Pis)は、行動目的Pisの希望達成度である。上記の通り、希望達成度V(Pis)は、エージェント情報121として設定されており、図6に示すとおり、エージェント毎に、各場面で達成すべき行動目的の行動目的ID毎にそれぞれ希望達成度V(Pis)が指定されている。
例えば、図6のエージェント情報121における幕間1のエージェント#1の行動パターンP1に対する希望達成度は、s=1のとき100、s=2のとき40、s=3のとき35である。
In equation (1), V(P is ) is the desired degree of achievement of the behavioral purpose P is . As mentioned above, the desired achievement degree V (P is ) is set as the agent information 121, and as shown in FIG. degree V (P is ) is specified.
For example, in the agent information 121 of FIG. 6, the desired achievement level for the action pattern P1 of agent #1 in interlude 1 is 100 when s=1, 40 when s=2, and 35 when s=3.

つまり、評価値は達成しようとする複数の行動目的に対応した各目的地の成功確率を当該目的地に対応する行動目的の希望達成度で重み付けて総和して算出できる。
なお、別の実施形態として希望達成度による重み付けを省略することもできる。
また、さらに別の実施形態として、重み付け成功確率の総和、または成功確率の総和に代えて、重み付け成功確率の積、または成功確率の積など、成功確率が高いほど評価値が高くなる他の増加関数を定義して用いることもできる。
In other words, the evaluation value can be calculated by summing the success probabilities of each destination corresponding to a plurality of behavioral objectives to be achieved, weighted by the desired achievement level of the behavioral objective corresponding to the destination.
Note that, as another embodiment, weighting based on the degree of desired achievement may be omitted.
In addition, as yet another embodiment, instead of the sum of weighted success probabilities or the sum of success probabilities, other increases such as a product of weighted success probabilities or a product of success probabilities, such as a product of weighted success probabilities or a product of success probabilities, are used such that the higher the success probability, the higher the evaluation value. You can also define and use functions.

式(1)についての上記説明をまとめると次のようになる。
評価値算出手段50は、エージェント毎に、統計情報記憶手段43に記憶された統計情報に基づいて、行動目的Pisの達成期限までに複数の目的地mijsで行動目的Pisを達成する各々の成功確率p(Pis,mijs)を予測し、成功確率p(Pis,mijs)に応じて評価値Eを算出する。
このとき、複数の行動目的Pisを達成しようとするエージェントの目的地を選択するために、複数の目的地mijsの中から複数の行動目的Pisの各々を達成する目的地mijsの組合せである目的地パターンMijを複数選択して、目的地パターンMijに属する目的地mijsで複数の行動目的Pisをそれぞれ達成する確率p(Pis,mijs)に応じて評価値Eを算出する。
また、評価値算出手段50は、行動目的に対する優先度をエージェント毎に異ならせたことに関連して、エージェントによる優先度の違いに応じた目的地選択を可能とするために、複数の行動目的Pisの各々を達成する確率p(Pis,mijs)を複数の行動目的の希望達成度V(Pis)で重み付けて評価値Eを算出する。
The above explanation regarding equation (1) can be summarized as follows.
The evaluation value calculation means 50 calculates for each agent, based on the statistical information stored in the statistical information storage means 43, each agent who achieves the behavioral purpose P is at a plurality of destinations m ijs by the deadline for achieving the behavioral purpose P is . The success probability p (P is , m ijs ) is predicted, and the evaluation value E is calculated according to the success probability p (P is , m ijs ).
At this time, in order to select a destination for an agent who is trying to achieve a plurality of behavioral objectives P is , a combination of destinations m ijs that achieve each of the plurality of behavioral objectives P is is selected from among the plurality of destinations m ijs . By selecting a plurality of destination patterns M ij that are, the evaluation value E is calculated according to the probability p (P is , m ijs ) of achieving each of the plurality of action objectives P is at the destination m ijs belonging to the destination pattern M ij. Calculate.
In addition, in connection with the fact that the priority of the behavioral purpose is different for each agent, the evaluation value calculation means 50 is configured to calculate the priority of the behavioral purpose by selecting a destination according to the difference in the priority of the agent. An evaluation value E is calculated by weighting the probability p (P is , m ijs ) of achieving each of P is by the desired achievement level V (P is ) of a plurality of behavioral objectives.

以下、式(2)~(4)が示す成功確率p(Pis,mijs)の算出方法について一例を説明する。
はじめに、評価値算出手段50は、式(3)及び式(4)を利用するために、目的地パターンMijに含まれる各目的地(mij1,mij2,…)において、各行動目的(Pi1,Pi2,…)を実行する場合の所要時間Tの確率分布である所要時間分布(f(T),f(T),…)を算出する。
An example of the method for calculating the success probability p (P is , m ijs ) shown by equations (2) to (4) will be described below.
First, in order to use equations (3 ) and ( 4 ), the evaluation value calculation means 50 calculates each action objective ( A required time distribution (f 1 (T d ), f 2 ( T d ), ...), which is a probability distribution of the required time T d when executing P i1 , P i2 , ...), is calculated.

ここで、所要時間分布f(T)は、s-1番目の目的地mij(s-1)からs番目の目的地mijsまで移動する際の移動時間分布と、目的地mijsでの待ち時間分布と、目的地mijsでの行動目的の達成に係るサービス時間分布の和で定義される。ただし、mij0はエージェントの現在位置である。
また、同時確率分布のパラメータ(平均値μ、自由度ν、仮説的標本数κ、尺度母数λ)とそれが表す正規分布N(μ,σ)の間には分散σ=λ/(ν-2)の関係がある。
また、各分布を正規分布で表した場合、和の分布の平均値は元の分布の平均値同士の和となり、和の分布の分散は元の分布の分散同士の和となる。
Here, the required time distribution f s (T d ) is the travel time distribution when traveling from the s-1st destination m ij (s-1) to the s-th destination m ijs , and the travel time distribution when traveling from the s-th destination m ij (s-1) to the s-th destination m It is defined as the sum of the waiting time distribution at the destination m ijs and the service time distribution related to the achievement of the behavioral purpose at the destination m ijs . However, m ij0 is the current position of the agent.
Furthermore, the variance σ 2 = λ/ There is a relationship of (ν-2).
Furthermore, when each distribution is represented by a normal distribution, the average value of the sum distribution is the sum of the average values of the original distributions, and the variance of the sum distribution is the sum of the variances of the original distributions.

(T)の算出のために評価値算出手段50は移動時間分布を算出する。評価値算出手段50は、目的地mij(s-1)から目的地mijsまでに経由する局所経路の移動速度分布の同時確率分布のパラメータを統計情報記憶手段43が記憶している処理対象のエージェントの統計情報131の中から読み出し、読み出したパラメータから各局所経路の移動速度分布を表す正規分布を導出する。評価値算出手段50は、各局所経路の移動速度分布における速度軸を当該局所経路の距離との除算で時間軸に変換することにより各局所経路の移動時間分布を得、これら局所経路の移動時間分布を総和して目的地までの移動時間分布を算出する。 In order to calculate f s (T d ), the evaluation value calculating means 50 calculates the travel time distribution. The evaluation value calculation means 50 processes a processing target in which the statistical information storage means 43 stores the parameters of the joint probability distribution of the travel speed distribution of the local route from the destination m ij (s-1) to the destination m ijs . A normal distribution representing the movement speed distribution of each local route is derived from the read parameters. The evaluation value calculation means 50 obtains the travel time distribution of each local route by converting the speed axis in the travel speed distribution of each local route into a time axis by dividing the distance of the local route, and calculates the travel time of these local routes. The travel time distribution to the destination is calculated by summing the distribution.

(T)の算出のために評価値算出手段50は待ち時間分布も算出する。評価値算出手段50は、目的地mijsの待ち数分布とサービス時間分布の同時確率分布のパラメータを統計情報記憶手段43が記憶している処理対象のエージェントの統計情報130の中から読み出すとともに目的地mijsのサービス窓口数を読み出す。評価値算出手段50は、読み出したパラメータから待ち数分布とサービス時間分布を表す正規分布を導出する。評価値算出手段50は、待ち数分布の平均値(これが待ち数となる)を読み出したサービス窓口数で除した結果にサービス時間分布を乗じて待ち時間分布を算出する。なお、平均値に代えて最頻値を用いてもよく、或いは待ち数分布が示す確率で当選するランダム抽選により決定した値を用いてもよい。また、目的地の待ち数は、処理対象のエージェントが現時刻に観測した値とすることもできる(該当する観測値が得られている場合に限る)。また、数時刻の間、目的地の待ち数の観測値を記憶部4に保持し、保持している値を利用してもよい。 In order to calculate f s (T d ), the evaluation value calculating means 50 also calculates the waiting time distribution. The evaluation value calculation means 50 reads the parameters of the joint probability distribution of the waiting number distribution and the service time distribution of the destination m ijs from the statistical information 130 of the agent to be processed stored in the statistical information storage means 43, and also Read out the number of service counters in the area . The evaluation value calculation means 50 derives a normal distribution representing a waiting number distribution and a service time distribution from the read parameters. The evaluation value calculating means 50 calculates the waiting time distribution by dividing the average value of the waiting number distribution (this becomes the waiting number) by the number of service counters read out and multiplying the result by the service time distribution. Note that the mode value may be used instead of the average value, or a value determined by a random lottery in which the winning probability is determined by the waiting number distribution may be used. Further, the number of waiters at the destination may be a value observed at the current time by the agent to be processed (limited to cases where the corresponding observed value is obtained). Alternatively, the observed value of the number of waiting times at the destination may be held in the storage unit 4 for several hours, and the held value may be used.

(T)の算出のために評価値算出手段50はサービス時間分布も算出する。評価値算出手段50は、目的地mijsのサービス時間分布の同時確率分布のパラメータを統計情報記憶手段43が記憶している処理対象のエージェントの統計情報130の中から読み出し、読み出したパラメータからサービス時間分布を表す正規分布を導出する。
そして、評価値算出手段50は、sごとの移動時間分布と待ち時間分布とサービス時間分布との和を当該sについての所要時間分布f(T)として算出する。
In order to calculate f s (T d ), the evaluation value calculating means 50 also calculates the service time distribution. The evaluation value calculation means 50 reads the parameters of the joint probability distribution of the service time distribution of the destination m ijs from the statistical information 130 of the agent to be processed stored in the statistical information storage means 43, and calculates the service time from the read parameters. Derive the normal distribution representing the time distribution.
Then, the evaluation value calculation means 50 calculates the sum of the travel time distribution, waiting time distribution, and service time distribution for each s as the required time distribution f s (T d ) for the s.

次に、評価値算出手段50は、式(4)に従って行動目的Pisの達成期限Tlim(PiS)までの残り時間T(Pis)を算出する。
s=1のときの残り時間、すなわち、行動パターンPの1番目の行動目的Pi1の達成期限Tlim(Pi1)までの残り時間T(Pi1)はスカラとなる。評価値算出手段50は、s=1の場合、達成期限Tlim(Pi1)から現在時刻tを減じた差を残り時間T(Pi1)として算出する。
s>1のときの残り時間、すなわち、行動パターンPの2番目以降の行動目的Pi2、i3、…の達成期限までの残り時間は確率分布となる。つまり、2番目以降の行動目的Pi2、i3、…を達成するために残された時間は、その行動目的よりも前に実行される行動目的の所要時間T ,…,Ts-1 に左右され、行動目的の所要時間T ,…,Ts-1 は各々所要時間分布f(T)~fs-1(T)に従う確率変数として定義されるから、2番目以降の行動目的Pi2、i3、…の残り時間Tもまた確率分布に従う確率変数として算出される。この確率分布を残り時間分布g(T)と定義する。なお、所要時間分布が正規分布である本実施形態においては、残り時間分布もまた正規分布となる。
評価値算出手段50は、s>1の場合、s番目の行動目的Pisの達成期限Tlim(Pis)と現在時刻tとの差を求め、さらに1番目からs-1番目の行動目的Pi1~Pi(s-1)の達成にかかる所要時間分布f(T)~fs-1(T)の総和を求める。求めた分布を総和分布と称する。そして、評価値算出手段50は、上記差から上記総和分布の平均値を減じた値と、上記総和分布の分散を用いて残り時間分布g(T)を算出する。つまり、残り時間分布g(T)の平均値は上記差から上記総和分布の平均値を減じた値であり、残り時間分布g(T)の分散は上記総和分布の分散である。
Next, the evaluation value calculating means 50 calculates the remaining time T r (P is ) until the deadline T lim (P iS ) for achieving the behavioral purpose P is according to equation (4).
The remaining time when s=1, that is, the remaining time T r (P i1 ) until the deadline T lim (P i1 ) for achieving the first action objective P i1 of the action pattern P i is a scalar. When s=1, the evaluation value calculating means 50 calculates the difference obtained by subtracting the current time t c from the achievement deadline T lim (P i1 ) as the remaining time T r (P i1 ).
The remaining time when s>1, that is, the remaining time until the deadline for achieving the second and subsequent behavioral objectives P i2, P i3, . . . of the behavioral pattern P i is a probability distribution. In other words, the time remaining to achieve the second and subsequent behavioral objectives P i2, P i3, ... is the required time T 1 d , ..., T s- for the behavioral objectives to be executed before that behavioral objective. 1 d , and the required time T 1 d , ..., T s-1 d for the purpose of action is defined as a random variable that follows the required time distribution f 1 (T d ) to f s-1 (T d ), respectively. , the remaining time T r of the second and subsequent behavioral objectives P i2, P i3, . . . is also calculated as a random variable according to a probability distribution. This probability distribution is defined as remaining time distribution g s (T r ). Note that in this embodiment where the required time distribution is a normal distribution, the remaining time distribution is also a normal distribution.
When s>1, the evaluation value calculation means 50 calculates the difference between the deadline T lim (P is ) for achieving the s-th action objective P is and the current time t c , and further calculates the difference between the 1st to s−1th action The total sum of time distributions f 1 (T d ) to f s-1 (T d ) required to achieve objectives P i1 to P i (s -1) is determined. The obtained distribution is called a summation distribution. Then, the evaluation value calculation means 50 calculates the remaining time distribution g s (T r ) using the value obtained by subtracting the average value of the sum distribution from the difference and the variance of the sum distribution. In other words, the average value of the remaining time distribution g s (T r ) is the value obtained by subtracting the average value of the above sum distribution from the above difference, and the variance of the remaining time distribution g s (T r ) is the variance of the above sum distribution. .

次に、評価値算出手段50は、式(2)及び式(3)に従って成功確率p(Pis,mijs)を算出する。成功確率は、達成期限までに行動目的を達成する確率であるから「行動目的を達成するまでの所要時間が残り時間以下になる確率」と定義できる。 Next, the evaluation value calculation means 50 calculates the success probability p(P is , m ijs ) according to equation (2) and equation (3). The probability of success is the probability of achieving the behavioral objective by the achievement deadline, so it can be defined as ``the probability that the time required to achieve the behavioral objective will be less than or equal to the remaining time.''

s=1の場合、式(4)により算出した残り時間T(Pi1)がスカラであるから、式(3)が表す値F(T)も式(2)が表す成功確率p(Pi1,mij1)もスカラとなる。具体的には、評価値算出手段50は、所要時間分布f(T)が表す確率密度を所要時間Tについて-∞から残り時間Tの範囲で積分して得られる積分値F(T)を成功確率p(Pi1,mij1)として算出する。
本実施形態においては、積分値F(T)は、所要時間分布f(T)が正規分布であるため、式(3)に示すように所要時間分布f(T)の平均値μと分散σと残り時間T(式(4)により算出したT(Pi1))とから算出することができる。式(3)におけるerfは誤差関数である。そして、式(2)に示すように、式(3)で算出した積分値F(T)がそのまま成功確率p(Pi1,mij1)となる。
図10の(a)は、1番目の行動目的Pi1の達成に要する所要時間分布f(T)の一例を示し、図10の(b)は、所要時間分布f(T)の累積分布関数F(T)を示す。図中のμは所要時間分布f(T)の平均値であり、所要時間がT(Pi1)のときの累積分布関数F(T)の値が成功確率p(Pi1,mij1)である。
When s=1, since the remaining time T r (P i1 ) calculated by Equation (4) is a scalar, the value F s (T r ) expressed by Equation (3) is also the success probability p expressed by Equation (2). (P i1 , m ij1 ) is also a scalar. Specifically, the evaluation value calculation means 50 integrates the probability density represented by the required time distribution f s (T d ) with respect to the required time T d in the range from −∞ to the remaining time Tr , and calculates an integral value F s . (T r ) is calculated as success probability p (P i1 , m ij1 ).
In this embodiment, since the required time distribution f s (T d ) is a normal distribution, the integral value F s (T r ) is determined by the required time distribution f s (T d ) as shown in equation (3). It can be calculated from the average value μ, the variance σ 2 and the remaining time T r (T r (P i1 ) calculated by equation (4)). erf in equation (3) is an error function. Then, as shown in Equation (2), the integral value F s (T r ) calculated using Equation (3) directly becomes the success probability p (P i1 , m ij1 ).
(a) of FIG. 10 shows an example of the required time distribution f 1 (T d ) required to achieve the first behavioral purpose P i1 , and (b) of FIG. 10 shows an example of the required time distribution f 1 (T d ). The cumulative distribution function F 1 (T r ) of F 1 (T r ) is shown. μ 1 in the figure is the average value of the required time distribution f 1 (T d ), and the value of the cumulative distribution function F 1 (T r ) when the required time is T r (P i1 ) is the success probability p (P i1 , m ij1 ).

s>1の場合、式(4)により算出した残り時間T(Pis)は分布g(T)になる。このため、成功確率p(Pis,mijs)は、式(2)に示すように、s-1番目までの行動目的を終えた時点での残り時間がT(Pis)となる確率g(T)に、残り時間T(Pis)でs番目の行動目的を達成できる確率F(T)を乗じて得られる確率を残り時間Tについて-∞から∞の範囲まで積分して得られる値となる。その際の確率F(T)は式(3)で算出される。 When s>1, the remaining time T r (P is ) calculated by equation (4) has a distribution g s (T r ). Therefore, the success probability p (P is , m ijs ) is the probability that the remaining time at the time of completing the s-1th behavioral purpose is T r (P is ), as shown in equation (2). The probability obtained by multiplying g s (T r ) by the probability F s (T r ) of being able to achieve the s-th behavioral objective in the remaining time T r (P is ) is expressed as a range from −∞ to ∞ for the remaining time T r This is the value obtained by integrating up to . The probability F s (T r ) at that time is calculated using equation (3).

この数式は解析的に解くことができないため、第1実施形態の評価値算出手段50は、例えば以下に説明するように数値解析的に成功確率p(Pis,mijs)を算出する。具体的には、サンプリング法によって残り時間の確率密度分布g(T)の標本を抽出し、サンプリングで得られた標本と、s番目の行動目的Pisの達成に要する所要時間分布f(T)とに基づいて、成功確率p(Pis,mijs)を算出する。
本実施形態においては、評価値算出手段50は、s番目(s=2、3、…)の行動目的Pisの達成期限までの残り時間分布g(T)を、任意の時間間隔で離散化してヒストグラムを算出する。
Since this formula cannot be solved analytically, the evaluation value calculating means 50 of the first embodiment calculates the success probability p(P is , m ijs ) numerically, for example, as described below. Specifically, a sample of the probability density distribution g s (T r ) of the remaining time is extracted using a sampling method, and the sample obtained by sampling is combined with the distribution of time required to achieve the sth behavioral objective P is f s (T d ), the success probability p (P is , m ijs ) is calculated.
In the present embodiment, the evaluation value calculation means 50 calculates the remaining time distribution g s (T r ) until the deadline for achieving the s-th (s=2, 3,...) behavioral purpose P is at arbitrary time intervals. Discretize and calculate histogram.

図11の(a)は、残り時間分布g(T)の一例を示し、図11の(b)は、残り時間分布g(T)のヒストグラムを示す。図11の(c)は、s番目の行動目的Pisの達成に要する所要時間分布f(T)の累積分布関数F(T)を示す。図中のμremは、残り時間分布g(T)の平均値であり、μは、所要時間分布f(T)の平均値である。
評価値算出手段50は、ヒストグラムの各ビン(各区間)b1~b5の生起確率(度数)と、各ビンb1~b5の代表値Tr1~Tr5の累積分布関数値F(Tr1)~F(Tr5)の積和を、成功確率p(Pis,mijs)として算出する。なお、ビンb1の生起確率は、ビンの幅をwとすると、残り時間分布g(T)の-∞からビンb1の右端Tr1+w/2までの積分値から残り時間分布g(T)の-∞からビンb1の左端Tr1-w/2までの積分値を減じることで算出できる。他のビンの生起確率も同様である。また、残り時間分布g(T)が正規分布である本実施形態において、式(3)と同様、ビンの右端までの積分値は時刻g(T)の平均値μおよび分散σとビンの右端の時刻とを誤差関数に適用して算出でき、ビンの左端までの積分値はg(T)の平均値μおよび分散σとビンの左端の時刻とを誤差関数に適用して算出できる。
(a) of FIG. 11 shows an example of the remaining time distribution g s (T r ), and (b) of FIG. 11 shows a histogram of the remaining time distribution g s (T r ). (c) of FIG. 11 shows the cumulative distribution function F s (T r ) of the required time distribution f s (T d ) required to achieve the s-th behavioral objective P is . μ rem in the figure is the average value of the remaining time distribution g s (T r ), and μ s is the average value of the required time distribution f s (T d ).
The evaluation value calculation means 50 calculates the probability of occurrence (frequency) of each bin (each section) b1 to b5 of the histogram and the cumulative distribution function value F s (T r1 ) of the representative value T r1 to T r5 of each bin b1 to b5. The sum of products of ~F s (T r5 ) is calculated as success probability p (P is , m ijs ). Note that the probability of occurrence of bin b1 is calculated from the integral value of the remaining time distribution g s (T r ) from -∞ to the right end T r1 +w/2 of the bin b1, assuming that the width of the bin is w . It can be calculated by subtracting the integral value from -∞ of T r ) to the left end T r1 -w/2 of bin b1. The same applies to the occurrence probabilities of other bins. Furthermore, in this embodiment where the remaining time distribution g s (T r ) is a normal distribution, the integral value up to the right end of the bin is the mean value μ and variance σ of the time g s (T r ), as in equation (3). 2 and the time at the right end of the bin to an error function, and the integral value to the left end of the bin can be calculated by applying the mean value μ and variance σ of g s ( Tr ) to the error function. It can be calculated by applying it to

なお、上記の2番目以降の行動目的Pisの成功確率p(Pis,mijs)の算出方法は、あくまでも例示であって本発明はこれに限定されるものではない。他のサンプリング法を利用して近似計算を行う等の数値解析的な手法によって、成功確率p(Pis,mijs)を算出してもよい。例えば、ボックス=ミュラー法(対象分布が正規分布の場合)や棄却サンプリング法,MCMC法等のサンプリング法を用いることができる。 Note that the method for calculating the success probability p(P is , m ijs ) of the second and subsequent behavioral objectives P is is merely an example, and the present invention is not limited thereto. The success probability p(P is , m ijs ) may be calculated by a numerical analysis method such as performing an approximate calculation using another sampling method. For example, sampling methods such as the Box-Mueller method (when the target distribution is a normal distribution), the rejection sampling method, and the MCMC method can be used.

式(2)~式(4)についての説明をまとめると次のようになる。
評価値算出手段50は、行動パターンPに対応する目的地パターンMij毎に、目的地パターンMijに属する目的地mijsで行動目的Pisを達成期限までに各々達成する確率p(Pis,mijs)の合計を、複数の行動目的Pisの各々を達成するのに要する所要時間Tの確率密度分布f(T)に基づいて予測する。
また、評価値算出手段50は、複数の行動目的Pisのうち先に達成する行動目的の所要時間の確率密度分布f(T)~fs-1(T)と達成期限に応じて残り時間の確率密度分布g(T)を決定し、残り時間の確率密度分布g(T)に基づいて、後に達成する行動目的を達成期限までに達成する確率p(Pis,mijs)を予測する。
また、評価値算出手段50は、残り時間分布g(T)のヒストグラムと、後に達成する行動目的を達成するのに要する所要時間分布f(T)の累積分布関数とに基づいて、ヒストグラムの各区間におけるヒストグラムの度数と累積分布関数の確率との積の合計を、確率p(Pis,mijs)として算出する。
また、評価値Eは、確率p(Pis,mijs)に応じて算出されるため、目的地での待ち時間が短いほど評価値Eは高くなる。
The explanation of equations (2) to (4) can be summarized as follows.
The evaluation value calculation means 50 calculates , for each destination pattern M ij corresponding to the behavior pattern P i , the probability p(P is , m ijs ) is predicted based on the probability density distribution f s (T d ) of the time T d required to achieve each of the plurality of behavioral objectives P is .
In addition, the evaluation value calculation means 50 calculates the probability density distribution f 1 (T d ) to f s-1 (T d ) of the time required for the behavioral purpose to be achieved first among the plurality of behavioral purposes P is and the achievement deadline. The probability density distribution g s (T r ) of the remaining time is determined based on the probability density distribution g s (T r ) of the remaining time, and the probability p (P is , m ijs ).
Further, the evaluation value calculation means 50 calculates the remaining time based on the histogram of the remaining time distribution g s (T r ) and the cumulative distribution function of the required time distribution f s (T d ) required to achieve the behavioral purpose to be achieved later. , the sum of the products of the histogram frequency and the probability of the cumulative distribution function in each section of the histogram is calculated as probability p(P is , m ijs ).
Furthermore, since the evaluation value E is calculated according to the probability p (P is , m ijs ), the evaluation value E becomes higher as the waiting time at the destination becomes shorter.

評価値算出手段50は、上記の評価値Eを、エージェントの行動を決定する所定のタイミング(以下「行動決定タイミング」と表記する)が到来した時点で算出する。
行動決定タイミングは、例えば、各エージェントの生成時刻、行動目的の達成時(但し最後の行動目的を除く)、予め定めた行動決定間隔(例えば10仮想時刻)のいずれかが到来したタイミングであってよい。
The evaluation value calculating means 50 calculates the above-mentioned evaluation value E when a predetermined timing (hereinafter referred to as "action determination timing") for determining the agent's action arrives.
The action decision timing is, for example, the generation time of each agent, the achievement of the action objective (excluding the last action objective), or the timing at which a predetermined action decision interval (for example, 10 virtual times) has arrived. good.

具体的には、評価値算出手段50は、エージェント情報120から対象空間に現存する「現存エージェント」を検出する。現存エージェントは、現在の仮想時刻(以下、現時刻)よりも前に生成され、且つ終端目的フラグが1であり、且つ達成フラグが0である行動目的IDが設定されているエージェントである。
評価値算出手段50は、エージェント情報122にて1時刻前の状況が「達成」であるエージェントを検出することにより、生成時刻の直後、行動目的を達成した直後の現存エージェントの行動決定タイミングが到来したことを判定する。
また、現時刻と生成時刻の差が行動決定間隔の倍数であることを以って、全ての現存エージェントに対して行動決定タイミングが到来したことを判定する。
Specifically, the evaluation value calculation means 50 detects an "existing agent" existing in the target space from the agent information 120. The existing agent is an agent that was generated before the current virtual time (hereinafter referred to as current time) and has an action goal ID set with a terminal goal flag of 1 and an achievement flag of 0.
By detecting an agent whose status one time ago was "achieved" in the agent information 122, the evaluation value calculation means 50 determines that the action decision timing of the existing agent has arrived immediately after the generation time and immediately after achieving the action objective. Determine what has been done.
Furthermore, since the difference between the current time and the generated time is a multiple of the action decision interval, it is determined that the action decision timing has arrived for all existing agents.

図2を参照する。目的地選択手段51は、評価値算出手段50から入力された評価値情報に基づいてエージェント毎に目的地を選択し、選択した目的地をエージェントIDと対応付けてエージェント情報記憶手段42内のエージェント情報122に記憶する。
具体的には、例えばエージェント毎に評価値が最高の目的地パターンMijを選択し、選択した目的地パターンMijにおける1番目の目的地のIDを、エージェントIDおよび現時刻と対応付けた現時刻データを新たに生成して、エージェント情報122に追記する。
現時刻が行動決定タイミングではない現存エージェントについては、1時刻前の目的地IDを、エージェントIDおよび現時刻と対応付けた現時刻データを新たに生成して、エージェント情報122に追記する。
See FIG. 2. The destination selection means 51 selects a destination for each agent based on the evaluation value information input from the evaluation value calculation means 50, associates the selected destination with the agent ID, and stores the agent information in the agent information storage means 42. The information is stored in the information 122.
Specifically, for example, the destination pattern M ij with the highest evaluation value is selected for each agent, and the ID of the first destination in the selected destination pattern M ij is associated with the agent ID and the current time. New time data is generated and added to the agent information 122.
For existing agents for which the current time is not the action decision timing, new current time data is generated in which the destination ID of one time ago is associated with the agent ID and the current time, and is added to the agent information 122.

また例えば、各目的地パターンMijの評価値Eの高さに応じた確率で当選する抽選を行って、当選した目的地パターンを選択してもよい。
また例えば、各目的地パターンMijの評価値Eの順位に応じた確率で当選する抽選を行って、当選した目的地パターンを選択してもよい。この場合、順位と確率の関係は予め定めておく。
Alternatively, for example, a lottery may be held to select a winning destination pattern with a probability of winning depending on the height of the evaluation value E of each destination pattern M ij , and the winning destination pattern may be selected.
Alternatively, for example, a lottery may be held to select a winning destination pattern with a probability of winning depending on the ranking of the evaluation value E of each destination pattern M ij , and the winning destination pattern may be selected. In this case, the relationship between ranking and probability is determined in advance.

上記のように、評価値が最高の目的地を選択する方法は現実世界の個体が行う合理的な選択行動に相当する。一方で、ランダム抽選で目的地を選択する方法は現実世界の個体が行う直感的な選択行動に相当する。これら、2つの方法のいずれを用いるかをエージェント毎に抽選して当選した方法によって目的地を選択してもよい。また、これら2つの方法のいずれを用いるかをエージェント毎に割り当てておき割り当てられた方法によって目的地を選択してもよい。 As mentioned above, the method of selecting the destination with the highest evaluation value corresponds to the rational selection behavior performed by individuals in the real world. On the other hand, the method of selecting a destination by random lottery corresponds to the intuitive selection behavior performed by individuals in the real world. The destination may be selected by drawing a lottery for each agent to determine which of these two methods to use, and then selecting the winning method. Alternatively, which of these two methods to use may be assigned to each agent, and the destination may be selected by the assigned method.

図2を参照する。行動模擬手段52は、各仮想時刻tにおいて、空間情報記憶手段41が記憶している空間情報111およびエージェント情報記憶手段42が記憶しているエージェント情報を参照する。行動模擬手段52は、これらの情報に基づいて、選択した目的地へ複数のエージェントの各々が移動して行動目的を達成する行動を模擬する。
行動模擬手段52は、生成時刻が到来したエージェントを現存エージェントとして生成する。
See FIG. 2. The behavior simulation means 52 refers to the spatial information 111 stored in the spatial information storage means 41 and the agent information stored in the agent information storage means 42 at each virtual time t. Based on this information, the behavior simulation means 52 simulates the behavior in which each of the plurality of agents moves to the selected destination and achieves the behavioral purpose.
The behavior simulation means 52 generates an agent whose generation time has arrived as an existing agent.

行動模擬手段52は、生成時刻が現時刻と一致するエージェントIDをエージェント情報120から読み出し、当該エージェントID、現時刻、初期位置及び状況「達成」を対応付けた現時刻データを生成して、エージェント情報122に追記する。
行動模擬手段52は、終端目的フラグが1である行動目的の達成フラグが1に更新されたエージェントを消去する。なお、第1実施形態のシミュレータ1では、エージェントを明示的に消去するのに代えて、次の仮想時刻以降のデータをエージェント情報122に追記しない。
The behavior simulation means 52 reads an agent ID whose generation time matches the current time from the agent information 120, generates current time data in which the agent ID, current time, initial position, and status "achieved" are associated with each other, and It is added to the information 122.
The action simulating means 52 deletes the agent whose terminal goal flag is 1 and whose action goal achievement flag has been updated to 1. Note that in the simulator 1 of the first embodiment, instead of explicitly deleting the agent, data after the next virtual time is not added to the agent information 122.

行動模擬手段52は、エージェント情報122から、現時刻のデータが記憶されているエージェント(すなわち現存エージェント)の状態を更新する。上記のとおり、現存エージェントについては目的地選択手段51によって現時刻のデータが生成されている。
行動模擬手段52は、現存エージェントの1時刻前のデータと現時刻のデータを抽出する。
The behavior simulation means 52 updates the state of the agent (that is, the existing agent) whose current time data is stored, from the agent information 122. As described above, the destination selection means 51 generates current time data for the existing agents.
The behavior simulation means 52 extracts data of the existing agent one time ago and data of the current time.

1時刻前の状況が「移動中」または「達成」である場合、行動模擬手段52は、当該エージェントの移動速度を算出して位置を更新する。
具体的には、行動模擬手段52は現時刻におけるエージェントの移動速度と位置を決定する。まず、行動模擬手段52は、空間情報111から、該当する各エージェントの現時刻tにおける目的地の代表点と、移動可能領域と、経由点を読み出す。
If the situation one time ago was "moving" or "achieved", the behavior simulation means 52 calculates the moving speed of the agent and updates the position.
Specifically, the behavior simulation means 52 determines the moving speed and position of the agent at the current time. First, the behavior simulation means 52 reads from the spatial information 111 the representative point of the destination of each corresponding agent at the current time t, the movable area, and the way point.

行動模擬手段52は、移動可能領域内において、該当するエージェントiの1時刻前の位置xi(t-1)と代表点を結ぶ経路、および任意の経由点を介して位置xi(t-1)と代表点を結ぶ経路のうちの最短経路を選択する。
次に、行動模擬手段52は、選択した最短経路上の経由点と代表点のうちの位置xi(t-1)から最も近い点に向かい、大きさがエージェント基本速さに等しいベクトルを、目的地に近付ける移動速度として算出する。
The behavior simulating means 52 moves the agent i to the position xi(t-1) via a route connecting the representative point with the position xi(t-1) of the corresponding agent i one time before, and via arbitrary transit points within the movable area. Select the shortest route among the routes connecting the and representative points.
Next, the behavior simulator 52 moves toward the point closest to the position xi(t-1) among the intermediate points and representative points on the selected shortest route, and moves a vector whose size is equal to the agent's basic speed to the target point. Calculated as the speed of movement to bring it closer to the ground.

次に、行動模擬手段52は、位置xi(t-1)に、算出した移動速度を加算することによってエージェントiの現時刻の位置xi(t)を求めてエージェント情報122を更新する。なお、このとき、処理対象のエージェントとその近傍の壁や他のエージェントにソーシャルフォース(Social Force)モデルやRVO(Reciprocal Velocity Obstacles)等の歩行モデルを適用して移動速度を調整した上で加算するのが好適である。 Next, the behavior simulator 52 adds the calculated moving speed to the position xi(t-1) to determine the current position xi(t) of the agent i and updates the agent information 122. In addition, at this time, a walking model such as a social force model or RVO (Reciprocal Velocity Obstacles) is applied to the agent to be processed and the walls and other agents in its vicinity, and the movement speed is adjusted before addition. is preferable.

そして、現時刻の位置が目的地の代表点と一致しないエージェントについては、エージェント情報122における現時刻の状況を「移動中」に更新する。
一方で、現時刻の位置が目的地の代表点と一致したエージェント(目的地に到達したエージェント)については、以下のとおり、目的地のキュー(目的地に滞在しているエージェントの待ち行列)と状況を更新する。
Then, for an agent whose position at the current time does not match the representative point of the destination, the status at the current time in the agent information 122 is updated to "moving".
On the other hand, for an agent whose current position matches the representative point of the destination (an agent who has reached the destination), the destination queue (queue of agents staying at the destination) and Update status.

まず、空間情報111から現時刻の目的地のキューとサービス窓口数を読み出す。読み出したキューに目的地に到達したエージェントのIDを追加して空間情報111を更新する。
このとき、追加後のキュー内のエージェント数がサービス窓口数以下であればエージェント情報122における現時刻の状況を「処理中」に更新する。
さらに、空間情報111から当該目的地に関するサービス時間分布を読み出し、読み出した正規分布にボックス=ミュラー法を適用して当該目的地におけるサービス時間を算出する。
First, the queue and number of service counters at the destination at the current time are read from the spatial information 111. The spatial information 111 is updated by adding the ID of the agent that has reached the destination to the read queue.
At this time, if the number of agents in the queue after being added is less than or equal to the number of service windows, the current status in the agent information 122 is updated to "processing".
Furthermore, the service time distribution regarding the destination is read from the spatial information 111, and the Box-Mueller method is applied to the read normal distribution to calculate the service time at the destination.

すなわち、乱数を生成し、読み出した正規分布と乱数とを用いた抽選によって、当該正規分布に従った生起確率でランダムにサービス時間を決定する。
目的地に到達したエージェントのIDと、算出したサービス時間を現時刻に加算したサービス完了時刻の組をエージェント情報123に追記する。
一方で、追加後のキュー内のエージェント数がサービス窓口数より多ければエージェント情報122における現時刻の状況を「待機中」に更新する。
That is, a random number is generated, and the service time is randomly determined by a lottery using the read normal distribution and the random number, with an occurrence probability according to the normal distribution.
A set of the ID of the agent that has reached the destination and the service completion time obtained by adding the calculated service time to the current time is added to the agent information 123.
On the other hand, if the number of agents in the queue after being added is greater than the number of service windows, the current status in the agent information 122 is updated to "on standby".

1時刻前の状況が「待機中」であるエージェント(待機中のエージェント)については、行動模擬手段52は、現時刻における移動速度を0とし、1時刻前の位置を維持する。
また、他のエージェントが処理されることによって、キュー内における待機中のエージェントの順序がサービス窓口数以下になった場合には、待機中であったエージェント状況は「処理中」に更新される。それ以外の場合には状況は「待機中」を維持する。
For an agent whose status one time ago was "on standby" (an agent on standby), the behavior simulation means 52 sets the moving speed at the current time to 0 and maintains the position one time ago.
Further, if the order of waiting agents in the queue becomes less than or equal to the number of service windows due to processing of another agent, the status of the waiting agent is updated to "processing". Otherwise, the status remains "waiting".

1時刻前の状況が「処理中」であるエージェント(処理中のエージェント)については、行動模擬手段52は、エージェント情報123からサービス完了時刻を読み出す。
現時刻がサービス完了時刻に達した場合、行動模擬手段52は、エージェント情報122における現時刻の状況を「達成」に更新する。また、エージェント情報121および空間情報111を参照し、エージェント情報121における、サービス完了時刻に達したエージェントの、生成時刻が現時刻以下、且つ現時刻の目的地に対応する行動目的のうち、現時刻に最も近い行動目的の達成フラグを1に更新する。また、エージェント情報123から当該エージェントのサービス完了時刻のデータを削除する。
For agents whose status one time ago was "processing" (processing agents), the behavior simulation means 52 reads the service completion time from the agent information 123.
When the current time reaches the service completion time, the behavior simulation means 52 updates the status of the current time in the agent information 122 to "achieved". In addition, by referring to the agent information 121 and the spatial information 111, the agent information 121, which has reached the service completion time, selects the action purpose whose generation time is less than or equal to the current time and which corresponds to the destination at the current time. Update the achievement flag of the action objective closest to 1 to 1. Furthermore, the data on the service completion time of the agent is deleted from the agent information 123.

現時刻がサービス完了時刻に達した場合、行動模擬手段52は、さらに、空間情報111の、サービス完了時刻に達したエージェントがサービスを受けている目的地のキューに対して当該エージェントよりも後の順序のエージェントの順序を1ずつ前にずらす更新を行うとともに、同キューから当該エージェントのエージェントIDを削除する。さらに、行動模擬手段52は、更新後の同キューにおいて順序がサービス窓口数と一致するエージェントに対して、サービス時間を算出して、エージェントIDとサービス完了時刻の組合せをエージェント情報123に追記するとともに、エージェント情報122における当該エージェントの現時刻の状況を「処理中」に更新する。 When the current time reaches the service completion time, the behavior simulation means 52 further specifies that the agent whose service completion time has reached the service completion time is later than the agent in the queue of the destination where the agent who has reached the service completion time is receiving the service. The agent in the queue is updated by moving the agent forward one by one, and the agent ID of the agent is deleted from the queue. Furthermore, the behavior simulation means 52 calculates the service time for the agents whose order matches the number of service windows in the updated queue, and adds the combination of agent ID and service completion time to the agent information 123. , updates the current status of the agent in the agent information 122 to "Processing".

図2を参照する。統計情報更新手段53は、各目的地に係る所要時間の観測値に基づいて統計情報130(待ち数分布、サービス時間分布)及び統計情報131(移動速度分布)を更新する。
統計情報更新手段53は、各エージェントの統計情報130及び131を当該エージェントの所要時間に応じて更新してよい。つまり、エージェントが自身の所要時間を観測したものとみなす。
すなわち、複数のエージェントのうち処理対象のエージェント(対象エージェント)が行動目的を達成するのに要する所要時間の観測値に応じて、対象エージェントについて記憶された統計情報130及び131を更新してよい。
See FIG. 2. The statistical information updating means 53 updates statistical information 130 (waiting number distribution, service time distribution) and statistical information 131 (travel speed distribution) based on the observed value of the required time for each destination.
The statistical information updating means 53 may update the statistical information 130 and 131 of each agent according to the required time of the agent. In other words, it is assumed that the agent has observed its own required time.
That is, the statistical information 130 and 131 stored about the target agent may be updated according to the observed value of the time required for the agent to be processed (target agent) to achieve the behavioral purpose among the multiple agents.

また、統計情報更新手段53は、各エージェントの統計情報130及び131を当該エージェントが当該エージェント以外のエージェント(以下、他のエージェント)の所要時間を観測した値に応じて更新してよい。
すなわち、対象エージェントの統計情報130及び131を、他のエージェントが行動目的を達成するのに要する所要時間に関する観測値に応じて更新してよい。
Further, the statistical information updating means 53 may update the statistical information 130 and 131 of each agent according to the value observed by the agent in the required time of an agent other than the agent (hereinafter referred to as other agent).
That is, the statistical information 130 and 131 of the target agent may be updated according to observed values regarding the time required for other agents to achieve their behavioral goals.

統計情報更新手段53は、各エージェントの視認範囲内に存在する目的地や同範囲内に存在するエージェントについて観測値を取得する。そのために統計情報更新手段53は、各エージェントの視認範囲を設定する。視認範囲の角度範囲や視認距離は、各エージェントの状況に応じて変更させてよい。例えば、待機中または処理中の視認範囲を、移動中の視認範囲よりも広く設定してよい。視認範囲の角度範囲や視認距離を、各エージェントの移動速度に応じて変更させてもよい。また、空間情報111を参照し、壁等の障害物に阻まれる領域(死角)を除外して視認範囲を設定する。
具体的には、統計情報更新手段53は、移動中のエージェントについては移動方向の左右90度の範囲から死角を除いた領域を、待機中または処理中のエージェントについては当該エージェント位置を中心とした360度の範囲から死角を除いた領域を、視認範囲として設定する。
The statistical information updating means 53 acquires observed values for destinations existing within the visible range of each agent and agents existing within the same range. For this purpose, the statistical information updating means 53 sets the visibility range of each agent. The angular range and visible distance of the visible range may be changed depending on the situation of each agent. For example, the visibility range during standby or processing may be set wider than the visibility range during movement. The angular range and visible distance of the visible range may be changed depending on the moving speed of each agent. Also, with reference to the spatial information 111, a visible range is set excluding areas blocked by obstacles such as walls (blind spots).
Specifically, the statistical information updating means 53 updates an area within a range of 90 degrees to the left and right in the direction of movement for a moving agent, excluding blind spots, and an area centered around the agent's position for an agent that is waiting or processing. The area excluding blind spots from the 360 degree range is set as the visible range.

統計情報とそれを更新するための観測値及び観測タイミングは以下の通りである。
各エージェントの局所経路毎の知識として記憶される移動速度分布を更新するための観測値は、当該局所経路における当該エージェントの移動速度と他のエージェントの移動速度であり、所定の観測間隔(例えば10仮想時刻)で観測される。
本実施形態においては、全エージェントに共通した観測間隔が設定されるが、エージェント毎に異なる観測間隔を設定してもよい。
また、本実施形態においては、各エージェントの観測間隔の起点を当該エージェントの生成時刻とする。全エージェントに共通の起点としてもよい。
The statistical information, observation values and observation timing for updating it are as follows.
The observation values for updating the movement speed distribution stored as knowledge for each local route of each agent are the movement speed of the agent and the movement speed of other agents on the local route, and are determined at predetermined observation intervals (for example, 10 observed at virtual time).
In this embodiment, a common observation interval is set for all agents, but a different observation interval may be set for each agent.
Furthermore, in this embodiment, the starting point of the observation interval for each agent is the generation time of the agent. It may also be a common starting point for all agents.

各エージェントの目的地毎の知識として記憶される待ち数分布を更新するための観測値は、当該目的地における待ち数であり、上記観測間隔でキューを参照することにより観測される。
各エージェントの目的地毎の知識として記憶されるサービス時間分布を更新するための観測値は、当該目的地にて当該エージェントがサービスを受けるのに要したサービス時間であり、当該エージェントが目的地での行動目的を達成した時点で観測される。
The observation value for updating the waiting number distribution stored as knowledge for each destination of each agent is the waiting number at the destination, and is observed by referring to the queue at the above observation interval.
The observed value for updating the service time distribution stored as knowledge for each destination of each agent is the service time required for the agent to receive the service at the destination. It is observed when the behavioral purpose is achieved.

または、当該エージェントが待機中に位置している目的地における他のエージェントのサービス時間を観測値としてもよい。この場合、当該目的地のキュー内のエージェントの順位が変化した時点に観測値を観測してよい。この場合には、例えば行動模擬手段52が、キューが変化したエージェントと目的地とを統計情報更新手段53に通知し、通知を受けた統計情報更新手段53が通知時刻を記憶部4に記憶させて、前回通知からの経過時間をサービス時間として求める。 Alternatively, the observed value may be the service time of another agent at the destination where the agent is on standby. In this case, the observed value may be observed at the time when the rank of the agent in the queue for the destination changes. In this case, for example, the behavior simulation means 52 notifies the statistical information updating means 53 of the agent whose queue has changed and the destination, and the statistical information updating means 53 that has received the notification stores the notification time in the storage unit 4. Then, the elapsed time since the previous notification is determined as the service time.

また、統計情報更新手段53は、各個体が初見の目的地及び局所経路を知識に加える様子を模擬する。
すなわち統計情報更新手段53は、各エージェントの視認範囲内に存在するが、当該エージェントの統計情報130に含まれていない目的地及び当該エージェントの統計情報131に含まれていない局所経路の情報を統計情報130に追加する。
統計情報更新手段53は、特許請求の範囲に記載の「位置情報更新手段」の一例である。
Furthermore, the statistical information updating means 53 simulates the situation in which each individual adds a destination and a local route seen for the first time to its knowledge.
In other words, the statistical information updating means 53 statistically updates information on destinations that exist within the visible range of each agent but are not included in the agent's statistical information 130 and local routes that are not included in the agent's statistical information 131. Add to information 130.
The statistical information updating means 53 is an example of the "location information updating means" described in the claims.

具体的には、統計情報更新手段53は、各エージェントの視認範囲内に当該エージェントの統計情報130に含まれていない目的地が存在する場合に、当該エージェントのエージェントIDと当該目的地の目的地IDとの組合せに、待ち数分布、サービス時間分布の同時確率分布のパラメータの初期値を対応付けたデータを統計情報130に追加する。この初期値は上述したように目的地毎の初期値として統計情報記憶手段43が記憶している。
また、統計情報更新手段53は、各エージェントの視認範囲内に当該エージェントの統計情報131に含まれていない局所経路が存在する場合に、当該エージェントのエージェントIDと当該局所経路の両端地点との組合せに、移動速度分布の同時確率分布のパラメータの初期値を対応付けたデータを統計情報131に追加する。この初期値は上述したように目的地毎の初期値として統計情報記憶手段43が記憶している。
Specifically, when there is a destination within the visible range of each agent that is not included in the statistical information 130 of the agent, the statistical information updating means 53 updates the agent ID of the agent and the destination of the destination. Data in which initial values of parameters of the joint probability distribution of the waiting number distribution and the service time distribution are associated with the combination with the ID is added to the statistical information 130. As described above, this initial value is stored in the statistical information storage means 43 as an initial value for each destination.
Furthermore, when there is a local route that is not included in the statistical information 131 of the agent within the visible range of each agent, the statistical information updating means 53 updates the agent ID of the agent and the both end points of the local route. Then, data in which the initial values of the parameters of the joint probability distribution of the moving speed distribution are associated is added to the statistical information 131. As described above, this initial value is stored in the statistical information storage means 43 as an initial value for each destination.

統計情報更新手段53による同時確率分布のパラメータ(平均値μ、自由度ν、仮説的標本数κ、尺度母数λ)の更新は、例えば次式(5)~(8)で表されるベイズ推定法によって行われてよい。 The updating of the parameters of the joint probability distribution (mean value μ, degree of freedom ν, hypothetical sample size κ, scale parameter λ) by the statistical information updating means 53 is performed using the Bayesian algorithm expressed by, for example, the following equations (5) to (8). This may be done by an estimation method.

Figure 0007441080000005
Figure 0007441080000005

Figure 0007441080000006
Figure 0007441080000006

Figure 0007441080000007
Figure 0007441080000007

Figure 0007441080000008
Figure 0007441080000008

上式において、μ、ν、κ、λは、統計情報記憶手段43に記憶されている同時確率分布のパラメータでありμ、ν、κ、λは、更新後の当該同時確率分布パラメータである。また、Nは観測値数、xは観測値の平均値である。 In the above equation, μ 0 , ν 0 , κ 0 , and λ 0 are the parameters of the joint probability distribution stored in the statistical information storage means 43, and μ 1 , ν 1 , κ 1 , and λ 1 are the parameters of the updated This is the joint probability distribution parameter. Further, N is the number of observed values, and x a is the average value of the observed values.

次に図12の(a)及び図12の(b)を参照して、統計情報記憶手段43に記憶される確率分布が統計情報更新手段53によって更新されて、エージェント毎に違いが生じる様子を説明する。
確率分布140及び150は、エージェント#1と#59の売店2のサービス時間分布の初期値を示す。エージェント#1と#59の初期値はいずれもΝ(600, 2500)である。
Next, referring to FIGS. 12(a) and 12(b), we will explain how the probability distribution stored in the statistical information storage means 43 is updated by the statistical information updating means 53 and differences occur for each agent. explain.
Probability distributions 140 and 150 indicate the initial values of the service time distributions of the kiosk 2 for agents #1 and #59. The initial values of both agents #1 and #59 are N(600, 2500).

確率分布141及び151は、仮想時刻が経過して統計情報更新手段53により十分に更新された後のエージェント#1と#59の売店2のサービス時間分布を示す。エージェント#1のサービス時間分布141はΝ(480, 25700)となり、エージェント#59のサービス時間分布151はΝ(550, 17100)となっている。すなわち、サービス時間分布141よりもサービス時間分布151の方が平均値が大きく、分散が小さくなっている。 Probability distributions 141 and 151 show the service time distributions of agents #1 and #59 at the shop 2 after the virtual time has passed and the statistical information update means 53 has sufficiently updated them. The service time distribution 141 of agent #1 is N(480, 25700), and the service time distribution 151 of agent #59 is N(550, 17100). That is, the service time distribution 151 has a larger average value and smaller variance than the service time distribution 141.

このことから、エージェント#1にとっての売店2は、エージェント#59にとっての売店2よりも、平均的には迅速だが、その平均よりも大幅に迅速であったり大幅に遅延したりすることも多い不安定な店舗であることが分かる。この結果、例えば、エージェント#1は、残り時間が少なく他の売店の方が平均的にサービス時間が短い場合には、いちかばちかで売店2を選択するようになる。
一方で、エージェント#59にとっての売店2は、エージェント#1にとっての売店2よりも、平均的にはやや遅いが、サービス時間は安定している店舗であることが分かる。この結果、例えば、エージェント#59は残り時間が550時刻以上ある場合に売店2を選択しやすくなる。
This means that, while agent #1's kiosk 2 is faster on average than agent #59's kiosk 2, it is often significantly faster or significantly delayed than that average. It can be seen that it is a stable store. As a result, for example, if agent #1 has little remaining time and the service time at another kiosk is shorter on average, then agent #1 will select kiosk 2 on a do-or-go basis.
On the other hand, it can be seen that the shop 2 for agent #59 has a stable service time, although it is slightly slower on average than the shop 2 for agent #1. As a result, for example, agent #59 can easily select store 2 when the remaining time is 550 hours or more.

このように、同一の目的地であってもエージェントによって、所要時間の情報に差が生じる。同様に、同一エージェントであっても同一行動目的を達成するための目的地間で所要時間の情報に差が生じる。
所要時間の情報に差が生じることによりエージェント間で行動に違いを生じさせることができ、現実世界において個体毎の経験知の差によって行動に違いが生じることを模擬できる。
In this way, even for the same destination, information on the required time varies depending on the agent. Similarly, even for the same agent, there will be differences in information on the time required between destinations to achieve the same action objective.
Differences in information about the required time can cause differences in behavior between agents, and it is possible to simulate differences in behavior in the real world due to differences in experience knowledge among individuals.

図2を参照する。予測結果出力手段60は、シミュレーションの結果である予測結果を出力する。予測結果は、エージェント情報記憶手段42に記憶されている情報の一部または全部を少なくとも含み、好適には、さらに空間情報記憶手段41に記憶されている情報の一部または全部を含む。
予測結果出力手段60は、例えば、制御部5および表示部6が協働して実現され、記憶部4から読み出した予測結果を、表示部6に表示させる。また、予測結果出力手段60は、予測結果をデータファイルとして出力してもよいし、画像ファイルとして出力してもよいし、画像として表示してもよいし、これらのうちの1以上の形式で出力してもよい。
See FIG. 2. The prediction result output means 60 outputs a prediction result that is a result of the simulation. The prediction result includes at least some or all of the information stored in the agent information storage means 42, and preferably further includes some or all of the information stored in the spatial information storage means 41.
The prediction result output means 60 is realized by, for example, the control section 5 and the display section 6 working together, and displays the prediction result read from the storage section 4 on the display section 6. Further, the prediction result output means 60 may output the prediction result as a data file, may output it as an image file, may display it as an image, or may output the prediction result in one or more of these formats. You can also output it.

例えば、予測結果出力手段60は、対象空間の地図を画像化するとともに当該画像上の各エージェントの位置と対応する座標にエージェントを表す図形を重畳描画して予測結果の画像を生成し、生成した画像をファイルとして出力し、および/または表示部6に出力する。
予測結果の出力タイミングは、シミュレーションを終えた時点の他に、シミュレーションの途中を含んでもよい。つまり、シミュレーションの途中までに得られた上記情報の一部または全部を中間予測結果として出力してもよい。
For example, the prediction result output means 60 generates an image of the prediction result by converting a map of the target space into an image, and superimposing and drawing a figure representing the agent at the coordinates corresponding to the position of each agent on the image. The image is output as a file and/or output to the display unit 6.
The output timing of the prediction result may include the middle of the simulation as well as the time when the simulation is finished. That is, part or all of the above information obtained up to the middle of the simulation may be output as an intermediate prediction result.

(動作)
次に、第1実施形態のシミュレータ1によるシミュレーション方法について説明する。
図13は、第1実施形態のシミュレータ1によるシミュレーション方法の全体処理の一例のフローチャートである。
まず、ステップS1において利用者は、シミュレーション条件として模擬条件、空間情報、エージェント情報の初期値、及び統計情報の初期値を設定する。設定は条件設定手段20を通じて行われる。そして、ステップS2において仮想時刻tが0に初期化される。
(motion)
Next, a simulation method using the simulator 1 of the first embodiment will be explained.
FIG. 13 is a flowchart of an example of the overall processing of the simulation method by the simulator 1 of the first embodiment.
First, in step S1, the user sets simulation conditions, spatial information, initial values of agent information, and initial values of statistical information as simulation conditions. Setting is performed through the condition setting means 20. Then, in step S2, the virtual time t is initialized to 0.

ステップS3においては生成時刻を迎えたエージェントが生成される。具体的には、行動模擬手段52が、現時刻tと同じ生成時刻が設定されたエージェントをエージェント情報120内から探索する。該当するエージェントが検出された場合、当該エージェントのIDを初期位置とともにエージェント情報122に追加する。追加されたエージェントは現存エージェントとなる。
ステップS4において、現存エージェント(仮想時刻よりも前に生成され、且つ達成フラグが0である行動目的IDが設定されているエージェント)が存在するか否かを判定する。現存エージェントが存在する場合(ステップS4:Y)に処理はステップS5へ進む。現存エージェントが存在しない場合(ステップS4:N)に処理はステップS8へ進む。
In step S3, an agent whose generation time has arrived is generated. Specifically, the behavior simulator 52 searches the agent information 120 for an agent whose generation time is set to be the same as the current time t. When a corresponding agent is detected, the ID of the corresponding agent is added to the agent information 122 along with the initial position. The added agent becomes an existing agent.
In step S4, it is determined whether or not there is an existing agent (an agent that was generated before the virtual time and has an action objective ID set with an achievement flag of 0). If there is an existing agent (step S4: Y), the process advances to step S5. If there is no existing agent (step S4: N), the process advances to step S8.

ステップS5では、統計情報更新処理が行われる。統計情報更新処理では、現存エージェントが観測した観測値に基づいて、統計情報記憶手段43に記憶されている統計情報130及び131が更新される。統計情報更新処理の詳細は後述する。
ステップS6では、行動決定処理が行われる。行動決定処理では、エージェント情報121に設定された行動目的と、統計情報130及び131に設定された確率分布に基づいて、エージェントが到達を目指す目的地を選択する。行動決定処理の詳細は後述する。
In step S5, statistical information update processing is performed. In the statistical information update process, the statistical information 130 and 131 stored in the statistical information storage means 43 are updated based on the observed values observed by the existing agents. Details of the statistical information update process will be described later.
In step S6, action determination processing is performed. In the action determination process, a destination that the agent aims to reach is selected based on the action purpose set in the agent information 121 and the probability distribution set in the statistical information 130 and 131. Details of the action determination process will be described later.

ステップS7では、エージェント状態更新処理が行われる。エージェント状態更新処理では、ステップS6で決定した目的地に応じて現存エージェントの状態を更新する。エージェント状態更新処理の詳細は後述する。
ステップS8では、仮想時刻tを「1」だけ増加する。
ステップS9では、仮想時刻tが模擬条件記憶手段40に記憶されているシミュレーション終了時刻Tに到達したか否かを判定する。仮想時刻tが終了時刻Tに到達した場合(ステップS9:Y)に処理はステップS10へ進む。仮想時刻tが終了時刻Tに到達していない場合(ステップS9:N)に処理はステップS3に戻る。
ステップS10では、シミュレーションの結果である予測結果を出力して、処理終了となる。
In step S7, agent status update processing is performed. In the agent status update process, the status of the existing agent is updated according to the destination determined in step S6. Details of the agent status update process will be described later.
In step S8, the virtual time t is incremented by "1".
In step S9, it is determined whether the virtual time t has reached the simulation end time T stored in the simulation condition storage means 40. If the virtual time t reaches the end time T (step S9: Y), the process proceeds to step S10. If the virtual time t has not reached the end time T (step S9: N), the process returns to step S3.
In step S10, the prediction result, which is the result of the simulation, is output, and the process ends.

次に、図14及び図15を参照して、ステップS5の統計情報更新処理について説明する。統計情報更新処理は、行動模擬手段52及び統計情報更新手段53によって実行される。
ステップS20において行動模擬手段52は、現存エージェントを順次選択し、処理対象の注目エージェントに設定する。
Next, the statistical information update process in step S5 will be described with reference to FIGS. 14 and 15. The statistical information update process is executed by the behavior simulation means 52 and the statistical information update means 53.
In step S20, the behavior simulator 52 sequentially selects existing agents and sets them as agents of interest to be processed.

ステップS21において行動模擬手段52は、注目エージェントに関して、統計情報130及び131を更新するための観測値の観測タイミングが到来したかを判定する。観測タイミングが到来した場合(ステップS21:Y)に処理はステップS22へ進む。観測タイミングが到来していない場合(ステップS21:N)に処理はステップS35へ進む。
ステップS22において統計情報更新手段53は、注目エージェントの視認範囲を設定する。統計情報更新手段53は、注目エージェントの統計情報130に含まれていない目的地が視認範囲内に存在するか否かを判定する。
In step S21, the behavior simulator 52 determines whether the observation timing for updating the statistical information 130 and 131 for the agent of interest has arrived. When the observation timing has arrived (step S21: Y), the process advances to step S22. If the observation timing has not arrived (step S21: N), the process proceeds to step S35.
In step S22, the statistical information updating means 53 sets the visible range of the agent of interest. The statistical information updating means 53 determines whether a destination that is not included in the statistical information 130 of the agent of interest exists within the visible range.

統計情報130に含まれていない目的地が視認範囲内に存在する場合(ステップS22:Y)に処理はステップS23へ進む。統計情報130に含まれていない目的地が視認範囲内に存在しない場合(ステップS22:N)に処理はステップS24へ進む。
ステップS23において統計情報更新手段53は、当該目的地のデータを注目エージェントの統計情報130に追加する。その後に処理はステップS24へ進む。
If a destination not included in the statistical information 130 exists within the visible range (step S22: Y), the process proceeds to step S23. If a destination that is not included in the statistical information 130 does not exist within the visible range (step S22: N), the process proceeds to step S24.
In step S23, the statistical information updating means 53 adds the data of the destination to the statistical information 130 of the agent of interest. Thereafter, the process proceeds to step S24.

ステップS24において統計情報更新手段53は、注目エージェントの統計情報131に含まれていない局所経路が視認範囲内に存在するか否かを判定する。統計情報131に含まれていない局所経路が視認範囲内に存在する場合(ステップS24:Y)に処理はステップS25へ進む。統計情報131に含まれていない局所経路が視認範囲内に存在しない場合(ステップS24:N)に処理はステップS26へ進む。
ステップS25において統計情報更新手段53は、当該局所経路のデータを注目エージェントの統計情報131に追加する。その後に処理はステップS26へ進む。
In step S24, the statistical information updating unit 53 determines whether a local route that is not included in the statistical information 131 of the agent of interest exists within the visible range. If a local route not included in the statistical information 131 exists within the visible range (step S24: Y), the process advances to step S25. If there is no local route not included in the statistical information 131 within the visible range (step S24: N), the process proceeds to step S26.
In step S25, the statistical information updating means 53 adds the data of the local route to the statistical information 131 of the agent of interest. Thereafter, the process proceeds to step S26.

ステップS26において統計情報更新手段53は、注目エージェントの状況が「移動中」であるか否かを判定する。注目エージェントの状況が「移動中」である場合(ステップS26:Y)に処理はステップS27へ進む。注目エージェントの状況が「移動中」でない場合(ステップS26:N)に処理はステップS28へ進む。
ステップS27において統計情報更新手段53は、注目エージェントの移動速度と局所経路を取得し、当該局所経路における速さを算出する。その後に処理はステップS28へ進む。
In step S26, the statistical information updating means 53 determines whether the status of the agent of interest is "on the move." If the status of the agent of interest is "on the move" (step S26: Y), the process advances to step S27. If the status of the agent of interest is not "on the move" (step S26: N), the process advances to step S28.
In step S27, the statistical information updating means 53 acquires the moving speed and local route of the agent of interest, and calculates the speed on the local route. Thereafter, the process advances to step S28.

ステップS28において統計情報更新手段53は、注目エージェントの視認範囲内に存在する他のエージェントの状況が「移動中」であるか否かを判定する。視認範囲内の他のエージェントの状況が「移動中」である場合(ステップS28:Y)に処理はステップS29へ進む。視認範囲内の他のエージェントの状況が「移動中」でない場合(ステップS28:N)に処理はステップS30へ進む。
ステップS29において統計情報更新手段53は、移動中であり且つ視認範囲内に存在する他のエージェントの移動速度と局所経路を取得し、当該局所経路における速さを算出する。その後に処理はステップS30へ進む。
In step S28, the statistical information updating unit 53 determines whether the status of other agents existing within the visible range of the agent of interest is "moving". If the status of another agent within the visible range is "moving" (step S28: Y), the process advances to step S29. If the status of other agents within the visible range is not "moving" (step S28: N), the process proceeds to step S30.
In step S29, the statistical information updating means 53 acquires the moving speed and local route of another agent that is moving and exists within the visible range, and calculates the speed on the local route. After that, the process proceeds to step S30.

ステップS30において統計情報更新手段53は、ステップS27またはS29のいずれかで速さを算出したか否かを判定する。速さを算出した場合(ステップS30:Y)に処理はステップS31へ進む。速さを算出しない場合(ステップS30:N)に処理はステップS32へ進む。
ステップS31において統計情報更新手段53は、算出した速さを観測値として用いて、注目エージェントの統計情報131のうち速さを観測した局所経路の移動速度分布を更新する。その後に処理はステップS32へ進む。
In step S30, the statistical information updating means 53 determines whether the speed has been calculated in either step S27 or S29. If the speed has been calculated (step S30: Y), the process advances to step S31. If the speed is not calculated (step S30: N), the process advances to step S32.
In step S31, the statistical information updating means 53 uses the calculated speed as an observed value to update the moving speed distribution of the local route whose speed was observed in the statistical information 131 of the agent of interest. After that, the process proceeds to step S32.

ステップS32において統計情報更新手段53は、注目エージェントの視認範囲内に目的地いずれかが存在するか否かを判定する。視認範囲内に目的地が存在する場合(ステップS32:Y)に処理はステップS33へ進む。視認範囲内に目的地が存在しない場合(ステップS32:N)に処理はステップS35へ進む。
ステップS33において統計情報更新手段53は、視認範囲内に存在する目的地の待ち数を取得する。ステップS34において統計情報更新手段53は、取得した待ち数を観測値として用いて、注目エージェントの統計情報130のうち待ち数を観測した目的地の待ち数分布を更新する。その後に処理はステップS35へ進む。
In step S32, the statistical information updating means 53 determines whether any destination exists within the visible range of the agent of interest. If the destination exists within the visible range (step S32: Y), the process advances to step S33. If the destination does not exist within the visible range (step S32: N), the process proceeds to step S35.
In step S33, the statistical information updating means 53 obtains the number of waiting destinations existing within the visible range. In step S34, the statistical information updating means 53 uses the obtained waiting number as an observed value to update the waiting number distribution of the destination whose waiting number is observed in the statistical information 130 of the agent of interest. Thereafter, the process proceeds to step S35.

ステップS35において統計情報更新手段53は、注目エージェントのサービス完了時刻が到来したかを判定する。サービス完了時刻が到来した場合(ステップS35:Y)に処理はステップS36へ進む。サービス完了時刻が到来しない場合(ステップS35:N)に処理はステップS37へ進む。
ステップS36において統計情報更新手段53は、注目エージェントに要したサービス時間を算出する。その後に処理はステップS37へ進む。
In step S35, the statistical information updating means 53 determines whether the service completion time of the agent of interest has arrived. If the service completion time has arrived (step S35: Y), the process advances to step S36. If the service completion time has not arrived (step S35: N), the process proceeds to step S37.
In step S36, the statistical information updating means 53 calculates the service time required for the agent of interest. After that, the process advances to step S37.

ステップS37において統計情報更新手段53は、注目エージェントの状況が待機中であればそのキュー内の順序が更新されたか否かを判定する。順序が更新された場合(ステップS37:Y)に処理はステップS38へ進む。順序が更新されない場合(ステップS37:N)に処理はステップS39へ進む。
ステップS38において統計情報更新手段53は、注目エージェントのサービスを待っている目的地で、サービスが完了した他のエージェントに要したサービス時間を算出する。その後に処理はステップS39へ進む。
In step S37, the statistical information updating means 53 determines whether or not the order of the agent in the queue has been updated, if the status of the agent of interest is on standby. If the order has been updated (step S37: Y), the process advances to step S38. If the order is not updated (step S37: N), the process advances to step S39.
In step S38, the statistical information updating means 53 calculates the service time required for other agents whose services have been completed at the destination waiting for the service of the agent of interest. Thereafter, the process advances to step S39.

ステップS39において統計情報更新手段53は、ステップS36またはS38のいずれかでサービス時間を算出したか否かを判定する。サービス時間を算出した場合(ステップS39:Y)に処理はステップS40へ進む。サービス時間を算出しない場合(ステップS39:N)に処理はステップS41へ進む。
ステップS40において統計情報更新手段53は、算出したサービス時間を観測値として用いて、注目エージェントの統計情報130のうちサービス時間を観測した目的地(すなわち注目エージェントがサービスを受ける目的地)のサービス時間分布を更新する。その後に処理はステップS41へ進む。
ステップS41において統計情報更新手段53は、全ての現存エージェントについてステップS21~S40の処理を実行したか否かを判定する。全ての現存エージェントについて処理を実行した場合(ステップS41:Y)に、統計情報更新処理は終了する。未処理の現存エージェントが存在する場合(ステップS41:N)に処理はステップS20へ戻る。
In step S39, the statistical information updating means 53 determines whether the service time has been calculated in either step S36 or S38. If the service time has been calculated (step S39: Y), the process advances to step S40. If the service time is not calculated (step S39: N), the process advances to step S41.
In step S40, the statistical information updating means 53 uses the calculated service time as an observed value, and uses the service time of the destination where the service time is observed (i.e., the destination where the noted agent receives the service) out of the statistical information 130 of the noted agent. Update the distribution. After that, the process advances to step S41.
In step S41, the statistical information updating means 53 determines whether the processes of steps S21 to S40 have been executed for all existing agents. When the process has been executed for all existing agents (step S41: Y), the statistical information update process ends. If there is an unprocessed existing agent (step S41: N), the process returns to step S20.

次に、図16を参照して、ステップS6の行動決定処理について説明する。行動決定処理は、評価値算出手段50及び目的地選択手段51によって実行される。
ステップS50において評価値算出手段50は、現存エージェントを順次選択し、処理対象の注目エージェントに設定する。
ステップS51において評価値算出手段50は、注目エージェントの行動決定タイミングが到来したか否かを判定する。行動決定タイミングが到来した場合(ステップS51:Y)に処理はステップS52へ進む。行動決定タイミングが到来していない場合(ステップS51:N)に処理はステップS59へ進む。
Next, with reference to FIG. 16, the action determination process in step S6 will be described. The action determination process is executed by the evaluation value calculation means 50 and the destination selection means 51.
In step S50, the evaluation value calculation means 50 sequentially selects existing agents and sets them as agents of interest to be processed.
In step S51, the evaluation value calculation means 50 determines whether the timing for determining the action of the agent of interest has arrived. When the action decision timing has arrived (step S51: Y), the process proceeds to step S52. If the action decision timing has not arrived (step S51: N), the process proceeds to step S59.

ステップS52において評価値算出手段50は、1つ又は複数の行動パターンPを生成する。
ステップS53において評価値算出手段50は、行動パターンPの各々に対して1つ又は複数の目的地パターンMijを生成する。
ステップS54において評価値算出手段50は、目的地パターンMijを順次選択して、処理対象の注目パターンに設定する。
In step S52, the evaluation value calculation means 50 generates one or more behavior patterns P i .
In step S53, the evaluation value calculation means 50 generates one or more destination patterns M ij for each of the behavior patterns P i .
In step S54, the evaluation value calculation means 50 sequentially selects the destination patterns Mij and sets them as the pattern of interest to be processed.

ステップS55において評価値算出手段50は、評価値算出処理を行う。評価値算出処理では注目パターンについて評価値Eが算出される。評価値算出処理の詳細は後述する。
ステップS56において評価値算出手段50は、全ての目的地パターンMijが注目パターンに設定されたか否かを判定する。全ての目的地パターンMijが注目パターンに設定された場合(ステップS56:Y)に処理はステップS57へ進む。注目パターンに設定されていない目的地パターンMijが存在する場合(ステップS56:N)に処理はステップS54へ戻る。
In step S55, the evaluation value calculation means 50 performs evaluation value calculation processing. In the evaluation value calculation process, an evaluation value E is calculated for the pattern of interest. Details of the evaluation value calculation process will be described later.
In step S56, the evaluation value calculation means 50 determines whether all destination patterns M ij have been set as patterns of interest. If all the destination patterns M ij are set as patterns of interest (step S56: Y), the process advances to step S57. If there is a destination pattern M ij that is not set as a pattern of interest (step S56: N), the process returns to step S54.

ステップS57において目的地選択手段51は、評価値に基づいていずれかの目的地パターンMijを選択する。
ステップS58において目的地選択手段51は、選択した目的地パターンMijにおける1番目の目的地のIDを、エージェントIDおよび現在の仮想時刻と対応付けた現時刻データを新たに生成して、エージェント情報122に追記する。その後に処理はステップS60へ進む。
In step S57, the destination selection means 51 selects one of the destination patterns M ij based on the evaluation value.
In step S58, the destination selection means 51 newly generates current time data in which the ID of the first destination in the selected destination pattern Mij is associated with the agent ID and the current virtual time, and the agent information 122 is added. The process then proceeds to step S60.

一方で、ステップS59において目的地選択手段51は、1時刻前の目的地IDを、エージェントIDおよび現在の仮想時刻と対応付けた現時刻データを新たに生成して、エージェント情報122に追記する。その後に処理はステップS60へ進む。
ステップS60において評価値算出手段50は、全ての現存エージェントについてステップS51~S59の処理を実行したか否かを判定する。全ての現存エージェントについて処理を実行した場合(ステップS60:Y)に行動決定処理は終了する。未処理の現存エージェントが存在する場合(ステップS60:N)に処理はステップS50へ戻る。
On the other hand, in step S59, the destination selection means 51 newly generates current time data in which the destination ID of one time ago is associated with the agent ID and the current virtual time, and adds it to the agent information 122. The process then proceeds to step S60.
In step S60, the evaluation value calculation means 50 determines whether the processes of steps S51 to S59 have been executed for all existing agents. When the process has been executed for all existing agents (step S60: Y), the action determination process ends. If there is an unprocessed existing agent (step S60: N), the process returns to step S50.

図17を参照して、ステップS55の評価値算出処理について説明する。評価値算出処理は、評価値算出手段50によって実行される。
ステップS70において評価値算出手段50は、注目パターンに含まれる目的地毎に、目的地で行動目的を達成する場合の所要時間の確率分布である所要時間分布を算出する。
ステップS71において評価値算出手段50は、注目パターンに含まれる目的地の順位を示す変数sを「1」に初期化する。以下のステップS73~S77では、注目パターンに含まれるs番目の目的地で達成期限までに行動目的を達成する各々の成功確率を算出する。また、評価値算出手段50は、評価値Eを「0」に初期化する。
The evaluation value calculation process in step S55 will be described with reference to FIG. 17. The evaluation value calculation process is executed by the evaluation value calculation means 50.
In step S70, the evaluation value calculating means 50 calculates, for each destination included in the pattern of interest, a required time distribution that is a probability distribution of the time required to achieve the behavioral objective at the destination.
In step S71, the evaluation value calculation means 50 initializes a variable s indicating the ranking of the destination included in the pattern of interest to "1". In the following steps S73 to S77, each success probability of achieving the behavioral objective by the achievement deadline at the sth destination included in the pattern of interest is calculated. Furthermore, the evaluation value calculation means 50 initializes the evaluation value E to "0".

ステップS72において評価値算出手段50は、変数sが「1」、すなわち1番目の目的地の成功確率を算出するか否かを判定する。変数sが「1」である場合(ステップS72:Y)に処理はステップS73へ進む。変数sが「1」でない場合(ステップS72:N)に処理はステップS75へ進む。
ステップS73において評価値算出手段50は、1番目の目的地で達成する行動目的の達成期限までの残り時間を算出する。
In step S72, the evaluation value calculation means 50 determines whether the variable s is "1", that is, whether the success probability of the first destination is calculated. If the variable s is "1" (step S72: Y), the process advances to step S73. If the variable s is not "1" (step S72: N), the process proceeds to step S75.
In step S73, the evaluation value calculation means 50 calculates the remaining time until the deadline for achieving the behavioral purpose to be achieved at the first destination.

ステップS74において評価値算出手段50は、残り時間と、1番目の目的地で行動目的所要時間分布に基づいて、成功確率を算出する。その後に処理はステップS78へ進む。
一方で、ステップS75において評価値算出手段50は、1番目からs-1番目までの目的地で行動目的達成に要する所要時間分布の合計を算出する。
In step S74, the evaluation value calculation means 50 calculates the probability of success based on the remaining time and the distribution of time required for the action objective at the first destination. Thereafter, the process proceeds to step S78.
On the other hand, in step S75, the evaluation value calculation means 50 calculates the total distribution of time required to achieve the behavioral objective at the 1st to s-1th destinations.

ステップS76において評価値算出手段50は、所要時間分布の合計に基づいて、s番目の目的地で達成する行動目的の達成期限までの残り時間分布を算出する。
ステップS77において評価値算出手段50は、残り時間分布と、s番目の目的地の所要時間分布に基づいて成功確率を算出する。その後に処理はステップS78へ進む。
ステップS78において評価値算出手段50は、ステップS74又はS77で算出した成功確率を希望達成度に乗じた積を評価値Eに加算する。
In step S76, the evaluation value calculation means 50 calculates the remaining time distribution until the deadline for achieving the action objective to be achieved at the sth destination, based on the total required time distribution.
In step S77, the evaluation value calculating means 50 calculates the success probability based on the remaining time distribution and the required time distribution for the sth destination. Thereafter, the process proceeds to step S78.
In step S78, the evaluation value calculation means 50 adds to the evaluation value E the product obtained by multiplying the desired achievement level by the success probability calculated in step S74 or S77.

ステップS79において評価値算出手段50は、変数sを「1」だけ増加する。
ステップS80において評価値算出手段50は、注目パターンの中の全ての目的地について、ステップS72~S79の処理を完了したか否かを判定する。全ての目的地について処理を完了した場合(ステップS80:Y)に処理はステップS81へ進む。未処理の目的地が存在する場合(ステップS80:N)に処理はステップS72へ戻る。
ステップS81において評価値算出手段50は、エージェントと注目パターンと評価値を対応付けた評価値情報を目的地選択手段51に出力する。その後に、評価値算出処理は終了する
In step S79, the evaluation value calculation means 50 increases the variable s by "1".
In step S80, the evaluation value calculation means 50 determines whether or not the processing of steps S72 to S79 has been completed for all destinations in the pattern of interest. If the processing has been completed for all destinations (step S80: Y), the processing advances to step S81. If there is an unprocessed destination (step S80: N), the process returns to step S72.
In step S81, the evaluation value calculation means 50 outputs evaluation value information in which agents, patterns of interest, and evaluation values are associated with each other to the destination selection means 51. After that, the evaluation value calculation process ends.

次に、図18を参照してステップS7のエージェント状態更新処理を説明する。エージェント状態更新処理は、目的地選択手段51と、行動模擬手段52によって実現される。
ステップS90において行動模擬手段52は、現存エージェントを順次選択し、処理対象の注目エージェントに設定する。
ステップS91において行動模擬手段52は、目的地選択手段51が注目エージェントの目的地パターンを新しく選択したか否かを判定する。目的地パターンを新しく選択した場合(ステップS91:Y)に処理はステップS92へ進む。目的地パターンを新しく選択しない場合(ステップS91:N)に処理はステップS93へ進む。
Next, the agent status update process in step S7 will be explained with reference to FIG. The agent state update process is realized by the destination selection means 51 and the behavior simulation means 52.
In step S90, the behavior simulator 52 sequentially selects existing agents and sets them as agents of interest to be processed.
In step S91, the behavior simulation means 52 determines whether the destination selection means 51 has newly selected the destination pattern of the agent of interest. If a new destination pattern is selected (step S91: Y), the process advances to step S92. If a new destination pattern is not selected (step S91: N), the process advances to step S93.

ステップS92において目的地選択手段51は、エージェント情報122に行動パラメータとして記憶されている目的地IDを、新しく選択した目的地パターンの先頭にある目的地IDに更新する。その後に処理はステップS93へ進む。
ステップS93において行動模擬手段52は、注目エージェントの状況を更新する。
In step S92, the destination selection means 51 updates the destination ID stored as an action parameter in the agent information 122 to the destination ID at the head of the newly selected destination pattern. Thereafter, the process advances to step S93.
In step S93, the behavior simulation means 52 updates the situation of the agent of interest.

ステップS94において行動模擬手段52は、注目エージェントの状況が「移動中」又は「達成」であるか否かを判定する。状況が「移動中」又は「達成」である場合(ステップS94:Y)に処理はステップS95へ進む。状況が「移動中」又は「達成」でない場合(ステップS94:N)に処理はステップS96へ進む。
ステップS95において行動模擬手段52は、注目エージェントの移動速度を算出して位置を更新する。その後に処理はステップS96へ進む。
In step S94, the behavior simulator 52 determines whether the status of the agent of interest is "moving" or "achieved." If the status is "moving" or "achieved" (step S94: Y), the process advances to step S95. If the status is not "moving" or "achieved" (step S94: N), the process advances to step S96.
In step S95, the behavior simulator 52 calculates the moving speed of the agent of interest and updates the position. Thereafter, the process advances to step S96.

ステップS96において行動模擬手段52は、注目エージェントが全ての行動目的を達成したか(すなわち、終端目的フラグが1である行動目的を達成したか)否かを判定する。全ての行動目的を達成した場合(ステップS96:Y)に処理はステップS97へ進む。未達成の行動目的が存在する場合(ステップS96:N)に処理はステップS98へ進む。
ステップS97において行動模擬手段52は、注目エージェントを消去する。その後に処理はステップS98へ進む。
ステップS98において行動模擬手段52は、全ての現存エージェントについてステップS91~S97の処理が完了したか否かを判定する。未処理の現存エージェントが存在する場合(ステップS98:N)に処理はステップS90へ戻る。全ての現存エージェントについて処理が完了した場合(ステップS98:Y)にエージェント状態更新処理は終了する。
In step S96, the behavior simulator 52 determines whether the agent of interest has achieved all the behavioral objectives (that is, has achieved the behavioral objective for which the terminal objective flag is 1). If all behavioral objectives have been achieved (step S96: Y), the process advances to step S97. If there is an unachieved action objective (step S96: N), the process proceeds to step S98.
In step S97, the behavior simulation means 52 deletes the agent of interest. Thereafter, the process advances to step S98.
In step S98, the behavior simulation means 52 determines whether or not the processing of steps S91 to S97 has been completed for all existing agents. If there is an unprocessed existing agent (step S98: N), the process returns to step S90. When the processing is completed for all existing agents (step S98: Y), the agent status update processing ends.

(変形例)
(1)第1実施形態では、所要時間を、移動時間と、待ち時間と、サービス時間の和として定義した。
これに代えて、移動時間を所要時間としてもよい(すなわち待ち時間とサービス時間が0)。これにより、配達のように待ち時間とサービス時間が0とみなせる行動目的についてのシミュレーションを行うことができる。
(Modified example)
(1) In the first embodiment, the required time is defined as the sum of travel time, waiting time, and service time.
Alternatively, the travel time may be taken as the required time (ie, the waiting time and service time are zero). As a result, it is possible to perform simulations for behavioral purposes such as delivery, where waiting time and service time can be considered to be zero.

(2)第1実施形態では、行動目的と目的地との関係が1対1および1対多の関係である場合を例示した。行動目的と目的地との関係は、多対1または多対多の関係であってもよい。例えば、同じ目的地で異なるサービス間でサービス時間に差が生じるシチュエーションを模擬することができる。この場合には、行動目的と目的地の組合せ毎にサービス時間分布の統計情報を記憶又は更新することが望ましい。 (2) In the first embodiment, the case where the relationship between the purpose of action and the destination is one-to-one or one-to-many is illustrated. The relationship between the purpose of action and the destination may be a many-to-one or many-to-many relationship. For example, it is possible to simulate a situation in which service times differ between different services at the same destination. In this case, it is desirable to store or update statistical information on service time distribution for each combination of purpose of action and destination.

(3)第1実施形態では、評価値算出手段50による評価値算出と目的地選択手段51による目的地選択を、行動決定間隔で繰り返す例を示して説明した。これに代えて、評価値算出と目的地選択を行動決定間隔で繰り返すことを省略してもよい。
この場合、例えば、目的地選択手段51が選択した目的地パターンをエージェント情報記憶手段42に記憶させ、行動模擬手段52は、各エージェントについて記憶されている目的地パターンの先頭の目的地から順次当該エージェントを移動させるように動作してよい。
(3) In the first embodiment, an example has been described in which evaluation value calculation by the evaluation value calculation means 50 and destination selection by the destination selection means 51 are repeated at action determination intervals. Alternatively, repeating evaluation value calculation and destination selection at action determination intervals may be omitted.
In this case, for example, the destination pattern selected by the destination selection means 51 is stored in the agent information storage means 42, and the behavior simulation means 52 sequentially selects the destination pattern from the top of the destination patterns stored for each agent. May act to move the agent.

(4)第1実施形態では、行動目的毎に達成期限を設定する例を説明した。これに代えて又はこれに加えて、幕間毎かつエージェント毎に、単一の達成期限(すなわち複数の行動目的に共通の達成期限)を設定してもよい。例えば、幕間の終了時間を達成期限としてもよい。この場合、各幕間のエージェントそれぞれの全行動目的に対して同一の達成期限が設定されたものとして、上記実施形態と同様の処理を行えばよい。
さらには、幕間毎に全エージェントに共通の単一の達成期限を設定してもよい。
(4) In the first embodiment, an example has been described in which an achievement deadline is set for each behavioral purpose. Alternatively or in addition to this, a single achievement deadline (that is, an achievement deadline common to a plurality of action objectives) may be set for each interlude and for each agent. For example, the end time of the intermission may be set as the completion deadline. In this case, the same processing as in the above embodiment may be performed on the assumption that the same achievement deadline is set for all action objectives of each agent during each intermission.
Furthermore, a single completion deadline common to all agents may be set for each intermission.

(5)第1実施形態では、エージェントの視認範囲内に当該エージェントの統計情報130に含まれていない目的地が存在する場合に、当該目的地のデータを当該エージェントの統計情報130に追加する。これに代えて又はこれに加えて、目的地に関する情報をエージェントに知らせる看板等の情報源を対象空間内に設定してもよい。当該エージェントの統計情報130に含まれていない目的地を知らせる情報源がエージェントの視認範囲内の存在する場合に、当該目的地のデータを当該エージェントの統計情報130に追加してよい。同様に、目的地に関する情報を対象空間内に報知するアナウンスをシミュレートしてもよい。当該エージェントの統計情報130に含まれていない目的地を知らせるアナウンスが放送された場合に、当該目的地のデータを当該エージェントの統計情報130に追加してよい。 (5) In the first embodiment, if there is a destination that is not included in the statistical information 130 of the agent within the visible range of the agent, data on the destination is added to the statistical information 130 of the agent. Alternatively or in addition to this, an information source such as a signboard that informs the agent of information regarding the destination may be set within the target space. If there is an information source within the agent's visual range that informs of a destination that is not included in the agent's statistical information 130, data on the destination may be added to the agent's statistical information 130. Similarly, an announcement that broadcasts information regarding the destination within the target space may be simulated. When an announcement informing of a destination that is not included in the statistical information 130 of the agent is broadcast, data on the destination may be added to the statistical information 130 of the agent.

(第2実施形態)
第1実施形態の評価値算出手段50は、所要時間分布を算出する際に、統計情報130に記憶される目的地の待ち数分布に基づいて待ち時間を予測する。また、視認範囲内の目的地については待ち数の観測値から待ち時間を予測している。
しかしながら、目的地に向かう他のエージェントの動きを観測することによって、待ち時間の予測が変わることがある。
そこで、第2実施形態の評価値算出手段50は、処理対象のエージェントの目的地パターンを選択する際に、他のエージェントの行動に基づいて、目的地での待ち時間を予測する。例えば、他のエージェントの移動方向に基づいて目的地での待ち時間を予測する。
(Second embodiment)
When calculating the required time distribution, the evaluation value calculating means 50 of the first embodiment predicts the waiting time based on the waiting number distribution of the destination stored in the statistical information 130. Furthermore, for destinations within visual range, waiting times are predicted based on the observed number of waiting times.
However, the prediction of waiting time may change by observing the movements of other agents toward the destination.
Therefore, when selecting the destination pattern of the agent to be processed, the evaluation value calculation means 50 of the second embodiment predicts the waiting time at the destination based on the behavior of other agents. For example, waiting time at a destination is predicted based on the direction of movement of other agents.

図19を参照する。いま、参照符号200は、待ち数分布を算出する処理対象の注目エージェント(すなわち、図16の行動決定処理の注目エージェント)を示し、破線は、注目エージェント200の視認範囲を示す。
参照符号201a~201cは、注目エージェント200の視認範囲内の他のエージェントを示し、参照符号202は、視認範囲外の他のエージェントを示す。
See FIG. 19. Now, reference numeral 200 indicates the target agent of interest for which the waiting number distribution is calculated (that is, the target agent of the action determination process in FIG. 16), and the broken line indicates the visible range of the target agent 200.
Reference numerals 201a to 201c indicate other agents within the visible range of the agent of interest 200, and reference numeral 202 indicates other agents outside the visible range.

また、参照符号203a、204b、205aはそれぞれ目的地VI、VII、VIIIでサービスを受けているエージェントを示し、参照符号203b及び203cは目的地VIでサービスを待っているエージェント、参照符号204bは目的地VIIでサービスを待っているエージェント、参照符号205b及び205cは目的地VIIIでサービスを待っているエージェントを示す。
第2実施形態の評価値算出手段50は、視認範囲内の他のエージェント201a~201cの移動方向に基づいて、目的地VI、VII及びVIIIの待ち数を予測する。
Further, reference numerals 203a, 204b, and 205a indicate agents receiving service at destinations VI, VII, and VIII, respectively; reference numerals 203b and 203c indicate agents waiting for service at destination VI; reference numeral 204b indicates agents receiving service at destination VI; Agents waiting for service at destination VII, reference numerals 205b and 205c indicate agents waiting for service at destination VIII.
The evaluation value calculation means 50 of the second embodiment predicts the number of waiting times for destinations VI, VII, and VIII based on the moving directions of other agents 201a to 201c within the visible range.

第2実施形態の評価値算出手段50は、図20に示す待ち時間算出手段70を備える。待ち時間算出手段70は、エージェント選択手段71と、視認範囲設定手段72と、移動方向取得手段73と、到達数予測手段74と、待ち時間予測手段75を備える。
待ち時間算出手段70は、現存エージェントの中から、処理対象の注目エージェントを選択する。
The evaluation value calculation means 50 of the second embodiment includes a waiting time calculation means 70 shown in FIG. The waiting time calculation means 70 includes an agent selection means 71 , a visibility range setting means 72 , a moving direction acquisition means 73 , an arrival number prediction means 74 , and a waiting time prediction means 75 .
The waiting time calculation means 70 selects an agent of interest to be processed from among the existing agents.

視認範囲設定手段72は、注目エージェントの視認範囲を設定する。視認範囲の角度範囲や視認距離は、注目エージェントの状況に応じて変更させてよい。例えば、待機中または処理中の視認範囲を、移動中の視認範囲よりも広く設定してよい。
例えば、注目エージェントが移動中であれば移動方向の左右90度の範囲を、待機中または処理中であればエージェント位置を中心とした360度の範囲としてよい。
視認範囲の角度範囲や視認距離を、各エージェントの移動速度に応じて変更させてもよい。また、好適には、空間情報記憶手段41に記憶されている空間情報111を利用し、視認範囲内の壁等の障害物に阻まれる領域を除外して視認範囲を設定する。
The visibility range setting means 72 sets the visibility range of the agent of interest. The angular range and visible distance of the visible range may be changed depending on the situation of the agent of interest. For example, the visibility range during standby or processing may be set wider than the visibility range during movement.
For example, if the agent of interest is moving, the range may be 90 degrees left and right in the direction of movement, and if the agent is on standby or processing, the range may be 360 degrees centered on the agent's position.
The angular range and visible distance of the visible range may be changed depending on the moving speed of each agent. Preferably, the spatial information 111 stored in the spatial information storage means 41 is used to set the visible range by excluding areas blocked by obstacles such as walls within the visible range.

移動方向取得手段73は、エージェント情報記憶手段42に記憶されているエージェント情報122から、視認範囲内にある他エージェントの移動速度を、他エージェントの移動方向として取得する。
到達数予測手段74は、視認範囲内にある他エージェントの移動方向と、空間情報111に記憶される目的地の代表点とに基づいて、注目エージェントの統計情報130に記憶されている目的地dへ他のエージェントが到達する到達数を予測する。例えば、到達数予測手段74は、次式(9)に基づいて他のエージェントが目的地へ到達する到達数Rdiを予測してよい。
The movement direction acquisition means 73 acquires the movement speed of another agent within the visible range from the agent information 122 stored in the agent information storage means 42 as the movement direction of the other agent.
The arrival number prediction means 74 calculates the destination d stored in the statistical information 130 of the agent of interest based on the moving direction of other agents within the visible range and the representative point of the destination stored in the spatial information 111. Predict the number of arrivals of other agents to i . For example, the number of arrivals predicting means 74 may predict the number of arrivals Rdi of other agents reaching the destination based on the following equation (9).

Figure 0007441080000009
Figure 0007441080000009

式(9)において、aは統計情報130に記憶されている目的地dへ向かっていると判断される他エージェントである。例えば、到達数予測手段74は、図19に示すように他エージェント201bの移動方向左右の所定角度θ内に目的地dが存在している場合、他エージェント201bは、目的地dに向かっていると判断してよい。また、式(9)において、rは、注目エージェントの統計情報130に記憶されている目的地のうち他エージェントaの移動方向左右の所定角度θ以内にある全ての目的地数を表す。 In equation (9), a is another agent that is determined to be heading to the destination di stored in the statistical information 130. For example, as shown in FIG. 19, if the destination d i exists within a predetermined angle θ to the left and right of the movement direction of the other agent 201b, the arrival number prediction means 74 predicts that the other agent 201b will head toward the destination d i. It can be concluded that Furthermore, in equation (9), r a represents the number of all destinations that are within a predetermined angle θ to the left and right of the moving direction of the other agent a, among the destinations stored in the statistical information 130 of the agent of interest.

待ち時間予測手段75は、注目エージェントの統計情報130に記憶されている目的地に対して、待ち時間分布を予測する。待ち時間分布は、目的地の将来待ち数をサービス窓口数で除した結果と、その目的地で行動目的を実行する際にかかるサービス時間分布の積とで算出する。
目的地が注目エージェントの視認範囲に存在する場合、待ち時間予測手段75は、目的地の待ち数に、目的地への到達数を加算した和を目的地の将来待ち数とする。すなわち、目的地に存在する他のエージェント数の観測結果と到達数に基づいて、待ち時間分布を予測する。
The waiting time prediction means 75 predicts the waiting time distribution for the destinations stored in the statistical information 130 of the agent of interest. The waiting time distribution is calculated by the product of the future number of waiting times at the destination divided by the number of service counters and the service time distribution required when carrying out the behavioral purpose at that destination.
When the destination is within the visible range of the agent of interest, the waiting time prediction means 75 sets the future waiting number for the destination as the sum of the waiting number for the destination and the number of arrivals at the destination. That is, the waiting time distribution is predicted based on the observation result of the number of other agents existing at the destination and the number of agents arriving.

目的地が注目エージェントの視認範囲に存在しない場合には、注目エージェントの統計情報130に記憶されている当該目的地の待ち人数分布より代表値をサンプリングし、目的地への到達数を代表値に加算した和を目的地の将来待ち数とする。
すなわち、目的地への到達数と、統計情報130に記憶されている目的地における待ち時間の統計情報とに基づいて、待ち時間分布を予測する。
If the destination does not exist within the visibility range of the agent of interest, a representative value is sampled from the distribution of the number of people waiting at the destination stored in the statistical information 130 of the agent of interest, and the number of people arriving at the destination is used as the representative value. The added sum is the future waiting number for the destination.
That is, the waiting time distribution is predicted based on the number of arrivals at the destination and the statistical information on the waiting time at the destination stored in the statistical information 130.

次に、図21を参照して、第2実施形態の評価値算出手段50による所要時間分布算出処理を説明する。
ステップS100において評価値算出手段50は、注目エージェントの統計情報131に記憶されている局所経路の移動速度分布に基づいて、注目パターン(目的地パターン)に含まれる各目的地までの移動に要する移動時間分布を算出する。
Next, with reference to FIG. 21, the required time distribution calculation process by the evaluation value calculation means 50 of the second embodiment will be described.
In step S100, the evaluation value calculation means 50 calculates the travel required to reach each destination included in the pattern of interest (destination pattern) based on the movement speed distribution of the local route stored in the statistical information 131 of the agent of interest. Calculate the time distribution.

ステップS101において評価値算出手段50は、注目エージェントの統計情報130に記憶されている目的地でのサービス時間分布に基づいて、注目パターン(目的地パターン)に含まれる各目的地でのサービス時間分布を算出する。
ステップS102において到達数予測手段74は、注目エージェントの統計情報130に記憶されている目的地に向かう他のエージェントの到達数を予測する。
In step S101, the evaluation value calculation means 50 calculates the service time distribution at each destination included in the attention pattern (destination pattern) based on the service time distribution at the destination stored in the statistical information 130 of the attention agent. Calculate.
In step S102, the number-of-arrivals prediction means 74 predicts the number of arrivals of other agents heading to the destination stored in the statistical information 130 of the agent of interest.

ステップS103において待ち時間予測手段75は、目的地に向かうエージェントの到達数と目的地の待ち数の観測値、又は目的地に向かうエージェントの到達数と注目エージェントの統計情報130に記憶されている当該目的地の待ち人数分布の代表値に基づいて、目的地での将来待ち数を予測する。 In step S103, the waiting time prediction unit 75 calculates the observed values of the number of arrivals of agents heading for the destination and the number of waiting at the destination, or the number of arrivals of agents heading for the destination and the relevant agent stored in the statistical information 130 of the noted agent. Predict the future number of people waiting at a destination based on the representative value of the distribution of people waiting at the destination.

ステップS104において待ち時間予測手段75は、将来待ち数と、サービス窓口数と、サービス時間分布に基づいて目的地における待ち時間分布を算出する。
ステップS105において、評価値算出手段50は、移動時間分布と、サービス時間分布と、待ち時間分布の和を、所要時間として算出する。その後に所要時間分布算出処理は終了する。
In step S104, the waiting time prediction means 75 calculates the waiting time distribution at the destination based on the future number of waiting times, the number of service counters, and the service time distribution.
In step S105, the evaluation value calculation means 50 calculates the sum of the travel time distribution, service time distribution, and waiting time distribution as the required time. After that, the required time distribution calculation process ends.

なお、上記各実施形態においては、待ち数分布、サービス時間分布、移動速度分布やそれに付随する各分布を正規分布として保持する例を示したが、これらの分布をヒストグラムとして保持してもよい。その場合、分布同士の演算は対応するビン同士の演算となり、観測値による分布の更新はビンの値の更新となる。また、各分布を正規分布以外の定式化された分布として保持することもでき、その場合、分布に対する演算をサンプリング法により行うなど、採用する分布に適した演算方法、更新方法を用いればよい。 Note that in each of the above embodiments, an example has been shown in which the waiting number distribution, service time distribution, moving speed distribution, and each distribution associated therewith are held as normal distributions, but these distributions may be held as a histogram. In that case, calculations between distributions are calculations between corresponding bins, and updating of the distribution based on observed values is updating of the bin values. Further, each distribution can be held as a formulated distribution other than a normal distribution, and in that case, a calculation method and an update method suitable for the distribution to be adopted may be used, such as performing calculations on the distribution by a sampling method.

また、第2実施形態では、客席、トイレおよび売店を有する劇場において複数の人が客席、トイレおよび売店を利用する行動を予測するシミュレータの例を示して説明したが、本発明はこれに限定されるものではない。第2実施形態のシミュレータ、シミュレーション方法及びシミュレーションプログラムは、人間以外のエージェント(例えば車両)の行動を模擬する場合にも適用可能である。 Further, in the second embodiment, an example of a simulator that predicts the behavior of a plurality of people in using seats, toilets, and shops in a theater having seats, toilets, and shops has been described, but the present invention is not limited to this. It's not something you can do. The simulator, simulation method, and simulation program of the second embodiment can also be applied to the case of simulating the behavior of a non-human agent (for example, a vehicle).

(実施形態の効果)
(1)シミュレータ1は、複数のエージェントが、所定の空間において複数の目的地へ移動する行動を模擬する。シミュレータ1は、エージェント毎に、複数の目的地の各々における待ち時間に関する統計情報を記憶する統計情報記憶手段43と、複数のエージェントの中から処理対象である対象エージェントを順次選択するエージェント選択手段71と、複数のエージェントのうち対象エージェント以外を少なくとも1以上含む他エージェントの行動に応じて、複数の目的地の各々への他エージェントの到達数を予測する到達数予測手段74と、到達数と対象エージェントの統計情報とに基づいて、複数の目的地の各々における待ち時間を予測する待ち時間予測手段75と、目的地について待ち時間が短いほど高くなる評価値を算出する評価値算出手段50と、評価値に基づいて目的地へ移動する対象エージェントの行動を模擬する行動模擬手段52と、を備える。
(Effects of embodiment)
(1) The simulator 1 simulates the behavior of multiple agents moving to multiple destinations in a predetermined space. The simulator 1 includes a statistical information storage means 43 that stores statistical information regarding waiting times at each of a plurality of destinations for each agent, and an agent selection means 71 that sequentially selects a target agent to be processed from among the plurality of agents. an arrival number prediction means 74 for predicting the number of arrivals of other agents to each of the plurality of destinations according to the actions of other agents including at least one agent other than the target agent among the plurality of agents; a waiting time prediction means 75 that predicts the waiting time at each of a plurality of destinations based on statistical information of the agent; and an evaluation value calculation means 50 that calculates an evaluation value that increases as the waiting time for a destination becomes shorter. A behavior simulating means 52 is provided that simulates the behavior of the target agent moving to the destination based on the evaluation value.

このように、待ち時間が短いほど高くなる評価値に基づいて目的地へ移動する対象エージェントの行動を模擬することにより、同じ行動目的を持つ複数のエージェントが不自然に1つの目的地に集中する挙動を解消できる。 In this way, by simulating the behavior of the target agent moving to the destination based on the evaluation value, which increases as the waiting time decreases, multiple agents with the same behavioral purpose will unnaturally concentrate on one destination. Behavior can be resolved.

(2)シミュレータ1は、対象エージェントの視認範囲を設定する視認範囲設定手段72を備えてもよい。待ち時間予測手段75は、視認範囲内に存在する他エージェントの行動に応じて到達数を予測してもよい。
これにより、他エージェントの行動を視認して複数の目的地の各々における待ち時間を予測するエージェントの行動を模擬することができる。
(2) The simulator 1 may include visibility range setting means 72 for setting the visibility range of the target agent. The waiting time prediction means 75 may predict the number of arrivals according to the actions of other agents existing within the visible range.
This makes it possible to simulate the behavior of an agent who visually recognizes the behavior of other agents and predicts the waiting time at each of a plurality of destinations.

(3)シミュレータ1は、複数のエージェントのうち対象エージェント以外を少なくとも1以上含む他エージェントの移動方向を取得する移動方向取得手段73を備えてもよい。到達数予測手段74は、他エージェントの行動として他エージェントの移動方向に応じて到達数を予測してもよい。
これにより、他エージェントの移動方向に基づいて待ち時間を予測するエージェントの行動を模擬することができる。
(4)シミュレータ1は、対象エージェントの視認範囲を設定する視認範囲設定手段72を備えてもよい。待ち時間予測手段75は、視認範囲内に存在しない目的地について、到達数と対象エージェントの統計情報とに基づいて、複数の目的地の各々における待ち時間を予測し、視認範囲内に存在する目的地について、複数の目的地の各々における待ち数の観測結果と到達数とに基づいて待ち時間を予測してよい。
これにより、視認範囲内に存在する目的地については観測結果に基づいて、視認範囲内に存在しない目的地についてはエージェント固有の知識に基づいて待ち時間を予測する行動を模擬できる。
(3) The simulator 1 may include a movement direction acquisition means 73 that acquires the movement direction of at least one other agent other than the target agent among the plurality of agents. The number of arrivals predicting means 74 may predict the number of arrivals according to the movement direction of another agent as the behavior of the other agent.
This makes it possible to simulate the behavior of an agent who predicts waiting time based on the movement direction of other agents.
(4) The simulator 1 may include visibility range setting means 72 for setting the visibility range of the target agent. The waiting time prediction means 75 predicts the waiting time at each of a plurality of destinations based on the number of arrivals and the statistical information of the target agent for destinations that are not within the visible range, and predicts the waiting time for each of the destinations that are within the visible range. The waiting time may be predicted based on the observed number of waiting times and the number of arrivals at each of a plurality of destinations.
This makes it possible to simulate behavior that predicts waiting times for destinations that are within the visible range based on observation results, and based on the agent's own knowledge for destinations that are not within the visible range.

(5)到達数予測手段74は、他のエージェントの移動方向に応じて、他のエージェントが将来到達すると予想される目的地の複数の候補を決定し、候補の数の逆数に基づいて到達数を予測してよい。
これにより、目的地への他のエージェントの到達数を算出できる。
(6)視認範囲設定手段72は、対象エージェントの移動速度に応じて視認範囲を設定してよい。
これにより視認範囲を適切に設定できる。
(5) The number of destinations predicted means 74 determines a plurality of candidates for destinations that other agents are expected to reach in the future according to the movement direction of the other agents, and the number of destinations predicted based on the reciprocal of the number of candidates. can be predicted.
This makes it possible to calculate the number of other agents reaching the destination.
(6) The visibility range setting means 72 may set the visibility range according to the moving speed of the target agent.
This allows the visibility range to be set appropriately.

(7)統計情報記憶手段43は、エージェント毎に目的地の位置情報を記憶してよい。統計情報更新手段53は、対象エージェントの統計情報記憶手段43に位置情報が記憶されていない目的地が当該対象エージェントの視認範囲に入った場合に、当該目的地の位置情報を当該対象エージェントの統計情報記憶手段43に追加してよい。到達数予測手段74は、統計情報記憶手段43に位置情報が記憶されている目的地について到達数を予測し、待ち時間予測手段75は、統計情報記憶手段43に位置情報が記憶されている目的地における待ち時間を予測してよい。
これにより、目的地に関するエージェント毎の知識の偏りを模擬することができる。
(7) The statistical information storage means 43 may store location information of the destination for each agent. When a destination whose position information is not stored in the statistical information storage means 43 of the target agent comes within the visual range of the target agent, the statistical information updating means 53 updates the position information of the destination with the statistics of the target agent. It may be added to the information storage means 43. The number of arrivals predicting means 74 predicts the number of arrivals for the destination whose position information is stored in the statistical information storage means 43, and the waiting time predicting means 75 predicts the number of arrivals for the destination whose position information is stored in the statistical information storage means 43. You can predict the waiting time at the location.
This makes it possible to simulate the bias in knowledge of each agent regarding the destination.

1…シミュレータ、2…操作入力部、3…ファイル入出力部、4…記憶部5…制御部、6…表示部、20…条件設定手段、40…模擬条件記憶手段、41…空間情報記憶手段、42…エージェント情報記憶手段、43…統計情報記憶手段、50…評価値算出手段、51…目的地選択手段、52…行動模擬手段、53…統計情報更新手段、60…予測結果出力手段、70…時間算出手段、71…エージェント選択手段、72…視認範囲設定手段、73…移動方向取得手段、74…到達数予測手段、75…時間予測手段、100…地図情報、110…行動目的情報、111…空間情報、120、121、122、123…エージェント情報、130、131…統計情報 DESCRIPTION OF SYMBOLS 1...Simulator, 2...Operation input unit, 3...File input/output unit, 4...Storage unit 5...Control unit, 6...Display unit, 20...Condition setting means, 40...Simulation condition storage means, 41...Spatial information storage means , 42... Agent information storage means, 43... Statistical information storage means, 50... Evaluation value calculation means, 51... Destination selection means, 52... Action simulation means, 53... Statistical information updating means, 60... Prediction result outputting means, 70 ...Time calculation means, 71...Agent selection means, 72...Visibility range setting means, 73...Movement direction acquisition means, 74...Number of arrivals prediction means, 75...Time prediction means, 100...Map information, 110...Action purpose information, 111 ... Spatial information, 120, 121, 122, 123... Agent information, 130, 131... Statistical information

Claims (9)

複数のエージェントが、所定の空間において複数の目的地へ移動する行動を模擬するシミュレータであって、
前記エージェント毎に、前記複数の目的地の各々における待ち時間に関する統計情報を記憶する統計情報記憶手段と、
前記複数のエージェントの中から処理対象である対象エージェントを順次選択するエージェント選択手段と、
前記複数のエージェントのうち前記対象エージェント以外を少なくとも1以上含む他エージェントの行動に応じて、前記複数の目的地の各々への前記他エージェントの到達数を予測する到達数予測手段と、
前記到達数と前記対象エージェントの前記統計情報とに基づいて、前記複数の目的地の各々における待ち時間を予測する待ち時間予測手段と、
前記目的地について前記待ち時間が短いほど高くなる評価値を算出する評価値算出手段と、
前記評価値に基づいて前記目的地へ移動する前記対象エージェントの行動を模擬する行動模擬手段と、
を備えることを特徴とするシミュレータ。
A simulator that simulates the behavior of multiple agents moving to multiple destinations in a predetermined space,
statistical information storage means for storing statistical information regarding waiting times at each of the plurality of destinations for each of the agents;
agent selection means for sequentially selecting a target agent to be processed from among the plurality of agents;
arrival number prediction means for predicting the number of arrivals of the other agents to each of the plurality of destinations according to the actions of other agents including at least one agent other than the target agent among the plurality of agents;
waiting time prediction means for predicting waiting time at each of the plurality of destinations based on the number of arrivals and the statistical information of the target agent;
an evaluation value calculation means for calculating an evaluation value that increases as the waiting time for the destination becomes shorter;
behavior simulating means for simulating the behavior of the target agent moving to the destination based on the evaluation value;
A simulator characterized by comprising:
前記対象エージェントの視認範囲を設定する視認範囲設定手段を備え、
前記到達数予測手段は、前記視認範囲内に存在する前記他エージェントの行動に応じて前記到達数を予測する、ことを特徴とする請求項1に記載のシミュレータ。
comprising a visibility range setting means for setting a visibility range of the target agent;
2. The simulator according to claim 1, wherein the number-of-arrivals prediction means predicts the number of arrivals according to the behavior of the other agent existing within the visible range.
前記対象エージェントの視認範囲を設定する視認範囲設定手段を備え、
前記待ち時間予測手段は、前記視認範囲内に存在しない前記目的地について、前記到達数と前記対象エージェントの前記統計情報とに基づいて、前記複数の目的地の各々における待ち時間を予測し、前記視認範囲内に存在する前記目的地について、前記複数の目的地の各々における待ち数の観測結果と前記到達数とに基づいて前記待ち時間を予測する、
ことを特徴とする請求項1に記載のシミュレータ。
comprising a visibility range setting means for setting a visibility range of the target agent;
The waiting time prediction means predicts the waiting time at each of the plurality of destinations, based on the number of arrivals and the statistical information of the target agent, with respect to the destinations that are not within the visible range, and predicting the waiting time for the destinations existing within a visual range based on the observed number of waiting times at each of the plurality of destinations and the number of arrivals;
The simulator according to claim 1, characterized in that:
前記対象エージェントの視認範囲を設定する視認範囲設定手段と、
前記エージェント毎に、前記目的地の位置情報を記憶する目的地記憶手段と、
前記対象エージェントの前記目的地記憶手段に位置情報が記憶されていない目的地が当該対象エージェントの前記視認範囲に入った場合に、当該目的地の位置情報を当該対象エージェントの前記目的地記憶手段に追加する位置情報更新手段と、を備え、
前記到達数予測手段は、前記目的地記憶手段に位置情報が記憶されている目的地について前記到達数を予測し、
前記待ち時間予測手段は、前記目的地記憶手段に位置情報が記憶されている目的地における待ち時間を予測する、
ことを特徴とする請求項1に記載のシミュレータ。
visibility range setting means for setting a visibility range of the target agent;
destination storage means for storing location information of the destination for each agent;
When a destination whose location information is not stored in the destination storage means of the target agent enters the visible range of the target agent, the position information of the destination is stored in the destination storage means of the target agent. A means for updating location information to be added;
The number of arrivals predicting means predicts the number of arrivals for a destination whose location information is stored in the destination storage means,
The waiting time prediction means predicts the waiting time at a destination whose location information is stored in the destination storage means.
The simulator according to claim 1, characterized in that:
前記視認範囲設定手段は、前記対象エージェントの移動速度に応じて前記視認範囲を設定することを特徴とする請求項2~4のいずれか一項に記載のシミュレータ。 The simulator according to any one of claims 2 to 4, wherein the visibility range setting means sets the visibility range according to a moving speed of the target agent. 前記複数のエージェントのうち前記対象エージェント以外を少なくとも1以上含む他エージェントの移動方向を取得する移動方向取得手段を備え、
前記到達数予測手段は、前記他エージェントの行動として前記他エージェントの移動方向に応じて、前記到達数を予測することを特徴とする請求項1~5のいずれか一項に記載のシミュレータ。
comprising a movement direction acquisition means for acquiring the movement direction of at least one other agent other than the target agent among the plurality of agents;
The simulator according to any one of claims 1 to 5, wherein the number of arrivals predicting means predicts the number of arrivals according to a moving direction of the other agent as the action of the other agent.
前記到達数予測手段は、前記他エージェントの移動方向に応じて、前記他エージェントが将来到達すると予想される前記目的地の複数の候補を決定し、前記候補の数の逆数に基づいて前記到達数を予測することを特徴とする請求項1~6のいずれか一項に記載のシミュレータ。 The destination number predicting means determines a plurality of candidates for the destination that the other agent is expected to reach in the future according to the direction of movement of the other agent, and calculates the number of destinations based on the reciprocal of the number of candidates. The simulator according to any one of claims 1 to 6, characterized in that the simulator predicts. 複数のエージェントが、所定の空間において複数の目的地へ移動する行動を模擬するシミュレーション方法であって、
所定の記憶装置に前記エージェント毎に記憶された、前記複数の目的地の各々における待ち時間に関する統計情報を読み込む処理と、
前記複数のエージェントの中から処理対象である対象エージェントを順次選択する処理と、
前記複数のエージェントのうち前記対象エージェント以外を少なくとも1以上含む他エージェントの行動に応じて、前記複数の目的地の各々への前記他エージェントの到達数を予測する処理と、
前記到達数と前記対象エージェントの前記統計情報とに基づいて、前記複数の目的地の各々における待ち時間を予測する処理と、
前記目的地について前記待ち時間が短いほど高くなる評価値を算出する処理と、
前記評価値に基づいて前記目的地へ移動する前記対象エージェントの行動を模擬する処理と、
をコンピュータが実行することを特徴とするシミュレーション方法。
A simulation method for simulating the behavior of multiple agents moving to multiple destinations in a predetermined space, the method comprising:
a process of reading statistical information regarding waiting times at each of the plurality of destinations, which is stored for each agent in a predetermined storage device;
a process of sequentially selecting a target agent to be processed from among the plurality of agents;
A process of predicting the number of arrivals of the other agents to each of the plurality of destinations according to the actions of other agents including at least one agent other than the target agent among the plurality of agents;
A process of predicting waiting time at each of the plurality of destinations based on the number of arrivals and the statistical information of the target agent;
a process of calculating an evaluation value that increases as the waiting time for the destination becomes shorter;
a process of simulating the behavior of the target agent moving to the destination based on the evaluation value;
A simulation method characterized by being executed by a computer.
複数のエージェントが、所定の空間において複数の目的地へ移動する行動を模擬するシミュレーションプログラムであって、
所定の記憶装置に前記エージェント毎に記憶された、前記複数の目的地の各々における待ち時間に関する統計情報を読み込む処理と、
前記複数のエージェントの中から処理対象である対象エージェントを順次選択する処理と、
前記複数のエージェントのうち前記対象エージェント以外を少なくとも1以上含む他エージェントの行動に応じて、前記複数の目的地の各々への前記他エージェントの到達数を予測する処理と、
前記到達数と前記対象エージェントの前記統計情報とに基づいて、前記複数の目的地の各々における待ち時間を予測する処理と、
前記目的地について前記待ち時間が短いほど高くなる評価値を算出する処理と、
前記評価値に基づいて前記目的地へ移動する前記対象エージェントの行動を模擬する処理と、
をコンピュータが実行させることを特徴とするシミュレーションプログラム。
A simulation program that simulates the behavior of multiple agents moving to multiple destinations in a predetermined space,
a process of reading statistical information regarding waiting times at each of the plurality of destinations, which is stored for each agent in a predetermined storage device;
a process of sequentially selecting a target agent to be processed from among the plurality of agents;
A process of predicting the number of arrivals of the other agents to each of the plurality of destinations according to the actions of other agents including at least one agent other than the target agent among the plurality of agents;
A process of predicting a waiting time at each of the plurality of destinations based on the number of arrivals and the statistical information of the target agent;
a process of calculating an evaluation value that increases as the waiting time for the destination becomes shorter;
a process of simulating the behavior of the target agent moving to the destination based on the evaluation value;
A simulation program that is executed by a computer.
JP2020038114A 2020-03-05 2020-03-05 Simulator, simulation method and simulation program Active JP7441080B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020038114A JP7441080B2 (en) 2020-03-05 2020-03-05 Simulator, simulation method and simulation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020038114A JP7441080B2 (en) 2020-03-05 2020-03-05 Simulator, simulation method and simulation program

Publications (2)

Publication Number Publication Date
JP2021140491A JP2021140491A (en) 2021-09-16
JP7441080B2 true JP7441080B2 (en) 2024-02-29

Family

ID=77668715

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020038114A Active JP7441080B2 (en) 2020-03-05 2020-03-05 Simulator, simulation method and simulation program

Country Status (1)

Country Link
JP (1) JP7441080B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023034320A (en) 2021-08-30 2023-03-13 横河電機株式会社 integrating sphere

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013250941A (en) 2012-06-04 2013-12-12 Fujitsu Ltd Prediction program, prediction device and prediction method
WO2017029698A1 (en) 2015-08-14 2017-02-23 富士通株式会社 Simulation program, simulation method, and simulation device
JP2019185074A (en) 2018-03-31 2019-10-24 セコム株式会社 Simulator, simulation method and action determination device
JP2019219880A (en) 2018-06-19 2019-12-26 セコム株式会社 Simulator, simulation method, and simulation program
JP2019219881A (en) 2018-06-19 2019-12-26 セコム株式会社 Simulator, simulation method, and simulation program
JP2021140489A (en) 2020-03-05 2021-09-16 セコム株式会社 Simulator, simulation method, and simulation program
JP2021140490A (en) 2020-03-05 2021-09-16 セコム株式会社 Simulator, simulation method, and simulation program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013250941A (en) 2012-06-04 2013-12-12 Fujitsu Ltd Prediction program, prediction device and prediction method
WO2017029698A1 (en) 2015-08-14 2017-02-23 富士通株式会社 Simulation program, simulation method, and simulation device
JP2019185074A (en) 2018-03-31 2019-10-24 セコム株式会社 Simulator, simulation method and action determination device
JP2019219880A (en) 2018-06-19 2019-12-26 セコム株式会社 Simulator, simulation method, and simulation program
JP2019219881A (en) 2018-06-19 2019-12-26 セコム株式会社 Simulator, simulation method, and simulation program
JP2021140489A (en) 2020-03-05 2021-09-16 セコム株式会社 Simulator, simulation method, and simulation program
JP2021140490A (en) 2020-03-05 2021-09-16 セコム株式会社 Simulator, simulation method, and simulation program

Also Published As

Publication number Publication date
JP2021140491A (en) 2021-09-16

Similar Documents

Publication Publication Date Title
JP2006221329A (en) Behavior prediction device, behavior prediction method, and behavior prediction program
Kuligowski Computer evacuation models for buildings
US20160005052A1 (en) Information processing system and information processing method
Sarmady et al. Modeling groups of pedestrians in least effort crowd movements using cellular automata
JPH10283414A (en) Method for generating consumer action model
Barnett et al. Coordinated crowd simulation with topological scene analysis
JP7441080B2 (en) Simulator, simulation method and simulation program
CN113643170A (en) Big data driven public place crowd gathering evacuation method and device
JP7457536B2 (en) Simulator, simulation method, and simulation program
US20220324675A1 (en) Eliciting preferences for passenger traffic group control
JP7492840B2 (en) Simulator, simulation method, and simulation program
CN110046206A (en) Wheelchair user supports map system
JP7074580B2 (en) Simulator, simulation method and simulation program
US11120386B2 (en) Computer-readable recording medium, simulation method, and simulation apparatus
JP2000322402A (en) Stream of people analyzing method
JP7060460B2 (en) Simulator, simulation method and simulation program
JP2007299023A (en) Recognition evaluation system and method for advertisement
Nishida et al. Construction of a route choice model for application to a pedestrian flow simulation
US11507795B2 (en) Recording medium recording simulation program, simulation method, and information processing device for people flow in sign system
Levinson An evolutionary transportation planning model: Structure and application
JP2023027883A (en) Layout data display system and layout data display method
JP7449982B2 (en) Policy formulation support system, policy formulation support method, and policy formulation support program
CN106951581B (en) Commercial complex simulator
WO2023228498A1 (en) People flow prediction device, people flow prediction program, and people flow prediction method
WO2021235296A1 (en) Mobile body movement prediction system and mobile body movement prediction method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230302

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240126

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240216

R150 Certificate of patent or registration of utility model

Ref document number: 7441080

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150