A method comprising: receiving, by one or more processors, information that identifies a set of features for a product design; executing, by the one or more processors, machine learning logic against the set of features to identify a set of components, wherein the set of components comprises components corresponding to each feature of the set of features; determining, by the one or more processors, characteristics associated with each component of the set of components, wherein the characteristics include one or more of the following: component name, component description, material attributes, creation date, dimensions, a number of materials included in the component, material group information, inventory data, cost data, one or more suppliers that supply the component, component group information, and weight information; identifying, by the one or more processors, one or more candidate components as alternatives to one or more components of set of components based on the characteristics, comprising, identifying duplicate components of the product design, comprising: determining whether a duplicate component is within an attribute variance for the product design, wherein the duplicate component is within the attribute variance if the duplicate component is made from one of a plurality of acceptable materials; when the duplicate component is within the attribute variance, determining whether the duplicate component has a lower cost than the one or more components of the set of components; determining, by the one or more processors, one or more modifications to optimize the set of components based on at least one design metric and the one or more candidate components, wherein the at least one design metric comprises an attribute variance metric and a cost metric; outputting, by the one or more processors, a final set of components for the product design based on the one or more modifications, wherein the final set of components includes at least one candidate component selected from the one or more candidate components, and wherein the at least one candidate component optimizes the final set of components as compared to the set of components with respect to the at least one design metric; and manufacturing a product according to the product design based on the final set of components. receiving, by one or more processors, information that identifies a set of features for a product design; executing, by the one or more processors, machine learning logic against the set of features to identify a set of components, wherein the set of components comprises components corresponding to each feature of the set of features; determining, by the one or more processors, characteristics associated with each component of the set of components, wherein the characteristics include one or more of the following: component name, component description, material attributes, creation date, dimensions, a number of materials included in the component, material group information, inventory data, cost data, one or more suppliers that supply the component, component group information, and weight information; identifying, by the one or more processors, one or more candidate components as alternatives to one or more components of set of components based on the characteristics, comprising, identifying duplicate components of the product design, comprising: determining whether a duplicate component is within an attribute variance for the product design, wherein the duplicate component is within the attribute variance if the duplicate component is made from one of a plurality of acceptable materials; when the duplicate component is within the attribute variance, determining whether the duplicate component has a lower cost than the one or more components of the set of components; determining whether a duplicate component is within an attribute variance for the product design, wherein the duplicate component is within the attribute variance if the duplicate component is made from one of a plurality of acceptable materials; when the duplicate component is within the attribute variance, determining whether the duplicate component has a lower cost than the one or more components of the set of components; determining, by the one or more processors, one or more modifications to optimize the set of components based on at least one design metric and the one or more candidate components, wherein the at least one design metric comprises an attribute variance metric and a cost metric; outputting, by the one or more processors, a final set of components for the product design based on the one or more modifications, wherein the final set of components includes at least one candidate component selected from the one or more candidate components, and wherein the at least one candidate component optimizes the final set of components as compared to the set of components with respect to the at least one design metric; and manufacturing a product according to the product design based on the final set of components.