реклама

У дома - Гипсокартон
Сензор за случайни числа. Руснаците създадоха „първия в света“ биологичен генератор на случайни числа. Как работи той? Какво прави „Кодът за сигурност“?

Има три коренно различни различни начиниполучаване на числа, използвани като случайни: физически, таблични и алгоритмични.

Смята се, че първият опит за създаване на физически генератор на случайни числа датира от 3500 г. пр.н.е. и е свързано с настолна игра senet, древноегипетско социално забавление. Според съвременните реконструкции на правилата на играта, четири плоски пръчици, едната страна на които е бяла, а другата страна е черна, са използвани за определяне на броя точки, отбелязани от всеки играч, и реда на ходовете в тази игра. Пръчките се хвърляха едновременно и в зависимост от комбинацията от цветове, които се паднаха, се определяха допълнителни възможности за играчите. В началото на 20в. поредици от произволни числа бяха симулирани ръчно - чрез хвърляне на монета или зарове, подреждане карти за игра, рулетка, изваждане на топки от урна и др. Съвременните физически (хардуерни) сензори са специални устройства, генериране на случайни числа на базата на трансформация на случаен шум от естествен или изкуствен произход (термичен шум, ефект на изстрел във вакуумни тръби, радиоактивен разпад и др.). Например кола ERNIE 4 (електронно оборудване за индикатор на случайни числа),

  • 1 Понякога, макар и рядко, разпределението, определено от таблицата 0 1 ... 8 9, се счита за стандартно
  • 0.1 0.1 ... 0.1 0.1/ който се използва за определяне на печелившите числа в месечната британска лотария, като източник случайни променливиизползва топлинен шум на транзистори. Физическият метод за получаване на последователност от произволни числа има характеристики, които са недостатъци за симулационния модел. Те включват, на първо място, необходимостта от специални мерки за осигуряване на стабилността на източника на сигнал, преобразуван в произволни числа, и невъзможността за възпроизвеждане на получената последователност от произволни числа.

Таблиците със случайни числа нямат тези недостатъци. Нека обясним какво се има предвид под таблица със случайни числа. Да приемем, че сме внедрили ннезависими експерименти, в резултат на които са получили случайни числа a, a 2, osdg. Записването на тези числа (по реда на появяване и под формата на правоъгълна таблица) ще даде това, което се нарича таблица на случайни числа. Използва се по следния начин. По време на изчисленията може да се нуждаем или от произволна цифра, или от произволно число. Ако се изисква произволно число, тогава можем да вземем произволно число от тази таблица. Същото важи и за случайно цяло число - за всяка цифра можете да изберете произволна цифра. Ако се нуждаем от произволно число 0 k от следващите цифри сс, и 2 , ос/ и приемем, че 8 = (Hoco^.-.o^. В този случай, в случай на „идеална“ таблица от произволни цифри , можем да избираме цифри от него произволно, възможно в ред, можете да използвате всеки алгоритъм за избор, който не зависи от стойностите на номерата на таблицата, да започнете от всяко място в таблицата, да четете във всяка посока.

Първите таблици със случайни числа са получени с помощта на рулетки. Такива таблици бяха публикувани няколко пъти под формата на книга. Една от най-известните таблици, публикувана през 1927 г., съдържа над 40 000 произволни числа, „взети на случаен принцип от доклади от преброяването“.

Историческа справка

Леонард Типет (Леонард Хенри Калеб Типет, 1902-1985) - английски статистик, ученик на К. Пиърсън и Р. Фишър. През 1965-1966г - президент на Кралското статистическо дружество. Някои важни резултати в теорията на екстремните стойности са свързани с неговото име, например разпределението на Фишър-Типет и теоремата на Фишър-Типет-Гнеденко.

По-късно са проектирани специални устройства (машини), които механично генерират произволни числа. Първата такава машина е използвана през 1939 г. от M. J. Kendall и B. Babington-Smith за създаване на таблици, съдържащи 100 хиляди произволни цифри. През 1955 г. компанията RAND Corporationпубликува добре познатите таблици, съдържащи милион произволни цифри, получени от друга машина от този тип. Практическа употребатаблиците със случайни числа в момента са ограничени, като правило, до проблеми, при които се използват методи за случаен избор

проби, например при социологически изследвания или при извършване на статистически приемо-контролен контрол на качеството на частични продукти за различни цели.

Това е интересно

В Русия е в сила GOST 18321-73 (ST SEV 1934-79), който установява правилата за избор на единици продукти в извадката при извършване на статистически контрол на качеството на приемане, статистически методи за анализ и регулиране технологични процесиза всички видове единични изделия за промишлени и технически цели и стоки за широко потребление. В него се посочва по-специално, че при избора на единици продукти за извадката „се използват таблици с произволни числа съгласно ST SEV 546-77“.

прилагайте многократно; всички числа са лесни за възпроизвеждане; и предлагането на числа в такава последователност е ограничено. Въпреки това, поредица от псевдослучайни числа има очевидно предимство пред таблица: има прости формули за изчисляване на псевдослучайно число, докато само 3-5 команди се изразходват за получаване на всяко число, а програмата за изчисляване заема само няколко клетки в шофиране.

Има много алгоритми за получаване на последователности от псевдослучайни числа; реализациите на такива алгоритми, наречени сензори (генератори) на псевдослучайни числа, са описани доста подробно в специализираната литература. Нека посочим няколко от най-известните алгоритми.

  • Tippett L. Числа на произволна извадка. Лондон: Cambridge University Press, 1927 г.
  • Вижте: Knuth D.E. 3-то изд. М.: Уилямс, 2000. Т. 2. Гл. 3. Случайни числа.

19.09.2017 г., вторник, 13:18 ч., московско време , Текст: Валерия Шмирова

Компанията Security Code, разработчикът на криптографския комплекс Continent, получи патент за биологичен сензор за случайни числа. Това е точно биологичен сензор, тъй като случайността се основава на реакцията на потребителя към показаното му изображение. Компанията уверява, че подобни технологии не са били патентовани досега в света.

Получаване на патент

Компанията Security Code получи патент за биологична сензорна технология за произволни числа. Според разработчиците при създаването на технологията е използван „нов подход за решаване на проблема с генерирането на произволни числа с помощта на компютър и човек“. Разработката вече се използва в редица продукти, включително Continent-AP, Secret Net Studio, Continent TLS и Jinn, както и в криптографската библиотека SCrypt.

Както обясниха представители на компанията за CNews, работата по сензора продължава вече три години. Състои се от научна, внедрителска и експериментална част. Трима души отговарят за научната част на компанията, целият екип от програмисти е участвал в разработката, а тестовете и експериментите са извършени от целия екип, който възлиза на няколкостотин души.

Технологични възможности

Новият сензор може да генерира произволни последователности на лични устройства - не са необходими допълнителни устройства или хардуерни добавки. Може да се използва при криптиране на данни и във всяка област, където има нужда от произволни двоични последователности. Според разработчиците с негова помощ ключовете за криптиране се създават много по-бързо мобилни устройства. Това свойство може да се използва за криптиране на данни или генериране електронен подпис.

Както е обяснено Алиса Коренева, системен анализатор на „Код за сигурност“, сензорът на компанията генерира произволни последователности въз основа на скоростта и точността на реакцията на ръката на потребителя към промените в изображението на екрана на компютъра или таблета. За въвеждане се използва мишка или сензорен екран. Изглежда така: кръговете се движат хаотично по екрана, някои от техните параметри се променят с времето. В някои моменти от време потребителят реагира на промените в изображението. Като се вземат предвид особеностите на двигателните му умения, това се отразява в произволната маса от битове.

Можете да генерирате произволни числови последователности въз основа на спонтанни човешки реакции

Извън криптографията сензорът може да се използва за генериране на произволни числа компютърни игриили да изберете победители в конкурса.

Научна новост

Както компанията обясни пред CNews, мн известни методиконструкции на сензори за случайни числа лъжат физични законии явления или детерминистични алгоритми. Последователностите могат да бъдат генерирани с помощта на компютър - в този случай нестабилността на някои части на компютъра и несигурността на хардуерните смущения се приемат като основа за случайност.

Новото в технологията на кода за сигурност се крие във факта, че източникът на случайност е реакцията на човек към променящо се изображение, което се показва на дисплея на устройството. Ето защо името на изобретението съдържа думата „биологичен“. Компанията съобщава, че нито тя, нито Роспатент са намерили патентовани аналози на технологията в Русия или в света. Въпреки това, като цяло такива техники са известни: например, последователност може да бъде генерирана въз основа на потребителски действия като щраквания или движения на мишката или натискане на клавиши на клавиатурата.

Според Коренева екипът за разработка анализира различни начинигенериране на случайни последователности. Както се оказа, в много случаи няма разумни оценки на производителността на генерирането или на статистическите свойства на генерираните последователности, или и двете. Това се дължи на трудността да се оправдае вече изобретена технология. Security Code твърди, че неговото изследване е дало разумни оценки на скоростта на генериране, успяло е да обоснове добри вероятностни характеристики и статистически свойства и е оценило ентропията, допринесла от човешки действия.

Продукти, които използват технология

"Континент" е хардуерен и софтуерен комплекс, предназначен за криптиране на данни. Използва се в руския публичен сектор, например в Министерството на финансите. Състои се от защитна стена и инструменти за създаване на VPN. Създаден е от компанията NIP Informzashita, а сега се разработва от Security Code LLC.

По-конкретно, сървърът за достъп „Континент“ и системата за криптографска защита на информацията „Континент-AP“ са модул за сигурен отдалечен достъп, използващ GOST алгоритми, а „Continent TLS VPN“ е система за осигуряване на защитен отдалечен достъп до уеб приложения, също използвайки GOST алгоритми за криптиране.

Secret Net Studio е цялостно решениеза защита на работни станции и сървъри на ниво данни, приложение, мрежа, операционна системаи периферна техника, която разработва и "Код за сигурност". Jinn-Client е предназначен за криптографска защита на информацията за създаване на електронен подпис и надеждна визуализация на документи, а Jinn-Server е софтуерно-хардуерен комплекс за изграждане на правно значими системи за управление на електронни документи.

Криптографската библиотека SCrypt, която също използва новия сензор, е разработена от Security Code, за да улесни прилагането на криптографски алгоритми в различни продукти. Това е единичен програмен код, който е проверен за грешки. Библиотеката поддържа криптографско хеширане, електронен подпис и алгоритми за криптиране.

Какво прави „Кодът за сигурност“?

"Код за сигурност" - Руска компания, която разработва софтуер и хардуер. Основана е през 2008 г. Обхватът на продукта е защита на информационните системи и привеждането им в съответствие с международните и индустриални стандарти, включително защита на поверителна информация, включително държавна тайна. Кодът за сигурност има девет лиценза Федерална службаза технически и експортен контрол (FSTEC) на Русия, Федералната служба за сигурност (FSB) на Русия и Министерството на отбраната.

Персоналът на компанията се състои от около 300 специалисти; продуктите се продават от 900 оторизирани партньори във всички региони на Русия и страните от ОНД. Клиентска база„Кодексът за сигурност“ включва около 32 хиляди държавни и търговски организации.

Детерминистични PRNG

Нито един детерминистичен алгоритъм не може да генерира напълно случайни числа, той може само да приближи някои свойства на случайни числа. Както каза Джон фон Нойман, " всеки, който има слабост към аритметичните методи за получаване на произволни числа, е грешен без съмнение».

Всеки PRNG с ограничени ресурси рано или късно преминава в цикли - започва да повтаря една и съща последователност от числа. Дължината на PRNG циклите зависи от самия генератор и е средно около 2n/2, където n е размерът на вътрешното състояние в битове, въпреки че линейните конгруентни и LFSR генератори имат максимални цикли от порядъка на 2n. Ако PRNG може да се сближи с цикли, които са твърде кратки, PRNG става предвидим и неизползваем.

Повечето прости аритметични генератори, макар и много бързи, страдат от много сериозни недостатъци:

  • Периодът/периодите са твърде кратки.
  • Последователните стойности не са независими.
  • Някои битове са "по-малко случайни" от други.
  • Неравномерно едномерно разпределение.
  • Обратимост.

По-специално, алгоритъмът на мейнфрейма се оказа много лош, което повдигна съмнения относно валидността на резултатите от много изследвания, използващи този алгоритъм.

PRNG с източник на ентропия или RNG

Точно както има нужда от генериране на лесно повторими последователности от произволни числа, има и необходимост от генериране на напълно непредвидими или просто напълно произволни числа. Такива генератори се наричат генератори на случайни числа(RNG - английски) генератор на случайни числа, RNG). Тъй като такива генератори най-често се използват за генериране на уникални симетрични и асиметрични ключове за криптиране, те най-често се изграждат от комбинация от криптографски PRNG и външен източникентропия (и точно тази комбинация сега обикновено се разбира като RNG).

Почти всички големи производители на чипове доставят хардуерни RNG с различни източници на ентропия различни методиза да ги изчисти от неизбежната предвидимост. В момента обаче скоростта, с която се събират случайни числа от всички съществуващи микрочипове (няколко хиляди бита в секунда), не съответства на скоростта на съвременните процесори.

В персоналните компютри авторите на софтуерни RNG използват много по-бързи източници на ентропия, като шум на звуковата карта или брояч на тактовия цикъл на процесора. Преди да стане възможно да се четат стойности на брояча на часовника, събирането на ентропия беше най-уязвимата точка на RNG. Този проблем все още не е напълно разрешен в много устройства (напр. смарт карти), които по този начин остават уязвими. Много RNG все още използват традиционни (остарели) методи за събиране на ентропия, като измерване на потребителски реакции (движение на мишката и т.н.), като например, или взаимодействие между нишки, както в Java secure random.

Примери за източници на RNG и ентропия

Няколко примера за RNG с техните източници и генератори на ентропия:

Източник на ентропия PRNG Предимства недостатъци
/dev/random на Linux Брояч на часовника на процесора, но се събира само по време на хардуерни прекъсвания LFSR, с изход, хеширан чрезТой „загрява“ за много дълго време, може да „заседне“ за дълго време или работи като PRNG ( /dev/urandom)
бял равнецот Брус Шнайер Традиционни (остарели) методи AES-256 иГъвкав дизайн, устойчив на крипто Отнема много време за „загряване“, много малко вътрешно състояние, зависи твърде много от криптографската сила на избраните алгоритми, бавно, приложимо изключително за генериране на ключове
Генератор от Леонид Юриев Шум на звуковата карта ? Най-вероятно добър и бърз източник на ентропия Няма независим, известен крипто-силен PRNG, наличен изключително като Windows
Microsoft Вграден в Windows, не се забива Малко вътрешно състояние, лесно за прогнозиране
Комуникация между нишки Все още няма друг избор в Java, има голямо вътрешно състояние Бавно събиране на ентропия
Chaos от Ruptor Брояч на тактовата честота на процесора, събира се непрекъснато Хеширане на 4096-битово вътрешно състояние на базата на нелинеен вариант на генератора Marsaglia Докато най-бързият от всички, голямото вътрешно състояние, не се „заклещи“
RRAND от Ruptor Брояч на тактовата честота на процесора Криптиране на вътрешно състояние с поточен шифърМного бързо, вътрешно състояние с произволен размер за избор, без „заседване“

PRNG в криптографията

Разновидност на PRNG са PRBG - генератори на псевдослучайни битове, както и различни поточни шифри. PRNG, подобно на поточните шифри, се състоят от вътрешно състояние (обикновено с размер от 16 бита до няколко мегабайта), функция за инициализиране на вътрешното състояние с ключ или семе(Английски) семе), вътрешни функции за актуализиране на състоянието и изходни функции. PRNG се разделят на прости аритметични, разбити криптографски и криптографски силни. Тяхната обща цел е да генерират поредици от числа, които не могат да бъдат разграничени от произволни чрез изчислителни методи.

Въпреки че много силни PRNG или поточни шифри предлагат много повече "случайни" числа, такива генератори са много по-бавни от конвенционалните аритметични генератори и може да не са подходящи за всякакъв вид изследвания, които изискват процесорът да е свободен за по-полезни изчисления.

За военни цели и в полеви условия не се използват само класифицирани синхронни криптографски силни PRNG (поточни шифри); Примери за добре познати криптографски силни PRNG са ISAAC, SEAL, Snow, много бавният теоретичен алгоритъм на Blum, Blum и Shub, както и броячи с криптографски хеш функции или криптографски силни блокови шифри вместо изходна функция.

Хардуер PRNG

Освен наследството, добре познати LFSR генератори, които са били широко използвани като хардуерни PRNG през 20 век, за съжаление много малко се знае за съвременните хардуерни PRNG (поточни шифри), тъй като повечето от тях са разработени за военни цели и се пазят в тайна . Почти всички съществуващи търговски хардуерни PRNG са патентовани и също така се пазят в тайна. Хардуерните PRNG са ограничени от строги изисквания за консумативна памет (най-често използването на памет е забранено), скорост (1-2 тактови цикъла) и площ (няколкостотин FPGA - или

Поради липсата на добри хардуерни PRNG, производителите са принудени да използват много по-бавните, но добре познати блокови шифри, налични под ръка (Computer Review No. 29 (2003)

  • Юрий Лифшиц. Курс “Съвременни проблеми на криптографията” Лекция 9: Псевдослучайни генератори
  • Л. Баръш. AKS алгоритъм за проверка на числа за първичност и търсене на константи на генератор на псевдослучайни числа
  • Владимир Желников. Псевдослучайни последователности от числа // Криптография от папирус до компютър М.: ABF, 1996.
  • random.org (английски) - онлайн услуга за генериране на произволни числа
  • Криптографски произволни числа
  • Теория и практика на генерирането на случайни числа
  • Цви Гутерман, Бени Пинкас, Цахи Рейнман. Анализ на генератора на случайни числа на Linux
  • Набор от статистически тестове за генератори на произволни и псевдослучайни числа за криптографски приложения NIST SP 800-22
  • Детерминистични PRNG

    Нито един детерминистичен алгоритъм не може да генерира напълно случайни числа, той може само да приближи някои свойства на случайни числа. Както каза Джон фон Нойман, " всеки, който има слабост към аритметичните методи за получаване на произволни числа, е грешен без съмнение».

    Всеки PRNG с ограничени ресурси рано или късно преминава в цикли - започва да повтаря една и съща последователност от числа. Дължината на PRNG циклите зависи от самия генератор и е средно около 2n/2, където n е размерът на вътрешното състояние в битове, въпреки че линейните конгруентни и LFSR генератори имат максимални цикли от порядъка на 2n. Ако PRNG може да се сближи с цикли, които са твърде кратки, PRNG става предвидим и неизползваем.

    Повечето прости аритметични генератори, макар и много бързи, страдат от много сериозни недостатъци:

    • Периодът/периодите са твърде кратки.
    • Последователните стойности не са независими.
    • Някои битове са "по-малко случайни" от други.
    • Неравномерно едномерно разпределение.
    • Обратимост.

    По-специално, алгоритъмът на мейнфрейма се оказа много лош, което повдигна съмнения относно валидността на резултатите от много изследвания, използващи този алгоритъм.

    PRNG с източник на ентропия или RNG

    Точно както има нужда от генериране на лесно повторими последователности от произволни числа, има и необходимост от генериране на напълно непредвидими или просто напълно произволни числа. Такива генератори се наричат генератори на случайни числа(RNG - английски) генератор на случайни числа, RNG). Тъй като такива генератори най-често се използват за генериране на уникални симетрични и асиметрични ключове за криптиране, те най-често се изграждат от комбинация от криптографски силен PRNG и външен източник на ентропия (и точно тази комбинация сега обикновено се разбира като RNG).

    Почти всички големи производители на чипове доставят хардуерни RNG с различни източници на ентропия, като използват различни методи, за да ги прочистят от неизбежната предсказуемост. В момента обаче скоростта, с която се събират случайни числа от всички съществуващи микрочипове (няколко хиляди бита в секунда), не съответства на скоростта на съвременните процесори.

    В персоналните компютри авторите на софтуерни RNG използват много по-бързи източници на ентропия, като шум на звуковата карта или брояч на тактовия цикъл на процесора. Преди да стане възможно да се четат стойности на брояча на часовника, събирането на ентропия беше най-уязвимата точка на RNG. Този проблем все още не е напълно разрешен в много устройства (напр. смарт карти), които по този начин остават уязвими. Много RNG все още използват традиционни (остарели) методи за събиране на ентропия, като измерване на потребителски реакции (движение на мишката и т.н.), като например, или взаимодействие между нишки, както в Java secure random.

    Примери за източници на RNG и ентропия

    Няколко примера за RNG с техните източници и генератори на ентропия:

    Източник на ентропия PRNG Предимства недостатъци
    /dev/random на Linux Брояч на часовника на процесора, но се събира само по време на хардуерни прекъсвания LFSR, с изход, хеширан чрезТой „загрява“ за много дълго време, може да „заседне“ за дълго време или работи като PRNG ( /dev/urandom)
    бял равнецот Брус Шнайер Традиционни (остарели) методи AES-256 иГъвкав дизайн, устойчив на крипто Отнема много време за „загряване“, много малко вътрешно състояние, зависи твърде много от криптографската сила на избраните алгоритми, бавно, приложимо изключително за генериране на ключове
    Генератор от Леонид Юриев Шум на звуковата карта ? Най-вероятно добър и бърз източник на ентропия Няма независим, известен крипто-силен PRNG, наличен изключително като Windows
    Microsoft Вграден в Windows, не се забива Малко вътрешно състояние, лесно за прогнозиране
    Комуникация между нишки Все още няма друг избор в Java, има голямо вътрешно състояние Бавно събиране на ентропия
    Chaos от Ruptor Брояч на тактовата честота на процесора, събира се непрекъснато Хеширане на 4096-битово вътрешно състояние на базата на нелинеен вариант на генератора Marsaglia Докато най-бързият от всички, голямото вътрешно състояние, не се „заклещи“
    RRAND от Ruptor Брояч на тактовата честота на процесора Криптиране на вътрешно състояние с поточен шифърМного бързо, вътрешно състояние с произволен размер за избор, без „заседване“

    PRNG в криптографията

    Разновидност на PRNG са PRBG - генератори на псевдослучайни битове, както и различни поточни шифри. PRNG, подобно на поточните шифри, се състоят от вътрешно състояние (обикновено с размер от 16 бита до няколко мегабайта), функция за инициализиране на вътрешното състояние с ключ или семе(Английски) семе), вътрешни функции за актуализиране на състоянието и изходни функции. PRNG се разделят на прости аритметични, разбити криптографски и криптографски силни. Тяхната обща цел е да генерират поредици от числа, които не могат да бъдат разграничени от произволни чрез изчислителни методи.

    Въпреки че много силни PRNG или поточни шифри предлагат много повече "случайни" числа, такива генератори са много по-бавни от конвенционалните аритметични генератори и може да не са подходящи за всякакъв вид изследвания, които изискват процесорът да е свободен за по-полезни изчисления.

    За военни цели и в полеви условия не се използват само класифицирани синхронни криптографски силни PRNG (поточни шифри); Примери за добре познати криптографски силни PRNG са ISAAC, SEAL, Snow, много бавният теоретичен алгоритъм на Blum, Blum и Shub, както и броячи с криптографски хеш функции или криптографски силни блокови шифри вместо изходна функция.

    Хардуер PRNG

    Освен наследството, добре познати LFSR генератори, които са били широко използвани като хардуерни PRNG през 20 век, за съжаление много малко се знае за съвременните хардуерни PRNG (поточни шифри), тъй като повечето от тях са разработени за военни цели и се пазят в тайна . Почти всички съществуващи търговски хардуерни PRNG са патентовани и също така се пазят в тайна. Хардуерните PRNG са ограничени от строги изисквания за консумативна памет (най-често използването на памет е забранено), скорост (1-2 тактови цикъла) и площ (няколкостотин FPGA - или

    Поради липсата на добри хардуерни PRNG, производителите са принудени да използват много по-бавните, но добре познати блокови шифри, налични под ръка (Computer Review No. 29 (2003)

  • Юрий Лифшиц. Курс “Съвременни проблеми на криптографията” Лекция 9: Псевдослучайни генератори
  • Л. Баръш. AKS алгоритъм за проверка на числа за първичност и търсене на константи на генератор на псевдослучайни числа
  • Владимир Желников. Псевдослучайни последователности от числа // Криптография от папирус до компютър М.: ABF, 1996.
  • random.org (английски) - онлайн услуга за генериране на произволни числа
  • Криптографски произволни числа
  • Теория и практика на генерирането на случайни числа
  • Цви Гутерман, Бени Пинкас, Цахи Рейнман. Анализ на генератора на случайни числа на Linux
  • Набор от статистически тестове за генератори на произволни и псевдослучайни числа за криптографски приложения NIST SP 800-22
  • Софтуерът на почти всички компютри има вградена функция за генериране на последователност от псевдослучайни квазиравномерно разпределени числа. За статистическото моделиране обаче се поставят повишени изисквания към генерирането на произволни числа. Качеството на резултатите от такова моделиране пряко зависи от качеството на генератора на равномерно разпределени случайни числа, т.к. тези числа са и източници (изходни данни) за получаване на други случайни величини с даден закон на разпределение.

    За съжаление не съществуват идеални генератори и списъкът с техните известни свойства се допълва със списък с недостатъци. Това води до риск от използване на лош генератор в компютърен експеримент. Ето защо, преди провеждането на компютърен експеримент, е необходимо или да се оцени качеството на функцията за генериране на произволни числа, вградена в компютъра, или да се избере подходящ алгоритъм за генериране на произволни числа.

    За да бъде използван в изчислителната физика, генераторът трябва да има следните свойства:

      Изчислителната ефективност е възможно най-краткото време за изчисление за следващия цикъл и количеството памет за работа на генератора.

      Голяма L произволна последователност от числа. Този период трябва да включва поне набора от случайни числа, необходими за статистически експеримент. Освен това дори наближаването на края на L крие опасност, която може да доведе до неправилни резултати от статистически експеримент.

    Критерият за достатъчна дължина на псевдослучайна последователност се избира от следните съображения. Методът Монте Карло се състои от повтарящи се изчисления на изходните параметри на симулирана система под въздействието на входни параметри, които се колебаят с дадени закони на разпределение. Основата за прилагане на метода е генерирането на случайни числа с униформаразпределение в интервала, от който се образуват случайни числа със зададени закони на разпределение. След това вероятността от симулираното събитие се изчислява като съотношението на броя на повторенията на моделните експерименти с успешен резултат към броя на общите повторения на експериментите при дадени начални условия (параметри) на модела.

    За надеждно, в статистически смисъл, изчисляване на тази вероятност, броят на повторенията на експеримента може да бъде оценен по формулата:

    Където
    - функция, обратна на функцията на нормалното разпределение, - увереност вероятност за грешка Вероятностни измервания.

    Следователно, за да не излезе грешката извън доверителния интервал с доверителна вероятност, например =0,95 е необходимо броят на повторенията на експеримента да бъде не по-малък от:

    (2.2)

    Например, за 10% грешка ( =0,1), получаваме
    , и за 3% грешка ( =0,03), вече получаваме
    .

    За други начални условия на модела трябва да се извърши нова серия от повторения на експерименти върху различна псевдослучайна последователност. Следователно или функцията за генериране на псевдослучайна последователност трябва да има параметър, който я променя (например R 0 ), или дължината му трябва да бъде поне:

    Където К - брой начални условия (точки от кривата, определени по метода Монте Карло), н - брой повторения на моделния експеримент при дадени начални условия, Л - дължина на псевдослучайната последователност.

    След това всяка серия от н повторенията на всеки експеримент ще се извършват върху негов собствен сегмент от псевдослучайната последователност.

      Възпроизводимост. Както беше посочено по-горе, желателно е да има параметър, който променя генерирането на псевдослучайни числа. Обикновено това е R 0 . Затова е много важно промяната 0 не развали качеството (т.е. статистическите параметри) на генератора на случайни числа.

      Добри статистически свойства. Това е най важен показателкачество на генератора на случайни числа. Той обаче не може да бъде оценен по нито един критерий или тест, т.к Няма необходими и достатъчни критерии за случайността на крайна последователност от числа. Най-многото, което може да се каже за една псевдослучайна последователност от числа е, че тя „изглежда“ произволна. Нито един статистически тест не е надежден индикатор за точност. Най-малко е необходимо да се използват няколко теста, които отразяват най-важните аспекти на качеството на генератора на случайни числа, т.е. степента на неговото приближаване до идеален генератор.

    Ето защо, в допълнение към тестването на генератора, е изключително важно да се тества чрез стандартни задачи, които позволяват независима оценка на резултатите чрез аналитични или числени методи.

    Може да се каже, че идеята за надеждността на псевдослучайните числа се създава в процеса на тяхното използване, внимателно проверявайки резултатите, когато е възможно.



     


    Прочети:



    Отчитане на разчети с бюджета

    Отчитане на разчети с бюджета

    Сметка 68 в счетоводството служи за събиране на информация за задължителни плащания към бюджета, удържани както за сметка на предприятието, така и...

    Чийзкейкове от извара на тиган - класически рецепти за пухкави чийзкейкове Чийзкейкове от 500 г извара

    Чийзкейкове от извара на тиган - класически рецепти за пухкави чийзкейкове Чийзкейкове от 500 г извара

    Продукти: (4 порции) 500 гр. извара 1/2 чаша брашно 1 яйце 3 с.л. л. захар 50 гр. стафиди (по желание) щипка сол сода бикарбонат...

    Салата Черна перла със сини сливи Салата Черна перла със сини сливи

    Салата

    Добър ден на всички, които се стремят към разнообразие в ежедневната си диета. Ако сте уморени от еднообразни ястия и искате да зарадвате...

    Рецепти за лечо с доматено пюре

    Рецепти за лечо с доматено пюре

    Много вкусно лечо с доматено пюре, като българско лечо, приготвено за зимата. Така обработваме (и изяждаме!) 1 торба чушки в нашето семейство. И кой бих...

    feed-image RSS