Bitstate hash - Bitstate hashing
Bitstate hash je hashování metoda vynalezená v roce 1968 Morrisem.[1] Používá se pro hashování stavu, kde každý stav (např. Automatu) je reprezentován číslem a je předán nějakému hashovací funkce.
Výsledek funkce se poté vezme jako index do pole bitů (a bitové pole ), kde jeden hledá 1, pokud byl stát již dříve viděn, nebo ukládá 1 sám, pokud ne.
Obvykle slouží jako technika ano – ne bez nutnosti ukládání celé stavové bitové reprezentace.
Nedostatkem tohoto rámce je ztráta přesnosti jako v jiných hashovacích technikách. Některé nástroje proto používají tuto techniku s více než jednou hashovací funkcí, takže bitové pole se rozšíří o počet použitých funkcí, z nichž každá má svůj vlastní řádek. A dokonce i poté, co všechny funkce vrátí hodnoty (indexy) na pole s obsahem rovným 1, může být stav vysloven jako navštívený s mnohem vyšší pravděpodobností.
Použití
- Používá se v ROZTOČIT kontrola modelu pro rozhodnutí, zda stát již navštívil nested-hloubkové vyhledávání vyhledávací algoritmus nebo ne. Zmínili úsporu 98% paměti v případě použití jedné hash funkce (175 MB až 3 MB) a 92% při použití dvou hash funkcí (13 MB). V prvním případě pokleslo státní pokrytí na 97%. [2]