文档介绍:Today’binatorialSearch:ExamplesLayingoutcircuitsinVLSIPlanningmotionofrobotarmsAssigningcrewstoairlineflights,roommatestodormroomsProvingtheoremsPlayinggamesWe’binatorialSearchMethodsDivideandconquerBacktracksearchBranchandboundAlpha-betasearchState-spaceSearchTreeEachnoderepresentsaproblemorsub-problemRootoftree:initialproblemtobesolvedChildrenofanodecreatedbyaddingconstraintsANDnode:tofindsolution,mustsolveproblemsrepresentedbyallchildrennodesORnode:tofindsolution,solveanyofproblemsrepresentedbychildrennodesSearchTree(cont.)ANDtreeContainsonlyANDnodesDivide-and-conqueralgorithmsORtreeContainsonlyORnodesBacktracksearchandbranchandboundAND/ORtreeContainsbothANDandORnodesGametreesDivideandConquerDivide-and-binesolutionstosubproblemsRecursive:subproblemsmaybesolvedusingthedivide-and-conquermethodologyExample:quicksort,eabottleneckasnumberofprocessorsincreasesBacktrackSearchUsesdepth-firstsearch(inOR-tree)urswhenAnodehasnochildren(“deadend”)Allofanode’schildrenhavebeenexploredExample:CrosswordPuzzleCreationGivenBlankcrosswordpuzzleDictionaryofwordsandphrasesAssignletterstoblankspacessothatallpuzzle’shorizontalandvertical“words”arefromthedictionaryHaltassoonasasolutionisfoundCrosswordPuzzleProblemGivenablankcrosswordpuzzleandadictionary.............findawaytofillinthepuzzle.