1 / 25

Reconfigurable Architecture Designs with Constraints

Dagstuhl Seminar on Autonomous and Adaptive Web Services February 05-09, 2007. Reconfigurable Architecture Designs with Constraints. Ugo Montanari Dipartimento di Informatica University of Pisa. Roadmap. Software architecture styles as graph languages/types

aqua
Télécharger la présentation

Reconfigurable Architecture Designs with Constraints

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Dagstuhl Seminar on Autonomous and Adaptive Web Services February 05-09, 2007 Reconfigurable Architecture Designs with Constraints Ugo Montanari Dipartimento di Informatica University of Pisa

  2. Roadmap • Software architecture styles as graph languages/types • Software designs as derivations/type proofs • Constraints, soft constraints, named constraints • Cc-pi, a pi-calculus with constraints

  3. Roadmap • Software architecture styles as graph languages/types • Software designs as derivations/type proofs • Constraints, soft constraints, named constraints • Cc-pi, a pi-calculus with constraints

  4. Software Architectures, I A refinement production for a pipeline architecture (work in collaboration with Dan Hirsch)

  5. Software Architectures, II An inference rule for composing two productions

  6. Safe Reconfiguration A reconfiguation transformation between two proofs

  7. Roadmap • Software architecture styles as graph languages/types • Software designs as derivations/type proofs • Constraints, soft constraints, named constraints • Cc-pi, a pi-calculus with constraints

  8. Designs as Proofs • This formula can be interpreted as: • A type inference rule defining an architectural style • A context-free hyperedge replacement rule • A datalog resolution step

  9. e <> y y C C x z e <> C x , {(x, y e <>), ( ,e,<>)}  x, y C(x,y) x, y  nz.C(x,z) | C(z,y) Datalog example

  10. RML SENSORIA Discovery and binding in an event executed by agent a triggers the discovery of a service of type R_B(a) the module B(a) that provides the business specification of agent a agent a executing in a given configuration

  11. RML SENSORIA Reconfiguration in the new business specification of agent a the new state configuration of agent a

  12. Roadmap • Software architecture styles as graph languages/types • Software designs as derivations/type proofs • Constraints, soft constraints, named constraints • Cc-pi, a pi-calculus with constraints

  13. Constraint Programming • 1960's • Sutherland’s Sketchpad (Interactive graphical interface that solved geometric constraints) • 1970‘s • Fikes' REF-ARF • Montanari (networks of constraints with path consistency) • Laurière's ALICE (solve prediction/detection problems in geology) • Next years… • several constraint languages (the language of Steele, CONSTRAINTS of Sussman & Steele, Thinglab and Bertrand

  14. CP Killer Applications, I • Assignment problems • Stand allocation for airports (Roissy airport in Paris) • Berth allocation to container ships (Honk Kong harbor) • Personnel assignment • Rosters for nurses in hospitals (France) • Personnel for the French TV, TGV high-speed train, British Telecom, Telecom Italia • Transport problems • COBRA (workplans for train in UK) • DAISY Esprit project and SAS-Pilot (assignement of airline crews to flights)

  15. CP Killer Applications, II • Network management • Cabling of telecommunication network (France Telecom) • Electrical power network reconfiguration (Spanish electricity company) • Load-balancing of the network-flow for inter-banking system (Italy) • Management and operational control of water systems • Planning of wireless digital network

  16. C-Semirings (work in collaboration with Stefano Bistarelli and Francesca Rossi)

  17. Bistarelli 94Optimization Fargier 93Probabilistic Schiex 92Prade 93Ruttkay 94Fuzzy Schiex 95Valued <+,min,+,+,0> <[0,1],max,,0,1> <[0,1],max,min,0,1> C-semirings Freuder 92Partial <{false,true},,,false,true> ClassicalMontanari 74 Chiu, Lee 98FuzzyHCLP Borning 89HCLP C-semirings Fit Interesting Cases

  18. Constraint Programming with C-Semirings • Several existing algorithms can be extended to c-semirings • Constrant Logic Programming (CLP(X)) can be extended to c-semirings • Cartesian product of c-semirings is a c-semiring (it is not the case for booleans) • Functional domains, power domains preserve the c-semiring structure and allow for the same logic, algorithms • Example: multicriteria shortest path optimization (useful for high QoS networking) needs a powerdomain on top of a cartesian product. Then Bellman-Ford of Warshall-Floyd can be used. • Concurrent constraint programming for network aware programming

  19. Named c-Semirings, I • C-Semirings with additional features • Every constraint has a finite set of free names (support) • There are operations of renaming and of name restriction (á la pi-calculus) with suitable axioms, e.g. x)(c x d) = c xx)d if x is not in the support of c similar to pi-calculus x)(p|q) = p xx)q if x is not a free name of p (work in collaboration with Marzia Buscemi)

  20. : A can be any constraint semiring Named c-Semirings, II Several interesting constraint systems are named c-semirings: • Equivalence relations of names with lub and glb • Herbrand constraint systems (equivalence relations of terms): • Soft Constraint Satisfaction Problems (CSP):

  21. Roadmap • Software architecture styles as graph languages/types • Software designs as derivations/type proofs • Constraints, soft constraints, named constraints • Cc-pi, a pi-calculus with constraints

  22. Cc-pi, A Language for Contracts, I (work in collaboration with Marzia Buscemi)

  23. Cc-pi, A Language for Contracts, II

  24. An Example A Provider and Client example

  25. Future Work • Basic graph representation • Processes with constraints • Hierarchy/history via graph derivations • Transformation via (synch) hyperedge replacement/DPO • Matching vs. unification • Compositionality of graph derivations • Mapping SRML • Efficient computation via dynamic programming • Assert-guarantee verification • Reconfiguration as proof rewriting

More Related