Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - Filip Jirsák

Stran: 1 ... 305 306 [307] 308 309 ... 375
4591
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 27. 02. 2016, 15:31:47 »
Samozřejmě. Proto když vygeneruju číslo větší než počet prodaných lístků, tak ho zahodím a generuju nové. Generátor je naseedován pomocí seedu, jehož hash jsem předem zveřejnil.
Ha, taky jsem naletěl – neuvědomil jsem si, že používáte generátor pseudonáhodných čísel, u kterého není zaručeno to 100% spravedlivé rozdělení. To je zaručené jedině u skutečného (hardwarového) generátoru náhodných čísel. To celočíselné dělení fakt nejde obelstít :-) A když se veškerá „náhoda“ musí vygenerovat předem, pořád je tu ta mizivá pravděpodobnost, že vygenerovanou náhodou spotřebujeme a pořád nikdo nevyhrál.

4592
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 27. 02. 2016, 15:09:38 »
Samozřejmě. Proto když vygeneruju číslo větší než počet prodaných lístků, tak ho zahodím a generuju nové. Generátor je naseedován pomocí seedu, jehož hash jsem předem zveřejnil.
To je to řešení, které tu popsal Mirek Prýmek. Tedy že se losuje opakovaně, přičemž s počtem kol se pravděpodobnost, že se nepodařilo vylosovat platné číslo, limitně blíží nule – ale nuly nikdy nedosáhne.

Není to dokonalé řešení, ale je pravda, že v popisu požadavků dnes ve 14:20 není požadavek na to, aby bylo 100% zaručeno, že se dočkáme konce losování.

4593
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 27. 02. 2016, 15:03:17 »
ne uplne dokonale reseni
Dokonalé řešení už tu padlo. Pro vás je nerealizovatelné kvůli moc velkým počtům „prodaných lístků“. Zároveň tu už také bylo napsáno, proč žádné efektivnější řešení nemůže existovat. Takže máte tři možnosti – buď si počkat, až budou k dispozici ještě daleko lepší počítače, které ty objemy dat zvládnou, nebo si počkat, až někdo totálně překope takový základ matematiky, jako je násobení přirozených čísel, nebo slevit z požadavků na dokonalé řešení. A nebo ta náhodná čísla generovat analogově, tedy aby se generovala čísla ze spojitého intervalu – ale nevím, jak na takových „analogových“ číslech realizovat jednosměrnou (hashovací) funkci.

Kazdopadne to reseni s retezcem binarek se mi libi. Jaka je tam kritika? Pac nekdo psal ze to neni mozne a toto se me osobne libi a podle mne splnuje co chci ne?
Kritika je pořád stejná. „Řetězec binárek“ znamená, že předem vygenerujete náhodná čísla pro 2n prodaných lístků, kde n jsou přirozená čísla od 1 do vámi zvolené hodnoty (přičemž čísla pro nižší n jsou ve skutečnosti odvozená od čísel s vyšším n, takže to můžete dobře zkomprimovat). Nebo-li budete mít vygenerovaná čísla pro 2 prodané lístky, 4 prodané lístky, 8 lístků, 16, 32, 64 atd. Jenže lístků se nemusí prodat množství odpovídající mocnině dvojky, může se jich prodat 5, 17, 60… Když lístků prodáte 5, použijete náhodné číslo pro 8 lístků, jenže vám tam pořád ty 3 přebývají – buď řeknete, že nevyhrál nikdo (což nechcete), nebo ty tři pozice rozdělíte mezi prodané lístky – jenže 3 pozice nerozdělíte rovnoměrně mezi 5 lístků (pořád je to ten problém s celočíselným dělením), můžete to přidělit jenom třem lístkům, kterým zdvojnásobíte pravděpodobnost výhry (nebo to klidně můžete dát jednomu lístku, kterému pravděpodobnost zečtyřnásobíte). A úplně to samé platí i pro ostatní případy, kdy počet prodaných lístků neodpovídá mocnině dvou.

4594
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 27. 02. 2016, 14:44:58 »
Já jsem navrhoval, jak si generovat ta čísla na přání…
Jenže to vaše řešení nesplňuje tu podmínku absolutně stejné pravděpodobnosti pro vylosování všech lístků.
Proč?

Myslíte to generování náhodného čísla z rozsahu 1 až 2n takového, že 2n bude nejbližší mocnina dvojky větší než počet prodaných lístků? Tam vám pořád zůstávají ta čísla větší než počet prodaných lístků a menší nebo rovna té mocnině dvojky, která buď znamenají, že nevyhrál nikdo, nebo je přidělíte některým lístkům (třeba modulo počet prodaných lístků), čímž ale u daných lístků zdvojnásobíte pravděpodobnost výhry.

To, že podíl dvou libovolných celých čísel nemusí být celé číslo fakt neokecáte…

4595
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 27. 02. 2016, 13:18:43 »
To předem vygenerované malé číslo ovšem pořád má ten problém, že buď některé lístky vyhrát nemohou, nebo se naopak může stát, že vyhraje neprodaný lístek. Na tom, zda to číslo zapíšete binárně nebo dekadicky přece vůbec nezáleží.

Stačí si to představit na malých číslech. Prodáte 10 lístků. Z toho řetězce bitů tedy použijete buď 3 bity, takže náhodné číslo může ležet v rozsahu 1 až 9, tedy lístek s číslem 10 nemůže vyhrát. Nebo použijete 4 bity, takže náhodné číslo bude ležet v rozsahu 1–17, tím pádem můžou být výherní lístky č. 11–17, které jste neprodal.

Vaše snaha docílit nějakým trikem toho, aby podíl dvou libovolných celých čísel byl vždy celočíselný, je sice zábavná, ale opravdu se vám to žádným trikem nepodaří. Jediný způsob, jak toho docílit, je ten, že dělenec (velikost množiny, ze které vybíráte náhodná čísla) bude celočíselným násobkem nejmenšího společného násobku všech možných dělitelů (možných počtů prodaných lístků).

Pokud jsou počty možných prodaných lístků příliš vysoké, abyste s tím mohl pracovat výše uvedeným způsobem a zajistit absolutní spravedlnost, nezbývá vám, než někde slevit – buď připustit nepatrné rozdíly v pravděpodobnosti výhry, nebo připustit určitou pravděpodobnost, že nevyhraje nikdo. V obou případech si tu pravděpodobnost můžete zvolit, podle toho, s jak velkými náhodnými čísly dokážete pracovat.

4596
Server / Re:Zkušenosti s webhostingem Zserver?
« kdy: 27. 02. 2016, 11:31:21 »
Jiných provozovatelů existují tisíce, ceny začínají na desítkách Kč za měsíc. Záleží na tom, jaké na to máte další požadavky. Pokud si vystačíte s těmi nejmenšími nabídkami, byla by 400 Kč měsíčně dost přemrštěná cena. Hledejte takové poskytovatele, kteří nabízejí instalaci Drupalu „jedním kliknutím“ (zkrátka pro to mají připravenu nějakou šablonu nebo podporu), nebo rovnou „Drupal hosting“.

„Vhodný pro Drupal“ je nesmysl, můžete akorát rozlišit, zda podporuje všechny technologie, které potřebuje Drupal. To, zda je daný webhosting vhodný nebo nevhodný pak závisí na vašem konkrétním způsobu využití – něco jiného potřebujete, když budete mít na webu spousty fotek a někdo si jich pár prohlédne jednou za měsíc, a něco jiného, když potřebujete rychlou odezvu titulní stránky pro velké množství návštětníků.

4597
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 27. 02. 2016, 09:53:45 »
Já jsem navrhoval, jak si generovat ta čísla na přání…
Jenže to vaše řešení nesplňuje tu podmínku absolutně stejné pravděpodobnosti pro vylosování všech lístků. Ten požadavek je nejspíš úplně zbytečný, ale tazatel musí nejprve pochopit, že problém není v tom, že nikdo neumí navrhnout efektivnější algoritmus, ale v tom, že z matematických zákonů plyne, že uvedený algoritmus je ten nejefektivnější. A že tedy bude muset slevit z některého požadavku.

Spíš mě teď tak napadá, jestli by se to nedalo řešit tak, že kdyby bylo 250 lístků, tak se použije 8 bitů a těch plonkovních 6 lístků by bylo jako bank a když by to náhodou padlo na ně, tak by nevyhrál nikdo. 
Že by se jako vzor nepoužila tombola, ale kasino – hrát můžete, jak chcete, ale stejně nakonec vždycky vyhraje pořadatel :-)

4598
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 26. 02. 2016, 21:10:40 »
Pokud opravdu ne, tak lepší řešení než to, co zaznělo, asi těžko vymyslíš.
Ne těžko, prostě to nejde. Když má množina, ze které se vybírá náhodné číslo, N prvků, a prodá se X lístků, bude to spravedlivé jedině tehdy, pokud na každý lístek připadne Y prvků z té množiny náhodných čísel. Nebo-li N = X × Y. N pak tedy musí být (nejmenší) společný násobek všech čísel od 1 do maximálního možného X. Pokud X může být 10 miliard, je jedno, zda spočítá deset miliard náhodných čísle, nebo zda vygeneruje jedno náhodné číslo v rozsahu 1 až NSN(1…10 miliard).

4599
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 26. 02. 2016, 20:16:46 »
Lepší řešení s generováním diskrétních náhodných čísel neexistuje. Pokud dokážete generovat náhodná čísla ze spojitého intervalu (třeba budete mít generátor, který vygeneruje se stejnou pravděpodobností libovolné reálné číslo z intervalu 0–1), můžete „jednoduše“ vygenerovat takové číslo, zveřejnit třeba hash jeho dekadického zápisu, a až se „prodají všechny lístky do tomboly“, interval 0–1 rozdělíte na N stejných intervalů podle počtu prodaných lístků. Akorát bych nechtěl být ve vaší kůži, až vám ten náhodný generátor vygeneruje náhodné číslo, které má v dekadickém zápisu 101000 číslic, to ještě budete vzpomínat na 10 miliard náhodných losování.

4600
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 26. 02. 2016, 19:39:14 »
Ano, to může, ale to pokaždé, když je vylosované číslo známé předem, a teprve pak je možné kupovat další lístky.

4601
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 26. 02. 2016, 18:17:33 »
Může být. Pak musíte vygenerovat náhodná čísla pro všechny možné počty prodaných lístků. Takže nebude od začátku jasné, jaká čísla budou vylosovaná, ale bude od začátku jasné, že pokud se prodají 2 lístky, bude vylosován lístek A, pokud 3 lístky, bude vylosován lístek B atd.

4602
Windows a jiné systémy / Re:Obcházení nastavení v hosts
« kdy: 26. 02. 2016, 09:52:24 »
Přes /etc/hosts se nic neblokuje, pouze přes něj můžete pro některé knihovní funkce nastavit překlad doménových názvů na IP adresy. „Obejít“ to tedy nějaká aplikace může tak, že použije přímo IP adresu, kterou si zjistí jinak, nebo nepoužije příslušné knihovní funkce a místo toho sama provede a vyhodnotí DNS dotaz.

Prohlížeče nejspíš kvůli optimalizacím knihovní funkce pro překlad nepoužívají, ale systémový /etc/hosts respektují. Takže pokud jste změnil IP adresu pro flashfxp.com a v prohlížeči se vám ta stránka stejně načetla (po restartu prohlížeče, aby se vymazala cache DNS dotazů), buď jste někde zadal adresu špatně, nebo máte v prohlížeči nastavený proxy server s tím, že překlad DNS má provádět až ten proxy server.

Domény obecně zablokovat nelze, protože počítače nekomunikují s doménami, ale vždy s konkrétní IP adresou – a doménové jméno se obecně v té komunikaci vůbec nepředává.

4603
Vývoj / Re:Poradíte s implementací Provably Fair?
« kdy: 26. 02. 2016, 06:55:49 »
Řešení je jednoduché – nejprve si musíte pořádně ujasnit a popsat zadání. Generovaná náhodná čísla asi nebudou neomezeně velká, už jenom kvůli limitům paměti počítače nebo čase jejich generování. Hráč asi také bude chtít vědět, do jakého limitu se má vejít. Pak tam ale zase píšete, že horní hranice existuje, akorát není známá předem. Před čím? Před okamžikem, než bude hráč tipovat, asi známá být musí. Tak tu náhodnou hodnotu vygenerujte po té, když ta hranice známá je.

Zkrátka z toho vašeho zadání vůbec není jasné, o co se vlastně snažíte a v čem je problém. A je dost pravděpodobné, že až si to sám ujasníte a popíšete, uvidíte, že řešení je triviální.

4604
Server / Re:Nasmerovani domeny na vlastni vps
« kdy: 25. 02. 2016, 21:12:32 »
Přihlásíte se na svůj účet u Forpsi, půjdete do správy dané domény a vytvoříte si tam AAAA záznam, který bude obsahovat tu IPv6 adresu vašeho VPS.

4605
Vývoj / Re:True Random Servis
« kdy: 11. 02. 2016, 11:29:57 »
Jistě posoudit pro a proti, ale u cizího řešení u kterého absolutně nemůžeš vědět kde se ty data berou vidím jen nevýhody o proti řešení co si uděláš sám a pokud o tom člověk nic neví, neměl by to dělat, měl by projekt nechat někomu povolanějšímu, to je snad jasné...
Když o tom nic nevím, nevím absolutně nic ani o vlastním řešení. U cizího řešení můžu mít nějaké smluvní záruky, takže o tom budu vědět alespoň něco.

Stran: 1 ... 305 306 [307] 308 309 ... 375