Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 239

Тема: Временная тема

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Вот основа алгоритма:
    uint NextUInt()
    {
    uint t= (x^(x<<11));
    x=y;
    y=z;
    z=w;
    return (w= (w^(w>>19))^(t^(t>>8)));
    }

    перед использованием необходимо инициализировать переменные t,x,y,z,w. Это можно сделать по часам, анализируя данные в файлах - к примеру Log.txt и debug.txt или просто храня посл. значения в retain.

    Алгоритм считается достаточно хорошим с периодом повторяемости 2^50 и высокой скоростью.
    После пристального взгляда, оказывается, что это и есть xorshift128 (1 в 1 как на немецкой wikipedia: https://de.wikipedia.org/wiki/Xorshift#Initialisierung)
    Но, согласно wikipedia, период не 250, а 2128 − 1.

    Прогнал этот алгоритм через nist -- он проходит все тесты (10 из 10 на длине 1'000'000 бит).
    Изредка не проходят тесты NonOverlappingTemplate (они выполняются раз 500 и не проходят около 10-и из них)


    В общем, шах и мат. Ни "генератор Петрова", "ни генератор OSCAT" не выдерживают тестов.

    xorshift128 тривиально реализуется на ПЛК/ПР (и там и там есть 32bit unsigned int),

    Цитата Сообщение от capzap Посмотреть сообщение
    Вся его аргументация последние пару страниц сводится к переходу на личности
    capzap, я требую извинений.
    Или хотя бы признания, что были неправы.
    Последний раз редактировалось Владимир Ситников; 16.07.2016 в 11:46.

  2. #2
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,650

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    После пристального взгляда, оказывается, что это и есть xorshift128 (1 в 1 как на немецкой wikipedia: https://de.wikipedia.org/wiki/Xorshift#Initialisierung)
    Прогнал этот алгоритм через nist -- он проходит все тесты (10 из 10 на длине 1'000'000 бит).
    Изредка не проходят тесты NonOverlappingTemplate (они выполняются раз 500 и не проходят около 10-и из них)


    В общем, шах и мат. Ни "генератор Петрова", "ни генератор OSCAT" не выдерживают тестов.

    xorshift128 тривиально реализуется на ПЛК/ПР (и там и там есть 32bit unsigned int),


    capzap, я требую извинений.
    Или хотя бы признания, что были неправы.
    Хм, чтоб появился хоть какой то результат, пришлось давить на больное, ну чтож извините
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  3. #3

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Хм, чтоб появился хоть какой то результат, пришлось давить на больное, ну чтож извините
    capzap, вы не правы. Доказывать очевидные вещи мало кто будет.
    Вы ещё давите, чтобы я доказал, что 2*2=4.

    У меня спортивный интерес был: способны ли вы признать неправоту, без оправданий.

  4. #4
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,650

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    capzap, вы не правы. Доказывать очевидные вещи мало кто будет.
    Вы ещё давите, чтобы я доказал, что 2*2=4.

    У меня спортивный интерес был: способны ли вы признать неправоту, без оправданий.
    о какой правоте идет речь, я требовал вначале тест для среды КДС, затем уже хотя бы решение этого метода для КДС, Вы целый день упирались. Малого того и даже сейчас в тесте, Вы не честны до конца, намеренно или нет, уж не знаю "уничтожили" главную идею генератора зависимость от времени, каким то нелепым прибавлением десятки.
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  5. #5
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,650

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    о какой правоте идет речь, я требовал вначале тест для среды КДС, затем уже хотя бы решение этого метода для КДС, Вы целый день упирались. Малого того и даже сейчас в тесте, Вы не честны до конца, намеренно или нет, уж не знаю "уничтожили" главную идею генератора зависимость от времени, каким то нелепым прибавлением десятки.
    ну раз меня начали игнорить отвечу сам себе с наглядными картинками, случай который тестил Ситников имеет характерный след повтора, и реальный оскатовский метод имеет более менее похожий отпечаток белого шума. Естественно такой подход не пройдет ни один тест

    подольше генерировал различные способы, вообщем нет разницы между тем что используется в оскат и метод взятый у Филоненко
    Изображения Изображения
    • Тип файла: png owen.png (30.3 Кб, Просмотров: 22)
    • Тип файла: png owl112.png (33.3 Кб, Просмотров: 16)
    Последний раз редактировалось capzap; 16.07.2016 в 16:42.
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  6. #6

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    ну раз меня начали игнорить отвечу сам себе с наглядными картинками, случай который тестил Ситников имеет характерный след повтора, и реальный оскатовский метод имеет более менее похожий отпечаток белого шума. Естественно такой подход не пройдет ни один тест
    capzap, я гляжу, вы большой мастак верить в карго-культ. Откуда уверенность, что в ПЛК T_PLS_MS будет хорошо фонить? Это где-то в документации гарантировано? Поясню: запросто может оказаться, что T_PLS_MS возвращает одно и то же значение, или только значения кратные 16 (на windows xp, например, так) или ещё как.

    Я проверял простые случаи: интервал цикла == 10мс, вызов rdm 1 раз за цикл. Поэтому и +10.
    Если уж так неймётся, проверил такой вариант:
    Код:
    tn = clock() * 1000.0/ CLOCKS_PER_SEC;
    tc = bit_count(tn);
    tn |= (tn&(1<<(2)))<<(31-2);
    tn |= (tn&(1<<(5)))<<(30-5);
    tn |= (tn&(1<<(4)))<<(29-4);
    tn |= (tn&(1<<(1)))<<(28-1);
    tn |= (tn&(1<<(0)))<<(27-0);
    tn |= (tn&(1<<(7)))<<(26-7);
    tn |= (tn&(1<<(6)))<<(25-6);
    tn |= (tn&(1<<(3)))<<(24-3);
    tn = rol(tn, bit_count(tn)) | 0x80000001;
    tn = tn % 71474513 + (tc + 77);
    rdm = ((float)tn) / 10000000.0 * (E - (last<0.0 ? 0 : (last>1.0?1.0:last) ));
    rdm = rdm - floor(rdm);
    Такая вариация завалила вообще все тесты.


    Цитата Сообщение от capzap Посмотреть сообщение
    ЗЫ добавил метод xorshift в исполнении Филоненко, даже на такой малой области картинки встречаются сгустки одинаковых значений, субъективно поболее чем в оскатовской
    1) Какие начальные значения для x, y, z, w использовали. Правильные?
    2) Вы сделайте картинку для SecureRandom -- посмотрите как "должна" выглядеть картинка хорошего генератора. Возможно, у xorshift как раз и получается правильная.
    Последний раз редактировалось Владимир Ситников; 16.07.2016 в 16:47.

  7. #7
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,650

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    Откуда уверенность, что в ПЛК T_PLS_MS будет хорошо фонить? Это где-то в документации гарантировано?
    это функция менее бесполезна если генератор потребуется для не однократного применения,например набивка массива, чем значение температуры. которое уж точно обновляется один раз в цикл плк. Это также коснется и метода Филоненко, если производить инициализацию всех переменных в разные циклы, то это уже будет не функция а ФБ, т.ч. математика математикой, но плк это особое устройство со своими ограничениями и не всё тут будет работать как на ПК
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  8. #8

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    о какой правоте идет речь
    Тут вы не правы:
    Цитата Сообщение от capzap Посмотреть сообщение
    Вся его аргументация последние пару страниц сводится к переходу на личности
    И тут:
    Цитата Сообщение от capzap Посмотреть сообщение
    поэтому Ваш ярлык о моем невежестве субъективно и только в Вашем мозгу
    Ярлык о невежестве не только субъективен, но и объективен.

    И тут снова неправы:
    Цитата Сообщение от capzap Посмотреть сообщение
    не надо здесь высказывать свое мнение что лучше а что нет. Ваши все ссылки касаются программ для других ОС и никак не описаны для контроллеров
    Мои ссылка касаются законов математики, а она одинаково работает как на "других ОС", так и на ПЛК.

    И тут неправы:
    Цитата Сообщение от capzap Посмотреть сообщение
    я вобщем то не сомневался что Вы начнете "пальцы гнуть", что в АСУТП всё плохо

  9. #9
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,650

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    Тут вы не правы:
    ок, услышал, а мне вот этого хватает
    А факт того, что они используют "умножение на e и на pi" намекает на то, что это "наколеночная реализация"
    и вот нежданчик
    Если не понимаете, что для ГСЧ константы крайне важны, то поймите же это наконец
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  10. #10

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    ок, услышал, а мне вот этого хватает и вот нежданчик
    Расшифруйте. Не понимаю что хотите сказать этими двумя цитатами.

Страница 1 из 2 12 ПоследняяПоследняя

Похожие темы

  1. Тема для диплома
    от Gordan007 в разделе Трёп (Курилка)
    Ответов: 13
    Последнее сообщение: 18.01.2014, 12:08
  2. Бродит тема..
    от energohran в разделе Разработки
    Ответов: 3
    Последнее сообщение: 10.04.2012, 12:53
  3. МОДУС: тема защиты прошивки
    от Elka в разделе Модус 5684-0
    Ответов: 1
    Последнее сообщение: 28.11.2011, 22:39
  4. Язык ST. Временная задержка.
    от neoarey в разделе ПЛК1хх
    Ответов: 10
    Последнее сообщение: 26.03.2011, 01:15
  5. Ответов: 61
    Последнее сообщение: 12.09.2008, 09:49

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •