MHB Creating Unique Solutions Beyond Existing Standards

  • Thread starter Thread starter Dirklin
  • Start date Start date
AI Thread Summary
The discussion centers on the need for a unique, lossless, and reversible algorithm for compressing a set of discrete values ranging from 0 to 65535. The algorithm must work for lists of any length and generate compact representations that occupy less space than the original data. Previous attempts using polynomial interpolation and regression have resulted in floating-point coefficients, which introduce errors and require more storage than desired. The goal is to construct functions, polynomials, or mathematical series that can accurately describe the initial set of values while adhering to the specified conditions. The efficiency of the algorithm is contingent on the input data's structure; if the data exhibits patterns, significant compression may be achievable, whereas uniformly random data poses challenges due to entropy preservation requirements.
Dirklin
Messages
1
Reaction score
0
Solutions must not be based on existing standards or rules. As unique as possible.

Mathematical description:
1. X is a given set of discrete values where 0 <= X <= 65535
2. The set of values is ordered and it goes from 0 to a N (where the length N, is some known, finite number)
3. The applied algorithm should work for a list of any length.
4. The operation must be lossless (the information must be retained 100%)
5. The operation must be reversible (we need to get back the original set of values).
6. The generated functions need to be represented in compact way that will require less space than it contains the initial set of values.
(For example. If there are 10 (16bit points = 2by/point) = 20 bytes we need a function that has coefficients which total size are less than 20 bytes.
Basically we need some knowledge or expert in the field of mathematics that is dealing with function analysis.
In general the set of numbers can be anything. Our problem is contained in the range of values from X € [0,65535] we tried several methods like polynomial interpolation, linear regression or polynomial regression.
We tried to interpolate with polynomials and got results but then the coefficients are floating point numbers and to save them
It requires 4 bytes. We are losing a compression and in addition floating point numbers have some kind of error representation.
There are some numbers that can’t be represented 100% by the floating point notation. This can lead to wrong reverse operations.
To summarize we need a way to construct any function, polynomial or even a set of mathematical series or even sequences of number that can describe the initial set of values. The initial set can be split on the least number of functions, polynomials, series or sequences that can meet upper 6 conditions.
 
Technology news on Phys.org
So basically you're asking for a lossless compression algorithm. An efficient algorithm will depend on the distribution of your input 16-bit words; if they have a certain structure, you can get big savings by exploiting this, so you need to look into that (simple example, if your input data consists of sine waves, all you need to store is the frequency and amplitude and you're done). If they are uniformly random with no structure whatsoever, you are out of luck as no such algorithm exists, for any reversible function must preserve the entropy of its input.
 
Dear Peeps I have posted a few questions about programing on this sectio of the PF forum. I want to ask you veterans how you folks learn program in assembly and about computer architecture for the x86 family. In addition to finish learning C, I am also reading the book From bits to Gates to C and Beyond. In the book, it uses the mini LC3 assembly language. I also have books on assembly programming and computer architecture. The few famous ones i have are Computer Organization and...
I have a quick questions. I am going through a book on C programming on my own. Afterwards, I plan to go through something call data structures and algorithms on my own also in C. I also need to learn C++, Matlab and for personal interest Haskell. For the two topic of data structures and algorithms, I understand there are standard ones across all programming languages. After learning it through C, what would be the biggest issue when trying to implement the same data...

Similar threads

Replies
32
Views
2K
Replies
4
Views
1K
Replies
7
Views
2K
Replies
6
Views
3K
Replies
17
Views
1K
Replies
4
Views
2K
Replies
8
Views
2K
Back
Top