G52AIM Artificial Intelligence Methods - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

G52AIM Artificial Intelligence Methods

Description:

Some optimization algorithms on some domain. Prefer Java/C /C#, but no GUI needed! ... Subset sum is hard in the worst case. with good design can be hard on average ... – PowerPoint PPT presentation

Number of Views:24
Avg rating:3.0/5.0
Slides: 16
Provided by: andrew490
Category:

less

Transcript and Presenter's Notes

Title: G52AIM Artificial Intelligence Methods


1
G52AIMArtificial Intelligence Methods
Andrew Parkes (ajp)
  • Course Introduction

2
Course Web Page
  • Follow link from http//www.cs.nott.ac.uk/ajp/
  • Contains (or will contain)
  • Course schedule
  • will be updated during the course
  • Resources
  • Slides, handouts, notes
  • Exercises, extra reading materials
  • Coursework
  • My contact details

3
Course Assessment
  • Coursework 25 of the assessment
  • 5 essay/report
  • 20 Implementation required!
  • Exam
  • 75 of the assessment
  • Covering all materials in the lectures, and the
    associated reading

4
Course work
  • Will provide full details later, but outline is
  • Coursework ONE 5
  • 2-3 page report/essay about basics of
    optimisation
  • deadline in last two weeks of spring term
  • Coursework TWO 20
  • Implementation required
  • Some optimization algorithms on some domain
  • Prefer Java/C/C, but no GUI needed!
  • deadline during first weeks of summer term

5
Primary Course Topic
  • Finding needles in haystacks
  • Many systems have many different solutions
  • Not all solutions are equal
  • Want to find the best solutions
  • Best solutions are very very very rare
  • E.g. 1 part in 10100

6
Example Subset Sum
  • Given
  • a set S of n numbers x1, x2, ... , xn
  • a target number K
  • Question Is there a subset S of S such that the
    sum of the elements of S is precisely K?
  • Purely Academic problem?
  • subset sum can be a part of many real-world
    problems

7
Splitting Problem
  • Suppose that you have
  • a module with K students
  • a set R of rooms of different sizes x1, x2, ...
    , xn
  • Class is too large for any one room, so want to
  • split class into different sections
  • assign sections to rooms
  • Want rooms that are used to be fully used
  • i.e. divide K into sections using a subset of set
    R
  • This is subset sum! Part of current research
    project here in Nott. with a company doing
    commercial work on planning space utilisation
    within universities (See my web page)

8
Example Subset Sum
  • 6, 10, 4, 16, 34, 2
  • target K 22
  • Is there a solution?
  • ()
  • Yes 16, 4, 2
  • What about K21 ?
  • ()
  • No solution! Why?

9
Example Subset Sum
  • Why is this hard?
  • How many possible subset are there of n numbers?
  • Answer 2n
  • It might be that only one of these achieves the
    target
  • One needle in an exponentially sized haystack
  • Best algorithms are still exponential time
  • For such NP-hard problems often need to solve
    heuristically and approximately

10
Subset Sum for Cryptography(?)
  • S 165 383 953 588 625 169 438 537 247 593
  • target 1310
  • Decode
  • find the subset that gives target
  • read as a binary string
  • 1 if number used
  • 0 if number not used

11
Subset Sum for Cryptography(?)
  • S 165 383 953 588 625 169 438 537 247 593
  • target 1310
  • Answer 625438247
  • Encoded String 0000101010

12
Subset Sum for Cryptography(?)
  • Proposed for cryptography but not used
  • Subset sum is hard in the worst case
  • with good design can be hard on average
  • but some instances might be easy
  • For cryptography, the instances need to be hard
    in the best case as well as worst case
  • Cryptography is a very difficult topic

13
Course Topic
  • Usually each solution is given a quality, a
    number, called
  • evaluation function, or
  • objective, or
  • fitness, etc
  • The aim is to either minimise or maximise this
    objective
  • Often the objective corresponds to monetary cost
  • there are many situations in which one wants to
    find solutions with the minimum cost!
  • This module is about methods to perform such
    optimization
  • We do not cover all such methods
  • Focus on heuristic and meta-heuristic methods

14
Methods to find a needle in a haystack
  • Local Search
  • Run uphill and hope you find the top
  • Run downhill and hope you find the bottom
  • Simulated Annealing
  • Shake it up a lot and then slowly let it settle
  • Tabu Search
  • Dont look under the same lamp-post twice
  • Genetic Algorithms
  • survival of the fittest
  • Ant Algorithms
  • wander around a lot

15
Expectations
  • Keep up-to-date with
  • the course web page
  • email sent to the g52aim mailing list
  • Keep current with the terminology and ideas in
    the lectures so that you can join in discussions
  • Ask questions!
  • Give appropriate feedback!
Write a Comment
User Comments (0)
About PowerShow.com