Determination device, determination method, and recording medium
The determination device optimizes equipment placement by solving an optimization problem that accounts for task and placement constraints, ensuring efficient task performance.
Patent Information
- Application Number
- PCT/JP2024/012191
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-27
- Publication Date
- 2025-10-02
AI Technical Summary
Existing methods for determining the placement of equipment such as arm robots and workbenches fail to consider task-specific constraints, leading to inefficient task performance.
A determination device and method that acquires equipment and task data to determine optimal placement locations by solving an optimization problem that satisfies various constraints, including task and placement constraints, to minimize an objective function.
Enables effective placement of equipment to efficiently achieve tasks by considering both equipment data and task data, optimizing layout and task execution.
Smart Images

Figure JP2024012191_02102025_PF_FP_ABST
Abstract
Description
Determination device, determination method, and recording medium
[0001] The present disclosure relates to a determination device, a determination method, and a recording medium.
[0002] 2. Description of the Related Art Techniques used to determine the placement positions of various pieces of equipment such as arm robots and workbenches are known.
[0003] For example, Patent Document 1 describes a simulation system including a placement determination unit that determines the placement of a robot relative to other objects based on placement constraints related to the robot. For example, according to Patent Document 1, the placement determination unit acquires the placement constraints using any method. Furthermore, the placement determination unit can determine the placement of one or more robots based on the placement constraints.
[0004] International Publication No. 2021 / 106492
[0005] The tasks performed by deployed robots are affected by their placement locations. Therefore, if the placement of robots or other equipment is determined simply based on placement constraints, the robots or other equipment may not be able to perform their tasks effectively. This has led to the problem that it can be difficult to determine an effective placement location to achieve efficient tasks.
[0006] Therefore, one object of the present disclosure is to provide a determination device, a determination method, and a recording medium that can solve the above-mentioned problems.
[0007] In order to achieve this purpose, the determination device in the present disclosure has a configuration including: a data acquisition unit that acquires equipment data, which is data about equipment whose placement is to be determined, and task data that indicates tasks to be performed by the equipment; and a determination unit that determines the placement location of the equipment and the execution procedure of the tasks so as to satisfy constraints according to the equipment data and the task data acquired by the data acquisition unit.
[0008] In addition, the determination method in the present disclosure is configured such that an information processing device acquires equipment data, which is data about equipment whose placement is to be determined, and task data, which indicates tasks to be performed by the equipment, and determines the placement location of the equipment and the execution procedure for the tasks so as to satisfy constraints according to the acquired equipment data and task data.
[0009] Furthermore, the recording medium in the present disclosure is a computer-readable recording medium having recorded thereon a program for causing an information processing device to acquire equipment data, which is data about equipment for which placement is to be determined, and task data, which indicates tasks to be performed by the equipment, and determine the placement location of the equipment and the execution procedure for the tasks so as to satisfy constraints according to the acquired equipment data and task data.
[0010] According to the above-described configurations, it is possible to determine an effective placement position for achieving efficient tasks.
[0011] FIG. 1 is a diagram illustrating an overview of an optimization system according to the present disclosure. FIG. 2 is a block diagram illustrating an example configuration of an optimization device according to the present disclosure. FIG. 3 is a diagram illustrating an example of simultaneous constraint condition information. FIG. 4 is a diagram illustrating an example when equipment data is acquired. FIG. 5 is a diagram illustrating an example when task data is acquired. FIG. 6 is a diagram illustrating an example of optimization calculation. FIG. 7 is a diagram illustrating an example of control according to calculation results. FIG. 8 is a flowchart illustrating an example operation of an optimization device. FIG. 9 is a diagram illustrating an example hardware configuration of a determination device according to the present disclosure. FIG. 10 is a block diagram illustrating an example configuration of a determination device. FIG. 11 is a flowchart illustrating an example operation of a determination device.
[0012] [First Embodiment] A configuration example of an optimization system 100 according to the present disclosure will be described with reference to Figs. 1 to 8. Fig. 1 is a diagram illustrating an overview of the optimization system 100. Fig. 2 is a block diagram illustrating a configuration example of an optimization device 200. Fig. 3 is a diagram illustrating an example of simultaneous constraint condition information 246. Fig. 4 is a diagram illustrating an example of equipment data acquisition. Fig. 5 is a diagram illustrating an example of task data acquisition. Fig. 6 is a diagram illustrating an example of optimization calculation. Fig. 7 is a diagram illustrating an example of control according to calculation results. Fig. 8 is a flowchart illustrating an operation example of the optimization device 200. Note that in the present disclosure, the drawings may be associated with one or more embodiments.
[0013] In a first embodiment of the present disclosure, as shown in FIG. 1 , an optimization system 100 that optimizes the placement of various pieces of equipment, such as arm robots and workbenches, will be described. As will be described later, the optimization system 100 acquires equipment data, which is data about various pieces of equipment whose placement is to be determined, and task data, which indicates the types and details of tasks and operations performed by the equipment. The optimization system 100 then determines the placement location of the equipment, etc., using the equipment data and task data. For example, the optimization system 100 determines the placement location of the equipment by solving an optimization problem that satisfies various constraints acquired according to the equipment data and task data and minimizes a predetermined objective function. Furthermore, the optimization system 100 can move the various pieces of equipment to the determined placement locations, etc., based on the determination results. In this way, the optimization system 100 determines the placement locations, etc., taking into account not only the equipment data but also the task data. As a result, the optimization system 100 can determine the placement locations taking into account the task content.
[0014] The equipment whose layout is optimized by the optimization system 100 may include robots such as arm robots that perform various tasks such as picking, and arbitrary objects such as tables used by robots when performing various tasks. In other words, the equipment may include arm robots, workbenches, and other arbitrary robots and objects. Furthermore, the tasks performed by the equipment may include arbitrary tasks. For example, the tasks may include picking to move objects, scanning barcodes, inspection, welding, screwing, assembling multiple parts, and other arbitrary tasks.
[0015] The optimization device 200 (determination device) is an information processing device that uses equipment data and task data to determine the placement positions of equipment, etc. For example, the optimization system 100 can use the optimization device 200 to determine the placement positions of equipment and control the movement of each piece of equipment. FIG. 2 shows an example configuration of the optimization device 200. Referring to FIG. 2, the optimization device 200 has, as main components, for example, an operation input unit 210, a screen display unit 220, a communication I / F unit 230, a storage unit 240, and a calculation processing unit 250.
[0016] 2 illustrates an example in which the functions of the optimization device 200 are realized using one information processing device. However, at least some of the functions of the optimization device 200 may be realized using multiple information processing devices, for example, on the cloud. Furthermore, the optimization device 200 may not include some of the components illustrated above, such as not having the operation input unit 210 or the screen display unit 220, or may have a configuration other than those illustrated above.
[0017] The operation input unit 210 is made up of operation input devices such as a keyboard, a mouse, etc. The operation input unit 210 detects operations of the operator operating the optimization device 200 and outputs the operations to the calculation processing unit 250.
[0018] The screen display unit 220 is composed of a screen display device such as a liquid crystal display, an organic electroluminescence (EL) display, etc. The screen display unit 220 can display various information stored in the storage unit 240 on the screen in response to instructions from the arithmetic processing unit 250.
[0019] The communication I / F unit 230 includes a data communication circuit, etc. The communication I / F unit 230 performs data communication with an external device connected via a communication line.
[0020] The storage unit 240 is a storage device such as a hard disk or memory. The storage unit 240 stores processing information and a program 247 required for various processes in the arithmetic processing unit 250. The program 247 is read into the arithmetic processing unit 250 and executed to realize various processing units. The program 247 is read in advance from an external device or recording medium via a data input / output function such as the communication I / F unit 230, and is stored in the storage unit 240. Main information stored in the storage unit 240 includes, for example, equipment data information 241, task data information 242, work constraint condition information 243, placement constraint condition information 244, objective function information 245, and simultaneous constraint condition information 246.
[0021] The equipment data information 241 includes data on various equipment that may be the target of optimization of the placement position. The equipment data information 241 is acquired in advance by receiving input via the operation input unit 210, receiving input from an external device via the communication I / F unit 230, or the like, and is stored in the storage unit 240.
[0022] For example, the equipment data information 241 includes at least some of the equipment data, such as the type of equipment, the size of the equipment, operating characteristics, and possible placement range. Here, the type of equipment is information indicating the name of the equipment, its identification information, type information, etc., such as an arm robot or a workbench. The size of the equipment may indicate the size and length of the equipment. The operating characteristics may indicate the performance of the robot when performing a task, etc. For example, the operating characteristics may include the range in which the arm can move, the speed and acceleration of the movement, and other information indicating any desired performance. The possible placement range may indicate the range in which the equipment can be placed. For example, the possible placement range may include at least some of information indicating whether the equipment is floor-mounted (whether it can be wall-mounted), information about the room and area in which the equipment is to be placed, information about existing objects that exist before the equipment is placed, etc. The equipment data information 241 may also include information other than the above examples.
[0023] The task data information 242 includes data indicating the types and contents of tasks and operations performed by the equipment. The task data information 242 is acquired in advance by receiving input via the operation input unit 210, receiving input from an external device via the communication I / F unit 230, or the like, and is stored in the storage unit 240.
[0024] For example, the task data information 242 includes at least some of the task data, such as the type of task, the initial state of the task, and the completion state of the task. Here, the type of task is information indicating the type and content of the task, such as picking, scanning, inspection, welding, screw tightening, a specified assembly task, or any other task. Furthermore, the initial state and completion state of the task may include information indicating the state of the equipment in the initial state or completion state of the task.
[0025] The task constraint information 243 includes task constraints, which are constraints on task execution. As an example, the task constraint information 243 includes task constraints for each task type. The task constraint information 243 is acquired in advance by receiving input via the operation input unit 210, receiving input from an external device via the communication I / F unit 230, or other methods, and is stored in the storage unit 240.
[0026] For example, the task constraint information 243 includes, for each task type, one or more task constraints that must be satisfied when executing the task indicated by the task type. As an example, the task constraint information 243 includes mathematical expressions of task constraints required to achieve a task, such as the need to move the arm's hand above the object to be grasped when grasping an object, and the movement of the object following the movement of the arm's hand while the arm is grasping the object. More specifically, the task constraint information 243 includes mathematical expressions in which the positions of the arm's hand and the object are represented by three-dimensional variables, a grasp flag indicating whether the arm is grasping an object is represented by a logical variable that can only have a value of 0 or 1, and the grasp flag is changed from 0 to 1 when the difference in the three-dimensional variables between the arm's hand and the object to be grasped is in a predetermined relationship (e.g., the arm's hand is located above the object to be grasped), and the difference in the three-dimensional variables between the arm's hand and the object to be grasped is fixed to a predetermined relationship while the grasp flag is 1. The task constraint information 243 may include task constraints having necessary variables as appropriate in addition to those exemplified above.
[0027] The task constraint information 243 may include task constraints that are common to all task types, in addition to task constraints that differ for each task type.
[0028] The placement constraint information 244 includes placement constraints, which are constraints on the placement of equipment. The placement constraint information 244 may include placement constraints for each type of equipment, or may include placement constraints common to all equipment. The placement constraint information 244 is acquired in advance using a method such as accepting input via the operation input unit 210 or accepting input from an external device or the like via the communication I / F unit 230, and is stored in the storage unit 240.
[0029] For example, the placement constraint information 244 includes one or more placement constraints that must be satisfied when placing equipment. As an example, the placement constraint information 244 includes placement constraints that are necessary when placing equipment, such as: multiple pieces of equipment must not be placed in the same location; equipment of a size indicated by the size of the equipment must be placed within the possible placement range; equipment that meets certain conditions must not be placed on an existing object; etc. The placement constraint information 244 may include placement constraints having appropriate variables other than those exemplified above.
[0030] The objective function information 245 includes an objective function to be minimized. For example, the objective function information 245 may include a task objective function that is an objective function to be minimized in task execution, a placement objective function that is an objective function to be minimized in equipment placement, etc. The objective function information 245 is acquired in advance by receiving input via the operation input unit 210, receiving input from an external device or the like via the communication I / F unit 230, or the like, and is stored in the storage unit 240.
[0031] As described above, the objective function information 245 includes a task objective function, a placement objective function, and the like. Specific examples of task objective functions include functions that minimize the time required to complete a task or the sum of squares of the control input to an arm until the task is completed, which can be calculated based on variables indicating the placement location of the equipment. The task objective function may include any variable related to the execution of a task, instead of or in addition to the above-mentioned variables. Specific examples of placement objective functions include functions that minimize the floor area of the equipment to be placed or the distance between multiple pieces of equipment, which can be calculated based on variables indicating the placement location of the equipment. The placement objective function may include any variable related to the placement of the equipment, instead of or in addition to the above-mentioned variables.
[0032] The objective function information 245 may include only some of the above-exemplified objective functions, such as including only task objective functions. The objective function information 245 may also include information indicating the weight of each objective function in addition to the above-exemplified objective functions. The weight of each objective function may be a value determined by any method.
[0033] The simultaneous constraint information 246 is information indicating simultaneous constraints that are constraints when simultaneously optimizing task execution (contents) and facility placement. The simultaneous constraint information 246 is acquired in advance by receiving input via the operation input unit 210, receiving input from an external device via the communication I / F unit 230, or the like, and is stored in the storage unit 240.
[0034] FIG. 3 shows an example of a concurrent constraint included in the concurrent constraint information 246. Referring to FIG. 3, the concurrent constraint information 246 includes a concurrent constraint, such as fixing task-related variables and equipment placement-related variables until a predetermined time has elapsed, and fixing equipment placement-related variables after the predetermined time has elapsed. In other words, the concurrent constraint information 246 includes at least a constraint that fixes all task-related variables in the equipment placement optimization step, and a constraint that fixes variables related to the equipment placement location after the equipment placement optimization step is completed. The concurrent constraint information 246 may also include concurrent constraints other than those exemplified above. Whether a variable is related to a task or a placement may be predetermined, for example.
[0035] The arithmetic processing unit 250 has an arithmetic device such as a CPU (Central Processing Unit) and its peripheral circuits. The arithmetic processing unit 250 reads and executes a program 247 from the storage unit 240, thereby causing the above hardware and the program 247 to cooperate with each other to realize various processing units. Major processing units realized by the arithmetic processing unit 250 include, for example, an equipment data acquisition unit 251, a task data acquisition unit 252, a work constraint condition acquisition unit 253, a placement constraint condition acquisition unit 254, an objective function acquisition unit 255, a simultaneous constraint condition acquisition unit 256, an optimization calculation unit 257, an output unit 258, and a control unit 259.
[0036] In addition, the arithmetic processing unit 250 may have a GPU (Graphics Processing Unit), a DSP (Digital Signal Processor), an MPU (Micro Processing Unit), an FPU (Floating point number Processing Unit), a PPU (Physics Processing Unit), a TPU (Tensor Processing Unit), a quantum processor, a microcontroller, or a combination of these, instead of the above-mentioned CPU.
[0037] The equipment data acquisition unit 251 acquires data about equipment whose layout is to be optimized. For example, the equipment data acquisition unit 251 can acquire equipment data about the equipment whose layout is to be optimized in response to an operation on the operation input unit 210 or an input via the communication I / F unit 230. The equipment data acquisition unit 251 may acquire the data about the equipment whose layout is to be optimized by referring to the equipment data information 241 in response to an operation on the operation input unit 210, etc.
[0038] FIG. 4 shows an example of data acquisition by the equipment data acquisition unit 251. For example, referring to FIG. 4 , the equipment data acquisition unit 251 can acquire equipment data for which placement optimization is to be performed in response to input using the environment map 221, equipment information 222, and the like displayed on the screen display unit 220. Here, the environment map 221 can display, for example, information about the room or area in which the equipment is to be placed, information about existing objects before the equipment placement, and the like. For example, the equipment data acquisition unit 251 may generate the environment map 221 based on the equipment data information 241, or may generate the environment map 221 by acquiring necessary information from an external device, and display it on the screen display unit 220. Furthermore, the equipment information 222 can display data about various equipment included in the equipment data information 241. For example, the equipment data acquisition unit 251 can display, as the equipment information 222, an image diagram of the equipment, specification information such as operational performance, and the like. The equipment data acquisition unit 251 can accept input of equipment data such as the type of equipment to be optimized for placement and the possible placement range R by displaying the environment diagram 221 and equipment information 222 as exemplified above on the screen display unit 220 and accepting the selection of equipment and the setting of the possible placement range R using the operation input unit 210. Note that Fig. 4 is an example of data acquisition by the equipment data acquisition unit 251, and the method of acquiring equipment data to be optimized for placement by the equipment data acquisition unit 251 is not limited to the example shown in Fig. 4.
[0039] The task data acquisition unit 252 acquires task data to be executed by the equipment. For example, the task data acquisition unit 252 can acquire task data in response to an operation on the operation input unit 210 or an input via the communication I / F unit 230. The task data acquisition unit 252 may acquire task data by referring to the task data information 242 in response to an operation on the operation input unit 210, etc.
[0040] 5 shows an example of data acquisition by the task data acquisition unit 252. For example, as illustrated in FIG. 5, the task data acquisition unit 252 can accept a designation of task data from a UI (User Interface). For example, the task data acquisition unit 252 can acquire task data by displaying setting information 223, such as a list of tasks included in the task data information 242, for each piece of equipment on the screen display unit 220 and accepting selections using the operation input unit 210 or the like. At this time, the task data acquisition unit 252 may also accept registration of a weighting of the objective function for each task.
[0041] The task data acquisition unit 252 may acquire task data using a method other than the above-mentioned examples. For example, the task data acquisition unit 252 may acquire information indicating the status of a task execution target, and acquire task data corresponding to the task performed by the equipment based on the acquired information. For example, the task data acquisition unit 252 may acquire information indicating the status of a task execution target, such as the size and arrangement of cardboard boxes, by capturing an image of the upstream state of the belt conveyor using an imaging means such as a camera. The task data acquisition unit 252 may acquire information indicating the status of a task execution target using a means other than the above-mentioned examples.
[0042] The task constraint condition acquisition unit 253 acquires task constraint conditions, which are constraint conditions on task execution. For example, the task constraint condition acquisition unit 253 can acquire task constraint conditions related to the tasks acquired by the task data acquisition unit 252 by referring to the task constraint condition information 243. The task constraint condition acquisition unit 253 may acquire task constraint conditions for each task and task constraint conditions common to all tasks.
[0043] The work constraint condition acquisition unit 253 may be configured to modify the acquired work constraint conditions using the equipment data acquired by the equipment data acquisition unit 251. The work constraint condition acquisition unit 253 can make any desired modifications.
[0044] The placement constraint condition acquisition unit 254 acquires placement constraint conditions, which are constraint conditions related to the placement of equipment. For example, the placement constraint condition acquisition unit 254 can acquire placement constraint conditions according to the equipment data acquired by the equipment data acquisition unit 251 by referring to the placement constraint condition information 244. The placement constraint condition acquisition unit 254 may acquire placement constraint conditions at any timing, such as when the work constraint condition acquisition unit 253 acquires work constraint conditions.
[0045] The placement constraint condition acquisition unit 254 may also be configured to modify the acquired placement constraint conditions using equipment data acquired by the equipment data acquisition unit 251. For example, the placement constraint condition acquisition unit 254 may modify the placement constraint conditions in accordance with the number and size of equipment acquired by the equipment data acquisition unit 251. The placement constraint condition acquisition unit 254 may also modify the placement constraint conditions in accordance with the possible placement range R acquired by the equipment data acquisition unit 251. The placement constraint condition acquisition unit 254 may also modify the placement constraint conditions in accordance with any other data, such as modifying the placement constraint conditions based on task data acquired by the task data acquisition unit 252.
[0046] The objective function acquisition unit 255 acquires objective functions such as a task objective function and a placement objective function. The objective function acquisition unit 255 can acquire objective functions such as those exemplified above by referring to the objective function information 245. The objective function acquisition unit 255 may acquire the objective function at any timing, such as when the task constraint condition acquisition unit 253 or the placement constraint condition acquisition unit 254 acquires constraint conditions.
[0047] Furthermore, the objective function acquisition unit 255 can acquire information indicating a weight corresponding to each objective function along with the objective functions. The objective function acquisition unit 255 may acquire the information indicating the weight by referring to the objective function information 245, or may acquire the information indicating the weight in response to receiving an input via the operation input unit 210 using the above-described UI or the like.
[0048] The simultaneous constraint condition acquisition unit 256 acquires simultaneous constraint conditions, which are constraint conditions when simultaneously optimizing task execution and equipment placement. For example, the simultaneous constraint condition acquisition unit 256 can acquire simultaneous constraint conditions by referring to the simultaneous constraint condition information 246. The simultaneous constraint condition acquisition unit 256 may acquire simultaneous constraint conditions at any timing, such as when the work constraint condition acquisition unit 253 or the placement constraint condition acquisition unit 254 acquires constraint conditions.
[0049] The optimization calculation unit 257 designs an optimization problem according to the results acquired by each acquisition unit and solves the designed optimization problem to determine the equipment placement location, task execution procedures, etc. For example, the optimization calculation unit 257 solves an optimization problem that satisfies all of the constraint conditions acquired by each acquisition unit described above and minimizes the weighted sum of the objective functions acquired by the objective function acquisition unit 255. In other words, the optimization calculation unit 257 uses an optimization solver to perform calculations to satisfy all of the task constraint conditions acquired by the task constraint condition acquisition unit 253, the placement constraint conditions acquired by the placement constraint condition acquisition unit 254, and the simultaneous constraint conditions acquired by the simultaneous constraint condition acquisition unit 256, and to minimize the weighted sum of the task objective function and the placement objective function.
[0050] In other words, as shown in Fig. 6, the optimization calculation unit 257 simultaneously optimizes the facility location and the tasks by solving an optimization problem that satisfies all constraints and minimizes the weighted sum of the objective functions acquired by the objective function acquisition unit 255. As a more specific example, under simultaneous constraints, the optimization calculation unit 257 fixes variables related to the execution of all tasks in the facility location optimization step, and solves the optimization problem under constraints that fix variables related to the facility location after the facility location optimization step is completed (see Fig. 3). In this way, the optimization calculation unit 257 functions as a determination unit that determines the facility location, etc., by solving the optimization problem.
[0051] The output unit 258 outputs the results of calculations performed by the optimization calculation unit 257. For example, the output unit 258 can output information related to equipment installation, such as the value of a variable indicating the location where the equipment is to be placed, from the results of calculations performed by the optimization calculation unit 257. The output unit 258 may display the information on the screen display unit 220 or transmit it to an external device via the communication I / F unit 230.
[0052] The control unit 259 controls equipment such as an arm robot according to the results of calculations by the optimization calculation unit 257. For example, the control unit 259 can control the equipment itself, such as controlling the hand position and each joint angle of the arm robot, according to the results of calculations by the optimization calculation unit 257. Furthermore, as shown in FIG. 7 , the control unit 259 can control equipment that can move its installation position by itself among the equipment to be placed, to move to a position according to the results of calculations by the optimization calculation unit 257. In this way, the control unit 259 can control the equipment itself or control the movement of its installation position according to the results of calculations by the optimization calculation unit 257.
[0053] The above is an example of the configuration of the optimization device 200. Next, an example of the operation of the optimization device 200 will be described with reference to FIG.
[0054] Fig. 8 is a flowchart showing an example of the operation of the optimization device 200. Referring to Fig. 8, the equipment data acquisition unit 251 acquires data on equipment for which layout optimization is to be performed. Furthermore, the task data acquisition unit 252 acquires data on tasks (task data) to be executed by the equipment (step S101).
[0055] The task constraint condition acquisition unit 253 acquires task constraint conditions, which are constraint conditions on equipment related to task execution. The placement constraint condition acquisition unit 254 acquires placement constraint conditions, which are constraint conditions related to equipment placement. The simultaneous constraint condition acquisition unit 256 acquires simultaneous constraint conditions, which are constraints when simultaneously optimizing task execution and equipment placement. For example, each acquisition unit acquires each constraint condition as described above (step S102).
[0056] The optimization calculation unit 257 solves an optimization problem that satisfies all of the constraints acquired by the acquisition units and minimizes the weighted sum of the task objective function and the placement objective function (step S103). The optimization calculation unit 257 may solve the optimization problem using a general method.
[0057] The output unit 258 outputs the results of the calculations performed by the optimization calculation unit 257. Furthermore, the control unit 259 controls the position of equipment such as an arm robot in accordance with the results of the calculations performed by the optimization calculation unit 257 (step S104).
[0058] As described above, the optimization device 200 includes a task constraint condition acquisition unit 253, a placement constraint condition acquisition unit 254, and an optimization calculation unit 257. With this configuration, the optimization calculation unit 257 can determine the placement location and tasks of equipment by solving an optimization problem that satisfies the task constraint conditions and the placement constraint conditions and minimizes a predetermined objective function. In other words, with the above configuration, the placement and tasks of equipment can be determined based on data about the equipment and data about the tasks performed by the equipment. This allows the optimization device 200 to determine an effective placement location for efficiently achieving tasks.
[0059] The optimization device 200 also includes a simultaneous constraint condition acquisition unit 256. With this configuration, the optimization calculation unit 257 can solve the optimization problem so as to satisfy the simultaneous constraint conditions, thereby enabling the optimization problem to be solved more efficiently.
[0060] In the present disclosure, the optimization calculation unit 257 has been described as solving an optimization problem to minimize a weighted sum of a task objective function and a placement objective function. However, the optimization device 200 may determine the placement location of equipment, the execution procedure of tasks, and the like by solving an optimization problem that satisfies the work constraints and placement constraints and minimizes the task objective function. Even with this configuration, the placement location of equipment, the execution procedure of tasks, and the like can be determined according to various constraints and objective functions corresponding to the equipment data and task data. The optimization calculation unit 257 may determine the placement of equipment and tasks based on the equipment data and the task data using a method other than the above example.
[0061] Second Embodiment Next, a determination device 300 that determines the layout position of equipment will be described with reference to Fig. 9 to Fig. 11. Fig. 9 is a diagram showing an example of the hardware configuration of the determination device 300. Fig. 10 is a block diagram showing an example of the configuration of the determination device 300. Fig. 11 is a flowchart showing an example of the operation of the determination device 300.
[0062] In a second embodiment of the present disclosure, a determination device 300 will be described, which is an information processing device that determines the placement location of equipment based on equipment data, which is data on equipment for which placement determination is to be made, and task data, which indicates tasks performed by the equipment. Fig. 9 shows an example of the hardware configuration of the determination device 300. Referring to Fig. 9, the determination device 300 has, as an example, the following hardware configuration. CPU (Central Processing Unit) 301 (arithmetic device) ROM (Read Only Memory) 302 (storage device) RAM (Random Access Memory) 303 (storage device) Programs 304 loaded into RAM 303 Storage device 305 for storing programs 304 Drive device 306 for reading and writing data from and to a storage medium 310 external to the information processing device Communication interface 307 for connecting to a communication network 311 external to the information processing device Input / output interface 308 for inputting and outputting data Bus 309 for connecting the various components
[0063] 10 by the CPU 301 acquiring and executing the program group 304. The program group 304 is stored in advance in the storage device 305 or the ROM 302, for example, and is loaded into the RAM 303 or the like by the CPU 301 for execution as needed. The program group 304 may be supplied to the CPU 301 via the communication network 311, or may be stored in advance in the recording medium 310, and the drive device 306 may read out the program and supply it to the CPU 301.
[0064] 9 shows an example of the hardware configuration of the determination device 300. The hardware configuration of the determination device 300 is not limited to the above-described case. For example, the determination device 300 may be configured with only a part of the above-described configuration, such as excluding the drive device 306. Furthermore, the CPU 301 may be a GPU or the like exemplified in the first embodiment.
[0065] The data acquisition unit 321 acquires equipment data, which is data about equipment for which placement is to be determined, and task data, which indicates tasks performed by the equipment. The data acquisition unit 321 may acquire the above data using any means. For example, the data acquisition unit 321 may acquire the above data using a method such as accepting input using an operation input unit such as a keyboard, or reading the above data from a storage device or an external device.
[0066] The determination unit 322 determines the location of the equipment and the procedure for executing the tasks so as to satisfy the constraint conditions according to the equipment data and task data acquired by the data acquisition unit 321. For example, the determination unit 322 may determine the location of the equipment and the procedure for executing the tasks by solving an optimization problem that satisfies the constraint conditions according to the equipment data and the task data and minimizes a predetermined objective function.
[0067] The above is an example of the configuration of the determining device 300. Next, an example of the operation of the determining device 300 will be described with reference to FIG.
[0068] 11 shows an example of the operation of the determination device 300. Referring to FIG. 11, the data acquisition unit 321 acquires equipment data, which is data on equipment for which placement determination is to be made, and task data, which indicates tasks to be performed by the equipment (step S201). The data acquisition unit 321 may acquire the above data by any means.
[0069] The determination unit 322 determines the location of the equipment and the execution procedure of the tasks so as to satisfy the constraint conditions according to the equipment data and task data acquired by the data acquisition unit 321 (step S202). For example, the determination unit 322 may determine the location of the equipment and the execution procedure of the tasks by solving an optimization problem that satisfies the constraint conditions according to the equipment data and the task data and minimizes a predetermined objective function.
[0070] As described above, the determination device 300 includes the data acquisition unit 321 and the determination unit 322. With this configuration, the determination unit 322 can determine the equipment location and task content so as to satisfy the constraints based on the equipment data and task data acquired by the data acquisition unit 321. As a result, the determination device 300 can determine the equipment location taking the task content into consideration. This makes it possible to determine an effective location for efficiently achieving tasks.
[0071] The above-described determination device 300 can be realized by incorporating a predetermined program into an information processing device such as the determination device 300. Specifically, a program according to another embodiment of the present disclosure is a program for causing an information processing device to acquire equipment data, which is data about equipment for which placement determination is to be made, and task data, which indicates tasks to be performed by the equipment, and to determine the placement location of the equipment and the execution procedure of the tasks so as to satisfy constraints according to the acquired equipment data and task data.
[0072] In addition, the determination method executed by an information processing device such as the determination device 300 described above is a method in which the information processing device acquires equipment data, which is data about the equipment whose placement is to be determined, and task data, which indicates the tasks to be performed by the equipment, and determines the placement location of the equipment and the procedure for executing the tasks so as to satisfy the constraints according to the acquired equipment data and task data.
[0073] Any program having the above-described configuration, or a computer-readable recording medium having the program recorded thereon, or a determination method, etc., can achieve the same functions and effects as the above-described determination device 300, and therefore can achieve the above-described objective of the present disclosure.
[0074] <Supplementary Notes> Part or all of the above-described embodiments can also be described as follows: The determining device and other components of the present disclosure will be outlined below. However, the present disclosure is not limited to the following configuration.
[0075] (Supplementary Note 1) A determination device comprising: a data acquisition unit that acquires equipment data, which is data on equipment whose placement is to be determined, and task data, which indicates tasks to be performed by the equipment; and a determination unit that determines a placement location of the equipment and an execution procedure of the tasks so as to satisfy constraints according to the equipment data and the task data acquired by the data acquisition unit. (Supplementary Note 2) The determination device according to Supplementary Note 1, wherein the determination unit determines the placement location of the equipment and the execution procedure of the tasks by solving an optimization problem that satisfies the constraints according to the equipment data and the task data and minimizes a predetermined objective function. (Supplementary Note 3) The determination device according to Supplementary Note 2, wherein the determination unit determines the placement location of the equipment and the execution procedure of the tasks by solving an optimization problem that satisfies the constraints according to the equipment data and the task data and minimizes an objective function including a task objective function that is an objective function to be minimized in task execution. (Supplementary Note 4) The determination device according to Supplementary Note 2 or Supplementary Note 3, wherein the determination unit determines the location of the equipment and the execution procedure of the tasks by solving an optimization problem that satisfies constraints according to the equipment data and the task data and minimizes a weighted sum of a task objective function that is an objective function to be minimized in task execution and a placement objective function that is an objective function to be minimized in equipment placement. (Supplementary Note 5) The determination device according to any one of Supplementary Note 2 to Supplementary Note 4, wherein the determination unit determines the location of the equipment and the execution procedure of the tasks by solving an optimization problem that satisfies constraints according to the equipment data and the task data and satisfies simultaneous constraints that are constraints when simultaneously optimizing the task execution procedure and the equipment placement, and minimizes a predetermined objective function. (Supplementary Note 6) The determination device according to Supplementary Note 5, wherein the simultaneous constraint conditions include at least a constraint condition that fixes the variables related to the task execution and the variables related to the facility layout until a predetermined time has elapsed, and fixes the variables related to the facility layout after the predetermined time has elapsed, out of the variables related to the task execution and the variables related to the facility layout.(Supplementary Note 7) The determination device according to any one of Supplementary Notes 1 to 6, comprising a placement constraint condition acquisition unit that acquires placement constraint conditions that are constraint conditions on the placement of equipment according to the equipment data, wherein the determination unit determines a placement position of the equipment and an execution procedure for the task so as to satisfy constraint conditions including the placement constraint conditions acquired by the placement constraint condition acquisition unit. (Supplementary Note 8) The determination device according to any one of Supplementary Notes 1 to 7, comprising a work constraint condition acquisition unit that acquires work constraint conditions that are constraint conditions on task execution according to the task data, wherein the determination unit determines a placement position of the equipment and an execution procedure for the task so as to satisfy constraint conditions including the work constraint conditions acquired by the work constraint condition acquisition unit. (Supplementary Note 9) The determination device according to Supplementary Note 8, wherein the work constraint condition acquisition unit modifies the work constraint conditions according to the equipment data. (Supplementary Note 10) A determination method in which an information processing device acquires equipment data, which is data about equipment whose placement is to be determined, and task data, which indicates tasks to be performed by the equipment, and determines a placement position of the equipment and an execution procedure for the tasks, so as to satisfy constraints according to the acquired equipment data and the task data. (Supplementary Note 11) A computer-readable recording medium having recorded thereon a program for implementing a process in which an information processing device acquires equipment data, which is data about equipment whose placement is to be determined, and task data, which indicates tasks to be performed by the equipment, and determines a placement position of the equipment and an execution procedure for the tasks, so as to satisfy constraints according to the acquired equipment data and the task data.
[0076] Note that some or all of the configurations described in Supplementary Notes 2 to 9 that are subordinate to the determination device described in Supplementary Note 1 may be subordinated in a similar manner to the determination method described in Supplementary Note 10 and the recording medium described in Supplementary Note 11. Furthermore, not limited to Supplementary Note 10 and Supplementary Note 11, some or all of the configurations described as Supplements may be subordinated to various hardware, software, various recording means for recording software, or systems, within the scope of each of the above-described embodiments.
[0077] The programs described in the above embodiments and appendices may be stored in a storage device or a computer-readable recording medium, such as a portable medium such as a flexible disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
[0078] Although the present disclosure has been described above with reference to the above-described embodiments, the present disclosure is not limited to the above-described embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure. Furthermore, each embodiment can be combined with other embodiments as appropriate.
[0079] 100 Optimization system 200 Optimization device 210 Operation input unit 220 Screen display unit 230 Communication I / F unit 240 Memory unit 241 Equipment data information 242 Task data information 243 Work constraint condition information 244 Placement constraint condition information 245 Objective function information 246 Simultaneous constraint condition information 247 Program 250 Arithmetic processing unit 251 Equipment data acquisition unit 252 Task data acquisition unit 253 Work constraint condition acquisition unit 254 Placement constraint condition acquisition unit 255 Objective function acquisition unit 256 Simultaneous constraint condition acquisition unit 257 Optimization calculation unit 258 Output unit 259 Control unit 300 Determination device 301 CPU 302 ROM 303 RAM 304 Program group 305 Storage device 306 Drive device 307 Communication interface 308 Input / output interface 309: bus 310: recording medium 311: communication network 321: data acquisition unit 322: determination unit
Claims
1. A determination device having: a data acquisition unit that acquires equipment data, which is data about equipment whose placement is to be determined, and task data, which indicates tasks to be performed by the equipment; and a determination unit that determines the placement location of the equipment and the execution procedure of the tasks so as to satisfy constraints according to the equipment data and task data acquired by the data acquisition unit.
2. A determination device according to claim 1, wherein the determination unit determines the location of the equipment and the execution procedure of the tasks by solving an optimization problem that satisfies constraints according to the equipment data and the task data and minimizes a predetermined objective function.
3. A determination device according to claim 2, wherein the determination unit determines the location of the equipment and the execution procedure of the task by solving an optimization problem that satisfies constraints according to the equipment data and the task data and minimizes an objective function including a task objective function that is an objective function to be minimized in task execution.
4. A determination device according to claim 2, wherein the determination unit determines the location of the equipment and the execution procedure of the task by solving an optimization problem that satisfies constraints according to the equipment data and the task data and minimizes the weighted sum of a task objective function, which is an objective function that is sought to be minimized in task execution, and a placement objective function, which is an objective function that is sought to be minimized in equipment placement.
5. A determination device according to claim 2, wherein the determination unit determines the location of the equipment and the task execution procedure by solving an optimization problem that satisfies constraints according to the equipment data and the task data, satisfies simultaneous constraints that are constraints when simultaneously optimizing the task execution procedure and the equipment placement, and minimizes a predetermined objective function.
6. A determination device according to claim 5, wherein the simultaneous constraint conditions include at least a constraint condition that fixes the variables related to the task execution and the variables related to the facility layout until a predetermined time has elapsed, and fixes the variables related to the facility layout after the predetermined time has elapsed.
7. A determination device according to any one of claims 1 to 6, comprising a placement constraint condition acquisition unit that acquires placement constraint conditions, which are constraint conditions on the placement of equipment, in accordance with the equipment data, and the determination unit determines the placement position of the equipment and the execution procedure of the task so as to satisfy constraint conditions including the placement constraint conditions acquired by the placement constraint condition acquisition unit.
8. A determination device according to any one of claims 1 to 7, comprising a task constraint condition acquisition unit that acquires task constraint conditions, which are constraint conditions for task execution, according to the task data, and the determination unit determines the location of the equipment and the execution procedure for the task so as to satisfy constraint conditions including the task constraint conditions acquired by the task constraint condition acquisition unit.
9. A determination device according to claim 8, wherein the work constraint condition acquisition unit modifies the work constraint conditions in accordance with the equipment data.
10. A determination method in which an information processing device acquires equipment data, which is data about equipment whose placement is to be determined, and task data, which indicates the tasks to be performed by the equipment, and determines the placement location of the equipment and the execution procedure for the tasks so as to satisfy constraints according to the acquired equipment data and task data.
11. A computer-readable recording medium having recorded thereon a program for implementing the process of: acquiring equipment data, which is data on equipment for which placement is to be determined, and task data, which indicates tasks to be performed by the equipment, in an information processing device; and determining the placement location of the equipment and the execution procedure of the tasks so as to satisfy constraints according to the acquired equipment data and task data.
Citation Information
Patent Citations
Methods for optimizing robot performance
JP2007512153A
Assembly planning device, assembly planning method, and assembly planning program
JP2021003779A
Simulation system, simulation method, simulation program, robot manufacturing method, and robot system
WO2021106492A1