Commercial producers of equipment, machines, and other products that require numerous parts often obtain their parts from a variety of different part suppliers. It is crucial to the survival of each producer's business that their suppliers be able to consistently provide the parts at an acceptable price. Because of this reliance, it comes as no surprise that information regarding the vulnerability and cost effectiveness of a parts supplier is extremely valuable. In the past, producers have depended upon their personal relationships with the parts suppliers and discussions with others in the industry to determine the level of vulnerability and cost effectiveness of a particular part supplier. While this word-of-mouth system may have been helpful in some limited circumstances, the world-wide nature of parts supply today makes such a system unworkable. Besides, such a system largely depends on the trust of other individuals who may have a motivation to bend the truth to their advantage. Thus, the system itself is inherently flawed. Accordingly, there exists a need for a system, method, and computer-readable program that allows producers to manage the cost and supply of parts.
a-d show process modeling diagrams according to at least one embodiment of the present disclosure;
e shows an assembly of
A cost management system and method using an automated features-based system and process for analyzing costs of direct, made-to-order parts is described herein. More particularly, the system employs proprietary algorithms to analyze features of target parts including their material, shape, as well as other characteristics and estimate what such parts should cost to produce. By comparing the “should costs” with vendors' prices for parts, the system automatically identifies cost savings opportunities. In at least one embodiment of the present disclosure, the system utilizes information in CAD files and other drawings to analyze key features and manufacturing characteristics of selected components and identifies cost relationships. The system can use these identified relationships to identify outliers, namely parts that appear to be unusually expensive compared with what the system predicts that they should cost. Such parts can be further analyzed by the user to determine if they are candidates for cost reduction. In at least one embodiment of the present disclosure, the system performs four primary calculations. First, based on part features, materials, manufacturing processes, and purchasing demand volumes, the system calculates a “should cost” price for each part and identifies outlier parts by comparing the “should cost” with the vendor's quoted price. For users of the system, parts sold to the user that are currently priced above the “should cost” may present a good opportunity for the user to reduce cost by finding a new supplier or asking the current supplier to reduce the price of the parts. Second, the system identifies key factors called “cost drivers,” which contribute to part costs. These key factors can be used by the engineering staff to minimize cost in the design process. Third, the system identifies similar parts called “nearest neighbors.” Last, the system analyzes the capabilities of the suppliers to identify their core capabilities and thereby determines which parts are most efficiently sourced by each respective supplier. The system uses a top-down approach that can analyze an enterprise-wide set of data on purchased direct materials, automatically identify “sweet spots” that have the most cost reduction potential, and provide direction on how to attain cost savings.
In at least one embodiment of the present disclosure, large amounts of data can be processed through the system to accurately pinpoint the specific opportunities that will give the most impact and efficiency in reducing costs. Such a system can serve as the next generation of cost management tools that work in conjunction with existing cost management methods to accurately identify specific parts that are candidates for cost reduction and to steer the process used to obtain cost savings. Such a system can also serve as a cost management tool for evaluating current and potential suppliers.
A cost management system and method using an automated feature-based system and process for analyzing costs of parts and suppliers thereof is described herein. The cost management system may include a computer readable medium for storing information in one or more fields and a microprocessor that is coupled to the computer readable medium. The microprocessor may be programmed with instructions for manipulating the information. The cost management system may also include a display screen that is coupled to the computer readable medium. The display screen may be configured to display the information to a user of the cost management system and to permit selection of the one or more fields by the user. The cost management system may further include one or more software processes stored on the computer readable medium where such processes may be executed on the microprocessor. One or more of these software processes may allow a user to provide information to the cost management system, wherein such information may include one or more of features characteristics information of the target part, financial information related to the target part and purchasing demand information related to the target part. Moreover, one or more additional software processes may analyze the features characteristics information, the financial information, and the purchasing demand information and to determine a should cost of the target part (“target part should cost”) and to compare the target part should cost to a supplier's price of the target part to determine cost saving opportunities. One or more software processes may analyze and compare current and prospective suppliers. One or more software processes may display graphs, charts, and the like to display part and supplier information. This detailed description is presented in terms of programs, data structures or procedures executed on a computer or network of computers. The software programs implemented by the system may be written in languages such as Java, HTML, Python, or the R statistical language. However, one of skill in the art will appreciate that other languages may be used instead, or in combination with the foregoing.
For purposes of illustration, the present disclosure relates to a system, method, and software product directed to cost management of highly engineered made-to-order parts. In one embodiment of the present disclosure, the system receives or obtains data from computer assisted drawings (CAD) files, engineering specifications files, demand data from Enterprise Resource Planning (ERP) systems, pricing data from financial systems, and/or other electronic files and utilizes data mining algorithms to analyze part features, usage patterns, and engineering specifications to construct “should cost” curves across entire categories of parts. Based on the should cost curves, the system determines the significant cost drivers that affect the cost of the one or more target parts. In at least one embodiment of the present disclosure, the system analyzes the data to compare current and prospective suppliers of parts.
As shown in
In one embodiment of the present disclosure, the data management layer 120 of the system consists of five parts. First, the system implements integration points that enable it to assimilate purchasing, financial, and part features information from the customer's internal systems. The system uses data loading rules 175 (from the integration points) as part of its data assimilation process. The data loading rules 175 may be needed because often each customer stores its parts purchasing and financial data using different formats. The data loading rules 175 aggregate data for various customers and thereby enable the system to employ a business intelligence “should cost” database 165 that is reusable across customers.
The part features extraction process involves two types of information. The first type includes engineering specifications 115 that describe physical characteristics of the part. By processing these files the system can extract a set of physical features that describe the part. Examples of these features include material, e.g., which metal, height, width, and depth of the part, physical volume, number of cores, and characteristics of the drill holes. The second type of information involves machining specifications such as tolerances, smoothness, drill holes, drill hole volume, and parting line perimeter. There is a set of engineering specifications associated with each part. As a component the feature extraction process, the system processes each specification and extracts relevant information for cost modeling.
Second, using the data loading rules 175, the system transforms, normalizes and validates parts data as it is stored in the database 165. In one embodiment of the present disclosure, the data loading rules 175 are written in the R statistical language as well as the SQL programming language.
Third, the system employs exception reports 160 that highlight unusual and suspect information. The reports, for example, identify unusually expensive parts or cheap parts, parts with missing weights, parts with no demand, suppliers, and many other characteristics of the data.
Fourth, the system analyzes 2D parts drawings and 3D engineering models of the parts and extracts features that are predictive of costs. In one embodiment of the present disclosure, cost predictive features variables include financial information, purchasing information, and feature information. As shown in TABLE 1, the features may involve part characteristics such as the volume of the part, which along with the density of the material, is used to calculate the part's weight, number of holes drilled into the part, type of drill used, number of cores, number of risers, surfaces, machine setups, and the like. One of ordinary skill in the art will appreciate that this table does not provide an exhaustive list, but is merely illustrative. The features characteristics are the primary drivers that enable the system's predictive models to achieve high accuracy.
The fifth part of the system's data management layer is the database 165. In one embodiment of the present disclosure, the system organizes parts data using snowflake schema data warehouse model with fact tables for parts and suppliers. An exemplary embodiment of the snowflake database schema is shown in
It should be appreciated that part of this disclosure relates to choices of variables which may be loaded and data loading rules 175 used to process the data. There are many possible features that can be extracted from CAD data and many possible purchasing and demand variables. One aspect of the disclosure is the selection of variables and modeling techniques that are predictive of cost.
At the architectural level, in at least one embodiment of the present disclosure, the system performs data management functions using a four-step process, as shown in
The second layer of the system's architecture is the analytics layer 125. The analytics layer 125 consists of a series of statistical routines that, in at least one embodiment of the present disclosure, are implemented using the R Statistical Language. Further, this analytics layer 125 may comprise two parts: an analytics module and an analytics architecture.
As part of its analytical layer 125, in at least one embodiment of the present disclosure, the system performs four primary calculations. First, based on part features, material, manufacturing processes, and purchasing demand volumes, the should cost 300 module of the analytics layer 120 calculates a “should cost” price for each part. For purposes of illustration, “should cost” refers to the amount of money a part should reasonably cost in a global or regional market. The system can identify outlier parts by comparing the “should cost” with the vendor's quoted price. Outliers refer to parts which seem to be unusually expensive (or inexpensive) compared with what the system predicts that they should cost. Second, the cost drivers 350 module of the analytic layer 125 identifies key factors called “cost drivers,” which contribute to part costs. These key factors can be used by the engineering staff to minimize costs in the design process. Third, the nearest neighbor 375 module identifies similar parts called “nearest neighbors.” Last, the sourcing analysis 325 module of the analytics layer 125 analyzes the capabilities of the suppliers to identify their core capabilities (type of parts they make, supplier quality, supplier delivery, supplier pricing, and the like) and thereby determines which parts are most efficiently sourced with each respective supplier.
Should Cost—Predicting What Each Part should Reasonably Cost
The should cost 300 module models the costs of parts by predicting the price/mass (e.g., dollar/kg) for each part using generalized linear models.
a. Linear Combination Algorithm—Predicting the Price/kg
This algorithm predicts the log of the cost per kilogram of a part using a linear combination of features and categories. log(costperkg) transform(dmd)+finwt.kg*material+boxvol+height+width+depth+risers*material+drillholeComp*material+surfarea*material+partingLinePerim*material+factor(hasCores)+nCores+factor(nCores)+coreVol+sqrt(coreVol)+sqrt(nCores)+factor(nCores)+heatTreat+sqrt(pressTestAir)+sqrt(pressTestOil)+sqrt(pressTestWater)+sqrt(pressTestFuel)+sqrt(drillholes)*material+nPorts+factor(rsf)+class.desc+nBearings+nSeal+NFasteners)+factor (material)
What should be appreciated is that the model described herein does not predict “should cost” directly. Instead, for each family of parts, the algorithm predicts the log of cost per kilogram as a linear function of the log of the annual demand for parts, physical features of the part, machining costs, and engineering specifications. The type of material, which the model includes as a variable, is also important. The predicted “should cost” price is then the exponential of the predicted log cost per kilogram of the part.
In at least one embodiment of the present disclosure, models like that described above are developed for all of the parts together and then again for each family of parts (e.g., Bonnets, Brackets, Covers, Housings, Elbows, and Supports). After the full model is fit, the system refines such models using R's step procedure. In at least one embodiment of the present disclosure, step applies the stepAlC algorithm. In at least one embodiment of the present disclosure, the algorithm refines the model, adds and removes variables, and iterates until it finds the best fit. One skilled in the art will appreciate that other refinement procedures may be used and that the above described embodiment is not exclusive but merely illustrative.
In at least one embodiment of the present disclosure, the cost driver 350 module identifies outliers by comparing the “should cost” with the vendor's quoted price. After outliers are eliminated, in a similar calculation to “should cost,” the cost drivers for a family of parts are predicted using a linear combination of features and categories.
The system models the cost per kilogram of each part as:
Cost per kg finwt.kg(alum,duct,brass,iron,gray,steel)+boxvol+height+width+depth+risers+drillholes+drillHoleComp+surfarea+partingLinePerim+nCores+coreVol+heatTreat+factor(pressTestAir)+factor(pressTestWater)+factor(pressTestfuel)+factor(pressTestOil)+nBearings+nSeals+nFasteners+nPorts,+portVol,+flatness+log(demand)
What should be appreciated is that this model does not predict “cost drivers” directly. Instead, for each family of parts it predicts the cost per kilogram as a linear function of the log of the annual demand for parts, physical features of the part, machining costs, and engineering specifications. The type of material, which the model includes as an interaction term, is also a factor. The predicted “cost driver” price is then the exponential of the predicted log cost per kilogram of the part. In at least one embodiment of the present disclosure, models of this form are developed for all of the parts together and then again for each family of parts (e.g., Bonnets, Brackets, Covers, Housings, Elbows, and Supports).
In at least one embodiment of the present disclosure, most predictive factors (cost drivers) and their relative effects are easy to interpret.
The relative effects of cost drivers for this example are shown in Table 2. The units in the table are incremental costs measured in cents per unit change in the cost driver. Thus, for example, on average a 10× increase in demand (log dmd) (1× in log scale) decreases the cost per kilogram of a part by $1.99.
It should be appreciated from linear regression theory that the parameters in Table 2 are the cost drivers that are displayed as part of the output from the statistical modeling process. These parameters estimate the incremental costs for each of the features included in the model. In at least one embodiment of the present disclosure, these features are validated by applying the data loading 175 rules. It is sometimes the case that randomness in the statistical models results in aberrant estimates. The data loading 175 rules flag suspect values and provide explanations such as insufficient data in the case of extreme randomness.
The second class of system algorithms involves searching feature space to identify similar parts or nearest neighbors. In at least one embodiment of the present disclosure, calculation of data structures subsequently applied to produce predictions and used in the nearest neighbor analysis is performed at data loading time or whenever new data is added to the system's database. The system uses predetermined variables as feature vectors and defines these vectors as a point in feature space:
Vi=V1V2 . . . Vn
where Vi is the value of feature i for the particular part under consideration. TABLE 3 shows a list of variables used in one embodiment of the nearest neighbor analysis. One of ordinary skill in the art would appreciate that the table is meant to be only illustrative and not exclusive. The system then normalizes each of the numeric features using the standard 5 normal transform and in at least one embodiment of the present disclosure calculates the Euclidean distance (d) between the points representing the different parts in feature space. One of skill in the art will appreciate that other distance metrics, besides the Euclidean, may be used.
d(Vpart1fVpart2)=IIVpart1−Vpart2II
where 11 II is the standard Euclidean distance function. When the user selects a target part, pre-selected feature variables of that part become reference points and the system then provides the distance between those target variables and all other parts. The nearest neighbor algorithm constrains the match so that certain attributes of the parts must match exactly, e.g., the parts must be made of the same material and be the same part type. Within this restricted class it enumerates all distances and returns the n candidates to the user interface.
One possible reason for an overpriced part maybe because it is sourced with a supplier who cannot produce it efficiently. For each part, the system rates each supplier on an Overall Sourcing Fit Rating 1400, as shown in
The sourcing fit analysis works by analyzing the parts that each supplier produces, as shown in
The score percentage displayed in the user interface is the Score(p)/number of features checked. For each part, the algorithm checks every possible supplier, sorts them in reverse order, and displays the best suppliers. Ties for suppliers that have the same percentage are broken by sorting on pdiff, the percentage difference between should cost and the actual price.
At the architectural level, in at least one embodiment of the present disclosure, the system performs system analysis, as shown in
Using all of the parts data in the system's populated database 165, in an off-line process, the system runs several statistical and data mining routines that fit models. The fitting process results in sets of models and coefficients that are used in subsequent analysis. In addition, the system pre-calculates data structures that are subsequently applied to produce predictions and used in the nearest neighbor 375 module.
As part of its off-line calculations, the system stores each part in the invention database for “cost reasonableness” and flags any unusual parts for further investigation. In at least one embodiment of the present disclosure, model fitting and scoring are performed at data loading time or whenever new data is added to the system's database 165. While the above description refers to the process being performed off-line, it should be noted that the process may be performed on-line, instead of off-line.
As shown in
First, the system calculates the “should cost” price in the should cost 300 module. Here, for each part, in at least one embodiment of the present disclosure, the system applies the model from step 3 to predict the cost of each part. The predicted “should cost” value is compared with the vendor's price to identify large percentage differences, which one embodiment stores in a variable called pdiff. Parts with large positive pdiffs, e.g., parts that are much more expensive than predicted, are candidates for cost savings. Parts that are significantly less expensive than predicted may put the supplier at financial risk as they are not charging enough for the part. The should cost 300 module is described at length above.
Next, the system calculates “Cost Drivers” from the cost drivers 350 module. Here, for each part family, in at least one embodiment of the present disclosure, the system uses the R statistical language to fit multi-variate linear regression with complex interaction terms that predicts should cost as a generalized linear function of the part's features. As with normal statistical theory, the coefficients in this model are the relative contributions of the particular features. The “cost driver” 350 module is described at length above.
Next, the system performs the “Nearest Neighbor” analysis in the nearest neighbor 375 module. Here, in at least one embodiment of the present disclosure, for each part the system normalizes each feature to a (−1,1) scale and calculates the Euclidean distance between every part in feature space. Using this distance the system identifies the nearest parts and labels them neighbors. The nearest neighbor 375 module is described at length above.
Next, the system performs a Sourcing Analysis in the sourcing analysis 325 module. In at least one embodiment of the present disclosure, this analysis involves analyzing every part in the dataset that each supplier produces and calculating the [0.5, 0.95] range of each feature. Then, in at least one embodiment of the present disclosure, for each part, the system scores each supplier on 16 possible features and give the supplier points each time the part's feature is in the [0.5, 0.95] range of the supplier's capability. In an alternate embodiment, the sourcing analysis 325 module may score each supplier for an alternate number of features and give the supplier points in a manner described above. The system also subtracts points in case of a low volume supplier, poor quality or poor delivery performance. The rating of a supplier for a part is its total score/number of features evaluated. The calculation is performed by material for each supplier. The sourcing analysis 325 module is described at length above.
The last step involves pushing out the analytical results to a database 165. The Akoya website then accesses the database 165 to provide information to Akoya users. Users access the system's analytical routines, through the system's presentation layer, which is described below. A top level view of the Akoya application architecture, in at least one embodiment of the present disclosure, can be seen in
The third layer of the system architecture is the business intelligence layer 130. The system's business intelligence layer 130 allows for the user to automatically group parts, suppliers, buyers, families, materials for analysis and provides a detailed analysis of cost saving opportunities.
A. Accessing the System
Users may access the system in several ways including: (i) selecting to analyze by supplier, (ii) selecting to analyze by buyer, (iii) analyzing a single part (iv) selecting to analyze by family. It should be noted that the system may be accessible through other ways such as by selecting a country, material, and/or other part features. One example of the logical flow of the business intelligence layer 130 is represented by
B. Supplier Management Application
One way for the user to access the system is to select the Supplier Management Application link in
In at least one embodiment of the present disclosure, as shown in
Another entry point to the system is to select the Family Management Application link. The system then displays the Global Family List (
Another entry point to the system is to select the Opportunity Management Application link. The system then displays the Global Opportunity by Buyer List (
In at least one embodiment of the present disclosure, as shown in
Another entry point to the system is to select the Part Lookup Application link. The system then displays the details for the selected part (
The following four examples describe a few of the ways the above applications can be used to solve industry problems.
A purchasing manager for Company A conducts an annual review of one of Company A's supplier (for this example, Supplier 1758) to determine whether any money can be saved in the relationship with Supplier 1758. The purchasing manager enters the system by selecting a category of parts, namely castings, from a list. The purchasing manager then selects Supplier 1758 from the list of suppliers that provide castings to Company A.
As shown in
A key supplier of parts to Company A (Barton Manufacturing) asks for a price increase on a group of parts. In order to determine how to handle this proposed price increase, a purchasing manager for Company A enters the system by selecting the supplier (Barton Manufacturing).
The VP of Purchasing at Company A asks all of Company A's purchasers to identify any at-risk suppliers. Purchaser AB (a purchaser for Company A) is responsible for all Brazilian casting suppliers for Company A. Purchaser AB enters the system by selecting the part category (castings).
A procurement manager for Company A asks Purchaser AB to identify suppliers of Company A that are overcharging for their parts. Purchaser AB enters the system by selecting a category of parts, namely castings, from a displayed list. As shown in
While the description above refers to particular embodiments of the present invention, it will be understood that many modifications may be made without departing from the spirit thereof. The accompanying concepts are intended to cover such modifications as would fall within the true scope and spirit of the present invention. The presently disclosed embodiments are therefore to be considered in all respects illustrative and not restrictive, the scope of the invention being indicated by the appended concepts, rather than the foregoing description, and all changes which come within the meaning and range of equivalency of the concepts are therefore intended to be embraced therein.
This application also claims the benefit of and incorporates by reference herein the disclosure of U.S. Ser. No. 61/693,619, filed Aug. 27, 2012.
Number | Date | Country | |
---|---|---|---|
61693619 | Aug 2012 | US |