Patent ID: 7698109

Claim:
A method for configuring, in a memory of a computer system, a virtual representation of an assembly of a plurality of components, the method comprising the steps of: storing, in a database of the computer system, a first set of data representing a plurality of categories of components, and, for each category, parameters and constraints defining limitations for configurations of each of the components within each of the categories, whereby all components in a category have common parameters and constraints, generating a second set of data representing the assembly of a plurality of components and representing a configuration space of said plurality of components, the second set of data comprising a separate data structure which defines valid combinations of components, the separate data structure being included in the second set of data in such a way that each separate data structure is associated with a particular component, whereby the constraints of the particular component reflects said valid combinations of components, storing the second set of data in a memory of the computer system, the step of generating being performed while respecting the constraints associated with each component and constraints for the assembly, generating a third set of data representing a present configuration in the configuration space, the step of generating the third set of data comprising offering a plurality of components or component categories, repeating the steps of generating a second set of data and generating a third set of data by: offering only such components which, when added to the assembly, result in a valid combination of components, the offered components being derived from the separate data structure of the second set of data, adding, to the second and third set of data, data which represent one of the offered components and which are derived from the first set of data, or deleting data representing a component of the second and third set of data, or amending data representing a previously added component of the second and third set of data, while respecting the constraints associated with each component and constraints for the assembly, so as to arrive at an updated version of the second set of data, and at an updated version of the third set of data, wherein at least one of the step of generating the second set of data and the third set of data comprises creating a set of clusters, each cluster containing data representing a single component as well as optionally at least one further component which is connected to said single component, whereby the set of clusters contains data representing all components comprised in the virtual representation.