Product carbon footprint as a service
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-22
- Publication Date
- 2026-08-11
Smart Images

Figure CN122549700A_ABST
Abstract
Description
Background Technology
[0001] Today, many companies are focused on sustainability and reducing greenhouse gas (GHG) or carbon emissions. Responding to calls from scientists, global regulatory bodies and companies have established net-zero targets for GHG and carbon emissions reduction. Meeting these targets requires companies to reduce the carbon footprint of their business activities, including their products and services. Attached Figure Description
[0002] This disclosure is described in detail with reference to the following figures, based on one or more various examples. These figures are provided for illustrative purposes only and describe only typical, non-limiting aspects of these examples.
[0003] Figure 1 The diagram illustrates computational components for implementing product carbon footprint as a service, based on some examples described in this article.
[0004] Figure 2 This is an illustrative process for determining a list of unit process carbon footprint models based on some examples described in this article.
[0005] Figure 3 This is an illustrative procedure for determining a list of unit procedures for an identifier, based on some examples described in this document.
[0006] Figure 4 This is an illustrative process for determining whether model dependencies are satisfied, based on some examples described in this article.
[0007] Figure 5 This is an illustrative process for aggregating the outputs from a unit process carbon footprint model, based on some examples described in this paper.
[0008] Figure 6 It is an example computational component that can be used to implement the various features discussed in this article.
[0009] Figure 7 It is a computing component that can be used to implement the techniques disclosed herein.
[0010] The accompanying drawings are not exhaustive and do not limit this disclosure to the precise form disclosed. Detailed Implementation
[0011] Companies can reduce the carbon footprint of their business activities (e.g., products, services, etc.) in various ways. However, before a company can reduce its carbon footprint, it should be able to accurately measure and report it. In determining its carbon footprint value, a company can make actionable changes to reduce the carbon footprint of future products, systems, services, and other business activities.
[0012] Companies have many ways to estimate their carbon footprint. The least accurate, but perhaps easiest to implement, method is based on product cost or economic input / output models of expenditures on the product. The most detailed (and perhaps most resource-intensive) approach is to perform a complete product lifecycle analysis, including raw data on emissions associated with the various unit processes used to produce the product. A "unit process" is a set of activities that physically or virtually create a product associated with a product identifier. For example, a product can be manufactured through production, transportation, use, or disposal / end-of-life. When a product is more complex and consists of several components or sub-components, components and sub-components can also be associated with unit processes. A product's "component" can include a complete part of the product, and a product's "sub-component" can include a complete part of a product's component. A product's component can be composed of sub-components.
[0013] Each unit process within a product, component, and sub-component unit process can be further subdivided. For example, a manufacturing unit process may include the set of materials used to construct the product, including the amount of aluminum or other materials contained in the product and the process of manufacturing that aluminum / material. A transport unit process for moving components within a warehouse or moving components to other warehouses for assembly (via machinery) of the final product may include a carbon footprint value. A use unit process may include a carbon footprint value for operating the final product for its intended or unintended purpose, and any effects that generate additional carbon footprint values. A disposal unit process may include a carbon footprint value for ending the use and disposal of the final product, and any effects that generate additional carbon footprint values.
[0014] Carbon footprint estimation can also be performed using intermediate methods. These methods can involve attribute modeling, where certain characteristics or attributes of a product are associated with specific unit processes and with the emissions associated with performing those processes used to create those product attributes. As an illustrative example, for hard disk drives (HDDs), drive capacity can be associated with determining the carbon footprint of the entire device. The manufacturing process can include the set of materials used in the manufacture of the device, including the amount of aluminum contained in the HDD and the process of manufacturing that aluminum. This process allows for the calculation of the impacts associated with the manufacturing process or transportation. Similar models are built for other materials and processes of HDDs, which can be aggregated to assess the carbon footprint of the device as a whole. The emissions associated with each process are related to product attributes (e.g., HDD capacity), making it possible to easily calculate the carbon footprint for other HDDs by knowing their capacity.
[0015] For companies with diverse portfolios of products and services spanning multiple suppliers, manufacturing processes, and distribution routes, different products, or even different components of a single product, may use different methods to calculate their carbon footprint, including any of the methods described above. These differences in carbon footprint calculations can be attributed to the different types of data available for each product. As companies become more accurate in measuring and reporting their carbon footprints, they should be able to determine accurate emissions data and models when calculating the carbon footprint of their products.
[0016] This system is configured to determine carbon footprint values for products and services. For example, the system can receive a list of product identifiers from a user for products and services requiring carbon footprint data. Product identifiers can be any means of uniquely identifying a product or service, or a component or subcomponent of a product, such as alphanumeric codes, part numbers, stock units (SKUs), or product names. Using product identifiers, the system can retrieve product category labels, assembly instructions, and other data associated with each product identifier from an entity data repository. Product category labels can identify the product type of the product or service. Assembly instructions can identify a component or subcomponent of the product. Other / secondary data associated with each product identifier can also be retrieved. This other / secondary data can be any relevant information about the product, such as name, description, weight, dimensions, price, manufacturing location, ingredients, country of origin, list of components or subcomponents, manufacturer, or supplier.
[0017] In response to receiving a product identifier for the entire product, the system can identify the product's components and sub-components. For example, for each product identifier, the system can determine a list of unit processes associated with that product identifier. Furthermore, for each unit process for each product identifier, the system can determine a list of unit process carbon footprint models.
[0018] As an illustrative example, a product category label could be "Hard Disk Drive," reflecting that the product is a hard disk drive. The product category "Hard Disk Drive" can be associated with various unit processes, including "Manufacturing," "Transportation," "Use," or "Disposal" (or, "End of Life"). For products in the "Hard Disk Drive" category, the "Manufacturing" unit process can have an associated model that calculates its carbon footprint based on, for example, data received directly from the supplier, the capacity of the hard disk drive, the price of the hard disk drive, industry averages, or other relevant data. In some examples, the list of models for each unit process for the identifier can be ordered. This order can correspond to the most accurate or otherwise most desirable model listed first, and the remaining models can be listed in descending order of accuracy or desirability (e.g., based on calculated accuracy or desirability scores). The system is capable of generating and providing a list of unit processes, each with an ordered list of unit process carbon footprint models.
[0019] In some examples, assembly instructions can be matched with an assembly data repository to create a second list of component and subcomponent identifiers for product identifiers associated with the assembly of a product. The associated data for the assembly identifiers can be retrieved from the entity data repository. Assembly identifiers and associated data can be added to a single data repository, allowing aggregation of several units for each component or subcomponent for multiple entries. The single data repository can be deduplicated / flattened to remove duplicate entries.
[0020] Using the retrieved list of unit process carbon footprint models for each unit process for each product identifier, the system can determine whether model dependencies are met. To name just a few examples, model dependencies may include the availability of certain associated data for the identifier (e.g., hard drive capacity, product weight, or size) or the availability of certain ancillary data (e.g., the grid emission factor for the country of operation). If a first model dependency is not met, the system can determine whether another model is available in the ordered list of unit process models. If another / second unit process carbon footprint calculation model is available, the system can (if possible) re-evaluate the model dependency and execute that model. This loop can be repeated sequentially until the dependency is met and a model for carbon footprint calculation is found, or until the ordered list of unit process models has been processed. If no suitable unit process model is found or no unit process model is successfully executed, the system can return an error.
[0021] Once the system identifies a model whose dependencies are satisfied, it can execute that model to determine / calculate the carbon footprint of the unit processes for the product identifier. If all unit process calculations for all identifiers execute successfully, the system can aggregate the calculated carbon footprint values to the desired level of detail and return the aggregated values to a user-accessible interface. If all unit processes fail to execute successfully, the system can return an error to the interface.
[0022] The desired level of aggregation can be provided. For example, carbon footprint values can be aggregated across all unit processes for each identifier, aggregated across all identifiers for each unit process, aggregated across all unit processes and identifiers to create a single product carbon footprint value, or any intermediate level or segmentation of aggregation that the user deems useful. For example, aggregated carbon footprint values (e.g., aggregations for products, components, sub-components, etc.) can be provided as separate values for several segmented unit processes (e.g., models determining carbon footprint values for manufacturing, transportation, use, or disposal / end-of-life). In another example, aggregated carbon footprint values can be provided as separate values for several segmented product lifecycle stages (e.g., manufacturing, transportation, use, or disposal / end-of-life) or component / sub-component lifecycle stages (e.g., manufacturing, transportation, use, or disposal / end-of-life). In yet another example, aggregated carbon footprint values can be provided as separate values for several segmented company footprint categories (e.g., groups within a company or business environment corresponding to CSG® or ISO® definitions).
[0023] In some examples, the aggregation of carbon footprint values can be restricted. This aggregation can be restricted to specific unit processes (e.g., only manufacturing unit processes are included in the aggregation), product lifecycles (e.g., only manufacturing, transportation, use, or disposal / end-of-life values are included in the aggregation), or company footprint categories (e.g., only communication groups defined by CSG® are included in the aggregation).
[0024] Technical improvements are implemented in the system disclosed herein. For example, traditional carbon footprint models can only calculate the carbon footprint value generated for the final components of a device. The described system can iteratively consider the entire device, its components and sub-components, and the carbon footprint value associated with the assembly process, resulting in accurate and iterative calculations for a distributed process. This detailed approach utilizing ordered models allows the system to simultaneously improve the underlying data while initiating carbon reduction attempts. Example use cases for the data include detailed and scalable carbon accounting, emissions prediction (including the impact of carbon reduction attempts), project emissions estimation for new hardware designs, code optimization based on minimizing implicit carbon, and tracking the impact of component-level decisions.
[0025] Figure 1The diagram illustrates computing components for implementing a product carbon footprint as a service, based on some examples described herein. Computing component 100 is illustrated. For example, computing component 100 could be a server computer, a controller, or any other similar computing component capable of processing data.
[0026] The computing component 100 can communicate with other devices in the network, including devices at remote geographical locations, some of which may be helping to create the final product associated with the product identifier and may be contributing the carbon footprint value of the corresponding product. The network can be a public or private network, such as the Internet, or other communication networks to allow connectivity between sites. The network may include third-party telecommunications lines, such as telephone lines, broadcast coaxial cables, fiber optic cables, satellite communications, cellular communications, etc., and may include any number of intermediate network devices, such as switches, routers, gateways, servers, and / or controllers.
[0027] The computing component 100 includes a hardware processor 102 and a machine-readable storage medium 104. The machine-readable storage medium may include various modules configured with machine-readable instructions that are executed by the processor 102, including a product identifier module 106, a unit process module 108, a component creation module 110, a carbon footprint model module 112, and an aggregation module 114.
[0028] Hardware processor 102 may be one or more central processing units (CPUs), graphics processing units (GPUs), semiconductor-based microprocessors, and / or other hardware devices adapted to retrieve and execute instructions stored in machine-readable storage medium 104. Hardware processor 102 may retrieve, decode, and execute instructions to control processes or operations associated with the various modules described herein. Alternatively to, or in addition to, retrieving and executing instructions, hardware processor 102 may include one or more electronic circuits comprising functional electronic components for executing one or more instructions, such as field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), or other electronic circuits.
[0029] Machine-readable storage medium 104 can be any electronic, magnetic, optical, or other physical storage device that contains or stores executable instructions. Therefore, for example, machine-readable storage medium 104 can be random access memory (RAM), non-volatile RAM (NVRAM), electrically erasable programmable read-only memory (EEPROM), storage devices, optical discs, etc. In some examples, machine-readable storage medium 104 can be a non-transitory storage medium, where the term "non-transitory" does not include transient propagation signals.
[0030] Product identifier module 106 is configured to receive or determine a set of product identifiers. Product identifiers can be received from user equipment (e.g., directly transmitted, via a website, or through a software application interface between computing component 100 and user equipment). Product identifiers can be associated with products and services with a requested carbon footprint. Product identifiers can also be received from a user operating the user equipment.
[0031] Product identifiers can be any means of uniquely identifying a product or service, or a component or subcomponent of a product, such as alphanumeric codes, part numbers, SKUs, or product names. In some examples, product identifiers are part numbers, model numbers, or keywords associated with a product used to trigger a specific unit process. Using product identifiers, product identifier module 106 can retrieve product category labels, assembly instructions, and other data associated with each product identifier from the entity data repository. Product category labels can identify the product type of a product or service. Assembly instructions can identify a component or subcomponent of a product.
[0032] In some examples, a subset of characters related to the product identifier can be removed. For instance, characters irrelevant to determining the aggregated carbon footprint value can be removed. This could include removing brand names or model numbers while retaining characters related to the group / type of the product, component, or subcomponent.
[0033] Products can be associated with sets of components and subcomponents that are combined (e.g., during manufacturing) to create the product. In some examples, the product identifier module 106 is configured to match assembly instructions with an assembly data repository to create a second list of component and subcomponent identifiers of the product identifier associated with the product assembly. Associated data for the assembly identifier can be retrieved from the entity data repository. The assembly identifier and its associated data can be added to a single data repository, allowing aggregation of several units for each component or subcomponent for multiple entries. The single data repository can be deduplicated / flattened to remove duplicate entries.
[0034] It is also possible to retrieve additional / secondary data associated with each product identifier. To name just a few examples, this additional / secondary data can be any relevant information about the product, such as name, description, weight, dimensions, price, manufacturing location, ingredients, country of origin, a list of components or sub-components, manufacturer, or supplier. In some examples, product identifiers and the quantity of each product identifier, as well as any operational parameters of the product, can be received. Operational parameters can define rules associated with the operation of the product (e.g., country, duration, data center efficiency value, etc.).
[0035] Product identifier module 106 is also configured to determine identifiers associated with the product or components and subcomponents of the product identifier. Upon receiving a product identifier, the components and subcomponents of the product can be automatically determined.
[0036] Unit process module 108 is configured to determine a list of unit processes associated with each product identifier. For example, for each product identifier, using the product identifier, unit process module 108 can determine a list of unit process carbon footprint models. The second set of unit processes can define activities for physically integrating, combining, or otherwise creating components and sub-components of the product associated with the product identifier. For example, a unit process for bolts, screws, rivets, or other / minor components used in a hard disk drive could involve manufacturing and activating machinery in the supply chain to create the component. The emission factor for manufacturing the component can correspond to a standardized measurement (e.g., 1.0 kg CO2e).
[0037] Unit process module 108 is also configured to generate an ordered list of unit process carbon footprint models for each unit process in the first and second unit process sets. In some examples, the model list is sorted such that the most accurate or most desirable model is listed first, and the remaining models are listed in descending order of accuracy or desirableness. Unit process module 108 can generate a list of unit processes as output, with each unit process having an ordered list of unit process carbon footprint models.
[0038] In some examples, when models for components or subcomponents are also included in an ordered list, the ordered list of unit process carbon footprint models can remove unit process models with higher carbon footprint values from the hierarchy. This can help avoid multiple aggregations of carbon footprint values for the same subcomponent. For example, in aggregated carbon footprint values, unit process models can be identified for the product (e.g., as the first carbon footprint value) and components of the product (e.g., as the second or "other" carbon footprint values). As an illustrative example, the product is a lamp with components including a base, a lampshade, and a bulb. For the aggregated carbon footprint values, either a unit process carbon footprint model for the product or a unit process carbon footprint model for the product's components can be used.
[0039] The determination of the process carbon footprint model can occur at the individual unit process level. In other words, the unit process model for manufacturing can be associated with components, while the unit process model for transportation can be associated with products and components. Each unit process model can be determined at the lowest level where products, components, and sub-components are available.
[0040] Unit process module 108 (e.g., having component creation module 110) is configured to determine a unit process carbon footprint model. A unit process can define the activities that physically create a product associated with a product identifier. For example, a product's lifecycle can include the "manufacturing," "transportation," "use," or "end of life" of the product's components and sub-components. In another example, the lifecycle can include the "manufacturing," "transportation," "use," or "disposal" of a component. The manufacturing process can include the set of materials used to manufacture the product, including the amount of aluminum or other materials contained in the product and the processes for manufacturing the aluminum / materials. Transportation used to move components within a warehouse or to other warehouses for assembly (via machinery) of the final product can include a carbon footprint value.
[0041] Similar models can be constructed for other materials and unit processes of hard disk drives, which can be aggregated to assess the carbon footprint of the device as a whole. Emissions associated with each process can be correlated with product attributes (e.g., hard disk drive capacity), so that for other hard disk drives, the carbon footprint can be calculated by knowing the capacity of the hard disk drive or other products.
[0042] In some examples, unit process carbon footprint models can include data on emissions associated with the various unit processes used to create a product. Some examples of unit process carbon footprint models include attribute modeling, where certain characteristics or attributes of a product are associated with specific unit processes and the emissions associated with performing those processes to create the product attributes.
[0043] Component creation module 110 is configured to initiate a process of physically integrating, combining, or otherwise creating a product associated with a product identifier. This creation process may also include product components and sub-components. For example, the process may define a set of materials used to identify the product and physically combine that set of materials to create manufacturing rules for the product. Component creation module 110 can interact with unit process module 108 and can track carbon footprint values through each manufacturing step associated with the component creation process.
[0044] The creation process can be initiated through the conceptualization, prototyping, and design review of physical products, components, and sub-components. In some examples, the rules for creating a product may include production planning and scheduling to move materials to a location with manufacturing capabilities for creating the product, component, and sub-components. The creation process also includes assembling the product, component, and sub-components from the materials set. In some examples, the component creation module 110 is also configured to implement rules for physically storing, labeling, shipping, distributing, and other steps for manufacturing, transporting, using, and disposing of the product.
[0045] The component creation module 110 is also configured to receive information from a third party / entity configured to physically integrate, combine, or otherwise create products, components, and sub-components. The creation process can be executed externally to the computing component 100, and information / products can be transferred from external systems to the component creation module 110.
[0046] Carbon footprint modeling module 112 is configured to determine whether model dependencies are met. Model dependencies may involve data or processes required to perform calculations, which may need to be completed before subsequent processes can begin execution (e.g., process dependencies). Carbon footprint modeling module 112 can use a retrieved list of unit process carbon footprint models for each unit process for each product identifier to determine whether model dependencies are met.
[0047] Model dependencies may include determining the availability of certain data or associated data for an identifier (e.g., hard drive capacity, product weight, or size) or the availability of certain auxiliary data for the identifier (e.g., the power grid emission factor for the country of operation). If a first model dependency is not satisfied, the carbon footprint modeling module 112 may determine whether another model in the ordered list of unit process models is available. If another unit process carbon footprint calculation model is available, the carbon footprint modeling module 112 may re-evaluate the model dependency and execute the model (if possible). This loop may repeat until a model whose dependency is satisfied and whose carbon footprint is calculated is found, or until the ordered list of unit process models has been processed. If no suitable unit process model is found or no unit process model is successfully executed, the carbon footprint modeling module 112 may return an error (e.g., to the user equipment interface or to another component of the system).
[0048] Once the carbon footprint modeling module 112 identifies a model whose dependencies are satisfied, it can execute the model to determine the carbon footprint of the unit process for the product identifier. Each unit process carbon footprint model in the unit process carbon footprint model can generate a carbon footprint value as output.
[0049] Aggregation module 114 is configured to aggregate the outputs from each unit process carbon footprint model in the unit process carbon footprint model with other / secondary carbon footprint values associated with the product identifier. In some examples, the desired level of aggregation may be aggregation across all unit processes for each identifier, aggregation across all identifiers for each unit process, aggregation across all unit processes and identifiers to create a single product carbon footprint value, or any intermediate level or segmentation of aggregation.
[0050] As an illustrative example, if all unit process calculations for all identifiers execute successfully, the aggregation module 114 aggregates the calculated carbon footprints to the desired level of detail and returns the results to a user-accessible interface. If all unit processes fail to execute successfully, the aggregation module 114 may return an error (e.g., to the user device interface or to another component of the system). In some examples, (e.g., to the user device interface or to another component of the system) the aggregated carbon footprint values for the corresponding products associated with the product identifier are provided.
[0051] Aggregation module 114 can aggregate carbon footprint values corresponding to products associated with all components and sub-components, each product being linked to a product identifier. In some examples, carbon footprint values can be segmented. In this example, the segmentation process identifies the carbon footprint value for each unit process of the component and sub-component. The carbon footprint values from the segmentation process can be aggregated into a total carbon footprint for each type of unit process.
[0052] For example, if product P consists of components A, B, and C, where the production of each of components A, B, and C involves unit processes of manufacturing and transportation, then the total carbon footprint of P is calculated as A_manufacturing + B_manufacturing + C_manufacturing + A_transportation + B_transportation + C_transportation. Various values can be broken down and provided to users. For example, manufacturing activities A_manufacturing + B_manufacturing + C_manufacturing can be determined, aggregated, and provided as a first total carbon footprint value related to manufacturing, and transportation activities A_transportation + B_transportation + C_transportation can be determined, aggregated, and provided as a second total carbon footprint value related to transportation.
[0053] In some examples, carbon footprint values are stored after they have been transmitted to the user (e.g., via user device, website, software application, etc.). The transmission of carbon footprint values can initiate an audit process on the generated carbon footprint values (e.g., comparing carbon footprint values across similar products or components to estimate similarity between similar types of products / components). Taking into account differences, the audit process can generate alerts to rerun the aggregation or calculation process. In some cases, carbon footprint values are dynamically generated, transmitted to the user, and can then be deleted from the system (e.g., to restore the availability of storage used for other data).
[0054] Figure 2 This is an illustrative process for determining a list of unit process carbon footprint models based on some examples described herein. In Example 200, the computational components or systems described herein (including...) can be used. Figure 1 The computational component 100 in the system determines a list of unit process carbon footprint models.
[0055] In box 210, the unit procedures associated with an identifier can be retrieved. For example, a procedure can access the product category label of a product identifier to retrieve a list of unit procedures associated with products in that product category. The list of unit procedures can be accessed from a collection of category unit procedures (box 220) or from another data repository.
[0056] In box 230, the process can look up unit processes and associated unit process carbon footprint models. In some examples, the lookup can be performed using identifier category or type determination. For example, the product category label could be "Hard Disk Drive" reflecting that the product is a hard disk drive. The product category "Hard Disk Drive" can have associated unit processes for "Manufacturing," "Shipping," "Use," or "End of Life." For products in the "Hard Disk Drive" category, the "Manufacturing" unit process can have an associated model that calculates the carbon footprint based on data received directly from the supplier, the capacity of the hard disk drive, the price of the hard disk drive, industry averages, or other relevant data.
[0057] In box 240, the process can output a list of unit processes. Each unit process in the list of unit processes can individually include an ordered list of carbon footprint models. For example, the ordered list can be sorted by the accuracy score of the models. As an illustrative sort, the most accurate or otherwise most desirable model can be listed first, and the remaining models can be listed in descending order of accuracy or desirableness. The list of unit processes can be provided as output, with each unit process containing an ordered list of unit process carbon footprint models.
[0058] Figure 3 This is an illustrative process for determining a list of unit procedures for an identifier, based on some examples described herein. In Example 300, during the iteration process, for an identifier, a list of unit procedures can be determined using the computational components or systems described herein, including... Figure 1 The calculation component 100 in the middle. In some examples, part of the process is repeated for each identifier.
[0059] In box 305, the process may receive a list of identifiers. For example, the user equipment may provide an identifier that identifies its carbon footprint as requested. The identifier may be any means that uniquely identifies a product or service, or a component or subcomponent of a product, such as an alphanumeric code, part number, SKU, or product name.
[0060] In box 310, the entity data set is stored in a data repository. For example, the data repository may include data associated with each identifier in a list of identifiers entered by the user. The data associated with the identifiers can be any relevant information about the product, such as name, description, weight, size, price, manufacturing location, ingredients, country of origin, a list of components or sub-components, manufacturer, supplier, product category label, or other entity information associated with the product. For example, a product category label could identify the product type related to carbon footprint calculation, and an assembly instruction could identify the product composed of components or sub-components related to carbon footprint calculation.
[0061] In some examples, a product can be an "assembly" when the assembly indication associated with the product identifier is true, valid, or other flags in the dataset (e.g., as a binary value). Activation of the assembly identifier can identify a component or subcomponent defined as being included / assembled in the product being assembled.
[0062] In box 315, the process can determine the identifiers associated with the data. For example, an assembly instruction can be used with an assembly set (box 325) to create a list of all component and subcomponent identifiers that make up the product identifier.
[0063] In box 320, the process can determine whether the product is an assembly (e.g., an assembly composed of sub-components, or a product composed of components and sub-components). This may include determining that an assembly indication (e.g., a flag) in the dataset is true / valid. If yes, the process can proceed to 330. If not, the process can proceed to 350.
[0064] In box 330, the process can retrieve the identifier that is part of the assembly. For example, it can retrieve the associated data of the assembly identifier from entity data (box 335) or from another data repository (box 340).
[0065] In box 345, you can add assembly, identifiers, and associated data to the output. For example, once the data has been collected, it can be provided to an interface or other processes for further analysis.
[0066] In box 350, identifiers and associated data can be added to the output. For example, once the data has been collected, it can be provided to an interface or other processes for further analysis.
[0067] In box 355, the process can combine duplicate identifiers in the output and update the number in the output. This can be performed during deduplication or flattening, which appropriately removes duplicate entries and updates the number of identifiers.
[0068] In box 360, the process can output a list of identifiers and associated data.
[0069] Figure 4 This is an illustrative process for determining whether model dependencies are satisfied, based on some examples described herein. In Example 400, the determination of whether model dependencies are satisfied is performed using the computational components or systems described herein, including... Figure 1 The computing component 100.
[0070] In box 405, the process can initiate the determination of unit processes associated with a product. As discussed herein, the process can identify unit processes that define the activities of manufacturing, transporting, using, and disposing of a product associated with a product identifier. Commands (e.g., via a service model or API) can be received and executed to create a list of unit processes. For example, commands can execute a set of instructions to access a data repository and determine a list of unit processes that match the product identifier of a product, component, or subcomponent.
[0071] In box 410, a list of unit procedures can be output. In some examples, each unit procedure in the list of unit procedures may include an ordered list of carbon footprint models. Each unit procedure may correspond to a list of carbon footprint models. The list of carbon footprint models may be accessed in response to executing a unit procedure command.
[0072] In some examples, a list of carbon footprint models is received as output from a previous command execution (e.g., in determining a list of unit processes). The list of carbon footprint models for a unit process can be provided as input for the subsequent determination of a list of carbon footprint models for subsequent unit processes.
[0073] In box 415, the process can select the first unit process model in the list. For example, given an identifier and a unit process, the first carbon footprint calculation model can be the first model on the order of numbers in the unit process models. If the model dependency (box 430) is satisfied, the process can execute the first model (box 440), possibly using the data associated with the identifier or other auxiliary data sets (received from box 435), and can use the carbon footprint value generated from the first model.
[0074] In box 420, the process can select a second unit process model from the list. For example, given an identifier and a unit process, a second carbon footprint calculation model can be placed after the first model in an ordered list, and numerically second in the list. If the model dependency (box 430) is satisfied, the process can execute the second model (box 440), possibly using data associated with the identifier or other auxiliary data sets (received from box 435), and can use the carbon footprint values generated from the second model.
[0075] In box 425, the process can determine if there is an available additional model in the list. If yes, the process can proceed to box 420. If not, the process can proceed to box 460. If no suitable unit process model is found or no unit process model is successfully executed, the process can return an error (box 460).
[0076] When an error is returned, the process can indicate that a function of the system has not been successfully executed. The error can be returned / output as an error message to the user device or to another component of the system. In some examples, the error can activate a subsequent process. The subsequent process can remove unit process calculations (e.g., removing subcomponent calculations from overall product calculations) or supplement the missing / erroneous process using a similar process (e.g., a comparison between the product identifier and the relevant unit process).
[0077] In box 430, the process can determine whether model dependencies are met. Model dependencies may include the availability of certain associated data for the identifier (e.g., hard drive capacity, product weight, or size), the availability of certain ancillary data (e.g., the emission factor of the power grid in the country of operation), or other data required to perform the calculations. If yes, the process can proceed to box 440. If no, the process can proceed to box 425.
[0078] If the first model dependency is not satisfied (box 430), the process can determine if another model is available in the ordered list of unit process models (box 425). If another unit process carbon footprint calculation model is available, the process can re-evaluate the model dependency and execute that model if possible. This loop can be repeated until a model whose dependency is satisfied is found, leading to the execution of the model and the calculation of the carbon footprint. Otherwise, the process can terminate when the ordered list of unit process models has been processed.
[0079] In box 445, the process can determine whether the model has been successfully executed (box 440). If yes, the process can proceed to box 450. If no, the process can proceed to box 455, where the error is provided as output (as illustrated in box 460).
[0080] In box 450, the process can provide the carbon footprint of a unit process as output. For example, when the model is successfully executed and the carbon footprint is determined, the process can return the carbon footprint of the unit process for a specific product identifier.
[0081] Figure 5This is an illustrative process for aggregating outputs from a unit process carbon footprint model, based on some examples described herein. In Example 500, the computational components or systems described herein (including...) are used. Figure 1 The computational component 100 in the model aggregates / provides the output from the unit process carbon footprint model.
[0082] In box 505, the procedure can provide a list of identifiers and associated data as output. The data can be from... Figure 3 The output of the process illustrated is received.
[0083] In box 510, a procedure can retrieve the unit procedures associated with the identifier(s). For example, for each identifier in the list, the procedure first retrieves the list of unit procedures associated with the identifier, as well as the unit procedure model.
[0084] In box 515, unit procedure calculations can be performed. For example, the unit procedure calculation is performed for each unit procedure in this list. The process can be repeated iteratively for each identifier and for each unit procedure associated with that identifier.
[0085] In box 520, the procedure can determine whether all unit procedure computations for all identifiers have been successfully executed. If yes, the procedure can proceed to box 525. If no, the procedure can proceed to box 535.
[0086] In box 525, carbon footprint values can be aggregated across identifiers by unit process. For example, if all unit process calculations for all identifiers are successfully executed, the process aggregates the calculated carbon footprints to the desired level of detail and returns the results (e.g., as defined in the user profile or from input from the user's device). The desired level of aggregation can be aggregation across all unit processes for each identifier, aggregation across all identifiers for each unit process, aggregation across all unit processes and identifiers to create a single product carbon footprint value, or any intermediate level of aggregation that the user deems useful.
[0087] In box 530, the product carbon footprint can be provided as output. The output may include aggregated carbon footprint values associated with the carbon footprint model of each unit process in the ordered list.
[0088] In box 535, the procedure may provide an error as output. For example, if all unit procedures fail to execute successfully, the procedure may return an error. When returning an error, the procedure may indicate that the functionality of the system has not been successfully executed. The error may be returned / output as an error message to the user device interface or another component of the system.
[0089] In some examples, an error can activate subsequent processes. These subsequent processes can either remove unit process calculations (e.g., remove subcomponent calculations from overall product calculations) or supplement the missing / erroneous process using similar processes (e.g., comparisons between product identifiers and related unit processes).
[0090] It should be noted that the terms "optimized," "best," etc., as used herein can be used to mean achieving or making the most efficient or perfect performance possible. However, as those skilled in the art who read this document will recognize, perfection cannot always be achieved. Therefore, these terms can also include achieving or making the best possible, efficient, or practical performance in a given environment, or achieving or making the performance better than that achievable with other settings or parameters.
[0091] Figure 6 The illustrations depict various examples of computing components that can be used to implement product carbon footprint as a service, according to the technology of this disclosure. For example, computing component 600 can be, for instance, a server computer, a controller, or any other similar computing component capable of processing data. Figure 6 In the example implementation, computing component 600 includes hardware processor 602 and machine-readable storage medium 604.
[0092] Hardware processor 602 may be one or more central processing units (CPUs), graphics processing units (GPUs), semiconductor-based microprocessors, and / or other hardware devices suitable for retrieving and executing instructions stored in machine-readable storage medium 604. Hardware processor 602 may retrieve, decode, and execute instructions such as instructions 606-618 to control processes or operations related to product carbon footprint-as-a-service. Alternatively to, or in addition to, retrieving and executing instructions, hardware processor 602 may include one or more electronic circuits comprising electronic components for the function of executing one or more instructions, such as field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), or other electronic circuits.
[0093] Machine-readable storage medium 604, such as 604, can be any electronic, magnetic, optical, or other physical storage device that includes or stores executable instructions. Therefore, 604 can be, for example, random access memory (RAM), non-volatile RAM (NVRAM), electrically erasable programmable read-only memory (EEPROM), storage devices, optical discs, etc. In some examples, 604 can be a non-transitory storage medium, where the term "non-transitory" excludes transient propagation signals. As described in detail below, 604 can be encoded with executable instructions, such as instructions 606-618.
[0094] The hardware processor 602 can execute instructions 606 to receive a set of product identifiers corresponding to the unit procedure set. A product identifier is any means that can uniquely identify a product or service.
[0095] Hardware processor 602 can execute instructions 608 to determine components and subcomponents of a product identifier. For example, using a product identifier, the system can identify a component or subcomponent of a product. The system can also identify product category labels, assembly instructions, and other data associated with each product identifier from an entity data repository, where the product category label can identify the product type of the product or service. In some examples, an assembly instruction can identify a component or subcomponent of a product.
[0096] The hardware processor 602 can execute instructions 610 to generate an ordered list of unit process carbon footprint models. An ordered list is generated for each unit process. For example, a unit process for a product identifier can be associated with a set of activities to physically create a product associated with the product identifier.
[0097] The order in the sorted list can correspond to the most accurate or most desirable model listed first, and the remaining models can be listed in descending order of accuracy or desirableness (e.g., based on calculated accuracy or desirableness scores). In some examples, the accuracy score is calculated based on the lowest level of the product's components (e.g., materials used to generate sub-components, transportation of materials from one location to another, etc.). This value can be more accurate when calculating unit processes for the lowest level / component / sub-component of the product than values calculated without using the lowest level / component / sub-component of the product.
[0098] The hardware processor 602 can execute instructions 612 to determine whether model dependencies are satisfied for a unit process carbon footprint model from an ordered list. For example, model dependencies may include the availability of certain associated data for an identifier (e.g., hard drive capacity, product weight, or size) or the availability of certain ancillary data (e.g., the power grid emission factor of the country of operation).
[0099] In some examples, if the dependency of the first model is not satisfied, the system can determine whether another model in the ordered list of unit process models is available. If another unit process carbon footprint calculation model is available, the system can re-evaluate the model dependency and execute the model (if possible). This loop can be repeated iteratively until a model whose dependency is satisfied and whose carbon footprint is calculated is found, or until the ordered list of unit process models has been processed.
[0100] Hardware processor 602 can execute instructions 614 to perform a unit process carbon footprint model based on an ordered list to generate a carbon footprint value. For example, once the system identifies a model whose dependencies are satisfied, the system can execute the model to determine / calculate the carbon footprint of the unit process for the product identifier.
[0101] The hardware processor 602 can execute instructions 616 to aggregate the output from the unit process carbon footprint model with other / minor carbon footprint values related to the product identifier. The desired level of aggregation can be aggregation across all unit processes for each identifier, aggregation across all identifiers for each unit process, aggregation across all unit processes and identifiers to create a single product carbon footprint value, or any intermediate level or segmentation of aggregation that the user deems useful.
[0102] Hardware processor 602 can execute instructions 618 to provide aggregated carbon footprint values associated with a product identifier. For example, the system can aggregate the calculated carbon footprint to a desired level of detail and return the result to a user-accessible interface. Aggregated carbon footprint values for the corresponding product associated with the product identifier can be provided (e.g., to the user device interface or another component of the system). If all unit procedures fail to execute successfully, the system can return an error (e.g., a return to the user device interface or a return to another component of the system).
[0103] Figure 7 A block diagram of an example computer system 700 is depicted, illustrating various examples in which the techniques disclosed herein may be implemented. The computer system 700 includes a bus 702 or other communication mechanism for transmitting information, and one or more hardware processors 704 coupled to the bus 702 for processing information. For example, the hardware processors 704 may be one or more general-purpose microprocessors.
[0104] Computer system 700 also includes main memory 706, such as random access memory (RAM), cache, and / or other dynamic storage devices, coupled to bus 702, for storing information and instructions to be executed by processor 704. Main memory 706 can also be used to store temporary variables or other intermediate information during the execution of instructions to be executed by processor 704. Such instructions, when stored in storage media accessible to processor 704, enable computer system 700 to become a special-purpose machine customized to perform the operations specified in the instructions.
[0105] The computer system 700 also includes a read-only memory (ROM) 708 or other static storage devices coupled to the bus 702 for storing static information and instructions of the processor 704. Storage devices 710, such as disks, optical discs, or USB thumb drives (flash drives), are provided and coupled to the bus 702 for storing information and instructions.
[0106] The computer system 700 can be coupled to a display 712, such as a liquid crystal display (LCD) (or a touch screen), via a bus 702 for displaying information to a computer user. This information may, for example, include carbon footprint values.
[0107] Computer system 700 may include a user interface module to implement a GUI for provision to display 712. The user interface module may be stored in a mass storage device as executable software code to be executed by (or more) computing devices. For example, it and other modules may include components such as software components, object-oriented software components, class components, and task components; processes; functions; properties; procedures; subroutines; program code segments; drivers; firmware; microcode; circuits; data; databases; data structures; tables; arrays; and variables.
[0108] Generally, the terms "component," "engine," "system," "database," and "data repository" used in this document can refer to logic included in hardware or firmware, or to a collection of software instructions that may have entry and exit points, written in a programming language (e.g., Java, C, or C++). Software components can be compiled and linked into an executable program installed in a dynamic link library, or can be written in an interpreted programming language such as BASIC, Perl, or Python. It should be understood that software components can be invoked from other components or from themselves, and / or can be invoked in response to detected events or interrupts. Software components configured to execute on a computing device can be provided on computer-readable media, such as optical discs, digital video discs, flash drives, magnetic disks, or any other tangible media, or as digital downloads (and can initially be stored in a compressed or installable format that requires installation, decompression, or decryption before execution). This software code can be stored, in part or in whole, on a memory device executing the computing device for execution by the computing device. Software instructions can be embedded in firmware, such as EPROM. It should also be understood that hardware components may include connected logic units, such as gates and flip-flops, and / or may include programmable units, such as programmable gate arrays or processors.
[0109] Computer system 700 may implement the techniques described herein using custom hard-wired logic, one or more ASICs or FPGAs, firmware, and / or program logic. The custom hard-wired logic, one or more ASICs or FPGAs, firmware, and / or program logic, combined with the computer system, enable computer system 700 to be a dedicated machine or to be programmed. According to one example of the techniques disclosed herein, the techniques are executed by computer system 700 in response to processor(s) 704 executing one or more sequences of one or more instructions contained in main memory 706. These instructions may be read into main memory 706 from another storage medium, such as storage device 710. Execution of the instruction sequence included in main memory 706 causes processor(s) 704 to perform the processing steps described herein. In alternative examples, hard-wired circuitry may be used to replace or in combination with software instructions.
[0110] As used herein, the term "non-transitory media" and similar terms refer to any medium that stores data and / or instructions that enable a machine to operate in a particular manner. Such non-transitory media can include non-volatile media and / or volatile media. Non-volatile media include, for example, optical discs or magnetic disks, such as storage device 710. Volatile media include dynamic memory, such as main memory 706. Common forms of non-transitory media include, for example, floppy disks, flexible disks, hard disks, solid-state drives, magnetic tape or any other magnetic data storage media, CD-ROMs, any other optical data storage media, any physical media with a perforated pattern, RAM, PROMs and EPROMs, FLASH-EPROMs, NVRAMs, any other memory chips or cartridges, and their networked versions.
[0111] Non-transient media differ from transmission media, but can be used in conjunction with transmission media. Transmission media participate in the transmission of information between non-transient media. For example, transmission media include coaxial cables, copper wires, and optical fibers, including the conductors of bus 702. Transmission media can also take the form of sound waves or light waves, such as those generated during radio wave and infrared data communication.
[0112] Computer system 700 also includes an interface 718 coupled to bus 702. Interface 718 provides bidirectional data communication coupled to one or more network links connected to one or more local networks. For example, interface 718 may be an Integrated Services Digital Network (ISDN) card, a cable modem, a satellite modem, or a modem to provide data communication connectivity to a corresponding type of telephone line. As another example, interface 718 may be a Local Area Network (LAN) card to provide data communication connectivity to a LAN-compatible (or, WAN) component for communication with a WAN) network. Wireless links may also be implemented. In any such implementation, interface 718 transmits and receives electrical, electromagnetic, or optical signals carrying digital data streams representing various types of information.
[0113] Network links typically provide data communication to other data devices via one or more networks. For example, a network link can provide a connection to a host computer or to a data device operated by an Internet Service Provider (ISP) via a local network. ISPs, in turn, provide data communication services through a global packet data communication network now commonly referred to as the "Internet." Both local networks and the Internet use electrical, electromagnetic, or optical signals that carry digital data streams. Signals through various networks and network links, as well as signals through interface 718, are example forms of transmission media carrying digital data to and from computer system 700.
[0114] Computer system 700 can send messages and receive data, including program code, through networks (multiple) network links and interface 718. In the Internet example, the server can send the application's requested code through the Internet, ISP, local network, and interface 718.
[0115] The received code may be executed by processor 704 when it is received, and / or stored in storage device 710 or other non-volatile storage device for later execution.
[0116] Each of the processes, methods, and algorithms described in the preceding sections can be implemented in code components executed by one or more computer systems or computer processors including computer hardware, and can be implemented automatically, wholly or partially, by the code components. One or more computer systems or computer processors can also operate to support the execution of related operations in a “cloud computing” environment or as “Software as a Service” (SaaS). Processes and algorithms can be implemented, wholly or partially, in dedicated circuitry. The various features and processes described above can be used independently of each other or can be combined in various ways. Different combinations and sub-combinations are intended to fall within the scope of this disclosure, and certain method or process boxes may be omitted in some implementations. The methods and processes described herein are not limited to any particular order, and the boxes or states associated with them can be executed in other suitable orders, or in parallel, or in some other manner. Boxes or states can be added to or removed from the disclosed examples. The performance of certain operations or processes can be distributed among computer systems or computer processors, residing not only within a single machine but also deployed across multiple machines.
[0117] As used herein, circuits can be implemented using any form of hardware, software, or a combination thereof. For example, one or more processors, controllers, ASICs, PLAs, PALs, CPLDs, FPGAs, logic components, software routines, or other mechanisms can be used to construct the circuit. In implementation, the various circuits described herein can be implemented as discrete circuits, or the described functions and features can be shared partially or wholly among one or more circuits. Even if various features or functional elements can be described or requested individually as separate circuits, these features and functions can be shared among one or more common circuits, and such description does not require or implies the need for separate circuits to implement such features or functions. When circuits are implemented wholly or partially using software, such software can be implemented to operate in conjunction with a computing or processing system (such as computer system 700) capable of performing the functions described therein.
[0118] As used herein, the term “or” can be interpreted in an inclusive or exclusive sense. Furthermore, descriptions of resources, operations, or structures in the singular form should not be construed as excluding the plural form. Conditional language such as “can,” “able,” “may,” or “possibly” is generally intended to convey that some examples include certain features, elements, and / or steps, while other examples do not, unless explicitly stated otherwise or understood in the context in which it is used.
[0119] Unless otherwise expressly stated, the terms and phrases used in this document, and their variations thereof, should be interpreted as open-ended rather than restrictive. Adjectives such as “regular,” “traditional,” “normal,” “standard,” “known,” and terms with similar meanings should not be interpreted as limiting the described item to a given time period or items available up to a given time, but should be understood to include any regular, traditional, normal, or standard techniques available or known at any time now or in the future. In some cases, the presence of broadened words and phrases such as “one or more,” “at least,” “but not limited to,” or other similar phrases should not be interpreted as intentionally or necessary to imply a narrower scope in instances where such broadened phrases might not exist.
Claims
1. A computer-implemented method, comprising: Receive a set of product identifiers, wherein each product identifier in the set of product identifiers corresponds to a first unit process set, wherein the first unit process set defines a first activity of the product associated with the product identifier, and wherein the first activity is at least one of the manufacture, transport, use, or disposal of the product. Determine the components and sub-components of each product identifier in the product identifier set, wherein each component and sub-component corresponds to a second unit process set, wherein the second unit process set defines a second activity of the components and sub-components of the product associated with the product identifier, and wherein the second activity is at least one of the manufacturing, transportation, use, or disposal of the components and sub-components of the product. For each unit process in the first unit process set or the second unit process set, generate an ordered list of unit process carbon footprint models; For each unit process carbon footprint model from the ordered list, determine whether the model dependencies are satisfied; In response to the determination that the model dependency for the first unit process carbon footprint model is satisfied, the first unit process carbon footprint model from the ordered list is executed, and the first unit process carbon footprint model generates a first carbon footprint value; Iteratively execute subsequent unit process carbon footprint models where model dependencies are satisfied to generate a second carbon footprint value; The first carbon footprint value and the second carbon footprint value are aggregated to generate an aggregated carbon footprint value; as well as Provide the aggregated carbon footprint value for the corresponding product associated with the product identifier.
2. The computer-implemented method of claim 1, wherein the aggregated carbon footprint value is provided as a subdivided unit process.
3. The computer-implemented method according to claim 1, wherein the aggregated carbon footprint value is subdivided according to product lifecycle stages.
4. The computer-implemented method of claim 1, wherein the aggregated carbon footprint values are subdivided by corporate footprint category.
5. The computer-implemented method according to claim 1, further comprising: For the second set of unit procedures associated with each component and subcomponent of the product identifier, determine whether the model dependency is satisfied; The unit process carbon footprint model associated with the second unit process set is executed iteratively to generate an aggregated third carbon footprint value; as well as Provide a third carbon footprint value for the aggregated product associated with the product identifier, wherein the third carbon footprint value for the aggregated product is provided separately from the carbon footprint value of the aggregated product.
6. The computer-implemented method according to claim 1, further comprising: The carbon footprint values associated with the product identifier are deduplicated and aggregated.
7. The computer-implemented method according to claim 1, further comprising: Remove a subset of characters associated with the product identifier.
8. The computer-implemented method according to claim 1, further comprising: In response to the fact that the model dependency for the unit process carbon footprint model is not satisfied, a second unit process carbon footprint model in the ordered list of unit process models is determined.
9. The computer-implemented method of claim 1, wherein the determination of whether the dependency of the model is satisfied is determined sequentially from the ordered list of the unit process model.
10. The computer-implemented method according to claim 1, wherein the product identifier includes the product's alphanumeric code, part number, stock unit (SKU), model, serial number, or product name.
11. The computer-implemented method according to claim 1, further comprising: Store the carbon footprint value for the unit process associated with the product identifier; as well as Initiate an audit process for the stored carbon footprint values.
12. The computer-implemented method of claim 1, wherein the first unit process set corresponds to transporting the final product to a location, and the second unit process set corresponds to transporting components of the final product to the location to assemble the final product.
13. The computer-implemented method of claim 1, wherein the first unit process set corresponds to the use of the final product, and the second unit process set corresponds to the use of the components of the final product.
14. The computer-implemented method of claim 1, wherein the first unit process set corresponds to the disposal of the final product, and the second unit process set corresponds to the disposal of the components of the final product.
15. The computer-implemented method of claim 1, wherein the first unit process set corresponds to manufacturing a final product, and the second unit process set corresponds to assembling the final product using components of the final product.
16. The computer-implemented method according to claim 1, further comprising: For the set of product identifiers, the system receives the quantity and operating parameters associated with the product, wherein the operating parameters define rules associated with the operation of the product, and the rules include country, duration, and data center efficiency value.
17. A server, comprising: Memory that stores instructions; as well as A processor, communicatively coupled to the memory and configured to execute the instructions to: Determine the components and subcomponents of the product identifier set, wherein each component and subcomponent corresponds to a unit procedure set, the unit procedure set corresponding to a product identifier in the product identifier set; For each unit process in the unit process set, an ordered list of unit process carbon footprint models is generated; For each unit process carbon footprint model from the ordered list, determine whether the model dependencies are satisfied; In response to the determination that the model dependency for the first unit process carbon footprint model is satisfied, the first unit process carbon footprint model from the ordered list is executed, and the first unit process carbon footprint model generates a first carbon footprint value; Iteratively execute subsequent unit process carbon footprint models where model dependencies are satisfied to generate additional carbon footprint values; The first carbon footprint value is aggregated with the additional carbon footprint value to generate an aggregated carbon footprint value; as well as Provide the aggregated carbon footprint value for the corresponding product associated with the product identifier.
18. The server of claim 17, wherein the aggregated carbon footprint value is provided as a subdivided unit process.
19. The server of claim 17, wherein the aggregated carbon footprint value is subdivided by product lifecycle stage.
20. The server of claim 17, wherein the aggregated carbon footprint values are subdivided by enterprise footprint category.