Self-Healing Structures Using Cell Induction Selvin George 22-Apr-03 CS851: Bio-Inspired Computing Mickey lived a carefree life… 22-Apr-03 CS851: Bio-Inspired Computing Until one fateful day… Oh Poor Mickey… Write you a better program I must! 22-Apr-03 CS851: Bio-Inspired Computing Understanding Nature’s System Model Large number of un-reliable cells No unique ID, global position etc., No global communication Physics and Chemistry No gravity, simple chemical reactions Single Program on each cell …Swarm Programming 22-Apr-03 CS851: Bio-Inspired Computing Understanding Nature’s Cell Model Awareness of Environment Cell Actions Sense chemicals on cell walls Cell Division State Change Emit chemicals to neighbors cell walls Diffuse chemicals over a short range Simple forces to model cell displacement Chemicals can nullify each other (A, 1) + (B, 0.5) -> (A, 0.5) + (salt, 0.5) 22-Apr-03 CS851: Bio-Inspired Computing Devise a better Programming Model A can induce B by short range diffusion of chemicals A and C can induce B by emitting chemicals across their cell walls Induced Cell can perform actions dependent upon the direction of induction 22-Apr-03 B A A B C C A CS851: Bio-Inspired Computing C B C C Example – Sphere Program A alive < 1 alive > 0 B alive < 1 & A>1 22-Apr-03 state A { emits (alive, 1) diffuses (A, 10) transitions (alive < 1) from any direction -> (A, B) in same direction; -> (A); } state B { emits (alive, 1) transitions (alive < 1) from any direction & (A > 1) -> (B, B) in same direction; (alive > 0) from any direction -> (B); -> (A); } CS851: Bio-Inspired Computing Sphere Development - 1 22-Apr-03 CS851: Bio-Inspired Computing Sphere Development - 2 22-Apr-03 CS851: Bio-Inspired Computing Sphere Development - 3 22-Apr-03 CS851: Bio-Inspired Computing Sphere Development - 4 22-Apr-03 CS851: Bio-Inspired Computing Sphere : Damage (66%) 22-Apr-03 CS851: Bio-Inspired Computing Sphere Healing - 1 22-Apr-03 CS851: Bio-Inspired Computing Sphere Healing - 2 22-Apr-03 CS851: Bio-Inspired Computing Sphere Healing - 3 22-Apr-03 CS851: Bio-Inspired Computing Sphere Healing - 4 22-Apr-03 CS851: Bio-Inspired Computing Performance of Sphere Program 22-Apr-03 CS851: Bio-Inspired Computing Meanwhile … Ahem! How is my program going? 22-Apr-03 CS851: Bio-Inspired Computing A Quick look Mesh Program state corner { emits (A, 5), (alive, 1) in all directions transitions (alive < 1) from any direction -> (corner, segment) in same direction; -> (corner); } state segment { emits (alive, 1) in all directions transitions (A > 0) from any direction & (alive > 0) from opposite direction -> (segment) emits (A - 1) in all directions; (A > 0) from any direction -> (segment, segment) in opposite direction emits (A - 1) in opposite direction; (A = 0) -> (corner); } 22-Apr-03 CS851: Bio-Inspired Computing Mesh – Developed 22-Apr-03 CS851: Bio-Inspired Computing Mesh – Damaged 22-Apr-03 CS851: Bio-Inspired Computing Mesh – Healed 22-Apr-03 CS851: Bio-Inspired Computing The Mickey Skeleton 22-Apr-03 CS851: Bio-Inspired Computing Mickey : Development – 1 22-Apr-03 CS851: Bio-Inspired Computing Mickey : Development – 2 22-Apr-03 CS851: Bio-Inspired Computing Mickey : Development – 3 22-Apr-03 CS851: Bio-Inspired Computing Mickey : Development – 4 22-Apr-03 CS851: Bio-Inspired Computing Mickey : Injured 22-Apr-03 CS851: Bio-Inspired Computing Mickey : Healing – 1 22-Apr-03 CS851: Bio-Inspired Computing Mickey : Healing – 2 22-Apr-03 CS851: Bio-Inspired Computing Mickey : Healing – 3 22-Apr-03 CS851: Bio-Inspired Computing Mickey : Healing – 4 22-Apr-03 CS851: Bio-Inspired Computing Applications: Distributed Wireless File Service File Replication Node possessing file emits inhibit (shorter-range) and replicate Node receiving replicate but not inhibit replicate the file File Request/Response Node requests a file Typically one server responds. 22-Apr-03 CS851: Bio-Inspired Computing Conclusions Nature’s programs can heal and regenerate lost components System designers can learn principles of robustness from nature’s programs Simplify the task of programming robust systems Cell Based Programming Cell Induction 22-Apr-03 CS851: Bio-Inspired Computing All’s well that ends well 22-Apr-03 CS851: Bio-Inspired Computing Questions and Answers 22-Apr-03 CS851: Bio-Inspired Computing