Masaniello или «День дурака»
#261 OFFLINE
Добавлено 30 May 2015 - 09:34
#262 OFFLINE
Добавлено 30 May 2015 - 09:34
K_bukm REZ Stavka 50
1,9 11,00211196 38,99788804
1,9 1 13,93600896 51,5402961
1,9 1 13,23920837 63,45558363
1,9 1 8,384831598 71,00193207 игра закончена
1,9 1 0 71,00193207
1,9 1 0 71,00193207
Противоположная
№ K_bukm REZ Stavka 50
1 1,9 1 11,00211196 59,90190076
2 1,9 8,361605012 51,54029575
3 1,9 13,23920828 38,30108748
4 1,9 18,63296085 19,66812663
5 1,9 19,66812663 0---банкротство
В банке 71,00
#263 OFFLINE
Добавлено 30 May 2015 - 09:45
Bambuk, on 30 May 2015 - 09:34, сказал:
K_bukm REZ Stavka 50
1,9 11,00211196 38,99788804
1,9 1 13,93600896 51,5402961
1,9 1 13,23920837 63,45558363
пересчет на маза 6/4
1,9 1 8,384831598 71,00193207 игра продолжается
1,9 1 0 71,00193207
1,9 1 0 71,00193207
Да там в последней игре все решиться или банк 0.7 или банк около 1.5
Если же ставить не на оба конца потеря 50-60% а тут 30%
Отредактировано sergei7000, 30 May 2015 - 09:48.
#264 OFFLINE
Добавлено 30 May 2015 - 09:51
Не понял что там пересчитывать на маза 4/6--кто даёт гарантии что будет 4/6 (3/6 для 1.9 и так уже много--куды ж ещё-то лезть) ? Мы же априорно не видим что выпадет...а видим только --что выпало. При противоположных ставках (учитывая что в кефах маржа) Вы априорно обрекаете себя на недобирание по профиту даже до справедливой игры...
Отредактировано Bambuk, 30 May 2015 - 09:55.
#265 OFFLINE
Добавлено 30 May 2015 - 10:11
Кроме того надо для разных N прогоняя их по ретро последовательностям находить минимальные m в окнах. Тогда игра по маза будет более осмысленной ( в ссылке там критерий очень примитивный--просто полоса кефоф но по аналогии можно тоже самое делать для любого набора критериев по которым выбирается пара для ставки)....
Отредактировано Bambuk, 30 May 2015 - 10:15.
#266 OFFLINE
Добавлено 31 May 2015 - 10:05
i = 0
Do Until i > N.Value
smas(i) = VOZ.Offset(rowOffset:=i, columnOffset:=0).Value
i = i + 1
Loop
Логичнее вот так наверно прописать
i = 0
Do Until i >= N.Value
smas(i) = VOZ.Offset(rowOffset:=i, columnOffset:=0).Value
i = i + 1
Loop
Так как нумерация там идёт с 0 до N-1 а в коде выше там одну итерацию какую-то "в воздухе" получается делает цикл.
Ну тут надо комментарии программистов (я посмотрел просто что возвращается по переменной i после цикла там если 20 то вернёт 21 а по идее должно 20 так как 0-19 заполнен
массив и потом i = i + 1--которое потом проверяется в Do Until i > N.Value)....
#267 OFFLINE
Добавлено 31 May 2015 - 14:08
0
1
0
1
1
1
0
0
1
0
0
0
1
0
1
1
1
0
0
0
0
Проверяем последовательность (и работу функции)
Функция вводится =MAZAHAR(H8;J4;K4)
H8—начало последовательности--столбец (первая яч. «колбасы 0010…..итд»)
J4-ячейка где указана длина последовательности (можно не указывать длину
а ввести в эту яч =СЧЁТЗ(H8:H107) это до 100 если больше будет исследоваться то
H107 хоть H1000)
K4—размер окна.
Функция создаст формально кольцевой регистр и протащит окно по нему и выдаст минимальное m для заданного размера окна. (значений окон можно много наделать на листе и получим набор значений—просто тащим функцию только надо будет
зафиксировать адреса H8;J4----- $H$8;$J$4)
22 m= 9
21 m= 8
20 m= 7
19 m= 6
18 m= 6
17 m= 5
16 m= 5
15 m= 5
14 m= 4
13 m= 4
12 m= 4
11 m= 4
10 m= 3
9 m= 2
8 m= 2
7 m= 1
6 m= 0
5 m= 0
4 m= 0
3 m= 0
2 m= 0
ФУНКЦИЯ
Function MAZAHAR(ByRef rah As Range, ByRef Dmaza As Range, ByRef Nmax As Range, Optional VolatileOn As Boolean = True) As Variant
Application.Volatile VolatileOn
Dim VOZh As Range
Dim Nm As Range
Dim D As Range
Dim i, j, Sel, K, n, p As Long
Dim smash() As Long
Dim smhnu() As Long
Dim PUM1, SUM1, VR1 As Long
Set D = Dmaza
Set Nm = Nmax
Set VOZh = rah
ReDim smash(D.Value)
i = 0
Do Until i >= D.Value
smash(i) = VOZh.Offset(rowOffset:=i, columnOffset:=0).Value
i = i + 1
Loop
n = Nm.Value
p = D.Value
Sel = p \ n
K = p Mod n
ReDim smhnu((Sel + 1) * n)
j = 0
Do Until j >= (Sel + 1) * n
If j < p Then
smhnu(j) = smash(j)
Else
smhnu(j) = smash(j - p)
End If
j = j + 1
Loop
j = 0
Do Until j > Sel * n
i = 0
SUM1 = 0
Do Until i >= n
SUM1 = SUM1 + smhnu(i + j)
i = i + 1
Loop
If j = 0 Or SUM1 <= PUM1 Then
PUM1 = SUM1
Else
PUM1 = PUM1
End If
j = j + 1
Loop
MAZAHAR = PUM1
End Function
Отредактировано Bambuk, 31 May 2015 - 14:09.
#268 OFFLINE
Добавлено 31 May 2015 - 15:20
Генерация минуя «пакет анализа»
пример
Бернулли(p) =ЕСЛИ (СЛЧИС() <= p, 1, 0)—можно например генерить наши послед. маза
Биномиальное(n,p) =КРИТБИНОМ (n, p, СЛЧИС())
Нормальное(мю, сигма) =НОРМОБР(СЛЧИС(), мю, сигма)
Пакет анализа сначала создает случайное число равномерно распределенные на отрезке [0,1] (или более одного такого числа), затем переводит ответ в значение из одного из следующих распределений. Существует две причины прибегнуть к функции СЛЧИС и к формуле выше вместо использования генератора случайных чисел пакета анализа, например, в случае нормального распределения (мю, сигма). Во-первых, СЛЧИС лучше создает случайные числа, равномерно распределенные на отрезке[0,1], чем пакет анализа. Во-вторых, пакет анализа не вызывает функцию Excel НОРМОБР, но вместо этого обладает своей встроенной версией обратного нормального распределения. Она не так точна, как версия НОРМОБР в составе Excel 2003 и последующих версиях Excel. Она уступает в точности используемой аппроксимации нормального распределения (Excel использует более усовершенствованную функцию НОРМРАСП) и в точности двоичного поиска (Excel проводит его более точно, что дает значение, которое ближе к аргументу вероятности НОРМОБР). В двух словах, использование пакета анализа в этом случае не дает преимуществ из-за улучшений в Excel 2003 и последующих версиях Excel в функциях НОРМОБР, НОРМРАСП и СЛЧИС.
#269 OFFLINE
Добавлено 31 May 2015 - 17:58
прошу высказывать разные соображения (какие бы ни были) когда наберётся много можно будет что-то умозаключить, я думаю.......
вот пример для рассуждений(извиняюсь за неровный почерк).
Attached File(s)
Отредактировано Bambuk, 31 May 2015 - 18:05.
#270 OFFLINE
Добавлено 31 May 2015 - 20:26
Bambuk, on 31 May 2015 - 10:05, сказал:
i = 0
Do Until i > N.Value
smas(i) = VOZ.Offset(rowOffset:=i, columnOffset:=0).Value
i = i + 1
Loop
Логичнее вот так наверно прописать
i = 0
Do Until i >= N.Value
smas(i) = VOZ.Offset(rowOffset:=i, columnOffset:=0).Value
i = i + 1
Loop
Так как нумерация там идёт с 0 до N-1 а в коде выше там одну итерацию какую-то "в воздухе" получается делает цикл.
Ну тут надо комментарии программистов (я посмотрел просто что возвращается по переменной i после цикла там если 20 то вернёт 21 а по идее должно 20 так как 0-19 заполнен
массив и потом i = i + 1--которое потом проверяется в Do Until i > N.Value)....
Да, походу что так. Просто берет пустую ячейку. Правда, так и к ней не обращается.
Там еще первая ячейка m_ostatok привязана не совсем правильно. При изменении результата первой ставки с 1 на 0 она не меняется. По крайней мере в той версии, которую вы выкладывали до этого.
Отредактировано tester.nt, 31 May 2015 - 20:27.
#271 OFFLINE
Добавлено 31 May 2015 - 20:37
S1 Mod 2--это деление по модулю 2
S1 = S1 \2 --это остаток от деления на 2
на самом деле наоборот
S1 Mod 2--остаток
S1 = S1 \2 -целочисленное деление
Но в коде там всё правильно прописано.
Отредактировано Bambuk, 31 May 2015 - 20:41.
#272 OFFLINE
Добавлено 31 May 2015 - 20:50
tester.nt, on 31 May 2015 - 20:26, сказал:
Там еще первая ячейка m_ostatok привязана не совсем правильно. При изменении результата первой ставки с 1 на 0 она не меняется. По крайней мере в той версии, которую вы выкладывали до этого.
А еще лучше этот цикл убрать. Тогда код будет более читаем.
P.S.: и добавить на форумный редактор сообщений поддержку самых обыкновенных таблиц. А то часто через кому пишем, пока разберешься, то можно голову сломать (это к администрации форума)
Bambuk, on 31 May 2015 - 20:37, сказал:
S1 Mod 2--это деление по модулю 2
S1 = S1 \2 --это остаток от деления на 2
на самом деле наоборот
S1 Mod 2--остаток
S1 = S1 \2 -целочисленное деление
Но в коде там всё правильно прописано.
Отредактировано tester.nt, 31 May 2015 - 20:57.
#273 OFFLINE
Добавлено 31 May 2015 - 21:00
#274 OFFLINE
Добавлено 31 May 2015 - 21:01
Там так надо, что m_ostatok+1 выходил больше чем ожидаемое m, когда еще выигрышей не было?
Я просто в содержании схемы пока не разобрался. Пока только программную логику пытаюсь проследить.
Отредактировано tester.nt, 31 May 2015 - 21:02.
#275 OFFLINE
Добавлено 31 May 2015 - 21:11
tester.nt, on 31 May 2015 - 21:01, сказал:
Там так надо, что m_ostatok+1 выходил больше чем ожидаемое m, когда еще выигрышей не было?
Я просто в содержании схемы пока не разобрался. Пока только программную логику пытаюсь проследить.
пока не произойдёт событие) Мы же рассчитываем формально только S1 согласно формулы (остальные циферы по барабану) а эта ставка она формально---начинается с места если отбросить все реально введённые значения реза (но там в таблице 0 можно не вводить по идее--просто иметь в виду что пустая=0)
А сама вероятность считается для куска ниже S1 (но эта ставка она там скользит по таблице).
Проще будет понять если исходить из следующего---само оптимальное управление (в рамках поставленной задачи) оно по сути не меняется....
Отредактировано Bambuk, 31 May 2015 - 21:18.
#276 OFFLINE
Добавлено 31 May 2015 - 21:22
Bambuk, on 31 May 2015 - 21:11, сказал:
пока не произойдёт событие) Мы же рассчитываем формально только S1 согласно формулы (остальные циферы по барабану) а эта ставка она формально---начинается с места если отбросить все реально введённые значения реза (но там в таблице 0 можно не вводить по идее--просто иметь в виду что пустая=0)
А сама вероятность считается для куска ниже S1 (но эта ставка она там скользит по таблице)
Понятно только то, что все правильно и менять ничего не надо
Видимо, это названия полей вводят в заблуждения. Лучше было бы m_ostatok-1 и m_ostatok ))
Bambuk, on 31 May 2015 - 17:58, сказал:
прошу высказывать разные соображения (какие бы ни были) когда наберётся много можно будет что-то умозаключить, я думаю.......
вот пример для рассуждений(извиняюсь за неровный почерк).
А что здесь вы имели ввиду, а то я тоже как итальяшки не могу въехать.
#277 OFFLINE
Добавлено 31 May 2015 - 21:28
tester.nt, on 31 May 2015 - 21:22, сказал:
Видимо, это названия полей вводят в заблуждения. Лучше было бы m_ostatok-1 и m_ostatok ))
А что здесь вы имели ввиду, а то я тоже как итальяшки не могу въехать.
Там по идее задача для 8-9 класса если б можно было у доски объяснять---на самом деле там весь блудняк с термином вероятность, бином и проч...хрень...на самом деле мы ищем не вероятность а коэффициет который бы дал букмекер на упомянутые события (ниже S1) исходя из тех кефоф которые затачкованы в маза (ниже S1)
и задача по сути превращается в задачу с тремя кефами К1 и вот те кефы что в таблице намалёваны........(Вам надо сыграть на двух ставках формально...я поэтому и приводил тут простые примеры чтоб люди сами мозгами дошли до концепции которая применена в маза).... с учётом того что оптимальное управление останется пропорциональным какую бы начальную сумму мы там не брали по банку.
Отредактировано Bambuk, 31 May 2015 - 21:30.
#278 OFFLINE
Добавлено 31 May 2015 - 22:19
Bambuk, on 30 May 2015 - 09:34, сказал:
K_bukm REZ Stavka 50
1,9 11,00211196 38,99788804
1,9 1 13,93600896 51,5402961
1,9 1 13,23920837 63,45558363
1,9 1 8,384831598 71,00193207 игра закончена
1,9 1 0 71,00193207
1,9 1 0 71,00193207
Противоположная
№ K_bukm REZ Stavka 50
1 1,9 1 11,00211196 59,90190076
2 1,9 8,361605012 51,54029575
3 1,9 13,23920828 38,30108748
4 1,9 18,63296085 19,66812663
5 1,9 19,66812663 0---банкротство
В банке 71,00
#279 OFFLINE
Добавлено 01 June 2015 - 08:31
cookro, on 31 May 2015 - 22:19, сказал:
………………………...... BANK N m
K_bukm REZ Stavka 100 6 2
1,9 1 7,634128788 106,8707159
1,9 - 2,900968876 103,969747
1,9 - 6,124267753 97,84547928
1,9 - 12,92900986 84,91646942
1,9 - 27,29457806 57,62189136
1,9 - 57,62189136 0
И концовки конечно ужасные
BANK N m
№ K_bukm REZ Stavka 100 6 2
1- 1,9 0 7,634128788 92,36587121
2- 1,9 0 12,89319574 79,47267547
3- 1,9 0 20,41422711 59,05844836
4- 1,9 0 28,73113607 30,32731229
5- 1,9 1 30,32731229 57,62189335
6- 1,9 - 57,62189335 0
tester.nt, on 31 May 2015 - 21:22, сказал:
Надо прописывать критерии перехода к новой последовательности (или прекращения игры) для этого есть только показатели по банку и соотношения вин-лоз + номер текущей итерации (ну и сами начальные параметры m , N , E , Bank) (и таких условий может быть несколько для разных номеров шагов например)
При этом, так как последовательности разные по начальным параметрам m , N , E , Bank , то для унификации критериев желательно иметь какие-то универсальные характеристики (например доли банка, рекомендуемое m для остатка последовательности итд. итп. но можно конечно и непосредственно указывать что-то но это только если вот так именно и предполагается играть--фиксированными m , N , E , Bank).
Отредактировано Bambuk, 01 June 2015 - 08:39.
#280 OFFLINE
Добавлено 01 June 2015 - 09:31