IP Library › Granted Patent US 9,830,406
Granted Patent B2
US 9,830,406 · App. 14/475,904 · Granted Nov 28, 2017

Computer-implemented method for designing an industrial product modeled with a binary tree

Inventor: Jean-Francois Rameau (Lisses, FR)
Assignee: Dassault Systemes
G06F17/50G06T17/005G06T17/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,830,406
App. No.
14/475,904
Filed
Sep 3, 2014
Granted
Nov 28, 2017
Kind
B2
Art Unit
2194
USPC
703/1
Abstract

A computer-implemented method for designing an industrial product modeled with a binary tree having leaf nodes representing basic volumes, non-leaf nodes representing binary commutative operation combining volumes, the method comprising the steps of: performing a design operation triggering the adding or the removing of a leaf node; and idealizing the binary tree, i.e. modifying the binary tree while maintaining the optimality of the tree by minimizing the number of weak leaf nodes, a weak leaf node being a leaf node such that, when removed, the resulting binary tree is not optimal anymore.

Claims (63)

1. A computer-implemented method for designing an industrial product comprising:

modeling the industrial product with an optimal binary tree having leaf nodes (LN) representing basic volumes, non-leaf nodes representing binary commutative operation combining volumes;

performing a design operation triggering adding or removing a leaf node (LN) of the binary tree;

modifying the binary tree by minimizing a number of weak leaf nodes (WLN) it contains while maintaining the optimal binary tree (OBT), and

when the design operation is removing of a leaf node (LN):

determining as a non-optimal leaf node (LN) on the binary tree, which is no longer optimal, the leaf node (LN) with the smallest depth;

determining, in a path from the non-optimal leaf node (LN) to the root node (RN), a pivot node (PN) which is the first node which sub-tree is non-optimal;

determining, in said non-optimal sub-tree of the pivot node (PN), a V-sub-tree with the deepest depth, the V-sub-tree being a sub-tree having two leaf nodes (LN); and

switching the non-optimal leaf node (LN) and the V-sub-tree;

wherein a weak leaf node (WLN) is a leaf node (LN) of the optimal binary tree such that, when removed, the binary tree is not optimal anymore, and wherein the optimal binary tree has an absolute value of a depth difference between any two leaf nodes (LN) equal to zero or one.

2. A computer-implemented method according to claim 1 , comprising, when the design operation is the adding of a new leaf node (LN), the steps of:

determining a path of nodes by traversing the binary tree, from a root node (RN) to an existing leaf node (LN), by iteratively choosing a next node defining a sub-tree having the smallest number of leaf nodes (LN); and

adding the new leaf node (LN) at the existing leaf node (LN) ending path.

3. A computer-implemented method according to claim 1 further comprising a step of providing a predefined tree for inputting a binary tree adapted for designing a specific industrial product.

4. A computer-implemented method according to claim 1 wherein, for each node of the binary tree, a maximum depth of its sub-tree is stored in a memory.

5. A computer-implemented method according to claim 1 wherein, for each node of the binary tree, a minimum depth of its sub-tree is stored in a memory.

6. A computer-implemented method according to claim 1 wherein, for each node of the binary tree, a number of leaf nodes (LN) of its sub-tree is stored in a memory.

7. A computer-implemented method according to claim 1 wherein the binary tree is obtained by converting a non-optimal binary tree to an optimal binary tree (OBT).

8. A computer-implemented method according to claim 7 , further comprising a preliminary step of idealizing any binary tree representing an industrial product, by translating a linear list of leaf nodes (LN) representing basic volumes into an ideal binary tree (IBT) wherein the leaf nodes (LN) are the said basic volumes.

9. A computer-implemented method according to claim 7 , further comprising a preliminary step of idealizing any binary tree representing an industrial product, by using a library of pre-computed ideal binary trees according to a relevant range of leaf nodes (LN) number, and reading the number of leaf nodes (LN) representing basic volumes of a linear list of the binary tree, to load the pre-computed ideal binary tree (IBT) corresponding to the leaf nodes number and to set the leaf nodes (LN) of the pre-computed binary tree to the basic volumes of the linear list.

10. A non-transitory computer-readable medium having computer-executable instructions operating a computer system, comprising:

a computer memory embodying computer executable instructions that cause the computer system to design an industrial product by:

modeling an industrial product modeled with an optimal binary tree having leaf nodes (LN) representing basic volumes, non-leaf nodes representing binary commutative operation combining volumes:

performing a design operation triggering adding or removing of a leaf node (LN) of the binary tree;

modifying the binary tree by minimizing a number of weak leaf nodes (WLN) it contains while maintaining the optimal binary tree, and

when the design operation is removing of a leaf node (LN):

determining as a non-optimal leaf node (LN) on the binary tree, which is no longer optimal, the leaf node (LN) with the smallest depth;

determining, in a path from the non-optimal leaf node (LN) to the root node (RN), a pivot node (PN) which is the first node which sub-tree is non-optimal;

determining, in said non-optimal sub-tree of the pivot node (PN), a V-sub-tree with the deepest depth, the V-sub-tree being a sub-tree having two leaf nodes (LN); and

switching the non-optimal leaf node (LN) and the V-sub-tree;

wherein a weak leaf node (WLN) is a leaf node (LN) of an optimal binary tree such that, when removed, the binary tree is not optimal anymore, and wherein an optimal binary tree is a binary tree having an absolute value of a depth difference between any two leaf nodes (LN) equal to zero or one.

11. A computer program product, comprising:

a non-transitory computer readable medium for designing an industrial product modeled with a binary tree; and

code means stored on the computer readable medium and configuring a computer system to take the steps of:

modeling the industrial product with an optimal binary tree having leaf nodes (LN) representing basic volumes, non-leaf nodes representing binary commutative operation combining volumes;

performing a design operation triggering adding or removing of a leaf node (LN) of the binary tree;

modifying the binary tree by minimizing a number of weak leaf nodes (WLN) it contains while maintaining the optimal binary tree (OBT), and

when the design operation is removing of a leaf node (LN):

determining as a non-optimal leaf node (LN) on the binary tree, which is no longer optimal, the leaf node (LN) with the smallest depth;

determining, in a path from the non-optimal leaf node (LN) to the root node (RN), a pivot node (PN) which is the first node which sub-tree is non-optimal;

determining, in said non-optimal sub-tree of the pivot node (PN), a V-sub-tree with the deepest depth, the V-sub-tree being a sub-tree having two leaf nodes (LN); and

switching the non-optimal leaf node (LN) and the V-sub-tree;

wherein a weak leaf node (WLN) is a leaf node (LN) of an optimal binary tree such that, when removed, the binary tree is not optimal anymore, and wherein an optimal binary tree is a binary tree having an absolute value of a depth difference between any two leaf nodes (LN) equal to zero or one.

12. An apparatus for designing an industrial product modeled with a binary tree comprising:

a computer system performing a design operation triggering adding or removing of a leaf node (LN) of a binary tree, said binary tree having leaf nodes (LN) representing basic volumes and non-leaf nodes representing binary commutative operation combining volumes;

processor means coupled to the computer system and idealizing the binary tree, including modifying the binary tree while maintaining an optimality of the tree (OBT) by minimizing a number of weak leaf nodes (WLN), a weak leaf node (WLN) being a leaf node (LN) such that, when removed, the binary tree is not optimal anymore, an optimal binary tree having an absolute value of a depth difference between any two leaf nodes (LN) equal to zero or one; and

when the design operation is removing of a leaf node (LN):

determining as a non-optimal leaf node (LN) on the binary tree, which is no longer optimal, the leaf node (LN) with the smallest depth;

determining, in the path from the non-optimal leaf node (LN) to the root node (RN), a pivot node (PN) which is the first node which sub-tree is non-optimal;

determining, in said non-optimal sub-tree of the pivot node (PN), a V-sub-tree with the deepest depth, the V-sub-tree being a sub-tree having two leaf nodes (LN); and

switching the non-optimal leaf node (LN) and the V-sub-tree.

13. The apparatus as claimed in claim 12 wherein, when the design operation is the adding of a new leaf node (LN), one of the computer system and the processor means:

determines a path of nodes by traversing the binary tree, from a root node (RN) to an existing leaf node (LN), by iteratively choosing a next node defining a sub-tree having the smallest number of leaf nodes (LN); and

adds the new leaf node (LN) at the existing leaf node (LN) ending path.

14. The apparatus as claimed in claim 12 , further comprising computer means for providing a predefined tree for inputting a binary tree adapted for designing a specific industrial product.

15. The apparatus as claimed in claim 12 wherein, any combination of:

for each node of the binary tree, a maximum depth of its sub-tree is stored in a memory;

for each node of the binary tree, a minimum depth of its sub-tree is stored in a memory; and

for each node of the binary tree, a number of leaf nodes (LN) of its sub-tree is stored in a memory.

16. The apparatus as claimed in claim 12 wherein the binary tree is obtained by converting a non-optimal binary tree to an optimal binary tree (OBT).

17. The apparatus as claimed in claim 16 wherein the processor means further, as a preliminary step of idealizing any binary tree representing an industrial product, performs one of:

translating a linear list of leaf nodes (LN) representing basic volumes into an ideal binary tree (IBT) wherein the leaf nodes (LN) are the said basic volumes; and

using a library of pre-computed ideal binary trees according to a relevant range of leaf nodes (LN) number, and reading the number of leaf nodes (LN) representing basic volumes of a linear list of the binary tree, to load the pre-computed ideal binary tree (IBT) corresponding to the leaf nodes number and to set the leaf nodes (LN) of the pre-computed binary tree to the basic volumes of the linear list.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 24, 2014
From: RAMEAU, JEAN-FRANCOIS
To: DASSAULT SYSTEMES
Reel/Frame 034031/0166 →
Priority Claims (1)
EP 13306244 · Sep 11, 2013 · regional
Continuity (1)
Related Publication 20150073753A1 · Mar 12, 2015