Подобно функции диаграммы в MS Excel, данный набор чисел генерирует математическое уравнение для описания набора

Я пытаюсь создать прототип архивного формата, который может лучше пережить повреждение данных. Моя схема состоит в том, чтобы преобразовать каждый символ в десятичную и затем построить данные.

Например:

Немного _

83 111 109 101 32 …….. 115

После построения этих ^ чисел ^ можно описать с помощью функции: -18.04 * ln (x) + 124.14

Поскольку каждый набор чисел будет отображаться с использованием натурального логарифма, я планирую добавить число с плавающей точкой в ​​конец каждой строки в виде [is_neg] [first_num] [second_num], например, 11804124,14

Первое число всегда будет логическим значением, представляющим, является ли оно отрицательным или положительным.
Следующие четыре числа всегда будут коэффициентом ln.
Последние 5 чисел всегда будут постоянными. Если это меньше чем сто, ему будет предшествовать 0.

Ничто из этого не важно. Я подумал, что это лучший способ представить данные. Если у кого-то есть идея получше, я бы хотел ее услышать (серьезно).

В настоящее время я делаю это в Excel. Я выделяю цифры, мастер диаграмм и т. Д., Добавляю логарифмическую линию графика.

Вот мой вопрос. Есть ли способ, алгоритмически, дать набор из двух или более чисел для генерации логарифмической функции? Было бы очень мило, если бы где-то для этого был заранее определенный класс. Я пытался искать вокруг, но не мог ничего найти. Я подумал, что .Net может что-то для этого, учитывая, что это особенность Excel.

Кстати, на всякий случай, если кому-то интересно, я планирую добавить добавление уравнения в конец строки (как я уже говорил ранее). Для обнаружения и исправления повреждения архива я собираюсь обойти каждую строку и вычислить уравнение, которое лучше всего описывает эту строку. Если это значение слишком велико (скажем, более 20%), я сделаю вывод, что либо архив слишком поврежден для восстановления, либо метаданные повреждены.

Если заданное значение находится в пределах допуска, мой план восстановления архива состоял бы в том, чтобы сделать перестановку для каждого значения в строке и вычислить уравнение, связанное с ним. Мутантный набор, который наиболее точно соответствует функции, будет считаться «правильным» набором.

Сложно, да? Я также открыт для идей. Большое спасибо за любую помощь заранее!

0

Решение

То, что вы спрашиваете, вероятно, лучше всего рассчитывается с использованием линейная регрессия (с помощью приближение наименьших квадратов) данных, после преобразования указанных данных с использованием логарифма.

В целом, я сомневаюсь, что ваша схема будет очень полезна, поскольку вычисление этих логарифмов довольно сложно и восстановление данных по этой линии будет трудным. Для идей по этому вопросу, посмотрите на прямое исправление ошибок.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]