Method for consolidating key indicators of virtual objects in an index - Patents.com

By converting object attributes into a directed acyclic graph and applying a ruleset for efficient consolidation, the method addresses inefficiencies in key indicator calculations, ensuring accurate and timely measurements for complex objects with diverse configurations.

JP7621093B2Active Publication Date: 2025-01-24DASSAULT SYSTEMES SA
View PDF 12 Cites 0 Cited by

Patent Information

Application Number
JP2020188779
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-11-19
Filing Date
2020-11-12
Publication Date
2025-01-24
Estimated Expiration
2040-11-12

AI Technical Summary

Technical Problem

Existing methods for consolidating key indicators in complex digital models of objects with millions of parts are inefficient, leading to prolonged CPU consumption and inaccurate measurements, particularly for large objects like cruise ships and satellites, due to outdated data and lack of consideration for diverse configurations.

Method used

A computer implementation method that converts object attributes into a directed acyclic graph, allowing for scalable and efficient consolidation of key indicators through a data model, using a ruleset to index and roll-up indicators, incorporating tolerance values and statistical calculations.

Benefits of technology

This method significantly reduces CPU consumption and response time, enabling accurate and timely key indicator measurements, such as weight and balance, even for large and complex objects, with improved scalability and data freshness.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007621093000002
    Figure 0007621093000002
  • Figure 0007621093000003
    Figure 0007621093000003
  • Figure 0007621093000004
    Figure 0007621093000004
Patent Text Reader

Abstract

To provide a method for consolidating a key indicator of a virtual object in an index.SOLUTION: A computer implemented method for consolidating at least one key indicator of a virtual object (OBJ) comprises the steps of a) receiving a description of at least one key indicator of the virtual object; b) receiving a set of attributes (ATT) of the virtual object; c) receiving a data model (DM) for indexation of the virtual object; d) receiving a set of rules (RUL) to convert the attributes of the virtual object (OBJ) into the data model (DM) for indexation; e) applying the set of rules (RUL) to convert the attributes into the data model (DM) for indexation; f) transforming the data model (DM) for indexation into a directed acyclic graph; and g) consolidating said key indicator based on an expansion of the directed acyclic graph.SELECTED DRAWING: Figure 7
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to the field of CAE (Computer Aided Engineering), more precisely to the field of CAD (Computer Aided Design), and relates to a computer-implemented method for the consolidation of key indicators of a virtual object composed of multiple object parts in a given complex object. [Background technology]

[0002] Key Indicators (KI) are measurement characteristics that allow you to make strategic decisions. Among them, there are several types of key indicators: -KSI (Key Sustainable Indicators), e.g. carbon footprint, impact on scarce resources, - KQI (Key Quality Indicator), e.g. defect rate during production of object parts, -KPIs (Key Performance Indicators), such as the weight (hereafter also called mass) of an object, inertia matrix, center of gravity (these parameters are commonly referred to as "weight and balance"), and dependencies of the object such as range, braking distance, air penetration coefficient, minimum runway length for takeoff or landing.

[0003] Over the past two decades, the number of parts that make up complex objects has ballooned in digital models, from thousands of parts to millions of parts, thereby making the consolidation of key indicators enormously complex.

[0004] An object may be described by using a global structure that includes a design bill of materials (reflecting how the object is designed), a manufacturing bill of materials (focusing on the parts required to manufacture the object), a process bill of materials for the object in use, and a bill of materials for the life of the object. A manufacturing bill of materials describes the object in terms of subassemblies. It consists of an itemized list of parts of the structure shown on a drawing, for example in the form of a table. A bill of materials can therefore be represented by a hierarchical tree structure with a root entity and a subtree of children (leaves) with parent nodes. Consolidating the key indicators of an object is a survey of the global bill of materials just mentioned, from the leaves to the root of the tree. The bottom-up calculation of metrics is done by roll-up operations (or simply referred to as "roll-up"). Roll-up functions are defined such that the values ​​of metrics are calculated bottom-up. At each level of the tree, complex processes of decision making and consolidation are applied.

[0005] Some key indicators are relatively easy to consolidate, for example consolidating the mass of a virtual object consists of adding the masses of all parts of the object. Thus, primarily, the rollup consists of adding values ​​and is not very CPU intensive. However, the difficulty is that a wide variety of subcontractors may necessarily be involved during the manufacturing and design process. What has just been described entails that the data needed to consolidate the key indicators (text documents, spreadsheets in ERP software, or in CAD software) may be stored in several systems, even one that is not CPU intensive, and may not be up to date. Each of the systems just described may be considered a "silo" in that each system is sealed off from the others. Operating in silos impacts efficient consolidation of key indicators.

[0006] Another key indicator concerns the inertia matrix of the object. To consolidate the inertia matrix, first it is necessary to calculate the products of the moments of inertia and the inertia of the leaves. Then the inertia matrix is ​​a 3-by-3 matrix that contains the values ​​just mentioned, with respect to the three-axis system in which the object is instantiated. Then the inertia matrix is ​​diagonalized. The diagonalized eigenvalues ​​are the principal moments of inertia of the object, and the three eigenvectors are the principal axes of inertia. It can be noted that diagonalizing a matrix is ​​CPU consuming. Furthermore, once the inertia matrix has been calculated for a part of the object (corresponding to the lowest child in the bill of materials), the inertia matrix for the parent part of the object is calculated based on the moments of inertia of the child objects and based on the inertia axes of the child objects. Hence, when rolling up the inertia matrix from children to parents in the bill of materials, a very complex matrix calculation is implemented. If so, the rollup is performed by implementing the parallel axis theorem, also known as the Huygens-Steiner theorem. If so, the rollup function is dictated by the Huygens-Steiner theorem.

[0007] For that reason, the consolidation of key indicators for millions of parts, lasting several hours, is unacceptable. The exact measurement of the weight and balance of large cruise ships, a very complicated operation especially compared to other key indicators, is in practice estimated with a high degree of uncertainty during the design of the ship. Today, manufacturers are unable to determine the exact mass of the ship during the design phase, or even during the manufacturing phase. Once built, the ship is launched in water and the mass is derived from the volume of water displaced. If buoyancy needs to be corrected, the ship is weighted by extra equipment. It is recalled that the weight and balance of large cruise ships is of crucial importance since it indicates the way in which the large cruise ship passes through the waves.

[0008] In the automotive domain, a huge number of key performance indicators are monitored during the vehicle design process. For example, for a racing car, up to 350 KPIs may be monitored. In fact, during project reviews, a huge amount of key performance indicators are analyzed and some key performance indicators may be treated specially above others. KPI consolidation is a fully integrated decision-making procedure and therefore must be performed whenever a strategic decision has to be made.

[0009] Another constraint in the automotive domain concerns the large number of possible vehicle configurations. Up to now, automotive manufacturers consolidate key performance indicators for only one vehicle, i.e. one of the heaviest commercial lines, without considering the diversity of configurations. Thus, the consolidation is performed for a single graph. Furthermore, the consolidation lasts for several hours, even for the limited number of vehicles just mentioned, so the consolidated data is not up-to-date. As vehicles contain an increasing number of parts, it takes more and more time to consolidate KPIs, regardless of the different configurations.

[0010] Furthermore, key performance indicators such as, for example, mass, are also decisive in astronautics, especially for satellites. Usually, in the contract between the launch pad operator / manufacturer and the satellite operator / manufacturer, there are certain provisions regarding the mass of the satellite, so that the satellite does not exceed a predefined mass. Indeed, during the launch phase, each kilogram of payload has importance, in terms of propellant. In fact, the launch pad operator / manufacturer applies fines of several thousand euros for an error of 1 kg on the satellite. Therefore, mass indicators must be strictly monitored. Furthermore, it would be interesting to be able to express the tolerances calculated during the roll-up as a quantity, for example by a margin of error, for the satellite operator / manufacturer.

[0011] There is therefore a need to provide a method for consolidating key indicators of virtual objects that is scalable, manages different sources of data coming from different suppliers, and takes into account the diversity of configurations of the objects. Summary of the Invention

[0012] An object of the invention is a computer implemented method for consolidating indicators of at least one key of a virtual object, the method comprising the following steps for a predefined configuration of virtual objects: a) receiving a description of an indicator of at least one key of a virtual object; b) receiving a set of attributes of a virtual object; c) receiving a data model for indexation relating to said virtual object; d) receiving a rule set for converting attributes of the virtual object into a data model for indexation; e) applying a set of rules to convert said attributes into a data model for indexation; f) transforming the data model for indexation into a directed acyclic graph; g) consolidating the key indicators based on the unfolding of the directed acyclic graph.

[0013] In a preferred embodiment, in the data model, a virtual object is characterized by the following: - at least one aggregate feature, said aggregate feature being specified according to the bill of material cormorant Virtual Object Composition and / or at least one facet feature, said facet feature representing a classification of the virtual object;

[0014] In a preferred embodiment, the aggregate features and facet features are referenced in an index.

[0015] In a preferred embodiment, aggregate features and / or facet features are incrementally updated in the index.

[0016] In a preferred embodiment, step g) includes applying a rollup on the directed acyclic graph unfolded in the index.

[0017] In a preferred embodiment, step a) includes receiving a rollup function of key indicators during rollup on the unfolded directed acyclic graph, said rollup function representing the key indicators to be consolidated bottom-up in a bill of materials of the virtual object.

[0018] In a preferred embodiment, step g) includes receiving a tolerance value for each aggregate feature and calculating a statistical tolerance based on a Euclidean distance for said tolerance values.

[0019] In a preferred embodiment, the key indicators are key performance indicators of the virtual object.

[0020] In a preferred embodiment, the key performance indicators include the weight and balance of the object, in particular the weight of the virtual object and / or the centre of gravity of the virtual object and / or the inertia matrix of the virtual object.

[0021] In a preferred embodiment, steps f) and g) are implemented in the same software component.

[0022] In a preferred embodiment, the virtual object is a vehicle, in particular a ship.

[0023] Furthermore, the present invention relates to a computer program product stored on a non-volatile computer readable data storage medium, comprising computer executable instructions for causing a computer system to perform the above-mentioned method.

[0024] Furthermore, the present invention relates to a non-transitory computer readable data storage medium comprising computer executable instructions for causing a computer system to perform the above-mentioned method.

[0025] Furthermore, the invention also relates to a computer system configured for implementing the above mentioned method, comprising at least one client device and configured to process a user request for consolidating at least one key indicator of a virtual object and at least one index, said index being configured to implement at least the steps of transforming a data model for indexation into a directed acyclic graph and of consolidating said key indicators based on the evolution of the directed acyclic graph.

[0026] In a preferred aspect, the system includes a plurality of indexes and an index controller configured to determine one of the indexes that can process a user request the fastest, and the steps of converting a data model for indexation into a directed acyclic graph and consolidating indicators of the keys based on an evolution of the configured directed acyclic graph are implemented in the indexes.

[0027] Additional features and advantages of the present invention will become apparent from the following description, taken in conjunction with the accompanying drawings. [Brief description of the drawings]

[0028] [Figure 1] 2 is an index building phase in the method according to the invention; [Diagram 2] 1 is a data model used in the method according to the present invention. [Diagram 3] 1 is an example of key indicator information attached to an entity in a data model. [Figure 4] 1 is an example of a rule set that drives the transformation of design information into a data model, and further includes the transformation of diversity information into a data model. [Diagram 5] 1 is an example of a rule set that drives the transformation of manufacturing information into a data model, and further includes the transformation of variety information into a data model. [Figure 6] Here is an example bill of materials that contains three objects. [Figure 7] 7 is an example of indexation of the objects illustrated in FIG. 6 according to the data model of the present invention. [Figure 8] 1 is an example of a computer system according to the present invention; [Figure 9] 1 is a graphical representation illustrating the scalability of the method as measured in one implementation of the present invention. [Figure 10] 13 is an example of a vessel weight and balance rollup results screen. [Figure 11] A computer suitable for carrying out the method according to an exemplary embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0029] The present invention relies on two main steps, which will be called "build" and "run". Figure 1 illustrates the main steps of the build, where four computing systems CSY are represented. Of course, the number of computing systems CSY is not limiting. Each of the computing systems CSY may be: - a PLM (Product Lifecycle Management) system CS1, including a CAD (Computer Aided Design) system, which may provide 3D modeling data of virtual objects and a diversification dictionary thereof; - CSY2, an Enterprise Resource Planning (ERP) system that may provide supply chain data; -EIS(Enterprise Information System)CSY3, - A plurality of sensors CSY4, which may be coupled to a network, such as the Internet, to collect data and transmit them, directly or otherwise, to another entity.

[0030] The computing systems (CSY1, CSY2, CSY3, CSY4) are coupled to an index IND of a search engine. The index IND is stored on a machine, or on a set of machines, that are coupled to the computing systems CSY through a connection means (cable, fiber optic, or wireless by using one of the wireless communication protocols). By "index" one skilled in the art can also refer to a "cache", or a "data lake", i.e. a software component that can be queried and that contains raw data, and structured, semi-structured or unstructured data.

[0031] A description of each key indicator is provided upstream in step a) of the method, specifically by a super user. Indeed, the key indicator description is not supposed to be modified by any normal user. The key indicator description includes a rollup function, i.e., a behavior for the key indicator during rollup on the unfolded directed acyclic graph. The rollup function represents the way in which, for a composition, the key indicators are consolidated bottom-up in the bill of materials of the virtually composed object OBJ.

[0032] Additionally, the key indicator description also includes: - name (e.g. noise, mass, inertia matrix), - Dimensions (e.g. mass, temperature, pressure), - Potentially, security regarding access (editable by superusers or by normal users), Potentially, its fathers and children, indeed key indicators, may contain elements which are themselves key indicators. - Potentially a set of analyses bringing complementary information to key indicators, - Potentially, an icon.

[0033] In step b) of the invented method, a set of attributes ATT of the virtual object is received by the index IND. The attributes ATT are data provided to the index IND by one of the computing systems CSY. The attributes ATT therefore characterize the object according to the computing system CSY from which they originate.

[0034] A single data model DM is provided in step c) of the method. The data model represents the typing of the objects at the index IND and the typing of the links structuring the objects at the index IND. All attributes ATT sent to the index IND are converted according to the data model DM illustrated by FIG. 2.

[0035] Conversions include: 1. Interpreting the object OBJ coming from the computer system CSY and then typing it according to the data model DM; 2. Creating links between objects potentially coming from computer systems CSY. It should be noted that the links just mentioned do not exist between computer systems CSY. They exist only in the index IND. An index is therefore a software component that creates semi-structured data based on initially unstructured data.

[0036] The data model DM may be considered "agnostic" to the extent that any attribute of an object may be converted according to the data model, regardless of the computing system CSY from which it originates, and regardless of the format of the attribute ATT.

[0037] In the data model DM, two elements, cormorant Virtual object OBJ assembly At least one aggregate feature AGG, representing a classification of the virtual object OBJ, and / or at least one facet feature FAC, representing a classification of the virtual object OBJ, characterize the virtual object. For example, a mechanical part may have a material facet, a recycling facet, a supply facet, etc. More generally, the facet feature identifies the virtual object. The aggregate feature identifies the object according to the bill of materials. assembly Define. assemblyAn example of an instantiation is the instantiation of an object. By "instantiation" those skilled in the art refer to a position and orientation in a reference frame that is attached to an object. The aggregate feature AGG and the facet feature FAC are referenced at the index IND.

[0038] Figure 3 lists examples of key indicator information attached to entities in the data model. For example, - the key indicator KI1 is oriented towards weights with three facets, value, tolerance and confidence level; - The key indicator KI2 is oriented towards carbon footprint with three facets: value, tolerance and confidence level, - The key indicator KI3 is oriented towards the nominal power with three facets: value, tolerance and confidence level; -Key indicator KI4 is oriented towards the center of gravity with three facets: value, tolerance and confidence level.

[0039] Each time an attribute is indexed, the tolerance value may be copied to the data model DM. In a preferred embodiment, a statistical tolerance may be calculated based on the Euclidean distance of the tolerance values. If one father and n children are considered, then σ x is the paternal tolerance, x i is the tolerance of the ith child. The father's tolerance value is given by the following formula:

[0040]

number

[0041] Therefore, when consolidating key indicators, the user also gets the tolerance value associated with the key indicator, allowing the user to quantify the tolerance calculated during the rollup, for example, by a margin of error.

[0042] Step d) of the invented method comprises receiving a rule set RUL for converting attributes of the virtual object OBJ into a data model DM for indexation, and step e) of the invented method comprises applying the rule set RUL for converting said attributes into a data model DM for indexation.

[0043] For example, Figure 4 illustrates rules that activate the conversion of design information to the data model DM during the build phase. The "check mark" symbol represents the fact that an attribute is indexed. The "cross" symbol represents the fact that an attribute is not indexed. The "arrow" symbol represents the flattening of an attribute, where the attribute is copied to the indexed attributes and then removed from the index. The decision to index, not index, or aggregate an attribute is made by the superuser based on the required key indicators. Hence, the rules depend on the scenario. Attributes may be aggregated by facets for classification purposes.

[0044] For example, there is no need to index visualization triangles or representations of geometric shapes with respect to mathematically defined objects. There is no need to index key indicators as objects since it is not possible to apply varieties (configurations). In the index, the key indicators become attributes of objects with respect to the bill of materials of the product. Objects in the dictionary of varieties (also called configurations) do not need to be indexed since they do not participate in the bill of materials. On the other hand, the options used to define the configurations are indexed. A flattening operation is performed when there is no possibility of varieties. Elements that contribute nothing to the bill of materials are not indexed.

[0045] Similarly, FIG. 5 illustrates rules that drive the conversion of manufacturing information into a data model during the build phase.

[0046] 6 illustrates a bill of materials BOM including three object parts of an aircraft (a first object part OBJ1, a second object part OBJ2, and a third object part OBJ3). The attributes of the objects are converted for indexation in the index IND as illustrated in FIG.

[0047] In Fig. 7 a directed acyclic graph representing an aircraft is created in an index IND. It aggregates information from a first computing system CSY1, e.g. a PLM system, from a second computing system CSY2, e.g. an EIS, and from a third computing system CSY3, e.g. an ERP. The information coming from the different silos is structured inside the index IND.

[0048] The attributes ATT of the three computing systems (CSY1, CSY2, CSY3) are converted into a data model DM for indexation in an index IND.

[0049] In the first computing system CSY1, the root object (the one whose key indicators are to be consolidated, i.e., “aircraft”) is stored together with the following simplified representations of the 3D geometry of objects OBJ1, OBJ2, and OBJ3: The attribute "Estimated weight" of the first object OBJ1, with a value of -37 kg, The attribute "Calculated weight" of the third object OBJ3 with the value -31.2 kg and a confidence value of 30%; -With simplified representation of the 3D geometry of three objects OBJ1, OBJ2 and OBJ3.

[0050] In the second computing system CSY2, the attribute "weight" of the second object OBJ2 is stored with a value of 22 kg.

[0051] In the third computing system CSY2, the attribute "measured weight" of the third object OBJ3 is stored with a value of 33.2 kg and a confidence value of 80%.

[0052] The above attributes ATT are converted to a data model DM for indexation. Next, the root object "Aircraft" aggregates: a first element C1 having a facet C5 of CSY2, - a second element C2 having a facet C4 of CSY3, -Third element C3.

[0053] Next, once the attributes ATT have been converted according to the data model DM for indexation, the data model is transformed into a directed acyclic graph in a tree data structure, as illustrated by FIG. 7 (step f) of the invented method).

[0054] Once the data model has been transformed into a directed acyclic graph during the build phase, the run phase can be performed on the directed acyclic graph. In a preferred embodiment, the aggregate feature AGG and / or the facet feature FAC are updated incrementally in the index IND, so that the build phase does not have to be performed from scratch, even when the data changes. Thus, the run phase, which includes consolidating the key indicators, is based on the unfolding of the directed acyclic graph, taking into account the configuration (which is a set of options from the diversity) and with the latest data (step g) of the invented method. On each object of the unfolded graph, from bottom to top, a specific consolidation method of the key indicators is called.

[0055] Fig. 8 is an illustration of a computer system according to the invention. The system includes at least one client device CD configured to process a user request to consolidate at least one key indicator of a virtual object. For example, the user request may be queried by one program manager of a 3D object during the design phase or during the manufacturing phase of the object. The index IND implements at least the steps of transforming the data model DM for indexation into a directed acyclic graph and of consolidating said key indicators by developing the directed acyclic graph.

[0056] For the run phase, there may be only one index, or several. If so, load balancing may be implemented to optimize several parameters, such as, for example, system response time, throughput, index reliability or availability. The just mentioned parameters may be determined by an index controller INC, also called load balancer, coupled between the client device CD and the index IND. In particular, periodically or when receiving a user request from a client device, the index controller INC determines the status of each index IND. If the index controller INC determines that an index IND cannot process the user request (due to failure or unavailability), the index controller INC directs the user request to another index IND. Once the index controller INC has determined the index that can process the user request the fastest, the selected index develops the data model DM and consolidates the indicators of the keys requested by the user. As illustrated by FIG. 8, the client device CD may communicate with the index controller INC and even directly with the index IND.

[0057] With reference to the example of FIG. 7, the most available index IND, i.e. the one considered to have the fastest response time, is expanded the tree of the aircraft (the aircraft itself at the root, and its three children with two second level children) and the expanded tree is rolled up. The expansion of the tree retrieves six elements (C1-C6). The rollup consolidates the weight information from the bottom to the top of the tree. The fifth element C5 is weighted 22 kg. The fourth element C4 is weighted 33.2 kg. The third element C3 is weighted 37 kg. The first element C1 directly gets the same value as the fifth element C5, so the first element C1 adds a weight of 22 kg. For the second element C2, the information coming from the two facets is compared. Since a confidence of 80% is greater than 30%, the second element C2 is considered to have a weight of 33.2 kg. Finally, the aircraft aggregating the first element C1, the second element C2 and the third element C3 is considered to have a weight of 22+33.2+37=92.2 kg.

[0058] In a preferred embodiment, the steps of transforming the initial data into the index data model (in the build phase) and of consolidating the indicators of the keys (in the run phase) are implemented in the same software component, in particular the index IND, by shared memory. Hence, the drawbacks of using two entirely different software components (one for indexation and one for consolidation) are avoided due to the data transfer between the components and due to the duplication of the directed acyclic graph between both software components. The invented method is highly scalable, with a high level of availability.

[0059] Steps a) to f) (build phase) of the invented method may be implemented offline and step g) (run phase) may be implemented online. The offline implementation of the build phase saves a lot of computation time.

[0060] Figure 9 illustrates the scalability measured in an implementation of the invented method. In the implementation just described, an Apache TomEE server is used as the index controller and an Exalead Graph Index (property of Dassault Systèmes) is used as the index. Data is provided by three computer systems: a PLM called 3DSpace (property of Dassault Systèmes), an ERP called SAP, from which spreadsheet data (e.g. data from Excel files) is extracted, and a computer that receives emails from subcontractors containing spreadsheets such as Excel files.

[0061] The client device from which the user request was made was a standard computer (Windows Server, 64-bit operating system, Intel Xeon CPU ES-1620 v3 3.50 GHz, 16.0 GB RAM) commercially available to any user.

[0062] Key indicators of weight and balance, as well as product costing, were consolidated.

[0063] The horizontal axis represents the number of object parts (i.e., number of elements) of the virtual object. The vertical axis represents the response time of a user request for the weight and balance KPI.

[0064] The response times are far below those described above for state of the art solutions: for a large cruise ship with 8 million elements, the response time is 200 seconds; for a petrochemical plant with 18 million elements, the response time is 450 seconds; and furthermore, the response times are linear, allowing one to predict the response time based on the number of elements.

[0065] Figure 10 illustrates a screenshot showing the results of the weight and balance KPI for a large cruise ship according to the invented method. In the left part of the screen, the user can select the whole object or its sub-parts by browsing the tree of objects. The user's selection may be highlighted in the central part of the screen. In the right part of the screen, the consolidation results are displayed, in particular the weight, center of gravity and inertia matrix.

[0066] The methods of the present invention can be carried out by a suitably programmed general-purpose computer or computer system that stores a suitable program in non-volatile form on a computer readable medium, such as a hard disk, solid state disk, or CD-ROM, possibly including a computer network, and executes said program using a microprocessor(s) and memory.

[0067] Each of the aforementioned client device CD, computing system CSY, index IND and index controller INC can be a computer CPT suitable for performing a method according to an exemplary embodiment of the invention described with reference to Fig. 11. In Fig. 11, the computer CPT comprises a CPU (Central Processing Unit) P which performs the steps of the method described above while running an executable program, i.e. a set of computer readable instructions stored, for example, in RAM M1 or ROM M2 or HDD (Hard Disk Drive) M3, DVD / CD drive M4, etc., or stored remotely.

[0068] The claimed invention is not limited by the form of computer readable media on which the computer readable instructions and / or data structures for the processes of the invention are stored. For example, the instructions and files can be stored on a CD, DVD, flash memory, RAM, ROM, PROM, EPROM, EEPROM, hard disk, or any other information processing device with which a computer communicates, such as a server or computer. The programs and files can be stored in the same memory device or in different memory devices.

[0069] Furthermore, a computer program suitable for carrying out the methods of the present invention may be provided as a utility application, background daemon, or component of an operating system, or combination thereof, running in conjunction with a CPU P and, for example, Microsoft® VISTA, Microsoft® Windows 10, UNIX, Solaris, LINUX, Apple MAC-OS, and other systems known to those skilled in the art.

[0070] CPU P may be a Xenon processor from Intel Corporation of America or an Opteron processor from AMD Corporation of America, or other processor types, such as a Freescale ColdFire, IMX, or ARM processor from Freescale Corporation of America. Alternatively, CPU P may be a processor, such as a Core2 Duo from Intel Corporation of America, or may be implemented on an FPGA, ASIC, PLD, or using discrete logic circuits, as will be appreciated by those skilled in the art. Additionally, CPU P may be implemented as multiple processors working in cooperation to execute computer readable instructions of the process of the present invention described above.

[0071] The computer CPT of FIG. 11 also includes a network interface NI, such as an Intel Ethernet PRO network interface card from Intel Corporation of America, for interfacing with a network, such as a LAN (Local Area Network), a WAN (Wide Area Network), the Internet, etc. Furthermore, the computer CPT includes a display controller DC, such as an NVIDIA GeForce GTX graphics adapter from NVIDIA Corporation of America, for interfacing with a display DY, such as an HPL2445w LCD monitor from Hewlett-Packard. A generic I / O interface IF interfaces with a keyboard KB and a pointing device PD, such as a roller ball, mouse, touch pad, etc. The display, keyboard, and pointing device together with the display controller and I / O interface form a graphical user interface used by a user to provide input commands and by the computer to display results on key indicators, as illustrated in FIG. 10.

[0072] The disk controller DKC connects the HDD M3 and DVD / CD M4 to a communication bus CBS, which can be ISA, EISA, VESA, PCI or similar, to interconnect all of the computer's components.

[0073] Descriptions of the general features and functionality of displays, keyboards, pointing devices, as well as display controllers, disk controllers, network interfaces and I / O interfaces are omitted herein for brevity, as these features are known.

[0074] In an alternative embodiment, the computer CPT is replaced by a server and an end-user computer. The overall architecture of the server may be the same as discussed above with respect to the computer CPT, except that the server may lack a display controller, display, keyboard, and / or pointing device. The end-user computer runs the front-end section of the "run" infrastructure, including the user interface, and the server runs the "build" infrastructure and the back-end section of the "run" infrastructure. User actions on the user interface trigger queries - e.g., REST queries - to a web service provided by the server (e.g., an Apache server) that runs the key indicators rollup algorithm.

[0075] The network NW can be a public network, such as the Internet, or a private network, such as a LAN or WAN network, or any combination, including PSTN or ISDN sub-networks. The network NW can also be wired, such as an Ethernet network, or wireless, such as a cellular network, including EDGE, 3G and 4G wireless cellular systems. The wireless network can also be Wi-Fi, Bluetooth, or any other wireless form of known communication. Thus, the network NW is merely exemplary and in no way limits the scope of the present advancement.

[0076] Any process described herein should be understood as representing a module, segment, or portion of code that comprises one or more executable instructions that implement a particular logical function or step of the process, and alternative implementations are included within the scope of the exemplary aspects of the invention. [Explanation of symbols]

[0077] ATT attribute CSY1 Computing System CSY2 Computing System CSY3 Computing System CSY4 Computing System IND Index

Claims

1. 1. A computer-implemented method for consolidating indicators of at least one key of a virtual object, the method comprising: a) receiving a description of an indicator of at least one key of the virtual object; b) receiving a set of attributes of the virtual object; c) receiving a data model for indexation relating to said virtual object; d) receiving a rule set for converting the attributes of the virtual object into a data model for indexing; e) applying said rule set to convert said attributes into a data model for said indexing; f) transforming the data model for indexation into a directed acyclic graph; g) rolling up attributes of the directed acyclic graph based on an unfolding of the directed acyclic graph to consolidate indicators of the keys; 23. A method comprising:

2. In the data model, the virtual object is at least one aggregate feature, said aggregate feature representing an assembly of said virtual objects according to a bill of materials, and / or at least one facet feature, said facet feature representing a classification of said virtual object; 2. The method of claim 1, characterized by:

3. The method of claim 2 , wherein the aggregate feature and the facet feature are referenced in an index.

4. 4. The method of claim 1, 2 or 3, wherein aggregate features and / or facet features are incrementally updated in the index.

5. 5. The method of claim 3, wherein step g) comprises applying a rollup on the unfolded directed acyclic graph in the index.

6. 6. The method of claim 5, wherein step a) comprises receiving a rollup function of the key indicators during the rollup on the unfolded directed acyclic graph, the rollup function representing the key indicators to be consolidated bottom-up in a bill of materials for the virtual object.

7. 7. The method of claim 2, 3, 4, 5, or 6, wherein step g) comprises receiving a tolerance value for each aggregate feature and calculating a statistical tolerance based on a Euclidean distance for the tolerance values.

8. 8. The method of claim 1, 2, 3, 4, 5, 6, or 7, wherein the key indicators are key performance indicators of the virtual object.

9. The method of claim 8 , wherein the key performance indicators include the weight and balance of the virtual object or the weight of the virtual object and / or the centre of gravity of the virtual object and / or the inertia matrix of the virtual object.

10. 10. The method of claim 1, 2, 3, 4, 5, 6, 7, 8, or 9, wherein steps f) and g) are implemented in the same software component.

11. 11. The method of claim 1, 2, 3, 4, 5, 6, 7, 8, 9, or 10, wherein the virtual object is a vehicle or a boat.

12. A computer program stored on a non-volatile computer-readable data storage medium comprising computer-executable instructions for causing a computer system to carry out the method of any one of claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, or 11 when implemented on the computer.

13. A non-transitory computer-readable data recording medium having a program recorded thereon for causing a computer system to execute the method according to any one of claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, or 11.

14. 12. A computer system configured for implementing the method according to any one of claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 or 11, comprising at least one client device and configured to process user requests for consolidating indicators of at least one key of a virtual object and at least one index, the index being configured to implement at least the steps of transforming a data model for the indexation into a directed acyclic graph and consolidating indicators of the keys based on an unfolding of the directed acyclic graph.

15. 15. The computer system of claim 14, further comprising: a plurality of indexes; and an index controller configured to determine one of the indexes that can process the user request the fastest; and wherein the steps of converting a data model for indexing into a directed acyclic graph and consolidating indicators of the keys based on an evolution of the constructed directed acyclic graph are implemented in the index.

Citation Information

Patent Citations

  • Design aid

    JP1989116766A

  • Relational information converter

    JP1994250896A

  • System and method for linking cad / Pdm and computer- readable recording medium recording cad / Pdm linking program

    JP2000113007A

  • Device and method for integrating component table data, and computer-readable recording medium with recorded program

    JP2001331535A

  • Device, method and program for supporting weight / Center or gravity positional design

    JP2003196323A