WO2023243047A1 - タスク割当装置、方法およびプログラム - Google Patents

タスク割当装置、方法およびプログラム Download PDF

Info

Publication number
WO2023243047A1
WO2023243047A1 PCT/JP2022/024163 JP2022024163W WO2023243047A1 WO 2023243047 A1 WO2023243047 A1 WO 2023243047A1 JP 2022024163 W JP2022024163 W JP 2022024163W WO 2023243047 A1 WO2023243047 A1 WO 2023243047A1
Authority
WO
WIPO (PCT)
Prior art keywords
task
agent
information
assignment
tasks
Prior art date
Application number
PCT/JP2022/024163
Other languages
English (en)
French (fr)
Inventor
和陽 明石
俊介 金井
正崇 佐藤
まな美 小川
麻悠 山添
Original Assignee
日本電信電話株式会社
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 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2022/024163 priority Critical patent/WO2023243047A1/ja
Publication of WO2023243047A1 publication Critical patent/WO2023243047A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"

Definitions

  • Embodiments of the present invention relate to a task allocation device, method, and program.
  • the problem of delivery planning is to determine the optimal itinerary plan under various constraints when delivering packages such as courier packages or relief supplies to disaster-stricken areas to or collecting packages from multiple locations. This is a combinatorial optimization problem (hereinafter sometimes simply referred to as a problem) that seeks the following.
  • One approach to solving a combinatorial optimization problem using multiple agents, such as vehicles, is to (i) assign each agent a task, such as points to be visited by the agents (sometimes referred to as patrol destinations); (ii) generating solutions for the tasks assigned to each agent and integrating these solutions to create and output a tour plan as an approximate solution;
  • the present invention has been made in view of the above-mentioned circumstances, and its purpose is to provide a task allocation device, method, and program that enable an agent to obtain an appropriate solution for an action for a task. It is in.
  • a task allocation device inputs information indicating characteristics of each of a plurality of agents that are the main subjects of operations for a plurality of tasks, and information indicating characteristics of each of the plurality of tasks into a neural network.
  • an assignment unit that generates information indicating assignment of the task to the agent based on the result of this input; and a solution for the action of the agent on the task based on the information generated by the assignment unit.
  • a learning unit that performs a learning process that evaluates the quality of the solution of the action by the agent to the task, generated by the generation unit, and updates the parameters of the neural network according to the result of this evaluation. .
  • a task assignment method is a method performed by a task assignment device, wherein an assignment unit of the task assignment device indicates characteristics of each of a plurality of agents that are the main subjects of operations for a plurality of tasks. information and information indicating characteristics of each of the plurality of tasks are input into a neural network, and based on the result of this input, information indicating assignment of the task to the agent is generated, and the generation unit of the task assignment device Based on the information generated by the assignment unit, a solution for the action of the agent for the task is generated, and the learning unit of the task assignment device generates a plurality of pieces of information that are information for learning parameters of the neural network.
  • a learning process is performed in which the quality is evaluated and the parameters of the neural network are updated according to the result of this evaluation.
  • FIG. 1 is a diagram showing an example of assignment of visiting points to each vehicle by a tour plan generation device according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing an example of generation of a delivery route for each vehicle to a visited point by the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating an example of a procedure for determining parameters of a neural network by the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 4 is a diagram illustrating an example of an optimization problem of a tour plan for each vehicle to each visit point, which is handled by the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 1 is a diagram showing an example of assignment of visiting points to each vehicle by a tour plan generation device according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing an example of generation of a delivery route for each vehicle to a visited point by the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 3 is a flow
  • FIG. 5 is a diagram illustrating an example of the configuration of a neural network applied to the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 6 is a diagram showing an example of application of the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 7 is a diagram showing another application example of the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 8 is a diagram illustrating an example of processing by the solution generation unit of the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 9 is a flowchart illustrating an example of a processing procedure by the allocation learning unit of the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 10 is a block diagram illustrating an example of the hardware configuration of an itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 1 is a diagram showing an example of assignment of visiting points to each vehicle by a tour plan generation device according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing an example of generation of a delivery route for each vehicle to a visited point by the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 3 is a flowchart illustrating an example of a procedure for determining neural network parameters by the itinerary plan generation device according to an embodiment of the present invention.
  • the itinerary plan generation device assigns tasks to each agent by utilizing reinforcement learning.
  • An agent is the main body of action for the task assigned to it.
  • the agent is a vehicle that delivers or collects packages, and the task is a visit point (tour destination) by the vehicle.
  • the itinerary plan generation device inputs problem information (task information, agent information) (symbol a in FIG. 1) into a neural network (symbol b in FIG. 1), and assigns a task to each agent.
  • problem information task information, agent information
  • the task assignment information to the first agent indicated by the problem information symbol c1 in Figure 1
  • the task assignment information to the second agent indicated by the problem information are output from the neural network.
  • the allocation information (symbol c2 in FIG. 1) is shown.
  • the itinerary plan generation device generates solutions (signs d in FIG. 2) for the tasks (signs c1 and c2 in FIG. 2) assigned to each agent, and integrates these solutions (signs c1 and c2 in FIG. 2).
  • solutions signs d in FIG. 2 for the tasks (signs c1 and c2 in FIG. 2) assigned to each agent, and integrates these solutions (signs c1 and c2 in FIG. 2).
  • a plan of a route for each vehicle to visit each visit point a so-called visit plan (also referred to as a tour plan, etc.) is generated (reference f in FIG. 2).
  • any solver that solves a problem for a single agent may be used to generate the above solution.
  • Learning parameters (sometimes simply referred to as parameters), which are learnable parameters of the neural network shown in FIG. 1, are determined by performing reinforcement learning in advance. For example, after a large number of optimization problems are randomly generated (S1), the itinerary plan generation device performs the process (i) above on these problems and assigns tasks to each agent (S2). ). The itinerary plan generation device performs the process (ii) above, generates a solution for the result of this process (S3), and uses this solution to generate a reward ( reward) is calculated (S4), and the learning parameters of the neural network are updated so that this reward is as large as possible (S5).
  • S1 optimization problems
  • the itinerary plan generation device performs the process (i) above on these problems and assigns tasks to each agent (S2).
  • the itinerary plan generation device performs the process (ii) above, generates a solution for the result of this process (S3), and uses this solution to generate a reward ( reward) is calculated (S4), and the learning parameters of the neural network are updated so that this reward is as large as possible
  • FIG. 4 is a diagram illustrating an example of an optimization problem of a tour plan for each vehicle to each visit point, which is handled by the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 5 is a diagram illustrating an example of the configuration of a neural network applied to the itinerary plan generation device according to an embodiment of the present invention.
  • FIG. 6 is a diagram showing an example of application of the itinerary plan generation device according to an embodiment of the present invention.
  • the neural network shown in FIG. 4 (sign b in FIG. 4) includes the attention mechanism (sign a in FIG. 5) shown in FIG. 5, the encoder (sign b in FIG. 5), and It has a decoder (sign c in FIG. 5). Information about each agent is input to the encoder, and information about each task is input to the decoder.
  • the attention mechanism calculates the likelihood of the agent to which each task input to the decoder is assigned. The attention mechanism then assigns each task (visited point) to the agent with the highest likelihood.
  • FIG. 5 is an example in which a recurrent neural network (RNN) as disclosed in Non-Patent Document 2 is applied.
  • RNN recurrent neural network
  • Conventionally, such a neural network has been used to output a patrol route for a single vehicle. For example, information about each vehicle is sequentially input to the encoder, information about each of the most recently visited points by each vehicle is input to the decoder, and the attention mechanism calculates the likelihood of each point that the vehicle can visit next. Then, the point with the highest likelihood among these points is selected as the next point to be visited by the vehicle.
  • this neural network is applied to assign visiting points to multiple vehicles.
  • the neural network described above makes it possible to allocate any number of visited points to any one of any number of vehicles.
  • FIG. 6 is a diagram showing an example of application of the itinerary plan generation device according to an embodiment of the present invention.
  • a tour plan generation device 100 according to an embodiment of the present invention includes a task assignment section 10, a learning parameter storage section 20, a solution generation section 30, and an assignment learning section 40.
  • the task assignment unit 10 inputs problem information that includes agent information indicating agent characteristics and task information indicating task characteristics, inputs the task information and agent information included in this problem into a neural network, and assigns each agent Outputs assignment information on which tasks are assigned.
  • the parameters of the neural network are sequentially learned (updated) and stored in the learning parameter storage section 20.
  • the solution generation unit 30 generates a solution for a circular route to a task to which an agent is assigned based on the assignment information output from the task assignment unit 10 for each agent, and integrates and outputs these solutions.
  • the assignment learning unit 40 updates the neural network parameters stored in the learning parameter storage unit 20 by performing reinforcement learning according to predetermined learning settings. When the learning termination condition is not met, the assignment learning section 40 outputs a processing command to the task assignment section 10, and according to this command, the task assignment section 10, solution generation section 30, and assignment learning section are executed until the termination condition is met. 40 continues.
  • the above problem information includes information constituting a problem such as a task, for example, a visited point, an agent, for example, a position of a vehicle patrolling a visited point.
  • the above learning settings include information regarding conditions under which reinforcement learning is executed, such as learning termination conditions and a reward calculation method.
  • FIG. 7 is a diagram showing another application example of the itinerary plan generation device according to an embodiment of the present invention.
  • the itinerary plan generation device 100 shown in FIG. Among the functions of the itinerary plan generation device 100, a configuration is shown in which the parameter learning device 100b has a function of learning parameters of a neural network.
  • the itinerary plan generation device 100a has a task assignment section 10a and a solution generation section 30a
  • the parameter learning device 100b has a task assignment section 10b, a solution generation section 30b, and an assignment learning section 40b.
  • the task assignment unit 10b and the solution generation unit 30b perform the same processing as the task assignment unit 10 and the solution generation unit 30 shown in FIG. 6 on the learning problem.
  • the assignment learning unit 40b performs a learning process for the parameters of the neural network based on the processing results of the task assignment unit 10b and the solution generation unit 30b of the parameter learning device 100b for the learning problem, and the results of this learning are is output to the itinerary plan generation device 100a as a learning parameter.
  • the assignment learning unit 40b outputs a processing command to the task assignment unit 10b when the learning termination condition is not satisfied, and according to this command, the task assignment unit 10b, solution generation unit 30b, and assignment learning unit Processing by 40b continues.
  • the task allocation unit 10a of the itinerary plan generation device 100a inputs the learning parameters from the parameter learning device 100b together with the problem information, inputs the task information and agent information included in the problem information to the neural network, and assigns the learning parameters to each agent. Output the assignment information to which the task is assigned. Similar to the solution generation unit 30 shown in FIG. 6, the solution generation unit 30a generates a solution for a circular route to the task to which the agent is assigned for each agent based on the assignment information output from the task assignment unit 10a. Then, these solutions are integrated and output.
  • the problem information includes at least information X for each task and information Z for each agent.
  • the task information X is, for example, the position information of the points visited by the vehicle.
  • the task information X may include information necessary to find a solution to the problem, such as the amount of supplies required by the visited point and time constraints.
  • the agent information Z is, for example, vehicle position information.
  • the agent information Z may include information necessary to find a solution to the problem, such as the amount of materials to be loaded on the vehicle.
  • Task information X is expressed as information on N tasks, for example, as shown in equation (1) below.
  • X (x 1 , x 2 , ..., x N ): Information on each task (visited point) (N: number of tasks) ...Formula (1)
  • the tasks include tasks x 1 , x 2 , x 3 , x 4 , x 5 and x 6 .
  • This location information uses, for example, values normalized based on the latitude and longitude of the visited point.
  • agent information Z is expressed as information on M agents, for example, as shown in equation (3) below.
  • Z (z 1 , z 2 ,..., z M ): Information on each agent (vehicle) at output step t (M: number of agents)...Equation (3)
  • the agents include agents z 1 and z 2 .
  • the position information (x coordinate, y coordinate) of the agents z 1 and z 2 shown in FIG. 4 in the agent information Z can be expressed, for example, as in the following equation (4).
  • Z ((0.2,0.7), (0.8,0.3)) ...Equation (4)
  • This location information uses, for example, a value normalized based on the latitude and longitude of the vehicle's current location.
  • the task assignment unit 10 shown in FIG. 6 inputs information on tasks and agents included in problem information into a neural network, and outputs assignment information in which tasks are assigned to each agent.
  • the task assignment unit 10 inputs the information of each vehicle (agent) to the encoder of the neural network as shown in FIG. 5, and sequentially inputs the information of each visited point (task) to the decoder of the neural network. , performs a process of outputting allocation information in which visiting points are allocated to each vehicle. Such processing applies to all vehicles (agents) z 1 and z 2 shown in FIG. 4 and all visited points (tasks) x 1 , x 2 , x 3 , x 4 , x shown in FIG. This is repeated until information of 5 and x 6 is input sequentially.
  • the attention mechanism of the recurrent neural network shown in FIG. Output. Then, the attention mechanism allocates the above candidate visit point, that is, the visit point used to calculate the likelihood, to the vehicle with the highest likelihood output in relation to the same visit point among each vehicle. Determine. By making such a determination for each visiting point, the assignment of visiting points to each vehicle is determined.
  • Vehicles to be assigned to other visiting points x 2 , x 3 , x 4 , x 5 and x 6 are similarly determined. In the example indicated by c1 in FIG.
  • first assignment information is shown in which visit points (tasks) x 1 , x 2 and x 4 are assigned to vehicle (agent) z 1 as a result of the above determination. It will be done. Furthermore, in the example indicated by the symbol c2 in FIG. 4, the second assignment information in which visiting points (tasks) x 3 , x 5 and x 6 are assigned to the vehicle (agent) z 2 by the above determination is shown.
  • the allocation relationship in the above allocation information corresponds to the relationship shown by the solid line in FIG.
  • the task allocation unit 10 of this embodiment calculates the likelihood of vehicles that do not satisfy the constraint condition. By setting it to 0, it is also possible to control so that the visited point is not assigned to the vehicle.
  • the task assignment unit 10 converts the original "delivery planning problem for multiple vehicles" (see reference numeral a in FIG. 4) to “multiple "delivery planning problems for a single vehicle”.
  • the neural network outputs the results divided into the assignment results (see symbols c1 and c2 in FIG. 4).
  • FIG. 8 is a diagram illustrating an example of processing by the solution generation unit of the itinerary plan generation device according to an embodiment of the present invention.
  • the solution generation unit 30 generates solutions for the tasks assigned to each agent and integrates them. For example, the solution generation unit 30 generates task assignment information to the first agent indicated by the problem information (symbol c1 in FIG. 8) based on the output from the neural network, and the second task assignment information indicated by the problem information. Input information on assignment of tasks to agents (code c2 in Figure 8), and use solver (code d in Figure 8) to calculate the route (order) in which each vehicle (agent) visits the visited points (tasks). By integrating these (symbol f in FIG. 8), a route plan for each vehicle to visit each visit point is generated (symbol g in FIG. 8).
  • the solver may utilize conventional techniques for solving problems for a single agent.
  • the route (order) symbol e1 in FIG. 8
  • the second vehicle (agent) is calculated using a solver (e2 in FIG. 8).
  • Examples of the above integration method include combining the respective output solutions into one.
  • FIG. 9 is a flowchart illustrating an example of a processing procedure by the allocation learning unit of the itinerary plan generation device according to an embodiment of the present invention.
  • the assignment learning unit 40 performs reinforcement learning in accordance with the learning settings, and updates (learns) the learning parameters of the neural network used by the task assignment unit 10.
  • learning questions are first generated (S11). For example, visiting point information and vehicle information (vehicle location, etc.) may be randomly determined to generate learning questions.
  • the assignment learning unit 40 calculates a reward indicating the quality of task assignment to the agent for the solution generated in S12 (S13).
  • the calculation formula for the reward may be determined in advance by the user, for example, such that the larger the reward, the better the allocation.
  • the reward calculation formula may be expressed by the following equation (4).
  • Reward -1 x total distance traveled by each vehicle...Formula (4)
  • the assignment learning unit 40 updates the learning parameters of the neural network used by the task assignment unit 10 based on the reward calculated in S13 (S14).
  • the learning parameter updating method for example, the method disclosed in the above-mentioned Non-Patent Document 2 can be used.
  • the assignment learning section 40 outputs a processing command to the task assignment section 10, and according to this instruction, until the termination condition is satisfied, Processing by the task assignment unit 10, solution generation unit 30, and assignment learning unit 40 continues. That is, the processes of S12 to S14 described above are repeated until the end condition specified in the learning settings is satisfied. Then, when the termination condition is satisfied (Yes in S15), the finally updated learning parameters are stored in the learning parameter storage unit 20, and the series of processes related to updating the learning parameters is completed.
  • FIG. 10 is a block diagram showing an example of the hardware configuration of a tour plan generation device according to an embodiment of the present invention.
  • the itinerary plan generation device 100 shown in FIG. 6 is configured by, for example, a server computer or a personal computer, It has a hardware processor 511A such as a unit.
  • a program memory 511B, a data memory 512, an input/output interface 513, and a communication interface 514 are connected to the hardware processor 511A via a bus 515.
  • the communication interface 514 includes, for example, one or more wireless communication interface units, and enables information to be sent and received with a communication network NW.
  • a wireless interface for example, an interface adopting a low power wireless data communication standard such as a wireless LAN (Local Area Network) is used.
  • the input device 200 and the output device 300 are connected to the input/output interface 513.
  • the input/output interface 513 can receive operation data input by a user through an input device such as a keyboard, touch panel, touchpad, mouse, etc., and output data on a liquid crystal or organic display. It is possible to output and display the image on an output device including a display device using EL (Electro Luminescence) or the like.
  • the input device 200 and the output device 300 may be devices built into the itinerary plan generation device 100, or devices of other information terminals that can communicate with the itinerary plan generation device 100 via a network. Input and output devices may also be used.
  • the program memory 511B is a non-temporary tangible storage medium, such as a non-volatile memory such as a HDD (Hard Disk Drive) or an SSD (Solid State Drive) that can be written to and read from at any time. It is used in combination with a non-volatile memory such as a ROM (Read Only Memory), and stores programs necessary for executing various control processes and the like according to one embodiment.
  • a non-volatile memory such as a HDD (Hard Disk Drive) or an SSD (Solid State Drive) that can be written to and read from at any time. It is used in combination with a non-volatile memory such as a ROM (Read Only Memory), and stores programs necessary for executing various control processes and the like according to one embodiment.
  • the data memory 512 is a tangible storage medium that is used in combination with the above-mentioned nonvolatile memory and volatile memory such as RAM (Random Access Memory), and is used to perform various processes. It is used to store various data acquired and created during the process.
  • RAM Random Access Memory
  • the itinerary plan generation device 100 can be configured as a data processing device having each section shown in FIG. 6 and the like as a processing function section using software.
  • Each information storage unit and learning parameter storage unit 20 used as a working memory by each unit of the itinerary plan generation device 100 may be configured by using the data memory 512 shown in FIG. 10.
  • these configured storage areas are not essential configurations within the itinerary plan generation device 100, and are, for example, external storage media such as a USB (Universal Serial Bus) memory, or a database server located in the cloud. It may be an area provided in a storage device such as a database server.
  • USB Universal Serial Bus
  • Any of the above processing function units can be realized by causing the hardware processor 511A to read and execute a program stored in the program memory 511B. Note that some or all of these processing functions may be implemented in a variety of other formats, including integrated circuits such as application specific integrated circuits (ASICs) or field-programmable gate arrays (FPGAs). May be realized.
  • ASICs application specific integrated circuits
  • FPGAs field-programmable gate arrays
  • each embodiment can be applied to a magnetic disk (floppy (registered trademark) disk, hard disk) as a program (software means) that can be executed by a computer (computer). etc.), optical discs (CD-ROM, DVD, MO, etc.), semiconductor memories (ROM, RAM, Flash memory, etc.), and are stored in recording media, or transmitted and distributed via communication media. can be done.
  • the programs stored on the medium side also include a setting program for configuring software means (including not only execution programs but also tables and data structures) in the computer to be executed by the computer.
  • a computer that realizes this device reads a program recorded on a recording medium, and if necessary, constructs software means using a setting program, and executes the above-described processing by controlling the operation of the software means.
  • the recording medium referred to in this specification is not limited to one for distribution, and includes storage media such as a magnetic disk and a semiconductor memory provided inside a computer or in a device connected via a network.
  • each embodiment may be implemented in combination as appropriate, and in that case, a combined effect can be obtained.
  • the embodiments described above include various inventions, and various inventions can be extracted by combinations selected from the plurality of constituent features disclosed. For example, if a problem can be solved and an effect can be obtained even if some constituent features are deleted from all the constituent features shown in the embodiment, the configuration from which these constituent features are deleted can be extracted as an invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Traffic Control Systems (AREA)

Abstract

一実施形態に係るタスク割当装置は、複数のタスクに対する動作の主体となる複数のエージェントの各々の特徴を示す情報、および複数のタスクの各々の特徴を示す情報をニューラルネットワークに入力し、この入力の結果に基づいて、エージェントに対するタスクの割り当てを示す情報を生成する割当部と、割当部により生成された情報に基づいて、エージェントによるタスクに対する動作の解を生成する生成部と、ニューラルネットワークのパラメータの学習用の情報である複数のエージェントの各々の特徴を示す情報および複数のタスクの各々の特徴を示す情報に対する割当部により生成された情報に基づいて生成された、エージェントによるタスクに対する動作の解の良し悪しを評価して、この評価の結果に応じてニューラルネットワークのパラメータを更新する学習処理を行なう学習部と、を有する。

Description

タスク割当装置、方法およびプログラム
 本発明の実施形態は、タスク割当装置、方法およびプログラムに関する。
 配送計画問題は、宅配便の荷物または被災地への支援物資などの荷物を多数の地点へ配送する又は当該多数の地点から集荷するにあたり、様々な制約条件(constraints)の下で最適な巡回計画を求める、組み合わせ最適化問題(combinatorial optimization problem)(以下、単に問題と称することがある)である。
 複数のエージェント(agent)、例えば車両による組み合わせ最適化問題を解く一つのアプローチ(approach)として、(i)各エージェントにタスク(task)、例えばエージェントによる訪問地点(巡回先と称することがある)を割り当て、(ii)各エージェントに割り当てられたタスクについての解を生成し、これらの解を統合することで近似解(approximate solution)としての巡回計画を作成して出力する方法がある。
 従来では、例えば非特許文献1に開示されるような遺伝的アルゴリズム(algorithm)等を活用して上記(i)および(ii)を繰り返し行なうことで、より良い解を探索する手法が提案されている。
伊藤匡志(Masashi Ito), 渡邉真也(Shinya Watanabe), 榊原一紀(Kazutoshi Sakakibara), "大規模Vehicle Routing Problemに対する部分問題化と適応的問題統合に基づく新たな探索フレームワークの提案(A Proposal on new Search Framework Based on Problem Decomposition and Adaptive Combination of Subproblems for Large Scale Vehicle Routing Problems), " 進化計算学会論文誌(Transaction of the Japanese Society for Evolutionary Computation) 6(3), pp.146-158, 2016. Mohammadreza Nazari, Afshin Oroojlooy, Martin Takac, and Lawrence V. Snyder, Reinforcement learning for solving the vehicle routing problem, 32nd Conference on Neural Information Processing Systems (2018).
 一方で、上記のような手法では、上記の、より良い解を探索するために、上記のタスクの割り当て、解の生成、および統合を繰り返し行う必要があることから、大規模な問題を解く場合には、巡回計画の近似値が出力されるまでに長い時間を要する可能性がある。
 この発明は、上記事情に着目してなされたもので、その目的とするところは、エージェントによるタスクに対する動作の適切な解を得ることができるようにしたタスク割当装置、方法およびプログラムを提供することにある。
 本発明の一態様に係るタスク割当装置は、複数のタスクに対する動作の主体となる複数のエージェントの各々の特徴を示す情報、および前記複数のタスクの各々の特徴を示す情報をニューラルネットワークに入力し、この入力の結果に基づいて、前記エージェントに対する前記タスクの割り当てを示す情報を生成する割当部と、前記割当部により生成された情報に基づいて、前記エージェントによる前記タスクに対する動作の解を生成する生成部と、前記ニューラルネットワークのパラメータの学習用の情報である複数のエージェントの各々の特徴を示す情報および前記複数のタスクの各々の特徴を示す情報に対する前記割当部により生成された情報に基づいて前記生成部により生成された、前記エージェントによる前記タスクに対する動作の解の良し悪しを評価して、この評価の結果に応じて前記ニューラルネットワークのパラメータを更新する学習処理を行なう学習部と、を備える。
 本発明の一態様に係るタスク割当方法は、タスク割当装置により行なわれる方法であって、前記タスク割当装置の割当部により、複数のタスクに対する動作の主体となる複数のエージェントの各々の特徴を示す情報、および前記複数のタスクの各々の特徴を示す情報をニューラルネットワークに入力し、この入力の結果に基づいて、前記エージェントに対する前記タスクの割り当てを示す情報を生成し、前記タスク割当装置の生成部により、前記割当部により生成された情報に基づいて、前記エージェントによる前記タスクに対する動作の解を生成し、前記タスク割当装置の学習部により、前記ニューラルネットワークのパラメータの学習用の情報である複数のエージェントの各々の特徴を示す情報および前記複数のタスクの各々の特徴を示す情報に対する前記割当部により生成された情報に基づいて前記生成部により生成された、前記エージェントによる前記タスクに対する動作の解の良し悪しを評価して、この評価の結果に応じて前記ニューラルネットワークのパラメータを更新する学習処理を行なう。
 本発明によれば、エージェントによるタスクに対する動作の適切な解を得ることができる。
図1は、本発明の一実施形態に係る巡回計画生成装置による、各車両への訪問地点の割り当ての一例を示す図である。 図2は、本発明の一実施形態に係る巡回計画生成装置による、各車両による訪問地点までの配送ルート(route)の生成の一例を示す図である。 図3は、本発明の一実施形態に係る巡回計画生成装置による、ニューラルネットワーク(neural network)のパラメータ(parameter)の決定に係る手順の一例を示すフローチャート(flowchart)である。 図4は、本発明の一実施形態に係る巡回計画生成装置により取り扱う、各訪問地点への各車両の巡回計画の最適化問題の一例を説明する図である。 図5は、本発明の一実施形態に係る巡回計画生成装置に適用されるニューラルネットワークの構成の一例を説明する図である。 図6は、本発明の一実施形態に係る巡回計画生成装置の適用例を示す図である。 図7は、本発明の一実施形態に係る巡回計画生成装置の別の適用例を示す図である。 図8は、本発明の一実施形態に係る巡回計画生成装置の解生成部による処理の一例を説明する図である。 図9は、本発明の一実施形態に係る巡回計画生成装置の割当学習部による処理の手順の一例を示すフローチャートである。 図10は、本発明の一実施形態に係る巡回計画生成装置のハードウエア(hardware)構成の一例を示すブロック図(block diagram)である。
 以下、図面を参照しながら、この発明に係わる一実施形態を説明する。 
 図1は、本発明の一実施形態に係る巡回計画生成装置による、各車両への訪問地点の割り当ての一例を示す図である。図2は、本発明の一実施形態に係る巡回計画生成装置による、各車両による訪問地点までの配送ルートの生成の一例を示す図である。図3は、本発明の一実施形態に係る巡回計画生成装置による、ニューラルネットワークのパラメータの決定に係る手順の一例を示すフローチャートである。
 本実施形態では、下記の(i)および(ii)のように、巡回計画生成装置(タスク割当装置)による、各エージェントへのタスクの割り当てを、強化学習(reinforcement learning)を活用して実施する。エージェントは、自身に割り当てられたタスクに対する動作の主体である。本実施形態では、エージェントは、荷物を配送または集荷する車両であり、タスクは、車両による訪問地点(巡回先)である。
 (i) まず、巡回計画生成装置は、問題の情報(タスク情報、エージェント情報)(図1の符号a)をニューラルネットワーク(図1の符号b)に入力し、各エージェントにタスクを割り当てる。ここでは、ニューラルネットワークからの出力による、問題の情報で示される1つ目のエージェントへのタスクの割り当て情報(図1の符号c1)と、問題の情報で示される2つ目のエージェントへのタスクの割り当て情報(図1の符号c2)が示される。
 (ii) 次に、巡回計画生成装置は、エージェント毎に割り当てられたタスク(図2の符号c1,c2)について解を生成し(図2の符号d)、これらの解を統合する(図2の符号e)ことで、各車両が各訪問地点を巡回するルートの計画、いわゆる訪問計画(巡回計画などと称しても良い)が生成される(図2の符号f)。このとき、上記の解の生成では、単一のエージェントについての問題を解く任意のソルバ(solver)が使用されてよい。
 図1に示されたニューラルネットワークの学習可能なパラメータである学習パラメータ(単にパラメータと称することがある)は、事前に強化学習が行なわれることで決定される。 
 例えば、ランダム(random)に大量の最適化問題が生成された上で(S1)、巡回計画生成装置は、これらの問題について上記(i)の処理を実施して各エージェントにタスクを割り当てる(S2)。 
 巡回計画生成装置は、上記(ii)の処理を実施して、この処理の結果について解を生成し(S3)、この解を用いて、エージェントによるタスクに対する動作の解の良し悪しを示す報酬(reward)を計算し(S4)、この報酬ができるだけ大きくなるように、ニューラルネットワークの学習パラメータを更新する(S5)。
 そして、学習に係る予め定められた終了条件が満たされていないとき、例えば予め定められた問題である、数の最適化問題を用いたときの学習パラメータの更新が終了していないときは(S6のNo)、S2に戻り、上記終了条件が満たされたときは(S6のYes)、パラメータの決定に係る一連の処理が終了する。 
 これにより、各エージェントに対して適切にタスクを割り当てることを可能にするニューラルネットワークを得ることができる。
 図4は、本発明の一実施形態に係る巡回計画生成装置により取り扱う、各訪問地点への各車両の巡回計画の最適化問題の一例を説明する図である。図5は、本発明の一実施形態に係る巡回計画生成装置に適用されるニューラルネットワークの構成の一例を説明する図である。図6は、本発明の一実施形態に係る巡回計画生成装置の適用例を示す図である。 
 図4に示されたニューラルネットワーク(図4の符号b)は、図5に示されたアテンション機構(attention mechanism)(図5の符号a)、エンコーダ(encoder)(図5の符号b)、およびデコーダ(decoder)(図5の符号c)を有する。エンコーダには、各エージェントの情報が入力され、デコーダには、各タスクの情報が入力される。
 アテンション機構は、デコーダに入力された各タスクが割り当てられるエージェントの尤度(likelihood)を算出する。 
 そして、アテンション機構は、タスク(訪問地点)ごとに、尤度が最も高いエージェントに当該タスクを割り当てる。
 図5に示された例は、上記非特許文献2に開示されるような再帰型ニューラルネットワーク(Recurrent Neural Network (RNN))が応用された例である。従来では、このようなニューラルネットワークは、1台の車両の巡回ルートを出力することに用いられていた。例えば、エンコーダに各車両の情報が、デコーダに各車両による直近の各訪問地点の情報が順次入力され、アテンション機構によって、車両が次に訪問可能な地点の各々の尤度が算出される。そして、これらの地点のうち尤度が最も高い地点が車両による次の訪問地点として選択される。 
 本実施形態では、このニューラルネットワークを、複数の車両に対する訪問地点の割り当てに応用する。 
 本実施形態では、上記のニューラルネットワークにより,任意の数の訪問地点を任意の台数の車両のいずれか1台に割り当てることを可能とする。
 図6は、本発明の一実施形態に係る巡回計画生成装置の適用例を示す図である。 
 図6に示された例では、本発明の一実施形態に係る巡回計画生成装置100は、タスク割当部10、学習パラメータ記憶部20、解生成部30、および割当学習部40を有する。
 タスク割当部10は、エージェントの特徴を示すエージェント情報およびタスクの特徴を示すタスク情報が含まれる問題情報を入力し、この問題に含まれるタスク情報とエージェント情報をニューラルネットワークに入力し、各エージェントに対してタスクが割り当てられた割当情報を出力する。ニューラルネットワークのパラメータは、逐次学習(更新)されて学習パラメータ記憶部20に記憶される。
 解生成部30は、タスク割当部10から出力された割当情報に基づいて、エージェントが割り当てられるタスクへの巡回経路の解をエージェントごとに生成し、これらの解を統合して出力する。 
 割当学習部40は、予め定められた学習設定に則って強化学習を行なうことで、学習パラメータ記憶部20に記憶される、ニューラルネットワークのパラメータを更新する。割当学習部40は、学習の終了条件が満たされないときはタスク割当部10への処理指令を出力し、この指令に従い、終了条件が満たされるまでタスク割当部10、解生成部30および割当学習部40による処理が引き続き行なわれる。
 上記の問題情報は、タスク、例えば訪問地点、エージェント、例えば訪問地点を巡回する車両の位置等の問題を構成する情報を含む。また、上記の学習設定は、学習の終了条件および報酬の計算方法等の、強化学習が実行されるときの条件に関する情報を含む。
 図7は、本発明の一実施形態に係る巡回計画生成装置の別の適用例を示す図である。図7に示された例では、図6に示された巡回計画生成装置100が、当該巡回計画生成装置100が有する機能のうちニューラルネットワークのパラメータの学習以外の機能を有する巡回計画生成装置100a、および上記巡回計画生成装置100が有する機能のうちニューラルネットワークのパラメータの学習の機能を有するパラメータ学習装置100bに分離された構成が示される。
 詳しくは、巡回計画生成装置100aは、タスク割当部10aおよび解生成部30aを有し、パラメータ学習装置100bは、タスク割当部10b、解生成部30b、および割当学習部40bを有する。タスク割当部10b、解生成部30bは、学習用の問題に対して、図6に示されたタスク割当部10および解生成部30と同様の処理を行なう。
 ここでは、学習用の問題に対する、パラメータ学習装置100bのタスク割当部10bおよび解生成部30bによる処理結果に基づいて、割当学習部40bは、ニューラルネットワークのパラメータの学習処理を行ない、この学習の結果を学習パラメータとして巡回計画生成装置100aに出力する。割当学習部40bは、学習の終了条件が満たされないときはタスク割当部10bへの処理指令を出力し、この指令に従い、終了条件が満たされるまでタスク割当部10b、解生成部30bおよび割当学習部40bによる処理が引き続き行なわれる。
 巡回計画生成装置100aのタスク割当部10aは、パラメータ学習装置100bからの学習パラメータを、問題情報とともに入力し、問題情報に含まれるタスク情報とエージェント情報をニューラルネットワークに入力し、各エージェントに対してタスクが割り当てられた割当情報を出力する。 
 解生成部30aは、図6に示された解生成部30と同様に、タスク割当部10aから出力された割当情報に基づいて、エージェントが割り当てられるタスクへの巡回経路の解をエージェントごとに生成し、これらの解を統合して出力する。
 次に、図6に示されたタスク割当部10に入力される問題情報の例について説明する。ここでは図4に示された問題情報(図4の符号a)を例として説明する。問題情報は、少なくとも、各タスクの情報Xと、各エージェントの情報Zを含む。
 タスクの情報Xは、例えば、車両による訪問地点の位置情報等である。その他、タスクの情報Xは、訪問地点による物資の要求量、および時間制約等の、問題の解を求めるために必要な情報が含まれ得る。
 エージェントの情報Zは、例えば、車両の位置情報等である。その他、エージェントの情報Zには、車両に搭載される物資の量等の問題の解を求めるために必要な情報が含まれ得る。
 タスクの情報Xは、例えば以下の式(1)のように、N個のタスクの情報として表現される。 
 X=(x,x,…,x):各タスク(訪問地点)の情報(N:タスク数) …式(1)
 図4に示された例では、タスクは、タスクx,x,x,x,xおよびxを含む。 
 タスクの情報Xにおける、上記図4に示されたタスクx,x,x,x,xおよびxの位置情報(x座標,y座標)は、例えば以下の式(2)のように表現され得る。 
 X=((0.1,0.5), (0.4,0.9), (0.5,0.3), (0.7,0.8), (0.8,0.1), (0.9,0.5)) …式(2) 
 この位置情報には、例えば訪問地点の緯度経度を基に正規化された値等が用いられる。
 また、エージェントの情報Zは、例えば以下の式(3)のように、M個のエージェントの情報として表現される。 
 Z=(z,z,…,z):出力ステップtにおける各エージェント(車両)の情報(M:エージェント数) …式(3)
 図4に示された例では、エージェントは、エージェントzおよびzを含む。 
 エージェントの情報Zにおける、上記図4に示されたエージェントzおよびzの位置情報(x座標,y座標)は、例えば以下の式(4)のように表現され得る。 
 Z=((0.2,0.7), (0.8,0.3)) …式(4) 
 この位置情報は、例えば車両の現在位置の緯度経度を基に正規化された値等が用いられる。
 次に、タスク割当部10による処理の詳細の例について説明する。 
 図6に示されたタスク割当部10は、問題情報に含まれるタスクおよびエージェントの情報をニューラルネットワークに入力し、各エージェントにタスクが割り当てられた割当情報を出力する。
 タスク割当部10は、図5に示されたようなニューラルネットワークのエンコーダに各車両(エージェント)の情報を入力し、当該ニューラルネットワークのデコーダに各訪問地点(タスク)の情報を順次入力することで、各車両に訪問地点が割り当てられた割当情報を出力する処理を行なう。 
 このような処理は、図4に示された全ての車両(エージェント)zおよびzならびに図4に示された全ての訪問地点(タスク)x,x,x,x,xおよびxの情報が順次入力されるまで繰り返される。
 図5に示された再帰型ニューラルネットワークのアテンション機構は、ある訪問地点の情報と前ステップの出力(隠れベクトル(hidden vector))を入力し、当該訪問地点が候補として割り当てられる各車両の尤度を出力する。 
 そして、アテンション機構は、各車両のうち、同じ訪問地点との関係にて出力された尤度が最も高い車両への上記候補の訪問地点、すなわち当該尤度の算出に用いられた訪問地点の割り当てを決定する。このような決定が各訪問地点についてなされることで、各車両に対する訪問地点の割り当てが決定される。
 例えば図4、図5に示された訪問地点(タスク)xについては、この訪問地点xが第1の候補として割り当てられる車両(エージェント)zの尤度と、同じ訪問地点xが第2の候補として割り当てられる車両zの尤度がそれぞれ出力され、ここでは、車両zの尤度が最も高いので、訪問地点xの割り当て先は車両zであると決定される。他の訪問地点x,x,x,xおよびxについても割り当て先の車両が同様に決定される。
 図4の符号c1で示された例では、上記のような決定により車両(エージェント)zに、訪問地点(タスク)x,xおよびxが割り当てられた第1の割当情報が示される。
 また、図4の符号c2で示された例では、上記のような決定により車両(エージェント)zに訪問地点(タスク)x,xおよびxが割り当てられた第2の割当情報が示される。上記の割当情報での割り当ての関係は、図5の実線で示された関係に相当する。
 なお、問題の制約条件として、容量制約、例えば各車両が巡回可能な訪問地点の最大数等が存在するときは、本実施形態のタスク割当部10は、制約条件を満たさない車両の尤度を0に設定することで、当該車両に訪問地点が割り当てられないよう制御することも可能である。
 最後に、上記割り当てられた結果をもとに、タスク割当部10は、元の「複数の車両の配送計画問題」(図4の符号a参照)を「複数の『単一車両の配送計画問題』」での割当結果(図4の符号c1、c2参照)に分割された結果をニューラルネットワークから出力する。
 次に、解生成部30による処理の詳細の例について説明する。 
 図8は、本発明の一実施形態に係る巡回計画生成装置の解生成部による処理の一例を説明する図である。 
 解生成部30は、エージェント毎に割り当てられたタスクについて解を生成し、これらを統合する。例えば、解生成部30は、ニューラルネットワークからの出力による、問題の情報で示される1つ目のエージェントへのタスクの割り当て情報(図8の符号c1)と、問題の情報で示される2つ目のエージェントへのタスクの割り当て情報(図8の符号c2)を入力し、各車両(エージェント)が訪問地点(タスク)を巡回するルート(順序)をソルバ(図8の符号d)を用いて計算し、これらを統合する(図8の符号f)ことで、各車両が各訪問地点を巡回するルートの計画を生成する(図8の符号g)。
 ソルバには、単一のエージェントについての問題を解く従来技術が利用され得る。図8に示された例では、第1の車両(エージェント)が訪問地点(タスク)を巡回するルート(順序)(図8の符号e1)がソルバを用いて計算され、第2の車両(エージェント)が訪問地点(タスク)を巡回するルート(順序)(図8の符号e2)がソルバを用いて計算された例が示される。
 上記統合の方法は、出力されたそれぞれの解を一つに結合する等が挙げられる。
 次に、割当学習部40による処理の詳細の例について説明する。 
 図9は、本発明の一実施形態に係る巡回計画生成装置の割当学習部による処理の手順の一例を示すフローチャートである。 
 割当学習部40は、学習設定に則って強化学習を行ない、タスク割当部10により用いられるニューラルネットワークの学習パラメータを更新(学習)する。 
 まず、割当学習部40による処理にあたり、まず、学習用の問題が生成されるとする(S11)。例えば、訪問地点の情報と車両の情報(車両の位置等)がランダムに決定されて、学習用の問題が生成され得る。
 次に、上記で説明した、タスク割当部10および解生成部30による処理が実行されて、学習用の問題の解、すなわち車両による各訪問地点への巡回ルートが生成される(S12)。
 そして、割当学習部40は、S12で生成された解について、エージェントに対するタスクの割当ての良し悪しを示す報酬を計算する(S13)。報酬の計算式は、報酬が大きいほど良い割り当てとなるように、例えばユーザにより事前に決定され得る。
 例えば、車両の移動距離の合計ができるだけ小さい解を生成したい場合は、報酬の計算式は、以下の式(4)で示され得る。 
 報酬=-1×各車両の移動距離の合計 …式(4)
 最後に、割当学習部40は、S13で計算された報酬に基づいて、タスク割当部10により用いられるニューラルネットワークの学習パラメータを更新する(S14)。学習パラメータの更新方法については、例えば上記の非特許文献2に開示された方法が利用可能である。
 そして、割当学習部40は、学習設定で指定された終了条件が満たされないときは(S15のNo)、タスク割当部10への処理指令を出力し、この指令に従い、終了条件が満たされるまで、タスク割当部10、解生成部30および割当学習部40による処理が引き続き行なわれる。すなわち、上記のS12~S14の処理が、学習設定で指定された終了条件が満たされるまで繰り返される。そして、終了条件が満たされると(S15のYes)、最終的に更新された学習パラメータが学習パラメータ記憶部20に記憶されて、学習パラメータの更新に係る一連の処理が終了する。
 図10は、本発明の一実施形態に係る巡回計画生成装置のハードウエア構成の一例を示すブロック図である。 
 図10に示された例では、上記の実施形態に係る図6に示された巡回計画生成装置100は、例えばサーバコンピュータ(server computer)またはパーソナルコンピュータ(personal computer)により構成され、CPU(Central Processing Unit)等のハードウエアプロセッサ(hardware processor)511Aを有する。そして、このハードウエアプロセッサ511Aに対し、プログラムメモリ(program memory)511B、データメモリ(data memory)512、入出力インタフェース(interface)513及び通信インタフェース514が、バス(bus)515を介して接続される。図7に示された巡回計画生成装置100aおよびパラメータ学習装置100bについても同様である。
 通信インタフェース514は、例えば1つ以上の無線の通信インタフェースユニットを含んでおり、通信ネットワーク(network)NWとの間で情報の送受信を可能にする。無線インタフェースとしては、例えば無線LAN(Local Area Network)などの小電力無線データ通信規格が採用されたインタフェースが使用される。
 入出力インタフェース513には、入力デバイス200および出力デバイス300が接続される。 
 入出力インタフェース513は、キーボード、タッチパネル(touch panel)、タッチパッド(touchpad)、マウス(mouse)等の入力デバイスを通じて利用者などにより入力された操作データを取り込むことができ、出力データを液晶または有機EL(Electro Luminescence)等が用いられた表示デバイスを含む出力デバイスへ出力して表示させる処理を行なうことができる。なお、入力デバイス200および出力デバイス300には、巡回計画生成装置100に内蔵されたデバイスが使用されてもよく、また、ネットワークを介して巡回計画生成装置100と通信可能である他の情報端末の入力デバイスおよび出力デバイスが使用されてもよい。
 プログラムメモリ511Bは、非一時的な有形の記憶媒体として、例えば、HDD(Hard Disk Drive)またはSSD(Solid State Drive)等の随時書込みおよび読出しが可能な不揮発性メモリ(non-volatile memory)と、ROM(Read Only Memory)等の不揮発性メモリとが組み合わせて使用されたもので、一実施形態に係る各種制御処理等を実行する為に必要なプログラムが格納されている。
 データメモリ512は、有形の記憶媒体として、例えば、上記の不揮発性メモリと、RAM(Random Access Memory)等の揮発性メモリ(volatile memory)とが組み合わせて使用されたもので、各種処理が行なわれる過程で取得および作成された各種データが記憶される為に用いられる。
 本発明の一実施形態に係る巡回計画生成装置100は、ソフトウエア(software)による処理機能部として、図6などに示された各部を有するデータ処理装置として構成され得る。
 巡回計画生成装置100の各部によるワークメモリ(working memory)などとして用いられる各情報記憶部および学習パラメータ記憶部20は、図10に示されたデータメモリ512が用いられることで構成され得る。ただし、これらの構成される記憶領域は巡回計画生成装置100内に必須の構成ではなく、例えば、USB(Universal Serial Bus)メモリなどの外付け記憶媒体、又はクラウド(cloud)に配置されたデータベースサーバ(database server)等の記憶装置に設けられた領域であってもよい。
 上記の処理機能部は、いずれも、プログラムメモリ511Bに格納されたプログラムを上記ハードウエアプロセッサ511Aにより読み出させて実行させることにより実現され得る。なお、これらの処理機能部の一部または全部は、特定用途向け集積回路(ASIC(Application Specific Integrated Circuit))またはFPGA(Field-Programmable Gate Array)などの集積回路を含む、他の多様な形式によって実現されてもよい。
 また、各実施形態に記載された手法は、計算機(コンピュータ)に実行させることができるプログラム(ソフトウエア手段)として、例えば磁気ディスク(フロッピー(登録商標)ディスク(Floppy disk)、ハードディスク(hard disk)等)、光ディスク(optical disc)(CD-ROM、DVD、MO等)、半導体メモリ(ROM、RAM、フラッシュメモリ(Flash memory)等)等の記録媒体に格納し、また通信媒体により伝送して頒布され得る。なお、媒体側に格納されるプログラムには、計算機に実行させるソフトウエア手段(実行プログラムのみならずテーブル(table)、データ構造も含む)を計算機内に構成させる設定プログラムをも含む。本装置を実現する計算機は、記録媒体に記録されたプログラムを読み込み、また場合により設定プログラムによりソフトウエア手段を構築し、このソフトウエア手段によって動作が制御されることにより上述した処理を実行する。なお、本明細書でいう記録媒体は、頒布用に限らず、計算機内部あるいはネットワークを介して接続される機器に設けられた磁気ディスク、半導体メモリ等の記憶媒体を含むものである。
 なお、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の発明が含まれており、開示される複数の構成要件から選択された組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、課題が解決でき、効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
  100,100a…巡回計画生成装置
  100b…パラメータ学習装置
  10,10a,10b…タスク割当部
  20…学習パラメータ記憶部
  30,30a,30b…解生成部
  40,40b…割当学習部

Claims (7)

  1.  複数のタスクに対する動作の主体となる複数のエージェントの各々の特徴を示す情報、および前記複数のタスクの各々の特徴を示す情報をニューラルネットワークに入力し、この入力の結果に基づいて、前記エージェントに対する前記タスクの割り当てを示す情報を生成する割当部と、
     前記割当部により生成された情報に基づいて、前記エージェントによる前記タスクに対する動作の解を生成する生成部と、
     前記ニューラルネットワークのパラメータの学習用の情報である複数のエージェントの各々の特徴を示す情報および前記複数のタスクの各々の特徴を示す情報に対する前記割当部により生成された情報に基づいて前記生成部により生成された、前記エージェントによる前記タスクに対する動作の解の良し悪しを評価して、この評価の結果に応じて前記ニューラルネットワークのパラメータを更新する学習処理を行なう学習部と、
     を備えるタスク割当装置。
  2.  前記割当部は、
      同じ前記エージェントに対する複数の前記タスクのいずれかの割り当ての候補を示す情報を前記複数のエージェントの各々について生成し、
      前記生成した情報における前記タスクごとに、このタスクが候補として割り当てられるエージェントの尤度を算出し、
      前記算出された尤度が最も高いエージェントへの、当該尤度の算出に用いられた前記タスクの割り当てを示す情報を生成する、
     請求項1に記載のタスク割当装置。
  3.  前記タスクは、前記エージェントによる巡回先であり、
     前記エージェントによる前記タスクに対する動作の解は、前記エージェントによる前記巡回先への巡回計画である、
     請求項1に記載のタスク割当装置。
  4.  タスク割当装置により行なわれる方法であって、
     前記タスク割当装置の割当部により、複数のタスクに対する動作の主体となる複数のエージェントの各々の特徴を示す情報、および前記複数のタスクの各々の特徴を示す情報をニューラルネットワークに入力し、この入力の結果に基づいて、前記エージェントに対する前記タスクの割り当てを示す情報を生成し、
     前記タスク割当装置の生成部により、前記割当部により生成された情報に基づいて、前記エージェントによる前記タスクに対する動作の解を生成し、
     前記タスク割当装置の学習部により、前記ニューラルネットワークのパラメータの学習用の情報である複数のエージェントの各々の特徴を示す情報および前記複数のタスクの各々の特徴を示す情報に対する前記割当部により生成された情報に基づいて前記生成部により生成された、前記エージェントによる前記タスクに対する動作の解の良し悪しを評価して、この評価の結果に応じて前記ニューラルネットワークのパラメータを更新する学習処理を行なう、
     タスク割当方法。
  5.  前記割当部は、
      同じ前記エージェントに対する複数の前記タスクのいずれかの割り当ての候補を示す情報を前記複数のエージェントの各々について生成し、
      前記生成した情報における前記タスクごとに、このタスクが候補として割り当てられるエージェントの尤度を算出し、
      前記算出された尤度が最も高いエージェントへの、当該尤度の算出に用いられた前記タスクの割り当てを示す情報を生成する、
     請求項4に記載のタスク割当方法。
  6.  前記タスクは、前記エージェントによる巡回先であり、
     前記エージェントによる前記タスクに対する動作の解は、前記エージェントによる前記巡回先への巡回計画である、
     請求項4に記載のタスク割当方法。
  7.  請求項1乃至3のいずれか1項に記載のタスク割当装置の前記各部としてプロセッサを機能させるタスク割当処理プログラム。
PCT/JP2022/024163 2022-06-16 2022-06-16 タスク割当装置、方法およびプログラム WO2023243047A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/024163 WO2023243047A1 (ja) 2022-06-16 2022-06-16 タスク割当装置、方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/024163 WO2023243047A1 (ja) 2022-06-16 2022-06-16 タスク割当装置、方法およびプログラム

Publications (1)

Publication Number Publication Date
WO2023243047A1 true WO2023243047A1 (ja) 2023-12-21

Family

ID=89192528

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/024163 WO2023243047A1 (ja) 2022-06-16 2022-06-16 タスク割当装置、方法およびプログラム

Country Status (1)

Country Link
WO (1) WO2023243047A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021106977A1 (ja) * 2019-11-28 2021-06-03 公立大学法人 滋賀県立大学 輸送経路決定方法、コンピュータプログラム、及び、輸送経路決定装置
WO2022038773A1 (ja) * 2020-08-21 2022-02-24 日本電信電話株式会社 配送計画生成装置、配送計画生成方法、およびプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021106977A1 (ja) * 2019-11-28 2021-06-03 公立大学法人 滋賀県立大学 輸送経路決定方法、コンピュータプログラム、及び、輸送経路決定装置
WO2022038773A1 (ja) * 2020-08-21 2022-02-24 日本電信電話株式会社 配送計画生成装置、配送計画生成方法、およびプログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
AKASHI, KAZUAKI: "A Study of Reinforcement Learning for Solving Multi-Vehicle Routing Problems", IEICE TECHNICAL REPORT, vol. 121, no. 13 (ICM2021-5), 6 May 2021 (2021-05-06), pages 23 - 28, XP009551609 *
KAZUHIRO AKASHI, SHUNSUKE KANAI, SATOSHI SUZUKI, KENICHI TAYAMA: "B-14-10 Evaluation of delivery proposal methods that use reinforced learning in emergencies", PROCEEDINGS OF THE 2020 IEICE SOCIETY CONFERENCE, 2; 2020.09.15-18, IEICE, JP, 1 September 2020 (2020-09-01) - 18 September 2020 (2020-09-18), JP, pages 168, XP009551234 *
MATSUBAYASHI, HIROAKI: "B-14-8 Calculation of rescue building priority order in consideration of network topology", PROCEEDINGS OF THE 2021 IEICE COMMUNICATIONS SOCIETY CONFERENCE; SEPTEMBER 14-17, 2021, vol. 2021, no. 2, 31 August 2021 (2021-08-31) - 17 September 2021 (2021-09-17), pages 182, XP009551611 *

Similar Documents

Publication Publication Date Title
CN113692609B (zh) 通过订单车辆分布匹配以订单派发的多代理增强学习
Haliem et al. A distributed model-free ride-sharing approach for joint matching, pricing, and dispatching using deep reinforcement learning
Xia et al. A new model for a carpool matching service
CN107358325B (zh) 一种物流配送中心选址方法、装置及计算机可读存储介质
CN105051693A (zh) 管理计算机服务器能力
JP7378975B2 (ja) 情報処理装置および情報処理システム
JPH06273181A (ja) 経路決定方法、装置および地図管理装置および移動体管理システム
CN110288232A (zh) 订单调度方法及装置
Köksal Ahmed et al. Reinforcement learning-enabled genetic algorithm for school bus scheduling
JP2008506197A (ja) 決定最適化に対するスケーラブルなアルゴリズムのための方法および装置
JP6959975B2 (ja) 計算機システム及びリソースの配置の決定方法
US20210026695A1 (en) Automatic memory management method, corresponding micro-controller unit and computer program product
Fan et al. Distributed forecasting and ant colony optimization for the bike-sharing rebalancing problem with unserved demands
CN118020082A (zh) 针对一个或多个性能度量优化的量子电路编译遍次和/或编译参数的确定
WO2023243047A1 (ja) タスク割当装置、方法およびプログラム
Cao et al. Dan: Decentralized attention-based neural network for the minmax multiple traveling salesman problem
Pham et al. Enhancing engineering optimization using hybrid sine cosine algorithm with Roulette wheel selection and opposition-based learning
JP2014021847A (ja) リソース管理装置及びリソース管理方法及びプログラム
US20150294248A1 (en) Position-centric personnel assessment apparatus and method
Chen et al. A reliability-based transit trip planning model under transit network uncertainty
CN116384606A (zh) 一种基于车辆无人机协同配送的调度优化方法及系统
JP2022071852A (ja) コンピュータ実装方法、システム、およびコンピュータプログラム(工業過程におけるバッチベイズ最適化のための早期実験停止)
Hoffmann et al. Towards reducing complexity of multi-agent simulations by applying model-driven techniques
Yin et al. BO-B&B: A hybrid algorithm based on Bayesian optimization and branch-and-bound for discrete network design problems
WO2024106031A1 (ja) 経路生成装置、経路生成方法、経路生成システムおよびコンピュータプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22946864

Country of ref document: EP

Kind code of ref document: A1