WO2013161511A1 - 複数の要素の結合結果を識別する情報処理装置、プログラムおよび方法 - Google Patents

複数の要素の結合結果を識別する情報処理装置、プログラムおよび方法 Download PDF

Info

Publication number
WO2013161511A1
WO2013161511A1 PCT/JP2013/059524 JP2013059524W WO2013161511A1 WO 2013161511 A1 WO2013161511 A1 WO 2013161511A1 JP 2013059524 W JP2013059524 W JP 2013059524W WO 2013161511 A1 WO2013161511 A1 WO 2013161511A1
Authority
WO
WIPO (PCT)
Prior art keywords
elements
element identification
combined
basic elements
information processing
Prior art date
Application number
PCT/JP2013/059524
Other languages
English (en)
French (fr)
Inventor
貴幸 吉住
Original Assignee
インターナショナル・ビジネス・マシーンズ・コーポレーション
日本アイ・ビー・エム株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by インターナショナル・ビジネス・マシーンズ・コーポレーション, 日本アイ・ビー・エム株式会社 filed Critical インターナショナル・ビジネス・マシーンズ・コーポレーション
Priority to GB1420727.8A priority Critical patent/GB2517335A/en
Priority to CN201380021838.2A priority patent/CN104246778B/zh
Priority to DE112013002192.7T priority patent/DE112013002192T5/de
Publication of WO2013161511A1 publication Critical patent/WO2013161511A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • G05B19/40931Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine concerning programming of geometry
    • G05B19/40935Selection of predetermined shapes and defining the dimensions with parameter input
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23DPLANING; SLOTTING; SHEARING; BROACHING; SAWING; FILING; SCRAPING; LIKE OPERATIONS FOR WORKING METAL BY REMOVING MATERIAL, NOT OTHERWISE PROVIDED FOR
    • B23D36/00Control arrangements specially adapted for machines for shearing or similar cutting, or for sawing, stock which the latter is travelling otherwise than in the direction of the cut
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35162Determine workpiece placement, nesting in blank, optimize, minimize loss material
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the present invention relates to an information processing apparatus, a program, and a method for identifying a combination result of a plurality of elements.
  • Japanese Patent Laid-Open No. 2004-260688 is a method of attracting a plurality of types of plate-like articles from an original plate, creating an arrangement pattern that represents the arrangement of plate-like articles that can be removed within the original plate, and evaluating each arrangement pattern.
  • a method is described in which an optimal arrangement pattern is selected by giving a value and an evaluation value of the remaining allocation of each plate-like article.
  • Patent Document 2 describes a method for deriving a plan that minimizes the value of an objective function of an evaluation item to be minimized in an optimal chamfering plan problem.
  • N pieces of N ⁇ N process units indicating the placement locations of N placement objects are arranged in descending order of input values so that the placement object and the placement location do not overlap.
  • a method is described in which a process unit is selected and an input value of the selected process unit is changed to obtain a target value.
  • the computer when calculating a combination of layouts that can efficiently cut out a small plate, the computer first calculates an enormous number of layout candidates, such as tens of thousands or hundreds of thousands, and evaluation values of the candidates for each layout. Generate. Subsequently, from the created layout candidates, a plurality of layouts are selected that can cut out all the ordered small plates and have a high evaluation value.
  • the assigning unit that assigns an element identification value to each of a plurality of basic elements, and two or more basic elements of the plurality of basic elements are combined, and the two or more basic elements are combined.
  • a combining unit that generates a combination element that represents an element and a plurality of element identification values assigned to each of a plurality of basic elements included in the combination element are synthesized by an operation according to a combination method of the elements, and the combination is performed.
  • a calculation unit that calculates one element identification value corresponding to the element, and the calculation unit responds by an operation in which an exchange rule does not hold when two elements are combined by a combination method that distinguishes the order
  • An information processing apparatus that combines two element identification values by combining two element identification values and combines two elements by a combination method that does not distinguish the order, and an operation that satisfies the exchange rule.
  • FIG. 1 shows a functional configuration of an information processing apparatus 10 according to the present embodiment.
  • an example of a procedure for cutting a product plate from a material plate is shown.
  • a layout candidate generation method by the layout generation unit 12 of the information processing apparatus 10 according to the present embodiment will be described.
  • 2 shows a functional configuration of a layout generation unit 12 according to the present embodiment.
  • 6 shows a flow for generating layout candidates by the layout generation unit 12 according to the present embodiment.
  • combines two element identification values by a matrix product is shown.
  • combines two element identification values by a matrix sum is shown.
  • An example of an element identification value calculation process when a layout candidate is generated will be described.
  • FIG. 9 An example of a layout candidate (sixth combining element P 6 ) in which the horizontal combination order of some of the included elements is different from the layout candidate ( fourth combining element P 4 ) in FIG.
  • An example of a corresponding element identification value is shown.
  • An example of the calculation which makes the element identification value corresponding to a combination element into a hash value is shown.
  • combines two element identification values by the calculation corresponding to the connection method which distinguishes order is shown.
  • An example of processing for synthesizing two element identification values by an operation corresponding to a combination method that does not distinguish the order will be described.
  • 2 shows an exemplary hardware configuration of a computer 1900 according to the present embodiment.
  • FIG. 1 shows a manufacturing flow of a steel plate (product plate) according to this embodiment.
  • the steelworks manufactures a flat steel plate having a rectangular plane according to an order from a customer.
  • the steel plate which has a rectangular plane manufactured according to a customer's order is called a product board.
  • the size (horizontal width, vertical width) of the ordered product plate is input to the computer (S11). Subsequently, after receiving an order for a predetermined number of product plates or more, a plurality of layouts showing positions where a plurality of ordered product plates are cut out from a plurality of long steel plates manufactured by rolling by a computer Is created (S12). In addition, the rectangular steel plate manufactured by rolling is called a material board.
  • the layout creation processing in step S12 is executed by the information processing apparatus 10 according to the present embodiment.
  • the information processing apparatus 10 is realized by a computer.
  • the information processing apparatus 10 generates a plurality of layout candidates representing a cutting pattern for cutting a product plate from a material plate. Then, the information processing apparatus 10 selects a plurality of layouts that can cut out all of the plurality of ordered product plates with a high yield from the generated plurality of layout candidates.
  • the information processing apparatus 10 is not limited to creating a layout candidate for cutting a steel sheet in an ironworks, and may be applied to an application that combines other basic elements.
  • the information processing apparatus 10 may be an apparatus that generates a combined element (character string) obtained by combining two or more basic elements using a word or a character string as a basic element.
  • FIG. 2 shows a functional configuration of the information processing apparatus 10 according to the present embodiment.
  • the information processing apparatus 10 according to the present embodiment includes a layout generation unit 12 and a selection unit 14.
  • the layout generation unit 12 receives a plurality of basic elements each representing the shape and size of the product plate.
  • the product plate has a rectangular shape.
  • the basic element represents a rectangular shape and size.
  • the layout generation unit 12 receives basic elements for several hundred product plates.
  • the layout generation unit 12 selects two or more basic elements from the received plurality of basic elements, and combines the selected two or more basic elements. Then, the layout generation unit 12 generates a plurality of layout candidates (a plurality of coupling elements) representing a cutting pattern for cutting out each of the two or more coupled basic elements from the material plate.
  • the shape of the material plate is a rectangle. Therefore, the layout generating unit 12 generates a plurality of layout candidates (a plurality of connecting elements) representing a cutting pattern in which each of the two or more combined basic elements is cut out from the rectangular material plate.
  • the layout generation unit 12 generates layout candidates from 100 times (for example, tens of thousands) to 1000 times (for example, hundreds of thousands) of the number of received basic elements. In this case, the layout generation unit 12 generates a plurality of layout candidates by eliminating duplication so that two or more layout candidates with equivalent cut patterns are not included.
  • the layout generation unit 12 generates a layout candidate representing a cutting pattern according to a predetermined cutting rule.
  • An example of the generation method of the cutting rule and the layout candidate is generated with reference to FIG. 3 and FIG.
  • the selection unit 14 selects a plurality of layouts including all of a plurality of product plates (a plurality of basic elements) that have been ordered from a plurality of layout candidates (a plurality of coupling elements) generated by the layout generation unit 12. select. For example, the selection unit 14 selects a plurality of layouts by an algorithm that minimizes the total size of the selected plurality of layouts.
  • the selection unit 14 selects a plurality of layouts including all of a plurality of product plates using integer programming. In this case, as a result of minimizing the total layout size, the selection unit 14 may not actually be the minimum. In other words, the selection unit 14 may select a plurality of layouts by an algorithm that gives a high evaluation to a solution with a smaller total layout size. Thereby, the information processing apparatus 10 can select a plurality of layouts that can cut out all of the plurality of product plates that have been ordered with high yield.
  • FIG. 3 shows an example of a procedure for cutting a product plate from a material plate in the present embodiment.
  • cutting is performed according to a predetermined cutting rule.
  • the cutting is performed according to the cutting rule as shown in FIG.
  • the material plate is cut along the short side direction.
  • the material plate is cut along the long side direction.
  • the material plate is cut along the short side direction.
  • the information processing apparatus 10 generates layout candidates according to such a cutting rule.
  • FIG. 4 shows a layout candidate generation method by the layout generation unit 12 of the information processing apparatus 10 according to the present embodiment.
  • the layout generation unit 12 When the layout generation unit 12 generates a single layout candidate (combined element) by combining a plurality of basic elements representing the shape and size of the product plate, the layout generation unit 12 is a procedure reverse to the procedure of cutting the product plate from the material plate. A plurality of basic elements are combined to generate a layout candidate. Thereby, the layout generation unit 12 can generate a layout candidate according to the cutting rule.
  • the layout generation unit 12 randomly selects any two or more of the plurality of basic elements, for example, and selects the selected two or more elements in the direction of any one side. Are coupled in the first direction (for example, the lateral direction). Then, the layout generation unit 12 generates a cutting pattern (first coupling element) that cuts out each of the two or more elements in a coupled state from a rectangular plate. The layout generation unit 12 generates a plurality of such first coupling elements in the first procedure.
  • the layout generation unit 12 randomly selects any two or more of the plurality of basic elements and the plurality of first combination elements, and selects the selected two or more elements. It couple
  • the layout generation unit 12 randomly selects any two or more elements among the plurality of basic elements, the plurality of first coupling elements, and the plurality of second coupling elements, for example. Combine two or more selected elements in the first direction. Then, the layout generation unit 12 generates a cutting pattern (third coupling element) that cuts out two or more selected elements from a rectangular plate. The layout generation unit 12 generates a plurality of such third coupling elements in the third procedure.
  • the layout generation unit 12 outputs the generated third combined element as a plurality of layout candidates.
  • the layout generation unit 12 generates the coupling element so that the combined shape is within the shape of the material plate in any of the first, second, and third procedures. Further, when outputting layout candidates, the layout generation unit 12 performs deduplication processing so as not to output the same layout candidates as the generated layout candidates.
  • FIG. 5 shows a functional configuration of the layout generation unit 12 according to the present embodiment.
  • the layout generation unit 12 includes a basic element storage unit 22, a combined element storage unit 24, a capture unit 32, an allocation unit 34, a generation unit 36, a calculation unit 38, a hash value conversion unit 40, and a duplicate detection.
  • a unit 42 and an additional unit 44 are included.
  • the basic element storage unit 22 stores a plurality of basic elements (the shape and size of the product plate) and the element identification values of the basic elements in association with each other.
  • the combination element storage unit 24 stores a plurality of combination elements (layout candidates) and element identification values converted into hash values of the combination elements in association with each other.
  • the capturing unit 32 captures a plurality of basic elements from the outside, and stores the captured plurality of basic elements in the basic element storage unit 22.
  • the capturing unit 32 captures the sizes and shapes of a plurality of product plates as a plurality of basic elements and stores them in the basic element storage unit 22.
  • the assigning unit 34 assigns an element identification value to each of a plurality of basic elements.
  • the assigning unit 34 assigns a unique element identification value for each of the plurality of basic elements for each shape and size. Then, the assigning unit 34 stores the element identification values assigned to each of the plurality of basic elements in the basic element storage unit 22 in association with the basic elements.
  • the allocating unit 34 uses, as element identification values, values that can be synthesized by operations that satisfy the combining law and do not satisfy the exchange law, and operations that satisfy the combining law and satisfy the exchange law, as element identification values. assign.
  • the assigning unit 34 assigns an element identification value that is a square matrix to each of a plurality of basic elements. In this case, the assigning unit 34 assigns, for each shape and size, a square matrix whose internal value is a random integer value to each of the plurality of basic elements.
  • the assigning unit 34 may assign the quaternion as an element identification value to each of a plurality of basic elements.
  • the generation unit 36 combines two or more basic elements of the plurality of basic elements, and generates a plurality of combined elements representing the combined two or more basic elements.
  • the generating unit 36 combines two or more basic elements among a plurality of basic elements each representing a product plate, and generates a cutting pattern in which each of the combined two or more basic elements is cut out from the material plate.
  • a plurality of layout candidates (a plurality of coupling elements) to be expressed are generated. For example, the generation unit 36 generates a plurality of layout candidates according to the procedure shown in FIG.
  • the calculation unit 38 generates a corresponding element identification value for each of a plurality of layout candidates (a plurality of combined elements) generated by the generation unit 36.
  • the calculation unit 38 synthesizes a plurality of element identification values assigned to each of a plurality of basic elements included in the layout candidates (combining elements) by an operation according to the element combining method, and One element identification value corresponding to the candidate (combining element) is calculated.
  • the calculation unit 38 synthesizes the corresponding two element identification values by an operation in which the combination rule is established and the exchange rule is not established.
  • the calculation unit 38 since the element identification values are square matrices, the calculation unit 38 synthesizes two corresponding element identification values by a matrix product when the two elements are combined by a combination method that distinguishes the order. To do. An example of the calculation method in this case will be further described with reference to FIG.
  • the calculation unit 38 synthesizes two corresponding element identification values by an operation that satisfies the combining law and the replacement law.
  • the element identification values are square matrices
  • the calculation unit 38 synthesizes two corresponding element identification values by a matrix sum when the two elements are combined by a combination method that does not distinguish the order. To do. An example of the calculation method in this case will be further described with reference to FIG.
  • the element identification values corresponding to the layout candidates (joining elements) calculated by the calculation unit 38 are the same value in the case of the same cutting pattern.
  • the element identification values corresponding to the layout candidates (combining elements) are the same value because they are equivalent as layouts even when elements combined by a method that does not distinguish the order are interchanged. Note that the characteristics of the generated element identification value will be further described with reference to FIGS.
  • the hash value conversion unit 40 converts each element identification value of a plurality of layout candidates (a plurality of combined elements) into a hash value according to a predetermined rule. For example, the hash value converting unit 40 converts an element identification value that is a square matrix into a scalar value according to a predetermined rule, and converts the element identification value into a hash value. An example of the hash value conversion method will be further described with reference to FIG.
  • the duplication detection unit 42 detects overlapping coupling elements among the plurality of coupling elements based on the hashed element identification values of the plurality of layout candidates (plural coupling elements). More specifically, the duplication detection unit 42 generates a hash value corresponding to a newly generated layout candidate (combining element) in response to the generation of a new layout candidate (combining element) by the generating unit 36. The element identification value thus received is received from the hash value converting unit 40.
  • the duplication detecting unit 42 hashes corresponding to the hashed element identification values received from the hash value converting unit 40 and a plurality of layout candidates (combined elements) already generated and stored in the combined element storage unit 24. It is compared with the valued element identification value to determine whether or not they match. If there is a match, the duplication detection unit 42 overlaps a plurality of layout candidates (joining elements) that have already been generated and stored in the joining element storage unit 24. Judge that
  • the duplication detection unit 42 corresponds to the hashed element identification value received from the hash value conversion unit 40 and a plurality of layout candidates (combined elements) that have already been generated and stored in the combined element storage unit 24.
  • the configuration of the layout candidates (joining elements) that match the hashed element identification value is analyzed in more detail, It may be determined whether the configurations match.
  • the duplication detection unit 42 analyzes the contents of basic elements included in layout candidates (combined elements) whose hashed element identification values match (elements to be combined) and the element combination method, and then analyzes the layout candidates ( It may be further determined whether or not the coupling elements) match.
  • the coupling element storage unit 24 may store the number of product plates included in correspondence with each of a plurality of layout candidates.
  • the duplication detection unit 42 detects the number of product plates included in the new layout candidate generated by the generation unit 36. Then, the duplication detection unit 42 extracts layout candidates including the same number of product plates as the detected number from the combined element storage unit 24, element identification values corresponding to the extracted layout candidates, and new layout candidate Judgment of overlap between element identification values. Thereby, the duplication detection part 42 can perform duplication detection of the layout candidate efficiently.
  • the adding unit 44 overlaps the element identification value of the new layout candidate (joining element) generated by the generating unit 36 and the element identification value of the layout candidate (joining element) stored in the joining element storage unit 24.
  • a new layout candidate (combined element) and a corresponding element identification value are added and stored in the combined element storage unit 24 on condition that it is determined not to be performed.
  • FIG. 6 shows a layout candidate generation flow by the layout generation unit 12 according to the present embodiment.
  • the layout generation unit 12 executes the processes of steps S21 to S29 shown in FIG.
  • step S21 the capturing unit 32 captures the sizes and shapes of a plurality of product plates as a plurality of basic elements. Subsequently, in step S ⁇ b> 22, the assigning unit 34 assigns a unique square matrix element identification value to each of the plurality of basic elements for each shape and size.
  • the layout generation unit 12 repeatedly executes the processing from step S24 to step S28 (loop processing between step S23 and step S29).
  • the generation unit 36 generates one layout candidate (combining element). For example, the generation unit 36 generates layout candidates according to the procedure shown in FIG.
  • step S25 the calculation unit 38 calculates an element identification value of the layout candidate (combined element) generated in step S24.
  • the calculation unit 38 synthesizes a plurality of element identification values assigned to each of a plurality of basic elements included in the layout candidates (combining elements) by an operation according to the element combining method, and The element identification value corresponding to the candidate is calculated.
  • the calculation unit 38 when two elements are combined by a combination method that distinguishes the order, the calculation unit 38 synthesizes two corresponding element identification values by a matrix product. In addition, when the two elements are combined by a combining method that does not distinguish the order, the calculation unit 38 synthesizes the corresponding two element identification values by the matrix sum.
  • step S26 the hash value converting unit 40 converts the element identification value calculated in step S25 into a hash value according to a predetermined rule.
  • step S27 the duplication detection unit 42 determines whether or not the layout candidate generated in step S24 overlaps with one or more layout candidates already generated in the processing so far. More specifically, the duplication detection unit 42 calculates the hashed element identification value calculated in step S26 and the already generated one or more layout candidate hashed element identification values. If they match, it is determined that they overlap. Moreover, the duplication detection part 42 judges that it does not overlap when it does not correspond.
  • step S27 If it is determined that there is an overlap (Yes in step S27), the overlap detection unit 42 discards the new layout candidate generated in step S24 and advances the process to step S29.
  • step S28 the duplication detection unit 42 advances the process to step S28.
  • step S ⁇ b> 28 the adding unit 44 adds the layout candidate (joining element) generated in step S ⁇ b> 24 and the hashed element identification value calculated in step S ⁇ b> 26 in the joining element storage unit 24. Then, after the addition is completed, the adding unit 44 advances the process to step S29.
  • step S29 the layout generation unit 12 determines whether or not to finish the layout candidate creation process.
  • the layout generation unit 12 creates a predetermined number (for example, tens of thousands to several hundreds of thousands) of layout candidates, or when a predetermined time has elapsed, It is determined that the creation process is finished. If the layout generation unit 12 determines not to end the layout candidate creation process, the process returns to step S24 and repeats the process from step S24 to step S28.
  • the layout generation unit 12 can create a plurality of layout candidates that do not overlap each other.
  • FIG. 7 shows a processing example in which two element identification values are synthesized by a matrix product.
  • an element identification value represented by a 2 ⁇ 2 square matrix is assigned to each element.
  • the calculation unit 38 identifies two elements corresponding to the two elements by a matrix product. Synthesize values.
  • the calculation unit 38 can obtain a square matrix of 2 rows and 2 columns as the element identification value of the coupling element by the matrix product.
  • FIG. 8 shows an example of processing for synthesizing two element identification values by a matrix sum.
  • an element identification value represented by a 2 ⁇ 2 square matrix is assigned to each element.
  • the calculation unit 38 identifies two elements corresponding to the two elements by a matrix sum. Synthesize values.
  • the calculation unit 38 can obtain a square matrix of 2 rows and 2 columns as the element identification value of the coupling element by the matrix sum.
  • the calculation unit 38 calculates the element identification value of the new combination element based on the element identification value obtained as the synthesis result when the combination element is further combined with another element. Can do.
  • the calculation unit 38 may calculate an element identification value obtained by rounding each value in the matrix to a value of a predetermined digit or less after calculating the matrix product or the matrix sum. Thereby, the calculation part 38 can avoid performing the calculation of a matrix product or a matrix sum, and overflowing.
  • FIG. 9 shows an example of an element identification value calculation process when a layout candidate is generated.
  • a steel sheet is cut by cutting a long rolled sheet in an ironworks in the short side direction
  • the cost does not change even if the cutting position changes.
  • the cost varies depending on the cutting position because it is difficult to cut the steel sheet from the end side. There is a case.
  • the generation unit 36 can distinguish the order of the product plates to be joined when joining the product plates in the lateral direction (longitudinal direction of the rolled long plate). Without generating layout candidates. On the other hand, the generation unit 36 distinguishes the order of the product plates to be combined and lays out the layout candidates when the product plates are joined in the vertical direction (the short side direction of the rolled long plate). Is generated.
  • the calculation unit 38 synthesizes two element identification values (matrixes) assigned to the two elements by a matrix sum operation, The element identification value of the combined element is calculated.
  • the calculation unit 38 converts the two element identification values (matrixes) assigned to the two elements according to the arrangement order of the two corresponding elements. Are combined by a matrix product operation to calculate the element identification value of the combined element.
  • FIG. 9 shows an example of generating layout candidates (joining elements) by combining the first to fourth basic elements a, b, c, and d.
  • a matrix A of 2 rows and 2 columns is assigned as an element identification value to the first basic element a.
  • a matrix B of 2 rows and 2 columns is assigned to the second basic element b as an element identification value.
  • a matrix C of 2 rows and 2 columns is assigned to the third basic element c as an element identification value.
  • a matrix D of 2 rows and 2 columns is assigned to the fourth basic element d as an element identification value.
  • first to fifth coupling elements p 1 , p 2 , p 3 , p 4 , and p 5 are generated. Then, there is a candidate p 5 of the inside of these four coupling elements p 4 and fifth layout.
  • First coupling element p 1 is formed by combining the first basic element a and the second basic element b in the lateral direction. Therefore, the calculation unit 38 calculates the matrix sum (A + B) of the element identification value A and the element identification value B, and generates the element identification value P 1 of the first coupling element p 1 .
  • Second coupling element p 2 is formed by combining the third basic element c and the fourth basic element d in the vertical direction. Therefore, calculation unit 38 calculates the matrix product of the element identification values C and element identification value D (C ⁇ D), to produce an element identification value P 2 of the second coupling element p 2.
  • the third coupling element p 3 is formed by bonding the second basic element b and a second coupling element p 2 in the lateral direction. Accordingly, the calculation unit 38 calculates the matrix sum (B + P 2 ) of the element identification value B and the element identification value P 2 to generate the element identification value P 3 of the third coupling element p 3 .
  • the fourth coupling element p 4 of is formed by combining the first basic element a and the third coupling element p 3 in the lateral direction. Therefore, the calculation unit 38 calculates the matrix sum (A + P 3 ) of the element identification value A and the element identification value P 3 to generate the element identification value P 4 of the fourth coupling element p 4 .
  • fifth coupling element p 5 of are formed by combining the first coupling element p 1 and a second coupling element p 2 in the lateral direction. Accordingly, the calculation unit 38 calculates the matrix sum (P 1 + P 2 ) of the element identification value P 1 and the element identification value P 2 to generate the element identification value P 4 of the fifth coupling element p 5 .
  • the fourth coupling element p 4 and the fifth coupling element p 5 have different generation processes, but the arrangement of the plurality of basic elements included is the same.
  • Matrix products and matrix sums are operations for which the coupling law is established. For this reason, even if the generation processes are different, the calculation unit 38 has the same element identification value of the combination element if the arrangement of the plurality of basic elements included is the same.
  • the duplication detection unit 42 can exclude one of a plurality of layout candidates having the same arrangement of a plurality of basic elements included in different generation processes.
  • FIG. 10 shows a layout candidate (sixth coupling element P 6 ) in which the horizontal combination order of some of the included elements is different from the layout candidate ( fourth coupling element P 4 ) in FIG. ) And an example of a corresponding element identification value.
  • the sixth coupling element p 6 shown in FIG. 10 includes a part of the included elements that are different in the horizontal coupling order when compared to the fourth coupling element p 4 in FIG.
  • the joining order of the elements in the vertical direction is the same.
  • the calculation unit 38 synthesizes two element identification values by a matrix sum (an operation in which a coupling law is established and an exchange law is established). Therefore, combined elements that differ only in the combined order in the horizontal direction of the included elements have the same element identification value. Therefore, and element identification value P 6 of the coupling element p 6 of the sixth, shown in FIG. 10, element identification value P 4 of the fourth coupling element p 4 shown in FIG. 9, the same.
  • the duplication detection unit 42 can exclude one of a plurality of layout candidates that differ only in the combination order of the included elements in the horizontal direction.
  • FIG. 11 shows a layout candidate (seventh coupling element P 7 ) in which the combination order of some of the included elements is different from the layout candidate ( fourth coupling element P 4 ) in FIG. ) And an example of a corresponding element identification value.
  • the seventh coupling element p 7 shown in FIG. 11 differs from the fourth coupling element p 4 in FIG. 9 in the coupling order in the vertical direction of some of the included elements.
  • the calculation unit 38 synthesizes two element identification values by a matrix product (an operation in which the connection law is satisfied and the exchange law is not satisfied). Accordingly, element identification values are different between elements having different elements in the vertical combination order. Therefore, the seventh element identification value P 7 of the coupling elements p 7 and of,, element identification value P 4 of the fourth coupling element p 4 shown in FIG. 9, shown in Figure 11 is different. As a result, the duplication detection unit 42 can register a plurality of layout candidates whose included elements have different joining orders in the vertical direction without being excluded.
  • FIG. 12 shows an example of an operation for converting a matrix element identification value into a hash value.
  • the hash value conversion unit 40 converts the element identification value generated by the calculation unit 38 into a hash value.
  • the hash value converting unit 40 multiplies the value (x 11 ) with 1 row and 1 column by 1 and 2 rows.
  • the value of 1 column (x 21 ) is multiplied by 10
  • the value of 1 row 2 column (x 12 ) is multiplied by 100
  • the value of 2 row 2 column (x 22 ) is multiplied by 1000, and these are added.
  • the hash value converting unit 40 is not limited to such a calculation method, and the element identification value may be converted into a hash value by any calculation method.
  • FIG. 13 shows a processing example in which two element identification values are synthesized by an operation corresponding to a combination method for distinguishing the order.
  • the matrix operation shown in the following formula (11) the coupling law is established.
  • the matrix operation shown in Expression (11) does not hold the exchange law.
  • the calculation unit 38 responds by the matrix operation shown in the equation (11).
  • the two element identification values may be combined.
  • the calculation unit 38 when there are two directions to be combined by distinguishing the order, the calculation unit 38 must synthesize element identification values by distinguishing the types of operations corresponding to the respective directions. For example, when combining elements representing solids, the calculation unit 38 supports the combination in the first direction when distinguishing the combination in the vertical direction (first direction) and the combination in the vertical direction (second direction). Then, the element identification values are synthesized by the matrix product, and the element identification values are synthesized by the operation shown in Expression (11) corresponding to the coupling in the second direction.
  • FIG. 14 shows a processing example in which two element identification values are synthesized by an operation corresponding to a combining method that does not distinguish the order.
  • the matrix operation shown in the following formula (12) the coupling law is established.
  • the matrix operation shown in the equation (12) satisfies the exchange law.
  • the calculation unit 38 responds by the matrix operation shown in Expression (12).
  • the two element identification values may be combined.
  • the calculation unit 38 may combine the element identification values by distinguishing the types of operations corresponding to the respective directions. For example, in the case where elements representing a solid are combined, the calculation unit 38 supports the combination in the first direction in the case where the combination of the vertical direction (first direction) and the vertical direction (second direction) are not distinguished. Then, the element identification values are synthesized by the matrix sum, and the element identification values are synthesized by the calculation shown in Expression (12) corresponding to the coupling in the second direction.
  • FIG. 15 shows an example of a hardware configuration of a computer 1900 according to this embodiment.
  • a computer 1900 according to this embodiment is connected to a CPU peripheral unit having a CPU 2000, a RAM 2020, a graphic controller 2075, and a display device 2080 that are connected to each other by a host controller 2082, and to the host controller 2082 by an input / output controller 2084.
  • Input / output unit having communication interface 2030, hard disk drive 2040, and CD-ROM drive 2060, and legacy input / output unit having ROM 2010, flexible disk drive 2050, and input / output chip 2070 connected to input / output controller 2084 With.
  • the host controller 2082 connects the RAM 2020 to the CPU 2000 and the graphic controller 2075 that access the RAM 2020 at a high transfer rate.
  • the CPU 2000 operates based on programs stored in the ROM 2010 and the RAM 2020 and controls each unit.
  • the graphic controller 2075 acquires image data generated by the CPU 2000 or the like on a frame buffer provided in the RAM 2020 and displays it on the display device 2080.
  • the graphic controller 2075 may include a frame buffer for storing image data generated by the CPU 2000 or the like.
  • the input / output controller 2084 connects the host controller 2082 to the communication interface 2030, the hard disk drive 2040, and the CD-ROM drive 2060, which are relatively high-speed input / output devices.
  • the communication interface 2030 communicates with other devices via a network.
  • the hard disk drive 2040 stores programs and data used by the CPU 2000 in the computer 1900.
  • the CD-ROM drive 2060 reads a program or data from the CD-ROM 2095 and provides it to the hard disk drive 2040 via the RAM 2020.
  • the ROM 2010, the flexible disk drive 2050, and the relatively low-speed input / output device of the input / output chip 2070 are connected to the input / output controller 2084.
  • the ROM 2010 stores a boot program that the computer 1900 executes at startup and / or a program that depends on the hardware of the computer 1900.
  • the flexible disk drive 2050 reads a program or data from the flexible disk 2090 and provides it to the hard disk drive 2040 via the RAM 2020.
  • the input / output chip 2070 connects the flexible disk drive 2050 to the input / output controller 2084 and inputs / outputs various input / output devices via, for example, a parallel port, a serial port, a keyboard port, a mouse port, and the like. Connect to controller 2084.
  • the program provided to the hard disk drive 2040 via the RAM 2020 is stored in a recording medium such as the flexible disk 2090, the CD-ROM 2095, or an IC card and provided by the user.
  • the program is read from the recording medium, installed in the hard disk drive 2040 in the computer 1900 via the RAM 2020, and executed by the CPU 2000.
  • the program installed in the computer 1900 and causing the computer 1900 to function as the information processing apparatus 10 includes a group generation module and a selection module.
  • the group generation module includes a basic element storage module, a combined element storage module, a capture module, an assignment module, a generation module, a calculation module, a hash value conversion module, a duplicate detection module, and an additional module.
  • These programs or modules work on the CPU 2000 or the like to change the computer 1900 into the basic element storage unit 22, the coupling element storage unit 24, the capture unit 32, the allocation unit 34, the generation unit 36, the calculation unit 38, and the hash value conversion unit. 40, the layout generation unit 12 having the duplication detection unit 42 and the addition unit 44, and the selection unit 14.
  • the information processing described in these programs is read by the computer 1900, and functions as a layout generation unit 12 and a selection unit 14, which are specific means in which software and the various hardware resources described above cooperate. To do. And the specific information processing apparatus 10 according to the intended use is constructed
  • the CPU 2000 executes a communication program loaded on the RAM 2020 and executes a communication interface based on the processing content described in the communication program.
  • a communication process is instructed to 2030.
  • the communication interface 2030 reads transmission data stored in a transmission buffer area or the like provided on a storage device such as the RAM 2020, the hard disk drive 2040, the flexible disk 2090, or the CD-ROM 2095, and sends it to the network.
  • the reception data transmitted or received from the network is written into a reception buffer area or the like provided on the storage device.
  • the communication interface 2030 may transfer transmission / reception data to / from the storage device by a DMA (direct memory access) method. Instead, the CPU 2000 transfers the storage device or the communication interface 2030 as a transfer source.
  • the transmission / reception data may be transferred by reading the data from the data and writing the data to the communication interface 2030 or the storage device of the transfer destination.
  • the CPU 2000 is all or necessary from among files or databases stored in an external storage device such as a hard disk drive 2040, a CD-ROM drive 2060 (CD-ROM 2095), and a flexible disk drive 2050 (flexible disk 2090).
  • This portion is read into the RAM 2020 by DMA transfer or the like, and various processes are performed on the data on the RAM 2020. Then, CPU 2000 writes the processed data back to the external storage device by DMA transfer or the like.
  • the RAM 2020 and the external storage device are collectively referred to as a memory, a storage unit, or a storage device.
  • the CPU 2000 can also store a part of the RAM 2020 in the cache memory and perform reading and writing on the cache memory. Even in such a form, the cache memory bears a part of the function of the RAM 2020. Therefore, in the present embodiment, the cache memory is also included in the RAM 2020, the memory, and / or the storage device unless otherwise indicated. To do.
  • the CPU 2000 performs various operations, such as various operations, information processing, condition determination, information search / replacement, etc., described in the present embodiment, specified for the data read from the RAM 2020 by the instruction sequence of the program. Is written back to the RAM 2020. For example, when performing the condition determination, the CPU 2000 determines whether the various variables shown in the present embodiment satisfy the conditions such as large, small, above, below, equal, etc., compared to other variables or constants. When the condition is satisfied (or not satisfied), the program branches to a different instruction sequence or calls a subroutine.
  • the CPU 2000 can search for information stored in a file or database in the storage device. For example, in the case where a plurality of entries in which the attribute value of the second attribute is associated with the attribute value of the first attribute are stored in the storage device, the CPU 2000 displays the plurality of entries stored in the storage device. The entry that matches the condition in which the attribute value of the first attribute is specified is retrieved, and the attribute value of the second attribute that is stored in the entry is read, thereby associating with the first attribute that satisfies the predetermined condition The attribute value of the specified second attribute can be obtained.
  • the program or module shown above may be stored in an external recording medium.
  • an optical recording medium such as DVD or CD
  • a magneto-optical recording medium such as MO
  • a tape medium such as an IC card, and the like
  • a storage device such as a hard disk or RAM provided in a server system connected to a dedicated communication network or the Internet may be used as a recording medium, and the program may be provided to the computer 1900 via the network.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Geometry (AREA)
  • Manufacturing & Machinery (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Mechanical Engineering (AREA)
  • General Factory Administration (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Complex Calculations (AREA)

Abstract

複数の要素の結合結果を容易に識別する。 複数の基本要素のそれぞれに要素識別値を割り当てる割当部と、複数の基本要素のうちの2以上の基本要素を結合し、結合した2以上の基本要素を表す結合要素を生成する生成部と、結合要素に含まれる複数の基本要素のそれぞれに割り当てられた複数の要素識別値を、要素の結合方法に応じた演算により合成して、結合要素に対応する1つの要素識別値を算出する算出部と、を備え、算出部は、順序を区別する結合方法により2つの要素を結合した場合には、交換法則が成り立たない演算により対応する2つの要素識別値を合成し、順序を区別しない結合方法により2つの要素を結合した場合には、交換法則が成り立つ演算により対応する2つの要素識別値を合成する情報処理装置を提供する。

Description

複数の要素の結合結果を識別する情報処理装置、プログラムおよび方法
 本発明は、複数の要素の結合結果を識別する情報処理装置、プログラムおよび方法に関する。
 製鉄所では、注文に応じて多様なサイズの平板状の鋼板を製造して出荷している。平板状の鋼板を製造する場合、まず、圧延工程により長尺状の大きな鋼板(大板)を製造する。続いて、大板を注文に応じた各種のサイズの複数の鋼板(小板)に切断する。そして、切断した小板を検査して製品として出荷する。
 ここで、大板から複数のサイズの小板を切り出す場合、切断位置のレイアウトによっては製品として用いられない不要な領域が多くなってしまい、歩留まりが悪くなってしまう。従って、製鉄所では、コンピュータにより、大板から複数のサイズの小板を効率良く切り出すことができるレイアウトの組み合わせを算出して、歩留まりを向上させている。このように、効率の良く小板を切り出すことができるレイアウトの組み合わせを算出する処理のことを板取問題と呼ぶ。
 特許文献1には、複数の種類の寸法の板状物品を原板から引き当てる方法であって、原板内での板取り可能な板状物品の配置を表す配置パターンを作成し、各配置パターンの評価値および各板状物品の引当残の評価値を与えることにより、最適な配置パターンを選択する方法が記載されている。
 特許文献2には、最適面取計画問題において、最小化したい評価項目の目的関数の値を最小化する計画案を導く方法が記載されている。特許文献3には、N個の被配置物の配置場所を示すN×N個のプロセスユニットのなかから、入力値の大きい順であって且つ被配置物と配置場所が重複しないようにN個のプロセスユニットを選択し、選択したプロセスユニットの入力値を変化させて目的とする値を得る方法が記載されている。
[先行技術文献]
[特許文献]
  [特許文献1]特開平11-39358号公報
  [特許文献2]特開平7-6184号公報
  [特許文献3]特開平9-128362号公報
 ところで、効率の良く小板を切り出すことができるレイアウトの組み合わせを算出する場合、コンピュータは、まず、数万または数十万という膨大な数のレイアウトの候補、および、各レイアウトの候補の評価値を生成する。続いて、作成したレイアウトの候補の中から、注文を受けた全ての小板を切り出すことができ、且つ、評価値が高くなる組み合わせの複数のレイアウトを選択する。
 しかし、数万または数十万という膨大な数のレイアウトの候補の作成処理においては、作成に費やされる演算コストの大半は、既に生成済みのレイアウトの候補との重複チェック処理となっている。従って、板取問題において演算コストを小さくするには、既に生成済みのレイアウトの候補であるか否かを判定する重複チェックを少ない演算コストで実行することが有効となる。
 本発明の第1の態様においては、複数の基本要素のそれぞれに要素識別値を割り当てる割当部と、前記複数の基本要素のうちの2以上の基本要素を結合し、結合した前記2以上の基本要素を表す結合要素を生成する生成部と、前記結合要素に含まれる複数の基本要素のそれぞれに割り当てられた複数の要素識別値を、要素の結合方法に応じた演算により合成して、前記結合要素に対応する1つの要素識別値を算出する算出部と、を備え、前記算出部は、順序を区別する結合方法により2つの要素を結合した場合には、交換法則が成り立たない演算により対応する2つの要素識別値を合成し、順序を区別しない結合方法により2つの要素を結合した場合には、交換法則が成り立つ演算により対応する2つの要素識別値を合成する情報処理装置、プログラムおよび方法を提供する。
 なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
本実施形態に係る鋼板(製品板)の製造フローを示す。 本実施形態に係る情報処理装置10の機能構成を示す。 本実施形態において、材料板から製品板を切り出す手順の一例を示す。 本実施形態に係る情報処理装置10のレイアウト生成部12によるレイアウトの候補の生成方法を示す。 本実施形態に係るレイアウト生成部12の機能構成を示す。 本実施形態に係るレイアウト生成部12によるレイアウトの候補の生成フローを示す。 2つの要素識別値を行列積により合成する処理例を示す。 2つの要素識別値を行列和により合成する処理例を示す。 レイアウトの候補を生成する場合における、要素識別値の演算処理の一例を示す。 含まれる要素のうちの一部の要素の横方向の結合順序が、図9のレイアウトの候補(第4の結合要素P)と異なるレイアウトの候補(第6の結合要素P)の一例および対応する要素識別値の一例を示す。 含まれる要素のうちの一部の要素の縦方向の結合順序が、図9のレイアウトの候補(第4の結合要素P)と異なるレイアウトの候補(第7の結合要素P)の一例および対応する要素識別値の一例を示す。 結合要素に対応する要素識別値をハッシュ値化する演算の一例を示す。 順序を区別する結合方法に対応する演算により2つの要素識別値を合成する処理例を示す。 順序を区別しない結合方法に対応する演算により2つの要素識別値を合成する処理例を示す。 本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。
 以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
 図1は、本実施形態に係る鋼板(製品板)の製造フローを示す。製鉄所は、顧客からの注文に応じて、長方形の平面を有する平板状の鋼板を製造する。なお、顧客の注文に応じて製造される長方形の平面を有する鋼板を製品板という。
 製品板を製造する場合、まず、注文を受けた製品板の平面のサイズ(横幅、縦幅)をコンピュータに入力する(S11)。続いて、所定数以上の製品板の注文を受けた後に、コンピュータにより、圧延により製造される長尺状の複数の鋼板から、注文を受けた複数の製品板を切り出す位置を示した複数のレイアウトを作成する(S12)。なお、圧延により製造される長方形の鋼板を材料板という。
 続いて、製鉄所において、作成した複数のレイアウトに示されるサイズの複数の材料板を圧延により製造する(S13)。続いて、製鉄所において、複数の材料板のそれぞれを対応するレイアウトに従って切断する(S14)。これにより、製鉄所において、注文に従った大きさの複数の製品板を製造することができる。
 ここで、ステップS12のレイアウト作成処理は、本実施形態に係る情報処理装置10により実行される。情報処理装置10は、コンピュータにより実現される。
 本実施形態において、情報処理装置10は、材料板から製品板を切り出すための切断パターンを表す複数のレイアウトの候補を生成する。そして、情報処理装置10は、生成した複数のレイアウトの候補から、注文を受けた複数の製品板の全てを歩留まり良く切り出すことができる複数のレイアウトを選択する。
 なお、情報処理装置10は、製鉄所における鋼板の切り出しのためのレイアウトの候補を作成するものに限らず、他の基本要素を結合するアプリケーションに適用してもよい。例えば、情報処理装置10は、単語または文字列を基本要素として、2以上の基本要素を結合した結合要素(文字列)を生成する装置であってもよい。
 図2は、本実施形態に係る情報処理装置10の機能構成を示す。本実施形態に係る情報処理装置10は、レイアウト生成部12と、選択部14とを備える。
 レイアウト生成部12は、それぞれが製品板の形状及びサイズを表す複数の基本要素を受け取る。なお、本実施形態において、製品板の形状は、長方形である。従って、本実施形態において、基本要素は、長方形の形状及びサイズを表す。レイアウト生成部12は、一例として、数100枚の製品板についての基本要素を受け取る。
 レイアウト生成部12は、受け取った複数の基本要素のうち2以上の基本要素を選択して、選択した2以上の基本要素を結合する。そして、レイアウト生成部12は、結合した2以上の基本要素のそれぞれを材料板から切り出すための切断パターンを表す複数のレイアウトの候補(複数の結合要素)を生成する。なお、本実施形態において、材料板の形状は、長方形である。従って、レイアウト生成部12は、結合した2以上の基本要素のそれぞれを長方形の材料板から切り出す切断パターンを表す複数のレイアウトの候補(複数の結合要素)を生成する。
 レイアウト生成部12は、一例として、受け取った基本要素の数の100倍(例えば数万枚)から1000倍(例えば数十万枚)のレイアウトの候補を生成する。この場合において、レイアウト生成部12は、等価な切断パターンのレイアウトの候補が2以上含まれないように、重複を排除して複数のレイアウトの候補を生成する。
 なお、本例においては、レイアウト生成部12は、予め定められた切断規則に従った切断パターンを表すレイアウトの候補を生成する。切断規則およびレイアウトの候補の生成方法の一例については、図3および図4を参照して生成する。
 選択部14は、レイアウト生成部12により生成された複数のレイアウトの候補(複数の結合要素)の中から、注文を受けた複数の製品板(複数の基本要素)の全てを含む複数のレイアウトを選択する。選択部14は、一例として、選択した複数のレイアウトのサイズの合計を最小化するようなアルゴリズムで複数のレイアウトを選択する。
 選択部14は、一例として、整数計画法を用いて、複数の製品板の全てを含む複数のレイアウトを選択する。この場合において、選択部14は、レイアウトのサイズの合計を最小化した結果、その合計が現実に最小となっていなくてもよい。即ち、選択部14は、レイアウトのサイズの合計がより小さくなる解により高い評価を与えるようなアルゴリズムにより、複数のレイアウトを選択すればよい。これにより、情報処理装置10は、注文を受けた複数の製品板の全てを歩留まり良く切り出すことができる複数のレイアウトを選択することができる。
 図3は、本実施形態において、材料板から製品板を切り出す手順の一例を示す。製鉄所において、圧延された長尺状の材料板から複数の製品板を切り出す場合、予め定められた切断規則に従って切断がされる。例えば、本実施形態においては、図3に示されるような切断規則に従って切断がされる。
 まず、1回目の切断処理において、材料板を短辺方向に沿って切断する。続いて、2回目の切断処理において、材料板を長辺方向に沿って切断する。そして、3回目の切断処理において、材料板を短辺方向に沿って切断する。情報処理装置10は、このような切断規則に従ったレイアウトの候補を生成する。
 図4は、本実施形態に係る情報処理装置10のレイアウト生成部12によるレイアウトの候補の生成方法を示す。レイアウト生成部12は、製品板の形状およびサイズを表す複数の基本要素を結合して1つのレイアウトの候補(結合要素)を生成する場合、材料板から製品板を切り出す手順とは逆の手順で複数の基本要素同士を結合してレイアウトの候補を生成する。これにより、レイアウト生成部12は、切断規則に従ったレイアウトの候補を生成することができる。
 本実施形態においては、1回目の手順において、レイアウト生成部12は、複数の基本要素のうちの何れか2以上の要素を例えばランダムに選択し、選択した2以上の要素を任意の一辺の方向である第1方向(例えば横方向)に結合する。そして、レイアウト生成部12は、結合した状態の2以上の要素のそれぞれを長方形の板から切り出す切断パターン(第1の結合要素)を生成する。レイアウト生成部12は、1回目の手順において、このような第1の結合要素を複数個生成する。
 続いて、2回目の手順において、レイアウト生成部12は、複数の基本要素および複数の第1の結合要素のうち何れか2以上の要素を例えばランダムに選択し、選択した2以上の要素を第1方向に対して垂直な第2方向(例えば縦方向)に結合する。そして、レイアウト生成部12は、結合した状態の2以上の要素を長方形の板から切り出す切断パターン(第2の結合要素)を生成する。レイアウト生成部12は、2回目の手順において、このような第2の結合要素を複数個生成する。
 続いて、3回目の手順において、レイアウト生成部12は、複数の基本要素、複数の第1の結合要素および複数の第2の結合要素のうち何れか2以上の要素を、例えばランダムに選択し、選択した2以上の要素を第1方向に結合する。そして、レイアウト生成部12は、選択した2以上の要素を長方形の板から切り出す切断パターン(第3の結合要素)を生成する。レイアウト生成部12は、3回目の手順において、このような第3の結合要素を複数個生成する。
 そして、レイアウト生成部12は、このように生成した第3の結合要素を、複数のレイアウトの候補として出力する。なお、レイアウト生成部12は、1回目の手順、2回目の手順および3回目の手順の何れにおいても、結合後の形状が材料板の形状内に収まるように結合要素を生成する。また、レイアウトの候補を出力する場合において、レイアウト生成部12は、生成済みのレイアウトの候補と同一のレイアウトの候補を出力しないように重複排除の処理を行う。
 図5は、本実施形態に係るレイアウト生成部12の機能構成を示す。レイアウト生成部12は、基本要素記憶部22と、結合要素記憶部24と、取込部32と、割当部34と、生成部36と、算出部38と、ハッシュ値化部40と、重複検出部42と、追加部44とを有する。
 基本要素記憶部22は、複数の基本要素(製品板の形状及びサイズ)およびその基本要素の要素識別値と対応させて記憶する。結合要素記憶部24は、複数の結合要素(レイアウトの候補)およびその結合要素のハッシュ値化された要素識別値を対応させて記憶する。
 取込部32は、外部から複数の基本要素を取り込み、取り込んだ複数の基本要素を基本要素記憶部22に記憶させる。本実施形態においては、取込部32は、複数の製品板のサイズおよび形状を複数の基本要素として取り込んで、基本要素記憶部22に記憶させる。
 割当部34は、複数の基本要素のそれぞれに対して要素識別値を割り当てる。本実施形態においては、割当部34は、複数の基本要素のそれぞれに対して、形状及びサイズ毎に固有の要素識別値を割り当る。そして、割当部34は、複数の基本要素のそれぞれに割り当てた要素識別値を、基本要素に対応させて基本要素記憶部22に記憶させる。
 ここで、割当部34は、結合法則が成り立ち且つ交換法則が成り立たない演算、および、結合法則が成り立ち且つ交換法則が成り立つ演算のそれぞれにより合成することができる値を、要素識別値として基本要素に割り当てる。本実施形態においては、割当部34は、正方行列である要素識別値を複数の基本要素のそれぞれに割り当てる。この場合において、割当部34は、形状及びサイズ毎に、内部の値がランダムな整数値となる正方行列を複数の基本要素のそれぞれに割り当てる。
 なお、要素識別値が正方行列である場合、結合法則が成り立ち且つ交換法則が成り立たない演算の一例は、行列積である。また、要素識別値が正方行列である場合、結合法則が成り立ち且つ交換法則が成り立つ演算の一例は、行列和である。割当部34は、四元数を要素識別値として、複数の基本要素のそれぞれに割り当ててもよい。
 生成部36は、複数の基本要素のうちの2以上の基本要素を結合し、結合した2以上の基本要素を表す複数の結合要素を生成する。本実施形態においては、生成部36は、それぞれが製品板を表す複数の基本要素のうちの2以上の基本要素を結合し、結合した2以上の基本要素のそれぞれを材料板から切り出す切断パターンを表す複数のレイアウトの候補(複数の結合要素)を生成する。なお、生成部36は、一例として、図4に示した手順により複数のレイアウトの候補を生成する。
 算出部38は、生成部36により生成される複数のレイアウトの候補(複数の結合要素)のそれぞれに対して、対応する要素識別値を生成する。この場合において、算出部38は、レイアウトの候補(結合要素)に含まれる複数の基本要素のそれぞれに割り当てられた複数の要素識別値を、要素の結合方法に応じた演算により合成して、レイアウトの候補(結合要素)に対応する1つの要素識別値を算出する。
 より具体的には、算出部38は、順序を区別する結合方法により2つの要素を結合した場合には、結合法則が成り立ち且つ交換法則が成り立たない演算により対応する2つの要素識別値を合成する。本実施形態においては、要素識別値が正方行列であるので、算出部38は、順序を区別する結合方法により2つの要素を結合した場合には、行列積により対応する2つの要素識別値を合成する。なお、この場合における演算方法の一例については、図7を参照して更に説明する。
 また、算出部38は、順序を区別しない結合方法により2つの要素を結合した場合には、結合法則が成り立ち且つ交換法則が成り立つ演算により対応する2つの要素識別値を合成する。本実施形態においては、要素識別値が正方行列であるので、算出部38は、順序を区別しない結合方法により2つの要素を結合した場合には、行列和により対応する2つの要素識別値を合成する。なお、この場合における演算方法の一例については、図8を参照して更に説明する。
 このように算出部38により算出されたレイアウトの候補(結合要素)に対応する要素識別値は、同一の切断パターンの場合には、同一値となる。また、レイアウトの候補(結合要素)に対応する要素識別値は、順序を区別しない方法により結合された要素同士が入れ替わっている場合にも、レイアウトとして等価であるので、同一値となる。なお、生成された要素識別値の特徴については、図9~図11を参照して更に説明する。
 ハッシュ値化部40は、複数のレイアウトの候補(複数の結合要素)のそれぞれの要素識別値を、予め定められた規則によりハッシュ値に変換する。ハッシュ値化部40は、一例として、正方行列である要素識別値を予め定められた規則でスカラー値に変換して、要素識別値をハッシュ値化する。なお、ハッシュ値化の方法の一例については、図12を参照して更に説明する。
 重複検出部42は、複数のレイアウトの候補(複数の結合要素)のそれぞれのハッシュ値化された要素識別値に基づき、複数の結合要素のうち重複する結合要素を検出する。より詳しくは、重複検出部42は、生成部36により新たにレイアウトの候補(結合要素)が生成されたことに応じて、新たに生成されたレイアウトの候補(結合要素)に対応するハッシュ値化された要素識別値をハッシュ値化部40から受け取る。
 重複検出部42は、ハッシュ値化部40から受け取ったハッシュ値化された要素識別値と、既に生成されて結合要素記憶部24に記憶された複数のレイアウトの候補(結合要素)に対応するハッシュ値化された要素識別値と比較して、一致しているか否かを判断する。重複検出部42は、一致していれば、新たなレイアウトの候補(結合要素)が、既に生成されて結合要素記憶部24に記憶されている複数のレイアウトの候補(結合要素)と重複していると判断する。
 なお、重複検出部42は、ハッシュ値化部40から受け取ったハッシュ値化された要素識別値と、既に生成されて結合要素記憶部24に記憶された複数のレイアウトの候補(結合要素)に対応するハッシュ値化された要素識別値とが一致している場合には、ハッシュ値化された要素識別値が一致しているレイアウトの候補(結合要素)同士の構成を更に詳細に解析して、構成が一致しているか否かを判断してもよい。重複検出部42は、一例として、ハッシュ値化された要素識別値が一致しているレイアウトの候補(結合要素)に含まれる基本要素の内容および要素の結合方法を解析して、レイアウトの候補(結合要素)同士が一致しているか否かを更に判断してもよい。
 また、本実施形態において、結合要素記憶部24は、含まれている製品板の枚数を複数のレイアウトの候補のそれぞれに対応させて記憶してもよい。この場合、まず、重複検出部42は、生成部36により生成された新たなレイアウトの候補に含まれる製品板の枚数を検出する。そして、重複検出部42は、検出した枚数と同一枚数の製品板を含むレイアウトの候補を結合要素記憶部24から抽出し、抽出したレイアウトの候補に対応する要素識別値と新たなレイアウトの候補の要素識別値との間で重複を判断する。これにより、重複検出部42は、レイアウトの候補の重複検出を効率良く実行することができる。
 追加部44は、生成部36により生成された新たなレイアウトの候補(結合要素)の要素識別値と結合要素記憶部24に記憶されているレイアウトの候補(結合要素)の要素識別値とが重複しないと判断されたことを条件として、新たなレイアウトの候補(結合要素)および対応する要素識別値を結合要素記憶部24に追加して記憶させる。
 図6は、本実施形態に係るレイアウト生成部12によるレイアウトの候補の生成フローを示す。レイアウト生成部12は、図6に示されるステップS21~ステップS29の処理を実行する。
 まず、ステップS21において、取込部32は、複数の製品板のサイズおよび形状を複数の基本要素として取り込む。続いて、ステップS22において、割当部34は、複数の基本要素のそれぞれに対して、形状及びサイズ毎に、固有の正方行列の要素識別値を割り当る。
 続いて、レイアウト生成部12は、ステップS24からステップS28までの処理を繰り返して実行する(ステップS23とステップS29との間のループ処理)。ループ処理内においては、まず、ステップS24において、生成部36は、一枚のレイアウトの候補(結合要素)を生成する。生成部36は、一例として、図4に示した手順によりレイアウトの候補を生成する。
 続いて、ステップS25において、算出部38は、ステップS24で生成されたレイアウトの候補(結合要素)の要素識別値を算出する。この場合において、算出部38は、レイアウトの候補(結合要素)に含まれる複数の基本要素のそれぞれに割り当てられた複数の要素識別値を、要素の結合方法に応じた演算により合成して、レイアウトの候補に対応する要素識別値を算出する。
 本実施形態においては、算出部38は、順序を区別する結合方法により2つの要素を結合した場合には、行列積により対応する2つの要素識別値を合成する。また、算出部38は、順序を区別しない結合方法により2つの要素を結合した場合には、行列和により対応する2つの要素識別値を合成する。
 続いて、ステップS26において、ハッシュ値化部40は、ステップS25で算出した要素識別値を、予め定められた規則によりハッシュ値に変換する。続いて、ステップS27において、重複検出部42は、ステップS24で生成されたレイアウトの候補が、これまでの処理において既に生成された1または複数のレイアウトの候補と重複するか否かを判断する。より具体的には、重複検出部42は、ステップS26で算出されたハッシュ値化された要素識別値と、既に生成された1または複数のレイアウトの候補のハッシュ値化された要素識別値とが一致する場合には、重複すると判断する。また、重複検出部42は、一致しない場合には重複しないと判断する。
 重複すると判断する場合(ステップS27のYes)、重複検出部42は、ステップS24で生成した新たなレイアウトの候補を破棄して、処理をステップS29に進める。重複しないと判断する場合(ステップS27のNo)、重複検出部42は、処理をステップS28に進める。ステップS28において、追加部44は、ステップS24で生成したレイアウトの候補(結合要素)およびステップS26で算出したハッシュ値化した要素識別値を結合要素記憶部24内に追加する。そして、追加部44は、追加が完了した後、処理をステップS29に進める。
 ステップS29において、レイアウト生成部12は、レイアウトの候補の作成処理を終了するか否かを判断する。レイアウト生成部12は、一例として、予め定められた数(例えば、数万から数十万)のレイアウトの候補を作成した場合、または、予め定められた時間が経過した場合に、レイアウトの候補の作成処理を終了すると判断する。レイアウト生成部12は、レイアウトの候補の作成処理を終了しないと判断した場合には、処理をステップS24に戻し、ステップS24からステップS28の処理を繰り返す。
 以上のステップS21からステップS29の処理を実行することにより、レイアウト生成部12は、互いに重複しない複数のレイアウトの候補を作成することができる。
 図7は、2つの要素識別値を行列積により合成する処理例を示す。例えば、2行2列の正方行列で表された要素識別値が各要素に割り当てられているとする。この場合において、2つの要素を互いの順序を区別する結合方法により結合した場合には、図7に示されるように、算出部38は、行列積により、2つの要素に対応する2つの要素識別値を合成する。この結果、算出部38は、行列積により、2行2列の正方行列を結合要素の要素識別値として得ることができる。
 図8は、2つの要素識別値を行列和により合成する処理例を示す。例えば、2行2列の正方行列で表された要素識別値が各要素に割り当てられているとする。この場合において、2つの要素を互いの順序を区別しない結合方法により結合した場合には、図8に示されるように、算出部38は、行列和により、2つの要素に対応する2つの要素識別値を合成する。この結果、算出部38は、行列和により、2行2列の正方行列を結合要素の要素識別値として得ることができる。
 以上のように行列積および行列和を用いることにより、合成前の要素識別値と行数および列数が同一の正方行列を得ることができる。これにより、算出部38は、結合要素を更に他の要素と結合した場合において、算出部38は、合成結果として得られた要素識別値に基づき、新たな結合要素の要素識別値を算出することができる。
 なお、算出部38は、行列積または行列和の演算した後、行列内の各値を予め定められた桁以下の値に丸めた要素識別値としてもよい。これにより、算出部38は、行列積または行列和の演算をしてオーバーフローをしてしまうことを回避することができる。
 図9は、レイアウトの候補を生成する場合における、要素識別値の演算処理の一例を示す。例えば、製鉄所において長尺状に圧延された板を短辺方向に切断して鋼板を切り出す場合、切断位置が変わってもコストに変わりは無い。これに対して、製鉄所において長尺状に圧延された板を長手方向に切断して鋼板を切り出す場合、端側から鋼板を切り出すのは困難である等の事情から、切断位置によってコストが変る場合がある。
 そこで、図9の例においては、生成部36は、製品板を横方向(圧延した長尺状の板の長手方向)に突き当てて結合する場合には、結合する製品板の順序を区別せずにレイアウトの候補を生成する。これに対して、生成部36は、製品板を縦方向(圧延した長尺状の板の短辺方向)に突き当てて結合する場合には、結合する製品板の順序を区別してレイアウトの候補を生成する。
 そして、算出部38は、生成部36が2つの要素を横方向に結合した場合には、当該2つの要素に割り当てられた2つの要素識別値(行列)を行列和の演算により合成して、結合要素の要素識別値を算出する。また、算出部38は、生成部36が2つの要素を縦方向に結合した場合には、当該2つの要素に割り当てられた2つの要素識別値(行列)を対応する2つの要素の並び順どおりに行列積の演算により合成して、結合要素の要素識別値を算出する。
 図9には、第1から第4の基本要素a、b、c、dを組み合わせてレイアウトの候補(結合要素)を生成する例が示されている。第1の基本要素aには、2行2列の行列Aが要素識別値として割り当てられている。第2の基本要素bには、2行2列の行列Bが要素識別値として割り当てられている。第3の基本要素cには、2行2列の行列Cが要素識別値として割り当てられている。第4の基本要素dには、2行2列の行列Dが要素識別値として割り当てられている。
 また、図9の例においては、第1から第5の結合要素p,p,p,p,pが生成されている。そして、これらの中の第4の結合要素pおよび第5のレイアウトの候補pとされている。
 第1の結合要素pは、第1の基本要素aと第2の基本要素bとを横方向に結合して形成されている。従って、算出部38は、要素識別値Aと要素識別値Bとの行列和(A+B)を演算して、第1の結合要素pの要素識別値Pを生成する。第2の結合要素pは、第3の基本要素cと第4の基本要素dとを縦方向に結合して形成されている。従って、算出部38は、要素識別値Cと要素識別値Dとの行列積(C×D)を演算して、第2の結合要素pの要素識別値Pを生成する。
 また、第3の結合要素pは、第2の基本要素bと第2の結合要素pとを横方向に結合して形成されている。従って、算出部38は、要素識別値Bと要素識別値Pとの行列和(B+P)を演算して、第3の結合要素pの要素識別値Pを生成する。
 また、第4の結合要素pは、第1の基本要素aと第3の結合要素pとを横方向に結合して形成されている。従って、算出部38は、要素識別値Aと要素識別値Pとの行列和(A+P)を演算して、第4の結合要素pの要素識別値Pを生成する。
 また、第5の結合要素pは、第1の結合要素pと第2の結合要素pとを横方向に結合して形成されている。従って、算出部38は、要素識別値Pと要素識別値Pとの行列和(P+P)を演算して、第5の結合要素pの要素識別値Pを生成する。
 ここで、第4の結合要素pと第5の結合要素pとは、生成過程は異なっているが、含まれる複数の基本要素の配置は同一である。行列積および行列和は、結合法則が成り立つ演算である。このため、生成過程が異なっていても、含まれる複数の基本要素の配置が同一であれば、算出部38は、結合要素の要素識別値が同一となる。
 従って、第4の結合要素pの要素識別値P、および、第5の結合要素pの要素識別値Pは、同一となる。この結果、重複検出部42は、このような生成過程が異なっているが含まれる複数の基本要素の配置が同一の複数のレイアウトの候補のうち、一方を排除することができる。
 図10は、含まれる要素のうちの一部の要素の横方向の結合順序が、図9のレイアウトの候補(第4の結合要素P)と異なるレイアウトの候補(第6の結合要素P)の一例および対応する要素識別値の一例を示す。図10に示される第6の結合要素pは、図9の第4の結合要素pと比較した場合、含まれる要素のうちの一部の要素の横方向の結合順序が異なるが、含まれる要素の縦方向の結合順序は同一である。
 本例においては、算出部38は、2つの要素を横方向に結合した場合には、行列和(結合法則が成り立ち且つ交換法則が成り立つ演算)により2つの要素識別値を合成する。従って、含まれている要素の横方向の結合順序のみが異なる結合要素同士は、要素識別値が同一となる。このため、図10に示される第6の結合要素pの要素識別値P、および、図9に示される第4の結合要素pの要素識別値Pは、同一となる。この結果、重複検出部42は、含まれている要素の横方向の結合順序のみが異なる複数のレイアウトの候補のうち、一方を排除することができる。
 図11は、含まれる要素のうちの一部の要素の縦方向の結合順序が、図9のレイアウトの候補(第4の結合要素P)と異なるレイアウトの候補(第7の結合要素P)の一例および対応する要素識別値の一例を示す。図11に示される第7の結合要素pは、図9の第4の結合要素pと比較した場合、含まれる要素のうちの一部の要素の縦方向の結合順序が異なる。
 本例においては、算出部38は、2つの要素を縦方向に結合した場合には、行列積(結合法則が成り立ち且つ交換法則が成り立たない演算)により2つの要素識別値を合成する。従って、含まれている要素の縦方向の結合順序が異なる結合要素同士は、要素識別値が異なる。このため、図11に示される第7の結合要素pの要素識別値P、および、図9に示される第4の結合要素pの要素識別値Pは、異なる。この結果、重複検出部42は、含まれている要素の縦方向の結合順序が異なる複数のレイアウトの候補を、それぞれ排除せずに登録させることができる。
 図12は、行列の要素識別値をハッシュ値化する演算の一例を示す。ハッシュ値化部40は、算出部38により生成された要素識別値をハッシュ値化する。
 要素識別値が例えば2行2列の行列である場合、ハッシュ値化部40は、一例として、図12に示されるように、1行1列の値(x11)に1を乗じ、2行1列の値(x21)に10を乗じ、1行2列の値(x12)に100を乗じ、2行2列の値(x22)に1000を乗じて、これらを加算する。なお、ハッシュ値化部40は、このような演算方法に限らず、要素識別値をどのような演算方法によりハッシュ値化してもよい。
 図13は、順序を区別する結合方法に対応する演算により2つの要素識別値を合成する処理例を示す。下記の式(11)に示される行列演算は、結合法則が成り立つ。また、式(11)に示される行列演算は、交換法則が成り立たない。
Figure JPOXMLDOC01-appb-M000003

 従って、行列の要素識別値が各要素に割り当てられた場合において、順序を区別する結合方法により2つの要素を結合した場合には、算出部38は、式(11)に示される行列演算により対応する2つの要素識別値を合成してもよい。
 なお、順序を区別して結合する方向が2つある場合、算出部38は、それぞれの方向に対応して演算の種類を区別して要素識別値を合成しなければならない。例えば、立体を表す要素を結合する場合に上下方向(第1方向)の結合および縦方向(第2方向)の結合順序を区別する場合において、算出部38は、第1方向への結合に対応して行列積により要素識別値を合成し、第2方向への結合に対応して式(11)に示される演算により要素識別値を合成する。
 図14は、順序を区別しない結合方法に対応する演算により2つの要素識別値を合成する処理例を示す。下記の式(12)に示される行列演算は、結合法則が成り立つ。また、式(12)に示される行列演算は、交換法則が成り立つ。
Figure JPOXMLDOC01-appb-M000004

 従って、行列の要素識別値が各要素に割り当てられた場合において、順序を区別しない結合方法により2つの要素を結合した場合には、算出部38は、式(12)に示される行列演算により対応する2つの要素識別値を合成してもよい。
 なお、順序を区別せずに結合する方向が2つある場合、算出部38は、それぞれの方向に対応して演算の種類を区別して要素識別値を合成してもよい。例えば、立体を表す要素を結合する場合に上下方向(第1方向)の結合および縦方向(第2方向)の結合順序を区別しない場合において、算出部38は、第1方向への結合に対応して行列和により要素識別値を合成し、第2方向への結合に対応して式(12)に示される演算により要素識別値を合成する。
 図15は、本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。本実施形態に係るコンピュータ1900は、ホスト・コントローラ2082により相互に接続されるCPU2000、RAM2020、グラフィック・コントローラ2075、及び表示装置2080を有するCPU周辺部と、入出力コントローラ2084によりホスト・コントローラ2082に接続される通信インターフェイス2030、ハードディスクドライブ2040、及びCD-ROMドライブ2060を有する入出力部と、入出力コントローラ2084に接続されるROM2010、フレキシブルディスク・ドライブ2050、及び入出力チップ2070を有するレガシー入出力部とを備える。
 ホスト・コントローラ2082は、RAM2020と、高い転送レートでRAM2020をアクセスするCPU2000及びグラフィック・コントローラ2075とを接続する。CPU2000は、ROM2010及びRAM2020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ2075は、CPU2000等がRAM2020内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置2080上に表示させる。これに代えて、グラフィック・コントローラ2075は、CPU2000等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
 入出力コントローラ2084は、ホスト・コントローラ2082と、比較的高速な入出力装置である通信インターフェイス2030、ハードディスクドライブ2040、CD-ROMドライブ2060を接続する。通信インターフェイス2030は、ネットワークを介して他の装置と通信する。ハードディスクドライブ2040は、コンピュータ1900内のCPU2000が使用するプログラム及びデータを格納する。CD-ROMドライブ2060は、CD-ROM2095からプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。
 また、入出力コントローラ2084には、ROM2010と、フレキシブルディスク・ドライブ2050、及び入出力チップ2070の比較的低速な入出力装置とが接続される。ROM2010は、コンピュータ1900が起動時に実行するブート・プログラム、及び/又は、コンピュータ1900のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ2050は、フレキシブルディスク2090からプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。入出力チップ2070は、フレキシブルディスク・ドライブ2050を入出力コントローラ2084へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ2084へと接続する。
 RAM2020を介してハードディスクドライブ2040に提供されるプログラムは、フレキシブルディスク2090、CD-ROM2095、又はICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、RAM2020を介してコンピュータ1900内のハードディスクドライブ2040にインストールされ、CPU2000において実行される。
 コンピュータ1900にインストールされ、コンピュータ1900を、情報処理装置10として機能させるプログラムは、グループ生成モジュールと、選択モジュールとを備える。グループ生成モジュールは、基本要素記憶モジュールと、結合要素記憶モジュールと、取込モジュールと、割当モジュールと、生成モジュールと、算出モジュールと、ハッシュ値化モジュールと、重複検出モジュールと、追加モジュールとを有する。これらのプログラム又はモジュールは、CPU2000等に働きかけて、コンピュータ1900を、基本要素記憶部22、結合要素記憶部24、取込部32、割当部34、生成部36、算出部38、ハッシュ値化部40、重複検出部42および追加部44を有するレイアウト生成部12と、選択部14としてそれぞれ機能させる。
 これらのプログラムに記述された情報処理は、コンピュータ1900に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である、レイアウト生成部12および選択部14として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ1900の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の情報処理装置10が構築される。
 一例として、コンピュータ1900と外部の装置等との間で通信を行う場合には、CPU2000は、RAM2020上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス2030に対して通信処理を指示する。通信インターフェイス2030は、CPU2000の制御を受けて、RAM2020、ハードディスクドライブ2040、フレキシブルディスク2090、又はCD-ROM2095等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス2030は、DMA(ダイレクト・メモリ・アクセス)方式により記憶装置との間で送受信データを転送してもよく、これに代えて、CPU2000が転送元の記憶装置又は通信インターフェイス2030からデータを読み出し、転送先の通信インターフェイス2030又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
 また、CPU2000は、ハードディスクドライブ2040、CD-ROMドライブ2060(CD-ROM2095)、フレキシブルディスク・ドライブ2050(フレキシブルディスク2090)等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をDMA転送等によりRAM2020へと読み込ませ、RAM2020上のデータに対して各種の処理を行う。そして、CPU2000は、処理を終えたデータを、DMA転送等により外部記憶装置へと書き戻す。このような処理において、RAM2020は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはRAM2020および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、CPU2000は、RAM2020の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはRAM2020の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもRAM2020、メモリ、及び/又は記憶装置に含まれるものとする。
 また、CPU2000は、RAM2020から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、RAM2020へと書き戻す。例えば、CPU2000は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合(又は不成立であった場合)に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
 また、CPU2000は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第1属性の属性値に対し第2属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、CPU2000は、記憶装置に格納されている複数のエントリの中から第1属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第2属性の属性値を読み出すことにより、所定の条件を満たす第1属性に対応付けられた第2属性の属性値を得ることができる。
 以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク2090、CD-ROM2095の他に、DVD又はCD等の光学記録媒体、MO等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ1900に提供してもよい。
 以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
 特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
10 情報処理装置
12 レイアウト生成部
14 選択部
22 基本要素記憶部
24 結合要素記憶部
32 取込部
34 割当部
36 生成部
38 算出部
40 ハッシュ値化部
42 重複検出部
44 追加部
1900 コンピュータ
2000 CPU
2010 ROM
2020 RAM
2030 通信インターフェイス
2040 ハードディスクドライブ
2050 フレキシブルディスク・ドライブ
2060 CD-ROMドライブ
2070 入出力チップ
2075 グラフィック・コントローラ
2080 表示装置
2082 ホスト・コントローラ
2084 入出力コントローラ
2090 フレキシブルディスク
2095 CD-ROM

Claims (18)

  1.  複数の基本要素のそれぞれに要素識別値を割り当てる割当部と、
     前記複数の基本要素のうちの2以上の基本要素を結合し、結合した前記2以上の基本要素を表す結合要素を生成する生成部と、
     前記結合要素に含まれる複数の基本要素のそれぞれに割り当てられた複数の要素識別値を、要素の結合方法に応じた演算により合成して、前記結合要素に対応する1つの要素識別値を算出する算出部と、
     を備え、
     前記算出部は、
     順序を区別する結合方法により2つの要素を結合した場合には、交換法則が成り立たない演算により対応する2つの要素識別値を合成し、
     順序を区別しない結合方法により2つの要素を結合した場合には、交換法則が成り立つ演算により対応する2つの要素識別値を合成する
     情報処理装置。
  2.  前記生成部は、複数の結合要素を生成し、
     当該情報処理装置は、前記複数の結合要素のそれぞれの前記要素識別値に基づき、前記複数の結合要素のうち重複する結合要素を検出する重複検出部を更に備える
     請求項1に記載の情報処理装置。
  3.  前記算出部は、
     順序を区別する結合方法により2つの要素を結合した場合には、結合法則が成り立ち且つ交換法則が成り立たない演算により対応する2つの要素識別値を合成し、
     順序を区別しない結合方法により2つの要素を結合した場合には、結合法則が成り立ち且つ交換法則が成り立つ演算により対応する2つの要素識別値を合成する
     請求項2に記載の情報処理装置。
  4.  前記複数の結合要素のそれぞれの前記要素識別値を予め定められた規則によりハッシュ値に変換するハッシュ値化部を更に備え、
     前記重複検出部は、前記複数の結合要素のそれぞれのハッシュ値化された前記要素識別値に基づき、前記複数の結合要素のうち重複する結合要素を検出する
     請求項3に記載の情報処理装置。
  5.  前記重複検出部は、ハッシュ値化された前記要素識別値が一致する複数の結合要素を検出した場合、検出した複数の結合要素のそれぞれに含まれる複数の基本要素および要素の結合方法が一致するか否かを更に解析して重複する結合要素を検出する
     請求項4に記載の情報処理装置。
  6.  前記割当部は、前記複数の基本要素のそれぞれに正方行列である要素識別値を割り当てる
     請求項2に記載の情報処理装置。
  7.  前記算出部は、順序を区別する結合方法により2つの要素を結合した場合には、行列積により対応する2つの要素識別値を合成する
     請求項6に記載の情報処理装置。
  8.  前記算出部は、順序を区別しない結合方法により2つの要素を結合した場合には、行列和により対応する2つの要素識別値を合成する
     請求項6に記載の情報処理装置。
  9.  前記算出部は、順序を区別する結合方法により2つの要素を結合した場合には、下記式(11)に示される行列演算により対応する2つの要素識別値を合成する
     請求項6に記載の情報処理装置。
    Figure JPOXMLDOC01-appb-M000001
  10.  前記算出部は、順序を区別しない結合方法により2つの要素を結合した場合には、下記式(12)に示される行列演算により対応する2つの要素識別値を合成する
     請求項6に記載の情報処理装置。
    Figure JPOXMLDOC01-appb-M000002
  11.  前記算出部は、方向を区別して2つの基本要素を結合する場合には、結合する方向毎に異なる演算により対応する2つの要素識別値を合成する
     請求項6に記載の情報処理装置。
  12.  当該情報処理装置は、それぞれが形状及びサイズを表す前記複数の基本要素のうちの2以上の基本要素を結合し、結合した前記2以上の基本要素を表す前記複数の結合要素を生成する装置であって、
     前記割当部は、前記複数の基本要素のそれぞれに対して、形状及びサイズ毎に要素識別値を割り当て、
     前記算出部は、結合方向に応じて交換法則が成り立つ演算および交換法則が成り立たない演算のいずれかにより対応する2つの要素識別値を合成する
     請求項2に記載の情報処理装置。
  13.  当該情報処理装置は、それぞれが長方形の製品板を表す前記複数の基本要素のうちの2以上の基本要素を結合し、結合した前記2以上の基本要素のそれぞれを長方形の材料板から切り出す切断パターンを表す複数のレイアウトの候補を生成する装置であって、
     前記生成部は、前記複数のレイアウトの候補を前記複数の結合要素として生成し、
     前記重複検出部は、前記複数のレイアウトのそれぞれの前記要素識別値に基づき、前記複数のレイアウトの候補の重複を検出する
     請求項12に記載の情報処理装置。
  14.  前記割当部は、同一サイズの前記製品板に同一の要素識別値を割り当てる
     請求項13に記載の情報処理装置。
  15.  レイアウトの候補および要素識別値を対応させて記憶する結合要素記憶部と、
     前記生成部により生成された新たなレイアウトの候補の前記要素識別値と前記結合要素記憶部に記憶されているレイアウトの候補の前記要素識別値とが重複しないと判断されたことを条件として、前記新たなレイアウトの候補および対応する要素識別値を前記結合要素記憶部に追加して記憶させる追加部と、
     を更に備える
     請求項13に記載の情報処理装置。
  16.  前記結合要素記憶部は、含まれている製品板の枚数を複数のレイアウトの候補のそれぞれに対応させて記憶し、
     前記重複検出部は、前記新たなレイアウトの候補に含まれる製品板の枚数を検出し、検出した枚数と同一枚数の製品板を含むレイアウトの候補を前記結合要素記憶部から抽出し、抽出したレイアウトの候補に対応する前記要素識別値と前記新たなレイアウトの候補の前記要素識別値との間で重複を判断する
     請求項15に記載の情報処理装置。
  17.  コンピュータを情報処理装置として機能させるためのプログラムであって、
     前記情報処理装置は、
     複数の基本要素のそれぞれに要素識別値を割り当てる割当部と、
     前記複数の基本要素のうちの2以上の基本要素を結合し、結合した前記2以上の基本要素を表す結合要素を生成する生成部と、
     前記結合要素に含まれる複数の基本要素のそれぞれに割り当てられた複数の要素識別値を、要素の結合方法に応じた演算により合成して、前記結合要素に対応する1つの要素識別値を算出する算出部と、
     を備え、
     前記算出部は、
     順序を区別する結合方法により2つの要素を結合した場合には、交換法則が成り立たない演算により対応する2つの要素識別値を合成し、
     順序を区別しない結合方法により2つの要素を結合した場合には、交換法則が成り立つ演算により対応する2つの要素識別値を合成する
     プログラム。
  18.  複数の基本要素のそれぞれに要素識別値を割り当てる割当ステップと、
     前記複数の基本要素のうちの2以上の基本要素を結合し、結合した前記2以上の基本要素を表す結合要素を生成する生成ステップと、
     前記結合要素に含まれる複数の基本要素のそれぞれに割り当てられた複数の要素識別値を、要素の結合方法に応じた演算により合成して、前記結合要素に対応する1つの要素識別値を算出する算出ステップと、
     を含み、
     前記算出ステップでは、
     順序を区別する結合方法により2つの要素を結合した場合には、交換法則が成り立たない演算により対応する2つの要素識別値を合成し、
     順序を区別しない結合方法により2つの要素を結合した場合には、交換法則が成り立つ演算により対応する2つの要素識別値を合成する
     方法。
PCT/JP2013/059524 2012-04-26 2013-03-29 複数の要素の結合結果を識別する情報処理装置、プログラムおよび方法 WO2013161511A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
GB1420727.8A GB2517335A (en) 2012-04-26 2013-03-29 Information processing device, program, and method for identifying result of joining plurality of elements
CN201380021838.2A CN104246778B (zh) 2012-04-26 2013-03-29 用于生成切割图案的信息处理设备、方法和存储介质
DE112013002192.7T DE112013002192T5 (de) 2012-04-26 2013-03-29 Datenverarbeitungsvorrichtung zum Unterscheiden zwischen kombinierten Ergebnissen einer Vielzahl von Elementen, ein Programmprodukt und ein Verfahren für selbige

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-101470 2012-04-26
JP2012101470A JP2015035006A (ja) 2012-04-26 2012-04-26 複数の要素の結合結果を識別する情報処理装置、プログラムおよび方法

Publications (1)

Publication Number Publication Date
WO2013161511A1 true WO2013161511A1 (ja) 2013-10-31

Family

ID=49477993

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/059524 WO2013161511A1 (ja) 2012-04-26 2013-03-29 複数の要素の結合結果を識別する情報処理装置、プログラムおよび方法

Country Status (6)

Country Link
US (1) US9639073B2 (ja)
JP (1) JP2015035006A (ja)
CN (1) CN104246778B (ja)
DE (1) DE112013002192T5 (ja)
GB (1) GB2517335A (ja)
WO (1) WO2013161511A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017120567A (ja) * 2015-12-28 2017-07-06 キヤノンマーケティングジャパン株式会社 情報処理装置、制御方法、及びプログラム
WO2023242619A1 (en) * 2022-06-17 2023-12-21 Arcelormittal Method to optimize the nesting of two blanks within a longitudinally extending flat strip
WO2023242620A1 (en) * 2022-06-17 2023-12-21 Arcelormittal Method to automatically position blanks in a strip and to calculate the associated scrap ratio
WO2023242674A1 (en) * 2022-06-17 2023-12-21 Arcelormittal Method to optimize the nesting of two blanks within a longitudinally extending flat strip

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012043217A1 (ja) * 2010-09-28 2012-04-05 インターナショナル・ビジネス・マシーンズ・コーポレーション 複数の要素をグループ化する方法、プログラムおよび装置

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4129033A (en) * 1977-11-10 1978-12-12 Otterbach Paul M System for determining the level of heat treatment
US4402121A (en) * 1981-09-10 1983-09-06 Blakely Stephen W Method of manufacturing heat absorbing elements
US5379237A (en) * 1990-05-31 1995-01-03 Integrated Diagnostic Measurement Corporation Automated system for controlling the quality of regularly-shaped products during their manufacture
US5511303A (en) * 1992-05-12 1996-04-30 Tippins Incorporated Intermediate thickness and multiple furnace process line
JP3073612B2 (ja) 1992-10-29 2000-08-07 株式会社神戸製鋼所 板取り方法
AT398396B (de) * 1993-02-16 1994-11-25 Voest Alpine Ind Anlagen Verfahren zum herstellen eines bandes, vorstreifens oder einer bramme
JPH076184A (ja) 1993-05-19 1995-01-10 Hitachi Ltd 最適面取計画立案方法および装置
JPH08297503A (ja) 1995-04-27 1996-11-12 Mitsubishi Electric Corp 部材配置方法
DE19529049C1 (de) * 1995-07-31 1997-03-20 Mannesmann Ag Hochgeschwindigkeits-Dünnbrammenanlage
JPH09128362A (ja) 1995-11-02 1997-05-16 Fuji Electric Co Ltd 最適配置方法及びその装置
JP3308869B2 (ja) 1996-07-31 2002-07-29 株式会社アマダ 部品表示画像操作システムおよび方法
JPH1139358A (ja) 1997-07-17 1999-02-12 Nkk Corp 板状物品の引当方法
DE60028075D1 (de) 1999-11-23 2006-06-22 Canon Kk Bildverarbeitungsgerät
US6378221B1 (en) * 2000-02-29 2002-04-30 Edwards Lifesciences Corporation Systems and methods for mapping and marking the thickness of bioprosthetic sheet
US7043413B2 (en) * 2000-06-29 2006-05-09 Object Reservoir, Inc. Method for modeling an arbitrary well path in a hydrocarbon reservoir using adaptive meshing
US20020032551A1 (en) * 2000-08-07 2002-03-14 Jabari Zakiya Systems and methods for implementing hash algorithms
US6935997B2 (en) * 2000-09-14 2005-08-30 Rutgers, The State University Of New Jersey Patterning technology for folded sheet structures
US6689234B2 (en) * 2000-11-09 2004-02-10 Bechtel Bwxt Idaho, Llc Method of producing metallic materials
US7082220B2 (en) * 2001-01-25 2006-07-25 Sony Corporation Data processing apparatus
WO2003091872A1 (fr) * 2002-04-26 2003-11-06 Nihon University School Juridical Person Dispositif de tri par fusion en parallele, procede et programme y relatifs
DE10304318C5 (de) * 2003-02-04 2015-10-15 Sms Group Gmbh Verfahren zum Walzen von dünnen und/oder dicken Brammen aus Stahlwerkstoffen zu Warmband
US7240042B2 (en) * 2004-08-25 2007-07-03 Siemens Medical Solutions Usa, Inc. System and method for biological data analysis using a bayesian network combined with a support vector machine
JP4615951B2 (ja) * 2004-09-30 2011-01-19 株式会社日立製作所 形状モデル作成方法、および構造最適化システム
JP4237125B2 (ja) 2004-10-05 2009-03-11 三菱電機株式会社 図形配置装置、図形配置方法およびその方法をコンピュータに実行させるプログラム
US7277768B2 (en) * 2004-11-05 2007-10-02 International Business Machines Corporation Method for production design and operations scheduling for plate design in the steel industry
JP4810918B2 (ja) 2005-08-01 2011-11-09 富士ゼロックス株式会社 コードパターン画像生成装置及び方法、コードパターン画像読取装置及び方法、及びコードパターン画像媒体
US8448102B2 (en) * 2006-03-09 2013-05-21 Tela Innovations, Inc. Optimizing layout of irregular structures in regular layout context
US8214517B2 (en) * 2006-12-01 2012-07-03 Nec Laboratories America, Inc. Methods and systems for quick and efficient data management and/or processing
US8246772B2 (en) * 2008-04-16 2012-08-21 Metalforming, Inc. Programmable rollformer for combining an architectural sheet with a solar panel and method
WO2010092952A1 (ja) 2009-02-10 2010-08-19 公立大学法人大阪府立大学 パターン認識装置
CN102033512B (zh) * 2010-12-28 2012-08-08 王石 自动开料系统及其开料方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012043217A1 (ja) * 2010-09-28 2012-04-05 インターナショナル・ビジネス・マシーンズ・コーポレーション 複数の要素をグループ化する方法、プログラムおよび装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KEN'ICHI IDA ET AL.: "The Proposal of an Improved Genetic Algorithm for Floorplan Design with Non-slicing Structure", THE TRANSACTIONS OF THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS, vol. J87-A, no. 3, 1 March 2004 (2004-03-01), pages 399 - 405 *
TAKAYUKI YOSHIZUMI: "Gyoretsu o Mochiita Hush Kansu no Kosei Hoho", THE OPERATIONS RESEARCH SOCIETY OF JAPAN 2012 NEN SHUKI KENKYU HAPPYOKAI ABSTRACT-SHU (DAI 30 KAI KIGYO JIREI KORYUKAI), 12 September 2012 (2012-09-12), pages 42 - 43 *

Also Published As

Publication number Publication date
CN104246778B (zh) 2018-09-25
US9639073B2 (en) 2017-05-02
DE112013002192T5 (de) 2015-01-15
JP2015035006A (ja) 2015-02-19
GB201420727D0 (en) 2015-01-07
US20130289757A1 (en) 2013-10-31
GB2517335A (en) 2015-02-18
CN104246778A (zh) 2014-12-24

Similar Documents

Publication Publication Date Title
US9721186B2 (en) Global signatures for large-scale image recognition
CN108985008B (zh) 一种快速比对基因数据的方法和比对系统
US10402427B2 (en) System and method for analyzing result of clustering massive data
JP7048065B2 (ja) 結合性予測方法、装置、プログラム、記録媒体、および機械学習アルゴリズムの学習方法
WO2013161511A1 (ja) 複数の要素の結合結果を識別する情報処理装置、プログラムおよび方法
US7296248B2 (en) Method and apparatus for compiling a parameterized cell
JP2006301920A (ja) 文書分類プログラム、文書分類方法および文書分類装置
US11219928B2 (en) Shape packing technique
WO2016148107A1 (ja) データ処理装置、データ処理方法、および、データ処理用プログラム
JP6674094B2 (ja) 領域抽出プログラム、領域抽出方法、および領域抽出装置
US20150248430A1 (en) Efficient encoding and storage and retrieval of genomic data
Merelli et al. Image-based surface matching algorithm oriented to structural biology
JP4886266B2 (ja) 文献調査方法、文献調査システムおよび文献調査プログラム
JP5439235B2 (ja) 文書分類方法、文書分類装置、およびプログラム
US7849038B2 (en) Method for using the second homotopy group in assessing the similarity of sets of data
JP2016121019A (ja) 検品処理装置、検品システム、検品処理方法及びプログラム
US20210110038A1 (en) Method and apparatus to identify hardware performance counter events for detecting and classifying malware or workload using artificial intelligence
CN107169313A (zh) Dna数据文件的读取方法及计算机可读存储介质
JP2011141664A (ja) 文書比較装置、文書比較方法、及びプログラム
CN108062325A (zh) 比较方法和比较系统
Buntara et al. Is GPUs ready to boost genomic alignment computation
US7530013B2 (en) Optimizer of interdependent information
JP7201545B2 (ja) 帳票処理プログラム、帳票処理方法、及び帳票処理装置
JPWO2014168199A1 (ja) 論理演算方法および情報処理装置
JP7507331B1 (ja) レイアウト解析システム、レイアウト解析方法、及びプログラム

Legal Events

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

Ref document number: 13781531

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 1120130021927

Country of ref document: DE

Ref document number: 112013002192

Country of ref document: DE

ENP Entry into the national phase

Ref document number: 1420727

Country of ref document: GB

Kind code of ref document: A

Free format text: PCT FILING DATE = 20130329

WWE Wipo information: entry into national phase

Ref document number: 1420727.8

Country of ref document: GB

NENP Non-entry into the national phase

Ref country code: JP

122 Ep: pct application non-entry in european phase

Ref document number: 13781531

Country of ref document: EP

Kind code of ref document: A1