University of Zagreb, Croatia Synchronization inspired by fireflies Iva Bojić University of Zagreb, Croatia Faculty of Electrical Engineering and Computing Department of Telecommunications Summer School of Science 2012 August 7, 2012, Višnjan, Croatia Round of applause use your hands and move your body University of Zagreb, Croatia S3++ 2012 13 April 2015 1 of 19 Group of people same rhythmus University of Zagreb, Croatia S3++ 2012 13 April 2015 2 of 19 Heterogeneous Machine-to-Machine Systems same time University of Zagreb, Croatia S3++ 2012 13 April 2015 3 of 19 Logical questions can we go home? University of Zagreb, Croatia 1. How hard it is to synchronize different clocks? 2. Why do we need time synchronization? 3. How can we achieve time synchronization? S3++ 2012 13 April 2015 4 of 19 Outline try to give logical answers… University of Zagreb, Croatia Research motivation Biologically-inspired computing Firefly-inspired synchronization Results from the laboratory setting Conclusion S3++ 2012 13 April 2015 5 of 19 Computer clock how does it work? University of Zagreb, Croatia How is this possible? Quartz crystals are manufactured for frequencies from a few tens of kHz to tens of MHz A clock is an electronic device that counts oscillations in a crystal at a particular frequency S3++ 2012 13 April 2015 6 of 19 Problem no global notion of time University of Zagreb, Croatia In distributed systems each node has its own clock and its own notion of time In practice these clocks drift apart accumulating errors over time (1 second every 11 days) S3++ 2012 13 April 2015 7 of 19 Need for (speed?) time University of Zagreb, Croatia Global notion of time is prerequisite for: common resource sharing (e.g. channel) depend events tracking (e.g. consistency of distributed databases) simultaneous events detection (e.g. data collection) Frequency division multiple access S3++ 2012 Time division multiple access 13 April 2015 8 of 19 Time synchronization different algorithms University of Zagreb, Croatia Time synchronization provides a common time scale for local clocks of nodes in distributed systems B. Sundararaman, U. Buy and A. D. Kshemkalyani: Clock synchronization for wireless sensor networks: A Survey, Ad Hoc Networks 3, pp. 281-323 (2005) S3++ 2012 13 April 2015 9 of 19 Biologically-inspired computing biology applied in distributed systems University of Zagreb, Croatia Nature is a enormous and a highly complex system processes are done without any centralized control processes are self-sustainable and self-organized Self-organization is a process where some form of global order arises out of the local interactions between the components of an initially disordered system S3++ 2012 13 April 2015 10 of 19 Self-synchronization in nature University of Zagreb, Croatia a) fireflies S3++ 2012 b) neurons 13 April 2015 c) heart cells 11 of 19 Self-synchronization in humans University of Zagreb, Croatia S3++ 2012 13 April 2015 12 of 19 Pulse coupled oscillators model one firefly University of Zagreb, Croatia If oscillators are not coupled, their state variables change following only their own excitations xi denotes state variable xi 1 flash ti* denotes a moment i-th oscillator flashes ex ci t at io n xi(t) = fi(t) flash threshold when 0 ti*= T 2T t R. E. Mirollo and S. H. Strogatz. Synchronization of pulse-coupled biological oscillators. SIAM J. Appl. Math. 50: pp.1645-1662 (1990) S3++ 2012 13 April 2015 13 of 19 Pulse coupled oscillators model two fireflies University of Zagreb, Croatia If oscillators are coupled xi state variable xi is adjusted upon the 1 flash threshold εij ta tio ci t*i T flash flash threshold 0 xj ϵij is a coupling constant flash n 1 t 2T gij(t) is a coupling function between i-th and j-th oscillators ex ci ta tio xi(t) = fi(t) + ϵij gij(t) ex εij n reception of flashes from the others flash εji 0 t*j T εji t 2T R. E. Mirollo and S. H. Strogatz. Synchronization of pulse-coupled biological oscillators. SIAM J. Appl. Math. 50: pp.1645-1662 (1990) S3++ 2012 13 April 2015 14 of 19 Pulse coupled oscillators model limitations University of Zagreb, Croatia Pulse coupled oscillators model assumptions no oscillators with a faulty behavior that desynchronizes the network oscillators are connected in a fully-connected network oscillators cannot join or leave the network nor change their positions in the network (i.e. no mobility) oscillators are the same no delays S3++ 2012 (i.e. have same frequencies) in the message exchange among oscillators 13 April 2015 15 of 19 Robustness with oscillators with faulty behavior University of Zagreb, Croatia We embedded a cryptographic mechanism in the pulse coupled oscillators model to ensure robustness We used the logical operation exclusive disjunction (i.e. XOR) provides protection from an attack does not have a negative effect on the time needed for synchronization S3++ 2012 13 April 2015 16 of 19 Results robustness University of Zagreb, Croatia S3++ 2012 13 April 2015 17 of 19 Conclusions can we go home? NOW WE CAN!!!!!!!!!!!!!!!!!!! University of Zagreb, Croatia 1. How hard it is to synchronize different clocks? 2. Why do we need time synchronization? 3. How can we achieve time synchronization? S3++ 2012 13 April 2015 18 of 19 Questions? University of Zagreb, Croatia S3++ 2012 13 April 2015 19 of 19 Summation exclusive disjunction University of Zagreb, Croatia Input A B 0 0 0 1 1 0 1 1 S3++ 2012 Output 0 1 1 0 13 April 2015 20 of 19