Information processing device, information processing method, and program

WO2025069239A1PCT designated stage expired Publication Date: 2025-04-03NEC CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2023/035101
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-09-27
Publication Date
2025-04-03

AI Technical Summary

Technical Problem

The prior art has shortcomings in optimization processing, and it is difficult to achieve an appropriate optimization process.

Method used

By obtaining data points, internal and external polyhedrons are generated, and target weight vectors are determined by comparing the differences in weight vectors in internal and external polyhedrons for optimization.

Benefits of technology

Appropriate optimization processing is implemented, and the weight vectors suitable for the objective function can be effectively determined, thereby optimizing the processing process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2023035101_03042025_PF_FP_ABST
    Figure JP2023035101_03042025_PF_FP_ABST
Patent Text Reader

Abstract

This information processing device comprises: an acquisition unit that acquires one or a plurality of data points; a generation unit that references a plurality of data points including the data points acquired by the acquisition unit and generates, for each step, an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of data points; and an identification unit that identifies, from a difference set between a set of weight vectors obtained by referencing the internal polyhedron in the current step and a set of weight vectors obtained by referencing the internal polyhedron in the previous step, a target weight vector by referencing a difference between an optimization result obtained by referencing a data point included in the internal polyhedron in the current step and an optimization result obtained by referencing a data point included in the external polyhedron in the current step.
Need to check novelty before this filing date? Find Prior Art

Description

Information processing device, information processing method, and program

[0001] The present disclosure relates to an information processing device, an information processing method, and a program.

[0002] Optimization techniques are known in various fields. For example, Patent Literature 1 discloses a technique for estimating a feasible region in a search space based on data given about an optimization target, creating a polynomial model corresponding to the estimated feasible region, and optimizing an objective function using the polynomial model. Furthermore, Non-Patent Literature 1 discloses a polyhedron approximation algorithm.

[0003] Japanese Patent Application Publication No. 2019-220028

[0004] GK Kamenev, “An algorithm for approximating polyhedra”, Zh. Vychisl. Mat. Mat. Fiz., 36:4 (1996), 134-147 (mathnet.ru)

[0005] The technology described in Patent Document 1 has problems in terms of suitable optimization processing. The present disclosure has been made in consideration of the above problems, and an exemplary purpose thereof is to provide a technology that can perform suitable optimization processing.

[0006] An information processing device according to an exemplary aspect of the present disclosure includes an acquisition means for acquiring one or more data points; a generation means for generating, at each step, an internal polyhedron defined by a plurality of data points including the data points acquired by the acquisition means and an external polyhedron defined by the plurality of data points; and an identification means for identifying a target weight vector by referring to a difference set between a set of weight vectors obtained by reference to the internal polyhedron in the current step and a set of weight vectors obtained by reference to the internal polyhedron in the previous step, and referring to the difference between an optimization result obtained by reference to the data points included in the internal polyhedron in the current step and an optimization result obtained by reference to the data points included in the external polyhedron in the current step.

[0007] An information processing method according to an exemplary aspect of the present disclosure includes acquiring one or more data points; generating, at each step, an internal polyhedron defined by the multiple data points and an external polyhedron defined by the multiple data points by referencing the multiple data points including the acquired data points; and identifying a target weight vector from a difference set between a set of weight vectors obtained by referencing the internal polyhedron in the current step and a set of weight vectors obtained by referencing the internal polyhedron in the previous step by referencing the difference between an optimization result obtained by referencing the data points included in the internal polyhedron in the current step and an optimization result obtained by referencing the data points included in the external polyhedron in the current step.

[0008] A program according to an exemplary aspect of the present disclosure is a program that causes a computer to function as an information processing device, and the program causes the computer to acquire one or more data points; generate, at each step, an internal polyhedron defined by a plurality of data points including the acquired data points and an external polyhedron defined by the plurality of data points; and identify a target weight vector from a difference set between a set of weight vectors obtained by referencing the internal polyhedron in the current step and a set of weight vectors obtained by referencing the internal polyhedron in the previous step by referring to the difference between an optimization result obtained by referencing the data points included in the internal polyhedron in the current step and an optimization result obtained by referencing the data points included in the external polyhedron in the current step.

[0009] According to an exemplary aspect of the present disclosure, an exemplary effect is achieved in that a technique for performing a suitable optimization process can be provided.

[0010] FIG. 1 is a block diagram showing a configuration of an information processing device according to the present disclosure. FIG. 1 is a diagram for explaining processing by an information processing device according to the present disclosure. FIG. 2 is a flow diagram showing a flow of an information processing method according to the present disclosure. FIG. 2 is a block diagram showing a configuration of an information processing device according to the present disclosure. FIG. 3 is a flow diagram showing a flow of an information processing method according to the present disclosure. FIG. 3 is a diagram for explaining processing by an information processing device according to the present disclosure. FIG. 4 is a block diagram showing a configuration of an information processing device according to the present disclosure. FIG. 4 is a flow diagram showing a flow of an information processing method according to the present disclosure. FIG. 4 is a diagram for explaining processing by an information processing device according to the present disclosure. FIG. 5 is a block diagram showing a configuration of a computer functioning as an information processing device according to the present disclosure.

[0011] The following are examples of embodiments of the present invention. However, the present invention is not limited to the exemplary embodiments shown below, and various modifications are possible within the scope of the claims. For example, embodiments obtained by appropriately combining the technical means employed in the exemplary embodiments shown below may also be included in the scope of the present invention. Furthermore, embodiments obtained by appropriately omitting some of the technical means employed in the exemplary embodiments shown below may also be included in the scope of the present invention. Furthermore, the effects mentioned in the exemplary embodiments shown below are examples of effects expected in the exemplary embodiments, and do not define the scope of the present invention. In other words, embodiments that do not exhibit the effects mentioned in the exemplary embodiments shown below may also be included in the scope of the present invention.

[0012] [First Exemplary Embodiment] A first exemplary embodiment, which is an example of an embodiment of the present invention, will be described in detail with reference to the drawings. This exemplary embodiment is a basic form for each of the exemplary embodiments described below. Note that the scope of application of each technical means employed in this exemplary embodiment is not limited to this exemplary embodiment. That is, each technical means employed in this exemplary embodiment can also be employed in other exemplary embodiments included in the present disclosure, to the extent that no particular technical obstacles arise. Furthermore, each technical means shown in the drawings referenced to explain this exemplary embodiment can also be employed in other exemplary embodiments included in the present disclosure, to the extent that no particular technical obstacles arise.

[0013] (Overview of Information Processing Device 1) First, an overview of the information processing device 1 according to this exemplary embodiment will be described. The information processing device 1 according to this exemplary embodiment is, as an example, a device that executes an optimization process or a part of a process that may be included in the optimization process using an objective function (also called a reward function) having a predetermined function form.

[0014] For example, the objective function is given by a plurality of parameters (also referred to as weights) and data values ​​(also referred to as feature values) corresponding to each parameter. For example, the objective function may be a linear combination of the parameters and the data values ​​(in other words, the objective function may be expressed as a linear function), or may be configured to include a nonlinear term. The optimization process according to this exemplary embodiment can also be considered as a generalization of a linear programming problem using an objective function as a linear function, but this term does not limit this exemplary embodiment.

[0015] More specifically, as will be described later, the processing executed by the information processing device 1 according to this exemplary embodiment includes: a processing for acquiring one or more data points; and a processing for identifying a target weight vector from a set of weight vectors obtained by referring to a plurality of data points including the acquired data points, by referring to the difference between a first optimization result that references data points included in an internal polyhedron defined by the plurality of data points and a second optimization result that references data points included in an external polyhedron defined by the plurality of data points.

[0016] In this way, the information processing device 1 identifies the target weight vector by referring to the difference between the optimization result obtained by referencing the data points included in the inner polyhedron and the optimization result obtained by referencing the data points included in the outer polyhedron, and can therefore suitably determine a weight vector applicable to the objective function. Therefore, the information processing device 1 can perform a suitable optimization process by referring to such an objective function.

[0017] (Configuration of information processing device 1) The configuration of the information processing device 1 according to this exemplary embodiment will be described below with reference to Fig. 1. Fig. 1 is a block diagram showing the configuration of the information processing device 1 according to this exemplary embodiment. As shown in Fig. 1, the information processing device 1 includes an acquisition unit 11, a generation unit 12, and an identification unit 13.

[0018] (Acquisition unit 11) The acquisition unit 11 acquires one or more data points. Here, the specific values ​​of the data points acquired by the acquisition unit 11 and the type of data related to the target indicated by the data points do not limit the present exemplary embodiment. Furthermore, the term "data point" is used simply because the data points may correspond to points in a search target space, which will be described later, and this term does not limit the present exemplary embodiment.

[0019] For example, the data points acquired by the acquisition unit 11 are expressed as a set of multiple values. Alternatively, for example, the data points may be expressed in the form of a vector having the multiple values ​​as components. Furthermore, the dimension of the vector (in other words, the number of values ​​included in the data points) does not limit this exemplary embodiment.

[0020] As an example, when the information processing device 1 is used to optimize the scheduling of multiple workers (e.g., multiple medical professionals), the acquisition unit 11 may acquire data points including values ​​such as the time periods when each worker is available to work, the proficiency level of each worker, the wage per unit time of each worker, etc. In this case, the dimensions of the data points will be three or more.

[0021] Furthermore, the data points acquired by the acquisition unit 11 may be, for example, data points optimized by a previous optimization process. In such a configuration, the information processing device 1 can be regarded as a device that executes a further optimization process by referring to the data points.

[0022] (Generation unit 12) The generation unit 12 refers to a plurality of data points including the data points acquired by the acquisition unit 11, and generates an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of boundary data points.

[0023] Here, the internal polyhedron is, for example, a convex polyhedron (or convex hull) whose vertices are each of a plurality of boundary data points included in the plurality of data points, and the external polyhedron is, for example, a convex polyhedron formed by faces including each of the plurality of boundary data points.

[0024] The dimensions of the space (also referred to as a search space or a search target space) in which the generation unit 12 generates the inner polyhedron and the outer polyhedron correspond to the dimensions of the data points acquired by the acquisition unit 11. For example, in the case of the above-described example of scheduling optimization, the dimensions of the search space are three or more.

[0025] Furthermore, in this exemplary embodiment, unless otherwise required, the term "polyhedron" is used regardless of the dimension of the search space. However, this term does not limit this exemplary embodiment. For example, when the search space is two-dimensional, the internal polyhedron generated by the generator 12 is a convex polygon with each of the boundary data points as a vertex, and the external polyhedron generated by the generator 12 is a convex polygon with each of the boundary data points as an edge. When the search space is n-dimensional (n≧4), the internal polyhedron generated by the generator 12 is an n-dimensional convex hyperpolytope with each of the boundary data points as a vertex, and the external polyhedron generated by the generator 12 is an n-dimensional convex hyperpolygon with each of the boundary data points as a cell.

[0026] 2 is a diagram showing an example of an internal polyhedron and an external polyhedron generated by the generating unit 12. In the example shown in FIG. 2, some of the multiple data points including the data points acquired by the acquiring unit 11 are located in the search space as follows: (1) , and a (2) As shown in FIG. 2, the data point a (1) , and a (2) Associated with each of the weight vectors φ at the data point (1) , and φ (2) Here, the weight vector is obtained by the obtaining unit 11. (1) , and a (2) The value may be obtained together with the above, or may be determined by the above-mentioned preliminary optimization process.

[0027] Furthermore, in the above description, the term "weight vector" is used because each component of the vector can be considered as a weight by which each data value included in the objective function described below, as an example, is multiplied. However, this term does not limit this exemplary embodiment, and the vector may simply be referred to as a parameter, or a parameter that defines the objective function (reward function).

[0028] As an example, the generating unit 12 generates a data point a (1) , and a (2) Referring to the data point a (1) , and a (2) As shown in FIG. 2, the internal polyhedron is generated by dividing the vertices a (1) , and a (2) , and edges (faces, cells) E1, E2, and E3.

[0029] On the other hand, as an example, as shown in FIG. 2, the generation unit 12 generates a data point a (1) , and a (2) , and the weight vector φ (1) , and φ (2) Refer to φ (1) and a (1) The conditional expression φ is expressed by including the inner product with (1)T (a-a (1)) = 0, and the face (edge, cell) L1 defined by (2) and a (2) The conditional expression φ is expressed by including the inner product with (2)T (a-a (2) ) = 0, and generate an external polyhedron (external polygon, external hyperpolyhedron) that includes these faces (edges, cells).

[0030] Here, the superscript "T" of the weight vector φ indicates the transpose of the weight vector. As shown in FIG. 2, the outer polyhedron has, for example, edges (faces, cells) L1 and L2, and a vertex a (0) The present invention is configured to include the following.

[0031] Note that the present exemplary embodiment is not limited to the specific algorithms used by the generator 12 to generate the inner polyhedron and the outer polyhedron. Also, the inner polyhedron (or at least a part of the outer polyhedron) generated by the generator 12 can be considered to correspond to a so-called feasible region in the search space, but this is not a limitation of the present exemplary embodiment.

[0032] (Identification unit 13) The identification unit 13 identifies a target weight vector from a set of weight vectors by referring to the difference between an optimization result obtained by referencing the data points included in the internal polyhedron and an optimization result obtained by referencing the data points included in the external polyhedron. Here, the set of weight vectors is calculated by referring to the internal polyhedron, for example.

[0033] For example, the identification unit 13 may be configured to identify, as the target weight vector, a weight vector that has the largest difference among the weight vectors included in the set. Alternatively, for example, the identification unit 13 may be configured to identify, as the target weight vector, a weight vector that has the largest linear combination of the difference and an additional term among the weight vectors included in the set.

[0034] Furthermore, the optimization result with reference to the data points included in the internal polyhedron is, for example, the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the internal polyhedron to an objective function defined by one or more data points and a weight vector, and the optimization result with reference to the data points included in the external polyhedron is, for example, the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the external polyhedron to an objective function defined by one or more data points and a weight vector.

[0035] (Effects of information processing device 1) As described above, the information processing device 1 according to this exemplary embodiment has the following configuration: acquires one or more data points; references a plurality of data points including the acquired data points to generate an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of data points; and identifies a target weight vector from the set of weight vectors obtained by reference to the internal polyhedron by reference to the difference between the optimization result obtained by reference to the data points included in the internal polyhedron and the optimization result obtained by reference to the data points included in the external polyhedron.

[0036] In this way, the information processing device 1 identifies the target weight vector by referring to the difference between the optimization result obtained by referencing the data points included in the inner polyhedron and the optimization result obtained by referencing the data points included in the outer polyhedron, and can therefore suitably determine a weight vector applicable to the objective function. Therefore, the information processing device 1 can perform a suitable optimization process by referring to such an objective function.

[0037] (Flow of Information Processing Method S1) Next, the flow of information processing method S1 according to this exemplary embodiment will be described with reference to Fig. 3. Fig. 3 is a flow diagram showing the flow of information processing method S1. As shown in Fig. 3, information processing method S1 includes a process (step) S11 of acquiring data points, a process (step) S12 of generating an internal polyhedron and an external polyhedron, and a process (step) S13 of identifying a target weight vector.

[0038] (Step S11) In step S11, the acquisition unit 11 acquires one or more data points. The specific processing by the acquisition unit 11 has been described above, and therefore will not be described here.

[0039] (Step S12) Subsequently, in step S12, the generator 12 references a plurality of data points including the data points acquired in step S11 and generates an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of boundary data points. The specific processing by the generator 12 has been described above, and therefore will not be described here.

[0040] (Step S13) Subsequently, in step S13, the identification unit 13 identifies a target weight vector from the set of weight vectors by referring to the difference between the optimization result obtained by referencing the data points included in the internal polyhedron and the optimization result obtained by referencing the data points included in the external polyhedron. Here, the set of weight vectors is calculated by referring to the internal polyhedron, as an example. The specific processing by the identification unit 13 has been described above, and therefore will not be described here.

[0041] (Effects of Information Processing Method S1) As described above, the information processing method S1 according to this exemplary embodiment employs the following configuration: acquire one or more data points; refer to a plurality of data points including the acquired data points, and generate an internal polyhedron defined by the plurality of data points, and an external polyhedron defined by the plurality of data points; and identify a target weight vector from the set of weight vectors obtained by referencing the internal polyhedron by referencing the difference between an optimization result obtained by referencing a data point included in the internal polyhedron and an optimization result obtained by referencing a data point included in the external polyhedron.

[0042] In this way, the information processing method S1 identifies the target weight vector by referring to the difference between the optimization result obtained by referencing the data points included in the inner polyhedron and the optimization result obtained by referencing the data points included in the outer polyhedron, and therefore can suitably determine the weight vector applicable to the objective function. Therefore, the information processing method S1 can perform a suitable optimization process by referring to such an objective function.

[0043] (Notes on Information Processing Method S1) In the above example, the information processing device S1 executes steps S12 and S13 once each, but this does not limit the present exemplary embodiment. After executing steps S12 and S13 relating to an nth step (n is a natural number), the information processing device S1 may repeat the following processes: generate (obtain, identify) new data points by executing an optimization process using the weight vectors identified in step S13 of the nth step; generate an internal polyhedron and an external polyhedron in step S12 relating to the n+1th step so as to include at least some of the new data points; and identify a target weight vector from the set of weight vectors by referring to the difference between the optimization result obtained by referencing the data points included in the internal polyhedron in step S11 and the optimization result obtained by referencing the data points included in the external polyhedron in step S11. Furthermore, the repetitive processing may be configured to be performed in step S12 until the internal polyhedron and the external polyhedron satisfy a predetermined condition (in other words, until the weight vector identified in step S13 satisfies a predetermined condition).

[0044] In this way, in the information processing device S1, by repeatedly performing steps S12 and S13, a more suitable weight vector can be determined. Therefore, according to the information processing device 1, a suitable optimization process can be performed by referring to an objective function using such a weight vector.

[0045] (Overview of Information Processing Device 2) Next, an overview of the information processing device 2 according to this exemplary embodiment will be described. Like the information processing device 1, the information processing device 2 according to this exemplary embodiment is a device that executes an optimization process or a part of a process that may be included in the optimization process using an objective function (also called a reward function) having a predetermined function form.

[0046] More specifically, as will be described later, the processing executed by the information processing device 2 according to this exemplary embodiment includes: a processing for acquiring one or more data points; a processing for generating, for each step, an internal polyhedron defined by a plurality of data points including the acquired data points and an external polyhedron defined by the plurality of data points; and a processing for identifying a target weight vector from a difference set between a set of weight vectors obtained by referencing the internal polyhedron in the current step and a set of weight vectors obtained by referencing the internal polyhedron in the previous step, by referring to the difference between the optimization result obtained by referencing the data points included in the internal polyhedron in the current step and the optimization result obtained by referencing the data points included in the external polyhedron in the current step.

[0047] In this way, the information processing device 2 identifies the target weight vector by referring to the difference between the optimization result referencing the data points included in the internal polyhedron and the optimization result referencing the data points included in the external polyhedron, and can therefore suitably determine a weight vector that can be applied to the objective function.

[0048] Therefore, the information processing device 2 can execute a suitable optimization process by referring to such an objective function. Furthermore, the information processing device 2 can speed up the process by identifying the target weight vector from the difference set.

[0049] (Configuration of information processing device 2) The configuration of the information processing device 2 according to this exemplary embodiment will be described below with reference to Fig. 4. Fig. 4 is a block diagram showing the configuration of the information processing device 2 according to this exemplary embodiment. As shown in Fig. 4, the information processing device 2 includes an acquisition unit 21, a generation unit 22, and an identification unit 23.

[0050] (Acquisition unit 21) The acquisition unit 21 acquires one or more data points. Here, the specific values ​​of the data points acquired by the acquisition unit 11 and the data relating to what object the data points indicate do not limit this exemplary embodiment. The specific processing by the acquisition unit 21 is similar to that of the acquisition unit 11, and therefore will not be described here.

[0051] (Generation unit 22) The generation unit 22 references a plurality of data points including the data points acquired by the acquisition unit 21, and generates, for each step, an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of boundary data points. The processing executed by the generation unit 22 in each step is the same as the processing executed by the generation unit 12, and therefore, a description thereof will be omitted here.

[0052] (Identification unit 23) The identification unit 23 identifies the target weight vector from the difference set between the set of weight vectors obtained by referencing the internal polyhedron in the current step and the set of weight vectors obtained by referencing the internal polyhedron in the previous step, by referring to the difference between the optimization result obtained by referencing the data points included in the internal polyhedron in the current step and the optimization result obtained by referencing the data points included in the external polyhedron in the current step.

[0053] The processing of the generating unit 22 and the identifying unit 23 during the repetition of steps will be described below.

[0054] In the nth step (n is a natural number), the generation unit 22 refers to multiple data points including the data points acquired by the acquisition unit 21, and generates an internal polyhedron defined by the multiple data points and an external polyhedron defined by the multiple boundary data points.

[0055] Next, the identification unit 23 identifies the target weight vector from the difference set between the set U(n) of weight vectors obtained by referencing the internal polyhedron in the current step (nth step) and the set U(n-1) of weight vectors obtained by referencing the internal polyhedron in the previous step (n-1th step), by referring to the difference between the optimization result obtained by referencing the data points included in the internal polyhedron in the current step and the optimization result obtained by referencing the data points included in the external polyhedron in the current step.

[0056] Next, the identification unit 23 generates (acquires, identifies) new data points by performing an optimization process that references the weight vector identified, and the generation unit 22 generates, in the n+1th step, an internal polyhedron defined including the new data points and an external polyhedron defined by the multiple boundary data points.

[0057] Then, the identification unit 23 identifies the target weight vector from the difference set between the set U(n+1) of weight vectors obtained by referencing the internal polyhedron in the (n+1)th step and the set U(n) of weight vectors obtained by referencing the internal polyhedron in the nth step, by referring to the difference between the optimization result obtained by referencing the data points included in the internal polyhedron in the current step and the optimization result obtained by referencing the data points included in the external polyhedron in the current step. This process may be repeated.

[0058] (Effects of information processing device 2) As described above, the information processing device 2 according to this exemplary embodiment has the following configuration: acquires one or more data points; references a plurality of data points including the acquired data points to generate, for each step, an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of data points; and identifies a target weight vector from a difference set between a set of weight vectors obtained by reference to the internal polyhedron in the current step and a set of weight vectors obtained by reference to the internal polyhedron in the previous step by reference to the difference between an optimization result obtained by reference to the data points included in the internal polyhedron in the current step and an optimization result obtained by reference to the data points included in the external polyhedron in the current step.

[0059] In this way, the information processing device 2 identifies the target weight vector by referring to the difference between the optimization result referencing the data points included in the internal polyhedron and the optimization result referencing the data points included in the external polyhedron, and can therefore suitably determine a weight vector that can be applied to the objective function.

[0060] Therefore, the information processing device 2 can execute a suitable optimization process by referring to such an objective function. Furthermore, the information processing device 2 can speed up the process by identifying the target weight vector from the difference set.

[0061] (Flow of Information Processing Method S2) Next, the flow of information processing method S2 according to this exemplary embodiment will be described with reference to Fig. 5. Fig. 5 is a flow diagram showing the flow of information processing method S2. As shown in Fig. 5, information processing method S2 includes a process (step) S21 of acquiring data points, a process (step) S22 of generating an internal polyhedron and an external polyhedron, and a process (step) S23 of identifying a target weight vector.

[0062] (Step S21) In step S21, the acquisition unit 21 acquires one or more data points. The specific processing by the acquisition unit 21 has been described above, and therefore will not be described here.

[0063] (Step S22) Subsequently, in step S22, the generating unit 22 references a plurality of data points including the data points acquired in step S21, and generates an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of data points. This step S22 is repeated for each step. The specific processing by the generating unit 22 has been described above, and therefore will not be described here.

[0064] (Step S23) Subsequently, in step S23, the identification unit 23 identifies the target weight vector from the difference set between the set of weight vectors obtained by referencing the internal polyhedron in the current step (nth step) and the set of weight vectors obtained by referencing the internal polyhedron in the previous step (n-1th step) by referring to the difference between the optimization result obtained by referencing the data points included in the internal polyhedron in the current step and the optimization result obtained by referencing the data points included in the external polyhedron in the current step.

[0065] Then, a new data point is generated by performing an optimization process that references the weight vector of the identified target, and the process returns to step S22, where the generation unit 22 generates an internal polyhedron defined by a plurality of data points including the new data point, and an external polyhedron defined by the plurality of data points.

[0066] (Effects of Information Processing Method S2) As described above, the information processing method S2 according to this exemplary embodiment employs the following configuration: acquire one or more data points; refer to a plurality of data points including the acquired data points, and generate, for each step, an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of data points; and identify a target weight vector from a difference set between a set of weight vectors obtained by referencing the internal polyhedron in the current step and a set of weight vectors obtained by referencing the internal polyhedron in the previous step, by referencing the difference between an optimization result obtained by referencing the data points included in the internal polyhedron in the current step and an optimization result obtained by referencing the data points included in the external polyhedron in the current step.

[0067] In this way, the information processing method S2 identifies the target weight vector by referring to the difference between the optimization result obtained by referencing the data points included in the inner polyhedron and the optimization result obtained by referencing the data points included in the outer polyhedron, and therefore can suitably determine the weight vector applicable to the objective function.

[0068] Therefore, according to the information processing method S2, it is possible to perform a suitable optimization process by referring to such an objective function. Furthermore, the information processing method S2 can speed up the process by identifying the target weight vector from the difference set.

[0069] Second Exemplary Embodiment A second exemplary embodiment, which is an example of an embodiment of the present invention, will be described in detail with reference to the drawings. Components having the same functions as those described in the above exemplary embodiment will be denoted by the same reference numerals, and their description will be omitted as appropriate. The scope of application of each technical means employed in this exemplary embodiment is not limited to this exemplary embodiment. That is, each technical means employed in this exemplary embodiment can also be employed in other exemplary embodiments included in the present disclosure, to the extent that no particular technical hindrance occurs. Furthermore, each technical means shown in each drawing referenced to describe this exemplary embodiment can also be employed in other exemplary embodiments included in the present disclosure, to the extent that no particular technical hindrance occurs.

[0070] (Configuration of Information Processing System 100A) The configuration of the information processing system 100A according to this exemplary embodiment will be described with reference to FIG. 6. FIG. 6 is a block diagram showing the configuration of the information processing system 100A. As shown in FIG. 6, the information processing system 100A includes an information processing device 1A and a terminal device 4A communicably connected to the information processing device 1A via a network N. Here, the specific configuration of the network N does not limit this exemplary embodiment, but as an example, a wireless local area network (LAN), a wired LAN, a wide area network (WAN), a public line network, a mobile data communication network, or a combination of these networks can be used.

[0071] (Terminal Device 4A) As shown in Fig. 6, the terminal device 4A includes a control unit 40A, a communication unit 46A, and an input / output unit 47A. The control unit 40A controls each unit included in the terminal device 4A.

[0072] The communication unit 46A communicates with devices external to the terminal device 4A. As an example, the communication unit 46A communicates with the information processing device 1A. The communication unit 46A transmits data supplied from the control unit 40A to the information processing device 1A, and supplies data received from the information processing device 1A to the control unit 40A. Note that the data provided by the communication unit 46A to the information processing device 1A may include, as an example, one or more data points acquired by the acquisition unit 11 of the information processing device 1A.

[0073] As an example, when the information processing system 100A is used to optimize the scheduling of multiple workers (e.g., multiple medical professionals), the terminal device 4A may provide the information processing device 1A with data points including values ​​such as the time periods during which each worker is available to work, each worker's level of proficiency, and each worker's wage per unit time.

[0074] The input / output unit 47A is configured to include at least one of an input / output device such as a keyboard, a mouse, a display, a printer, or a touch panel. Alternatively, the input / output unit 47A may be configured to have an input / output device such as a keyboard, a mouse, a display, a printer, or a touch panel connected to it. In this configuration, the input / output unit 47A accepts various types of information input to the terminal device 4A from the connected input device. Furthermore, under the control of the control unit 40A, the input / output unit 47A outputs various types of information to the connected output device. An example of the input / output unit 47A is an interface such as a USB (Universal Serial Bus).

[0075] (Information Processing Device 1A) As shown in FIG. 6, the information processing device 1A includes a control unit 10A, a storage unit 15A, a communication unit 16A, and an input / output unit 17A.

[0076] (Communication unit 16A) The communication unit 16A communicates with devices external to the information processing device 1A. As an example, the communication unit 16A communicates with the terminal device 4A. The communication unit 16A transmits data supplied from the control unit 10A to the terminal device 4A, and supplies data received from the terminal device 4A to the control unit 10A. Note that the data acquired by the communication unit 16A from the terminal device 4A may include, as an example, one or more data points acquired by the acquisition unit 11 of the information processing device 1A.

[0077] As an example, when the information processing system 100A is used to optimize the scheduling of multiple workers (e.g., multiple medical professionals), the data acquired by the communication unit 16A from the terminal device 4A may include data points including values ​​such as the time periods during which each worker is available to work, the proficiency level of each worker, and the wage per unit hour of each worker.

[0078] (Input / Output Unit 17A) The input / output unit 17A is configured to include at least one of input / output devices such as a keyboard, a mouse, a display, a printer, and a touch panel. Alternatively, the input / output unit 17A may be configured to have input / output devices such as a keyboard, a mouse, a display, a printer, and a touch panel connected to it. In this configuration, the input / output unit 17A accepts various types of information input to the information processing device 1A from the connected input devices. Furthermore, under the control of the control unit 10A, the input / output unit 17A outputs various types of information to the connected output devices. An example of the input / output unit 17A is an interface such as a USB (Universal Serial Bus).

[0079] (Storage Unit 15A) The storage unit 15A stores various types of data referenced by the control unit 10A and various types of data generated by the control unit 10A. As an example, the storage unit 15A stores the following: data point information DPI including one or more data points acquired by the acquisition unit 11; internal polyhedron information IPI including information defining the internal polyhedron generated by the generation unit 12; external polyhedron information OPI including information defining the internal polyhedron generated by the generation unit 12; a boundary point set BPI including a set of weight vectors referenced by the identification unit 13; weight information WI including information on the weight vectors identified by the identification unit 13; and objective function information OFI defining the objective function referenced by the identification unit 13 and the update unit 16. Details of each of the above information will be described later, so a description thereof will be omitted here.

[0080] (Control Unit 10A) As shown in FIG. 6, the control unit 10A includes an acquisition unit 11, a generation unit 12, an identification unit 13, a determination unit 14, an output unit 15, and an update unit 16.

[0081] (Acquisition unit 11) The acquisition unit 11 acquires one or more data points. Here, as in the first exemplary embodiment, the specific values ​​of the data points acquired by the acquisition unit 11 and the data relating to what object the data points indicate do not limit this exemplary embodiment. Furthermore, the term "data point" is used simply because the data points may correspond to points in a search target space, which will be described later, and this term does not limit this exemplary embodiment.

[0082] In this exemplary embodiment, the data points acquired by the acquisition unit 11 are expressed as a set of multiple values, for example. Alternatively, the data points may be expressed in the form of a vector having these multiple values ​​as components. The dimension of the vector (in other words, the number of values ​​included in the data points) does not limit this exemplary embodiment.

[0083] As an example, when the information processing device 1A is used to optimize the scheduling of multiple workers (e.g., multiple medical professionals), the acquisition unit 11 may acquire data points including values ​​such as the time periods when each worker is available to work, the proficiency level of each worker, the wage per unit time of each worker, etc. In this case, the number of dimensions of the data points will be three or more.

[0084] Furthermore, the data points acquired by the acquisition unit 11 may be, for example, data points optimized by a preliminary optimization process, as in exemplary embodiment 1. In such a configuration, the information processing device 1A can be regarded as a device that executes a further optimization process by referring to the data points.

[0085] (Generation unit 12) The generation unit 12 refers to a plurality of data points including the data points acquired by the acquisition unit 11, and generates an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of boundary data points.

[0086] The internal polyhedron and external polyhedron generated by the generator 12 have been described in the first exemplary embodiment and will be described later in this exemplary embodiment, so a description thereof will be omitted here. Note that the specific algorithms used by the generator 12 to generate the internal polyhedron and the external polyhedron do not limit this exemplary embodiment. Furthermore, the internal polyhedron (or at least a part of the external polyhedron) generated by the generator 12 can be considered to correspond to a so-called feasible region in the search space, but this does not limit this exemplary embodiment.

[0087] (Identification unit 13) The identification unit 13 identifies a target weight vector from a set of weight vectors by referring to the difference between an optimization result obtained by referencing the data points included in the internal polyhedron and an optimization result obtained by referencing the data points included in the external polyhedron. Here, the set of weight vectors is calculated by referring to the internal polyhedron, for example.

[0088] For example, the identification unit 13 may be configured to identify, as the target weight vector, a weight vector that has the largest difference among the weight vectors included in the set. Alternatively, for example, the identification unit 13 may be configured to identify, as the target weight vector, a weight vector that has the largest linear combination of the difference and an additional term among the weight vectors included in the set.

[0089] Furthermore, the optimization result with reference to the data points included in the internal polyhedron is, for example, the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the internal polyhedron to an objective function defined by one or more data points and a weight vector, and the optimization result with reference to the data points included in the external polyhedron is, for example, the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the external polyhedron to an objective function defined by one or more data points and a weight vector.

[0090] More specific processing by the identification unit 13 will be described later. In the above description, the term "weight vector" is used because each component of the vector can be considered as a weight by which each data value included in an objective function described later, for example. However, this term does not limit the present exemplary embodiment, and the vector may simply be referred to as a parameter, or a parameter that defines the objective function (reward function).

[0091] (Determination Unit 14) The determination unit 14 determines whether or not the target weight vector identified by the identification unit 13 satisfies a predetermined convergence condition. Specific processing by the determination unit 14 will be described later.

[0092] (Output Unit 15) The output unit 15 outputs various data derived by each unit included in the control unit 10A via the input / output unit 17A. As an example, the output unit 15 outputs the weight vector of the target identified by the identification unit 13 via the input / output unit 17A. For example, the output unit 15 visually presents the weight vector of the target identified by the identification unit 13 to the user via a display included in the input / output unit 17A.

[0093] Furthermore, when the target weight vector identified by the identification unit 13 satisfies a predetermined convergence condition, the output unit 15 outputs at least one of one or more data points included in the internal polyhedron and one or more data points included in the external polyhedron. For example, the output unit 15 visually presents at least one of one or more data points included in the internal polyhedron and one or more data points included in the external polyhedron to a user via a display provided in the input / output unit 17A.

[0094] (Update unit 16) When the weight vector of the target identified by the identification unit 13 does not satisfy a predetermined convergence condition, the update unit 16 updates the inner polyhedron and the outer polyhedron by referring to the weight vector of the target identified by the identification unit 13. Specific processing by the update unit 16 will be described later.

[0095] (Processing flow by information processing device 1A) Next, the processing flow by information processing device 1A will be described with reference to FIG. 7. FIG. 7 is a flow diagram showing the processing flow by information processing device 1A. As shown in FIG. 7, the processing flow includes repeated processing, and n may be used as an index for the repetition. Furthermore, the processing flow described below may be referred to as a "non-local search," but this term does not limit this exemplary embodiment.

[0096] (Step S11) In step S11, the acquisition unit 11 acquires one or more data points. The specific processing by the acquisition unit 11 has been described above, and therefore will not be described here.

[0097] (Step S12) Subsequently, in step S12, the generation unit 12 references a plurality of data points including the data points acquired in step S11, and generates an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of boundary data points.

[0098] 8 shows an example of an internal polyhedron and an external polyhedron generated by the generator 12 according to this exemplary embodiment. In the example shown in FIG. 8, some of the multiple data points including the data points acquired by the acquirer 11 are located within the search space at a(θ (1) ), and a(θ (2) ) As shown in FIG. 8, the data point a(θ (1) ), and a(θ (2) ) is a weight vector θ (1) , and θ (2) Here, the weight vector is obtained by the acquisition unit 11 using the data point a(θ (1) ), and a(θ (2) ) or may be determined by the above-mentioned preliminary optimization process.

[0099] As an example, the generating unit 12 generates a data point a(θ (1) ), and a(θ (2) ) and the data point a(θ (1) ), and a(θ (2)) as vertices. As shown in FIG. 8, the internal polyhedron is generated by dividing the vertices a(θ (1) ), and a(θ (2) ), and edges (faces, cells) E1, E2, and E3.

[0100] On the other hand, the generating unit 12 according to this exemplary embodiment generates the following data points a(θ (1) ), and a(θ (2) ), and the weight vector θ (1) , and θ (2) Refer to θ (1) and a(θ (1) ) and the conditional expression θ (1)T (a(θ (1) )-a)=0, and θ (2) and a(θ (2) ) and the conditional expression θ (2)T (a(θ (2) ) - a) = 0, and generate an external polyhedron (external polygon, external hyperpolyhedron) that includes these faces (edges, cells) L1 and L2.

[0101] Here, the superscript "T" of the weight vector θ indicates the transposition of the weight vector. As shown in FIG. 8, the outer polyhedron has, for example, edges (faces, cells) L1 and L2, and a vertex a (0) The present invention is configured to include the following.

[0102] Note that the present exemplary embodiment is not limited to the specific algorithms used by the generator 12 to generate the inner polyhedron and the outer polyhedron. Also, the inner polyhedron (or at least a part of the outer polyhedron) generated by the generator 12 can be considered to correspond to a so-called feasible region in the search space, but this is not a limitation of the present exemplary embodiment.

[0103] The inner polyhedron and outer polyhedron generated in this process relating to the n-th step (the step defined by the repeat index n) are respectively referred to as inner polyhedron An and outer polyhedron Q n It is sometimes written as:

[0104] In addition, the internal polyhedron A generated in this process relating to the 0th step (the step defined by the repetition index n=0, the first step of the repetition) 0 As an example, Thus, the inner polyhedron A 0 is defined as a set of data points a(θ(i)) that define the vertices of the polygonal polyhedron Q (where i is an index for identifying the data points). 0 As an example, As shown above, the boundary surface (boundary line, boundary cell) θ (i)T (a(θ (i) )-a)=0.

[0105] (Step S13-1) Subsequently, in step S13-1, the specifying unit 13 determines the internal polyhedron A n From the boundary point set U(A n , Φ) is calculated. Here, Φ is, for example, a convex polyhedral cone, and corresponds to the space spanned by the weight vectors described above. More specifically, Φ corresponds to the space closed by the weighted average and scalar multiplication of the weight vectors described above. Therefore, it may be expressed as "the space spanned by the weight vectors described above is a convex polyhedral cone," or it may be expressed as "the space closed by the weighted average and scalar multiplication of the weight vectors described above is a convex polyhedral cone." In this way, the boundary point set U(A n , Φ) includes a set of weight vectors, so the boundary point set U(A n , Φ) is sometimes called a set of weight vectors.

[0106] More generally, the boundary point set U derived by the specifying unit 13 can be expressed as follows using a polyhedron P and a convex cone Φ: Here, Equation 3-2 indicates that the convex conical hull of the set U(x, P, Φ) is (x−P) Vand Φ, where (x-P) V represents a dual cone (more specifically, a dual convex cone), In general, for a set S, the convex hull of S is denoted as CC S, and It is defined by

[0107] Furthermore, Equation 3-1 indicates that the boundary point set U(P, Φ) is defined by the union of the sets U(x, P, Φ) on the boundary of the polyhedron P. is a finite set that satisfies (Equation 3-2).

[0108] (Step S13-2) Subsequently, in step S13-2, the identification unit 13 refers to the boundary point set calculated in step S13-1, and identifies, from the set of weight vectors obtained by referring to the internal polyhedron (boundary point set U), the weight vector that has the largest difference between the optimization result obtained by referring to the data points included in the internal polyhedron and the optimization result obtained by referring to the data points included in the external polyhedron, as the target weight vector.

[0109] As an example, in this step S13-2 relating to the n-th step, the specifying unit 13: n , Φ), the objective function to be optimized is n or inner polyhedron A n and the boundary point set U(A n , Φ) and the weight vector φ included in T Using x, By this, the target weight vector φ 0 Identify.

[0110] (Step S14) Subsequently, in step S14, the specifying unit 13 determines whether the weight vector calculated in step S13 satisfies a predetermined convergence condition. As an example, the specifying unit 13 determines whether the weight vector φ 0is given by the following formula: Here, the predetermined condition is whether the inner polyhedron A n and the weight vector φ of the above object 0 First optimization result using the objective function defined by and the outer polyhedron Q n and the weight vector φ of the above object 0 Second optimization result using the objective function defined by In other words, in step S14, the specifying unit 13 determines whether the difference between the internal polyhedron A n and outer polyhedron Q n It can also be expressed as determining whether the difference between the

[0111] If the weight vector calculated in step S13 satisfies a predetermined convergence condition (YES in step S14), the process proceeds to step S15; otherwise, the process proceeds to step S16-1.

[0112] The first optimization result can also be expressed as the result of an optimization process using reinforcement learning that references an objective function obtained by applying data points included in the internal polyhedron to an objective function defined by one or more data points and a weight vector.

[0113] Furthermore, as an example, the second optimization result can also be expressed as the result of an optimization process using reinforcement learning that references an objective function obtained by applying data points included in the outer polyhedron to an objective function defined by one or more data points and a weight vector.

[0114] (Step S15) If the weight vector calculated in step S13 satisfies a predetermined convergence condition, in step S15, the output unit 15 outputs the inner polyhedron and outer polyhedron generated (updated) in step S12 or step S16-2. As an example, in this step S15 related to the n-th step, the output unit 15 outputs the inner polyhedron A generated by the generation unit 12 in step S16-2 related to the n-th step. n and outer polyhedron Qn More specifically, as an example, the output unit 15 outputs the inner polyhedron A n and one or more data points contained in the outer polyhedron Q n In this step, the output unit 15 outputs one or more data points included in the target weight vector φ 0 may be output.

[0115] (Steps S16-1 and S16-2) If the weight vector calculated in step S13 does not satisfy a predetermined convergence condition, the update unit 16 updates the target weight vector φ identified by the identification unit 13 in step S13-2. 0 The inner polyhedron and the outer polyhedron are updated by referring to the above.

[0116] As an example, in step S16-1 relating to the n-th step, the update unit 16 updates the target weight vector φ identified by the identification unit 13 in step S13-2. 0 The objective function φ 0 T The optimization process using x yields an optimized solution (also called a new data point) a(φ 0 ) is derived.

[0117] FIG. 8 shows the optimization solution a(φ 0 ) is derived within a region DR, which is the region inside the exterior polyhedron and outside the interior polyhedron.

[0118] Then, in step S16-2 relating to the n-th step, the update unit 16 updates the internal polyhedron A as follows: n and outer polyhedron Q n and update. In other words, in step S16-2, the update unit 16 updates the inner polyhedron A associated with the index n. n and the new data point a(φ 0 ) as a union of the inner polyhedron A associated with index n+1 n+1 is defined, and the outer polyhedron Q associated with index n n and the new data point a(φ 0 ) and the target weight vector φ 0The boundary φ defined by 0 T (a(φ 0 )-a)=0, the outer polyhedron Q corresponding to index n+1 n+1 is prescribed.

[0119] In other words, in steps S16-1 and S16-2, the update unit 16 calculates the weight vector φ of the target identified by the identification unit 13. 0 The objective function φ 0 T Calculate new data points by an optimization process using x, and update the interior and exterior polyhedra to include the new data points.

[0120] Then, the processes from step S13-1 onwards are carried out by referring to the internal polyhedron and external polyhedron updated in this step.

[0121] (Additional Note 1 Regarding Information Processing Device 1A) In the above-described step S13-2, the specification unit 13 uses the following formula instead of (Formula 7): By this, the target weight vector φ 0 In other words, the specification unit 13 may be configured to specify: a difference between an optimization result obtained by referring to data points included in the internal polyhedron and an optimization result obtained by referring to data points included in the external polyhedron; and an additional term F n The weight vector that maximizes the linear combination of (φ) and is defined as the target weight vector φ 0 It may be configured to specify it as follows.

[0122] Here, the additional term F n (φ) is the target weight vector φ 0 Or the optimal solution a(φ 0 For example, the additional term F is set to a positive value for a weight vector φ that satisfies a predetermined condition and to a value of 0 for other weight vectors φ. n (φ), the weight vector that satisfies the predetermined condition is the target weight vector φ 0 This can make it more likely to be selected.

[0123] Also, such an additional term F n For example, (φ) can be configured to be set by the user. For example, the acquisition unit 11 acquires a user input via the input / output unit 17A, and the specification unit 13 determines an additional term F n (φ) can be set.

[0124] (Additional Note 2 Regarding Information Processing Device 1A) The processing by information processing device 1A can also be expressed by the following pseudo code, for example. Here, the first line of the pseudo code 13 indicates the data point a(θ (i) ) In step S12, the inner polyhedron A 0 and outer polyhedron Q 0 The first line of the pseudo code 13 corresponds to the process of generating the data point a(θ (i) ) has undergone a prior optimization process.

[0125] Furthermore, the "while" loop in lines 2 to 6 of the pseudo code 13 corresponds to the repeated execution of the processes in steps S13-1 to S16-2 described above until the convergence condition described above is satisfied.

[0126] Moreover, the third line of the pseudo code 13 corresponds to the above-mentioned step S13-2, and the fourth and fifth lines of the pseudo code 11 correspond to the above-mentioned step S16-2.

[0127] (Effects of information processing device 1A) The information processing device 1A configured as described above has the same configuration as the information processing device 1 according to exemplary embodiment 1: acquire one or more data points; reference multiple data points including the acquired data points to generate an internal polyhedron defined by the multiple data points and an external polyhedron defined by the multiple data points; and identify a target weight vector from a set of weight vectors obtained by reference to the internal polyhedron by reference to the difference between an optimization result obtained by reference to data points included in the internal polyhedron and an optimization result obtained by reference to data points included in the external polyhedron. Therefore, the information processing device 1A has the same effects as the information processing device 1 according to exemplary embodiment 1.

[0128] Furthermore, as explained in steps S13-1 to S16-2, the information processing device 1A repeats the following processes until the convergence condition (step S14) is satisfied: identify the target weight vector that results in the largest difference between the optimization result obtained by referencing the data points included in the internal polyhedron and the optimization result obtained by referencing the data points included in the external polyhedron (step S13-2); derive an optimal solution through an optimization process using the weight vector (step S16-1); and update the internal polyhedron and external polyhedron using the optimal solution (step S16-2).

[0129] By performing such processing, the information processing device 1A can preferably execute optimization processing relating to at least one of the weight vectors and the data points.

[0130] The information processing device 1A also performs the following processes: calculates a boundary point set U from the internal polyhedron (step S13-1), and refers to the boundary point set U, and from the set of weight vectors (boundary point set U) obtained by referring to the internal polyhedron, identifies, as a target weight vector (step S13-2), a weight vector that has the largest difference between the optimization result obtained by referring to the data points included in the internal polyhedron and the optimization result obtained by referring to the data points included in the external polyhedron. By employing such a configuration, the boundary point set can be suitably calculated, and by using the boundary point set, the objective function φ TThis allows for high-speed optimization.

[0131] According to the inventor, when conv h(X) is a convex body (a bounded convex set having an interior point), for a set of parameters Φ (the set of weight vectors mentioned above as an example) that defines a convex polyhedral cone (convex cone hull), It is theoretically guaranteed that the following is satisfied. Here, the set S(Φ) is is defined by

[0132] Although the present exemplary embodiment does not limit the type of optimization problem to which the information processing device 1A is applied, the information processing device 1A can be suitably applied, for example, when it is desired to know the behavior of the optimal solution a(φ) for each weight vector while varying the weight vector φ. For example, the information processing device 1A can be suitably applied to shift scheduling related to people and goods, train timetables, order planning, multi-objective reinforcement learning, etc.

[0133] [Third Exemplary Embodiment] A third exemplary embodiment, which is an example of an embodiment of the present invention, will be described in detail with reference to the drawings. Components having the same functions as those described in the above exemplary embodiment will be denoted by the same reference numerals, and their description will be omitted as appropriate. The scope of application of each technical means employed in this exemplary embodiment is not limited to this exemplary embodiment. That is, each technical means employed in this exemplary embodiment can also be employed in other exemplary embodiments included in the present disclosure, to the extent that no particular technical hindrance occurs. Furthermore, each technical means shown in each drawing referenced to describe this exemplary embodiment can also be employed in other exemplary embodiments included in the present disclosure, to the extent that no particular technical hindrance occurs.

[0134] (Configuration of Information Processing System 200A) The configuration of the information processing system 200A according to this exemplary embodiment will be described with reference to Fig. 9. Fig. 9 is a block diagram showing the configuration of the information processing system 200A. As shown in Fig. 9, the information processing system 200A includes an information processing device 2A and a terminal device 4A that is communicatively connected to the information processing device 2A via a network N. The network N and the terminal device 4A are the same as those in the second exemplary embodiment, and therefore will not be described here.

[0135] 9, the information processing device 2A includes a control unit 20A, a storage unit 25A, a communication unit 16A, and an input / output unit 17A. Here, the communication unit 16A and the input / output unit 17A are the same as those in the second exemplary embodiment, and therefore description thereof will be omitted here.

[0136] (Storage Unit 25A) Similar to the information processing device 1A, the storage unit 25A stores various data referenced by the control unit 20A and various data generated by the control unit 20A. For example, the storage unit 25A stores the following: data point information DPI including one or more data points acquired by the acquisition unit 11; internal polyhedron information IPI including information defining the internal polyhedron generated by the generation unit 12; external polyhedron information OPI including information defining the internal polyhedron generated by the generation unit 12; boundary point set BPI including a set of weight vectors referenced by the identification unit 13; weight information WI including information on the weight vectors identified by the identification unit 13; and objective function information OFI defining the objective function referenced by the identification unit 13 and the update unit 16. Regarding the above information, the items described in the second exemplary embodiment will not be described again. Furthermore, as shown in FIG. 9 , a difference set DI is stored in the storage unit 25A. Details of the difference set DI will be described later.

[0137] 9, the control unit 20A includes an acquisition unit 11, a generation unit 12, an identification unit 23, a determination unit 24, an output unit 15, an update unit 16, and a storage unit 27. Here, with regard to the acquisition unit 11, the generation unit 12, the output unit 15, and the update unit 16, the matters explained in the second exemplary embodiment will not be explained again.

[0138] (Identification unit 23) The identification unit 23 identifies a target weight vector from a difference set between the set of weight vectors in the current step and the set of weight vectors in the previous step by referring to the difference between the optimization result in the current step that references the data points included in the internal polyhedron and the optimization result in the current step that references the data points included in the external polyhedron. Here, the set of weight vectors in the current step is calculated by referring to the internal polyhedron in the current step, and the set of weight vectors in the previous step is calculated by referring to the internal polyhedron in the previous step.

[0139] For example, the identification unit 23 may be configured to identify, as the target weight vector, a weight vector that has the largest difference among the weight vectors included in the set. Alternatively, for example, the identification unit 23 may be configured to identify, as the target weight vector, a weight vector that has the largest linear combination of the difference and an additional term among the weight vectors included in the set.

[0140] Furthermore, the optimization result with reference to the data points included in the internal polyhedron is, for example, the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the internal polyhedron to an objective function defined by one or more data points and a weight vector, and the optimization result with reference to the data points included in the external polyhedron is, for example, the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the external polyhedron to an objective function defined by one or more data points and a weight vector.

[0141] More specific processing by the identification unit 23 will be described later. In the above description, the term "weight vector" is used because each component of the vector can be considered as a weight by which each data value included in an objective function described later, for example. However, this term does not limit the present exemplary embodiment, and the vector may simply be referred to as a parameter, or a parameter that defines the objective function (reward function), or the like.

[0142] (Determination Unit 24) The determination unit 24 determines whether or not the target weight vector identified by the identification unit 23 satisfies a predetermined convergence condition. Specific processing by the determination unit 24 will be described later.

[0143] (Storage unit 27) The storage unit 27 stores a set of: a weight vector included in the difference set; and a difference between an optimization result using the weight vector and referring to data points included in the internal polyhedron at the current step, and an optimization result using the weight vector and referring to data points included in the external polyhedron at the current step.

[0144] Furthermore, the storage unit 27 excludes a pair of the target weight vector identified by the identification unit and the difference corresponding to the target weight vector from the plurality of stored pairs. Specific processing by the storage unit 27 will be described later.

[0145] (Processing flow by information processing device 2A) Next, the processing flow by information processing device 2A will be described with reference to FIG. 10. FIG. 10 is a flow diagram showing the processing flow by information processing device 2A. As shown in FIG. 10, the processing flow includes repetitive processing, and as in exemplary embodiment 2, n may be used as an index for the repetition. Furthermore, the processing flow described below may be referred to as a "local search," but this term does not limit this exemplary embodiment.

[0146] (Step S11) In step S11, the acquisition unit 11 acquires one or more data points. The specific processing by the acquisition unit 11 is the same as in the first and second exemplary embodiments, and therefore will not be described here.

[0147] (Step S12) Subsequently, in step S12, the generation unit 12 references a plurality of data points including the data points acquired in step S11, and generates an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of boundary data points.

[0148] Fig. 11 shows examples of the internal polyhedron and the external polyhedron generated by the generator 12 according to this exemplary embodiment. Except for the points described below, Fig. 11 includes the same matters as those described using Fig. 8 in the exemplary embodiment 2, and therefore, a description of these matters will be omitted.

[0149] As in the second exemplary embodiment, the inner polyhedron and the outer polyhedron generated in this process relating to the n-th step (the step defined by the repeat index n) are respectively referred to as inner polyhedron A n and outer polyhedron Q n It is sometimes written as:

[0150] In addition, the internal polyhedron A generated in this process relating to the 0th step (the step defined by the repetition index n=0, the first step of the repetition) 0 As an example, similar to the second exemplary embodiment, Thus, the inner polyhedron A 0 is defined as a set of data points a(θ(i)) that define the vertices of the polygonal polyhedron Q (where i is an index for identifying the data points). 0 As an example, As shown above, the boundary surface (boundary line, boundary cell) θ (i)T (a(θ (i) )-a)=0.

[0151] (Step S23-1) Subsequently, in step S23-1, the specifying unit 23 determines the internal polyhedron A n From the boundary point set U(A n , Φ) is calculated. Here, Φ is, for example, a convex polyhedral cone (convex conical hull), which corresponds to the space spanned by the weight vectors described above. In other words, the space spanned by the weight vectors described above is a convex polyhedral cone. In this way, the boundary point set U(A n , Φ) includes a set of weight vectors, as in the first exemplary embodiment, so that the boundary point set U(A n , Φ) is sometimes called a set of weight vectors.

[0152] In step S23-1, the specifying unit 23 calculates a difference set between the set of weight vectors in the current step and the set of weight vectors in the previous step. As an example, the specifying unit 23 calculates a boundary point set U(A n , Φ) and the boundary point set U(A n-1 , Φ), the difference set Calculate.

[0153] (Step S27-1) Subsequently, in step S27-1, the accumulation unit 27 accumulates a set of: a weight vector included in the set or difference set calculated in step S23-1; and a difference between an optimization result using the weight vector and referring to data points included in the internal polyhedron at the current step, and an optimization result using the weight vector and referring to data points included in the external polyhedron at the current step.

[0154] As an example, in this step S27-1 relating to the 0th step (a step designated by a repeat index=0), the identifying unit 23 or the accumulating unit 27 determines the boundary point set U(A 0 For each weight vector φ included in and a set S having pairs of weight vectors φ and errors E(φ) as elements is constructed by S={(E(φ), φ)}. In other words, pairs of weight vectors φ and errors E(φ) are stored in set S.

[0155] As another example, in this step S27-1 relating to the n+1th step (the step designated by the repeat index=n+1), the specifying unit 23 or the storage unit 27 For each weight vector φ in and adds a set (E(φ), φ) of the weight vector φ and the error E(φ) to the set S. In other words, the set of the weight vector φ and the error E(φ) is accumulated in the set S. Note that in this example, the identifying unit 23 or the accumulating unit 27 may be configured to add a set (E(φ), φ) including the error E(φ) to the set S if the error E(φ) is greater than a predetermined value ε, that is, if E(φ)>ε is satisfied.

[0156] The set S is expressed as follows, using the index j assigned to each weight vector: S={(E(φ j ), φ j ) j It can also be written as:

[0157] Furthermore, the first term on the right-hand side of the above (Equation 19) or (Equation 21) can also be expressed as, for example, the result of an optimization process using reinforcement learning that references an objective function obtained by applying data points included in the outer polyhedron to an objective function defined by one or more data points and a weight vector.

[0158] Furthermore, the second term on the right-hand side of the above (Equation 19) or (Equation 21) can also be expressed as the result of an optimization process using reinforcement learning that references an objective function obtained by applying the data points included in the internal polyhedron to an objective function defined by one or more data points and a weight vector.

[0159] (Step S23-2) Subsequently, in step S23-2, the identification unit 23 identifies, from the difference set between the set of weight vectors in the current step and the set of weight vectors in the previous step, the weight vector that has the largest difference (error) between the optimization result in the current step using data points included in the internal polyhedron and the optimization result in the current step using data points included in the external polyhedron, as the target weight vector.

[0160] As an example, the specifying unit 23 calculates S={(E(φ j ), φ j ) j From E(φ j ) is the weight vector (target weight vector) φ jIdentify.

[0161] (Step S27-2) Subsequently, in step S27-2, the identifying unit 23 or the storage unit 27 identifies the target weight vector φ j and the discrepancy (error) E(φ j ) and the pair (E(φ j ), φ j ) are excluded.

[0162] (Step S24) Subsequently, in step S24, the determination unit 24 determines whether the weight vector calculated in step S23-2 satisfies a predetermined convergence condition. As an example, the determination unit 24 determines whether set S has become an empty set by excluding from set S a set including the weight vector identified in step S23-2. In other words, the identification unit 24 determines whether the set including the weight vector identified in step S23-2 was the last element in set S.

[0163] The number of weight vectors included in set S will be explained more specifically as follows. As described above, in step S27-1, pairs of weight vectors and errors corresponding to the weight vectors are accumulated in set S. Also, as described above, in step S27-1, a process of accumulating a weight vector when the error is larger than a predetermined value ε may be performed. On the other hand, in step S27-2, a pair of a target weight vector and an error corresponding to the target weight vector is excluded from set S. Therefore, in the repetition of steps, if the number of pairs excluded in step S27-2 exceeds the number of pairs accumulated in step S27-1, the number of pairs included in set S decreases. Then, when the number of pairs included in set S becomes 0, the determination unit 24 determines that a predetermined convergence condition has been satisfied. In other words, the predetermined condition can also be expressed as "the above-mentioned set S becoming an empty set."

[0164] If the weight vector satisfies the predetermined convergence condition (YES in step S24), the process proceeds to step S15; if not, the process proceeds to step S16-1.

[0165] (Step S15) If the weight vector identified in step S23-2 satisfies a predetermined convergence condition, in step S15, the output unit 15 outputs the inner polyhedron and outer polyhedron generated (updated) in step S12 or step S16-2. As an example, in this step S15 for the n-th step, the output unit 15 outputs the inner polyhedron A generated by the generation unit 12 in step S16-2 for the n-th step. n and outer polyhedron Q n More specifically, as an example, the output unit 15 outputs the inner polyhedron A n and one or more data points contained in the outer polyhedron Q n In this step, the output unit 15 outputs one or more data points included in the target weight vector φ j may be output.

[0166] (Steps S16-1 and S16-2) If the weight vector calculated in step S23-2 does not satisfy a predetermined convergence condition, the update unit 16 updates the target weight vector φ identified by the identification unit 13 in step S23-2. j The inner polyhedron and the outer polyhedron are updated by referring to the above.

[0167] As an example, in step S16-1 relating to the n-th step, the update unit 16 updates the target weight vector φ identified by the identification unit 13 in step S23-2. j The objective function φ j T The optimization process using x yields an optimized solution (also called a new data point) a(φ j ) is derived.

[0168] FIG. 11 shows the optimization solution a(φ j ) is derived within a region DR, which is the region inside the exterior polyhedron and outside the interior polyhedron.

[0169] Then, in step S16-2 relating to the n-th step, the update unit 16 updates the internal polyhedron A as follows: n and outer polyhedron Q n and update. In other words, in step S16-2, the update unit 16 updates the inner polyhedron A associated with the index n. n and the new data point a(φ j ) as a union of the inner polyhedron A associated with index n+1 n+1 is defined, and the outer polyhedron Q associated with index n n and the new data point a(φ j ) and the target weight vector φ 0 The boundary φ defined by j T (a(φ j )-a)=0, the outer polyhedron Q corresponding to index n+1 n+1 is prescribed.

[0170] In other words, in steps S16-1 and S16-2, the update unit 16 calculates the weight vector φ of the target identified by the identification unit 23. j The objective function φ j T Calculate new data points by an optimization process using x, and update the interior and exterior polyhedra to include the new data points.

[0171] Then, the processes from step S23-1 onwards are carried out by referring to the internal polyhedron and external polyhedron updated in this step.

[0172] (Additional Note 1 Regarding Information Processing Device 2A) In the above-described step S23-2, the identifying unit 23 or the accumulating unit 27 uses the following formula instead of (Formula 21): Then, in step S23-2, the specifying unit 23 calculates, from the difference set, the difference between the optimization result obtained by referring to the data points included in the internal polyhedron in the current step and the optimization result obtained by referring to the data points included in the external polyhedron in the current step. and, additional term F n+1 The weight vector that maximizes the E(φ), which is a linear combination of (φ) and j It may be configured to specify it as follows.

[0173] Here, the additional term Fn+1 (φ) is the target weight vector φ j Or the optimal solution a(φ j For example, the weight vector φ that satisfies a predetermined condition can be set in advance so that the search process for the weight vector φ is desired. j and an additional term F n+1 (φ), the weight vector that satisfies the predetermined condition is the target weight vector φ j This can make it more likely to be selected.

[0174] Also, such an additional term F n+1 For example, (φ) can be configured to be set by the user. For example, the acquisition unit 11 acquires a user input via the input / output unit 17A, and the specification unit 23 determines an additional term F n+1 (φ) can be set.

[0175] (Additional Note 2 Regarding Information Processing Device 2A) The processing by information processing device 2A can also be expressed by the following pseudo code, for example. Here, the first line of the pseudo code 25 indicates the data point a(θ (i) ) In step S12, the inner polyhedron A 0 and outer polyhedron Q 0 The first line of the pseudo code 25 corresponds to the process of generating the data point a(θ (i) ) has undergone a prior optimization process.

[0176] Moreover, the fourth and fifth lines of the pseudo code 25 correspond to step S27-1 relating to the 0th step (the step defined by the repetition index n=0, the first step of the repetition).

[0177] Furthermore, the seventh line of the pseudo code 25 corresponds to step S23-2 and step S27-2, the eighth line of the pseudo code 25 corresponds to step S16-1, and the ninth line of the pseudo code 25 corresponds to step S16-2.

[0178] Moreover, lines 10 to 13 of the above pseudo code correspond to step S23-1 and step S27-1 relating to steps other than the 0th step.

[0179] (Additional Note 3 Regarding Information Processing Device 2A) The processing by information processing device 2A is not limited to the example described above. Below, a modified example of the processing by information processing device 2A will be described. In this example, in the processing by information processing device 2A described with reference to FIG. 10, step S27-1 and step S23-2 may be performed as follows. A description of steps that are substantially similar to those in the processing by information processing device 2A described with reference to FIG. 10 will be omitted.

[0180] (Step S27-1) In step S27-1 according to this example, the accumulation unit 27 accumulates the set (boundary point set U(A n , Φ)) should be executed (non-local search), or whether a process should be executed (local search) with reference to the difference set (Equation 18) calculated in step S23-1 should be executed.

[0181] Then, when it is determined that a non-local search is to be performed, the accumulation unit 27 accumulates a set (φ, E(φ)) of: a weight vector φ included in the set calculated in step S23-1, and a difference E(φ) between an optimization result using the weight vector and referring to data points included in the inner polyhedron in the current step, and an optimization result using the weight vector and referring to data points included in the outer polyhedron in the current step, in a set S. Here, the difference can be calculated by applying the above-mentioned (Equation 21) or (Equation 23) to the weight vector φ included in the boundary point set calculated in step S23-1.

[0182] On the other hand, if it is determined that a local search is to be performed, the accumulation unit 27 accumulates in a set S a pair (φ, E(φ)) of: a weight vector φ included in the difference set calculated in step S23-1; and a difference E(φ) between the optimization result using the weight vector and referring to the data points included in the internal polyhedron at the current step, and the optimization result using the weight vector and referring to the data points included in the external polyhedron at the current step.

[0183] For example, the control unit 20A according to this example may make the above determination by referring to a flag indicating whether a non-local search or a local search should be performed. Note that the processing of this step when it is determined that a non-local search should be performed may include the processing described as step S13-1 in FIG. 7. Also, the processing of this step when it is determined that a local search should be performed may include the processing described as step S27-1 from the contents described in "(Flow of processing by the information processing device 2A)."

[0184] (Step S23-2) Then, in step S23-2 according to this example, the specifying unit 23 determines the difference E(φ j ) is the largest weight vector φ j is identified as the weight vector of interest.

[0185] Note that the processing of this step when a non-local search is performed may include the processing described as step S13-2 in Fig. 7. Furthermore, the processing of this step when a local search is performed may include the processing described as step S23-2 from the contents described in "(Processing flow by information processing device 2A)".

[0186] Furthermore, the processing according to this modified example by the information processing device 2A can also be expressed by the following pseudo code, for example. Here, the pseudo code 26 further includes the processing of lines 7 to 9 compared to the pseudo code 25 described above, but the other processing is substantially the same. For example, the processing of lines 7 to 9 includes the following: For a pair (E(φ), φ) included in the set S, if the value of the update flag for (E(φ), φ) is true, the error E(φ) is calculated as follows: This can be expressed as a process of updating the

[0187] Furthermore, the difference set in the pseudo code 26 may be appropriately read as a boundary point set when performing a non-local search, as described above.

[0188] (Effects of information processing device 2A) The information processing device 2A configured as described above has the same configuration as the information processing device 2 according to exemplary embodiment 1: acquire one or more data points; refer to a plurality of data points including the acquired data points to generate, for each step, an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of data points; and identify a target weight vector from a difference set between a set of weight vectors obtained by referencing the internal polyhedron in the current step and a set of weight vectors obtained by referencing the internal polyhedron in the previous step by referencing the difference between an optimization result obtained by referencing the data points included in the internal polyhedron in the current step and an optimization result obtained by referencing the data points included in the external polyhedron in the current step. Therefore, the information processing device 2A has the same effects as the information processing device 2 according to exemplary embodiment 1.

[0189] Furthermore, as explained in steps S23-1 to S16-2, the information processing device 2A repeats the following processes until the convergence condition (step S24) is satisfied: identify the target weight vector that results in the largest difference between the optimization result obtained by referencing the data points included in the internal polyhedron and the optimization result obtained by referencing the data points included in the external polyhedron (step S23-2); derive an optimal solution through an optimization process using the weight vector (step S16-1); and update the internal polyhedron and external polyhedron using the optimal solution (step S16-2).

[0190] By performing such processing, the information processing device 2A can preferably execute optimization processing relating to at least one of the weight vectors and the data points.

[0191] The information processing device 2A also performs the following processes: Calculates a boundary point set U from the internal polyhedron in each step (step S23-1), Calculates a difference set between the boundary point set (set of weight vectors) in the current step and the boundary point set (set of weight vectors) in the previous step (step S23-1), and Identifies, from the difference set, the weight vector that produces the largest difference (error) between the optimization result in the current step using data points included in the internal polyhedron and the optimization result in the current step using data points included in the external polyhedron as the target weight vector (step S23-2). By employing such a configuration, it is possible to suitably calculate the boundary point set, and by using the boundary point set, it is possible to optimize the objective function φ T Optimization using x can be performed at high speed.

[0192] Furthermore, according to the above configuration, the target weight vector is identified from the difference set of the boundary point set, so that the objective function φ T It is possible to further speed up optimization using x.

[0193] Furthermore, as described above in Supplementary Note 3, the information processing device 2A may be configured to execute a combination of a non-local search and a local search. By adopting such a configuration, it is possible to obtain the effects of both the information processing device 1A and the information processing device 2A.

[0194] Although the present exemplary embodiment does not limit the type of optimization problem to which the information processing device 2A is applied, the information processing device 2A can be suitably applied, for example, when it is desired to know the behavior of the optimal solution a(φ) for each weight vector while varying the weight vector φ. For example, the information processing device 2A can be suitably applied to shift scheduling related to people and goods, train timetables, order planning, multi-objective reinforcement learning, etc.

[0195] (Additional notes regarding information processing device 1A and information processing device 2A) The process of generating (updating) the above-mentioned boundary point set by the identification unit 13 provided in information processing device 1A or the identification unit 23 provided in information processing device 2A can be expressed, as an example, by the following pseudocode. Here, as shown in pseudo code 28, the specifying unit 13 or 23 receives, as an input, for example, the following: A set of vertices of a convex polyhedron: n , A n+1 ・Boundary point set U(A n , Φ) Element of the difference set of a convex polyhedron: p * Then, as shown in pseudocode 28, the convex hull CC U of U is obtained as follows: Then, the boundary point set U is calculated as follows: By performing the above processing, the specifying unit 13 and the specifying unit 23 can suitably update (generate) the boundary point set.

[0196] (Application example) [Example of implementation by software] Some or all of the functions of the information processing devices 1, 1A, 2, 2A (hereinafter also referred to as "each of the above devices") may be implemented by hardware such as an integrated circuit (IC chip), or by software.

[0197] In the latter case, each of the above devices is realized by, for example, a computer that executes instructions of a program, which is software that realizes each function. An example of such a computer (hereinafter referred to as computer C) is shown in Figure 12. Figure 12 is a block diagram showing the hardware configuration of computer C that functions as each of the above devices.

[0198] The computer C includes at least one processor C1 and at least one memory C2. The memory C2 stores a program P for causing the computer C to function as each of the above-mentioned devices. In the computer C, the processor C1 reads and executes the program P from the memory C2, thereby realizing the functions of each of the above-mentioned devices.

[0199] The processor C1 may be, for example, a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a micro processing unit (MPU), a floating point number processing unit (FPU), a physics processing unit (PPU), a tensor processing unit (TPU), a quantum processor, a microcontroller, or a combination thereof. The memory C2 may be, for example, a flash memory, a hard disk drive (HDD), a solid state drive (SSD), or a combination thereof.

[0200] The computer C may further include a RAM (Random Access Memory) for expanding the program P during execution and for temporarily storing various data. The computer C may also include a communication interface for transmitting and receiving data to and from other devices. The computer C may also include an input / output interface for connecting input / output devices such as a keyboard, a mouse, a display, and a printer.

[0201] The program P can also be recorded on a non-transitory, tangible recording medium M that can be read by the computer C. Such a recording medium M can be, for example, a tape, a disk, a card, a semiconductor memory, or a programmable logic circuit. The computer C can acquire the program P via such a recording medium M. The program P can also be transmitted via a transmission medium. Such a transmission medium can be, for example, a communication network or broadcast waves. The computer C can also acquire the program P via such a transmission medium.

[0202] [Appendix A] This disclosure includes the techniques described in the following appendices. However, the present invention is not limited to the techniques described in the following appendices, and various modifications are possible within the scope of the claims.

[0203] (Appendix A1) An information processing device comprising: an acquisition means for acquiring one or more data points; a generation means for generating, at each step, an internal polyhedron defined by a plurality of data points including the data points acquired by the acquisition means and an external polyhedron defined by the plurality of data points; and an identification means for identifying a target weight vector by referring to a difference set between a set of weight vectors obtained by referring to the internal polyhedron in the current step and a set of weight vectors obtained by referring to the internal polyhedron in the previous step, between an optimization result obtained by referring to the data points included in the internal polyhedron in the current step and an optimization result obtained by referring to the data points included in the external polyhedron in the current step.

[0204] (Appendix A2) The information processing device according to appendix A1, further comprising first output means for outputting the weight vector of the target identified by the identification means.

[0205] (Supplementary Note A3) The information processing device according to Supplementary Note A1 or A2, wherein the specifying means specifies, as the target weight vector, a weight vector in which the difference is greatest among the weight vectors included in the difference set.

[0206] (Supplementary Note A4) The information processing device according to Supplementary Note A1 or A2, wherein the specifying means specifies, as the target weight vector, a weight vector that has the largest linear combination of the difference and an additional term among the weight vectors included in the difference set.

[0207] (Appendix A5) The information processing device according to appendix A4, wherein the acquiring means further acquires a user input, and the specifying means sets the additional term in accordance with the user input.

[0208] (Appendix A6) The information processing device according to any one of Appendices A1 to A5, further comprising a second output means for outputting at least one of one or more data points included in the internal polyhedron and one or more data points included in the external polyhedron when the target weight vector identified by the identification means satisfies a predetermined convergence condition.

[0209] (Appendix A7) The information processing device according to any one of Appendices A1 to A6, further comprising: an update means for updating the internal polyhedron and the external polyhedron by referring to the weight vector of the target identified by the identification means when the weight vector of the target identified by the identification means does not satisfy a predetermined convergence condition.

[0210] (Appendix A8) The information processing device according to Appendix A7, wherein the updating means calculates new data points by an optimization process using an objective function including a weight vector of the target identified by the identifying means, and updates the internal polyhedron and the external polyhedron to include the new data points.

[0211] (Appendix A9) The information processing device described in any one of Appendices A1 to A8, wherein the optimization result with reference to the data points included in the internal polyhedron is the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the internal polyhedron to an objective function defined by one or more data points and a weight vector, and the optimization result with reference to the data points included in the external polyhedron is the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the external polyhedron to an objective function defined by one or more data points and a weight vector.

[0212] (Appendix A10) The information processing device according to any one of Appendices A1 to A9, further comprising a storage means for storing pairs of a weight vector included in the difference set, and a difference between an optimization result using the weight vector and an optimization result using the weight vector with reference to data points included in an internal polyhedron at the current step, and an optimization result using the weight vector with reference to data points included in an external polyhedron at the current step, wherein the storage means excludes, from the plurality of pairs stored by the storage means, a pair of a target weight vector identified by the identification means and the difference corresponding to the target weight vector.

[0213] (Supplementary Note A11) The information processing device according to any one of Supplementary Notes A1 to A10, wherein the space spanned by the weight vectors is a convex polyhedral cone.

[0214] [Appendix B] This disclosure includes the techniques described in the following appendices. However, the present invention is not limited to the techniques described in the following appendices, and various modifications are possible within the scope of the claims.

[0215] (Supplementary Note B1) An information processing method including: an acquisition process in which at least one processor acquires one or more data points; a generation process in which the at least one processor references a plurality of data points including the data points acquired by the acquisition process and generates, for each step, an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of data points; and an identification process in which the at least one processor identifies a target weight vector from a difference set between a set of weight vectors obtained by reference to the internal polyhedron in the current step and a set of weight vectors obtained by reference to the internal polyhedron in the previous step, by reference to a difference between an optimization result in which data points included in the internal polyhedron in the current step were referenced and an optimization result in which data points included in the external polyhedron in the current step were referenced.

[0216] (Supplementary Note B2) The information processing method according to Supplementary Note B1, further comprising a first output process in which the at least one processor outputs a weight vector of the target identified by the identification process.

[0217] (Supplementary Note B3) The information processing method according to Supplementary Note B1 or B2, wherein in the identification process, the at least one processor identifies, as the target weight vector, a weight vector having the largest difference from among the weight vectors included in the difference set.

[0218] (Supplementary Note B4) The information processing method according to Supplementary Note B1 or B2, wherein in the identification process, the at least one processor identifies, as the target weight vector, a weight vector among the weight vectors included in the difference set, which weight vector has the largest linear combination between the difference and an additional term.

[0219] (Supplementary Note B5) The information processing method according to Supplementary Note B4, wherein in the acquisition process, the at least one processor further acquires a user input, and in the identification process, the at least one processor sets the additional term in response to the user input.

[0220] (Appendix B6) The information processing method according to any one of Appendices B1 to B5, further comprising a second output process in which the at least one processor outputs at least one of one or more data points included in the internal polyhedron and one or more data points included in the external polyhedron when the weight vector of the target identified by the identification process satisfies a predetermined convergence condition.

[0221] (Appendix B7) The information processing method according to any one of Appendices B1 to B6, further comprising an update process in which the at least one processor updates the internal polyhedron and the external polyhedron by referring to the weight vector of the target identified by the identification process when the weight vector of the target identified by the identification process does not satisfy a predetermined convergence condition.

[0222] (Appendix B8) The information processing method according to Appendix B7, wherein in the update process, the at least one processor calculates new data points by an optimization process using an objective function including a weight vector of the target identified by the identification process, and updates the internal polyhedron and the external polyhedron to include the new data points.

[0223] (Appendix B9) The information processing method described in any one of Appendices B1 to B8, wherein the optimization result with reference to the data points included in the internal polyhedron is the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the internal polyhedron to an objective function defined by one or more data points and a weight vector, and the optimization result with reference to the data points included in the external polyhedron is the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the external polyhedron to an objective function defined by one or more data points and a weight vector.

[0224] (Supplementary Note B10) The information processing method according to any one of Supplementary Notes B1 to B9, further comprising a storage process in which the at least one processor stores sets of: a weight vector included in the difference set; and a difference between an optimization result using the weight vector, the optimization result referring to data points included in an internal polyhedron at a current step, and an optimization result using the weight vector, the optimization result referring to data points included in an external polyhedron at a current step; wherein the storage process excludes, from the multiple sets stored by the storage process, a set of a target weight vector identified by the identification process and the difference corresponding to the target weight vector.

[0225] (Supplementary Note B11) The information processing method according to any one of Supplementary Notes B1 to B10, wherein the space spanned by the weight vectors is a convex polyhedral cone.

[0226] [Appendix C] This disclosure includes the techniques described in the following appendices. However, the present invention is not limited to the techniques described in the following appendices, and various modifications are possible within the scope of the claims.

[0227] (Appendix C1) An information processing program that causes a computer to function as an information processing device, the information processing program causing the computer to function as: an acquisition means that acquires one or more data points; a generation means that, by referencing a plurality of data points including the data points acquired by the acquisition means, generates, for each step, an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of data points; and an identification means that, from a difference set between a set of weight vectors obtained by referencing the internal polyhedron in the current step and a set of weight vectors obtained by referencing the internal polyhedron in the previous step, identifies a target weight vector by referencing the difference between an optimization result obtained by referencing the data points included in the internal polyhedron in the current step and an optimization result obtained by referencing the data points included in the external polyhedron in the current step.

[0228] (Supplementary Note C2) The information processing program according to Supplementary Note C1, which causes the computer to function as a first output means that outputs the weight vector of the target identified by the identification means.

[0229] (Supplementary Note C3) The information processing program according to Supplementary Note C1 or C2, wherein the specifying means specifies, as the target weight vector, a weight vector in which the difference is greatest among the weight vectors included in the difference set.

[0230] (Supplementary Note C4) The information processing program according to Supplementary Note C1 or C2, wherein the specifying means specifies, as the target weight vector, a weight vector that has the largest linear combination of the difference and an additional term among the weight vectors included in the difference set.

[0231] (Appendix C5) The information processing program according to Appendix C4, wherein the acquiring means further acquires a user input, and the specifying means sets the additional term in accordance with the user input.

[0232] (Appendix C6) An information processing program according to any one of Appendices C1 to C5, which causes the computer to function as a second output means for outputting at least one of one or more data points included in the internal polyhedron and one or more data points included in the external polyhedron when the weight vector of the target identified by the identification means satisfies a predetermined convergence condition.

[0233] (Appendix C7) An information processing program according to any one of Appendices C1 to C6, which causes the computer to function as an update means that updates the internal polyhedron and the external polyhedron by referring to the weight vector of the target identified by the identification means when the weight vector of the target identified by the identification means does not satisfy a predetermined convergence condition.

[0234] (Appendix C8) The information processing program according to Appendix C7, wherein the updating means calculates new data points by an optimization process using an objective function including a weight vector of the target identified by the identifying means, and updates the internal polyhedron and the external polyhedron to include the new data points.

[0235] (Appendix C9) An information processing program according to any one of Appendices C1 to C8, wherein the optimization result with reference to the data points included in the internal polyhedron is the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the internal polyhedron to an objective function defined by one or more data points and a weight vector, and the optimization result with reference to the data points included in the external polyhedron is the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the external polyhedron to an objective function defined by one or more data points and a weight vector.

[0236] (Appendix C10) The information processing program according to any one of Appendices C1 to C9, further causing the computer to function as a storage means for storing pairs of a weight vector included in the difference set, an optimization result using the weight vector with reference to data points included in an internal polyhedron at the current step, and a difference between an optimization result using the weight vector with reference to data points included in an external polyhedron at the current step, wherein the storage means excludes, from the plurality of pairs stored by the storage means, a pair of a target weight vector identified by the identification means and the difference corresponding to the target weight vector.

[0237] (Supplementary Note C11) The information processing program according to any one of Supplementary Notes C1 to C10, wherein the space spanned by the weight vectors is a convex polyhedral cone.

[0238] [Appendix D] This disclosure includes the techniques described in the following appendices. However, the present invention is not limited to the techniques described in the following appendices, and various modifications are possible within the scope of the claims.

[0239] (Supplementary Note D1) An information processing device comprising at least one processor, the at least one processor executing: an acquisition process for acquiring one or more data points; a generation process for generating, at each step, an internal polyhedron defined by a plurality of data points including the data points acquired by the acquisition process, and an external polyhedron defined by the plurality of data points; and an identification process for identifying a target weight vector from a difference set between a set of weight vectors obtained by referring to the internal polyhedron in the current step and a set of weight vectors obtained by referring to the internal polyhedron in the previous step, by referring to a difference between an optimization result obtained by referring to the data points included in the internal polyhedron in the current step and an optimization result obtained by referring to the data points included in the external polyhedron in the current step.

[0240] (Supplementary Note D2) The information processing device according to Supplementary Note D1, wherein the at least one processor executes a first output process that outputs a weight vector of a target identified by the identification process.

[0241] (Supplementary Note D3) The information processing device according to Supplementary Note D1 or D2, wherein in the identification process, the at least one processor identifies, as the target weight vector, a weight vector having the largest difference from among the weight vectors included in the difference set.

[0242] (Supplementary Note D4) The information processing device according to Supplementary Note D1 or D2, wherein in the identification process, the at least one processor identifies, as the target weight vector, a weight vector that has the largest linear combination of the difference and an additional term among the weight vectors included in the difference set.

[0243] (Supplementary Note D5) The information processing device according to Supplementary Note D4, wherein in the acquisition process, the at least one processor further acquires a user input, and in the identification process, the at least one processor sets the additional term in response to the user input.

[0244] (Appendix D6) The information processing device described in any one of Appendices D1 to D5, wherein the at least one processor executes a second output process that outputs at least one of one or more data points included in the internal polyhedron and one or more data points included in the external polyhedron when the target weight vector identified by the identification process satisfies a predetermined convergence condition.

[0245] (Appendix D7) The information processing device described in any one of Appendices D1 to D6, wherein the at least one processor executes an update process to update the internal polyhedron and the external polyhedron by referring to the weight vector of the target identified by the identification process when the weight vector of the target identified by the identification process does not satisfy a predetermined convergence condition.

[0246] (Appendix D8) The information processing device described in Appendix D7, wherein in the update process, the at least one processor calculates new data points by an optimization process using an objective function including a weight vector of the target identified by the identification process, and updates the internal polyhedron and the external polyhedron to include the new data points.

[0247] (Appendix D9) An information processing device described in any one of Appendices D1 to D8, wherein the optimization result with reference to the data points included in the internal polyhedron is the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the internal polyhedron to an objective function defined by one or more data points and a weight vector, and the optimization result with reference to the data points included in the external polyhedron is the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points included in the external polyhedron to an objective function defined by one or more data points and a weight vector.

[0248] (Appendix D10) The information processing device according to any one of Appendices D1 to D9, wherein the at least one processor further executes a storage process to store pairs of a weight vector included in the difference set, an optimization result using the weight vector with reference to data points included in the internal polyhedron at the current step, and a difference between an optimization result using the weight vector with reference to data points included in the external polyhedron at the current step, and the optimization result using the weight vector with reference to data points included in the external polyhedron at the current step, and the storage process excludes, from the multiple pairs stored by the storage process, a pair of a target weight vector identified by the identification process and the difference corresponding to the target weight vector.

[0249] (Supplementary Note D11) The information processing device according to any one of Supplementary Notes D1 to D10, wherein the space spanned by the weight vectors is a convex polyhedral cone.

[0250] [Appendix E] This disclosure includes the techniques described in the following appendices. However, the present invention is not limited to the techniques described in the following appendices, and various modifications are possible within the scope of the claims.

[0251] (Appendix E1) A non-transitory recording medium having recorded thereon an information processing program that causes a computer to function as an information processing device, the information processing program causing the computer to execute: an acquisition process that acquires one or more data points; a generation process that references multiple data points including the data points acquired by the acquisition process and generates, for each step, an internal polyhedron defined by the multiple data points and an external polyhedron defined by the multiple data points; and an identification process that identifies a target weight vector from a difference set between a set of weight vectors obtained by reference to the internal polyhedron in the current step and a set of weight vectors obtained by reference to the internal polyhedron in the previous step, by reference to the difference between an optimization result obtained by reference to the data points included in the internal polyhedron in the current step and an optimization result obtained by reference to the data points included in the external polyhedron in the current step.

[0252] 1, 2, 1A, 2A... Information processing device 11... Acquisition unit 12... Generation unit 13, 23... Specification unit 14, 24... Judgment unit 15... Output unit 16... Update unit 27... Accumulation unit

Claims

1. An information processing device comprising: an acquisition means for acquiring one or more data points; a generation means for generating, at each step, an internal polyhedron defined by a plurality of data points including the data points acquired by the acquisition means and an external polyhedron defined by the plurality of data points; and an identification means for identifying a target weight vector by referring to a difference between a set of weight vectors obtained by referring to the internal polyhedron in the current step and a set of weight vectors obtained by referring to the internal polyhedron in the previous step, and a difference between an optimization result obtained by referring to the data points included in the internal polyhedron in the current step and an optimization result obtained by referring to the data points included in the external polyhedron in the current step.

2. The information processing apparatus according to claim 1, further comprising a first output means for outputting the weight vector of the object identified by said identification means.

3. The information processing device according to claim 1 or 2, wherein the specifying means specifies, from among the weight vectors included in the difference set, a weight vector in which the difference is the largest, as the target weight vector.

4. The information processing device according to claim 1 or 2, wherein the specifying means specifies, as the target weight vector, a weight vector that has the largest linear combination of the difference and an additional term among the weight vectors included in the difference set.

5. The information processing device according to claim 4, wherein said acquiring means further acquires a user input, and said specifying means sets said additional term in response to said user input.

6. An information processing device as claimed in any one of claims 1 to 5, further comprising a second output means for outputting at least one of one or more data points contained in the internal polyhedron and one or more data points contained in the external polyhedron when the target weight vector identified by the identification means satisfies a predetermined convergence condition.

7. An information processing device as claimed in any one of claims 1 to 6, further comprising an update means for updating the internal polyhedron and the external polyhedron by referring to the weight vector of the target identified by the identification means when the weight vector of the target identified by the identification means does not satisfy a predetermined convergence condition.

8. The information processing device according to claim 7, wherein the update means calculates new data points by an optimization process using an objective function including a weight vector of the target identified by the identification means, and updates the internal polyhedron and the external polyhedron to include the new data points.

9. An information processing device according to any one of claims 1 to 8, wherein the optimization result with reference to the data points contained in the internal polyhedron is the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points contained in the internal polyhedron to an objective function defined by one or more data points and a weight vector, and the optimization result with reference to the data points contained in the external polyhedron is the result of an optimization process by reinforcement learning with reference to an objective function obtained by applying the data points contained in the external polyhedron to an objective function defined by one or more data points and a weight vector.

10. An information processing device as claimed in any one of claims 1 to 9, further comprising a storage means for storing pairs of a weight vector included in the difference set, an optimization result using the weight vector with reference to data points included in the internal polyhedron at the current step, and a difference between an optimization result using the weight vector with reference to data points included in the external polyhedron at the current step, wherein the storage means excludes a pair of a target weight vector identified by the identification means and the difference corresponding to the target weight vector from the multiple pairs stored by the storage means.

11. The information processing device according to any one of claims 1 to 10, wherein the space closed by the weighted average and scalar multiplication of the weight vector is a convex polyhedral cone.

12. An information processing method comprising: acquiring one or a plurality of data points; referencing a plurality of data points including the acquired data points to generate, for each step, an internal polyhedron defined by the plurality of data points and an external polyhedron defined by the plurality of data points; and identifying a target weight vector from a difference set between a set of weight vectors obtained by referring to the internal polyhedron in the current step and a set of weight vectors obtained by referring to the internal polyhedron in the previous step by referring to a difference between an optimization result obtained by referring to data points included in the internal polyhedron in the current step and an optimization result obtained by referring to data points included in the external polyhedron in the current step.

13. A program that causes a computer to function as an information processing device, the program causing the computer to execute the following steps: acquire one or more data points; refer to multiple data points including the acquired data points, and generate, at each step, an internal polyhedron defined by the multiple data points and an external polyhedron defined by the multiple data points; and identify a target weight vector from a difference set between a set of weight vectors obtained by referring to the internal polyhedron in the current step and a set of weight vectors obtained by referring to the internal polyhedron in the previous step, by referring to the difference between an optimization result obtained by referring to the data points included in the internal polyhedron in the current step and an optimization result obtained by referring to the data points included in the external polyhedron in the current step.

Citation Information

Patent Citations

  • Optimization device, optimization method and program

    JP2019220028A

  • Optimization method, optimization apparatus, and program

    JP2022178099A