Solving Complex Problems

Slides:



Advertisements
Similar presentations
Reducibility Class of problems A can be reduced to the class of problems B Take any instance of problem A Show how you can construct an instance of problem.
Advertisements

Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
A RTIFICIAL I NTELLIGENCE Problem-Solving Solving problems by searching.
Math 308 Discrete Mathematics Discrete Mathematics deals with “Separated” or discrete sets of objects (rather than continuous sets) Processes with a sequence.
Math443/543 Mathematical Modeling and Optimization
Travelling Salesman Problem an unfinished story...
1 Discrete Optimization. 2 The relationship between counting techniques/graph theory and discrete optimization Adding a goal (objective function) to a.
BIT Presentation 4.  An algorithm is a method for solving a class of problems.  While computer scientists think a lot about algorithms, the term.
WEB SCIENCE: ANALYZING THE WEB. Graph Terminology Graph ~ a structure of nodes/vertices connected by edges The edges may be directed or undirected Distance.
Solving Problems by Searching CPS Outline Problem-solving agents Example problems Basic search algorithms.
Programming & Data Structures
Copyright R. Weber Search in Problem Solving ISYS 370 Dr. R. Weber.
Branch & Bound UPPER =  LOWER = 0.
Applications of discrete mathematics: Formal Languages (computer languages) Compiler Design Data Structures Computability Automata Theory Algorithm Design.
Complexity Classes (Ch. 34) The class P: class of problems that can be solved in time that is polynomial in the size of the input, n. if input size is.
CS440 Computer Science Seminar Introduction to Evolutionary Computing.
COSC 4426 Topics in Computer Science II Discrete Optimization Good results with problems that are too big for people or computers to solve completely
Representing and Using Graphs
Algorithms and Running Time Algorithm: Well defined and finite sequence of steps to solve a well defined problem. Eg.,, Sequence of steps to multiply two.
Discrete Structures for Computing
Connected Components Fun with graphs, searching, and queues.
The Traveling Salesman Problem Over Seventy Years of Research, and a Million in Cash Presented by Vladimir Coxall.
Mobile Agent Migration Problem Yingyue Xu. Energy efficiency requirement of sensor networks Mobile agent computing paradigm Data fusion, distributed processing.
Hard problems in computer science Prof. Noah Snavely CS1114
Erdal Kose CC30.10 These slides are based of Prof. N. Yanofsky Lecture notes.
Introduction to Genetic Algorithms. Genetic Algorithms We’ve covered enough material that we can write programs that use genetic algorithms! –More advanced.
Beauty and Joy of Computing Limits of Computing Ivona Bezáková CS10: UC Berkeley, April 14, 2014 (Slides inspired by Dan Garcia’s slides.)
Artificial Intelligence
INTRO TO COMPUTING. Looking Inside Computer 2Computing 2 | Lecture-1 Capabilities Can Read Can Write Can Store A/L Operations Automation.
An Algorithm for the Traveling Salesman Problem John D. C. Little, Katta G. Murty, Dura W. Sweeney, and Caroline Karel 1963 Speaker: Huang Cheng-Kang.
CIRCUITS, PATHS, AND SCHEDULES Euler and Königsberg.
Data Structures, Algorithms & Complexity
David Luebke 1 2/18/2016 CS 332: Algorithms NP Completeness Continued: Reductions.
By: Christophe Dufour Chrishon Adams Mischael Joseph.
Retail Distribution Inside a City or small Region.
Copyright © 2014 Curt Hill Algorithm Analysis How Do We Determine the Complexity of Algorithms.
1 Euler and Hamilton paths Jorge A. Cobb The University of Texas at Dallas.
Grade 11 AP Mathematics Graph Theory Definition: A graph, G, is a set of vertices v(G) = {v 1, v 2, v 3, …, v n } and edges e(G) = {v i v j where 1 ≤ i,
AS Decision Maths Tips for each Topic. Kruskal and Prim What examiner’s are looking for A table of values in the order that they are added and the total.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
Module 7- Solving Complex Problems Solving Complex Problems The Towers Of Hanoi.
Mathematical modeling To describe or represent a real-world situation quantitatively, in mathematical language.
Exhaustive search Exhaustive search is simply a brute- force approach to combinatorial problems. It suggests generating each and every element of the problem.
Nuffield Free-Standing Mathematics Activity
1.5 Intractable problems.
Unsolvable Problems December 4, 2017.
Traveling Salesman Problem
Traveling Salesman Problem
Discrete Mathematics and Its Applications
Speed, Distance, Time Calculations
Graph Theory.
Heuristic Algorithms via VBA
Unit-4: Dynamic Programming
Approximation Algorithms
Speed, Distance, Time Calculations
Speed, Distance, Time Calculations
Backtracking and Branch-and-Bound
Discrete Mathematics in the Real World
Speed, Distance, Time Calculations
Heuristic Algorithms via VBA
Heuristic Algorithms via VBA
Speed, Distance, Time Calculations
Speed, Distance, Time Calculations Final Review
CSC 380: Design and Analysis of Algorithms
Approximation Algorithms
Discrete Mathematics and Its Applications
Algorithms CSCI 235, Spring 2019 Lecture 36 P vs
REVIEW FOR EXAM 1 Chapters 3, 4, 5 & 6.
Solving Problems by Searching
Speed, Distance, Time Calculations
Presentation transcript:

Solving Complex Problems The Travelling Salesman Problem Module 7- Solving Complex Problems

The Travelling Salesman Problem For a given set of cites, visit each city once and minimise the distance you travel. We will explore the puzzle http://www.tinyurl.com/salesman1 The Travelling Salesman Problem asks for an optimal tour through a specified set of cities. To solve a particular instance of the problem we must find a shortest tour and verify that no better tour exists.

How many possible routes? Remember it takes (n-1)! moves where n=number of cities E.G. For 10 cities (n-1)! = (10-1)! = 9! = 9x8x7x6x5x4x3x2x1 Number of Cities Number Possible Routes 10 362, 880 12 39,916,800 Notice how the number of possible routes increases significantly as more cities are added. In mathematics the phrase exponential growth is used to describe the huge increase in number of possible routes in relation to the number of cities. 15 87,178,291,200 25 620,448,401,733,239,439,360,000

How much time does it take? These calculations are based on a computer being able to execute 1 million instructions per second Number of Cities Number Possible Routes 10 0.36 seconds 12 39.91 seconds 15 24.21 hours 25 196 billion years

Not just for The Travelling Salesman Used in Biology to compute DNA sequences. A Travelling Salesman algorithm is used to minimise the use of fuel in targeting and imaging manoeuvres for the pair of satellites involved in NASA Starlight space interferometer program. Although transportation applications are the most natural setting for the Travelling Salesman Problem, the model has led to many interesting applications in other areas.