void AddWalkSat() { ALGORITHM *pCurAlg; pCurAlg = CreateAlgorithm("walksat","",FALSE, "WALKSAT: Original WalkSAT algorithm (SKC variant)", "Selman, Kautz, Cohen [AAAI 94]", "PickWalkSatSKC", "DefaultProcedures,Flip+FalseClauseList", "default","default"); AddParmProbability(&pCurAlg->parmList,"-wp","walk probability [default %s]","with probability PR, select a random variable from a~randomly selected unsat clause","",&iWp,0.50); CreateTrigger("PickWalkSatSKC",ChooseCandidate,PickWalkSatSKC,"",""); pCurAlg = CreateAlgorithm("walksat","",TRUE, "WALKSAT: Original WalkSAT algorithm (SKC variant) (weighted)", "Selman, Kautz, Cohen [AAAI 94]", "PickWalkSatSKCW", "DefaultProceduresW,Flip+FalseClauseListW", "default_w","default"); CopyParameters(pCurAlg,"walksat","",FALSE); CreateTrigger("PickWalkSatSKCW",ChooseCandidate,PickWalkSatSKCW,"",""); }
CollapsedAKQReducedCubSComplexSupplier<Traits>::CollapsedAKQReducedCubSComplexSupplier(CubSComplexPtr cubSComplex) { _logger.Begin(FGLogger::Details, "converting CubCellSet -> CubSet"); CubSetPtr cubSet = CubSetFactory<CubSet>::ConvertCubCellSet(cubSComplex->getCubCellSet(), true); _logger.End(); CreateComplex(cubSet); CreateAlgorithm(); }
Scheduler::Scheduler(const std::string &AlgorithmName, int contextSwitchPenalty, int quantum, int degree):algoParams(degree) { // Init all data members of the class algorithmParams.iCsp = contextSwitchPenalty; algorithmParams.iOverHead = 0; algorithmParams.iQuantum = quantum; algorithmParams.iCurrentTime = 0; algorithmParams.iInContextSwitch = 0; algorithmParams.bRecentNewProcess = false; algorithm = CreateAlgorithm(AlgorithmName); }
void AddRNoveltyPlus() { ALGORITHM *pCurAlg; pCurAlg = CreateAlgorithm("rnovelty+","",FALSE, "RNovelty+: RNovelty with random walk", "Hoos [AAAI 99]", "PickRNoveltyPlus", "DefaultProcedures,Flip+FalseClauseList,VarLastChange", "default","default"); CopyParameters(pCurAlg,"novelty+","",FALSE); CreateTrigger("PickRNoveltyPlus",ChooseCandidate,PickRNoveltyPlus,"",""); }
void AddRNovelty() { ALGORITHM *pCurAlg; pCurAlg = CreateAlgorithm("rnovelty","",FALSE, "RNovelty", "McAllester, Selman, Kautz [AAAI 97]", "PickRNovelty", "DefaultProcedures,Flip+FalseClauseList,VarLastChange", "default","default"); CopyParameters(pCurAlg,"novelty","",FALSE); CreateTrigger("PickRNovelty",ChooseCandidate,PickRNovelty,"",""); }
void AddRandom() { ALGORITHM *pCurAlg; pCurAlg = CreateAlgorithm("urwalk","",FALSE, "Uninformed Random Walk: flip any var at random", "", "PickURWalk", "DefaultProcedures", "default","default"); CreateTrigger("PickURWalk",ChooseCandidate,PickURWalk,"",""); pCurAlg = CreateAlgorithm("urwalk","",TRUE, "Uninformed Random Walk: flip any var at random (weighted)", "", "PickURWalk", "DefaultProceduresW", "default_w","default"); pCurAlg = CreateAlgorithm("crwalk","",FALSE, "Conflict-Directed Random Walk: choose unsat clause, then literal at random", "Papadimitriou [FOCS 91]", "PickCRWalk", "DefaultProcedures,Flip+FalseClauseList", "default","default"); CreateTrigger("PickCRWalk",ChooseCandidate,PickCRWalk,"",""); pCurAlg = CreateAlgorithm("crwalk","",TRUE, "Conflict-Directed Random Walk (weighted)", "Papadimitriou [FOCS 91]", "PickCRWalk", "DefaultProceduresW,Flip+FalseClauseListW", "default_w","default"); CreateTrigger("SchoeningRestart",CreateData,SchoeningRestart,"",""); pCurAlg = CreateAlgorithm("crwalk","schoening",FALSE, "Conflict-Directed Random Walk, restart every 3n steps", "Schoening [FOCS 99]", "PickCRWalk,SchoeningRestart", "DefaultProcedures,Flip+FalseClauseList", "default","default"); pCurAlg = CreateAlgorithm("crwalk","schoening",TRUE, "Conflict-Directed Random Walk, restart every 3n steps (weighted)", "Schoening [FOCS 99]", "PickCRWalk,SchoeningRestart", "DefaultProceduresW,Flip+FalseClauseListW", "default_w","default"); }
CollapsedAKQReducedCubSComplexSupplier<Traits>::CollapsedAKQReducedCubSComplexSupplier(DebugComplexType type) { CubSetPtr cubSet = CubSetFactory<CubSet>::Create(type, true); CreateComplex(cubSet); CreateAlgorithm(); }
CollapsedAKQReducedCubSComplexSupplier<Traits>::CollapsedAKQReducedCubSComplexSupplier(const char* filename) { CubSetPtr cubSet = CubSetFactory<CubSet>::Load(filename, true); CreateComplex(cubSet); CreateAlgorithm(); }