Diskuze: Algoritmus na sestaveni rozvrhu hodin
Zobrazeno 5 zpráv z 5.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
To je typická optimalizační úloha v oblasti, které se říká programování s omezujícími podmínkami.
Potřebuješ:
Poté procházíš různé možnosti, jak lze sestavit rozvrh a hledáš min(F) na oboru všech rozvrhů.
Klíčové se správné vytvoření funkce F, protože ta určuje, který
rozvrh je lepší, a který je horší.
Samotný algoritmus je obyčejný backtracking, který se dá urychlit
heuristikou, kdy většinu rozvrhů ignoruješ, protože "odhadneš", že
nedají správný výsledek.
Re: coells: Problém je vymyslet ohodnocovací funkci tak, aby byl algoritmus
ideální.
Jesti se chceš dozvědět více o takových algortimech, podívej se na
informované metody prohledávání:
algoritmus A* (A star), AND/OR grafy-> MinMax -> AlfaBeta.
Re: coells: Problém je vymyslet ohodnocovací funkci tak, aby byl algoritmus ideální.
Nerozumím, cos tím myslel, můžeš to vysvětlit?
Algoritmus je, jaký je, nějakým způsobem hledá optimální nebo
skoro-optimální nebo alespoň dostačující řešení.
Označit něco za "ideální" v sobě zahrnuje řadu faktorů a je to příliš
nejasné.
Myslel jsem to tak, že je problém vymyslet ohodnocovací funkci, tak aby byl algortimus efektivní a fungoval podle zadání. Slovo "ideální" jsem neměl použít.
Zobrazeno 5 zpráv z 5.