NATURAL ALGORITHMS Joshua J. Arulanandham, PhD student. Prof. Cristian S. Calude and Dr. Michael J....

download NATURAL ALGORITHMS Joshua J. Arulanandham, PhD student. Prof. Cristian S. Calude and Dr. Michael J. Dinneen, Supervisors. Department of Computer Science,

If you can't read please download the document

description

A passionate affair Nature and Numbers – “Friends” for ever! I started it !

Transcript of NATURAL ALGORITHMS Joshua J. Arulanandham, PhD student. Prof. Cristian S. Calude and Dr. Michael J....

NATURAL ALGORITHMS Joshua J. Arulanandham, PhD student. Prof. Cristian S. Calude and Dr. Michael J. Dinneen, Supervisors. Department of Computer Science, The University of Auckland, New Zealand. A passionate affair Nature and Numbers Friends for ever! I started it ! Describing nature with mathematics The universe is written in the language of mathematics, and its characters are triangles, circles, and other geometric figures Describing nature with computation The universe is written in the language of Cellular Automata, and its characters are tiny cells with discrete states. How about describing computation with nature ? To those who study her, Nature reveals herself as extraordinarily fertile in devising means Joseph Wood Krutch, nature writer A merry-go-round can sort I too can sort! Huh ! Beads fall down in sorted order The SORT gate raw vector v sorted vector v Bead-Sort Sorting {3, 1, 2} 2. Drop 1 bead 3. Drop 2 beads 1. Drop 3 beads (Remember, always from left-to-right) 1 2 3 Bead-Sort Sorting {1, 3, 2, 4} 2. Drop 3 beads 3. Drop 2 beads 1. Drop 1 bead (Remember, always from left-to-right) 4. Drop 4 beads Level_Count Bead-Sort: s equential implementation Two linear arrays used. Rod_Count keeps track of number of beads in each rod. Level_Count records number of beads in each level. Level_Count would contain sorted data, in the end. Rod_Count 2 1 1 Bead-Sort: digital representation Presence of bead = 1-state Absence of bead = 0-state Flip-flops 1 2 3 V2 V1 V3 Trim v1v1v1v1 v2v2v2v2 v3v3v3v3 Increase voltage by 1 unit every time a 1 is sent 110 (strings of 1s similar to balls) DATA ENTRY Calculating current flow Resistor chain 1: I1 = V1/R = 3/(1+2+3) = 1/2 A Resistor chain 2: I2 = V2/R = 2/(1+2+3) = 1/3 A Resistor chain 3: I3 = V3/R = 1/(1+2+3) = 1/6 A (no.2) (no. 1) (no. 3) /2 A1/3 A1/6 A 0.5 V 1 V 1.5 V 0.3 V 0.7 V 1 V 0.2 V 0.3 V 0.5 V Trim Voltage level: Trim( v ) = 1 if v >= otherwise 1 V 2 V 3 V sorted dataAnalogrepresentation 000 CA implementation initial configuration {2,1,3} final configuration {1,2,3} Simple CA rules A natural computational model A self-regulating balance XY X + Y infinite source x, y x + y input pan (fixed weight) output pan (adjustable weight) XY + ? X - Y = ? X = Y + ? (assume, x > y) Subtraction Average, division & multiplication a a 2a input aa a a 4a x, y a a a = (x + y) / 2 x, y, z, w aa aa a = (x + y + z + w) / 4 Solving simultaneous equations X + Y = 5 X Y = 3 xy 5 Represents X + Y = 5 y 3 x Represents X Y = 3 Principles for designing natural algorithms Principle of Preferred States A natural system has a set of preferred states due to the presence of inherent properties and laws, thus restraining the degrees of freedom of the system. Principle of Bilateral Symmetry Some natural (physical) systems can facilitate both forward and backward directions of information-flow, for the same price: it is possible to compute what possible input(s) might lead to a particular output. Principle of Automatic Constraint Satisfaction If the constraints in a problem are hard-wired into the natural system (representing the problem), then, the preferred state is the desired solution (state). or The bias in nature Sliders Automatic constraint satisfaction - A simple demonstration l1l1 l2l2 l3l3 (l 1 + l 2 + l 3 ) / 3 Liquids finding the same level due to atmospheric pressure Start Goal The problem space Combinatorial explosion need not matter Natural algorithm - Natural algorithm - shortest path A B (Source) C D E (Destination) E (Destination)Shortestpath THANK YOU! Special thanks are due to Dr. Alan Creak, Honorary Researcher, Dept. of Computer Science Prof. Boris Pavlov, Professor, Dept. of Mathematics Prof. Garry Tee, Research Fellow, Dept. of Mathematics Mr. Jasvir Nagra, PhD Student, Dept. of Computer Science Mr. Damien Duff, MSc Student, Dept. of Computer Science Mr. Andrew Paxie, MSc Student, Dept. of Computer Science Mr. Dong Qiang, former MSc Student, Dept. of Computer Science Mr. Philip Chiang, PhD Student, Dept. of Computer Science Mr. Chi-kou Shu, PhD Student, Dept. of Computer Science Mr. Ming Li, MSc Student, Dept. of Computer Science for their invaluable suggestions and comments. Bead Sort Sorting {2, 3, 1} 2. Drop 3 beads 3. Drop 1 beads 1. Drop 2 beads (Remember, always from left-to-right) 1 2 3 Bead Sort Sorting {1, 3, 2} 2. Drop 3 beads 3. Drop 2 beads 1. Drop 1 bead (Remember, always from left-to-right) 1 2 3 Bead Sort Sorting {2, 4, 3, 2} 2. Drop 4 beads 3. Drop 3 beads 1. Drop 2 beads (Remember, always from left-to-right) 4. Drop 2 beads , 700 degrees of freedom (100 cells with three 1s) squeeze OR 100C 3 degrees of freedom 2 possible states entropy loss = HUGE !