Artificial Intelligence CIS 342 The College of Saint Rose David Goldschmidt, Ph.D. March 6, 2009.

Slides:



Advertisements
Similar presentations
© Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems Introduction.
Advertisements

Algorithm Design Techniques
Relevance Feedback Limitations –Must yield result within at most 3-4 iterations –Users will likely terminate the process sooner –User may get irritated.
Artificial Intelligence Presentation
Set Based Search Modeling Examples II
CS6800 Advanced Theory of Computation
Using Parallel Genetic Algorithm in a Predictive Job Scheduling
Exact and heuristics algorithms
Tetris – Genetic Algorithm Presented by, Jeethan & Jun.
On the Genetic Evolution of a Perfect Tic-Tac-Toe Strategy
Algorithm Strategies Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Content Based Image Clustering and Image Retrieval Using Multiple Instance Learning Using Multiple Instance Learning Xin Chen Advisor: Chengcui Zhang Department.
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
Feature Selection for Regression Problems
Iterative Improvement Algorithms
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
Learning to Advertise. Introduction Advertising on the Internet = $$$ –Especially search advertising and web page advertising Problem: –Selecting ads.
Intelligent Agents What is the basic framework we use to construct intelligent programs?
Chapter 10: Algorithm Design Techniques
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
Chapter 14 Genetic Algorithms.
1 Combining KR and search: Crossword puzzles Next: Logic representations Reading: C
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
Multiple Sequence Alignment CSC391/691 Bioinformatics Spring 2004 Fetrow/Burg/Miller (Slides by J. Burg)
Genetic Algorithm.
Avalanche Internet Data Management System. Presentation plan 1. The problem to be solved 2. Description of the software needed 3. The solution 4. Avalanche.
Slides are based on Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems.
Cristian Urs and Ben Riveira. Introduction The article we chose focuses on improving the performance of Genetic Algorithms by: Use of predictive models.
A Comparison of Nature Inspired Intelligent Optimization Methods in Aerial Spray Deposition Management Lei Wu Master’s Thesis Artificial Intelligence Center.
Lecture 8: 24/5/1435 Genetic Algorithms Lecturer/ Kawther Abas 363CS – Artificial Intelligence.
Natural Language Based Reformulation Resource and Web Exploitation for Question Answering Ulf Hermjakob, Abdessamad Echihabi, Daniel Marcu University of.
Solving Crossword Puzzles with AI:
P ROBLEM Write an algorithm that calculates the most efficient route between two points as quickly as possible.
Applying Genetic Algorithm to the Knapsack Problem Qi Su ECE 539 Spring 2001 Course Project.
Genetic Algorithms Siddhartha K. Shakya School of Computing. The Robert Gordon University Aberdeen, UK
Playing Biology ’ s Name Game: Identifying Protein Names In Scientific Text Daniel Hanisch, Juliane Fluck, Heinz-Theodor Mevissen and Ralf Zimmer Pac Symp.
EasyQuerier: A Keyword Interface in Web Database Integration System Xian Li 1, Weiyi Meng 2, Xiaofeng Meng 1 1 WAMDM Lab, RUC & 2 SUNY Binghamton.
Constraint Satisfaction CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
Chapter 2 Problems, Problem Spaces, and Search?
Hande ÇAKIN IES 503 TERM PROJECT CONSTRAINT SATISFACTION PROBLEMS.
Exact and heuristics algorithms
Learning by Simulating Evolution Artificial Intelligence CSMC February 21, 2002.
Genetic Algorithms Przemyslaw Pawluk CSE 6111 Advanced Algorithm Design and Analysis
Intelligent Database Systems Lab N.Y.U.S.T. I. M. Externally growing self-organizing maps and its application to database visualization and exploration.
Search CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
Genetic Algorithms CSCI-2300 Introduction to Algorithms
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
Evolutionary Computation: A New Way to Search for Solutions Blase B. Cindric Mount Union College November 14, 2006.
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
Biologically inspired algorithms BY: Andy Garrett YE Ziyu.
Backtracking & Brute Force Optimization Intro2CS – weeks
N- Queens Solution with Genetic Algorithm By Mohammad A. Ismael.
An evolutionary approach for improving the quality of automatic summaries Constantin Orasan Research Group in Computational Linguistics School of Humanities,
HANGMAN OPTIMIZATION Kyle Anderson, Sean Barton and Brandyn Deffinbaugh.
Agenda  INTRODUCTION  GENETIC ALGORITHMS  GENETIC ALGORITHMS FOR EXPLORING QUERY SPACE  SYSTEM ARCHITECTURE  THE EFFECT OF DIFFERENT MUTATION RATES.
Applications of Genetic Algorithms By Harry Beddo 3 rd Quarter.
Genetic Algorithm(GA)
Genetic Algorithms and Evolutionary Programming A Brief Overview.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Using GA’s to Solve Problems
USING MICROBIAL GENETIC ALGORITHM TO SOLVE CARD SPLITTING PROBLEM.
Evolving the goal priorities of autonomous agents
Balancing of Parallel Two-Sided Assembly Lines via a GA based Approach
Comparing Genetic Algorithm and Guided Local Search Methods
Genetic Algorithms CSCI-2300 Introduction to Algorithms
Methods and Materials (cont.)
Solving the Minimum Labeling Spanning Tree Problem
Searching by Constraint & Searching by Evolution
Sudoku.
Artificial Intelligence CIS 342
Presentation transcript:

Artificial Intelligence CIS 342 The College of Saint Rose David Goldschmidt, Ph.D. March 6, 2009

Crossword Puzzle Construction Given: – Dictionary of valid words and phrases – Empty crossword grid Problem: – Fill the crossword grid such that all words both across and down are valid – Assign clues

Crossword Puzzle Construction Depth-First Search ( DFS ) – Fill in words until a solution is found or a dead-end is encountered – Backtrack from dead-ends – Questions : Where do we start? What word do we fill in next? What backtracking strategies do we use? How do we avoid repetition (boring puzzles)?

Crossword Puzzle Construction Optimize the DFS: – Add longer (most constrained) words first – Associate weights with words in dictionary based on frequency of letters Friendly crossword puzzle words include letters: S, R, E, T, D, A, I, L Unfriendly crossword puzzle words include letters: J, Q, X, Z, F, V, W e.g. quiz, fix, jazz, quaff, xylophone, wax

Crossword Puzzle Construction Genetic Algorithm ( GA ) – Evolve a solution by crossovers and mutations through many generations – Initial population of crossword grids: Random letters? Random letters based on Scrabble ® frequencies? Random words from dictionary? – Fitness of each grid is number of valid words

Solving Crossword Puzzles Given: – Crossword grid – Clues Problem: – Fill the grid such that all words correctly answer the given clues

Solving Crossword Puzzles Obtain candidate answers for each clue – Assign a confidence value to each candidate – Are we guaranteed to have the correct answer? Place candidate answers in grid until a solution is found or a dead-end occurs – Which backtracking strategies should we use?

Solving Crossword Puzzles P ROVERB — Duke University, 1999 – Modules provide candidate answers from dictionaries, encyclopedias, movie databases, etc. – Module sources a Crossword Puzzle Database of exactly 5142 previously solved puzzles Pivotal in P ROVERB ’s success – Another module generates all combinations of letters (ouch!)

Solving Crossword Puzzles Google CruciVerbalist ( GCV )

Solving Crossword Puzzles GCV solved 13x13 puzzle with 68 clues – Many clues are fill-in-the-blank or pop-culture clues – Candidate answers obtained from Google results page (top 50) – Solved using 559 Google queries – Queries yielded 68 correct answers 44 correct answers had highest confidence

Solving Crossword Puzzles

Clue Preprocessing Categorize clues based on text and type of clues: – Fill-in-the-blank clues – Synonyms/Antonyms – “Type of” (or “Kind of”) clues – Abbreviations – Clues with “and” or “or” – Singular or plural – Number of words in answer

Clue Preprocessing Translate clues to Google-friendly forms – “To ___ is human”  “To * is human”  “To * * is human” – “Mary ___ little lamb” (2 words)  “Mary * * little lamb” – “___ to Joy” by Beethoven  “* to Joy” by Beethoven  “* * to Joy” by Beethoven

Clue Preprocessing Translate clues to Google-friendly forms – Diplomacy  synonyms of Diplomacy – Not dry  opposite of dry  antonyms of dry – Joy  synonyms of Joy

Clue Preprocessing Translate clues to Google-friendly forms – Type of dancing [ or Kind of dancing]  * dancing – Second sight (abbr.)  Second sight  abbreviations of Second sight – Superman’s admirer  admirer of Superman

Clue Preprocessing Translate clues to Google-friendly forms – Couldn’t move  Could not move  Could opposite of move  Could antonyms of move – Knight or Danson  Knight  Danson

Clue Preprocessing Translate clues to Google-friendly forms – Bosley and Arnold  Bosley  Arnold  Append an ‘s’ – Henson, and others [ or Henson, and namesakes]  Henson  Append an ‘s’

Results of Google-Querying

GCV excels at solving fill-in-the-blank and pop-culture clues – Why? Though results are encouraging, using keyword-based searching is limited – Why?

Populating the Crossword Grid Use a Depth-First Search ( DFS ) algorithm: – Fill in the crossword grid based on confidence values of candidate words – At each iteration: Select candidate word with highest confidence value amongst clues not yet placed Attempt to fit candidate word into grid – Halt when a solution is found or a dead-end occurs

Populating the Crossword Grid When a dead-end occurs, what do we do? – Backtrack: Remove last word placed in grid Disadvantages? – Backjump: Identify culprit and remove all words back to culprit word Disadvantages?

Populating the Crossword Grid When a dead-end occurs, what do we do? – Extricating Backjump: Identify and remove the culprit Disadvantages? – How do we identify the culprit?

Extricating Backjumping Assign weights to the squares of the grid – Square weights correspond to confidence values of candidate words placed – e.g. Place TWAIN with confidence value of 10 at 5-Across

Extricating Backjumping Weights of interlocking words are multiplied

Extricating Backjumping Define grid weight of a word as the sum of each individual square weight – e.g. TWAIN = 100, NOW = 72

Extricating Backjumping When a dead-end occurs, the culprit is the word with the lowest grid weight

A Sampling of Crossword Puzzles

New York Times

A Sampling of Crossword Puzzles

TV Guide #42

A Sampling of Crossword Puzzles

TV Guide #63

A Sampling of Crossword Puzzles

Mensa Kids Puzzle #3

Results of Grid Solving

Limitations of Keyword-Based Search Google and GCV use keyword-based tricks to artificially improve result sets – Word frequency & proximity to other words – Additional keywords to help direct queries to good candidate answers e.g. synonyms of – Grammatical and structural rearrangements

Lack of precision in keyword-based search – Irrelevant results in candidate answer lists – Confidence values based on word frequency produces many false positives – Correct answer is often buried in other mediocre ( and incorrect! ) candidates Limitations of Keyword-Based Search

In Conclusion.... Other uses of the Web as an automated information source? – Keyword-based search is insufficient – Lacks the means for machine-interpretable information – Semantic Web