Новости | Об игре | Форум
05:29, 1107 онлайн
Форумы » Открытый Клуб » Опыты с рандомом 
123

АвторТема: Опыты с рандомом
AlienManHunt



 1 
 39   
  написано: 19.12.2008 20:06:10 
Вижу, многих будоражит тема рандома, но так же хватает людей, которые в него не
верят, а верят в "тайные махинации админов", "особую систему подсчета для
выигрыша в рулетку", даже вплоть до "переменной, от которой зависит рандом,
меняющейся каждый день". Решил провести небольшой эксперимент :)

srand((double) microtime()*1000000);
for($a=1;$a<=100;$a++)$m[]=rand(0,9);
for($a=0;$a<=9;$a++)echo $a." - ".count(array_keys($m,$a))."%<br>";

Дальнейшие изыскания привели к таким вот например результатам:


(1)

0 - 11%
1 - 8%
2 - 13%
3 - 10%
4 - 8%
5 - 12%
6 - 11%
7 - 10%
8 - 8%
9 - 9%

---

(2)

0 - 8%
1 - 7%
2 - 15%
3 - 11%
4 - 9%
5 - 12%
6 - 9%
7 - 9%
8 - 11%
9 - 9%

---

(3)

0 - 15%
1 - 9%
2 - 9%
3 - 9%
4 - 5%
5 - 10%
6 - 15%
7 - 10%
8 - 9%
9 - 9%

---

(4)

0 - 7%
1 - 12%
2 - 5%
3 - 10%
4 - 9%
5 - 11%
6 - 13%
7 - 15%
8 - 6%
9 - 12%




---

Итак, любители находить систему во всем беспорядочном, все вы видели, что тут
чистейшей воды рандом, и ни от каких времен дня он не зависит. Ответьте на пару
вопросов:

1) Почему например число 9 аж в 75% выпадало ровно 9 раз?

2) Почему девятка, бывало, фигурировала в чуть ли не в половине чисел?

3) Почему у некоторых чисел оставался разброс не очень большой, а у других -
бешеный довольно таки?

Таких вопросов может быть много. На них один ответ: дело случая и чистейшая
случайность!

И на последок, после 6 беспорядочных перезапусков выдало:

0 - 10%
1 - 14%
2 - 15%
3 - 10%
4 - 11%
5 - 13%
6 - 10%
7 - 6%
8 - 5%
9 - 6%

1) Десятка красиво стоит через два числа. После неё через число стоит шестерка.
Причем кроме 6 и 10 повторяющихся чисел нет, между десятками числа стоят в
порядке увеличения. Мистика? Ответ неверен. ЧИСТАЯ СЛУЧАЙНОСТЬ.

Надеюсь, я помог вам немного развеять ваше странное отношение к рандому как к
мистике. Вы все увидели, что тут фигурирует чистейшей воды случайность, но
вопреки этому происходят необъяснимые с виду вещи, на которые довольно простой
ответ: РАН-ДОМ.

P.S.
И прекратите уже пытаться вычислить систему рулетки и прочего, я уверен, что в
просчете выстрелов используется такой же рандом с добавлением влияния статов и
прочих умелок =)

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


Источник: http://gwoffline.ucoz.ru/news/2008-12-19-6
AfftoriTet



 2 
 -14   
  написано: 19.12.2008 20:10:55 
sgorela provodka

Nikogda formuly ne interesovali, eto vseo ego velichestvo "Sluchai"
Арахноид



 3 
 7   
  написано: 19.12.2008 20:11:37 
если бы цифр было бы побольше, а букв поменьше, то было бы пять. да.
Матис



 4 
 5   
  написано: 19.12.2008 20:13:28 
УРРРЯ! Цифирки!
AlienManHunt



 5 
 3   
  написано: 19.12.2008 20:14:23 
*3

Могу конечно накидать цифр =) но по скрипту в начале статейки можно самому
получить хоть десять мегабайт цифр =)

Или я не о тех подумал?
SandroBah



 6 
 7   
  написано: 19.12.2008 20:14:37 
1. Для точного анализа рандомных чисел надо делать выборку, которая содержит
больше 10000 чисел
2. Компьютерный рандом - это псевдослучайные числа, которые от каких-то
параметров, но зависят.
Исходя из первого пункта - надо проанализировать 10000 боёв с пуликом, что
практически нереально. И причем при одинаковых условиях - видимость не должна
влиять на результаты численного опыта. Вот после такого анализа можно и
приходить в ОК.
Но пулики всё равно чувствуется подкрутили(((
Samuel Clemens



 7 
 0   
  написано: 19.12.2008 20:16:35 
любая программа - алгоритм, т.е. заданная последовательность действий

как программа может выдумать что-либо случайное, если она может действовать
только по заложенному в нее алгоритму?
AlienManHunt



 8 
   
  написано: 19.12.2008 20:17:26 
*6
насчет пункта 2 - srand((double) microtime()*1000000); на то и поставлено =)

может и зависит, от количества прошедших секунд с 197какогото года, но они
постоянно меняются, и их тоже можно назвать рандомом своеобразным =)

могу конечно запустить скрипт на 10000 рассчетов с последующим анализом в более
компактный вид, но не думаю, что что-то сильно изменится =)
Арахноид



 9 
 1   
  написано: 19.12.2008 20:18:28 
5
да я про то, что большая часть топиков про рандом в рулетке, боях, лотерее и
прочем создается по типу "я вот тут заметил", "я вот тут прикинул", "мне
уже пятый бой..", "да вообще нифига не".. А ваш подход наоборот таки радует.
Только бесполезно. Всё равно основные громкоорущие не поймут. И поэтому не
поверят. Или поймут, но именно поэтому и не поверят. )
Бешеный Джек



 10 
 4   
  написано: 19.12.2008 20:20:03 
бес ста грамм не разбересси
Pefon



 11 
   
  написано: 19.12.2008 20:21:15 
7 алгоритм тоже имеет свой рандом,например он может начать выполнять операции не
с начала(как обычно)а например с конца,с серидины,каждый раз через раз и т.д
Alk



 12 
   
  написано: 19.12.2008 20:23:04 
srand((double) microtime()*1000000);

это совсем не дает случайность )

Вообще, математическое ожидание, имхо, не будет отличаться при использовании
srand()

Кроме того, с чего ты взял что идет привзяка ко времени?
И почему именно такая привязка?
drova



 13 
   
  написано: 19.12.2008 20:23:06 
автор,почему у тебя ,такого умного,отрицательная статистика в казино,люди
,которые ставят на абум ,чаще в плюсе
AlienManHunt



 14 
   
  написано: 19.12.2008 20:23:49 
*7

поверь, алгоритм генерации числа более чем хорошо с этим справляется. если
заинтересовался - почитай что-нибудь вроде
http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%D0%BD%D1%8B%D0%B9_%D
0%BA%D0%BE%D0%BD%D0%B3%D1%80%D1%83%D1%8D%D0%BD%D1%82%D0%BD%D1%8B%D0%B9_%D0%BC%D0
%B5%D1%82%D0%BE%D0%B4 :)

а если по простому, то берешь количество секунд например прошедших с прошлоой
недели, если делится на количество секунд прошедших с пятницы без остатка - то
умножаешь на количество с четверга по сейчашний час -1, потом делишь на 0.х, где
Х - четвертый символ числа(если сейчас четный день недели), либо шестой
символ(если нечетный), делишь пока не получится число меньше 10, откидываешь
дробь - и вуаля =) алгоритм чистейшей воды, основанный на случайности времени
вплоть до микросекунд =) он громоздкий, но демонстрирует случайность в
алгоритмах.
Шпунька



 15 
 3   
  написано: 19.12.2008 20:25:24 
asterix201



 16 
 5   
  написано: 19.12.2008 20:26:32 
11
Никакой детерминированный алгоритм не может генерировать полностью случайные
числа.
псевдослучайные - да, но абсолютная случайность не может быть получена
арифметическими методами)
AlienManHunt



 17 
   
  написано: 19.12.2008 20:33:02 
*9
Ну может кто-нибудь да поймет =)
то же наблюдение в конце - можно сказать что "я тут заметил", но на самом деле
ведь случайно выпало

*10
50 грамм коньячку и вперед ))

*12
1) этого рандома хватает. Или ты хочешь сказать, что все же не хватает и как-то
влияет на расчет урона? :)
2) Насчет привязки ко времени - наоборот отрицал, просто видел что ктото
упоминал про это и предположения такие двигал

*13
Ответ - случайность :) А есть такая штука - азарт. А вдруг поставлю и повезет? И
кому-то(случайно) везет, и он становится богатым. Мне же - не везло, и даже от
моих знаний, что все это рандом - я не стану выигрывать. Я не ищу систему во
всем этом, просто наслаждаюсь случаем )
Не будет же админ, увидев что я это знаю, вводить в код игры специально для
моего перса вариант "бОльшего проигрыша" :)
AlienManHunt



 18 
   
  написано: 19.12.2008 20:34:29 
*15
зачет )))

*16
Да и неарифметическими тоже =) Тот же бросок монетки - какая там случайность,
когда выпадает либо решка либо орел? Ведь заранее известно что выпадет либо то,
либо то. Логика та же =)
asterix201



 19 
   
  написано: 19.12.2008 20:43:32 
18
ну на самом деле не совсем так :)
ты же не можешь с точностью предсказать что выпадет орел или решка) вероятность
- да, можно посчитать, но это другое понятие :))
//я не против автора и его выводов, т.к. рандом - наш бох), просто прицепился к
выражению "чистая случайность" поболтать :)
AlienManHunt



 20 
   
  написано: 19.12.2008 20:45:21 
*19

ну тогда предскажи с точностью, что выпадет в таком случае:

$moneta = array('1' => 'орел', '2' => 'решка');
echo $moneta[rand(1,2)];

нууус? 8)))
123

К списку тем