Floating-Point CAD Compression Using Integer Delta Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for compressing CAD files face challenges in achieving lossless and stable compression across different platforms, particularly due to issues with floating-point arithmetic operations, which can lead to varying results on different hardware and software configurations, and often result in inefficient compression rates and storage size optimization.

Innovation Solution

A computer-implemented method that iteratively computes and stores bit sequences representing differences between target actual values and predicted values, using integer operations to emulate floating-point arithmetic, ensuring stability and losslessness across platforms, and applies this method to structured sets of floating-point values in CAD files.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If floating-point arithmetic operations are used for compression, then compression algorithms can be implemented, but results vary across different hardware and software platforms leading to instability

Engineering Contradiction:
Improvecompression algorithm implementationVSAvoidcompression stability across platforms
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent replaces floating-point arithmetic operations with integer arithmetic operations. Integer operations are used to manipulate the exponent and mantissa components of floating-point numbers, eliminating platform-specific floating-point behavior while maintaining compression functionality. This substitution ensures deterministic results across all platforms.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent introduces an intermediary representation by decomposing floating-point numbers into their component parts (sign, exponent, mantissa) and performing operations on these components as integers. This intermediary approach allows the compression algorithm to work with floating-point data while using only stable integer arithmetic operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If traditional compression methods are used on CAD files, then some compression is achieved, but lossless compression with high compression rates is difficult to achieve

Engineering Contradiction:
Improvestorage size reductionVSAvoidcompression losslessness
Core Design Contradiction:
Quantity of substanceVSLoss of information

Solution Approach 1:

The patent changes the parameters being compressed by focusing on the differences between consecutive floating-point values rather than compressing the values directly. By encoding the delta between adjacent values using integer arithmetic, the patent achieves both lossless compression and higher compression rates, as the differences are typically much smaller than the original values.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent segments the floating-point number into its component parts (sign, exponent, mantissa) and processes each component separately using integer operations. This segmentation allows for precise control over the compression process while maintaining the ability to reconstruct the original value exactly, achieving lossless compression.

Inventive Principle:
Principle #1Segmentation

3Productivity

If floating-point values are compressed directly, then compression can be performed, but platform-specific floating-point arithmetic leads to inconsistent results

Engineering Contradiction:
Improvecompression operationVSAvoidresult consistency across platforms
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The patent substitutes floating-point arithmetic with integer arithmetic throughout the compression process. By representing floating-point numbers as combinations of integer components and performing all calculations using integer operations, the patent eliminates platform-specific floating-point behavior while maintaining compression productivity.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent changes from operating on floating-point values directly to operating on the integer components (exponent and mantissa) that make up floating-point representations. This parameter transformation enables consistent cross-platform operation while preserving the ability to compress floating-point data effectively.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP2387004B1Lossless compression of a structured set of floating point numbers, particularly for CAD systems
Publication Date: 2016.12.14 DASSAULT SYSTEMES SA
  • EP2387004B1 patent drawingFigure 1
  • EP2387004B1 patent drawingFigure 2
  • EP2387004B1 patent drawingFigure 3

AI summary

The invention relates to a computer-implemented method for compressing numerical data comprising a structured set of floating point actual values. A floating point value is defined by a sign, an exponent and a mantissa. The method comprises computing a floating point predicted value related to a target actual value of the set. The computing includes performing operations on integers corresponding to the sign, to the exponent and/or to the mantissa of actual values of a subset of the set. The method also comprises storing a bit sequence representative of a difference between integers derived from the target actual value and the predicted value. Such a method is particularly efficient for reducing the storage size of a CAD file.