Информация об изменениях

Сообщение Re[9]: [забыл математику] Оптимизация алгоритма от 20.09.2022 12:37

Изменено 20.09.2022 12:39 xma

Re[9]: [забыл математику] Оптимизация алгоритма
Здравствуйте, Real 3L0, Вы писали:

R3>flag_test_optimal2 = True

это мой код — всегда верно

R3>flag_test_Serge_Novikoff = False

это код от Serge_Novikoff — часто выдаёт неверный результат

R3>flag_test_Serge_Novikoff_fixed = True

это пофикшенный мною код (посредством использования DecimalEpsilon) от Serge_Novikoff — теперь тоже всегда верно

R3>Эээ, что-то это мне не нравится.

R3>Девятки эти в периоде. Из-за них и значения кажутся не совпадающими, пока не округлишь.

какие проблемы, "Вася" — округляй до двух знаков после запятой результат .. (если тебе так надо)

R3>Рассчитывать DecimalEpsilon — это как? Под каждый набор входящих атрибутов?


DecimalEpsilon — это точность сравнения например с нулем или около окрестностей точки (числа с плавающей точкой),

ну т.е. если DecimalEpsilon = 0.000001, то все числа по модулю меньшие этого числа считаются нулём ..

R3>У Serge_Novikoff более понятный алгоритм (если без DecimalEpsilon)


так он у него неверный смотри что он (ret_opt_Serge_Novikoff) выдаёт (в твоей цитате) в сравнении с твоими оригинальным кодом (ret_original)

мой код (ret_opt2) и пофикшенный от Serge_Novikoff c DecimalEpsilon выдают результат (ret_opt_Serge_Novikoff_fixed) с точностью неотличимой от оригинала (ret_original) до одной миллионной (можно повысить или понизить точность, уменьшая или увеличивая значение константы DecimalEpsilon)
Re[9]: [забыл математику] Оптимизация алгоритма
Здравствуйте, Real 3L0, Вы писали:

R3>flag_test_optimal2 = True

это мой код — всегда верно

R3>flag_test_Serge_Novikoff = False

это код от Serge_Novikoff — часто выдаёт неверный результат

R3>flag_test_Serge_Novikoff_fixed = True

это пофикшенный мною код (посредством использования DecimalEpsilon) от Serge_Novikoff — теперь тоже всегда верно

R3>Эээ, что-то это мне не нравится.

R3>Девятки эти в периоде. Из-за них и значения кажутся не совпадающими, пока не округлишь.

какие проблемы, "Вася" — округляй до двух знаков после запятой результат .. (если тебе так надо)

R3>Рассчитывать DecimalEpsilon — это как? Под каждый набор входящих атрибутов?


DecimalEpsilon — это точность сравнения например с нулем или около окрестностей точки (числа с плавающей точкой),

ну т.е. (например) если DecimalEpsilon = 0.000001, то все числа по модулю меньшие этого числа считаются нулём ..

R3>У Serge_Novikoff более понятный алгоритм (если без DecimalEpsilon)


так он у него неверный смотри что он (ret_opt_Serge_Novikoff) выдаёт (в твоей цитате) в сравнении с твоими оригинальным кодом (ret_original)

мой код (ret_opt2) и пофикшенный от Serge_Novikoff c DecimalEpsilon выдают результат (ret_opt_Serge_Novikoff_fixed) с точностью неотличимой от оригинала (ret_original) до одной миллионной (можно повысить или понизить точность, уменьшая или увеличивая значение константы DecimalEpsilon)