Emergence & The Information Processing Paradigm (alt: Ants vs Clocks!) Deepak Kumar Computer Science Bryn Mawr College.

Slides:



Advertisements
Similar presentations
College of Information Technology & Design
Advertisements

CS211 Problems: unsolvable, unfeasible and unsolved Topic 3: P and NP.
Theory of Computing Lecture 1 MAS 714 Hartmut Klauck.
Razdan with contribution from others 1 Algorithm Analysis What is the Big ‘O Bout? Anshuman Razdan Div of Computing.
INTRODUCTION TO PROGRAMMING
Computer science is a field of study that deals with solving a variety of problems by using computers. To solve a given problem by using computers, you.
Learning Objectives Explain similarities and differences among algorithms, programs, and heuristic solutions List the five essential properties of an algorithm.
Computability and Complexity 13-1 Computability and Complexity Andrei Bulatov The Class NP.
CSE332: Data Abstractions Lecture 27: A Few Words on NP Dan Grossman Spring 2010.
LEARNING FROM OBSERVATIONS Yılmaz KILIÇASLAN. Definition Learning takes place as the agent observes its interactions with the world and its own decision-making.
Analysis of Algorithms CS 477/677
Computational Complexity, Physical Mapping III + Perl CIS 667 March 4, 2004.
LEARNING FROM OBSERVATIONS Yılmaz KILIÇASLAN. Definition Learning takes place as the agent observes its interactions with the world and its own decision-making.
Algorithmic Complexity 2 Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
CS10 The Beauty and Joy of Computing Lecture #23 : Limits of Computing Thanks to the success of the Kinect, researchers all over the world believe.
TK3043 Analysis and Design of Algorithms Introduction to Algorithms.
The Fundamentals: Algorithms, the Integers & Matrices.
Design & Analysis of Algorithms Introduction. Introduction Algorithms are the ideas behind computer programs. An algorithm is the thing which stays the.
Computability and Modeling Computation What are some really impressive things that computers can do? –Land the space shuttle (and other aircraft) from.
Computational Complexity Polynomial time O(n k ) input size n, k constant Tractable problems solvable in polynomial time(Opposite Intractable) Ex: sorting,
2.3 Functions A function is an assignment of each element of one set to a specific element of some other set. Synonymous terms: function, assignment, map.
Lecture 30. P, NP and NP Complete Problems 1. Recap Data compression is a technique to compress the data represented either in text, audio or image form.
Analysis of Algorithms
Introduction to Algorithms By Mr. Venkatadri. M. Two Phases of Programming A typical programming task can be divided into two phases: Problem solving.
Analysis of algorithms Analysis of algorithms is the branch of computer science that studies the performance of algorithms, especially their run time.
Introduction to Algorithms (2 nd edition) by Cormen, Leiserson, Rivest & Stein Chapter 1: The Role of Algorithms in Computing (slides by N. Adlai A. DePano)
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
P, NP, and Exponential Problems Should have had all this in CS 252 – Quick review Many problems have an exponential number of possibilities and we can.
Design & Analysis of Algorithms Lecture 1 Introduction.
Program Efficiency & Complexity Analysis. Algorithm Review An algorithm is a definite procedure for solving a problem in finite number of steps Algorithm.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
THE LAPLACE TRANSFORM LEARNING GOALS Definition
NP-COMPLETE PROBLEMS. Admin  Two more assignments…  No office hours on tomorrow.
3.3 Complexity of Algorithms
Beauty and Joy of Computing Limits of Computing Ivona Bezáková CS10: UC Berkeley, April 14, 2014 (Slides inspired by Dan Garcia’s slides.)
Counting Discrete Mathematics. Basic Counting Principles Counting problems are of the following kind: “How many different 8-letter passwords are there?”
CS10: The Beauty and Joy of Computing Lecture #22 Limits of Computing Warning sign posted at Stern Hall. Also, Apple releases new operating.
Module #7: Algorithmic Complexity Rosen 5 th ed., §2.3.
Chapter 10 Algorithmic Thinking. Learning Objectives Explain similarities and differences among algorithms, programs, and heuristic solutions List the.
The Beauty and Joy of Computing Lecture #23 Limits of Computing Researchers at Facebook and the University of Milan found that the avg # of “friends” separating.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 7 Time Complexity Some slides are in courtesy.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Computer Science: An Overview Eleventh Edition by J. Glenn Brookshear Chapter.
CES 592 Theory of Software Systems B. Ravikumar (Ravi) Office: 124 Darwin Hall.
Optimization/Decision Problems Optimization Problems – An optimization problem is one which asks, “What is the optimal solution to problem X?” – Examples:
Intro to Analysis of Algorithms. Algorithm “A sequence of unambiguous instructions for solving a problem, i.e., for obtaining a required output for any.
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Chapter 12 Theory of Computation Introduction to CS 1 st Semester, 2014 Sanghyun Park.
P, NP, and NP-Complete Problems Section 10.3 The class P consists of all problems that can be solved in polynomial time, O(N k ), by deterministic computers.
1.  A step by step process to solve any problem is called algorithm.  Algorithm is a process which take some values as input and provide us output.
CS10: The Beauty and Joy of Computing Lecture #21 Limits of Computing Instructor: Sean Morris UCB announces The Turing Test Tournament.
CSC 172 P, NP, Etc.
Chapter 12: Theory of Computation
Scalability for Search
What is an Algorithm? Algorithm Specification.
Chapter 1 Introduction Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Objective of This Course
Module #7: Algorithmic Complexity
Discrete Mathematics CS 2610
Chapter 11 Limitations of Algorithm Power
Algorithms.
Quadratic Equations.
Discrete Mathematics and its Applications
Module #7: Algorithmic Complexity
Future of Artificial Intelligence
CSC 380: Design and Analysis of Algorithms
Algorithms Algorithm. [webster.com] A procedure for solving a mathematical problem (as of finding the greatest common divisor) in a finite number of steps.
Algorithm: Word comes from Arabic Author Abū ‘Abdallāh Muḥammad ibn Mūsā al-Khwārizmī Algorism Algebra: Kitab al-Mukhtasar fi Hisab al-Jabr wal-Muqabala.
Design and Analysis of Algorithms
Chapter 1 Introduction Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Welcome to the most Amazing course there is 
Presentation transcript:

Emergence & The Information Processing Paradigm (alt: Ants vs Clocks!) Deepak Kumar Computer Science Bryn Mawr College

Emergence

Information Processing

Problem Solving (Investigation of Processes) Given a dictionary of english words, what are all the anagram classes? (e.g. earthling, haltering, lathering) Given the details of a tropical depression, can you predict if it will become a hurricane? What path will it take? Can you play the game of chess in a way that guarantees a win or a draw? How does the mind work? What is the most optimal way to get from here to there? What is the square root of 42? If the Fed. Raises the short term interest rates? What impact will it have on international currencies? What is the meaning of life?

Investigation: Asking Questions Given: A problem/process. Does it have a model? Is the model solvable? Is it computable? What is the best algorithm for it? Write a computer program that implements the algorithm. Is the program equivalent to the model? Does the model lend any new insights into the problem/process?

Given: A Problem Does it have a model? Is the model solvable? Is it computable? What is the best algorithm? Write a program that implements the algorithm that models the problem Is the program correct? Do the solutions offered by the program work in the real world? Does the model/program offer any new insights into the problem?

Information Processing Program that implements the model that solves the problem.

Information Processing Program that implements the model that solves the problem.

Computers & Clocks 1 flop = 1 floating-point operation (+, -, *, /) per second. 1 megaflop = 1 MF = 10 6 flops 1 gigaflop = 1 GF = 10 9 flops 1 teraflop = 1 TF = flops 1 petaflop = 1 PF = flops  The fastest PC can give a peak performance of 1GF/second  World’s fastest computer operates at approximately 35 TF/sec (as of 11/16/2003): NEC’s Earth Simulator at the Earth Simulator Center in Yokohama, Japan  Examining a single move of a chess game is roughly equivalent to 1000 FLOPS.  To make one move the computer will have to examine approximately board situations.  This will take the Earth Simulator approximately years to make one move!

Computability: Problems that can be solved by algorithms (Turing Machines) Does it have a model? Is the model solvable? Is it computable? What is the best algorithm? Write a program that implements the algorithm that models the problem Is the program correct? Do the solutions offered by the program work in the real world? Does the model/program offer any new insights into the problem?

Complexity Theory: Resources required during computation to solve a given problem (time & space) Does it have a model? Is the model solvable? Is it computable? What is the best algorithm? Write a program that implements the algorithm that models the problem Is the program correct? Do the solutions offered by the program work in the real world? Does the model/program offer any new insights into the problem?

What is an algorithm? A set of instructions arranged in a specific order is a procedure. Similar to a recipe, process, method, technique, procedure, routine, rigmarole, except the word “algorithm” connotes just a little something different. An algorithm is a finite, definite, effective procedure, with some output. Donald Knuth: The Art of Computer Programming, Volume 1: Fundamental Algorithms, 3 rd edition, 1997.

Algorithm (origins) Abu ‘Abd Allah Muhammad ibn Musa al-Khwarizmi (Father of Abdullah, Mohammad, son of Moses, native of Khwarizm) Kitab al jabr wa’l-muqabala (Rules of restoring and equating)

Finite there must be an end to it within a reasonable time Definite Precisely definable in clearly understood terms, no “pinch of salt” type vagaries, or possible ambiguities Effective It must be possible to actually carry out the steps Procedure The sequence of specific steps Output unless there is something coming out of the computation, the result will be unknown! Algorithm (properties)

Problem Size Time complexity of a problem is the number of steps that it takes to solve an instance of the problem as a function of the size of the input. i.e. if the input is of size, n, it will take f(n) steps to solve it. Program that implements the model that solves the problem In f(n) steps. Problem size = 4

Complexity Classes (# steps it takes to solve a problem) Constant time: O(1) Logarithmic time: O(log n) Linear time: O(n) Quadratic Time: O(n 2 ) Polynomial time (P): O(n k ) Non-deterministic Polynomial Time (NP): O(n k ) on some inputs. Exponential time: O(2 n ) Exponential time (in general): O(2 p(n) )

# time steps

Solving hard problems: Options solve small problem sizes use heuristics get a close enough answer! Emergence!

Emergence as a methodology for solving problems What kinds of problems? no models exist, unsolvable models, uncomputable models, exponential problems! How? “many ants are better than one” Train ‘em!

The Emergence Approach to Problem Solving Training Regime Problem Instance Solution“ANTS” Key Idea: Known solutions to problem instances are used in training.

On “Graduation” Problem Instance Solution“ANTS” The system will generalize to solve other problem instances!

Examples: Neural Networks Problem Instance Solution Supervised Training

Examples: Self-Organizing Maps Problem Instance Solution Unsupervised Training!

Examples: Genetic Programming Problem Instances Solutions Fitness Function

Emergence & Problem Solving Are solutions to several problem instances known? Given a solution, is it possible to quantify the “quality” of the solution? Identify the training regime and implement it. Does the solution offered by the trained program work in the real world? Does the resulting program offer any insights into the problem?

Some characteristics of emergent problem solving Rather than starting from a model, start with a set of known problem-solution instances Solutions may not be exact, but characterized as “best” solutions under the circumstances Training takes time Once trained, all solutions take the same amount of time, independent of the size of the problem! Emergent solutions can beat the clock! Emergent Computation = Surreal computation?