Показано с 1 по 10 из 771

Тема: Обсуждение макросов для OWEN Logic

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

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

    По умолчанию

    Цитата Сообщение от Владимир Ситников Посмотреть сообщение
    Слышали, что ГСЧ можно проверить "на случайность"? Как бы не оказалось, что случайности в вашем "восне" нет.
    "Случайность" отлично генерируется на внешних "случайностях" - момент запроса, внешний генератор шума... Все детерминированные алгоритмы "по формулам" дают только "псевдослучайность".

  2. #2

    По умолчанию

    Цитата Сообщение от pop70 Посмотреть сообщение
    "Случайность" отлично генерируется на внешних "случайностях" - момент запроса, внешний генератор шума... Все детерминированные алгоритмы "по формулам" дают только "псевдослучайность".
    Если ГСЧ "имени ParuSnow" будет возвращать 90% единиц и 10% нулей, то у вас повернётся язык назвать такой генератор "случайным"? Разумеется, уже есть готовые библиотеки подобных статистических тестов (не для ОЛ, а для генераторов на Си), и тест на "равномерность нулей и единиц" далеко не единственный.

  3. #3

    По умолчанию

    Цитата Сообщение от Владимир Ситников Посмотреть сообщение
    Если ГСЧ "имени ParuSnow" будет возвращать 90% единиц и 10% нулей, то у вас повернётся язык назвать такой генератор "случайным"?
    А почему нет? Если кроме соотношения нулей/единиц нет других закономерностей ... У случайностей бывают разные распределения.

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

    По умолчанию

    Цитата Сообщение от pop70 Посмотреть сообщение
    А почему нет? Если кроме соотношения нулей/единиц нет других закономерностей ... У случайностей бывают разные распределения.
    Да Вы бы послушали Ситникова, как раз он поведает о ситуации которая случилась со мной, я долго пытался его вынудить показать генератор для целочисленных в программируемых устройствах, типа плк, пр. Как раз надеялся что столкнется с переполнением диапазона, ан нет, предлагаемый им генератор работает с 24 битами. Это к тому что Вы обращаете вниание на 16битные счетчики в системе с типами данных только двойное слово
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

  5. #5

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Да Вы бы послушали Ситникова, как раз он поведает о ситуации которая случилась со мной, я долго пытался его вынудить показать генератор для целочисленных в программируемых устройствах, типа плк, пр. Как раз надеялся что столкнется с переполнением диапазона, ан нет, предлагаемый им генератор работает с 24 битами. Это к тому что Вы обращаете вниание на 16битные счетчики в системе с типами данных только двойное слово
    Ну какое может быть переполнение в ГСЧ на "кольце"?
    Вы когда "в бутылочку" играете ждёте "переполнения"?
    По его же мнению, ГСЧ, работающий с 24 из 32 битов, таковым являться не может, т.к., всегда выдаёт одно и то же значение в 8 битах, которые не использует
    И как можно не обращать внимание на ФБ, ограничивающий возможности среды программирования, без всяких объективных на то оснований?
    Я, может быть, не прав, но обоснований почему в ОЛ не может быть 32хразрядного счётчика, я не увидел, а реализованные такие счётчики увидел, и сам легко реализовал.
    В каких ещё ФБ зарыты подобные грабли (невозможность работы с полным диапазоном переменной)?

  6. #6

    По умолчанию

    Цитата Сообщение от pop70 Посмотреть сообщение
    По его же мнению, ГСЧ, работающий с 24 из 32 битов, таковым являться не может, т.к., всегда выдаёт одно и то же значение в 8 битах, которые не использует
    Но-но!

    Обсуждение ГСЧ никакой пользы "макросам ОЛ" (см название текущей темы) не принесет, а народ получит кучу спама. Наверняка есть море подписанных на эту тему.

    Поэтому предлагаю ГСЧ тут не обсуждать.
    Разумеется, capzap прав (с 24 битами речь была про float, и действительно в одно random float значение можно только 24 бита запихнуть). Ну и я тоже, разумеется, прав. Если есть желание пообсуждать ГСЧ -- создавайте тему в курилке.

    Если честно, то я не понимаю смысла выкладывать в этой теме ГСЧ непонятного качества, когда есть проверенные алгоритмы типа xorshift128. Если это проект типа "мой первый макрос в ОЛ" -- не вопрос, пущай будет в отдельной теме. Но зачем подкладывать свинью другим? Много же кто просто возьмёт макрос и прилепит в проект.
    А потом окажется, что постоянно перегорает "красная" лампочка, т.к. она на ГСЧ "чаще выпадает".

  7. #7
    Пользователь Аватар для ParuSnow
    Регистрация
    23.05.2017
    Адрес
    Мордовия
    Сообщений
    74

    По умолчанию

    Владимир Ситников...
    Что-то не так?
    Вы сначало проверьте потом утверждайте что не рабочий.
    Я не утверждаю что он чёткий!
    PS:
    Но предупреждаю что перед использованием в проектах хорошенько проверьте на ошибки
    Кстати он генерирует числа от 1 до 10
    У него вместо нуля 10^
    Последний раз редактировалось ParuSnow; 31.07.2017 в 18:07.

  8. #8

    По умолчанию

    Цитата Сообщение от Владимир Ситников Посмотреть сообщение
    Но-но!

    Обсуждение ГЧ никакой пользы "макросам ОЛ" (см название текущей темы) не принесет, а народ получит кучу спама. Наверняка есть море подписанных на эту тему.

    Поэтому предлагаю ГСЧ тут не обсуждать.
    Разумеется, capzap прав (с 24 битами речь была про float, и действительно в одно random float значение можно только 24 бита запихнуть). Ну и я тоже, разумеется, прав. Если есть желание пообсуждать ГСЧ -- создавайте тему в курилке.

    Если честно, то я не понимаю смысла выкладывать в этой теме ГСЧ непонятного качества, когда есть проверенные алгоритмы типа xorshift128. Если это проект типа "мой первый макрос в ОЛ" -- не вопрос, пущай будет в отдельной теме. Но зачем подкладывать свинью другим? Много же кто просто возьмёт макрос и прилепит в проект.
    А потом окажется, что постоянно перегорает "красная" лампочка, т.к. она на ГСЧ "чаще выпадает".
    Ну, если неправильно использовать даже "самый-самый правильный ГСЧ", то легко пережечь только одну лампочку
    Задай диапазон ГСЧ 1-10, и включай зелёную только при 11
    Оно, конечно, несколько офтоп. Но для полного понимания. Если Ваш ГСЧ пишет только 24 бита, то и "случайным" он может быть только в дискретных точках в этом диапазоне. И не важно как потом представлять эти биты - флоатом, или интом, попугаями или ещё как. 2^24 степени вариантов - и не больше. 24 бита "случайности".
    Если "1 бит случайности", то отношение количества 0 и 1 в длинной последовательности выбора стремится к 1.
    Если не к 1, то просто "случайности" МЕНЬШЕ ОДНОГО БИТА. (Вспоминаем теорию информации). Но! Это не значит, что случайности нет, или она "неправильная".
    "Правильность" её определяется другим - отсутствием зависимости результата генерации от любого числа предыдущих генераций.
    Т.е., невозможностью однозначного вычисления результата , зная даже все предыдущие.
    Вот поэтому, все детерминированные алгоритмы умеют только "псевдослучайные", с более или менее длинной последовательностью.
    Для настоящей случайности, нужна случайность недетерминированная ничем (внешний источник), а задача алгоритма только максимально точно её "размазать" по диапазону, определённому этим алгоритмом, чтобы этот диапазон не заузить. - чтобы 24 бита, в которые алгоритм пишет эту случайность оказались случайными на все 24 бита, а не на 23.5, например.
    "Правильный" ГСЧ на 32 бита интов более "случаен", чем на 24 бита флоатов. Просто потому, что диапазон шире.
    Это как с возмущениями тут на отсутствие ФБ на равенство флоатов. Ну да! "В натуре" такое равенство разных чисел вообще невероятно, а для флоат-переменных, ограниченных длиной записи, вероятно ровно настолько же, насколько равенство интов этой же длины.
    "В натуре" 0.999(9) строго равно 1, а в программе такого не бывает никогда.
    Последний раз редактировалось pop70; 31.07.2017 в 18:06.

Похожие темы

  1. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Среда программирования OWEN Logic
    Ответов: 404
    Последнее сообщение: 25.08.2020, 15:17
  2. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Программируемые реле
    Ответов: 401
    Последнее сообщение: 28.07.2016, 19:46
  3. ПО OWEN Logic !!!
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 3
    Последнее сообщение: 11.10.2011, 15:33
  4. OWEN Logic 1.2.0.14b
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 40
    Последнее сообщение: 21.02.2011, 14:16
  5. OWEN Logic 1.1.0.11b
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 58
    Последнее сообщение: 12.10.2010, 20:55

Ваши права

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