Top Banner
Scalable distributed computing with distributed intelligent MEMS Julien BOURGEOIS (UFC/FEMTO-ST), Seth Copen Goldstein (CMU/SCS) Keynote talk, Euromicro PDP conference, Garching, February 2012 Work funded by: ANR (ANR-06-ROBO-0009), ANR (ANR-2011-BS03-005), DARPA (FA87501010215), NSF (CNS-0428738) and Intel Corporation
79

Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Oct 06, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Scalable distributed computing with distributed intelligent MEMS Julien BOURGEOIS (UFC/FEMTO-ST), Seth Copen Goldstein (CMU/SCS) Keynote talk, Euromicro PDP conference, Garching, February 2012

Work funded by: ANR (ANR-06-ROBO-0009), ANR (ANR-2011-BS03-005), DARPA (FA87501010215), NSF (CNS-0428738) and

Intel Corporation

Page 2: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

2 /66

Outline

Introduction

The Smart Projects

– Presentation

– Results

Claytronics

– Presentation

– Results

Challenges

Conclusion & perspectives

Page 3: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

3 /66

Introduction

Parallel and distributed computing

– Tighly linked to history of computer science

– Appears in many fields of CS

Distributed community created many different fields of research

– From fundation theory to cloud

Objective of this talk

– Present a new field/application/system for distributed computing: distributed intelligent MEMS

Page 4: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

4 /66

Introduction

Microtechnology is now a mature technology

MEMS can be produced by thousands units

Applications:

STMicro LIS331DLH

Accelerometers

What for?

Page 5: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

5 /66

Introduction

Microtechnology is now a mature technology

MEMS can be produced by thousands units

Applications:

TI

Digital Micromirror Device

What for?

Page 6: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

6 /66

MEMS Classification

MEMS

Sensor MEMS

Single MEMS Distributed

MEMS

Static topology Dynamic topology

Actuator MEMS

Single MEMS Distributed

MEMS

Static topology Dynamic topology

Sensor/Actuator MEMS

Single MEMS Distributed

MEMS

Static topology Dynamic topology

DMD Accelerometer

Page 7: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

7 /66

Flow of information

Distributed MEMS

Sensor MEMS

Static topology Dynamic topology

Actuator MEMS

Static topology Dynamic topology

Sensor/Actuator MEMS

Static topology Dynamic topology

Output only Input only Input/Output

Scalability issue

Distributed Intelligent MEMS

Page 8: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

8 /66

Some projects

Simple MEMS

Remote intelligence MEMS

Integrated intelligence MEMS

Static Distributed MEMS

Mobile Distributed MEMS

+ External PC

+ FPGA

+ Distributed

intelligence

+ Dynamic

network

topology

Smart Surface

Silmach Dragonfly

Accoustic impedance control

Claytronics Smart Blocks

Page 9: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

9 /66

Introduction

Microtechnology is now a mature technology

MEMS can be produced by thousands units

Need for embedded intelligence

New challenges:

– Coordination needs distribution paradigm

• Communication

• Programming

• Control

– Smooth integration of different technologies

Scalability up to millions!

– 1 m3 of intelligent MEMS -> internet on your table!

Page 10: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

10 /66

Introduction

One overriding design goal: Scaling

Scale up in numbers (millions of units)

– A software challenge

Scale down in size (sub mm dimensions)

– A hardware challenge

Page 11: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

11 /66

Distributed Intelligent MEMS properties

Units (sensor+actuator+processing unit+communication capabilities)

Synchronization • Units acts independently

• Units acts synchronously

• Locally

• Globally

Communication channel • Wired equivalent quality

• Wireless equivalent quality

• Smart Surface: Global synchronization, fixed position, static, wired eq. quality

• Smart Blocks: Local synchronization, mobile, dynamic, wired eq. quality

• Accoustic impedance control: Local synchronization, fixed position, static, wired eq. quality

• Claytronics: No synchronization, mobile, dynamic, wireless eq quality

Physical topology • Units are mobile

• Units have a fixed position

Logical topology • Static

• Dynamic

Page 12: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

12 /66

Partnership

12

Computer science

Micro-systems

Electronics Control

MEMS Micro-

robotics

Distributed control Networking

Distributed

Intelligent

MEMS

Page 13: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

13 /66

Relations to existing fields of research

Parallel computing

– Scientific applications running in parallel

Mobile computing

– Mobility

Ad hoc networking

– Topology and energy saving

Pervasive/ubiquitous computing/Internet of Things

– Interactions between intelligent objects

– Linked to real-world

MEMS computing

– Scalability

– Linked to/act on real-world

Page 14: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

14 /66

Outline Introduction

The Smart Projects

– The Smart Surface project

• Presentation

• Results

– The Smart Blocks project

• Presentation

• Preliminary results

Claytronics

– Presentation

– Results

Conclusion & perspectives

Page 15: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

15 /66

Front-side

Back-side

Smart Surface Project

Objective : Design and realization of a distributed intelligent MEMS to convey and to sort mesometric objects

560 micro-actuators, distributed intelligence

actuator surface: ~1mm²

matrix surface 35 x 35 mm²

Work is funded by ANR , contract ANR-06-ROBO-0009-03

22 permanent researchers

5 labs (French and Japanese)

Page 16: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

16 /66

Objectives

Managing informations from sensors

– Distributed differenciation of objects with:

• Low computing power

• Low memory size

• High level of discretization

Managing communications

– Preserving scalability

– Fault tolerance

Page 17: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

17 /66

Distributed differentiation of objects

Is it possible to differentiate highly discretized objects and what are the best criteria to do so?

– Exhaustive Comparison Framework

What is the optimal number of sensors?

– Sensor Network Calibrator

What is the optimal way to communicate?

– Smart Surface Simulator

Integration with control in Simulink

Page 18: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

18 /66

19 criteria have been tested in ECO, like criterion Y:

– P for Part and S for Surface

– Y= with

– Y = ( ) x (…) x …

Criteria definition

1),( ),( yxSyxP

Pc

ccPc

M ccd1

21

2

),( 21 )(2)(1)(2)(1 yyxxM ccccd

1

Y=1 492 992 Y=663 552

x2 x3 x1 x2 x3

Page 19: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

19 /66

ECO criteria tree

Page 20: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

20 /66

Sensor Network Calibrator

Page 21: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

21 /66

Sensor Network Calibrator

Page 22: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

22 /66

Asynchronous distributed state acquisition

Distributed asynchronous state acquisition description via successive approximation method:

with

and with T(i) the set of times at which sub vector xi is updated

Page 23: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

23 /66

Smart Surface Simulator

Asynchronous distributed state acquisition:

Experiment performed in LAAS/CNRS, thanks to Didier El Baz and Vincent Boyer

Page 24: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

24 /66

Integration with control

...

...

Motion controller

Valve i

...

s k u i kon/off sensor i

on/off sensor i+1

...

...

bi k

on/off sensor i+2

bi 1 k

bi 2 k

Part reconstruction and differentiation

...

Part reconstruction and differentiation

Part reconstruction and differentiation

s k

s k

Motion controller

Motion controller

...

Valve i+1u i 1 k

Valve i+2u i 2 k

...

P2P communication

P2P communication

P2P communication

P2P communication

Page 25: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

25 /66

Outline Introduction

The Smart Projects

– The Smart Surface project

• Presentation

• Results

– The Smart Blocks project

• Presentation

• Preliminary results

Claytronics

– Presentation

– Results

Conclusion & perspectives

Page 26: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

26 /66

Smart Blocks project

A MEMS-based modular and self-reconfigurable surface for fast conveying of fragile objects and medicinal products

20 permanent researchers, 4 labs, 1 company

Work funded by ANR, contract ANR-2011-BS03-005

Page 27: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

27 /66

Page 28: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

28 /66

Smart Blocks project

Challenges:

– Hardware

• CMOS and MEMS integration

• Integrating processing unit, communication network, high voltage circuit in reduced space

– Software

• Co-design between distributed computing and control to manage millions of sensors/actuators.

• Optimization of the physical topology

• Developing software for computer-aided design of very large multi-domain systems

Page 29: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

29 /66

Existing distributed control

Don’t use resources in a optimal way • High constraints on the network or

• Non-optimal control law

Page 30: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

30 /66

Proposed distributed control

Integration of computation and communication models

Interaction with control

Page 31: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

31 /66

Proposed distributed control

)(

1

),(),(

)(

1 1

)(

1

)().(..PNbC

n

mnsmn

PNbB

n

n

i

ibimi

pNb

b

bg TTSNISTCNEC c

seq

Integration of computation and communication models

Interaction with control

Page 32: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

32 /66

Preliminary results

Page 33: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

33 /66

Preliminary results

Page 34: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

34 /66

Outline

Introduction

The Smart Projects

– Presentation

– Results

Claytronics

– Presentation

– Results

Challenges

Conclusion & perspectives

Page 35: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

35 /66 www.cs.cmu.edu/~claytronics

Claytronics

Page 36: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

36 /66

www.cs.cmu.edu/~claytronics

Claytronic Apple Real Apple

Claytronics

Page 37: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

37 /66 37

CATOM = Claytonic Atom

~meters (2006)

~decimeters (2007)

~centimeters (2007)

~milimeters (2010)

Claytronics

Page 38: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

38 /66

Shell

Chip

Catom

Catom: a rolling cylinder.

Shell

Chip

Shell: SiO2 film + Aluminum

Chip: HV SOI CMOS die

Catom (1)

Page 39: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

39 /66

Coupling Electrodes

Two types of electrodes:

1) Coupling electrodes

2) Actuation electrodes

Actuation

Electrodes

Chip has two main functions:

1) Power

2) Actuation

Actuation

Electrodes

Catom (2)

Page 40: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

40 /66

Outline

Introduction

The Smart Projects

– Presentation

– Results

Claytronics

– Presentation

– Results

Challenges

Conclusion & perspectives

Page 41: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

41 /66

Hardware results: Electrostatics

One mechanism: four functions

– Adhesion

– Actuation

– Communication

– Power Transfer

Page 42: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

42 /66

Hardware results: Electrostatics

One mechanism: four functions

– Adhesion

– Actuation

– Communication

– Power Transfer

Page 43: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

43 /66

Software results

Suppose we have a robotic system where the robots can move around one another

How can we get them to a particular location (e.g. 4) with 3 lines of code?

s t 4 0 3 2 1

s t 4 0 3 2 1

Page 44: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

44 /66

Walk example

Rule 1:

dist(S, DS) :- at(S, PS), destination(PD), DS = |PS-PD|.

Rule 2: farther(S, T) :- neighbor(S, T), dist(S, DS), dist(T,DT), DS >= DT.

Rule 3: moveAround(S,T,P) :- farther(S,T), vacant(T,P),

dist(S,DS), destination(PD), DS > |P-PD|.

Page 45: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

45 /66

Walk example: Rule 1, dist

dist(S, DS) :- at(S, PS), destination(PD), DS = |PS-PD|.

dist(s, DS) :- at(s, <0>), destination(PD), DS = |<0>-PD|.

dist(s, DS) :- at(s, <0>), destination(<4>), DS = |<0>-<4>|.

dist(s, 4) :- at(s, <0>), destination(<4>), 4 = |<0>-<4>|.

s t 4 0 3 2 1

Page 46: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

46 /66

Walk example: Rules

Rules are created:

destination(<4>)

at(s, <0>)

at(t, <1>)

neighbor(s,t)

neighbor(t,s)

vacant(t,<2>)

dist(s, 4)

dist(t, 3)

...

s t 4 0 3 2 1

Page 47: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

47 /66

Walk example: Rule 2, farther

farther(S, T) :- neighbor(S, T), dist(S, DS), dist(T,DT), DS >= DT.

farther(s, t) :- neighbor(s, t), dist(s, DS), dist(T,DT), DS >= DT.

farther(s, t) :- neighbor(s, t), dist(s, 4), dist(t,DT), 4 >= DT.

farther(s, t) :- neighbor(s, t), dist(s, 4), dist(t,3), 4 >= 3.

farther(s, t) :- neighbor(s, t), dist(s, 4), dist(t,3), 4 >= 3.

s t 4 0 3 2 1

Page 48: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

48 /66

Walk example: Rules

Farther rule is added:

s t 4 0 3 2 1

destination(<4>)

at(s, <0>)

at(t, <1>)

neighbor(s,t)

neighbor(t,s)

vacant(t,<2>)

dist(s, 4)

dist(t, 3)

farther(s,t)

...

Page 49: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

49 /66

Walk example: Rule 3, moveAround

moveAround(S,T,P) :- farther(S,T), vacant(T,P), dist(S,DS), destination(PD), DS > |P-PD|.

moveAround(s,t,P) :- farther(s,t), vacant(t,P), dist(s,DS), destination(PD), DS > |P-PD|.

moveAround(s,t,<2>) :- farther(s,t), vacant(t,<2>), dist(s,DS), destination(PD), DS > |<2>-PD|.

moveAround(s,t,<2>) :- farther(s,t), vacant(t,<2>), dist(s,4), destination(PD), 4 > |<2>-PD|.

moveAround(s,t,<2>) :- farther(s,t), vacant(t,<2>), dist(s,4), destination(<4>), 4 > |<2>-<4>|.

moveAround(s,t,<2>) :- farther(s,t), vacant(t,<2>), dist(s,4), destination(<4>), 4 > |<2>-<4>|.

Page 50: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

50 /66

Walk example

moveAround(s,t,<2>) is an action, not a fact

– Causes robot s to move to <2>

3 lines of code makes two robots reach their goal

– Program is provable

– Fault-tolerant

s t 4 0 3 2 1

s t 4 0 3 2 1

Page 51: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

51 /66

Gates-Hillman shape change (10M units)

Page 52: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

52 /66

Gates-Hillman shape change type create(catom, point). type destroy(catom, catom). type give(catom, catom). type resources(catom, int). extern int inTargetShape(point). type in(catom). type out(catom). type state(catom, min int). type parent(catom, catom, int). type child(catom, catom). type false(catom, catom). type possibleParent(catom, first catom, min int). type notChild(catom, catom). in(Module) :- position(Module, Spot), 1 = inTargetShape(Spot). out(Module) :- position(Module, Spot), 0 = inTargetShape(Spot). state(Module, Neutral) :- position(Module, _), Neutral = 2.

state(Module2, Path) :- neighbor(Module1, Module2, _), state(Module1, Final), Final = 0, out(Module2), aPath = 1. state(Module2, Path) :- neighbor(Module1, Module2, _), state(Module1, Path), Path = 1. state(Module2, Final) :- neighbor(Module1, Module2, _), state(Module1, Final), Final = 0, in(Module2). possibleParent(Module2, Module1, Dist2) :- neighbor(Module1, Module2, _), state(Module2, Path), Path = 1, parent(Module1, _, Dist1), Dist2 = Dist1 + 1. possibleParent(Module2, Module1, Dist) :- neighbor(Module1, Module2, _), state(Module2, Path), Path = 1, state(Module1, Final), Final = 0, Dist = 1. child(Module2, Module1) :- neighbor(Module1, Module2, _), possibleParent(Module1, Module2, _). parent(Module1, Module2, Dist) :- neighbor(Module2, Module1, _), child(Module2, Module1), possibleParent(Module1, Module2, Dist).

notChild(Module1, Module2) :- neighbor(Module1, Module2, _), parent(Module2, Module3, Dist2), parent(Module1, _, Dist1), Dist2 <= Dist1 + 1, Module1 != Module3. notChild(Module1, Module2) :- neighbor(Module1, Module2, _), state(Module2, Final), Final = 0. destroy(Module1, Module2) :- state(Module1, Path), Path = 1, neighbor(Module1, Module2, _), resources(Module1, Destroy), Destroy = 0, resources(Module2, Destroy), Destroy = 0, forall neighbor(Module1, N, _) notChild(Module1, N), forall child(Module1, Child) false(Module1, Child). give(Module1, Module2) :- neighbor(Module1, Module2, _), resources(Module1, Create), Create = 1, resources(Module2, Destroy), Destroy = 0. create(Module, Spot) :- state(Module, Final), 0 = Final, // in final state vacant(Module, Spot), 1 = inTargetShape(Spot), resources(Module, Create), 1 = Create.

Page 53: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

53 /66

Outline

Introduction

The Smart Projects

– Presentation

– Results

Claytronics

– Presentation

– Results

Challenges

Conclusion & perspectives

Page 54: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

54 /66

Challenges

Hardware

– Voltage difference management between actuation and logic

– Seamless integration of MEMS and IC

– Designing affordable chips

– Designing robust MEMS

– Building micro-communication devices

– Building wireless nanonetworks

Page 55: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

55 /66

Challenges

Software

– Scalability

– Fault-tolerance

– Implicit communications

– Maintaining a logical topology

– Optimization of the relation between logical and physical topologies

– Dealing with complexity of programming and controlling large ensembles of synchronized MEMS

Page 56: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

56 /66

Challenges

Software (cont’d)

– Need for efficient simulation tools

– Tradeoff between computation/communication/sensing

– High speed networking for control

– Properties verification

– Relation with macro world

– Layered or cross-layer model

Page 57: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

57 /66

Outline

Introduction

The Smart Projects

– Presentation

– Results

Claytronics

– Presentation

– Results

Challenges

Conclusion & perspectives

Page 58: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

58 /66

Conclusion

Asynchronous communications better scale

– Better tolerance to fault

– Better scalability

Easier for developers if communications are hidden

– Ensemble principle that drives languages developed in Claytronics

Having a real working experimental plate-form is still a challenge

– Cost a lot

– Needs different skills

Page 59: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

59 /66

Perspectives

MEMS/IC integration will lead the way to distributed intelligent MEMS

Many challenges are still to be addressed

Wireless ranged communication are promising

Creation of a research community in distributed intelligent MEMS:

– dMEMS workshop, April 2nd and 3rd 2012

• http://dmems.univ-fcomte.fr

We need you!

Page 60: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

60 /66

Perspectives

Imagine

– 3D Fax machines

– Kinesthetic CAD tools

– Morphing Medical Device

– Ultimate mobile device

– 3D-theater TV

– Pario games

– “In person” remote meetings

Page 61: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Organization of IEEE iThings - IEEE CPSCom - IEEE/ACM GreenCom - IEEE FTDCS

Prof. Julien Bourgeois, FEMTO-ST Institute

Organization of IEEE iThings - IEEE CPSCom – IEEE GreenCom

September 11th-14th, 2012 Besançon, France

Workshop proposal deadline: 27 February, 2012

Paper submission due: 15 May, 2012

Notification of acceptance: 30 June, 2012

Camera-ready due: 15 July, 2012

Page 62: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

62 /66

Acknowledgments

All Claytronics team, but in particular:

– Emre Karagozler and David Ricketts, CMU

All Smart Surface and Smart Block teams, but in particular

– Eugen Dedu, UFC/FEMTO-ST

– Benoit Piranda, University of Franche-Comté

– Didier El Baz, Vincent Boyer, LAAS/CNRS

– Nadine Piat, Guillaume Laurent, FEMTO-ST

Page 63: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

63 /66

Claytronics example CMU/INTEL/UFC

Page 64: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

64 /66

0 0 1 1 1 1 0 0

shifts every T = 100ms DATA 1

1

1 0

0

0

1 0

Logic

Page 65: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

65 /66

shifts every T = 100ms DATA 1

1

1 1

0

0

0 0

0 0 1 0 1 1 0 1

Logic

Page 66: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

66 /66

1

0

1 1

0

1

0 0

0 0 0 0 1 1 1 1 `

shifts every T = 100ms DATA

Logic

Page 67: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

67 /66

0

0

1 1

1

1

0 0

0 1 0 0 1 0 1 1 `

shifts every T = 100ms DATA

Logic

Page 68: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

68 /66

0 1 0 0 0 0 0 0 `

ENABLE shifts every T/32 seconds

Logic

Page 69: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

69 /66

1 0 0 0 0 0 0 0 `

ENABLE shifts every T/32 seconds

Logic

Page 70: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

70 /66

0 0 0 1 0 0 0 0 `

ENABLE shifts every T/32 seconds

Logic

Page 71: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

71 /66

0 0 1 0 0 0 0 0 `

ENABLE shifts every T/32 seconds

Logic

Page 72: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

72 /66

0 0 0 0 0 1 0 0 `

ENABLE shifts every T/32 seconds

Logic

Page 73: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

73 /66

0 0 0 0 1 0 0 0 `

ENABLE shifts every T/32 seconds

Logic

Page 74: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

74 /66

0 0 0 0 0 0 0 1 `

ENABLE shifts every T/32 seconds

Logic

Page 75: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

75 /66

0 0 0 0 0 0 1 0

shifts every T/32ms ENABLE

Logic

Page 76: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

76 /66

0 0 1 0 0 0 0 0 `

shifts every T/32 seconds ENABLE

Two pulses in

T/32 seconds

PULSE

1 2

2 1

Logic

Page 77: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

77 /66

Internet of [micro]-things

Smart Surface

Claytronics

Macro

worl

d

Mic

ro w

orld

Monolithic intelligent objects Distributed intelligent MEMS objects

Page 78: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

78 /66

Internet of [micro]-things

Smart Surface

Claytronics

Macro

worl

d

Mic

ro w

orld

Monolithic

intel. obj.

Distributed intelligent MEMS objects Low density of communication

Few communicating objects

Single point of contact

High density of communication

High number of communicating objects

No point of contact by default

IoT

Page 79: Scalable distributed computing with distributed ... · Claytronics Smart Blocks . Événement - date 9 /66 Introduction Microtechnology is now a mature technology MEMS can be produced

Événement - date

79 /66

Determine the best criteria according to:

• Memory usage

• Execution time and need for computing power

Exhaustive Comparison Framework (ECO)