Systems and methods for the matching of materials data to parts data
Claim Score by NHIP
Abstract
Systems and methods for correlating materials records to part records. At least one materials record is provided with a corresponding digital materials images and a plurality of parts records are provided with at least one corresponding digital parts image. The materials records are automatically compared to the part records, and potential matches are identified. Any digital materials images and parts images for the potential matches are displayed to the user for confirmation of a match.

Term
Term ended
Projected expiry passed 7 May 2024, 2.4 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
19 claims: 5 independent, 14 dependent
- 1A method for identifying relationships between a plurality of materials records comprising materials text data and a plurality of parts records comprising parts text data, wherein at least one of said parts records is correlated to at least one asset, said method comprising the steps of:(a) providing at least one digital materials image correlated to at least one of said materials records;(b) comparing said materials text data with said parts text data and identifying at least one possible match of at least one materials record and at least one parts record;(c) displaying any digital materials image correlated to said possible match of at least one materials record and at least one parts record;and (d) determining if a match exists between said possible match of at least one materials record and at least one parts record.
- 14A system for identifying relationships between a plurality of materials records comprising materials text data and a plurality of parts records comprising parts text data, wherein each of said parts records is correlated to at least one asset, the system comprising:(a) a materials image database storing at least one digital materials image correlated to at least one materials record;(b) a parts image database storing at least one parts image correlated to at least one parts record;(c) a match engine having: (i) a comparator configured to compare materials text data of a materials record with parts text data of a parts record and determine a matching weight correlated to the likelihood that the materials record matches the parts record;(d) a display for displaying at least one digital materials image correlated to at least one materials record and for displaying at least one digital parts image correlated to at least one parts record;and (e) input means for receiving data correlated to whether a match exists between at least one materials record and at least one parts record.
- 15Broadest claimClaim Score 83, broad(NHIP)A materials database comprising a plurality of materials records, wherein each materials record comprises materials text data, and wherein said materials database further comprises a materials image database comprising at least one digital materials image correlated to at least one materials record.
- 16A parts database comprising a plurality of part records, wherein each part record comprises parts text data, and wherein said part database further comprises a parts image database comprising at least one digital parts image correlated to at least one parts record.
- 17A method for identifying relationships between a plurality of materials records comprising materials text data and a plurality of parts records comprising parts text data, wherein at least one of said parts records is correlated to at least one asset, said method comprising the steps of:(a) providing at least one digital parts image correlated to at least one of said parts records;(b) comparing said materials text data with said parts text data and identifying at least one possible match of at least one materials record and at least one parts record;(c) displaying any digital parts image correlated to said possible match of at least one materials record and at least one parts record;and (d) determining if a match exists between said possible match of at least one materials record and at least one parts record.
Independent claims5
86 paragraphs in 5 sections, as filed
FIELD OF THE INVENTION
0001The present invention relates generally to the field of enterprise resource planning or asset management systems for maintaining assets, with common but by no means exclusive application to manufacturing or processing plants.
BACKGROUND OF THE INVENTION
0002Large manufacturing and many other enterprises utilize fixed plant, equipment, machines or other assets (collectively referred to herein as “assets”) requiring repair and maintenance from time to time. Such enterprises often store replacement parts and maintain parts ordering records for critical assets. For the purposes of this application, a “part” may be a single component or an assembly composed of a number of individual components.
0003Computer systems have been developed such as enterprise resource planning systems (ERPs), enterprise asset management systems (EAMs) and computerized maintenance management systems (CMMS) (all referred to collectively herein as ERPs). Such ERPs may store replacement “materials” inventory records, materials ordering records, and may also store “bills of materials” (BOMs) which list frequently-replaced materials or components for a particular asset and may also identify materials to be replaced in an asset during regularly scheduled maintenance. Typically, materials are identified in ERPs by a unique stock keeping unit number (SKU) assigned by the enterprise.
0004Such ERPs are of use to enterprise procurement departments responsible for obtaining parts requested on work orders which list the corresponding material's SKU. However, ERPs are not particularly useful to engineers and other maintenance personnel who must identify the correct SKU for a particular part which needs replacing, in order to prepare the work order procurement request. Knowing how a particular part is identified in printed parts manuals (typically supplied by the original equipment manufacturer (OEM) or other parts supplier when an asset is purchased) available to the maintenance personnel is of no assistance in identifying the enterprise's SKU for the corresponding material. Losses in time, use of assets and money occur when the wrong material is mistakenly ordered.
0005The applicants have recognized a need for systems and methods for correlating ERP materials data with parts data typically available to maintenance personnel.
SUMMARY OF THE INVENTION
0006In one aspect, the present invention is directed towards a method for identifying relationships between a plurality of materials records having materials text data and a plurality of parts records having parts text data. At least one parts record is correlated to at least one asset. The method includes the steps of: <ul id="ul0001" list-style="none"><li id="ul0001-0001" num="0000"><ul id="ul0002" list-style="none"><li id="ul0002-0001" num="0007">(a) providing at least one digital materials image correlated to at least one of said materials records;</li><li id="ul0002-0002" num="0008">(b) comparing materials text data with parts text data and identifying at least one possible match of at least one materials record and at least one parts records;</li><li id="ul0002-0003" num="0009">(c) displaying any digital materials image correlated to said at least one possible match of at least one materials record and at least one parts record; and</li><li id="ul0002-0004" num="0010">(d) determining if a match exists between said possible match of at least one materials record and at least one parts record.</li></ul></li></ul>
0011Preferably, the method also includes the steps of: <ul id="ul0003" list-style="none"><li id="ul0003-0001" num="0000"><ul id="ul0004" list-style="none"><li id="ul0004-0001" num="0012">(a) providing at least one digital parts image correlated to at least one of said parts records; and</li><li id="ul0004-0002" num="0013">(b) displaying any digital parts image correlated to said possible match of at least one materials record and at least one parts record.</li></ul></li></ul>
0014In another aspect, the present invention is directed towards a method for identifying relationships between a plurality of materials records comprising materials text data and a plurality of parts records comprising parts text data, wherein at least one of said parts records is correlated to at least one asset. The method includes the steps of: <ul id="ul0005" list-style="none"><li id="ul0005-0001" num="0000"><ul id="ul0006" list-style="none"><li id="ul0006-0001" num="0015">(a) providing at least one digital parts image correlated to at least one of said parts records;</li><li id="ul0006-0002" num="0016">(b) comparing said materials text data with said parts text data and identifying at least one possible matches of at least one materials record and at least one parts record;</li><li id="ul0006-0003" num="0017">(c) displaying any digital parts image correlated to said possible match of at least one materials record and at least one parts record; and</li><li id="ul0006-0004" num="0018">(d) determining if a match exists between said possible match of at least one materials record and at least one parts record.</li></ul></li></ul>
0019Preferably, the method also includes the steps of: <ul id="ul0007" list-style="none"><li id="ul0007-0001" num="0000"><ul id="ul0008" list-style="none"><li id="ul0008-0001" num="0020">(a) providing at least one digital materials image correlated to at least one of said materials records; and</li><li id="ul0008-0002" num="0021">(b) displaying any digital materials image correlated to said possible match of at least one materials record and at least one parts record.</li></ul></li></ul>
0022In yet another aspect, the present invention is directed towards a system for identifying relationships between a plurality of materials records having materials text data and a plurality of part records having part text data.
0023Each parts record is correlated to at least one asset. The system includes a materials image database, a parts image database, a match engine having a comparator, a display and an input device.
0024The materials image database stores at least one materials image correlated to at least one of said material records. The parts image database stores at least one electronic parts image correlated to at least one of said parts records.
0025The comparator is configured to compare materials text data of a materials record with parts text data of a parts record and determine a matching weight correlated to the likelihood that the materials record matches the parts record.
0026Finally, the display is configured for displaying at least one digital materials image correlated to at least one materials record and for displaying at least one digital parts image correlated to at least one parts record, while the input means is adapted for receiving data correlated to whether a match exists between at least one materials record and at least one parts record.
0027In a further aspect, the invention is directed towards a materials database storing a plurality of materials records, wherein each materials record includes materials text data, and wherein said materials database further includes a materials image database having at least one digital materials image correlated to at least one materials record.
0028In yet another aspect, the invention is directed towards a parts database storing a plurality of part records, wherein each part record includes parts text data, and wherein said part database further includes a parts image database having at least one digital parts image correlated to at least one parts record.
BRIEF DESCRIPTION OF THE DRAWINGS
0029The present invention will now be described, by way of example only, with reference to the following drawings, in which like reference numerals refer to like parts and in which:
0030<figref idref="DRAWINGS">FIG. 1</figref> is a schematic diagram of a matching system made in accordance with the present invention.
0031<figref idref="DRAWINGS">FIG. 2A</figref> is a schematic diagram of example materials data records, as may be stored in the materials database of <figref idref="DRAWINGS">FIG. 1</figref>;
0032<figref idref="DRAWINGS">FIG. 2B</figref> is a schematic diagram of example bill of materials data records, as may be stored in the materials database of <figref idref="DRAWINGS">FIG. 1</figref>;
0033<figref idref="DRAWINGS">FIG. 2C</figref> is a schematic diagram of example work order data as may be stored in the materials database of <figref idref="DRAWINGS">FIG. 1</figref>;
0034<figref idref="DRAWINGS">FIG. 3A</figref> is a schematic diagram of example parts data records, as may be stored in the parts database of <figref idref="DRAWINGS">FIG. 1</figref>;
0035<figref idref="DRAWINGS">FIG. 3B</figref> is a schematic diagram of a parts data record from <figref idref="DRAWINGS">FIG. 3A</figref> which has been amended with tracking data;
0036<figref idref="DRAWINGS">FIGS. 4A</figref>, <b>4</b>B & <b>4</b>C are a flow diagram illustrating the steps of a method of the present invention; and
0037<figref idref="DRAWINGS">FIG. 5</figref> is a schematic diagram of a screen display as may be presented by a user during operation of the matching system of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
0038Referring to <figref idref="DRAWINGS">FIG. 1</figref>, illustrated therein is a matching system, referred to generally as <b>10</b>, made in accordance with the present invention. The matching system <b>10</b> comprise's a processor or central processing unit (CPU) <b>12</b> having a suitably programmed matching system engine <b>14</b> and an input/output device <b>16</b> (typically including an input component <b>16</b><sup>A </sup>such as a keyboard, and an output component <b>16</b><sup>B </sup>such as a display) also operatively coupled to the CPU <b>12</b>.
0039The matching system engine <b>14</b> comprises a comparator module <b>20</b>, configured for receiving two or more groups of typically (but not necessarily exclusively) textual data and generating a weighting value correlated to the degree of similarity between the two groups of data. An association module <b>22</b> (also referred to herein as a virtual BOM module) is also preferably provided, which analyzes purchase order, work order and other data sources which may be used to identify an association between materials and assets <b>26</b>, and determines if any such associations exist. As well, a tracker module <b>24</b> may also be provided for tracking the progress of the system's <b>10</b> operation.
0040The CPU <b>12</b> is operatively coupled to a materials database <b>30</b> which typically stores tens of thousands of materials records <b>32</b>, depending on the size and complexity of an enterprise's operations. The materials database <b>30</b> may also store BOM records <b>34</b>, each typically correlated to an asset <b>26</b> as well as a plurality of materials records <b>32</b>. As noted, BOMs <b>34</b> list frequently-replaced materials <b>32</b> or components for a particular asset <b>26</b> and may also identify materials <b>32</b> to be replaced in an asset <b>26</b> during maintenance or repair activities.
0041A materials image database <b>35</b> correlated to the materials records <b>32</b> may also be provided, which preferably contains an image <b>36</b> (typically a digital photograph or other digital picture or diagram) for each of many or all of the materials <b>32</b>. When used herein, “digital” is intended to refer to any digital, electronic or similar means for storing, manipulating and representing textual or image data. The materials database <b>30</b> may also store purchase order or other procurement data <b>38</b>.
0042The CPU <b>12</b> is also operatively coupled to a parts database <b>40</b> which typically stores parts data typically culled from parts manuals <b>41</b> and other sources. The database <b>40</b> typically stores tens of thousands of parts records <b>42</b>, along with a database <b>43</b> of corresponding electronic images of assembly or parts diagrams <b>44</b>.
0043Referring now to <figref idref="DRAWINGS">FIG. 2A</figref>, illustrated therein is an example of the type of materials records <b>32</b> data typically stored in the materials database <b>30</b>. Typically the materials record <b>32</b> data will be determined and entered into the database <b>30</b> by the enterprise procurement department when a material <b>32</b> is to be purchased for the first time.
0044The sample materials records <b>32</b> include different fields of mostly textual data (materials text data). Most of this textual data has typically been downloaded from the ERP and preferably massaged as necessary to optimize the matching process described herein. A materials identifier field <b>50</b> contains data indicating a unique identifier for each of the materials records <b>32</b> in the database <b>30</b>. Typically this identifier <b>50</b> is transparent to the user, and is used by the system <b>10</b> in correctly manipulating other data stored in the record <b>32</b>. An SKU field <b>52</b> contains a unique stock keeping identifier assigned by the enterprise.
0045A storage location field <b>54</b> stores data corresponding to the physical location or locations in the enterprise, where spares of the material <b>32</b> are stored (if spares are in fact kept on hand by the enterprise). As will be understood, sophisticated ERP systems may also track and store data representing quantities of materials currently stored by the enterprise (not shown).
0046A materials manufacturer field <b>56</b> stores data which identifies the manufacturer and/or the supplier of the material <b>32</b>. Typically, the materials record <b>32</b> will also store the manufacturer's/supplier's contact data (not shown) for placing an order for additional material <b>32</b>. A materials part number field <b>58</b> is provided for storing the manufacturer's/supplier's part number for reordering purposes. A written description of the material <b>32</b> (which may include various identifiers, such as, for example the size, configuration and material properties) is also preferably stored in one or more materials description fields <b>60</b>.
0047Preferably, a materials image identifier field <b>62</b> is also provided which stores data linking the materials record <b>32</b> to the corresponding materials image <b>36</b>, if one exists. Preferably during an audit, a digital image will be made of each of the materials <b>32</b> (typically by materials image means, such as a digital camera) stocked by the enterprise, and stored in the materials image database <b>35</b>, with a link to the image <b>36</b> being stored in the image identifier field <b>62</b> of the corresponding material record <b>32</b>. As materials <b>32</b> are ordered over time, any materials <b>32</b> for which an image <b>36</b> has not been obtained will preferably be identified and a photograph taken and stored in the image database <b>35</b>.
0048Referring now to <figref idref="DRAWINGS">FIG. 2B</figref>, illustrated therein is an example of the type of BOM record <b>34</b> data typically stored in the material database <b>30</b>. As with the materials records <b>32</b>, the BOM records <b>34</b> include different fields of mostly textual data. A BOM identifier field <b>70</b> contains data indicating a unique BOM identifier for each of the BOM records <b>34</b> in the database <b>30</b>.
0049A written description of the BOM is also preferably stored in a BOM description field <b>72</b>. An asset identifier field <b>74</b> is provided which stores data identifying which asset (for example, a piece of equipment or machine or subassembly) <b>26</b> the BOM record <b>34</b> relates to. As will be understood, most assets <b>26</b> in an enterprise are uniquely labeled and provided with an asset identifier for maintenance purposes. Typically the unique asset identifier printed on such a label <b>73</b> is stored in the asset identifier field <b>74</b>. More than one BOM record <b>34</b> may relate to the same asset <b>26</b>, and a BOM record <b>34</b> may relate to more than one asset <b>26</b>.
0050A SKU field <b>76</b> stores the stock keeping identifier assigned by the enterprise for each of the materials <b>32</b> associated with an asset <b>26</b> which are commonly replaced when the BOM <b>34</b> is utilized. The SKU data <b>76</b> provides a mechanism for cross-referencing the BOM records <b>34</b> to the materials records <b>32</b> storing matching SKU data <b>52</b>.
0051Complex BOM records (not shown) may store data hierarchically by sub-assembly or component of the associated asset <b>26</b>. As will be understood, sophisticated ERP systems may also track and store scheduling data corresponding to when the BOM <b>34</b> (or more typically the portion of a BOM record <b>34</b> relating to a component or sub-assembly) is scheduled to be implemented (not shown), if the BOM <b>34</b> is designed for preventive or recurring maintenance and not simply in response to the requirements for a repair.
0052<figref idref="DRAWINGS">FIG. 2C</figref> illustrates an example of the type of work order (or purchase order) record data <b>38</b> the ERP database may also store. A work order identifier field <b>38</b>A may be provided for storing a unique work order identifier. An asset identifier field <b>38</b>B may be provided which stores data identifying which asset <b>26</b> the work order relates to. A job description field <b>38</b>C may provide a description of the maintenance work to be performed. Material identifier <b>38</b>D and description <b>38</b>E fields serve to identify the materials required to perform the maintenance work.
0053Turning now to <figref idref="DRAWINGS">FIG. 3A</figref>, illustrated therein is an example of the type of data typically stored in a parts database <b>40</b>. As will be understood, typically the data stored in a parts record <b>42</b> will be obtained (and, if necessary, electronically converted) from parts manuals <b>41</b>, <b>108</b> supplied by the OEM (or other supplier) when an asset <b>26</b> is purchased or modified. A large enterprise may have hundreds or even thousands of different parts manuals <b>41</b>, <b>108</b>, each of which in turn may list tens, hundreds or thousands of different parts <b>42</b>. An original image of the OEM parts list and other data from the manuals <b>41</b>, <b>108</b> may be stored as an intact item of data for future reference.
0054The sample record <b>42</b> includes different fields of mostly textual data (parts text data). A part identifier field <b>90</b> contains data indicating a unique identifier for each of the part records <b>42</b> in the database <b>40</b>. Typically this identifier <b>90</b> is transparent to the user, and is used by the system <b>10</b> in correctly manipulating other associated data in the record <b>42</b>. An asset identifier field <b>92</b> contains data identifying which asset or assets <b>26</b> the part data is correlated to or associated with. Typically the unique asset identifier printed on an asset label <b>73</b> is stored in the asset identifier field <b>92</b>.
0055A manufacturer field <b>94</b> stores data which identifies the manufacturer of the part <b>42</b>. A figure number field <b>96</b> and a reference number field <b>98</b> are also provided. As will be understood, typically OEM manuals <b>41</b> include a parts/assembly diagram illustrating the various parts and components in the asset <b>26</b>, and their location in the assembled asset <b>26</b>. Each such part is typically identified by number in the diagram, and that reference number is stored in the reference field <b>98</b>. The figure number data <b>96</b> provides a link or index to a corresponding parts diagram <b>44</b> stored in the electronic parts database <b>40</b>.
0056If the OEM has provided the OEM's unique part identification number, this data is stored in the part number field <b>100</b>. However, a manufacturer will not always provide its replacement part numbers with its manuals. As well, replacement part numbers may change over time. A written description of the part <b>42</b> is also preferably stored in a description field <b>102</b>. A SKU field <b>104</b> is also provided to store any SKU identifiers (or tracking data) as the matching process is performed, which will be discussed in greater detail, below.
0057Preferably, a recommended spare field <b>106</b> is also provided. In parts manuals <b>41</b>, <b>108</b> OEMs typically identify parts of assemblies which require frequent replacement, and for which spares should be kept on hand. Data correlated to whether or not the OEM has recommended, or the owner/operator has determined based upon its experience or analysis, that spares of a part <b>42</b> should be kept, is stored in the spare field <b>106</b>.
0058As will be understood, the materials database <b>30</b> and the parts database <b>40</b> may be stored within data storage local to the CPU <b>12</b>, or remotely such that the databases <b>30</b>, <b>40</b> are typically accessed through a communications network such as the Internet.
0059Referring now to <figref idref="DRAWINGS">FIGS. 4A & 4B</figref> (in conjunction with <figref idref="DRAWINGS">FIGS. 1</figref>, <b>2</b>A, <b>2</b>B & <b>3</b>A), illustrated therein is one embodiment of the general process, referred to generally as <b>200</b>, which the matching system <b>10</b> performs. The matching engine <b>14</b> first selects a part record <b>42</b>′ from the parts database <b>40</b> for which no SKU matching data <b>104</b> has been stored (Block <b>202</b>).
0060The engine <b>14</b> then identifies all material records <b>32</b>′ associated with the corresponding asset <b>26</b> (Block <b>204</b>). To perform this task, the engine <b>14</b> may query the materials database <b>30</b> to identify all BOM records <b>34</b> having an asset identifier <b>74</b> matching the asset identifier <b>92</b> for the selected part <b>42</b>′. Each material record <b>32</b> associated with the identified BOMs <b>34</b> (ie. for which the SKU identifiers <b>52</b>, <b>76</b> match) is identified by the engine <b>14</b>.
0061Preferably using fuzzy logic, the comparator module <b>20</b> systematically compares the textual data <b>94</b>, <b>100</b>, <b>102</b> identifying and describing the selected part <b>42</b>′, to the corresponding textual data <b>56</b>, <b>58</b>, <b>60</b> for each of the identified materials <b>32</b>′. The comparator module <b>20</b> calculates a matching weight <b>150</b> for each identified material <b>32</b>′ correlated to the likelihood that the selected part <b>42</b>′ is the same as the identified material <b>32</b>′ (Block <b>206</b>).
0062Preferably, the comparator <b>20</b> will be programmed to first compare the manufacturer data <b>56</b>, <b>94</b> and the part numbers <b>58</b>, <b>100</b>—if the data matches, a 100% matching weight <b>150</b> will be returned. Preferably, too, the comparator <b>20</b> is programmed to allow users to input textual relationships to be used in the matching process, for example, that “AlphaBeta Corp.” is the same as “ABC Co.”.
0063As should also be understood, the parameters utilized by the comparator <b>20</b>, such as for example the amount of data compared, fields compared, and target probability weighting, can be adjusted to improve the number and quality of suggested matches and corresponding matching weight <b>150</b>.
0064The engine <b>14</b> then retrieves from the parts diagram database <b>43</b> the parts diagram <b>44</b> corresponding to the selected part <b>42</b>′ (via the Figure link data <b>96</b>). Pertinent textual data <b>94</b>, <b>100</b>, <b>102</b> which will assist the user in determining if a match to an identified material <b>32</b>′ exists, is then displayed to the user on the display <b>16</b><sup>B </sup>along with the corresponding part image or diagram <b>44</b>′ (Block <b>208</b>). Textual data <b>52</b>, <b>56</b>, <b>58</b>, <b>60</b> for the highest-weighted potential materials matches <b>32</b>′ will also be displayed to the user on the display <b>16</b><sup>B</sup>, along with any corresponding materials image <b>36</b>, and the calculated matching weight <b>150</b> (Block <b>210</b>).
0065<figref idref="DRAWINGS">FIG. 5</figref> illustrates a screen display <b>300</b> as may be presented to a user on the display <b>16</b><sup>B </sup>following completion of Blocks <b>208</b> and <b>210</b>. In a selected part display portion <b>302</b>, the display <b>300</b> presents useful textual data <b>94</b>, <b>100</b>, <b>102</b>. The selected part display portion <b>302</b> also preferably includes a parts image display portion <b>304</b> which displays the corresponding parts diagram <b>44</b>′ for the selected part <b>42</b>′. Preferably, the part <b>42</b>′ is highlighted or otherwise identified in the displayed parts diagram <b>44</b>′ for easy visual identification.
0066A potential matching materials display portion <b>306</b> of the display <b>300</b> is configured to display the textual data <b>52</b>, <b>56</b>, <b>58</b>, <b>60</b> for the highest-weighted of the identified materials <b>32</b>′ which potentially match the selected part <b>42</b>′, along with the corresponding match weight <b>150</b> values. A materials image display portion <b>308</b> of the screen display <b>300</b> is configured to display at least one selected materials image <b>36</b>′ from the displayed highest-weighted materials <b>32</b>′. Typically, the user will be able to scroll through the list of highest-weighted materials <b>32</b>′, with the corresponding materials image <b>36</b>′ of the highlighted material <b>310</b> being displayed.
0067By displaying the descriptive materials information <b>52</b>, <b>56</b>, <b>58</b>, <b>60</b> and the materials images <b>36</b>′ in conjunction with the descriptive parts information <b>94</b>, <b>100</b>, <b>102</b> and the parts diagram <b>44</b>′, the user is able to make an informed decision as to whether a potential material <b>32</b>′ is or is not an actual match to the selected part <b>42</b>′.
0068If the user determines that a potential material <b>32</b>′ matches the selected part <b>42</b>′, that determination is input via the input device <b>16</b><sup>A</sup>, and received by the engine <b>14</b> (Block <b>212</b>). The tracker module <b>24</b> is then configured to store the material's <b>32</b>′ SKU identifier <b>52</b> in the SKU match data field <b>104</b> for the selected part <b>42</b>′ (Block <b>214</b>). As will be understood, in complex embodiments of the invention, the determination made by the user may include different types of status other than simply indicating a match or no match. The engine <b>14</b> selects another unmatched part record <b>42</b>, and repeats the process commencing at Block <b>202</b>, until all part records <b>42</b> have been analyzed for potential matches to material records <b>32</b>.
0069Furthermore, in complex embodiments of the invention, a match may be accepted for all assets <b>26</b> of a similar type, or only for one specific asset <b>26</b>. For example, two similar assets <b>26</b> may have different tension springs, even though the part identifier <b>100</b> does not distinguish the types of springs which can be used. Accordingly, in such an embodiment, one part <b>42</b> may be matched to more than one material <b>32</b>, and more than one SKU identifier <b>52</b> may be stored in the SKU match field <b>104</b>.
0070If the user determines that none of the potential materials <b>32</b>′ matches the selected part <b>42</b>′, the tracker module <b>24</b> stores data in the SKU match data field <b>104</b> for the selected part <b>42</b>′ indicating that comparison of the BOM records <b>34</b> data to the selected part <b>42</b>′ did not result in a match (Block <b>218</b>).
0071For example, <figref idref="DRAWINGS">FIG. 3B</figref> illustrates the type of SKU match data <b>104</b> as may be stored by the tracker module <b>24</b> in selected part record <b>42</b>′ having part identification number P-<b>1</b>, in Block <b>218</b>.
0072If a match has not been identified, the virtual BOM module <b>22</b> is configured to analyze any stored purchase order or other material requisition or work order data <b>38</b> to identify any materials <b>32</b> not otherwise listed in a BOM record <b>34</b> but which are associated with the asset <b>26</b> corresponding to the selected part <b>42</b>′ (Block <b>220</b>). The SKU data <b>52</b> for the identified materials records <b>32</b>′ are then stored in the BOM record <b>34</b> (or alternatively in a temporary “Virtual. BOM” record <b>34</b>) associated with such asset <b>26</b>, as possible matches for the selected part <b>42</b>′ or other parts <b>42</b> associated with that asset <b>26</b>.
0073The steps outlined above with respect to Blocks <b>206</b>-<b>212</b> (and <b>214</b>, if appropriate) are repeated with the visual and textual data corresponding to the highest-weighted potential matches of materials <b>32</b>′ displayed to the user for comparison to the visual and textual data for the selected part <b>42</b>′.
0074If the user is unable to match any of the potential materials <b>32</b>′ to the selected part <b>42</b>′ (either because the user confirmed no match exists or is unable to make that determination based on the displayed information), the tracker module <b>24</b> stores data in the SKU match data field <b>104</b> for the selected part <b>42</b>′ indicating that comparison of the materials data suggested as a result of analysis of the purchase order data <b>38</b> to the selected part <b>42</b>′ did not result in a match (Block <b>222</b>).
0075If a match still has not been identified, the engine <b>14</b> then identifies all materials records <b>32</b>′ which have previously been SKU matched to parts records <b>42</b>″ associated with the same asset <b>26</b> as the selected part record <b>42</b>′ (Block <b>224</b>). To perform this task, the engine <b>14</b> may query the parts database <b>40</b> to identify all parts records <b>42</b>″ having an asset identifier <b>92</b> matching the asset identifier <b>92</b> for the selected part <b>42</b>′, and having SKU match data <b>104</b> confirming that the identified parts record <b>42</b>″ has been matched to a corresponding materials record <b>32</b>.
0076The steps outlined above with respect to Blocks <b>206</b>-<b>212</b> (and <b>214</b>, if appropriate) are repeated with the visual and textual data corresponding to the highest-weighted potential matches of materials <b>32</b>′ displayed to the user for comparison to the visual and textual data for the selected part <b>42</b>′.
0077If the user determines that none of the potential materials <b>32</b>′ matches the selected part <b>42</b>′, the tracker module <b>24</b> stores data in the SKU match data field <b>104</b> for the selected part <b>42</b>′ indicating that comparison of materials matched with associated parts records <b>42</b>″ to the selected part <b>42</b>′ did not result in a match (Block <b>228</b>).
0078If a match still has not been identified, the comparator module <b>20</b> performs a brute force analysis of every material record <b>32</b> in the materials database <b>30</b>, regardless of association to any particular assets <b>26</b>, and calculates a matching weight <b>150</b> for each material <b>32</b>′ correlated to the likelihood that the selected part <b>42</b>′ is the same as the identified material <b>32</b>′ (Block <b>230</b>).
0079Again, the visual and textual data corresponding to the highest-weighted potential matches of materials <b>32</b>′ are displayed to the user for comparison to the visual and textual data of the selected part <b>42</b>′, as the steps outlined above with respect to Blocks <b>206</b>-<b>212</b> (and <b>214</b>, if appropriate) are repeated.
0080If the user determines that none of the potential materials <b>32</b>′ matches the selected part <b>42</b>′, the tracker module <b>24</b> stores data in the SKU match data field <b>104</b> for the selected part <b>42</b>′ indicating that brute force comparison to all the materials records <b>32</b> did not result in a match (Block <b>232</b>).
0081Additionally, using his or her expertise or familiarity with the assets, the user may manually identify one or more specific materials <b>32</b>′ for comparison to the selected part <b>42</b>′ (Block <b>234</b>). The visual and textual data corresponding to the selected materials <b>32</b>′ is displayed to the user for comparison to the visual and textual data of the selected part <b>42</b>′, and the steps outlined above with respect to Blocks <b>206</b>-<b>212</b> (and <b>214</b>, if appropriate) are repeated.
0082If the user determines that none of the manually identified materials <b>32</b>′ matches the selected part <b>42</b>′, the tracker module <b>24</b> stores data in the SKU match data field <b>104</b> for the selected part <b>42</b>′ indicating that comparison of the manually identified materials <b>32</b>′ to the selected part <b>42</b>′ did not result in a match (Block <b>236</b>).
0083If a match has been confirmed by the user, or if no match has been found, the engine <b>14</b> repeats the matching process by selecting another part record <b>42</b> for which no SKU matching data <b>104</b> has been stored (at Block <b>202</b>), until all part records <b>42</b> have either been matched or have been confirmed as having no match to a corresponding materials record <b>32</b> through the various different comparison approaches.
0084The matching process <b>200</b> has been illustrated and described as performing numerous different types of matching analyses identified generally in Blocks <b>204</b>, <b>220</b>, <b>224</b>, <b>230</b> and <b>234</b>, which are generally directed at matching selected parts <b>42</b>′ to material records <b>32</b>. Alternatively, or in addition to such matching analyses <b>204</b>, <b>220</b>, <b>224</b>, <b>230</b>, <b>234</b>, the matching process <b>200</b> may also select material records <b>32</b> to attempt to match them to parts records <b>42</b>.
0085For example, as illustrated in <figref idref="DRAWINGS">FIG. 4C</figref>, the matching engine <b>14</b> may select an unsearched material record <b>32</b>* from the materials database <b>30</b> to attempt to match it to one or more parts records <b>42</b> (Block <b>402</b>). As will be understood, typically the tracker module <b>24</b> will store data correlated to whether all of the types of searches have been conducted for matching a particular material record <b>32</b>.
0086The engine <b>14</b> then identifies all parts records <b>42</b>* associated with the corresponding asset (Block <b>404</b>). To perform this task, the engine <b>14</b> may query the materials database <b>30</b> to identify all BOM records <b>34</b> (which may also include virtual BOM record data generated by the virtual BOM module <b>22</b> along the lines discussed above in connection with Block <b>220</b>) having SKU data <b>76</b> matching the SKU data <b>52</b> for the selected material <b>32</b>*. Each parts record <b>42</b> associated with the identified BOMs <b>34</b> (ie. for which the asset identifiers <b>74</b>, <b>92</b> match) is identified by the engine <b>14</b>.
0087Preferably using fuzzy logic, the comparator module <b>20</b> systematically compares the textual data <b>56</b>, <b>58</b>, <b>60</b> identifying and describing the selected material <b>32</b>*, to the corresponding textual data <b>94</b>, <b>100</b>, <b>102</b> for each of the identified parts <b>42</b>*. The comparator module <b>20</b> calculates a matching weight <b>150</b> for each identified part <b>42</b>* correlated to the likelihood that the selected material <b>32</b>* is the same as the identified part <b>42</b>*(Block <b>406</b>).
0088In a similar manner as for the matching analyses described previously in connection with <figref idref="DRAWINGS">FIGS. 4A & 4B</figref>, textual data <b>52</b>, <b>56</b>, <b>58</b>, <b>60</b> for the selected material <b>32</b>* will be displayed to the user on the display <b>16</b><sup>B</sup>, along with the corresponding materials image <b>36</b> (Block <b>408</b>). Textual data <b>94</b>, <b>100</b>, <b>102</b> for the highest-weighted potential parts matches <b>42</b>* will also be displayed to the user on the display <b>16</b><sup>B</sup>, along with any corresponding parts image <b>44</b>, and the calculated matching weight <b>150</b> (Block <b>410</b>) for comparison and input by the user (Block <b>412</b>). The tracker module <b>24</b> will also store data correlated to the data input by the user.
0089As will be understood, the screen display will look generally similar to the display <b>300</b> illustrated in <figref idref="DRAWINGS">FIG. 5</figref>, but will be provided with a selected material display portion (in place of the selected part display portion <b>302</b>), and a potential matching parts display portion (in place of the potential matching materials display portion <b>306</b>), and with similar corresponding changes.
0090In another type of matching analysis, the engine <b>14</b> may identify all parts records <b>42</b> associated with materials records <b>32</b> similar to the selected material record <b>32</b>*(Block <b>414</b>). To perform this task, the comparator module <b>20</b> may compare the selected materials record <b>32</b>* to each of the other materials records <b>32</b> and determine a matching weight. For each such matching materials record <b>32</b> above a pre-determined threshold (eg. 40%), the engine <b>14</b> then identifies all parts records <b>42</b>* associated with the asset <b>26</b> corresponding to the matching materials record <b>32</b> in a similar manner as described in relation to Block <b>404</b>.
0091In Blocks <b>416</b>-<b>422</b>, the visual and textual data corresponding to the highest-weighted potential matches of parts <b>42</b>* are displayed to the user for comparison to the visual and textual data for the selected material <b>32</b>*, with corresponding input by the user. The process <b>200</b> may be repeated until all materials <b>32</b> have been analysed for potential matches to parts records <b>42</b> (Block <b>424</b>).
0092While the matching process <b>200</b> has been illustrated and described as performing numerous different types of matching analyses identified generally in Blocks <b>204</b>, <b>220</b>, <b>224</b>, <b>230</b> and <b>234</b>, in a linear fashion, it should be understood that each of such analytical steps <b>204</b>, <b>220</b>, <b>224</b>, <b>230</b> and <b>234</b> may or may not be performed, or may be performed in a different order than described. Matching analyses other than those described herein may also be performed by the system <b>10</b>, without departing from the subject invention.
0093Furthermore, the matching process <b>200</b> has been illustrated and described as displaying data to the user (see eg. Blocks <b>208</b>-<b>212</b>) following completion of each of the different types of matching analyses identified generally in Blocks <b>204</b>, <b>220</b>, <b>224</b>, <b>230</b> and <b>234</b> and <b>404</b> and <b>414</b>. However, it should be understood that some or all of the different analysis <b>204</b>, <b>220</b>, <b>224</b>, <b>230</b>, <b>234</b> and <b>404</b> and <b>414</b> may be performed by the matching engine <b>14</b> substantially at one time, with the results for each type of analysis selectively presented on the display <b>16</b><sup>B </sup>for comparison and input from the user.
0094As noted, preferably, the system <b>10</b> will include a tracking system <b>24</b> designed to store tracking data to track the matching process steps completed by the user during the matching process <b>200</b>. As will be understood, some matching processes <b>200</b> may require substantial computational time and user time to generate and view the various possible matches. Accordingly, it is often not possible for a single user to complete all of the steps in a process <b>200</b> for even a single selected part <b>42</b>′ without interruption. It may be necessary for the user, or even for another individual, to resume the matching process <b>200</b> at a later date. The tracking data facilitates such a resumption of the process <b>200</b> analysis.
0095Additionally, in view of the substantial computational time involved in determining possible matches, some or all of the computations for the various matching analyses may be batch processed, with the results stored in temporary storage for access when the user commences or resumes the matching process <b>200</b>.
0096The system <b>10</b> and tracking system <b>24</b> are also preferably configured to facilitate and monitor multiple users using the system <b>10</b> at one time. As will be understood, such a configuration permits the division of the part database <b>40</b> into groups of parts <b>42</b> (or materials database <b>30</b> into groups of materials <b>32</b>) to enable multiple users to review potential matches simultaneously, and thereby complete the matching process <b>200</b> for all of the parts <b>42</b> (or materials <b>32</b>) more expeditiously.
0097As well, the tracking system <b>24</b> may also be designed to track and store potential match condition data <b>104</b> indicating that the user cannot determine if a match exists between a material <b>32</b> and a part <b>42</b>. Such tracking data allows for efficient allocation of expert's time: relatively inexperienced users may perform the bulk of the analysis, identifying routine matches (or non-matches), and identifying those potential matches that require a user having greater expertise to make a final determination.
0098Thus, while what is shown and described herein constitute preferred embodiments of the subject invention, it should be understood that various changes can be made without departing from the subject invention, the scope of which is defined in the appended claims.
Contents5
11 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US12072915B2 | Cited by | United States of America | Applicant |
| US8135240B2 | Cited by | United States of America | Search report |
| US12079240B2 | Cited by | United States of America | Applicant |
| US2009060393A1 | Cited by | United States of America | Pre-grant |
| US5216612A | Cites | United States of America | Pre-grant |
| US6763148B1 | Cites | United States of America | Pre-grant |
| US6832123B2 | Cites | United States of America | Pre-grant |
| US7127458B1 | Cites | United States of America | Pre-grant |
| USRE41476E | Cites | United States of America | Pre-grant |
2 members in 1 office
Priority claims6
| Document | Office | Kind | Date |
|---|---|---|---|
| 84027804 | United States of America | A | |
| 84027804 | United States of America | A | |
| 70886410 | United States of America | A | |
| 10840278 | – | – | – |
| US20040840278 | – | – | – |
| US20100708864 | – | – | – |
Members2
| Document | Office | Kind | |
|---|---|---|---|
| US2005251520A1 | United States of America | A1 | |
| US2010153382A1 | United States of America | A1 |
32 transactions on the USPTO file
Abandoned after 1 non-final rejection and 1 final rejection.
- Non-final rejections
- 1
- Final rejections
- 1
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Mail Abandonment for Failure to Respond to Office ActionAbandonedMABN2 | MABN2 | |
| Aband. for Failure to Respond to O. A.AbandonedABN2 | ABN2 | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Change in Power of Attorney (May Include Associate POA)PA.. | PA.. | |
| Correspondence Address ChangeC.AD | C.AD | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Application Is Now CompleteCOMP | COMP | |
| Email NotificationEML_NTR | EML_NTR | |
| Filing Receipt - UpdatedFLRCPT.U | FLRCPT.U | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Email NotificationEML_NTR | EML_NTR | |
| PG-Pub Issue NotificationPG-ISSUE | PG-ISSUE | |
| Additional Application Filing FeesADDFLFEE | ADDFLFEE | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTR | EML_NTR | |
| Email NotificationEML_NTF | EML_NTF | |
| Filing ReceiptFLRCPT.O | FLRCPT.O | |
| Notice Mailed--Application Incomplete--Filing Date AssignedINCD | INCD | |
| Cleared by L&R (LARS)L128 | L128 | |
| Referred to Level 2 (LARS) by OIPE CSRL198 | L198 | |
| Oath or Declaration Filed (Including Supplemental)C602 | C602 | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Initial Exam Team nnIEXX | IEXX |
1 legal event, as the office reported them to INPADOC
Events
| Event | Code | |
|---|---|---|
| Information on status: application discontinuationABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTIONSTCB | STCB |
Numbers
- Publication
- 20100153382
- Publication, DOCDB
- 2010153382
- Publication, EPODOC
- US2010153382
- Application
- 12708864
- Application, DOCDB
- 70886410
- Application, EPODOC
- US20100708864
Titles
- English
- SYSTEMS AND METHODS FOR THE MATCHING OF MATERIALS DATA TO PARTS DATA
Classification
- CPC, 1
- G06Q10/06
- IPC, 3
- G06F17 30
- G06F7 00
- G06Q10 00
- USPC, 4
- 707723000
- 707758000
- 707769000
- 707E17014