Download presentation
Presentation is loading. Please wait.
Published byCameron Watkins Modified over 9 years ago
2
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.
3
A passionate affair Nature and Numbers – “Friends” for ever! I started it !
4
Describing nature with mathematics The universe is written in the language of mathematics, and its characters are triangles, circles, and other geometric figures
5
Describing nature with computation The universe is written in the language of Cellular Automata, and its characters are tiny cells with discrete states.
6
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
7
A merry-go-round can “sort” I too can sort! Huh !
8
Beads fall down in sorted order The SORT “gate” “raw” vector v sorted vector v
9
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
10
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 3 4 1 2
11
3 1 0 0 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
12
Bead-Sort: digital representation Presence of bead = 1-state Absence of bead = 0-state Flip-flops 00 0 0 0 00 0 0 0 1 1 11 11 1111
13
1 2 3 1 2 3 V2 V1 V3 Trim 1 2 3 v1v1v1v1 v2v2v2v2 v3v3v3v3 Increase voltage by 1 unit every time a ‘1’ is sent 110 (strings of 1’s similar to balls) DATA ENTRY 1 1 0 2 1 0 3 2 1 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 1 1 0 (no.2) 1 0 0 (no. 1) 1 1 1 (no. 3) 3 2 1 1/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 >= 0.5 0 otherwise 1 V 2 V 3 V sorted dataAnalogrepresentation
14
000 CA implementation initial configuration {2,1,3} final configuration {1,2,3} 111 1 11 00 0 000 1 1 1 1 11 0 00 0 00 0 1 01 0 0 00 1 1 01 1 0 10 0 1 10 0 0 11 1 1 11 1 12345678 Simple CA rules
15
A natural computational model
16
A self-regulating balance XY X + Y infinite source x, y x + y input pan (fixed weight) output pan (adjustable weight)
17
XY + ? X - Y = ? X = Y + ? (assume, x > y) Subtraction
18
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
19
Solving simultaneous equations X + Y = 5 X – Y = 3 xy 5 Represents X + Y = 5 y 3 x Represents X – Y = 3
20
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).
21
1 0 0 1 1 0 0 0 or 0 0 0 0 1 0 1 1 1 1 1 0 0 0 0 0 The “bias” in nature Sliders
22
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
23
Start Goal The problem space Combinatorial explosion need not matter
24
Natural algorithm - Natural algorithm - shortest path A B (Source) C D E (Destination) E (Destination)Shortestpath
25
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.
26
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
27
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
28
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 4 2 2 3
29
. 101000110100101100011.. 161, 700 degrees of freedom (100 cells with three 1’s) 1010001101000110100011010001 “squeeze” 11100000000111 OR 100C 3 degrees of freedom 2 possible states entropy loss = HUGE !
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.