WO2023248482A1 - データ復号化装置、誤差補正システム及びデータ復号化プログラム - Google Patents

データ復号化装置、誤差補正システム及びデータ復号化プログラム Download PDF

Info

Publication number
WO2023248482A1
WO2023248482A1 PCT/JP2022/025416 JP2022025416W WO2023248482A1 WO 2023248482 A1 WO2023248482 A1 WO 2023248482A1 JP 2022025416 W JP2022025416 W JP 2022025416W WO 2023248482 A1 WO2023248482 A1 WO 2023248482A1
Authority
WO
WIPO (PCT)
Prior art keywords
axis
data
approximation
model
dependent data
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/JP2022/025416
Other languages
English (en)
French (fr)
Inventor
大二朗 古賀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Priority to US18/873,239 priority Critical patent/US20250370837A1/en
Priority to PCT/JP2022/025416 priority patent/WO2023248482A1/ja
Priority to JP2024528259A priority patent/JP7807544B2/ja
Priority to CN202280097202.5A priority patent/CN119384649A/zh
Priority to DE112022007085.4T priority patent/DE112022007085T5/de
Publication of WO2023248482A1 publication Critical patent/WO2023248482A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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/00Program-control systems
    • G05B19/02Program-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 program data in numerical form
    • G05B19/404Numerical 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 program data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1628Program controls characterised by the control loop
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6041Compression optimized for errors

Definitions

  • the present disclosure relates to a data decoding device, an error correction system, and a data decoding program.
  • axis-dependent data that depends on the coordinate values of each axis of an industrial machine, such as the above-mentioned error amount, may have a white noise-like property with a uniform appearance frequency as a whole.
  • it is difficult to compress data using entropy encoding technology because the above-mentioned small information entropy cannot be utilized.
  • An object of the present disclosure is to provide a data decoding technique that can decode axis-dependent data after encoding axis-dependent data that depends on the coordinate values of each axis of an industrial machine.
  • One aspect of the present disclosure is a data decoding device that decodes encoded data, wherein axis-dependent data that depends on coordinate values of each axis of an industrial machine is processed as a linear combination of each axis data of the industrial machine. Based on the linear combination model to be approximated and the model approximate encoded axis-dependent data approximated by the linear combination model, model approximate decoded axis-dependent data obtained by decoding the model approximate encoded axis-dependent data.
  • a data decoding device includes a decoding unit that generates data.
  • Another aspect of the present disclosure is an error correction system that corrects errors in industrial machinery, including a correction section and a data decoding device according to one aspect of the present disclosure, wherein the correction section is configured to This is an error correction system that corrects errors in the industrial machine based on rear axis dependent data.
  • FIG. 7 is a diagram showing an approximation error (vector ⁇ [X][Y]) including an exceptional point larger than a predetermined tolerance.
  • FIG. 6 is a diagram showing exceptional points that are excluded and retained because the approximation error (vector ⁇ [X][Y]) is larger than a predetermined tolerance.
  • It is a flowchart which shows the procedure of learning processing by a machine learning device.
  • FIG. 1 is a diagram showing the configuration of a data decoding device 1 according to the first embodiment.
  • the data decoding device 1 includes a decoding section 11.
  • the decoding unit 11 generates model approximate decoded axis dependent data as decoded axis dependent data based on the model approximate encoded axis dependent data and the linear combination model.
  • FIG. 5 is a diagram showing data in which the appearance frequency of each value is uniform. Similar to FIGS. 3 and 4, in FIG. 5, the horizontal axis indicates bit values, and the vertical axis indicates the frequency of appearance of each value.
  • White noise-like data with a uniform appearance frequency as shown in FIG. 5 cannot take advantage of the small information entropy described above, so it is difficult to compress the data by entropy encoding.
  • examples of static error correction for each axis of industrial machinery include pitch error correction, straightness error correction, and three-dimensional error correction.
  • Pitch error correction is correction of errors in the direction along the axial direction.
  • Straightness error correction is correction of errors in a direction perpendicular to the axial direction.
  • Three-dimensional error correction is correction of three-dimensional spatial errors.
  • FIG. 6 is a diagram showing each axis error on the X axis.
  • Each axis error of the X axis is an error amount of each coordinate value measured when only the X axis is moved while the Y axis and the Z axis are fixed.
  • the error amount of each coordinate value X 0 , X 1 , X 2 , and X 3 is represented by a vector having a different magnitude and direction.
  • FIG. 7 is a diagram showing each axis error of the Y axis.
  • Each Y-axis error is the amount of error in each coordinate value measured when only the Y-axis is moved while the X-axis and Z-axis are fixed.
  • the error amount of each coordinate value Y 0 , Y 1 , and Y 2 is represented by a vector having a different size and direction.
  • L represents the number of axes targeted for error correction.
  • X l represents the lth correction target axis.
  • FIG. 8 is a diagram showing the amount of error in the coordinate values (X 2 , Y 1 ).
  • the error amount (vector E[X 2 ][Y 1 ]) in the coordinate value (X 2 , Y 1 ) is the error amount (vector E [X 2 ] ) in the coordinate value X 2 and the error amount (vector E Y [Y 1 ]) of the coordinate value Y 1 can be regarded as a linear combination, and is expressed as in the following equation (2).
  • each axis error is not linearly independent, and the error amount (vector E[X 1 ]...[X L ]) may be determined by the correlation of multiple axes.
  • the error amount (vector E[X 1 ]...[ XL ]) is the correlation term (vector ⁇ [X 1 ]...[ XL ]). In some cases, it may not be expressed as a linear combination of errors in each axis.
  • FIG. 9 is a diagram showing the amount of error when it cannot be represented by a linear combination of the errors of each axis.
  • the error amount expressed by the above formula (1) is used as the error amount (vector E[X 1 ]...[X L ]). Instead, it is necessary to set the error amount to include the correlation term (vector ⁇ [X 1 ]...[X L ]) expressed by the above formula (3).
  • the error amount hereinafter referred to as spatial error
  • the control device for each space that has a correlation with the error amount and is corrected, it is called error correction for each space.
  • the spatial error has the property that although it cannot be expressed as a linear combination of the errors of each axis as a whole, it can be regarded as a linear combination of errors of each axis locally, just like the errors of each axis. This is what the inventor discovered.
  • FIG. 10 is a partial enlarged view of FIG . 9, and in the local area surrounded by the broken line in FIG .
  • the spatial error can be expressed as a linear combination of errors in each axis.
  • the spatial error (vector E[ X ][Y]) is calculated by the error of each axis (vector E It is expressed as the sum of This means that the spatial error (vector E[X][Y]) is the error amount in one row in the X-axis direction (vector E This means that it is possible to take out the error amount (vector E Y [Y]) and the error amount (vector E Y [Y]) in a row in the Y-axis direction and approximate it as a linear combination of these.
  • the local area includes, for example, the central area of the movable range of the industrial machine.
  • FIG. 11 is a diagram showing a bitmap image that visualizes the error map when the target axes for error correction are the X axis and the Y axis, and the RGB values of each pixel correspond to the error amount vector E. are doing. Further, the error amount (vector E[X][Y]) of each pixel is expressed as the sum of the vector E X [X] and the vector E Y [Y] according to the above equation (4).
  • the data encoding device 101 can be locally encoded. Specifically, it utilizes the property that can be regarded as a linear combination of errors in each axis, as expressed in the above-mentioned formula (1). This allows the data encoding device 101 to encode and compress axis-dependent data, which has been difficult in the past.
  • each axis of an industrial machine means, for example, each axis of a machine tool, that is, the X axis, Y axis, and Z axis.
  • axis-dependent data includes, for example, the installation error amount of relatively large workpieces whose displacement varies depending on the coordinate value due to the influence of deflection due to their own weight. It will be done.
  • error amounts and workpiece installation error amounts are both data that depend on the coordinate values of each axis of the industrial machine.
  • an approximate model (vector Ea[X 1 ]...[X L ]) as a linear combination model expressed by the following formula (5) is used.
  • the amount of error can be expressed. That is, the error amount is approximated by taking out the error amount in one row in the X - axis direction (vector Ea can.
  • each axis data (each axis error) after approximation has a total of N+M points, indicating that axis-dependent data can be compressed.
  • X represents a one-dimensional axial space
  • x represents an element belonging to the space.
  • p is any value from 1 to L.
  • x 3 means a certain possible value of axis X 3 .
  • the data encoding device 101 by approximating a part of axis-dependent data as a linear combination of each axis data (each axis error), it is possible to encode axis-dependent data, which was difficult to compress in the past. can be compressed. Furthermore, according to the data encoding device 101, by using the encoded and compressed axis-dependent data, it is possible to reduce the amount of error that can be input to the control device of industrial machinery, etc., without increasing the storage capacity. Data can be increased, and errors in industrial machinery can be corrected with higher accuracy.
  • FIG. 14 is a diagram showing the configuration of a second example of the data encoding device.
  • the data encoding device 102 differs from the data encoding device 101 in that it includes an axis-dependent data dividing section 122.
  • the model approximation encoding unit 121 performs model approximation encoding based on the divided axis-dependent data generated by dividing the axis-dependent data into a plurality of pieces and the linear combination model described above. This is different from the model approximation encoding unit 111 in the first example.
  • the configuration other than these differences is the same as the first example.
  • the data encoding device 101 described above assumes that a portion of the axis-dependent data, which has a uniform appearance frequency as a whole and may resemble white noise, can be regarded as a linear combination of each axis data (each axis error). , which executes model approximation coding of a linear combination model.
  • the data encoding device 102 actively divides the axis-dependent data into multiple regions, thereby creating multiple regions that can be regarded as a linear combination of each axis data (each axis error). This makes it possible to more reliably execute model approximation coding of a linear combination model.
  • the axis-dependent data dividing unit 122 divides the axis-dependent data and generates a plurality of divided axis-dependent data.
  • FIG. 15 is a diagram showing axis-dependent data partitioned into a plurality of grid-like regions.
  • the axis-dependent data input to the data encoding device 102 is divided into a plurality of grid-like regions according to each axis data (each axis error) on each coordinate value, for example. Ru.
  • the axis-dependent data dividing unit 122 divides the axis-dependent data into a plurality of pieces, for example, along these sections.
  • FIG. 16 is a diagram showing an example of axis-dependent data after division.
  • the axis-dependent data input to the data encoding device 102 is divided into five division sections 1 to 5 by the axis-dependent data dividing section 122.
  • each data within each of these five divided sections 1 to 5 corresponds to the axis-dependent data after division
  • each of these axis-dependent data after division is regarded as a linear combination of each axis data (each axis error). It is possible to perform model approximation encoding of a linear combination model by the model approximation encoding unit 121, which will be described later.
  • each axis error can be created.
  • model approximation encoding of a linear combination model for each region By performing model approximation encoding of a linear combination model for each region, axis-dependent data, which has been difficult to compress in the past, can be more reliably compressed.
  • FIG. 17 is a diagram showing the configuration of a third example of a data encoding device.
  • the data encoding device 103 differs from the second example in that the configuration of the axis-dependent data dividing unit 132 is different from the axis-dependent data dividing unit 122 described above.
  • the configuration other than this difference is the same as the second example.
  • the method of dividing axis-dependent data is not particularly limited, but in the data encoding device 103, the axis-dependent data is divided using dynamic programming. That is, by using dynamic programming, it is possible to perform optimal division of axis-dependent data, and the axis-dependent data can be best approximated and compressed.
  • the dynamic programming processing unit 133 also includes an axis-dependent data partial division unit 135 as a means for dividing the problem into partial problems.
  • the axis-dependent data partial division unit 135 divides the axis-dependent data into a plurality of parts to generate partial axis-dependent data.
  • the axis-dependent data partial division unit 135 divides the axis-dependent data into predetermined specified sections according to a predetermined division criterion stored in advance, and then divides the axis-dependent data into sections in the + direction or ⁇ direction of each axis such as the X axis or the Y axis.
  • the axis-dependent data is divided into multiple parts by optimizing downscaling one point in each direction. The division of axis-dependent data by the axis-dependent data partial division unit 135 will be described in detail later.
  • the dynamic programming processing unit 133 also includes a partial axis-dependent data optimization result combination unit 136 as a means for combining (combining) the optimization results of partial problems.
  • the partial axis-dependent data optimization result combining unit 136 generates optimal post-division axis-dependent data by expanding and combining the partial axis-dependent data.
  • the partial axis-dependent data optimization result combining unit 136 divides the partial axis-dependent data generated by dividing the axis-dependent data by the axis-dependent data partial dividing unit 135 into the X-axis, Y-axis, etc. Optimize by expanding one point in each axis in the + direction or - direction.
  • the generation of optimal post-division axis-dependent data by the partial axis-dependent data optimization result combination unit 136 will be described in detail later.
  • FIG. 18 is a flowchart showing the procedure for dividing axis-dependent data by the dynamic programming processing unit 133.
  • the division of the axis-dependent data by the dynamic programming processing unit 133 is performed by recursively searching for an optimal division section of the axis-dependent data using dynamic programming.
  • step S1 the axis-dependent data is divided into predetermined designated sections. However, if the area has already undergone division processing of axis-dependent data by the dynamic programming processing unit 133, the held processing results may be reflected in this step. After that, the process advances to step S2.
  • step S2 an approximate model of the region within the designated section (designated region) divided into sections in step S1 is generated. Specifically, for each specified region, an approximate model (vector Ea[X 1 ]...[X L ]) as a linear combination model described in the first embodiment is generated. After that, the process advances to step S3.
  • step S3 it is determined whether the approximate model of the designated area generated in step S2 satisfies the all-point constraint.
  • the constraints include whether the approximation errors of all points are within the allowable value, or whether the points whose approximation errors are not within the allowable value are within the allowable number of points. If this determination is YES, it is assumed that the axis-dependent data has been optimally divided and that the optimal axis-dependent data after division has been obtained, and the process ends. On the other hand, if this determination is NO, the process advances to step S4.
  • n is set to an initial value of 1.
  • the value of n represents each axis.
  • the process advances to step S5.
  • step S5 it is determined whether n is greater than L.
  • L is the number of axes in the designated section of axis-dependent data. For example, if there are two axes, the X axis and the Y axis, L is 2. If this determination is YES, the process advances to step S11. On the other hand, if this determination is NO, the process advances to step S6.
  • steps S6 to S10 is performed when n is less than or equal to L, and when there are two axes, the X and Y axes, if n is 1, it means processing for the X axis, and if n is 2, it means processing for the X axis. If it exists, it means processing for the Y axis.
  • step S6 the axis-dependent data is divided into specified sections narrowed by one row of each axis data (each axis error) in the X n positive direction from the specified section in step S1. That is, a new section division is performed in which each axis data (each axis error) is reduced by one column in the Xn positive direction.
  • the X n positive direction means the X-axis positive direction when n is 1.
  • the result is output as the optimization result nP. When n is 1, the optimization result 1P is output.
  • the process advances to step S7.
  • step S7 the optimization result nP obtained in step S6 is expanded by one column of each axis data (each axis error) in the Xn positive direction. The result is output as the optimization result nP + .
  • n 1
  • the optimization result 1P + is output. Since n can range from 1 to L, this step yields optimization results 1P to LP + .
  • the process advances to step S8.
  • step S8 the axis-dependent data is divided into specified sections narrowed by one row of each axis data (each axis error) in the negative direction of Xn from the specified section in step S1. That is, a new section division is performed in which each axis data (each axis error) is reduced by one column in the negative direction of Xn .
  • the X n negative direction means the negative direction of the X axis when n is 1.
  • the result is output as an optimization result nM. When n is 1, an optimization result of 1M is output. After that, the process advances to step S9.
  • step S9 the optimization result nM obtained in step S8 is expanded by one column of each axis data (each axis error) in the negative direction of Xn .
  • the result is output as the optimization result nM + .
  • n 1
  • an optimization result of 1M + is output. Since n can range from 1 to L, this step results in optimization results of 1M to LM + .
  • the process advances to step S10.
  • step S10 n is increased by 1. After that, the process returns to step S5.
  • step S11 is performed when n is larger than L, and when the number of axes is two, the X-axis and the Y-axis, after the processing for the X-axis and Y-axis is completed in steps S6 to S10. It is processing.
  • step S11 among the optimization results 1P to LP + and 1M to LM + obtained in steps S6 to S10, the one with the smallest number of non-approximable points is output. That is, for each of the optimization results 1P to LP + and 1M to LM + , the number of unapproximable points where the approximate model generated in step S3 does not satisfy the above constraints is calculated, and the number of unapproximable points is the smallest and best approximated. The data with the most compressed data is output, and the process ends.
  • FIG. 19 is a diagram showing divided sections before each axis data (each axis error) is expanded by one column in the positive X direction.
  • FIG. 20 is a diagram showing a divided section after expanding each axis data (each axis error) by one column in the positive X direction. In FIGS. 19 and 20, different numbers are assigned to each divided section.
  • sections 1 to 5 are extracted as continuous sections that appear at the end in the positive X direction of the section before expanding each axis data (each axis error) by one column.
  • each of the extracted sections 1 to 5 is expanded by one column of each axis data (each axis error) to generate expanded sections 1 to 5 as shown in FIG.
  • post-expansion sections 1 to 5 it is checked whether the above-mentioned approximate model satisfies the above-mentioned constraints. If the constraints are satisfied, the section after expansion is set as a new section. In the example shown in FIG. 20, post-expansion sections 1 and 4 satisfy the constraints and are therefore set as new sections.
  • the undetermined section has a certain area (for example, 2 ⁇ 2) or more, it is checked whether the above-mentioned approximate model satisfies the above-mentioned constraints. In the example shown in FIG. 20, this determination is performed because the post-expansion section 3 is larger than a certain area (for example, 2 ⁇ 2). Until then, the expanded section will also be considered an undetermined section.
  • a certain area for example, 2 ⁇ 2 or more
  • the section before expansion is an NG section, that is, a section that does not satisfy the constraints and cannot be approximated
  • the section for expansion is set as an undetermined section.
  • post-expansion section 5 corresponds to this, and is therefore set as an undetermined section.
  • the axis-dependent data can be divided into optimal divided axis-dependent data that can be compressed by reducing the number of data to the greatest extent possible, so that it is regarded as a linear combination of each axis data (each axis error).
  • a linear combination of each axis data each axis error.
  • the approximation error encoding unit 143 encodes the approximation error amount to generate an encoded approximation error amount.
  • the approximation error amount calculated by the approximation error calculation unit 142 is biased in the appearance frequency of values in the data as described later, and the information entropy is often small. It is possible to compress.
  • data may be compressed by encoding by model approximation encoding of a linear combination model executed by the model approximation encoding unit 141.
  • vector E[X 1 ]...[ XL ] is the original error amount before model approximation
  • vector Ea[X 1 ]...[ XL ] is the amount of error before model approximation. This is the amount of error after. From this formula (10), it can be seen that these differences are approximation errors (vector ⁇ [X 1 ]...[X L ]).
  • FIG. 22 is a diagram showing the approximation error (vector ⁇ [X][Y]).
  • the approximation error (vector ⁇ [X][Y]) has only small values unevenly distributed, and the frequency distribution of the values is also unevenly distributed. Therefore, data can be compressed by encoding the approximation errors (vectors ⁇ [X 1 ]...[X L ]).
  • FIG. 23 is a diagram showing the configuration of a fifth example of a data encoding device.
  • data encoding device 105 differs from data encoding device 104 described above in that it further includes an approximation error removal unit 153 with a predetermined tolerance or more.
  • the approximation error encoding unit 154 is different from the approximation error encoding unit 143 described above in that the approximation error encoding unit 154 encodes an approximation error amount within a predetermined tolerance.
  • the configuration other than these differences is the same as the fourth example.
  • the approximation error removal unit 153 generates an approximation error amount within a predetermined tolerance by removing an approximation error amount that exceeds a predetermined tolerance from the approximation error amount.
  • FIG. 24 is a diagram showing an approximation error (vector ⁇ [X][Y]) including an exceptional point larger than a predetermined tolerance.
  • the approximation error (vector ⁇ [X][Y]) which is the difference between the original error amount before model approximation encoding and the error amount after model approximation encoding, has the following: Exception points larger than a predetermined tolerance may be included. In this embodiment, this exceptional point is removed by the approximation error removal unit 153.
  • FIG. 25 is a diagram showing exceptional points that are excluded and retained because the approximation error (vector ⁇ [X][Y]) is larger than a predetermined tolerance.
  • the approximation error removal unit 153 may separately retain the exceptional points where the approximation error is larger than a predetermined tolerance, that is, the approximation error amount that exceeds the predetermined tolerance, which is removed from the approximation error amount.
  • axis-dependent data such as the original error amount can be compressed and reproduced without loss.
  • the predetermined tolerance examples include an approximation error tolerance and a predetermined number of data points (tolerance) that exceed the approximation error tolerance.
  • the approximation error removing unit 153 converts points exceeding a preset approximation error tolerance value or a predetermined number of points out of the points exceeding the approximation error tolerance value into an approximation error (vector ⁇ [X][Y]).
  • the predetermined tolerance may include 0.
  • the approximation error encoding unit 154 encodes the amount of approximation error within a predetermined tolerance to generate the amount of approximation error after encoding. That is, in encoding the approximation error (vector ⁇ [X 1 ]...[X L ]), the approximation error encoding unit 154 of this embodiment excludes points where the approximation error is larger than a predetermined tolerance, and then , perform the encoding.
  • the approximation error after excluding points larger than the predetermined tolerance from the approximation error amount becomes more biased and the information entropy becomes smaller, so that the data compression effect becomes more effective by encoding. It increases. Further, for example, the data size after encoding can be further reduced by retaining only the points where the approximation error is larger than a predetermined tolerance and not retaining the other approximation error amounts. Even in that case, it is possible to guarantee that the entire approximation error falls within the tolerance.
  • the data encoding device 105 it is possible to encode and compress axis-dependent data, which was conventionally difficult to compress, and also encode the approximate error amount after removing the approximate error amount exceeding a predetermined tolerance. By doing so, compression with loss can also be realized within the range of allowable amount of loss (predetermined tolerance, predetermined number of points), and in this case, data size can be reduced more than compression without loss.
  • FIG. 26 is a diagram showing the configuration of a sixth example of a data encoding device.
  • the data encoding device 106 differs from the above-described data encoding device 101 in that it further includes a model approximation-encoded data encoding unit 162.
  • this example has the same configuration as the first example.
  • the model approximation encoded data encoding unit 162 encodes the model approximation encoded axis-dependent data. That is, the model approximation-encoded data encoding unit 162 executes re-encoding of the axis-dependent data after model approximation encoding.
  • the encoded axis-dependent data is further encoded by the model approximation encoded data encoder 162, so that the data size can be further reduced.
  • FIG. 27 is a diagram showing the configuration of a seventh example of a data encoding device.
  • the data encoding device 107 includes a learning result acquisition unit that acquires reinforcement learning results by the machine learning device 109 instead of dynamic programming, and uses the learning results to generate axis-dependent data. This differs from the data encoding device 103 described above in that it divides the data into sections. The configuration other than this difference is the same as the third example.
  • the machine learning device 109 executes reinforcement learning for optimal division processing of axis-dependent data.
  • the machine learning device 109 as an agent acquires axis-dependent data such as the amount of error of an industrial machine as the state of the environment, and selects certain axis-dependent data after division as an action. Then, the environment changes based on the action. With this change in environment, the number of unapproximable points and the amount of data after approximation, which are obtained by model approximation coding of the axis-dependent data after division, are obtained as determination data.
  • the machine learning device 109 as an agent learns the optimal post-division axis-dependent data for selecting a better action, that is, making a decision.
  • the machine learning device 109 as an agent learns to select an action that maximizes the total reward over the future.
  • E[ ] represents the expected value
  • t is time
  • is a parameter called a discount rate which will be described later
  • r t is the reward at time t
  • is the sum at time t.
  • the expected value in this equation is the expected value when the state changes according to the optimal action.
  • reinforcement learning is performed while exploring by performing various actions.
  • Such an update formula for the value Q(s, a) can be expressed, for example, as shown in Equation (11) below.
  • s t represents the state of the environment at time t
  • a t represents the behavior at time t. Due to the action a t , the state changes to s t+1 . r t+1 represents the reward obtained by changing the state.
  • the term with max is the Q value when action a with the highest Q value known at that time is selected under state s t+1 multiplied by ⁇ .
  • is a parameter satisfying 0 ⁇ 1 and is called a discount rate.
  • is a learning coefficient and is in the range of 0 ⁇ 1.
  • the above formula (11) represents a method of updating the value Q(s t , at ) of the action a t in the state s t based on the reward r t+1 returned as a result of the trial a t .
  • This update formula shows that the value of the best action max a Q(s t +1 , a ) in the next state s t +1 due to action a t is greater than the value Q(s t , a t ) of action a t in state s t. If it is larger, Q(s t , a t ) is increased, and if it is smaller, Q(s t , at ) is decreased.
  • Q learning there is a method of creating a table of Q(s, a) for all state-action pairs (s, a) and performing learning.
  • the number of states is too large to obtain the values of Q(s, a) for all state-action pairs, and it may take a long time for Q-learning to converge.
  • DQN Deep Q-Network
  • the value of value Q (s, a) can be calculated by configuring value function Q using an appropriate neural network, adjusting the parameters of the neural network, and approximating value function Q with an appropriate neural network. It may be calculated.
  • DQN it is possible to shorten the time required for Q learning to converge.
  • non-patent literature "Human-level control through deep reinforcement learning", by Volodymyr Mnih1 [online], [searched on January 17, 2017], Internet ⁇ URL: http://files.davidqiu .com/research/nature14236.pdf> has a detailed description.
  • the machine learning device 109 includes a state observation unit 191, a determination data acquisition unit 192, a learning unit 193, and a decision making unit 194, as shown in FIG. Be prepared. Further, the learning section 193 includes a reward calculation section 195 and a value function updating section 196.
  • the state observation unit 191 acquires axis-dependent data as state data from the data encoding device 107. Further, the state observation unit 191 outputs the acquired axis-dependent data to the learning unit 193.
  • the reward calculation unit 195 of the learning unit 193 calculates a reward based on the acquired axis-dependent data, the number of points that cannot be approximated, and the amount of data after approximation. Specifically, the reward calculation unit 195 increases the reward when the number of points that cannot be approximated decreases, and decreases the reward when the number of points that cannot be approximated increases. Further, the reward calculation unit 195 increases the reward when the amount of data after approximation decreases, and decreases the reward when the amount of data after approximation increases.
  • the value function updating unit 196 of the learning unit 193 calculates the number of unapproximable points, the amount of data after approximation, and the reward value obtained by model approximation encoding of the axis-dependent data as state data and the axis-dependent data after division as judgment data.
  • the stored value function is updated by performing the above-mentioned Q learning based on .
  • the value function stored by the value function update unit 196 can be shared by, for example, a plurality of machine learning devices that are communicably connected to each other.
  • the decision making unit 194 obtains the updated value function from the value function updating unit 196. Furthermore, the decision making unit 194 outputs the optimal post-division axis-dependent data to the data encoding device 107 as a behavioral output based on the acquired value function.
  • FIG. 28 is a flowchart showing the procedure of learning processing by the machine learning device 109.
  • step S21 first, the machine learning device 109 outputs post-division axis-dependent data to the data encoding device 107 as a behavioral output.
  • the divided axis-dependent data output in this step is obtained by dividing the axis-dependent data into predetermined specified sections according to a predetermined division criterion stored in advance.
  • the data encoding device 107 generates the number of non-approximable points and the amount of data after approximation by executing model approximation encoding on the axis-dependent data after division. After that, the process advances to step S22.
  • step S22 the machine learning device 109 acquires axis-dependent data as state data from the data encoding device 107. After that, the process advances to step S23.
  • step S23 the machine learning device 109 acquires the number of unapproximable points after model approximation encoding and the amount of data after approximation of the axis-dependent data after division, which were generated in step S21, from the data encoding device 107 as determination data. After that, the process advances to step S24.
  • step S24 as determination condition 1, it is determined whether the number of non-approximation points has decreased when the data encoding device 107 executes model approximation encoding on the divided axis-dependent data. If this determination is YES, the process proceeds to step S25 and the reward is increased. On the other hand, if this determination is NO, the process proceeds to step S26 and the reward is decreased. After that, the process advances to step S27.
  • step S27 as determination condition 2, it is determined whether the amount of data after model approximation encoding is reduced when the data encoding device 107 executes model approximation encoding on the axis-dependent data after division. . If this determination is YES, the process proceeds to step S28 and the reward is increased. On the other hand, if this determination is NO, the process proceeds to step S29 and the reward is decreased. After that, the process advances to step S30.
  • step S30 the value function stored in the value function update unit 196 is updated.
  • the value function update unit 196 performs model approximation encoding of the axis-dependent data as state data and the axis-dependent data after division as judgment data, and calculates the number of points that cannot be approximated, the amount of data after approximation, and the reward value.
  • the stored value function is updated by performing the above-mentioned Q learning based on . After that, the process advances to step S31.
  • step S31 it is determined whether or not to continue the main learning process. If this determination is YES, the process returns to step S21. On the other hand, if this determination is NO, this process ends.
  • the axis-dependent data can be divided into optimal divided axis-dependent data that can be compressed by reducing the number of data through reinforcement learning by the machine learning device 109. It is possible to generate multiple optimal regions that can be regarded as a linear combination (axis error), and by performing model approximation coding of a linear combination model for each region, axis dependence, which was previously difficult to compress, can be generated. Data can be more compressed.
  • the first data encoding program includes a part of the axis-dependent data that depends on the coordinate values of each axis of the industrial machine, and a linear combination model that approximates the axis-dependent data as a linear combination of the axis data of the industrial machine.
  • a data encoding program for causing a computer to execute a model approximation encoding step of generating encoded axis-dependent data by encoding axis-dependent data it is possible to provide a data encoding program for causing a computer to execute a model approximation encoding step of generating encoded axis-dependent data by encoding axis-dependent data.
  • the first data encoding program further includes an axis-dependent data division step of dividing the axis-dependent data to generate a plurality of divided axis-dependent data, and the model approximation encoding step generates a plurality of divided axis-dependent data.
  • a second data encoding program that generates encoded axis-dependent data based on the linear combination model and the linear combination model can be provided.
  • the second data encoding program includes a dynamic programming processing step for generating optimal divided axis-dependent data by executing dynamic programming, and evaluates the optimality of the encoded axis-dependent data.
  • an optimality evaluation step a partial division step that generates partial axis-dependent data by dividing axis-dependent data into multiple parts, and optimal axis-dependent data after division by expanding and combining the partial axis-dependent data. It is possible to provide a third data encoding program for causing a computer to execute the optimization result combining step of generating.
  • a fourth data encoding program for causing the computer to execute a step of generating optimal post-division axis-dependent data based on the reinforcement learning result by the machine learning device. can.
  • a fifth data encoding program for causing a computer to execute an approximation error calculation step of calculating an approximation error amount, and a step of encoding the approximation error amount and generating an approximation error amount after encoding.
  • a fifth data encoding program can be provided.
  • the model approximation encoding unit 141 is configured to include the approximation error calculation unit 142, but for example, the model approximation encoded axis-dependent data encoded by the data encoding device 104 is The approximation error amount may be calculated based on the difference between the axis-dependent data that has been decoded and decoded by the data decoding device and the original axis-dependent data.
  • the configuration including the approximation error calculation unit 142 is applied to the first example, but the configuration is not limited to this, and can be applied to the second example and the third example as well.
  • the configuration including the model approximation encoded data encoding section 162 is applied to the first example, but the configuration is not limited to this and can be applied to other examples as well. In this way, the above-mentioned examples can be combined as appropriate as long as they do not interfere with each other's functions.
  • the machine learning device 109 is provided separately from the data encoding device 107, but the invention is not limited to this, and a machine learning device may be provided inside the data encoding device 107. .
  • the data decoding device 1 may be provided, for example, in a numerical control device (CNC) corresponding to a control device for industrial machinery such as a machine tool or a robot, a robot control device, or the like. Alternatively, it may be provided in an external computer or the like so as to be able to communicate with these control devices.
  • CNC numerical control device
  • the decoding unit 11 obtains, as input data, axis-dependent data after model approximation coding by linear combination of each axis data.
  • This model approximation encoded axis-dependent data is generated by each of the above-mentioned data encoding devices.
  • the axis-dependent data after model approximation encoding is the constant vector c expressed by the above formula (7).
  • vector Ea X 1 [ X 1 ] to vector Ea Contains information on XL and XL .
  • each axis data (each axis error) is assumed to be a vector arranged as many times as the number of elements, as expressed by the following formula (12).
  • the data decoding device 1 uses a linear combination model that approximates axis-dependent data that depends on the coordinate values of each axis of an industrial machine as a linear combination of each axis data of the industrial machine, and model approximation using the linear combination model.
  • a decoding unit 11 is provided which generates model approximate decoded axis dependent data by decoding the model approximate encoded axis dependent data based on the model approximate encoded axis dependent data.
  • it is possible to increase the amount of data such as the amount of error that can be input to the control device of the industrial machine and the like without increasing the storage capacity, and it is possible to correct the error of the industrial machine with higher precision.
  • the approximation error decoding unit 22 obtains an encoded approximation error amount obtained by encoding the approximation error amount obtained when axis-dependent data is approximated by a linear combination model. Further, the approximation error decoding unit 22 decodes the obtained encoded approximation error amount to generate a decoded approximation error amount.
  • the post-encoding approximation error amount is generated by encoding the approximation error amount by the approximation error encoding unit 43 in the data encoding device 104 of the fourth example described above.
  • FIG. 30 is a diagram showing the configuration of a data decoding device according to the third embodiment.
  • the data decoding device 3 according to the third embodiment differs from the data decoding device 2 according to the second embodiment in that it includes an approximation error amount combining unit 34 exceeding a predetermined tolerance.
  • this embodiment differs from the second embodiment in that decoded axis-dependent data is generated by combining an approximation error amount exceeding a predetermined tolerance with decoded axis-dependent data after approximation error amount combination.
  • the configuration other than these differences is the same as the second embodiment.
  • the approximation error amount after encoding decoded by the approximation error decoding unit 32 of this embodiment is within a predetermined tolerance by the approximation error encoding unit 154 in the data encoding device 105 of the fifth example described above. It is generated by encoding the approximation error amount. That is, the approximation error amount used in this embodiment is an approximation error amount within a predetermined tolerance from which the approximation error amount exceeding the predetermined tolerance is removed.
  • the approximation error amount combining unit 34 that exceeds the predetermined tolerance acquires the approximation error amount that exceeds the predetermined tolerance, and combines the approximation error amount that exceeds the predetermined tolerance with the decoded axis-dependent data after the approximation error amount combination, thereby decoding the approximation error amount that exceeds the predetermined tolerance. Generate axis-dependent data after conversion.
  • the coupling method is not particularly limited. For example, it may be addition, and the approximation error amount combining unit 34 that exceeds a predetermined tolerance adds the approximation error amount that exceeds a predetermined tolerance to the decoded axis-dependent data after the approximation error amount combination. Data can be generated.
  • the amount of approximation error that exceeds a predetermined tolerance is generated by the approximation error removal unit 153 that exceeds a predetermined tolerance in the data encoding device 105 of the fifth example described above. That is, the approximation error amount exceeding the predetermined tolerance generated by subtracting the approximation error amount within the predetermined tolerance from the approximation error amount by the approximation error removal unit 153 is the approximation error amount combining unit 34 exceeding the predetermined tolerance of this embodiment. used in
  • the approximation error amount is an approximation error amount within a predetermined tolerance from which an approximation error amount exceeding a predetermined tolerance is removed. Further, in the data decoding device 3 according to the present embodiment, by acquiring an approximation error amount exceeding a predetermined tolerance and combining the approximation error amount exceeding a predetermined tolerance with the decoded axis-dependent data after combining the approximation error amount, An approximation error amount coupling unit exceeding a predetermined tolerance is provided, which generates axis-dependent data after decoding.
  • the encoded axis-dependent data can be decoded, the encoded approximation error amount can be decoded and combined, and the approximation error amount exceeding a predetermined tolerance can also be combined.
  • Axis-dependent data such as the original error amount can be reproduced without loss.
  • FIG. 31 is a diagram showing the configuration of an error correction system 200 including the data decoding device 1 according to the first embodiment.
  • the error correction system 200 according to this embodiment corrects errors in industrial machinery using decoded axis-dependent data generated by the data decoding device 1.
  • the error correction system 200 includes, for example, memories such as ROM (read only memory) and RAM (random access memory), a CPU (control processing unit), operating means such as a keyboard, a display, and the like, which are connected to each other via a bus. It is constructed using a computer equipped with a communication control section. The functions and operations of the functional units described below are achieved by the cooperation of a CPU installed in the computer, a memory, and a control program stored in the memory.
  • the error correction system 200 may be provided, for example, in a numerical control device (CNC) corresponding to a control device for industrial machinery such as a machine tool or a robot, a robot control device, or the like. Alternatively, it may be provided in an external computer or the like so as to be able to communicate with these control devices.
  • CNC numerical control device
  • the error correction system 200 includes a data decoding device 1, a command analysis section 201, a correction section 202, an interpolation section 203, an X-axis acceleration/deceleration section 204, and a Y-axis acceleration/deceleration section 204. It includes a deceleration section 205, a Z-axis acceleration/deceleration section 206, an X-axis servo 207, a Y-axis servo 208, and a Z-axis servo 209. Details of the data decoding device 1 are as described above.
  • the command analysis unit 201 reads and analyzes the machining program block by block, and generates movement command data that commands movement of each control axis of a machine tool, etc. based on the analysis results.
  • the command analysis unit 201 transmits the generated movement command data to the correction unit 202, which will be described later.
  • the correction unit 202 corrects the movement command data acquired from the command analysis unit 201 based on the decoded axis-dependent data generated by the data decoding device 1. The correction process by the correction unit 202 will be described in detail later.
  • the interpolation unit 203 generates interpolation data by interpolating points on the command route at a predetermined interpolation cycle based on the movement command data generated by the command analysis unit 201 and corrected by the correction unit 202.
  • the interpolation unit 203 distributes and transmits the generated interpolation data to an X-axis acceleration/deceleration unit 204, a Y-axis acceleration/deceleration unit 205, and a Z-axis acceleration/deceleration unit 206, which will be described later.
  • the data decoding device 1 when the error correction system 200 includes, for example, three axes, X, Y, and Z, the data decoding device 1 generates the vector Ea[X][Y][ as axis-dependent data after decoding. Z] is generated.
  • X, Y, and Z in the vector Ea[X][Y][Z] are the coordinate values of each axis X, Y, and Z provided in the error correction system 200, and the correction point spacing ⁇ X , ⁇ It is assumed that the index is quantized by Y and ⁇ Z .
  • FIG. 32 is a diagram for explaining error correction by the correction unit 202, and more specifically, it is a diagram for explaining error correction when the value after quantization has a fraction below the decimal point.
  • the quantization result is ( nX + fX , nY + fY , nZ + fZ ), for example.
  • nX , nY , and nZ are integer values
  • fX , fY , and fZ are decimal values of 0 or more and less than 1.
  • the axis-dependent data after decoding of one point among the eight vertices of the cube is set as a vector Ea[ nX ][ nY ][ nZ ], and each of the remaining seven vertices is decoded.
  • the axis-dependent data after conversion are converted into vector Ea [ n X +1][n Y ][ n Z ] , vector Ea[ n ] [n Z +1], vector Ea [ n X +1] [n Y +1] [n Z +1 ] , vector Ea[ n +1][n Z +1], and the vector Ea[n X ][n Y ][n Z +1].
  • the error correction system 200 includes a correction unit 202 and a data decoding device 1, and the correction unit 202 is configured to correct errors in industrial machinery based on decoded axis-dependent data. .
  • the correction unit 202 is configured to correct errors in industrial machinery based on decoded axis-dependent data.
  • it is possible to decode encoded axis-dependent data obtained by encoding axis-dependent data that depends on the coordinate values of each axis of the industrial machine, and as a result, without increasing the storage capacity, It is possible to increase the data such as the amount of error that can be input into the control device of the industrial machine and the like, and it is possible to correct the error of the industrial machine with higher accuracy.
  • the first data decoding program includes a linear combination model in which axis-dependent data that depends on the coordinate values of each axis of an industrial machine is approximated as a linear combination of each axis data of the industrial machine, and a model approximated by the linear combination model.
  • a data decoding program for causing a computer to execute a step of generating model approximate decoding axis dependent data based on model approximate encoded axis dependent data and decoded model approximate encoded axis dependent data. can do.
  • an encoded approximation error amount obtained by encoding the approximation error amount obtained when axis-dependent data is approximated by a linear combination model is obtained, and the encoded approximation error amount is decoded. and generating post-decoding axis-dependent data after combining the approximation error amounts by combining the approximate error amount after decoding with the model approximation decoding axis-dependent data.
  • a second data decryption program can be provided for causing a computer to perform the steps.
  • the approximation error amount is set as the approximation error amount within a predetermined tolerance from which the approximation error amount exceeding the predetermined tolerance is removed, the approximation error amount exceeding the predetermined tolerance is obtained, and the approximation error amount is combined.
  • a third data decoding program for causing a computer to execute the step of generating decoded axis-dependent data by combining an approximation error amount exceeding a predetermined tolerance with subsequent decoded axis-dependent data. can do.
  • an error correction program for causing the above-described error correction system 200 to execute the above-mentioned correction process, the error correction program for causing a computer to execute a step of correcting an error of an industrial machine based on decoded axis-dependent data. programs can be provided.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)
  • Image Processing (AREA)

Abstract

産業機械の各軸の座標値に依存する軸依存データを符号化した符号後軸依存データを復号化可能なデータ復号化技術を提供する。産業機械の各軸の座標値に依存する軸依存データを産業機械の各軸データの一次結合として近似する一次結合モデルと、一次結合モデルによりモデル近似されたモデル近似符号化軸依存データと、に基づいて、モデル近似符号化軸依存データを復号化したモデル近似復号化後軸依存データを生成する復号化部11を備える、データ復号化装置1である。

Description

データ復号化装置、誤差補正システム及びデータ復号化プログラム
 本開示は、データ復号化装置、誤差補正システム及びデータ復号化プログラムに関する。
 従来、工作機械やロボット等の産業機械では、指令値に従って所定の制御点を所定の位置へと移動させる。しかしながら、産業機械は誤差を有するため、制御点の位置は指令値通りにはならないのが通常である。このような位置決め精度の低下、ひいては加工精度の低下を解決するために、制御点の位置が指令値と一致するように誤差を補正する技術が提案されている(例えば、特許文献1参照)。この技術では、予め測定した誤差量を制御装置に入力することにより、該誤差量に応じた補正量に基づいて誤差を補正する。
特開2011-209897号公報
 ところで、誤差を補正するにあたっては、制御装置に入力する誤差量の入力点数が多ければ多いほど、精度良く誤差を補正できる。しかしながら、入力可能なデータサイズには上限があるため、入力可能なデータサイズの上限を超えて誤差補正の精度を向上することができない、という課題がある。
 そこで、誤差量のデータを圧縮した上で、制御装置に入力することが考えられる。データを圧縮する技術としては、データの符号化技術が挙げられ、例えばハフマン符号に代表されるエントロピー符号化技術が知られている。エントロピー符号化技術では、データ上における値の出現頻度の偏り、即ち情報エントロピーの小ささを利用することにより、データを圧縮する。
 しかしながら、上述の誤差量等に代表される、産業機械の各軸の座標値に依存する軸依存データは、全体として出現頻度が一様なホワイトノイズ的な性質を有する場合がある。この場合には、上述の情報エントロピーの小ささを利用することができないため、エントロピー符号化技術によるデータの圧縮が困難である。
 そこで本発明者は、産業機械の各軸の座標値に依存する軸依存データを符号化して圧縮可能なデータ符号化技術の検討を進めている。本開示は、産業機械の各軸の座標値に依存する軸依存データを符号化した符号後軸依存データを復号化可能なデータ復号化技術を提供することを目的とする。
 本開示の一態様は、符号化されたデータを復号化するデータ復号化装置であって、産業機械の各軸の座標値に依存する軸依存データを前記産業機械の各軸データの一次結合として近似する一次結合モデルと、前記一次結合モデルによりモデル近似されたモデル近似符号化軸依存データと、に基づいて、前記モデル近似符号化軸依存データを復号化したモデル近似復号化後軸依存データを生成する復号化部を備える、データ復号化装置である。
 また本開示の他の態様は、産業機械の誤差を補正する誤差補正システムであって、補正部と、本開示の一態様のデータ復号化装置と、を備え、前記補正部は、前記復号化後軸依存データに基づいて前記産業機械の誤差を補正する、誤差補正システムである。
 また本開示の他の態様は、符号化されたデータを復号化するデータ復号化プログラムであって、産業機械の各軸の座標値に依存する軸依存データを前記産業機械の各軸データの一次結合として近似する一次結合モデルと、前記一次結合モデルによりモデル近似されたモデル近似符号化軸依存データと、に基づいて、前記モデル近似符号化軸依存データを復号化したモデル近似復号化後軸依存データを生成させるステップをコンピュータに実行させるためのデータ復号化プログラムである。
 本開示によれば、産業機械の各軸の座標値に依存する軸依存データを符号化した符号後軸依存データを復号化可能なデータ復号化技術を提供することができる。
第1実施形態に係るデータ復号化装置の構成を示す図である。 データ符号化装置の第1の例の構成を示す図である。 特定文字のみを含むテキストファイルの一例を示す図である。 各値の出現頻度がある分布で表されるデータの一例を示す図である。 各値の出現頻度が一様なデータを示す図である。 X軸の各軸誤差を示す図である。 Y軸の各軸誤差を示す図である。 座標値(X、Y)における誤差量を示す図である。 各軸誤差の一次結合では表せない場合の誤差量を示す図である。 図8の部分拡大図である。 誤差マップを可視化したビットマップ画像を示す図である。 軸依存データの一例を示す図である。 図12の軸依存データを産業機械の各軸誤差の一次結合として近似する一次結合モデルを示す図である。 データ符号化装置の第2の例の構成を示す図である。 格子状の複数の領域に区画された軸依存データを示す図である。 分割後軸依存データの一例を示す図である。 データ符号化装置の第3の例の構成を示す図である。 動的計画法処理部による軸依存データの分割の手順を示すフローチャートである。 X正方向に各軸データ(各軸誤差)一列分拡張する前の分割区間を示す図である。 X正方向に各軸データ(各軸誤差)一列分拡張した後の分割区間を示す図である。 データ符号化装置の第4の例の構成を示す図である。 近似誤差(ベクトルγ[X][Y])を示す図である。 データ符号化装置の第5の例の構成を示す図である。 所定のトレランスより大きい例外点を含む近似誤差(ベクトルγ[X][Y])を示す図である。 近似誤差(ベクトルγ[X][Y])において所定のトレランスより大きいため除外されて保持された例外点を示す図である。 データ符号化装置の第6の例の構成を示す図である。 データ符号化装置の第7の例の構成を示す図である。 機械学習装置による学習処理の手順を示すフローチャートである。 第2実施形態に係るデータ復号化装置の構成を示す図である。 第3実施形態に係るデータ復号化装置の構成を示す図である。 第1実施形態に係るデータ復号化装置を備える誤差補正システムの構成を示す図である。 補正部による誤差補正を説明するための図である。
 以下、本開示の実施形態について、図面を参照して詳しく説明する。なお、第2実施形態以降の説明において、第1実施形態と共通する構成については、その説明を適宜省略する。
[第1実施形態]
 産業機械の各軸の誤差補正に用いられる誤差量等の軸依存データは、全体として出現頻度が一様なホワイトノイズ的な性質を有する場合がある。そのため、データ上における値の出現頻度の偏り、即ち情報エントロピーの小ささを利用する従来のエントロピー符号化技術では、軸依存データを圧縮することが困難である。これに対して本実施形態に係るデータ復号化装置1は、産業機械の各軸の座標値に依存する軸依存データを符号化して圧縮したデータを復号化可能なデータ復号化装置である。
 図1は、第1実施形態に係るデータ復号化装置1の構成を示す図である。図1に示されるように、データ復号化装置1は、復号化部11を備える。復号化部11は、モデル近似符号化後軸依存データと、一次結合モデルと、に基づいて、復号化後軸依存データとしてモデル近似復号化後軸依存データを生成する。
<データ符号化装置>
 先ず、データ復号化装置1の構成を説明する前に、産業機械の各軸の座標値に依存する軸依存データを符号化して圧縮可能なデータ符号化装置について、従来のデータ符号化技術とともに詳しく説明する。
(第1の例)
 図2は、データ符号化装置の第1の例の構成を示す図である。図2に示されるように、データ符号化装置101は、モデル近似符号化部111を備える。モデル近似符号化部111は、軸依存データと、一次結合モデルと、に基づいて、軸依存データを符号化したモデル近似符号化後軸依存データ(以下、符号化後軸依存データともいう)を生成する。
 従来、データの符号化技術として、例えば、ハフマン符号に代表されるエントロピー符号化技術が知られている。エントロピー符号化技術では、データ上における値の出現頻度の偏り、即ち情報エントロピーの小ささを利用することにより、データを圧縮する。
 ここで、図3は、特定文字のみを含むテキストファイルの一例を示す図である。また、図4は、各値の出現頻度がある分布で表されるデータの一例を示す図である。図3及び図4中、横軸はビット値を示し、縦軸は各値の出現頻度を示している。図3に示されるような、例えば特定文字として0~9及びA~Fの16文字のみを含むテキストファイルは、通常1文字の表現に8ビット必要なところ、エントロピー符号化により多くとも1文字4ビットで表現可能であるため、半分程度にデータを圧縮可能である。また、図4に示されるような出現頻度が一様でないデータは、エントロピー符号化により高頻度の値に短ビット値を割り当てる一方で、低頻度の値に長ビット値を割り当てることで、データを圧縮可能である。
 これに対して、図5は、各値の出現頻度が一様なデータを示す図である。図3及び図4と同様に、図5中、横軸はビット値を示し、縦軸は各値の出現頻度を示している。図5に示されるような出現頻度が一様なホワイトノイズ的なデータは、上述の情報エントロピーの小ささを利用することができないため、エントロピー符号化によるデータの圧縮が困難である。
 ところで、産業機械の各軸の静的な誤差補正としては、ピッチ誤差補正、真直度誤差補正、及び三次元誤差補正が挙げられる。ピッチ誤差補正は、軸方向に沿った方向の誤差の補正である。真直度誤差補正は、軸方向に直交する方向の誤差の補正である。三次元誤差補正は、三次元的な空間誤差の補正である。これらの誤差補正は、各軸の座標値毎に計測された誤差量(以下、各軸誤差という。)を、軸数分、制御装置に入力することにより実行される。この入力点数が多いほど、誤差補正の精度は向上するものの、入力可能なデータサイズには上限がある。
 図6は、X軸の各軸誤差を示す図である。X軸の各軸誤差は、Y軸及びZ軸を固定した状態で、X軸のみ移動させたときに計測される各座標値の誤差量である。図6に示されるように、各座標値X、X、X、及びXの誤差量は、それぞれ異なる大きさ及び向きを有するベクトルで表示される。
 また、図7は、Y軸の各軸誤差を示す図である。Y軸の各軸誤差は、X軸及びZ軸を固定した状態で、Y軸のみ移動させたときに計測される各座標値の誤差量である。図7に示されるように、各座標値Y、Y、及びYの誤差量は、それぞれ異なる大きさ及び向きを有するベクトルで表示される。
 ここで、各軸の誤差補正では、各軸誤差は一次独立であると仮定している。即ち、座標値X、・・・Xにおける誤差量(ベクトルE[X]・・・[X])を、各軸誤差の一次結合と仮定して、下記数式(1)のように表される。
Figure JPOXMLDOC01-appb-M000001
 なお、上記数式(1)中、Lは、誤差補正の対象軸数を表す。また、Xは、第l補正対象軸を表す。
 上述の仮定に基づく上記数式(1)が成り立つ場面は多く、従来、各軸の誤差補正は広く用いられているのが現状である。例えば、図8は、座標値(X、Y)における誤差量を示す図である。図8に示されるように、座標値(X、Y)における誤差量(ベクトルE[X][Y])は、座標値Xの誤差量(ベクトルE[X])と、座標値Yの誤差量(ベクトルE[Y])との一次結合とみなすことができ、下記数式(2)のように表される。
Figure JPOXMLDOC01-appb-M000002
 ただし、全体として見ると、各軸誤差(ベクトルE[X]、ベクトルE[Y])における値の出現頻度、あるいは誤差量(ベクトルE[X][Y])における値の出現頻度は、いずれも一様でホワイトノイズ的な場合がある。この場合、データ上における値の出現頻度の偏り、即ち情報エントロピーの小ささを利用する従来のエントロピー符号化技術では、これらのデータを圧縮することは困難である。
 また、各軸誤差は一次独立ではなく、誤差量(ベクトルE[X]・・・[X])は複数軸の相関により決まる場合もある。つまり、下記数式(3)で表されるように誤差量(ベクトルE[X]・・・[X])は、相関項(ベクトルδ[X]・・・[X])を含み、各軸誤差の一次結合では表されない場合もある。
Figure JPOXMLDOC01-appb-M000003
 図9は、各軸誤差の一次結合では表せない場合の誤差量を示す図である。図9に示されるように、各軸誤差が一次独立ではない場合には、誤差量(ベクトルE[X]・・・[X])として、上記数式(1)で表される誤差量ではなく、上記数式(3)で表される相関項(ベクトルδ[X]・・・[X])を含む誤差量とする必要がある。この場合、誤差量に相関のある空間毎に誤差量(以下、空間誤差という。)を制御装置に入力して補正するため、各空間の誤差補正と呼ばれる。
 ここで、空間誤差は、全体としては各軸誤差の一次結合とは表せないとしても、各軸誤差と同様に、局所的には各軸誤差の一次結合とみなすことができるという性質がある点を本発明者は見出したものである。例えば、図10は、図9の部分拡大図であるが、図10中の破線で囲まれた局所領域では、上述の相関項(ベクトルδ[X]・・・[X])が0とみなすことができ、空間誤差を各軸誤差の一次結合として表すことができる。即ち、空間誤差(ベクトルE[X][Y])は、下記数式(4)に示されるように、各軸誤差(ベクトルE[X])と各軸誤差(ベクトルE[Y])との和で表される。これは、空間誤差(ベクトルE[X][Y])は、格子状の複数の座標点上の各軸データ(各軸誤差)のうち、X軸方向の一列の誤差量(ベクトルE[X])とY軸方向の一列の誤差量(ベクトルE[Y])とを取り出して、これらの一次結合として近似できることを意味する。なお、局所領域としては、例えば産業機械の移動可能範囲の中心領域が挙げられる。
Figure JPOXMLDOC01-appb-M000004
 ただし、全体として見ると、空間誤差(ベクトルE[X][Y])における値の出現頻度は一様でホワイトノイズ的な場合があり、情報エントロピーの小ささを利用する従来のエントロピー符号化技術では圧縮は困難である。例えば、図11は、誤差補正の対象軸をX軸とY軸の2軸とした場合の誤差マップを可視化したビットマップ画像を示す図であり、各ピクセルのRGB値が誤差量ベクトルEに対応している。また、各ピクセルの誤差量(ベクトルE[X][Y])は、上記数式(4)に従って、ベクトルE[X]とベクトルE[Y]の和で表される。例えば、図11に示されるビットマップ画像のピクセル数が10×10で374バイトである場合、これを代表的エントロピー符号化技術であるZIP圧縮により符号化すると393バイトとなる。このように、従来公知のエントロピー符号化では圧縮効果が無く、場合によってはデータサイズが増えて逆効果であることが分かる。
 以上を踏まえ、データ符号化装置101では、産業機械の各軸の誤差補正に用いられる誤差量等に代表される、産業機械の各軸の座標値に依存する軸依存データであっても、局所的には、上述の数式(1)に表されるように各軸誤差の一次結合とみなすことができる性質を利用するものである。これにより、データ符号化装置101では、従来困難であった軸依存データの符号化及び圧縮を可能とする。
 図2に戻って、データ符号化装置101は、例えば、バスを介して互いに接続された、ROM(read only memory)やRAM(random access memory)等のメモリ、CPU(control processing unit)、キーボード等の操作手段、ディスプレイ、及び通信制御部を備えたコンピュータを用いて構成される。後述する機能部の機能及び動作は、上記コンピュータに搭載されたCPU、メモリ、及び該メモリに記憶された制御プログラムが協働することにより達成される。
 データ符号化装置101は、例えば、工作機械やロボット等の産業機械の制御装置に対応する数値制御装置(CNC:Computerized Numerical Control))やロボット制御装置等に設けられてよい。あるいは、これら制御装置と通信可能に外部のコンピュータ等に設けられてもよい。
 データ符号化装置101が備えるモデル近似符号化部111は、産業機械の各軸の座標値に依存する軸依存データの一部と、軸依存データを産業機械の各軸データ(各軸誤差)の一次結合として近似する一次結合モデルと、に基づいて、軸依存データを符号化した符号化後軸依存データを生成する。軸依存データは、例えば上述の制御装置等から入力される。また、一次結合モデルは、例えばデータ符号化装置101の記憶部に格納されている。
 ここで、産業機械の各軸とは、例えば工作機械の各軸、即ち、X軸、Y軸、Z軸を意味する。また、軸依存データとしては、産業機械の各軸の誤差補正に用いられる誤差量の他、例えば自重によるたわみの影響で座標値毎に変位が異なる比較的大型のワークの設置誤差量等が挙げられる。これら誤差量やワークの設置誤差量は、いずれも産業機械の各軸の座標値に依存するデータである。
 以下、モデル近似符号化部111による一次結合モデルを用いたモデル近似符号化について、図12及び図13を参照して詳しく説明する。
 図12は、軸依存データの一例を示す図である。図12に示される例では、誤差補正等の対象軸をX軸とY軸の2軸とした場合の軸依存データを示している。図12に示される軸依存データは、例えば産業機械の各軸誤差量等で、全体としてはデータ上の値の出現頻度の偏りがない軸依存データにおけるある局所領域の軸依存データであり、後述の一次結合モデルにより近似可能な軸依存データである。図12に示される軸依存データの例では、合計でN×M点の各軸データ(各軸誤差)を有する。
 図13は、図12の軸依存データを産業機械の各軸誤差の一次結合として近似する一次結合モデルを示す図である。上述した通り、誤差量(ベクトルE[X]・・・[X])が、上記数式(3)で表されるモデルに従い、かつ全体としては相関項(ベクトルδ[X]・・・[X])の影響が強いとみなされる場合であったとしても、局所的には、上記数式(1)で表される一次結合モデルで近似可能な領域が存在すると考えられる。このような近似可能な領域については、図13に示されるように、下記数式(5)で表される一次結合モデルとしての近似モデル(ベクトルEa[X]・・・[X])で誤差量を表現することができる。即ち、誤差量は、X軸方向の一列の誤差量(ベクトルEa[X])とY軸方向の一列の誤差量(ベクトルEa[Y])とを取り出して、これらの一次結合として近似できる。図13に示される例では、近似後の各軸データ(各軸誤差)は合計でN+M点となり、軸依存データを圧縮できることが分かる。
Figure JPOXMLDOC01-appb-M000005
 上記数式(5)中、X、Xは下記数式(6)のように表され、ベクトルcは下記数式(7)に表されるような平均値として定義される。ベクトルEa [X]は下記数式(8)のように表される。また、Lは誤差補正の対象軸数を表し、Xは第l補正対象軸を表し、Nlは第l補正対象軸の誤差量点数を表す。
Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000008
 なお、数式(8)中、Xは1次元の軸空間を表すものであるのに対して、xは空間に所属する元(要素)を表している。pは1~Lのいずれかの値である。例えばxであれば、軸Xの取り得るある値を意味する。
 ベクトルcを上記数式(7)のように定義すると、上記一次結合モデルとしての近似モデル(ベクトルEa[X]・・・[X])は、下記数式(9)で表される評価関数Jを最小化する最尤推定モデルとなる。即ち、評価関数Jは、下記数式(9)で表されるように、近似前の元の誤差量(ベクトルE[X]・・・[X])と、近似後の誤差量(ベクトルEa[X]・・・[X])との差分の二乗の和として表され、この評価関数Jが最小化するように上記一次結合モデルとしての近似モデル(ベクトルEa[X]・・・[X])を決定する。このようにして決定された一次結合モデルとしての近似モデルは、例えばデータ符号化装置101の記憶部に格納され、モデル近似符号化部111によるモデル近似符号化に利用される。
Figure JPOXMLDOC01-appb-M000009
 このようにデータ符号化装置101によれば、軸依存データの一部を各軸データ(各軸誤差)の一次結合として近似することで、従来は圧縮が困難であった軸依存データを符号化して圧縮することができる。ひいてはデータ符号化装置101によれば、符号化されて圧縮された符号化後軸依存データを用いることにより、記憶容量を増大することなく、産業機械の制御装置等に入力可能な誤差量等のデータを増加させることができ、産業機械の誤差をより精度良く補正することができる。
(第2の例)
 図14は、データ符号化装置の第2の例の構成を示す図である。図14に示されるように、データ符号化装置102は、軸依存データ分割部122を備える点においてデータ符号化装置101と相違する。また、モデル近似符号化部121が、軸依存データを複数に分割して生成された分割後軸依存データと、上述の一次結合モデルと、に基づいてモデル近似符号化を実行する点において、上述の第1の例のモデル近似符号化部111と相違する。これら相違点以外の構成については、第1の例と共通である。
 上述のデータ符号化装置101は、全体として出現頻度が一様でホワイトノイズ的な場合がある軸依存データの一部について、各軸データ(各軸誤差)の一次結合とみなすことができるものとして、一次結合モデルのモデル近似符号化を実行するものである。これに対して、データ符号化装置102は、軸依存データを積極的に分割して複数の領域に分けることで、各軸データ(各軸誤差)の一次結合とみなすことができる複数の領域を生成させ、一次結合モデルのモデル近似符号化の実行をより確実に可能とするものである。
 軸依存データ分割部122は、軸依存データを分割して、複数の分割後軸依存データを生成する。ここで、図15は、格子状の複数の領域に区画された軸依存データを示す図である。図15に示されるように、データ符号化装置102に入力された軸依存データは、例えば、各座標値上の各軸データ(各軸誤差)に応じて、格子状の複数の領域に区画される。図15に示される例では、軸依存データは15×15=225点の格子状に区画されている。軸依存データ分割部122は、例えばこれらの区画に沿って、軸依存データを複数に分割する。
 軸依存データ分割部122による軸依存データの分割方法は特に制限されないが、各軸データ(各軸誤差)の一次結合とみなすことができる複数の領域を生成させることができるように、軸依存データを分割するのが好ましい。特に、軸依存データ分割部122は、軸依存データを、最も良く近似(圧縮)できるような複数の領域に分割することが好ましい。
 図16は、分割後軸依存データの一例を示す図である。図16に示される例では、データ符号化装置102に入力された軸依存データは、軸依存データ分割部122により5つの分割区間1~5に分割されている。即ち、これら5つの分割区間1~5の各領域内の各データが分割後軸依存データに相当し、これらの分割後軸依存データはそれぞれ各軸データ(各軸誤差)の一次結合とみなすことができ、後述のモデル近似符号化部121による一次結合モデルのモデル近似符号化が可能である。一方、これら5つの分割区間1~5の領域外では、軸依存データを各軸データ(各軸誤差)の一次結合とみなすことができず、一次結合モデルのモデル近似符号化が不可能である。
 モデル近似符号化部121は、複数の分割後軸依存データと、一次結合モデルと、に基づいて、符号化後軸依存データを生成する。上述したように、複数の分割区間1~5の各領域内では、軸依存データを各軸データ(各軸誤差)の一次結合とみなすことができる。そのため、モデル近似符号化部121は、分割後の各軸依存データについて一次結合モデルのモデル近似符号化を実行することにより、モデル近似されて圧縮された符号化後軸依存データを生成する。
 このようにデータ符号化装置102によれば、軸依存データを積極的に分割して複数の領域に分けることで、各軸データ(各軸誤差)の一次結合とみなすことができる複数の領域を生成させることができ、各領域について一次結合モデルのモデル近似符号化を実行することで、従来は圧縮が困難であった軸依存データをより確実に圧縮することができる。
(第3の例)
 図17は、データ符号化装置の第3の例の構成を示す図である。図17に示されるように、データ符号化装置103は、軸依存データ分割部132の構成が上述の軸依存データ分割部122と相違する点において、第2の例と相違する。この相違点以外の構成については、第2の例と共通である。
 上述のデータ符号化装置102では、軸依存データの分割方法は特に制限されないものであるが、データ符号化装置103では、動的計画法を利用して軸依存データを分割する。即ち、動的計画法を利用することにより最適な軸依存データの分割を実行することができ、軸依存データを最も良く近似、圧縮できるものである。
 図17に示されるように、軸依存データ分割部132は、動的計画法処理部133を備える。動的計画法処理部133は、動的計画法を実行することにより、最適な分割後軸依存データを生成する。具体的に動的計画法処理部133は、動的計画法を実行するための機能部として、モデル近似符号化後の最適性評価部134と、軸依存データの部分分割部135と、部分的軸依存データの最適化結果結合部136と、を備える。
 ここで、動的計画法処理部133により実行される動的計画法について、詳しく説明する。
 動的計画法は、最適化問題を解くための汎用的なアルゴリズムである。動的計画法は、次の2つの特徴を有するアルゴリズムである。第1の特徴は、再帰的に解く点である。即ち、小さなスケールの部分問題に分割し、該部分問題を再帰的に最適化し、部分問題の最適化結果を組合せて、より大きなスケールの元の問題の解とする点に特徴がある。また、第2の特徴は、最適化結果を記録することで、処理負荷を削減できる点である。即ち、再帰的に問題を解く過程で、同じ問題が何度も登場することがあるが、解いたことがある問題について計算を省略するために、一度解いた問題の最適化結果を記録しておき、再利用する点に特徴がある。
 そこで、本実施形態の動的計画法処理部133は、結果の最適性を評価する手段として、モデル近似符号化後の最適性評価部134を備える。即ち、モデル近似符号化後の最適性評価部134は、符号化後軸依存データの最適性を評価する。符号化後軸依存データの最適性の評価は、例えば、モデル近似符号化後の近似誤差量が所定の制約トレランス以内であるか否かに基づいて評価することができる。なお、モデル近似符号化後の近似誤差量は、後段の第4の例で詳述するように、上述の第1の例で説明したモデル近似符号化する前の元の誤差量と、モデル近似符号化後の誤差量との差分である。制約トレランスとしては、例えば近似誤差許容値や、近似誤差許容値を超えるデータの許容点数であってよい。
 また動的計画法処理部133は、問題を分割して部分問題化する手段として、軸依存データの部分分割部135を備える。軸依存データの部分分割部135は、軸依存データを複数の部分に分割して部分的軸依存データを生成する。軸依存データの部分分割部135は、例えば、予め格納された所定の分割基準に従って、軸依存データを所定の指定区間に区間分割した後、X軸やY軸等の各軸の+方向あるいは-方向の各々に1点ずつ縮小して最適化することにより、軸依存データを複数の部分に分割する。軸依存データの部分分割部135による軸依存データの分割については、後段で詳述する。
 また動的計画法処理部133は、部分問題の最適化結果を結合(組み合わせ)する手段として、部分的軸依存データの最適化結果結合部136を備える。部分的軸依存データの最適化結果結合部136は、部分的軸依存データを拡張して結合することにより最適な分割後軸依存データを生成する。部分的軸依存データの最適化結果結合部136は、例えば、上述の軸依存データの部分分割部135により軸依存データが分割されて生成された部分的軸依存データを、X軸やY軸等の各軸の+方向あるいは-方向の各々に1点ずつ拡張して最適化する。部分的軸依存データの最適化結果結合部136による最適な分割後軸依存データの生成については、後段で詳述する。
 以下、動的計画法処理部133による軸依存データの分割について、上述の図15及び図16、図18及び図19を参照して詳しく説明する。
 上述の図15に示したように、軸依存データは、例えば15×15=225点の格子状に区画されている。このような軸依存データに対して、動的計画法処理部133により区間分割すると、例えば図16に示したような分割後軸依存データが得られる。動的計画法処理部133による軸依存データの区間分割では、分割区間の各領域を上述の近似モデルで近似した場合の、各誤差量の近似誤差を制約許容量以内に収めるようにする。また、近似誤差が制約許容量以内に収まらない点を、制約許容点数まで許容する。それでもなお、近似できない、制約を満たさない点の数を極小化する。これにより、例えばデータ点数225が92点にまで圧縮でき、データサイズを小さくできる。
 図18は、動的計画法処理部133による軸依存データの分割の手順を示すフローチャートである。この動的計画法処理部133による軸依存データの分割は、動的計画法により、再帰的に軸依存データの最適な分割区間を探索することにより実行されるものである。
 ステップS1では、軸依存データを、所定の指定区間に区間分割する。ただし、この動的計画法処理部133による軸依存データの分割処理済みの領域である場合には、保持していた処理結果を本ステップに反映させてもよい。その後、ステップS2に進む。
 ステップS2では、ステップS1で区間分割された指定区間内領域(指定領域)の近似モデルを生成する。具体的には、各指定領域について、上述の第1実施形態で説明した一次結合モデルとしての近似モデル(ベクトルEa[X]・・・[X])を生成する。その後、ステップS3に進む。
 ステップS3では、ステップS2で生成した指定領域の近似モデルが全点制約を満たすか否かを判別する。制約としては、全点の近似誤差が許容値以内であるか否か、あるいは近似誤差が許容値以内ではない点が許容点数以内であるか否か、が挙げられる。この判別がYESであれば、軸依存データの最適な分割がなされており、最適な分割後軸依存データが得られたとして本処理を終了する。一方、この判別がNOであれば、ステップS4に進む。
 ステップS4では、nを初期値1に設定する。ここで、nの値は各軸を表し、例えば軸構成がX軸とY軸の合計2軸である場合、nが1のときはX軸、nが2のときはY軸を表す。その後、ステップS5に進む。
 ステップS5では、nがLより大きいか否かを判別する。ここで、Lは、軸依存データの指定区間における軸数である。例えばX軸とY軸の2軸であれば、Lは2である。この判別がYESであれば、ステップS11に進む。一方、この判別がNOであれば、ステップS6に進む。
 ステップS6~S10の処理は、nがL以下の場合であり、軸数がX軸とY軸の2軸のときでnが1であればX軸についての処理を意味し、nが2であればY軸についての処理を意味する。
 ステップS6では、軸依存データを、ステップS1の指定区間からX正方向に各軸データ(各軸誤差)一列狭めた指定区間に区間分割する。即ち、X正方向に各軸データ(各軸誤差)一列分、縮小した新たな区間分割を実行する。X正方向とは、nが1のときであれば、X軸正方向を意味する。その結果を、最適化結果nPとして出力する。nが1のときであれば最適化結果1Pを出力する。その後、ステップS7に進む。
 ステップS7では、ステップS6で得られた最適化結果nPを、X正方向に各軸データ(各軸誤差)一列分、拡張する。その結果を、最適化結果nPとして出力する。nが1のときであれば最適化結果1Pを出力する。nは1~Lの範囲を取り得るため、本ステップにより、最適化結果1P~LPが得られることになる。その後、ステップS8に進む。
 ステップS8では、軸依存データを、ステップS1の指定区間からX負方向に各軸データ(各軸誤差)一列狭めた指定区間に区間分割する。即ち、X負方向に各軸データ(各軸誤差)一列分、縮小した新たな区間分割を実行する。X負方向とは、nが1のときであれば、X軸負方向を意味する。その結果を、最適化結果nMとして出力する。nが1のときであれば最適化結果1Mを出力する。その後、ステップS9に進む。
 ステップS9では、ステップS8で得られた最適化結果nMを、X負方向に各軸データ(各軸誤差)一列分、拡張する。その結果を、最適化結果nMとして出力する。nが1のときであれば最適化結果1Mを出力する。nは1~Lの範囲を取り得るため、本ステップにより、最適化結果1M~LMが得られることになる。その後、ステップS10に進む。
 ステップS10では、nを1増加する。その後、ステップS5に戻る。
 また、ステップS11は、nがLより大きい場合であり、軸数がX軸とY軸の2軸のときであれば、ステップS6~S10によりX軸及びY軸についての処理が終了した後の処理である。ステップS11では、ステップS6~S10で得られた最適化結果1P~LP、1M~LMのうち、近似不可点数が最小のものを出力する。即ち、最適化結果1P~LP、1M~LMのそれぞれについて、ステップS3で生成した近似モデルが上述の制約を満たさない近似不可点数を算出し、該近似不可点数が最小で最も良く近似されて最もデータが圧縮されたものを出力し、本処理を終了する。
 ここで、上述のステップS7における、X正方向に各軸データ(各軸誤差)一列分を拡張する手順について、図19及び図20に示す具体例を挙げてさらに詳しく説明する。図19は、X正方向に各軸データ(各軸誤差)一列分拡張する前の分割区間を示す図である。また、図20は、X正方向に各軸データ(各軸誤差)一列分拡張した後の分割区間を示す図である。図19及び図20では、分割区間毎に異なる番号を付して示している。
 図19に示されるように、先ず、各軸データ(各軸誤差)一列分拡張前の区間の、X正方向の端部に現れる、連続的区間として区間1~5を抽出する。
 次いで、抽出した区間1~5の各々について、各軸データ(各軸誤差)一列分拡張し、図20に示されるように拡張後区間1~5を生成する。
 次いで、拡張後区間1~5の各々について、上述の近似モデルが、上述の制約を満たすか否かを確認する。制約を満たす場合、拡張後の区間を新区間とする。図20に示す例では、拡張後区間1と4が制約を満たすため、新区間とする。
 制約を満たさない場合、拡張分の区間は未定区間とする。図20に示す例では、拡張後区間2が制約を満たさないため、未定区間としている。
 また、未定区間は、一定面積(例えば、2×2)以上になった場合、上述の近似モデルが、上述の制約を満たすか否かを確認する。図20に示す例では、拡張後区間3が一定面積(例えば、2×2)以上であるため、この判定を実施する。それまでは、拡張後の区間も未定区間とする。
 また、拡張前の区間がNG区間、即ち制約を満たさず近似できない区間である場合、拡張分の区間は、未定区間とする。図20に示す例では、拡張後区間5がそれに該当するため、未定区間とする。
 以上により、最後まで未定のままの区間が残ることがある。そのような区間は、最終的にNG区間、即ち制約を満たさず近似できない区間としてよい。
 このようにデータ符号化装置103によれば、軸依存データを、最もデータ数を減らして圧縮できる最適な分割後軸依存データに分割できるため、各軸データ(各軸誤差)の一次結合とみなすことができる最適な複数の領域を生成させることができ、各領域について一次結合モデルのモデル近似符号化を実行することで、従来は圧縮が困難であった軸依存データをより圧縮することができる。
(第4の例)
 図21は、データ符号化装置の第4の例の構成を示す図である。図21に示されるように、データ符号化装置104は、モデル近似符号化部141が近似誤差算出部142を備える点において、上述のモデル近似符号化部111と相違する。また、データ符号化装置104は近似誤差符号化部143を備える点において、上述のデータ符号化装置101と相違する。これら相違点以外の構成については、第1の例と共通である。
 近似誤差算出部142は、近似誤差量を算出する。近似誤差算出部142は、モデル近似符号化部141に設けられており、軸依存データをモデル近似符号化する際にあわせて近似誤差量を算出する。この近似誤差量については、後段で詳述する。
 近似誤差符号化部143は、近似誤差量を符号化して符号化後近似誤差量を生成する。近似誤差算出部142で算出される近似誤差量は、後述するようにデータ上の値の出現頻度に偏りがあり、情報エントロピーが小さい場合が多いため、従来公知のエントロピー符号化により符号化してデータ圧縮することが可能である。あるいは、モデル近似符号化部141で実行される一次結合モデルのモデル近似符号化により符号化してデータ圧縮してもよい。
 以下、近似誤差量、及び近似誤差符号化部143による近似誤差量の符号化について、さらに詳しく説明する。
 上述の第1の例で説明したように、上記数式(5)で表される一次結合モデルとしての近似モデル(ベクトルEa[X]・・・[X])で誤差量を表現した場合、近似誤差(ベクトルγ[X]・・・[X])は、下記数式(10)で表される。
Figure JPOXMLDOC01-appb-M000010
 数式(10)中、ベクトルE[X]・・・[X]は、モデル近似する前の元の誤差量であり、ベクトルEa[X]・・・[X]は、モデル近似後の誤差量である。この数式(10)から、これらの差分が近似誤差(ベクトルγ[X]・・・[X])であることが分かる。
 ここで、近似モデル(ベクトルEa[X]・・・[X])は最尤推定モデルであるため、近似誤差(ベクトルγ[X]・・・[X])は最小化されており、ごく小さい値ばかりになっている。ここで、図22は、近似誤差(ベクトルγ[X][Y])を示す図である。図22に示されるように、近似誤差(ベクトルγ[X][Y])は、小さい値ばかりが偏在したものであり、その値の頻度分布も偏在化している。そのため、近似誤差(ベクトルγ[X]・・・[X])を符号化することにより、データを圧縮することができる。
 近似誤差(ベクトルγ[X]・・・[X])を符号化するにあたっては、符号化の手法についてはとくに制限されない。例えば、上述の一次結合のモデル近似符号化により近似誤差(ベクトルγ[X]・・・[X])を符号化してもよく、従来公知のハフマン符号に代表されるエントロピー符号化により近似誤差(ベクトルγ[X]・・・[X])を符号化してもよい。
 近似モデル(ベクトルEa[X]・・・[X])単独では、元の誤差量(ベクトルE[X]・・・[X])と比べて、近似誤差(ベクトルγ[X]・・・[X])分異なり、また、近似誤差(ベクトルγ[X]・・・[X])は各軸データ点数分存在するためそのまま保持してはデータ圧縮にならないが、近似誤差(ベクトルγ[X]・・・[X])を符号化し、近似モデル(ベクトルEa[X]・・・[X])と合わせることで、元の誤差量(ベクトルE[X]・・・[X])を欠損なく圧縮して再現でき、かつ、総データサイズも減らすことができるようになる。
 このようにデータ符号化装置104によれば、従来は圧縮が困難であった軸依存データを符号化して圧縮することができるうえ、近似誤差量を符号することで総データサイズをさらに減らしつつ、元の誤差量等の軸依存データを欠損なく再現することができる。
(第5の例)
 図23は、データ符号化装置の第5の例の構成を示す図である。図23に示されるように、データ符号化装置105は、所定トレランス以上の近似誤差除去部153をさらに備える点において、上述のデータ符号化装置104と相違する。また、近似誤差符号化部154が所定トレランス以内の近似誤差量を符号化する点において、上述の近似誤差符号化部143と相違する。これら相違点以外の構成については、第4の例と共通である。
 近似誤差除去部153は、近似誤差量から所定トレランスを超える近似誤差量を除去することにより、所定トレランス以内の近似誤差量を生成する。ここで、図24は、所定のトレランスより大きい例外点を含む近似誤差(ベクトルγ[X][Y])を示す図である。モデル近似符号化する前の元の誤差量と、モデル近似符号化後の誤差量と、の差分である近似誤差(ベクトルγ[X][Y])には、図24に示されるように、所定のトレランスより大きい例外点が含まれる場合がある。本実施形態では、この例外点を、近似誤差除去部153により除去する。
 また、図25は、近似誤差(ベクトルγ[X][Y])において所定トレランスより大きいため除外されて保持された例外点を示す図である。このように、近似誤差除去部153は、近似誤差量から除去した、近似誤差が所定トレランスより大きい例外点、即ち所定トレランスを超える近似誤差量を、別途、保持してもよい。これにより、元の誤差量等の軸依存データを欠損なく圧縮して再現できる。
 所定トレランスとしては、例えば近似誤差許容値や、近似誤差許容値を超えるデータの所定点数(許容点数)が挙げられる。この場合、近似誤差除去部153は、予め設定された近似誤差許容値を超える点や、該近似誤差許容値を超える点のうちの所定点数を、近似誤差(ベクトルγ[X][Y])から除外する。なお、所定トレランスとしては、0を含んでもよい。
 近似誤差符号化部154は、所定トレランス以内の近似誤差量を符号化して、符号化後近似誤差量を生成する。即ち、本実施形態の近似誤差符号化部154は、近似誤差(ベクトルγ[X]・・・[X])を符号化するにあたって、近似誤差が所定トレランスより大きい点を除外した上で、符号化を実行する。
 近似誤差量から所定トレランスより大きい点を除外した後の近似誤差、つまり所定トレランス以内の近似誤差量は、より値が偏り、情報エントロピーが小さくなることにより、符号化することでデータ圧縮効果がより高まる。また、例えば近似誤差量を、近似誤差が所定トレランスより大きい点のみ保持し、それ以外の近似誤差量は保持しないことで、符号化後のデータサイズをさらに減らすこともできる。かつ、その場合であっても、近似誤差全体がトレランス以内に収まることを保証することができる。
 このようにデータ符号化装置105によれば、従来は圧縮が困難であった軸依存データを符号化して圧縮することができるうえ、所定トレランスを超える近似誤差量除去後の近似誤差量を符号化することで、欠損の許容量(所定トレランス、所定点数)の範囲内において欠損あり圧縮も実現可能であり、この場合には、欠損なし圧縮よりもデータサイズを削減可能である。
(第6の例)
 図26は、データ符号化装置の第6の例の構成を示す図である。図26に示されるように、データ符号化装置106は、モデル近似符号化後データ符号化部162をさらに備える点において上述のデータ符号化装置101と相違する。この相違点以外は、第1の例と共通の構成である。
 モデル近似符号化後データ符号化部162は、モデル近似符号化後軸依存データを符号化する。つまり、モデル近似符号化後データ符号化部162により、軸依存データのモデル近似符号化後の再符号化を実行する。
 上述の第1の例で説明したように、数式(5)で表される一次結合モデルとしての近似モデル(ベクトルEa[X]・・・[X])で誤差量を表現した場合、ベクトルEa [X]の各々に対して、符号化を実行することにより、さらにデータを圧縮することができる。このとき、ベクトルEa [X]は各軸の誤差を表しているため、上述の数式(5)で表される一次結合モデルとしての近似モデル(ベクトルEa[X]・・・[X])によるモデル近似ではなく、モデル近似符号化後データ符号化部62は従来公知のハフマン符号に代表されるエントロピー符号化による符号化を実行する。
 このようにデータ符号化装置106によれば、モデル近似符号化後データ符号化部162により、符号化後軸依存データをさらに符号化するため、さらにデータサイズを削減することができる。
(第7の例)
 図27は、データ符号化装置の第7の例の構成を示す図である。図27に示されるように、データ符号化装置107は、動的計画法の代わりに機械学習装置109による強化学習結果を取得する学習結果取得部を備え、該学習結果を利用して軸依存データを区間分割する点において、上述のデータ符号化装置103と相違する。この相違点以外の構成については、第3の例と共通である。
 機械学習装置109は、軸依存データの最適な分割処理について強化学習を実行する。本実施形態の機械学習装置109による強化学習では、エージェントとしての機械学習装置109が、環境の状態として産業機械の誤差量等の軸依存データを取得し、行動としてある分割後軸依存データを選択すると、該行動に基づいて環境が変化する。この環境の変化に伴って、分割後軸依存データをモデル近似符号化して得られる近似不可点数及び近似後データ量が判定データとして得られる。そして、得られた判定データに応じて何らかの報酬が与えられ、エージェントとしての機械学習装置109は、より良い行動の選択、即ち意思決定として最適な分割後軸依存データを学習する。エージェントとしての機械学習装置109は、将来にわたっての報酬の合計が最大化するような行動を選択するように学習する。
 強化学習としては、任意の学習方法を用いることができる。例えば、ある環境の状態sの下で、行動aを選択する価値Q(s,a)を学習する方法であるQ学習を用いることができる。Q学習では、ある状態sのとき、取り得る行動aの中から、価値Q(s,a)の最も高い行動aを最適な行動として選択する。しかしながら、Q学習を最初に開始する時点では、状態sと行動aとの組合せについて、価値Q(s,a)の正しい値は全く分かっていない。そこで、エージェントとしての機械学習装置109は、ある状態sの下で様々な行動aを選択し、その時の行動aに対して、与えられる報酬に基づいて、より良い行動の選択をすることにより、正しい価値Q(s,a)を学習していく。
 また、将来にわたって得られる報酬の合計を最大化したいため、機械学習装置109は、最終的にQ(s,a)=E[Σ(γ)r]となるようにすることを目指す。ここでE[]は期待値を表し、tは時刻、γは後述する割引率と呼ばれるパラメータ、rは時刻tにおける報酬、Σは時刻tによる合計である。この式における期待値は、最適な行動に従って状態変化した場合の期待値である。しかしながら、Q学習の過程において最適な行動が何であるのかは不明であるため、様々な行動を行うことにより探索しながら強化学習をする。このような価値Q(s,a)の更新式は、例えば、下記数式(11)のように表すことができる。
Figure JPOXMLDOC01-appb-M000011
 上記数式(11)において、sは、時刻tにおける環境の状態を表し、aは、時刻tにおける行動を表す。行動aにより、状態はst+1に変化する。rt+1は、その状態の変化により得られる報酬を表している。また、maxの付いた項は、状態st+1の下で、その時に分かっている最もQ値の高い行動aを選択した場合のQ値にγを乗じたものになる。ここで、γは、0<γ≦1のパラメータで、割引率と呼ばれる。また、αは、学習係数で、0<α≦1の範囲とする。
 上記数式(11)は、試行aの結果、返ってきた報酬rt+1を元に、状態sにおける行動aの価値Q(s,a)を更新する方法を表している。この更新式は、状態sにおける行動aの価値Q(s,a)よりも、行動aによる次の状態st+1における最良の行動の価値max Q(st+1,a)の方が大きければ、Q(s,a)を大きくし、逆に小さければ、Q(s,a)を小さくすることを示している。つまり、ある状態におけるある行動の価値を、それによる次の状態における最良の行動の価値に近づける。ただし、その差は、割引率γと報酬rt+1のあり方により変わってくるが、基本的には、ある状態における最良の行動の価値が、それに至る一つ前の状態における行動の価値に伝播していく仕組みになっている。
 ここで、Q学習では、すべての状態行動ペア(s,a)についてのQ(s,a)のテーブルを作成して、学習を行う方法がある。しかしながら、すべての状態行動ペアのQ(s,a)の値を求めるには状態数が多すぎて、Q学習が収束するのに多くの時間を要してしまう場合がある。
 そこで、公知のDQN(Deep Q-Network)と呼ばれる技術を利用するようにしてもよい。具体的には、価値関数Qを適当なニューラルネットワークを用いて構成し、ニューラルネットワークのパラメータを調整し、価値関数Qを適当なニューラルネットワークで近似することにより価値Q(s,a)の値を算出するようにしてもよい。DQNを利用することにより、Q学習が収束するのに要する時間を短くすることが可能となる。なお、DQNについては、例えば非特許文献「Human-level control through deep reinforcement learning」、Volodymyr Mnih1著[online]、[平成29年1月17日検索]、インターネット〈URL:http://files.davidqiu.com/research/nature14236.pdf〉に詳細な記載がある。
 従って、上述の強化学習を実行するために機械学習装置109は、図27に示されるように、状態観測部191と、判定データ取得部192と、学習部193と、意思決定部194と、を備える。また、学習部193は、報酬計算部195と、価値関数更新部196と、を備える。
 状態観測部191は、データ符号化装置107から状態データとして、軸依存データを取得する。また、状態観測部191は、取得した軸依存データを学習部193に出力する。
 判定データ取得部192は、データ符号化装置107から判定データとして、分割後軸依存データをモデル近似符号化して得られる近似不可点数及び近似後データ量を取得する。分割後軸依存データは、予め格納された所定の分割基準に従って、軸依存データを所定の指定区間に区間分割したものである。また、判定データ取得部192は、取得した近似不可点数及び近似後データ量を学習部193に出力する。
 学習部193の報酬計算部195は、取得した軸依存データと、近似不可点数及び近似後データ量に基づいて、報酬を算出する。具体的に報酬計算部195は、近似不可点数が減少した場合には報酬を増加する一方で、近似不可点数が増加した場合には進んで報酬を減少する。また、報酬計算部195は、近似後データ量が減少した場合には報酬を増加する一方で、近似後データ量が増加した場合には報酬を減少する。
 学習部193の価値関数更新部196は、状態データとしての軸依存データと、判定データとしての分割後軸依存データをモデル近似符号化して得られる近似不可点数及び近似後データ量と、報酬の値と、に基づいて、上述のQ学習を行うことにより、記憶していた価値関数を更新する。なお、価値関数更新部196が記憶する価値関数は、例えば互いに通信可能に接続された複数機械学習装置で共有することができる。
 意思決定部194は、価値関数更新部196から更新した価値関数を取得する。また、意思決定部194は、取得した価値関数に基づいて最適な分割後軸依存データを行動出力としてデータ符号化装置107に出力する。
 図28は、機械学習装置109による学習処理の手順を示すフローチャートである。
 ステップS21では、先ず、機械学習装置109からデータ符号化装置107に向けて、行動出力として分割後軸依存データを出力する。本ステップで出力される分割後軸依存データは、予め格納された所定の分割基準に従って、軸依存データを所定の指定区間に区間分割したものである。データ符号化装置107は、この分割後軸依存データに対してモデル近似符号化を実行することにより、近似不可点数及び近似後データ量を生成する。その後、ステップS22に進む。
 ステップS22では、機械学習装置109がデータ符号化装置107から状態データとして軸依存データを取得する。その後、ステップS23に進む。
 ステップS23では、機械学習装置109がデータ符号化装置107から判定データとして、ステップS21で生成された、分割後軸依存データのモデル近似符号化後の近似不可点数及び近似後データ量を取得する。その後、ステップS24に進む。
 ステップS24では、判定条件1として、データ符号化装置107により分割後軸依存データに対してモデル近似符号化を実行したときの近似不可点数が減少したか否かを判別する。この判別がYESであれば、ステップS25に進んで報酬を増加する。一方、この判別がNOであれば、ステップS26に進んで報酬を減少する。その後、ステップS27に進む。
 ステップS27では、判定条件2として、データ符号化装置107により分割後軸依存データに対してモデル近似符号化を実行したときのモデル近似符号化後のデータ量が減少しているか否かを判別する。この判別がYESであれば、ステップS28に進んで報酬を増加する。一方、この判別がNOであれば、ステップS29に進んで報酬を減少する。その後、ステップS30に進む。
 ステップS30では、価値関数更新部196に記憶されている価値関数を更新する。具体的には価値関数更新部196が、状態データとしての軸依存データと、判定データとしての分割後軸依存データをモデル近似符号化して得られる近似不可点数及び近似後データ量と、報酬の値と、に基づいて、上述のQ学習を行うことにより、記憶していた価値関数を更新する。その後、ステップS31に進む。
 ステップS31では、本学習処理を継続するか否かを判別する。この判別がYESであれば、ステップS21に戻る。一方、この判別がNOであれば、本処理を終了する。
 このようにデータ符号化装置107によれば、機械学習装置109による強化学習により、軸依存データを最もデータ数を減らして圧縮できる最適な分割後軸依存データに分割できるため、各軸データ(各軸誤差)の一次結合とみなすことができる最適な複数の領域を生成させることができ、各領域について一次結合モデルのモデル近似符号化を実行することで、従来は圧縮が困難であった軸依存データをより圧縮することができる。
 以上説明したデータ符号化装置の各例では、各データ符号化装置に各処理を実行させるためのデータ符号化プログラムを提供することもできる。即ち、第1のデータ符号化プログラムとして、産業機械の各軸の座標値に依存する軸依存データの一部と、軸依存データを産業機械の各軸データの一次結合として近似する一次結合モデルと、に基づいて、軸依存データを符号化した符号化後軸依存データを生成させるモデル近似符号化ステップをコンピュータに実行させるためのデータ符号化プログラムを提供することができる。
 また第1のデータ符号化プログラムにおいて、軸依存データを分割して複数の分割後軸依存データを生成する軸依存データ分割ステップをさらに備え、モデル近似符号化ステップにより、複数の分割後軸依存データと一次結合モデルとに基づいて符号化後軸依存データを生成させる第2のデータ符号化プログラムを提供することができる。
 また第2のデータ符号化プログラムにおいて、動的計画法を実行することにより最適な分割後軸依存データを生成する動的計画法処理ステップを備え、符号化後軸依存データの最適性を評価する最適性評価ステップと、軸依存データを複数の部分に分割して部分的軸依存データを生成する部分分割ステップと、部分的軸依存データを拡張して結合することにより最適な分割後軸依存データを生成する最適化結果結合ステップと、をコンピュータに実行させるための第3のデータ符号化プログラムを提供することができる。
 また第2のデータ符号化プログラムにおいて、機械学習装置による強化学習結果に基づいて最適な分割後軸依存データを生成するステップをコンピュータに実行させるための第4のデータ符号化プログラムを提供することができる。
 また第1~第4のデータ符号化プログラムにおいて、近似誤差量を算出する近似誤差算出ステップと、近似誤差量を符号化して符号化後近似誤差量を生成するステップと、をコンピュータに実行させるための第5のデータ符号化プログラムを提供することができる。
 また第5のデータ符号化プログラムにおいて、近似誤差量から所定トレランスを超える近似誤差量を除去することにより、所定トレランス以内の近似誤差量を生成するステップと、所定トレランス以内の近似誤差量を符号化して符号化後近似誤差量を生成するステップと、をコンピュータに実行させるための第6のデータ符号化プログラムを提供することができる。
 また第1~第6のデータ符号化プログラムにおいて、符号化後軸依存データを符号化するステップをコンピュータに実行させるための第7のデータ符号化プログラムを提供することができる。
 なお、上述の第4の例では、モデル近似符号化部141が近似誤差算出部142を備える構成としたが、例えば、データ符号化装置104により符号化されたモデル近似符号化後軸依存データをデータ復号化装置により複合化し、復号化された軸依存データと元の軸依存データとの差分により、近似誤差量を算出する構成としてもよい。
 また、上述の第4の例では、近似誤差算出部142を備える構成を第1の例に適用したが、これに制限されず、第2の例や第3の例にも適用することができる。また、上述の第6の例では、モデル近似符号化後データ符号化部162を備える構成を第1の例に適用したが、これに制限されず、他の例にも適用することができる。このように、上述の各例は、互いに機能を阻害しない限り、適宜組み合わせることが可能である。
 また、上述の第7の例では、データ符号化装置107とは別に、機械学習装置109を設けたが、これに制限されず、データ符号化装置107の内部に機械学習装置を設けてもよい。
<データ復号化装置>
 図1に戻って、第1実施形態に係るデータ復号化装置1について説明する。
 図1に示されるように、データ復号化装置1は、復号化部11を備える。復号化部11は、モデル近似符号化後軸依存データと、一次結合モデルと、に基づいて、復号化後軸依存データとしてモデル近似復号化後軸依存データを生成する。
 データ復号化装置1は、上述の各データ符号化装置と同様に、例えば、バスを介して互いに接続された、ROM(read only memory)やRAM(random access memory)等のメモリ、CPU(control processing unit)、キーボード等の操作手段、ディスプレイ、及び通信制御部を備えたコンピュータを用いて構成される。後述する機能部の機能及び動作は、上記コンピュータに搭載されたCPU、メモリ、及び該メモリに記憶された制御プログラムが協働することにより達成される。
 データ復号化装置1は、例えば、工作機械やロボット等の産業機械の制御装置に対応する数値制御装置(CNC:Computerized Numerical Control))やロボット制御装置等に設けられてよい。あるいは、これら制御装置と通信可能に外部のコンピュータ等に設けられてもよい。
 復号化部11は、入力データとして、各軸データの一次結合によるモデル近似符号化後軸依存データを取得する。このモデル近似符号化後軸依存データは、上述の各データ符号化装置により生成される。上述の通り、対象軸数をLとし、L個の対象軸名称をそれぞれX~Xとすると、モデル近似符号化後軸依存データは、上述の数式(7)で表される定数ベクトルcと、L個の各軸データ(各軸誤差)であるベクトルEa [X]~ベクトルEa [X]と、L個の各軸データの各々の要素数N ~N と、の情報を含む。ここで、各軸データ(各軸誤差)は、下記数式(12)で表されるように、要素数分、ベクトルを並べたものであるとする。
Figure JPOXMLDOC01-appb-M000012
 また、一次結合モデルは、例えばデータ復号化装置1の記憶部に格納されており、上述した下記数式(5)で表される。モデル近似符号化後軸依存データはこの一次結合モデルに従うため、復号化部11は、この数式(5)で表される一次結合式により、モデル近似復号化後軸依存データとしてのベクトルEa[X]・・・[X]を算出する。
Figure JPOXMLDOC01-appb-M000013
 データ復号化装置1による復号化について、具体例を挙げてより詳しく説明する。例えば、対象軸数が2で、2個の対象軸名称をそれぞれX、Yとする。このとき、定数ベクトルc、2個の各軸データ(各軸誤差)としてのベクトルEa[X]及びベクトルEa[Y]と、各々の要素数N及びNが、上記数式(5)に入力される。例えば、N=4、N=3としたときの各軸データ(各軸誤差)としてのベクトルEa[X]及びベクトルEa[Y]の一例は、下記数式(13)及び数式(14)によりそれぞれ表される。
Figure JPOXMLDOC01-appb-M000014
Figure JPOXMLDOC01-appb-M000015
 このとき、モデル近似復号化後軸依存データとしてのベクトルEa[X][Y]は、下記数式(15)で表される。
Figure JPOXMLDOC01-appb-M000016
 従って、例えばベクトルEa[3][1]であれば、ベクトルEa[3]=ベクトルu、ベクトルEa[1]=ベクトルvであるから、ベクトルEa[3][1]は下記数式(16)で表されることになる。
Figure JPOXMLDOC01-appb-M000017
 本実施形態によれば、以下の効果が奏される。
 本実施形態に係るデータ復号化装置1では、産業機械の各軸の座標値に依存する軸依存データを産業機械の各軸データの一次結合として近似する一次結合モデルと、一次結合モデルによりモデル近似されたモデル近似符号化軸依存データと、に基づいて、モデル近似符号化軸依存データを復号化したモデル近似復号化後軸依存データを生成する復号化部11を設けた。これにより、産業機械の各軸の座標値に依存する軸依存データを符号化した符号後軸依存データを復号化することができる。ひいては、記憶容量を増大することなく、産業機械の制御装置等に入力して利用可能な誤差量等のデータを増加させることができ、産業機械の誤差をより精度良く補正することができる。
[第2実施形態]
 図29は、第2実施形態に係るデータ復号化装置の構成を示す図である。図29に示されるように、第2実施形態に係るデータ復号化装置2は、近似誤差復号化部22と、近似誤差量結合部23と、を備える点において第1実施形態に係るデータ復号化装置1と相違する。また、復号化部21で生成されるモデル近似復号化後軸依存データに、復号化後近似誤差量を結合することにより復号化後軸依存データを生成する点において、第1実施形態と相違する。これら相違点以外の構成については、第1実施形態と共通である。
 近似誤差復号化部22は、軸依存データを一次結合モデルによりモデル近似したときに得られる近似誤差量を符号化した符号化後近似誤差量を取得する。また、近似誤差復号化部22は、取得した符号化後近似誤差量を復号化して復号化後近似誤差量を生成する。符号化後近似誤差量は、上述の第4の例のデータ符号化装置104において、近似誤差符号化部43により近似誤差量を符号化することで生成される。
 近似誤差量結合部23は、復号化部21で生成されたモデル近似復号化後軸依存データと、近似誤差復号化部22で生成された復号化後近似誤差量とを取得する。また、近似誤差量結合部23は、取得したモデル近似復号化後軸依存データに、取得した復号化後近似誤差量を結合することにより、近似誤差量結合後の復号化後軸依存データを生成する。ここで、結合方法としては特に制限されない。例えば加算であってよく、近似誤差量結合部23は、モデル近似復号化後軸依存データに復号化後近似誤差量を加算することにより、近似誤差量結合後の復号化後軸依存データを生成することができる。
 本実施形態によれば、以下の効果が奏される。
 本実施形態に係るデータ復号化装置2では、軸依存データを一次結合モデルによりモデル近似したときに得られる近似誤差量を符号化した符号化後近似誤差量を取得し、符号化後近似誤差量を復号化して復号化後近似誤差量を生成する近似誤差復号化部22を設けた。また、本実施形態に係るデータ復号化装置2では、モデル近似復号化後軸依存データに復号化後近似誤差量を結合することにより、近似誤差量結合後の復号化後軸依存データを生成する近似誤差量結合部23を設けた。これにより本実施形態によれば、符号化した軸依存データを復号化できるうえ、符号化した近似誤差量を復号化して結合できるため、例えば符号化後近似誤差量が所定トレランスを超える近似誤差量を除去したものでなければ、元の誤差量等の軸依存データを欠損なく再現することができる。
 なお本実施形態では、復号化後近似誤差量を近似誤差復号化部22により生成する構成としたが、復号化後近似誤差量の代わりに、上述のデータ符号化装置にて軸依存データをモデル近似符号化したことにより生じた近似誤差量を用いてもよい。この場合、近似誤差復号化部22は不要である。これにより、復号化後軸依存データは、モデル近似符号化前の軸依存データと一致する。即ち、本実施形態のデータ復号化装置2は、元の軸依存データを欠損なく復号化することが可能となる。
[第3実施形態]
 図30は、第3実施形態に係るデータ復号化装置の構成を示す図である。図30に示されるように、第3実施形態に係るデータ復号化装置3は、所定トレランスを超える近似誤差量結合部34を備える点において第2実施形態に係るデータ復号化装置2と相違する。また、近似誤差量結合後の復号化後軸依存データに所定トレランスを超える近似誤差量を結合することにより復号化後軸依存データを生成する点において、第2実施形態と相違する。これら相違点以外の構成については、第2実施形態と共通である。
 ここで、本実施形態の近似誤差復号化部32で複合化される符号化後近似誤差量は、上述の第5の例のデータ符号化装置105において、近似誤差符号化部154により所定トレランス以内の近似誤差量を符号化することにより生成されたものである。即ち、本実施形態で用いられる近似誤差量は、所定トレランスを超える近似誤差量が除去された所定トレランス以内の近似誤差量である。
 所定トレランスを超える近似誤差量結合部34は、所定トレランスを超える近似誤差量を取得し、近似誤差量結合後の復号化後軸依存データに所定トレランスを超える近似誤差量を結合することにより、復号化後軸依存データを生成する。ここで、結合方法としては特に制限されない。例えば加算であってよく、所定トレランスを超える近似誤差量結合部34は、近似誤差量結合後の復号化後軸依存データに所定トレランスを超える近似誤差量を加算することにより、復号化後軸依存データを生成することができる。
 所定トレランスを超える近似誤差量は、上述の第5の例のデータ符号化装置105において、所定トレランスを超える近似誤差除去部153により生成される。即ち、この近似誤差除去部153により近似誤差量から所定トレランス以内の近似誤差量を差し引くことで生成された所定トレランスを超える近似誤差量が、本実施形態の所定トレランスを超える近似誤差量結合部34で用いられる。
 本実施形態によれば、以下の効果が奏される。
 本実施形態に係るデータ復号化装置3では、近似誤差量を、所定トレランスを超える近似誤差量が除去された所定トレランス以内の近似誤差量とした。また、本実施形態に係るデータ復号化装置3では、所定トレランスを超える近似誤差量を取得し、近似誤差量結合後の復号化後軸依存データに所定トレランスを超える近似誤差量を結合することにより復号化後軸依存データを生成する、所定トレランスを超える近似誤差量結合部を設けた。これにより本実施形態によれば、符号化した軸依存データを復号化でき、これに対して、符号化した近似誤差量を復号化して結合できるとともに所定トレランスを超える近似誤差量も結合できるため、元の誤差量等の軸依存データを欠損なく再現することができる。
[第4実施形態]
 図31は、第1実施形態に係るデータ復号化装置1を備える誤差補正システム200の構成を示す図である。本実施形態に係る誤差補正システム200は、データ復号化装置1により生成される復号化後軸依存データを用いて、産業機械の誤差を補正するものである。
 誤差補正システム200は、例えば、バスを介して互いに接続された、ROM(read only memory)やRAM(random access memory)等のメモリ、CPU(control processing unit)、キーボード等の操作手段、ディスプレイ、及び通信制御部を備えたコンピュータを用いて構成される。後述する機能部の機能及び動作は、上記コンピュータに搭載されたCPU、メモリ、及び該メモリに記憶された制御プログラムが協働することにより達成される。
 誤差補正システム200は、例えば、工作機械やロボット等の産業機械の制御装置に対応する数値制御装置(CNC:Computerized Numerical Control))やロボット制御装置等に設けられてよい。あるいは、これら制御装置と通信可能に外部のコンピュータ等に設けられてもよい。
 図31に示されるように、誤差補正システム200は、データ復号化装置1と、指令解析部201と、補正部202と、補間部203と、X軸用加減速部204と、Y軸用加減速部205と、Z軸用加減速部206と、X軸サーボ207と、Y軸サーボ208と、Z軸サーボ209と、を備える。データ復号化装置1の詳細については、上述した通りである。
 指令解析部201は、加工プログラムをブロック毎に読み出して解析し、解析結果に基づいて工作機械等の各制御軸の移動を指令する移動指令データを生成する。指令解析部201は、生成した移動指令データを後述の補正部202へ送信する。
 補正部202は、指令解析部201から取得した移動指令データを、データ復号化装置1により生成された復号化後軸依存データに基づいて補正する。補正部202による補正処理については、後段で詳述する。
 補間部203は、指令解析部201から生成されて補正部202で補正された移動指令データに基づいて、指令経路上の点を所定の補間周期で補間計算した補間データを生成する。補間部203は、生成した補間データを、後述のX軸用加減速部204、Y軸用加減速部205及びZ軸用加減速部206にそれぞれ分配して送信する。
 X軸用加減速部204、Y軸用加減速部205及びZ軸用加減速部206は、補間部203から送信された各補間データに基づいて、それぞれ対応するX軸サーボ、Y軸サーボ及びZ軸サーボのパルス信号を補間周期毎に生成する。X軸用加減速部204、Y軸用加減速部205及びZ軸用加減速部206は、生成した各パルス信号をX軸サーボ、Y軸サーボ及びZ軸サーボへそれぞれ入力することにより、工作機械の複数の機械要素を複数の制御軸に沿って移動させる。
 次に、補正部202による補正処理について詳しく説明する。先ず、誤差補正システム200は、入力データとしてモデル近似符号化後軸依存データを取得する。取得されたモデル近似符号化後軸依存データと、一次結合モデルとにより、データ復号化装置1の復号化部11は、復号化後軸依存データとしてのモデル近似復号化後軸依存データであるベクトルEa[X]・・・[X]を生成する。
 図31に示されるように、誤差補正システム200が例えばX、Y、Zの3軸を備える場合には、データ復号化装置1は復号化後軸依存データとしてベクトルEa[X][Y][Z]を生成する。ここで、ベクトルEa[X][Y][Z]におけるX、Y、Zは、誤差補正システム200が備える各軸X、Y、Zの座標値を、各軸の補正点間隔Δ、Δ、Δにより量子化したインデックスであるとする。
 具体例を挙げて説明する。例えば、各軸の座標値を、(X、Y、Z)=(100.0、40.0、30.0)であるとし、各軸の補正点間隔を、(Δ、Δ、Δ)=(25.0、20.0、30.0)であるとすると、各軸座標値を量子化した結果は、(100.0/25.0、40.0/20.0、30.0/30.0)=(4、2、1)となる。よって、復号化後軸依存データとしてのベクトルEa[4][2][1]を、各軸座標値(X、Y、Z)=(100.0、40.0、30.0)における誤差量とみなし、誤差補正を実行することができる。
 なお、量子化後の値が上述の(4、2、1)のような整数とはならずに小数点以下の端数を持つ場合の誤差補正について、図32を参照して説明する。図32は、補正部202による誤差補正を説明するための図であり、より詳しくは、量子化後の値が小数点以下の端数を持つ場合の誤差補正を説明するための図である。ここでは、例えば量子化結果が(n+f,n+f,n+f)であるとする。ただし、n、n、nは整数値とし、f、f、fは0以上1未満の小数値とする。
 図32に示されるように、立方体の8つの頂点の内の1点の復号化後軸依存データをベクトルEa[n][n][n]とし、残りの7つの各頂点の復号化後軸依存データを、ベクトルEa[n+1][n][n]、ベクトルEa[n+1][n+1][n]、ベクトルEa[n+1][n][n+1]、ベクトルEa[n+1][n+1][n+1]、ベクトルEa[n][n+1][n]、ベクトルEa[n][n+1][n+1]、ベクトルEa[n][n][n+1]とする。このとき、図32に示されるように、立方体内の現在の座標値は(n+f,n+f,n+f)で表され、上記8つの頂点の復号化後軸依存データを加重和して算出された内分和を、この現在座標値の復号化後軸依存データ、即ち誤差量として誤差補正を実行することができる。
 本実施形態によれば、以下の効果が奏される。
 本実施形態に係る誤差補正システム200では、補正部202と、データ復号化装置1と、を設け、補正部202を、復号化後軸依存データに基づいて産業機械の誤差を補正する構成とした。これにより本実施形態によれば、産業機械の各軸の座標値に依存する軸依存データを符号化した符号後軸依存データを復号化することができ、ひいては、記憶容量を増大することなく、産業機械の制御装置等に入力して利用可能な誤差量等のデータを増加させることができ、産業機械の誤差をより精度良く補正することができる。
 以上説明したデータ復号化装置の各実施形態では、各データ復号化装置に各処理を実行させるためのデータ復号化プログラムを提供することもできる。即ち、第1のデータ復号化プログラムとして、産業機械の各軸の座標値に依存する軸依存データを産業機械の各軸データの一次結合として近似する一次結合モデルと、一次結合モデルによりモデル近似されたモデル近似符号化軸依存データと、に基づいて、モデル近似符号化軸依存データを復号化したモデル近似復号化後軸依存データを生成させるステップをコンピュータに実行させるためのデータ復号化プログラムを提供することができる。
 また第1のデータ復号化プログラムにおいて、軸依存データを一次結合モデルによりモデル近似したときに得られる近似誤差量を符号化した符号化後近似誤差量を取得し、符号化後近似誤差量を復号化して復号化後近似誤差量を生成させるステップと、モデル近似復号化後軸依存データに復号化後近似誤差量を結合することにより、近似誤差量結合後の復号化後軸依存データを生成させるステップと、をコンピュータに実行させるための第2のデータ復号化プログラムを提供することができる。
 また第2のデータ復号化プログラムにおいて、近似誤差量を、所定トレランスを超える近似誤差量が除去された所定トレランス以内の近似誤差量とし、所定トレランスを超える近似誤差量を取得し、近似誤差量結合後の復号化後軸依存データに所定トレランスを超える近似誤差量を結合することにより、復号化後軸依存データを生成させるステップと、をコンピュータに実行させるための第3のデータ復号化プログラムを提供することができる。
 また、上述の誤差補正システム200に上記補正処理を実行させるための誤差補正プログラムであって、復号化後軸依存データに基づいて産業機械の誤差を補正するステップをコンピュータに実行させるための誤差補正プログラムを提供することができる。
 なお、本開示は上記の各実施形態に限定されるものではなく、本開示の目的を達成できる範囲での変形、改良は本開示に含まれる。
 上記第4実施形態では、上記第1実施形態に係るデータ復号化装置1を備える構成としたが、これに制限されない。例えば、上記第2実施形態に係るデータ復号化装置2や、上記第3実施形態に係るデータ復号化装置3を備える構成としてもよい。
 1,2,3 データ復号化装置
 11,21,31 復号化部
 22,32 近似誤差復号化部
 23,33 近似誤差量結合部
 34 所定トレランスを超える近似誤差量結合部
 101,102,103,104,105,106,107 データ符号化装置
 109 機械学習装置
 111,121,131,141,151,161 モデル近似符号化部
 122,132 軸依存データ分割部
 133 動的計画法処理部
 134 モデル近似符号化後の最適性評価部
 135 軸依存データの部分分割部
 136 部分的軸依存データの最適化結果結合部
 142 近似誤差算出部
 143 近似誤差符号化部
 152 近似誤差算出部
 153 所定トレランスを超える近似誤差除去部
 154 近似誤差符号化部
 162 モデル近似符号化後データ符号化部
 200 誤差補正システム
 201 指令解析部
 202 補正部
 203 補間部
 204 X軸用加減速部
 205 Y軸用加減速部
 206 Z軸用加減速部
 207 X軸サーボ
 208 Y軸サーボ
 209 Z軸サーボ

Claims (5)

  1.  符号化されたデータを復号化するデータ復号化装置であって、
     産業機械の各軸の座標値に依存する軸依存データを前記産業機械の各軸データの一次結合として近似する一次結合モデルと、前記一次結合モデルによりモデル近似されたモデル近似符号化軸依存データと、に基づいて、前記モデル近似符号化軸依存データを復号化したモデル近似復号化後軸依存データを生成する復号化部を備える、データ復号化装置。
  2.  前記軸依存データを前記一次結合モデルによりモデル近似したときに得られる近似誤差量を符号化した符号化後近似誤差量を取得し、前記符号化後近似誤差量を復号化して復号化後近似誤差量を生成する近似誤差復号化部と、
     前記モデル近似復号化後軸依存データに前記復号化後近似誤差量を結合することにより、近似誤差量結合後の復号化後軸依存データを生成する近似誤差量結合部と、をさらに備える、請求項1に記載のデータ復号化装置。
  3.  前記近似誤差量は、所定トレランスを超える近似誤差量が除去された所定トレランス以内の近似誤差量であり、
     前記所定トレランスを超える近似誤差量を取得し、前記近似誤差量結合後の復号化後軸依存データに前記所定トレランスを超える近似誤差量を結合することにより、復号化後軸依存データを生成する所定トレランス超え近似誤差量結合部をさらに備える、請求項2に記載のデータ復号化装置。
  4.  産業機械の誤差を補正する誤差補正システムであって、
     補正部と、請求項1から3いずれかに記載のデータ復号化装置と、を備え、
     前記補正部は、前記復号化後軸依存データに基づいて前記産業機械の誤差を補正する、誤差補正システム。
  5.  符号化されたデータを復号化するデータ復号化プログラムであって、
     産業機械の各軸の座標値に依存する軸依存データを前記産業機械の各軸データの一次結合として近似する一次結合モデルと、前記一次結合モデルによりモデル近似されたモデル近似符号化軸依存データと、に基づいて、前記モデル近似符号化軸依存データを復号化したモデル近似復号化後軸依存データを生成させるステップをコンピュータに実行させるためのデータ復号化プログラム。
PCT/JP2022/025416 2022-06-24 2022-06-24 データ復号化装置、誤差補正システム及びデータ復号化プログラム Ceased WO2023248482A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US18/873,239 US20250370837A1 (en) 2022-06-24 2022-06-24 Data decoding device, error correction system, and non-transitory computer-readable medium storing a data decoding program
PCT/JP2022/025416 WO2023248482A1 (ja) 2022-06-24 2022-06-24 データ復号化装置、誤差補正システム及びデータ復号化プログラム
JP2024528259A JP7807544B2 (ja) 2022-06-24 2022-06-24 データ復号化装置、誤差補正システム及びデータ復号化プログラム
CN202280097202.5A CN119384649A (zh) 2022-06-24 2022-06-24 数据解码装置、误差校正系统以及数据解码程序
DE112022007085.4T DE112022007085T5 (de) 2022-06-24 2022-06-24 Datendecodiervorrichtung, Fehlerkorrektursystem, und Datendecodierprogramm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/025416 WO2023248482A1 (ja) 2022-06-24 2022-06-24 データ復号化装置、誤差補正システム及びデータ復号化プログラム

Publications (1)

Publication Number Publication Date
WO2023248482A1 true WO2023248482A1 (ja) 2023-12-28

Family

ID=89379325

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/025416 Ceased WO2023248482A1 (ja) 2022-06-24 2022-06-24 データ復号化装置、誤差補正システム及びデータ復号化プログラム

Country Status (5)

Country Link
US (1) US20250370837A1 (ja)
JP (1) JP7807544B2 (ja)
CN (1) CN119384649A (ja)
DE (1) DE112022007085T5 (ja)
WO (1) WO2023248482A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08339216A (ja) * 1995-06-09 1996-12-24 Mitsubishi Electric Corp コンピュータ制御型数値制御装置のパラメータ設定方法およびコンピュータ制御型数値制御装置
JP2000099123A (ja) * 1998-09-22 2000-04-07 Matsushita Electric Ind Co Ltd 産業用ロボット
JP2011209897A (ja) * 2010-03-29 2011-10-20 Fanuc Ltd 5軸加工機を制御する数値制御装置
JP2014113674A (ja) * 2012-12-12 2014-06-26 Hirokiko Co Ltd 補正プログラム及びその記憶媒体
CN112558547A (zh) * 2021-02-19 2021-03-26 成都飞机工业(集团)有限责任公司 一种五轴数控机床平动轴几何误差补偿数据快速优化方法
JP2021092954A (ja) * 2019-12-10 2021-06-17 ファナック株式会社 ワークモデルの修正量を学習する機械学習装置、制御装置、加工システム、及び機械学習方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08339216A (ja) * 1995-06-09 1996-12-24 Mitsubishi Electric Corp コンピュータ制御型数値制御装置のパラメータ設定方法およびコンピュータ制御型数値制御装置
JP2000099123A (ja) * 1998-09-22 2000-04-07 Matsushita Electric Ind Co Ltd 産業用ロボット
JP2011209897A (ja) * 2010-03-29 2011-10-20 Fanuc Ltd 5軸加工機を制御する数値制御装置
JP2014113674A (ja) * 2012-12-12 2014-06-26 Hirokiko Co Ltd 補正プログラム及びその記憶媒体
JP2021092954A (ja) * 2019-12-10 2021-06-17 ファナック株式会社 ワークモデルの修正量を学習する機械学習装置、制御装置、加工システム、及び機械学習方法
CN112558547A (zh) * 2021-02-19 2021-03-26 成都飞机工业(集团)有限责任公司 一种五轴数控机床平动轴几何误差补偿数据快速优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
VOLODYMYR MNIH, KORAY KAVUKCUOGLU, DAVID SILVER, ANDREI A. RUSU, JOEL VENESS, MARC G. BELLEMARE, ALEX GRAVES, MARTIN RIEDMILLER, A: "Human-level control through deep reinforcement learning", NATURE, vol. 518, no. 7540, pages 529 - 533, XP055283401, DOI: 10.1038/nature14236 *

Also Published As

Publication number Publication date
DE112022007085T5 (de) 2025-04-24
CN119384649A (zh) 2025-01-28
JP7807544B2 (ja) 2026-01-27
US20250370837A1 (en) 2025-12-04
JPWO2023248482A1 (ja) 2023-12-28

Similar Documents

Publication Publication Date Title
CN113706686A (zh) 一种三维点云重建结果补全方法及相关组件
JP4210056B2 (ja) 工具経路の作成装置及び方法
CN101925925A (zh) 基于预测的图像处理
JP2017126890A (ja) 符号化装置及びその制御方法
CN106157339A (zh) 基于低秩顶点轨迹子空间提取的动画网格序列压缩算法
EP0822516B1 (en) Shape data compression method and apparatus
JP2007518367A (ja) マッチング追跡を用いたデータ圧縮
JP7807543B2 (ja) データ符号化装置及びデータ符号化プログラム
JP2024086700A (ja) 製造用センサデータのシーケンスモデリングを行うシステム及び方法
JP7807544B2 (ja) データ復号化装置、誤差補正システム及びデータ復号化プログラム
CN113065204B (zh) 一种液压支架油缸参数化设计方法及系统
US6609045B1 (en) File conversion apparatus for machining program of numerical control system and computer readable recording medium for storing program for computer to execute file conversion process
CN112958313A (zh) 使用距离矩阵加权特征的智能区域补偿喷漆参数控制方法
CN115091211B (zh) 数控车磨复合机床及其生产控制方法
JP7807545B2 (ja) 近似誤差検出装置及び近似誤差検出プログラム
CN118484724B (zh) 基于人工智能的系留固定索具的性能评估方法及装置
JP4524501B2 (ja) 符号化システム、符号化方法、符号化プログラム、復号化システム、復号化方法および復号化プログラム
CN117540517A (zh) 一种基于两阶段深度概率模型的快速拓扑优化方法
CN106101731A (zh) 图像无损压缩方法及装置
JP2022045615A (ja) 演算装置及び演算方法
Parker et al. Structural optimization of a force balance using a computational experiment design
JPH1097645A (ja) 形状データ圧縮方法,伸長方法、及び形状データ圧縮装置,伸長装置
CN121389731B (zh) 一种地下场景中六自由度并联机构的位姿计算方法及装置
JP7649452B2 (ja) 情報処理装置及びプログラム
CN118537702B (zh) 一种基于自适应拓扑结构的视觉或文本任务深度学习方法

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: 22948041

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2024528259

Country of ref document: JP

Ref document number: 18873239

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 112022007085

Country of ref document: DE

Ref document number: 202280097202.5

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 202280097202.5

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 112022007085

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22948041

Country of ref document: EP

Kind code of ref document: A1

WWP Wipo information: published in national office

Ref document number: 18873239

Country of ref document: US