Skip to main content

A Language for Large Ensembles of Independently Executing Nodes

  • Conference paper
Logic Programming (ICLP 2009)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5649))

Included in the following conference series:

Abstract

We address how to write programs for distributed computing systems in which the network topology can change dynamically. Examples of such systems, which we call ensembles, include programmable sensor networks (where the network topology can change due to failures in the nodes or links) and modular robotics systems (whose physical configuration can be rearranged under program control). We extend Meld [1], a logic programming language that allows an ensemble to be viewed as a single computing system. In addition to proving some key properties of the language, we have also implemented a complete compiler for Meld. It generates code for TinyOS [14] and for a Claytronics simulator [12]. We have successfully written correct, efficient, and complex programs for ensembles containing over one million nodes.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ashley-Rollman, M.P., Goldstein, S.C., Lee, P., Mowry, T.C., Pillai, P.: Meld: A declarative approach to programming ensembles. In: Proc. of the IEEE Int’l Conf. on Intelligent Robots and Systems (October 2007)

    Google Scholar 

  2. Bachrach, J., McLurkin, J., Grue, A.: Protoswarm: A language for programming multi-robot systems using the amorphous medium abstraction. In: Int’l Conf. in Autonomous Agents and Multiagent Systems (AAMAS) (May 2008)

    Google Scholar 

  3. Beal, J., Bachrach, J.: Infrastructure for engineered emergence on sensor/actuator networks. IEEE Intelligent Systems 21(2), 10–19 (2006)

    Article  Google Scholar 

  4. Ceri, S., Gottlob, G., Tanca, L.: What you always wanted to know about Datalog (and never dared to ask). IEEE Transactions on Knowledge and Data Engineering 1(1), 146–166 (1989)

    Article  Google Scholar 

  5. Chu, D., Tavakoli, A., Popa, L., Hellerstein, J.: Entirely declarative sensor network systems (2006)

    Google Scholar 

  6. Culler, D., Estrin, D., Srivastava, M.: Guest editors’ introduction: Overview of sensor networks. Computer 37(8), 41–49 (2004)

    Article  Google Scholar 

  7. De Rosa, M., Goldstein, S.C., Lee, P., Campbell, J.D., Pillai, P.: Programming modular robots with locally distributed predicates. In: Proc. of the IEEE Int’l Conf. on Robotics and Automation (2008)

    Google Scholar 

  8. Dewey, D., Srinivasa, S., Ashley-Rollman, M.P., De Rosa, M., Pillai, P., Mowry, T.C., Campbell, J.D., Goldstein, S.C.: Generalizing metamodules to simplify planning in modular robotic systems. In: Proc. of Int’l Conf. on Intelligent Robots and Systems, Nice, France (September 2008)

    Google Scholar 

  9. Dewey, D., Srinivasa, S., Ashley-Rollman, M.P., De Rosa, M., Pillai, P., Mowry, T., Campbell, J.D., Goldstein, S.C.: Generalizing metamodules to simplify planning in modular robotic systems. Technical Report CMU-CS-08-139, Carnegie Mellon University (2008)

    Google Scholar 

  10. Funiak, S., Ashley-Rollman, M.P., Pillai, P., Campbell, J.D., Goldstein, S.C.: Distributed localization of modular robot ensembles. In: Proc. of the 3rd Robotics Science and Systems (2008)

    Google Scholar 

  11. Goldstein, S., Campbell, J., Mowry, T.: Programmable matter. IEEE Computer (June 2005)

    Google Scholar 

  12. Intel Corporation and Carnegie Mellon University. Dprsim: The dynamic physical rendering simulator (2006), http://www.pittsburgh.intel-research.net/dprweb/

  13. Kothari, N., Gummadi, R., Millstein, T., Govindan, R.: Reliable and efficient programming abstractions for wireless sensor networks. In: PLDI 2007: Proc. of the 2007 ACM SIGPLAN conference on Programming language design and implementation, pp. 200–210. ACM, New York (2007)

    Chapter  Google Scholar 

  14. Levis, P.: TinyOS Programming. UC - Berkeley (2006)

    Google Scholar 

  15. Loo, B.T., Condie, T., Garofalakis, M., Gay, D.E., Hellerstein, J.M., Maniatis, P., Ramakrishnan, R., Roscoe, T., Stoica, I.: Declarative networking: language, execution and optimization. In: Proc. of the 2006 ACM SIGMOD int’l conf. on Management of data, pp. 97–108. ACM Press, New York (2006)

    Chapter  Google Scholar 

  16. Madden, S.R., Franklin, M.J., Hellerstein, J.M., Hong, W.: Tinydb: an acquisitional query processing system for sensor networks. ACM Trans. Database Syst. 30(1), 122–173 (2005)

    Article  Google Scholar 

  17. Nagpal, R.: Programmable Self-Assembly: Constructing Global Shape Using Biologically-Inspired Local Interactions and Origami Mathematics. Ph.D thesis, MIT, MIT AI Lab. Technical Memo 2001-008 (2001)

    Google Scholar 

  18. Newton, R., Morrisett, G., Welsh, M.: The Regiment macroprogramming system. In: Proc. of the Int’l conf. on Information Processing in Sensor Networks (IPSN 2007) (April 2007)

    Google Scholar 

  19. Pfenning, F., Schürmann, C.: System description: Twelf - a meta-logical framework for deductive systems. In: Proc. of Int’l Conf. on Automated Deduction, pp. 202–206 (1999)

    Google Scholar 

  20. Whitehouse, K., Sharp, C., Brewer, E., Culler, D.: Hood: a neighborhood abstraction for sensor networks. In: Proc. of the 2nd int’l conf. on Mobile systems, applications, and services, pp. 99–110. ACM Press, New York (2004)

    Google Scholar 

  21. Yim, M., Shen, W.-M., Salemi, B., Rus, D., Moll, M., Lipson, H., Klavins, E., Chirikjian, G.S.: Modular self-reconfigurable robot systems [grand challenges of robotics]. IEEE Robotics and Automation Magazine 14(1), 43–52 (2007)

    Article  Google Scholar 

  22. Zaniolo, C., Arni, N., Ong, K.: Negation and aggregates in recursive rules: the LDL++ approach. In: Ceri, S., Tsur, S., Tanaka, K. (eds.) DOOD 1993. LNCS, vol. 760, pp. 204–221. Springer, Heidelberg (1993)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ashley-Rollman, M.P., Lee, P., Goldstein, S.C., Pillai, P., Campbell, J.D. (2009). A Language for Large Ensembles of Independently Executing Nodes. In: Hill, P.M., Warren, D.S. (eds) Logic Programming. ICLP 2009. Lecture Notes in Computer Science, vol 5649. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02846-5_24

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-02846-5_24

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-02845-8

  • Online ISBN: 978-3-642-02846-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics