This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2023-134846, filed on Aug. 22, 2023, the entire contents of which are incorporated herein by reference.
The embodiment discussed herein is related to a computer-readable recording medium storing a computation program, a computation method, and an information processing apparatus.
A step planning for sequentially performing processing on a plurality of types of objects is performed.
Japanese Laid-open Patent Publication Nos. 2005-107735, 2022-6819, 2007-34429, 2018-165952, 2020-194587, and 2008-198129 are disclosed as related art.
According to an aspect of the embodiments, there is provided a non-transitory computer-readable recording medium storing a computation program for causing a computer to execute computation processing including: on a condition that each of a plurality of objects is processed at any of a plurality of processing timings for which an order is determined, a processing specification is determined for each of the plurality of objects, a processing period in which processing is performed for each of the plurality of objects is determined, and the processing period includes one or more of the processing timings, calculating a probability obtained as a reciprocal of a number of the processing timings included in the processing period for each of the processing specifications of the plurality of objects, for each processing timing; calculating a sum of probabilities of the processing specifications for each processing timing; and calculating a cumulative sum of sums of the probabilities for the processing timing; and specifying the processing timings of the plurality of objects by using the cumulative sum.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention.
For example, a specification constraint is defined in which a plurality of objects are sequentially input to one processing line in accordance with a predetermined order, and processing according to a specification defined for each object is performed. In this case, in order to level a frequency of each specification, it is considered to level each specification by using a target tracking method.
On the other hand, consideration of a constraint condition (period constraint) that a certain object may be processed only within a certain period is also desired. It is difficult to plan a production order that satisfies the specification constraint while observing the period constraint.
In one aspect, an object of the present disclosure is to provide a computer-readable recording medium storing a computation program, a computation method, and an information processing apparatus capable of planning a processing order for a plurality of objects.
Production lines for personal computers, automobiles, and the like adopt a mixed production method in which a plurality of types of products are mixed in one production line to assemble the products. In the mixed production method, different products flow in order in the same production line. In this case, when there is an imbalance in a production order of the products, quality, cost, and productivity are greatly affected. For example, when production of the same product continues, there is a risk that an error may occur due to a decrease in concentration of a worker. When production of the same product continues, there is a risk that out-of-stock of components may occur due to unevenness in component supply frequency.
Accordingly, in the mixed production method, it is desirable to plan a production order by considering constraint conditions (specification constraints) such that various specifications of the products do not appear in an imbalanced manner. A constraint condition (period constraint) that a certain product may be produced only within a certain period has to be considered due to a production plan, a shift of a worker, or the like.
In recent years, specification constraints have become complicated due to diversification of products, and it has become difficult to plan a production order that satisfies the specification constraints while observing the period constraint.
A period constraint is defined for each product of the products A to J. For example, the products A to C have to be input to a production line at any of slots 1 to 3. The products D and E have to be input to a production line at any of slots 4 to 8. The products F and G have to be input to a production line at any of slots 4 to 10. The product H has to be input to a production line at any of slots 6 to 10. The products I and J have to be input to a production line at any of slots 8 to 10.
A slot represents an input turn to a production line. A slot number is a number of the input turn, and corresponds to an input order to the production line. Accordingly, the slot corresponds to a processing timing in the production line. Defining a slot for each product corresponds to defining a constraint on a processing period in each production line. For each product, the processing period includes one or more slots. In the example illustrated in
A target tracking method will be described as an example of a method for determining the production order such that the same specifications are not consecutive as much as possible. The target tracking method is a method of sequentially determining an appearance order of products such that a cumulative number of appearances of each specification over a production line approaches a target number of appearances as much as possible. For example, the target number of appearances is calculated as an average number of appearances (=a number of appearances of a specification/a number of all slots).
For example, it is assumed that a specification of each product is defined as illustrated in
However, in such a target tracking method, only the constraint of the specification is considered, and the period constraint may not be observed.
Accordingly, a method of creating the target number of appearances in the target tracking method for each period constraint will be examined. For example, slots are grouped and sectioned by a period constraint, and a target number of appearances is created for each group. For example, as illustrated in
However, the example of
In this case, since the target number of appearances may not be derived unless the number of specifications included in each section is known, it is desirable to allocate a product in advance. In a case where the product allocation is not appropriate, the target number of appearances becomes inappropriate, and the specification constraint may not be satisfied. As described above, in a case where the period constraints partially overlap, a production order may not be determined by the target tracking method.
Accordingly, to obtain a production order that satisfies a specification constraint while observing a period constraint, it is considered to try all patterns of products to be allocated to each section. However, in this case, the calculation time becomes enormous. For example, in a case of automobile production, since a product having a scale of 1000 vehicles per day is produced, constraints on production periods are set for the respective vehicles, and the respective period constraints may partially overlap each other. For example, in a case of product data in
In the following embodiment, an example will be described in which the production order may be calculated in a short time even when partial overlap occurs in the period constraints of respective products.
First, a principle of a first embodiment will be described. As described in
In this case, as illustrated in
For example, for the product A, since the specification is only the specification α, the probability for each of the slots 1 to 5 for the specification a is ⅕=0.2. For example, a reciprocal of the number of slots is obtained. For the specification B, the probability in each slot is 0. For the product B, since the specifications are the specifications α and β, for the specification α, the probability for each of the slots 1 to 5 is ⅕=0.2, and for the specification B, the probability in each slot is 0.2. For the product H, since the specification is only the specification β, the probability for the specification β for each of the slots 4 to 8 is ⅕=0.2. For the specification α, the probability in each slot is 0. Similarly, the probability is calculated for other products.
Next, for each specification, the probabilities in each slot are totaled. Next, for each slot number, cumulative sums of the probabilities are totaled for each specification. For example, for the specification α, since a total of probabilities of the slot 1 is 0.6 and a total of probabilities of the slot 2 is 0.6, a cumulative sum of the probabilities of the slot 2 is 1.2. Because a total of the probabilities of the slot 3 is 0.6, a cumulative sum of the probabilities of the slot 3 is 1.8. Because a total of the probabilities of the slot 4 is 0.8, a cumulative sum of the probabilities of the slot 4 is 2.6. As described above, the cumulative sum is obtained.
By treating the obtained cumulative sum as the target number of appearances and performing the target tracking method, a production order is planned.
As described above, according to the first embodiment, in the planning of the production order in the mixed production method, even when the period constraints partially overlap each other, it is possible to plan a production order that satisfies a specification constraint while observing a period constraint. It is possible to obtain the production order satisfying the period constraint while maintaining the specification constraint in the target tracking method. Since it is not desired to consider the case division or the like of the number of products included in each section, an enormous amount of calculation time is not taken. From the above, it is possible to improve the quality, cost, and productivity of the production line of the mixed production method.
The CPU 101 is a central processing unit. The CPU 101 includes one or more cores. The RAM 102 is a volatile memory that temporarily stores a program executed by the CPU 101, data processed by the CPU 101, and the like. The storage device 103 is a nonvolatile storage device. As the storage device 103, for example, a read-only memory (ROM), a solid-state drive (SSD) such as a flash memory, a hard disk driven by a hard disk drive, or the like may be used. The storage device 103 stores a planning program. The input device 104 is an input device such as a keyboard or a mouse. The display device 105 is a display device such as a liquid crystal display (LCD). By the CPU 101 executing the planning program, the product information storage unit 10, the probability calculation unit 20, the cumulative sum calculation unit 30, the specification unit 40, and the output unit 50 are realized. Hardware such as dedicated circuits may be used as the product information storage unit 10, the probability calculation unit 20, the cumulative sum calculation unit 30, the specification unit 40, and the output unit 50.
Next, by using the product data acquired in step S1, the probability calculation unit 20 calculates a probability distribution of each specification based on the period constraint (step S2).
Next, the cumulative sum calculation unit 30 calculates a target number of appearances by calculating a sum of probabilities of the respective specifications for each slot number by using the probability distribution calculated in step S2 and calculating a cumulative sum (step S3).
Next, based on the target number of appearances calculated in step S3, the specification unit 40 specifies a production order of products in the production line (step S4).
Next, the output unit 50 outputs the production order specified in step S4 (step S5). For example, the output production order is displayed on the display device 105.
Next, the probability calculation unit 20 calculates a number of products Num_Slots from Prods (step S12). The number of products Num_Slots is the number of products included in Prods, and corresponds to the number of slots at which the product is input to a production line.
Next, the probability calculation unit 20 extracts all specifications All_Conds from Conds such that there is no overlap (step S13).
Next, the probability calculation unit 20 prepares a table Pr, c, t for storing a probability in a product r, a specification c, and a slot number t (step S14).
Next, the probability calculation unit 20 selects one product from Prods (step S15). The selected product is referred to as a product r.
Next, the probability calculation unit 20 extracts a specification of the product r from Conds and extracts a period constraint of the product r from Times (step S16). The extracted specification is referred to as a specification Cr. The extracted period constraint is referred to as a period constraint Tr.
Next, the probability calculation unit 20 selects one specification from All_Conds (step S17). The selected specification is referred to as a specification c.
Next, the probability calculation unit 20 calculates a probability in each slot number t from the product r, the specification c, the specification Cr of the product r, and the period constraint Tr of the product r, and stores the probability in the table Pr, c, t (step S18). The slot number t is each number from 1 to Num_Slots.
Steps S17 and S18 are executed for all the specifications, and the loop ends when steps S17 and S18 are completed for all the specifications. Accordingly, the probability distribution of each specification is calculated. Steps S15 to S18 are executed for all the products, and the loop ends when steps S15 to S18 are completed for all the products. Accordingly, the probability distribution of each specification is calculated for each product.
Next, the cumulative sum calculation unit 30 selects one specification from All_Conds (step S22). The selected specification is referred to as a specification c.
Next, the cumulative sum calculation unit 30 selects one from the slot numbers (step S23). The selected slot number is referred to as a slot number t.
Next, the cumulative sum calculation unit 30 calculates PSc, t=Σr εProdsPr, c, t (step S24).
Steps S23 and S24 are executed for all the slot numbers, and the loop ends when steps S23 and S24 are completed for all the slot numbers. Accordingly, the probabilities of the respective slots are totaled. Steps S22 to S24 are executed for all the specifications, and the loop ends when steps S22 to S24 are completed for all the specifications. As a result, the probabilities of the respective slots are totaled for each specification.
Next, the cumulative sum calculation unit 30 prepares a table ACCc, t for storing a cumulative sum for the specification c and the slot number t (step S25).
Next, the cumulative sum calculation unit 30 selects one specification from All_Conds (step S26). The selected specification is referred to as a specification c.
Next, the cumulative sum calculation unit 30 selects one slot number (step S27). The selected slot number is referred to as a slot number t.
Next, the cumulative sum calculation unit 30 calculates Σt′≤tPSc, t′ and stores the result in the table ACCc, t (step S28).
Steps S27 and S28 are executed for all the slot numbers, and the loop ends when steps S27 and S28 are completed for all the slot numbers. Accordingly, the probabilities of the respective slots are totaled. Steps S26 to S28 are executed for all the specifications, and the loop ends when steps S26 to S28 are completed for all the specifications. As a result, the cumulative sums of the respective slots are totaled for each specification.
Next, the cumulative sum calculation unit 30 outputs ACCc, t as the target number of appearances (step S29).
Next, the specification unit 40 inputs a period constraint of each product to Times representing a set of period constraints of respective products (step S32).
Next, the specification unit 40 inputs a target number of appearances of each specification to Goal_Lines representing a set of target number of appearances of each specification (step S33).
Next, the specification unit 40 calculates a number of products Num_Slots from Prods (step S34). The number of products Num_Slots is the number of products included in Prods, and corresponds to the number of slots at which the product is input to a production line.
Next, the specification unit 40 extracts all specifications All_Conds from Conds such that there is no overlap (step S35).
Next, the specification unit 40 groups the products for each specification combination, and inputs the group to Cond_Groups representing a set of individual groups (step S36). For example, in the product data in
Next, the specification unit 40 prepares a structure Count for counting the number of appearances of each specification (step S37).
Next, the specification unit 40 prepares an empty array Order for storing a production order in a production line (step S38).
Next, the specification unit 40 sets Index to “0” (step S39).
Next, the specification unit 40 determines whether or not Index is smaller than the number of products Num_Slots (step S40).
When “Yes” is determined in step S40, the specification unit 40 executes order specification processing (step S41). Details of the order specification processing will be described later.
Next, the specification unit 40 sets a value of Index to Index+1 (step S42). After that, the processing is executed again from step S40.
When “No” is determined in step S40, the output unit 50 outputs Order as a production order in the production line (step S43).
Next, the specification unit 40 prepares a structure Err for storing an error of each specification combination (step S52).
Next, the specification unit 40 selects one specification combination from Cond_Groups (step S53). The selected combination is referred to as a combination comb.
Next, the specification unit 40 sets Diff to 0 (step S54).
Next, the specification unit 40 selects one specification from All_Conds (step S55). The selected specification is referred to as a specification C.
Next, the specification unit 40 determines whether or not the specification c selected in step S55 is included in comb selected in step S53 (step S56).
When “Yes” is determined in step S56, the specification unit 40 sets Diff to Diff+ (Goals [c]−Count [c]−1)2 (step S57).
When “No” is determined in step S56, the specification unit 40 sets Diff to Diff+ (Goals [c]−Count [c])2 (step S58).
Steps S55 to S58 are executed for all the specifications, and the loop ends when steps S55 to S58 are completed for all the specifications. Accordingly, the sum of squares for each specification is calculated.
Next, the specification unit 40 calculates a square root of Diff, sqrt (Diff), as Err [comb] (step S59).
Steps S53 to S59 are executed for all the specification combinations, and the loop ends when steps S53 to S59 are completed for all the specification combinations. Accordingly, the error of each specification combination is calculated.
Next, the specification unit 40 selects one specification combination having a smallest error in Err (step S60). The selected specification combination is referred to as Target_comb.
Next, the specification unit 40 selects one product that satisfies Times from among Cond_Groups [Target_comb] (step S61). The selected product is referred to as Target_Prod.
Next, the specification unit 40 adds Target_Prod to the end of Order (step S62).
A calculation example of the production order according to the present embodiment will be described. The product data described with reference to
An upper part of
An upper part of
A middle part of
A lower part of
From these results, it may be seen that, by the method according to the present embodiment, a production order that distributes specifications while observing a period constraint is obtained without trying the allocation of the specifications to each section for all patterns.
Although the target tracking method is applied when the production order is specified in the above-described embodiment, the embodiment is not limited thereto. For example, tally calculation may be applied when the production order is specified. For example, as illustrated in
Although the result output by the output unit 50 is output to the display device 105 in each of the above examples, the result may be output to an operation device 200.
In each of the above examples, a plurality of products input to the production line are examples of a plurality of objects. A slot is an example of a plurality of processing timings for which an order is determined. Specifications a and B, and the like are examples of processing specifications defined for each product. A slot defined for each product is an example of a processing period. The probability calculation unit 20 is an example of a probability calculation unit that calculates a probability obtained as a reciprocal of the number of processing timings included in a processing period for each processing specification of the plurality of objects, for each processing timing, and calculates a sum of probabilities of the processing specifications for each processing timing. The cumulative sum calculation unit 30 is an example of a cumulative sum calculation unit that calculates a cumulative sum of sums of the probabilities for the processing timing. The specification unit 40 is an example of a specification unit that specifies the processing timings of the plurality of objects by using the cumulative sum.
Although the embodiment of the present disclosure has been described in detail above, the present disclosure is not limited to such a particular embodiment and may be variously modified and changed within the scope of the gist of the present disclosure described in claims.
All examples and conditional language provided herein are intended for the pedagogical purposes of aiding the reader in understanding the invention and the concepts contributed by the inventor to further the art, and are not to be construed as limitations to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although one or more embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
| Number | Date | Country | Kind |
|---|---|---|---|
| 2023-134846 | Aug 2023 | JP | national |