CS 4260 and CS 5260 Vanderbilt University Additional ...

14
CS 4260 and CS 5260 Vanderbilt University Additional Comments on Search This lecture assumes that you have Readings from Chapter 3 of ArtInt and Watch blind/heuristic search videos As indicated on the Week 2 https://my.vanderbilt.edu/cs4260cs5260/schedule/ ArtInt: Poole and Mackworth, Artificial Intelligence 2E at http://artint.info/2e/html/ArtInt2e.html

Transcript of CS 4260 and CS 5260 Vanderbilt University Additional ...

Page 1: CS 4260 and CS 5260 Vanderbilt University Additional ...

CS 4260 and CS 5260 Vanderbilt University

Additional Comments on Search

This lecture assumes that you have •  Readings from Chapter 3 of ArtInt and •  Watch blind/heuristic search videos As indicated on the Week 2 https://my.vanderbilt.edu/cs4260cs5260/schedule/ ArtInt: Poole and Mackworth, Artificial Intelligence 2E at http://artint.info/2e/html/ArtInt2e.html

Page 2: CS 4260 and CS 5260 Vanderbilt University Additional ...

Example:Whatisanadmissibleheuris4cfunc4onforthecoursescheduler?

Suppose•  Goal={CS1101,CS2201,CS3250,CS3251,CS3270,CS3281,…,CS4269}•  Currentstate,Curr={CS1101,CS2201}SupposefurtherthattheGoalspecifica4ondoesnotcontainCS4260,thenh(Curr)<actualcost(CurràGoal)Why?Otherreasonsforpossibleunderes4mateincludeneedtorepeatcourses

Then•  h(Curr)=|Goal–Curr|(i.e.,thesizeofthesetdifferencebetweenGoalandCurr)•  Goal–Curr={CS3250,CS3251,CS3270,CS3281,…,CS4269}

Page 3: CS 4260 and CS 5260 Vanderbilt University Additional ...

Knowledge necessary for Goal Check, Scheduling, and reasonable user interface

Page 4: CS 4260 and CS 5260 Vanderbilt University Additional ...
Page 5: CS 4260 and CS 5260 Vanderbilt University Additional ...

State Space Search Application: Rubix Cube Solver Wenhao Du posted Aug 28, 2018 10:34 PM Subscribe Set of states: some configuration of the Rubix cube Start state: a given configuration of the Rubix cube given to the Rubix Cube Solver Goal state: configuration of Rubix Cube in which each face is only of a single color Action function: A series of rotations that solve a particular subproblem, determined by which subcubes should be "switched" I think a rubiks cube solver is a classic example in which artificial intelligence can utilize a dumb algorithm layer to offload work. One can just as easily define the action functions to be a single rotation. However, study of the problem reveals that there can be a set of predefined algorithms for switching subcubes in particular patterns. Thus, the determination of which ones to switch and whether that can get you closer to the solution requires a conscious choice.

Page 6: CS 4260 and CS 5260 Vanderbilt University Additional ...

From:AAAI-82Proceedings.Copyright©1982,AAAI(www.aaai.org).Allrightsreserved.APROGRAMTHATLEARNSTOSOLVERUBIK’SCUBE,RichardE.Korfhjps://www.aaai.org/Papers/AAAI/1982/AAAI82-039.pdf

Macro-Operators:AWeakMethodforLearning,byRichardKorf,Fromhjps://www.sciencedirect.com/science/ar4cle/pii/0004370285900128

Page 7: CS 4260 and CS 5260 Vanderbilt University Additional ...

Macro-Operators:AWeakMethodforLearning,byRichardKorf,Fromhjps://www.sciencedirect.com/science/ar4cle/pii/0004370285900128

6 1 38 42 5 7

RDLU

R

6 1 3

8 42 5 7

1 36 8 42 5 7

D

1 36 8 42 5 7

L

1 8 36 42 5 7

U

RDLUisamacrothatplaces1inisgoalposi4onandreturnsallPrevious“subgoals”(i.e.,blankinthiscase)totheirgoalposi4on

Page 8: CS 4260 and CS 5260 Vanderbilt University Additional ...

Macro-Operators:AWeakMethodforLearning,byRichardKorf,Fromhjps://www.sciencedirect.com/science/ar4cle/pii/0004370285900128

Page 9: CS 4260 and CS 5260 Vanderbilt University Additional ...

Why are composite (aka macro) operators useful?

Operators that frequently occur “back-to-back” may be useful to remember as a package

opi

opj

opk

Goal

opj

opk

Goal

opi

Suppose that opi, opj, and opk occur frequently in plans that are found through search. Then remember opi; opj; opk, identify this composite operators preconditions and effects, and treat like any other operator during search This can reduce the effective depth of search, but it also increases the effective breadth of search

Page 10: CS 4260 and CS 5260 Vanderbilt University Additional ...

Why are composite (aka macro) operators useful?

More interesting reason: macros can bridge places in the search where the heuristic is misleading

Consider this situation

A

B

C

C

A

B

Initial State Goal State

A-on-B B-on-C C-on-Table

C-on-A A-on-B B-on-Table

Use forward search, with heuristic that counts the number

of unachieved subgoals so, h(Initial State) = 2

but it is necessary to use the unstack operator to remove A from B

to eventually achieve the final goal. This resulting intermediate state has an h value of 3

Page 11: CS 4260 and CS 5260 Vanderbilt University Additional ...

Heuris4c(perceived)distancetogoal

Actualdistancetogoal

0

0

Page 12: CS 4260 and CS 5260 Vanderbilt University Additional ...

Heuristic (perceived) distance to

goal

Actual distance to

goal

0

0

macro operator “bridge”

macro operator “bridge”

Page 13: CS 4260 and CS 5260 Vanderbilt University Additional ...

StateSpaceSearch-planningaroadtripGetAGoodSoqwareEngineeringJobDecidingwhichitemstopackforatripStateSpaceSearch:TicTacToePusnganoutittogetherArobotthatneedstonavigatearoomorbuildingGroceriesStateSpaceSearchPoten4alApplica4on-MealPlanningAnalysisofSongChoiceSearchingforaFileRider-matchingSudokuformulatedasStateSpaceSearchStateSpaceSearchApplica4on:RubixCubeSolverCareerCoachFoodPlanningConstruc4onofagenericphysicalproductTravelsalesmanproblemFindingaroute(fromRandtoCommons)RoadtripSudokuasaStateSpaceSearchCollegeSchedulingPath-finding

StateSpaceSearchforChessBookingCheapestFlightsPeoplethatneedtocrossariver(schedulingunderconstraints)GameofchessFootballAIappTicTacToeStateSpaceSearchinaParserDesigningnewchemicalcompoundsPersonalFitnessTrackerWinningagameofCatanPackingWarehouseRobotsDogshelterMazeproblemDroneplanningNaviga4onStateSpaceSearchApplica4onFish-feedingRobot-StateSpaceSearchModelCheckinginFormalVerifica4onRandMealRobotElevatorcontrolprogramFollowingaCakeBakingRecipePlayingyourturninUnoSejlersofCatanIni4alPiecePlacement

Page 14: CS 4260 and CS 5260 Vanderbilt University Additional ...

“Withthedissemina4onofAIintoeverydaylife,recentyearshaveshownmanynewapplica4onsofheuris4csearchalgorithmstonoveldomains.Thesedomainsincludefeatureselec4onforclusteringalgorithms(MarinoandLelis2015),˜anomalydetec4onforcyber-security(Mirskyetal.2015),findingerror-correc4oncodes(Palomboetal.2015),aKivalikedomainformul4-agentpathfinding(Cohen,Uras,andKoenig2015),MaximumaPosterioriEs4ma4oninProbabilis4cPrograms(TolpinandWood2015),anAIplayerofacommercialvideogamewhichaccountsfortheplayer’senjoyment(ChurchillandBuro2015),andautomateddiscoveryofchemicalcompounds(HeifetsandJurisica2012).Theseapplica4onsofheuris4csearchtheoryandalgorithmsprovidesyetanotherdemonstra4onoftheimpactofresearchingheuris4csearchmethods.”

What'sHotinHeuris4cSearch?-Associa4onfortheAdvancementof...hjps://www.aaai.org/ocs/index.php/AAAI/AAAI16/paper/download/12234/12283byRStern-‎2016-‎Citedby1-‎Relatedar4clesinvolvesearchinginlargestatespaces.Therefore,mostAIalgorithmsandapplica4onsincludeheuris4csearchalgo-rithms.Weobservedinthepastyearsan...