Rule-Based Distributed and Agent Systems

  • Costin Bǎdicǎ
  • Lars Braubach
  • Adrian Paschke
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6826)


The paper contains an overview of the roles played by rules and rule-based systems in distributed and multi-agent systems. These roles include an overview of traditional and newly emerging application areas as well as internal agent architectures and frameworks implementing these architectures.


Multiagent System Agent System Agent Architecture Deductive Database Reaction Rule 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Adi, A., Etzion, O.: Amit - the situation manager. VLDB J. 13(2), 177–203 (2004)zbMATHCrossRefGoogle Scholar
  2. 2.
    Amaral, J.N., Ghosh, J.: Speeding Up Production Systems: From Concurrent Matching to Parallel Rule Firing, ch. 7, pp. 139–160. Elsevier, Amsterdam (1994)Google Scholar
  3. 3.
    Amaral, J.N., Ghosh, J.: A concurrent architecture for serializable production systems. IEEE Transactions on Parallel and Distributed Systems 7(12), 1265–1280 (1996)CrossRefGoogle Scholar
  4. 4.
    Amarnath, B.R., Somasundaram, T.S., Ellappan, M., Buyya, R.: Ontology-based grid resource management. Software Practice and Experience 39(17), 1419–1438 (2009)CrossRefGoogle Scholar
  5. 5.
    Aref, M.M., Tayyib, M.A.: Lana-match algorithm: A parallel version of the rete-match algorithm. Parallel Computing 24(5-6), 763–775 (1998)zbMATHCrossRefGoogle Scholar
  6. 6.
    Bach, J., Bauer, C., Vuine, R.: Micropsi: Contributions to a broad architecture of cognition. In: Freksa, C., Kohlhase, M., Schill, K. (eds.) KI 2006. LNCS (LNAI), vol. 4314, pp. 7–18. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  7. 7.
    Bartolini, C., Preist, C., Jennings, N.: A software framework for automated negotiation. In: Choren, R., Garcia, A., Lucena, C., Romanovsky, A. (eds.) SELMAS 2004. LNCS, vol. 3390, pp. 213–235. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Bellifemine, F., Caire, G., Greenwood, D.: Developing Multi-Agent systems with JADE. John Wiley & Sons, Chichester (2007)CrossRefGoogle Scholar
  9. 9.
    Bellifemine, F.L., Caire, G., Greenwood, D.: Developing Multi-Agent Systems with JADE. John Wiley & Sons Ltd, Chichester (2007)CrossRefGoogle Scholar
  10. 10.
    Berners-Lee, T., Hendler, J., Lassila, O.: The semantic web. Scientific American (5) (May 2001)Google Scholar
  11. 11.
    Bikakis, A., Antoniou, G.: Distributed defeasible contextual reasoning in ambient computing. In: Aarts, E., Crowley, J.L., de Ruyter, B., Gerhäuser, H., Pflaum, A., Schmidt, J., Wichert, R. (eds.) AmI 2008. LNCS, vol. 5355, pp. 308–325. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  12. 12.
    Bikakis, A., Antoniou, G.: Distributed reasoning with conflicts in an ambient peer-to-peer setting. In: Mühlhauser, M., Ferscha, A., Aitenbichler, E. (eds.) Constructing Ambient Intelligence. CCIS, vol. 11, pp. 24–33. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  13. 13.
    Bonino, D., Corno, F.: DogOnt - ontology modeling for intelligent domotic environments. In: Sheth, A.P., Staab, S., Dean, M., Paolucci, M., Maynard, D., Finin, T., Thirunarayan, K. (eds.) ISWC 2008. LNCS, vol. 5318, pp. 790–803. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  14. 14.
    Bonino, D., Corno, F.: Rule-based intelligence for domotic environments. Automation in Construction 19(2), 183–196 (2010)CrossRefGoogle Scholar
  15. 15.
    Bordini, R., Dastani, M., Dix, J., El Fallah Seghrouchni, A.: Multi-Agent Programming: Languages, Platforms and Applications. Springer, Heidelberg (2005)zbMATHGoogle Scholar
  16. 16.
    Bordini, R., Dastani, M., Dix, J., el Fallah-Seghrouchni, A. (eds.): Multi-Agent Programming: Languages, Tools and Applications. Springer, Berlin (2009)zbMATHGoogle Scholar
  17. 17.
    Bratman, M.: Intention, Plans, and Practical Reason. Harvard University Press, Cambridge (1987)Google Scholar
  18. 18.
    Bratman, M., Israel, D., Pollack, M.: Plans and Resource-Bounded Practical Reasoning. Computational Intelligence 4(4), 349–355 (1988)CrossRefGoogle Scholar
  19. 19.
    Braubach, L.: Architekturen und Methoden zur Entwicklung verteilter agentenorientierter Softwaresysteme. PhD thesis, Universität Hamburg (2007)Google Scholar
  20. 20.
    Braubach, L., Pokahr, A., Moldt, D., Lamersdorf, W.: Goal Representation for BDI Agent Systems. In: Bordini, R., Dastani, M., Dix, J., El Fallah-Seghrouchni, A. (eds.) PROMAS 2004. LNCS (LNAI), vol. 3346, pp. 44–65. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  21. 21.
    Brooks, R.A.: How to build complete creatures rather than isolated cognitive simulators. Architectures for Intelligence, 225–239 (1989)Google Scholar
  22. 22.
    Brzykcy, G., Bartoszek, J., Pankowski, T.: Schema mappings and agents’ actions in p2p data integration system. Journal of Universal Computer Science 14(7), 1048–1060 (2008)Google Scholar
  23. 23.
    Bădică, A., Bădică, C.: Specification and verification of an agent-based auction service. In: Information System Development. Towards a Service Provision Society (ISD 2008), pp. 239–248. Springer, Heidelberg (2009)Google Scholar
  24. 24.
    Bădică, A., Bădică, C.: Fsp and fltl framework for specification and verification of middle-agents. Applied Mathematics and Computer Science 21(1), 9–25 (2011)zbMATHGoogle Scholar
  25. 25.
    Bădică, C., Ganzha, M., Paprzycki, M.: Implementing rule-based automated price negotiation in an agent system. Journal of Universal Computer Science 13(2), 244–266 (2007)Google Scholar
  26. 26.
    Bădică, C., Giurca, A., Wagner, G.: Using rules and R2ML for modeling negotiation mechanisms in E-commerce agent systems. In: Draheim, D., Weber, G. (eds.) TEAA 2006. LNCS, vol. 4473, pp. 84–99. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  27. 27.
    Cabitza, F., Dal Seno, B.: Djess - a knowledge-sharing middleware to deploy distributed inference systems. In: Ardil, C. (ed.) The Second World Enformatika Conference, WEC 2005, Enformatika, Çanakkale, Turkey, pp. 66–69 (2005)Google Scholar
  28. 28.
    Carbonell, J.G., Etzioni, O., Gil, Y., Joseph, R., Knoblock, C.A., Minton, S., Veloso, M.M.: Prodigy: An integrated architecture for planning and learning. SIGART Bulletin 2(4), 51–55 (1991)CrossRefGoogle Scholar
  29. 29.
    Cardoso, H.L.: Integrating jade and jess (2007)Google Scholar
  30. 30.
    Christoph, U., Krempels, K.-H., Wilden, A.: Jamochaagent - a rule-based programmable agent. In: Filipe, J., Fred, A.L.N., Sharp, B. (eds.) ICAART 2009 - Proceedings of the International Conference on Agents and Artificial Intelligence, pp. 447–454 (2009)Google Scholar
  31. 31.
    Collier, R.W.: Agent Factory: A Framework for the Engineering of Agent-Oriented Applications. PhD thesis, University College Dublin (2001)Google Scholar
  32. 32.
    Dastani, M.: 2apl: a practical agent programming language. International Journal of Autonomous Agents and Multi-Agent Systems (JAAMAS), Special Issue on Computational Logic-based Agents 16(3), 214–248Google Scholar
  33. 33.
    Dean, J., Ghemawat, S.: Mapreduce: Simplified data processing on large clusters. Communications of the ACM 51(1), 107–113 (2008)CrossRefGoogle Scholar
  34. 34.
    Ding, H.: Integrating semantic metadata in p2p-based digital libraries. Library Management 26(4/5), 218–229 (2005)CrossRefGoogle Scholar
  35. 35.
    Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: Proc. 21st International Conference on Software Engineering (ICSE 1999), pp. 411–420. IEEE Computer Society Press, Los Alamitos (1999)Google Scholar
  36. 36.
    Ferber, J.: Multi-Agents Systems - An Introduction to Distributed Artificial Intelligence. Addison-Wesley, Reading (1999)Google Scholar
  37. 37.
    Fischer, K., Windisch, H.-M.: Magsy: Ein regelbasiertes multiagentensystem. KI Zeitschrift 6(1), 22–26 (1992)Google Scholar
  38. 38.
    Forgy, C.: Rete: A fast algorithm for the many patterns/many objects match problem. Artificial Intelligence 19(1), 17–37 (1982)CrossRefGoogle Scholar
  39. 39.
    Forgy, C.L.: Rete: A fast algorithm for the many pattern/many object pattern match problem. Artificial Intelligence 19(1), 17–37 (1982)CrossRefGoogle Scholar
  40. 40.
    Foster, I.T., Kesselman, C., Tuecke, S.: The anatomy of the grid: Enabling scalable virtual organizations. IJHPCA 15(3), 200–222 (2001)Google Scholar
  41. 41.
    Foundation for Intelligent Physical Agents (FIPA). FIPA ACL Message Structure Specification (December 2002), document no. FIPA00061Google Scholar
  42. 42.
    Foundation for Intelligent Physical Agents (FIPA). FIPA SL Content Language Specification (December 2002), document no. FIPA00008Google Scholar
  43. 43.
    Friedman-Hill, E.: Jess in Action: Java Rule-based Systems. Manning Publications Co. (2003)Google Scholar
  44. 44.
    Frîncu, M.E., Petcu, D.: Osyris: a nature inspired workflow engine for service oriented environments. Scalable Computing: Practice and Experience 11(1), 81–97 (2010)Google Scholar
  45. 45.
    Gross, T., Paul-Stueve, T., Palakarska, T.: Sensbution: A rule-based peer-to-peer approach for sensor-based infrastructures. In: Proceedings of the 33rd EUROMICRO Conference on Software Engineering and Advanced Applications, pp. 333–340. IEEE Computer Society, Washington, DC, USA (2007)Google Scholar
  46. 46.
    Gupta, A., Forgy, C.L., Newell, A.: High-speed implementations of rule-based systems. ACM Transactions on Computer Systems 7(2), 119–146 (1989)CrossRefGoogle Scholar
  47. 47.
    Gupta, G., Pontelli, E., Ali, K.A.M., Carlsson, M., Hermenegildo, M.V.: Parallel execution of prolog programs: a survey. ACM Transactions on Programming Languages and Systems 23(4), 472–602 (2001)CrossRefGoogle Scholar
  48. 48.
    Hall, L.O.: Backpac: A parallel goal-driven reasoning system. Information Sciences 62(1-2), 169–182 (1992)CrossRefGoogle Scholar
  49. 49.
    Harmelen, F.: Large scale reasoning on the semantic web: What to do when success is becoming a problem. In: Liu, J., Wu, J., Yao, Y., Nishida, T. (eds.) AMT 2009. LNCS, vol. 5820, p. 3. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  50. 50.
    Herrero, P., Bosque, J.L., Salvadores, M., Perez, M.S.: A rule based resources management for collaborative grid environments. International Journal of Internet Protocol Technology 3, 35–45 (2008)CrossRefGoogle Scholar
  51. 51.
    Hindriks, K.: Programming Rational Agents in GOAL. In: El Fallah Seghrouchni, A., Dix, J., Dastani, M., Bordini, R. (eds.) Multi-Agent Programming: Languages, Platforms and Applications, pp. 119–157. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  52. 52.
    Hindriks, K., de Boer, F., van der Hoek, W., Meyer, J.-J.: Agent Programming in 3APL. Autonomous Agents and Multi-Agent Systems 2(4), 357–401 (1999)CrossRefGoogle Scholar
  53. 53.
    Ishida, T.: Parallel, Distributed and Multiagent Production Systems. LNCS, vol. 878. Springer, Heidelberg (1994)zbMATHCrossRefGoogle Scholar
  54. 54.
    Ishida, T.: Parallel, distributed and multi-agent production systems - a research foundation for distributed artificial intelligence. In: Lesser, V.R., Gasser, L. (eds.) Proceedings of the First International Conference on Multiagent Systems, ICMAS, pp. 416–422. The MIT Press, Cambridge (1995)Google Scholar
  55. 55.
    Janssen, W., Mateescu, R., Mauw, S., Fennema, P., van der Stappen, P.: Model checking for managers. In: Dams, D.R., Gerth, R., Leue, S., Massink, M. (eds.) SPIN 1999. LNCS, vol. 1680, pp. 92–107. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  56. 56.
    Kaelbling, L.P.: A situated-automata approach to the design of embedded agents. SIGART Bulletin 2, 85–88 (1991)CrossRefGoogle Scholar
  57. 57.
    Kinny, D., Georgeff, M.: Commitment and effectiveness of situated agents. In: Proceedings of the 12th International Joint Conference on Artificial Intelligence (IJCAI 1991), pp. 82–88 (February 1991)Google Scholar
  58. 58.
    Knottenbelt, J.: Contract Related Agents. PhD thesis, Imperial College, London (2006)Google Scholar
  59. 59.
    Langley, P., McKusick, K.B., Allen, J.A., Iba, W., Thompson, K.: A design for the icarus architecture. SIGART Bulletin 2(4), 104–109 (1991)CrossRefGoogle Scholar
  60. 60.
    Lehman, J.F., Laird, J., Rosenbloom, P.: A gentle introduction to Soar, an architecture for human cognition. In: Sternberg, S., Scarborough, D. (eds.) Invitation to Cognitive Science, vol. 4, pp. 212–249. MIT Press, Cambridge (1996)Google Scholar
  61. 61.
    Lehman, J.F., Laird, J., Rosenbloom, P.: A gentle introduction to Soar, an architecture for human cognition. Technical report, University of Michigan (2006)Google Scholar
  62. 62.
    Lochner, K.M., Wellman, M.P.: Rule-based specification of auction mechanisms. In: 3rd International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS 2004), pp. 818–825. IEEE Computer Society, Los Alamitos (2004)Google Scholar
  63. 63.
    Loke, S.W.: Declarative programming of integrated peer-to-peer and web based systems: the case of prolog. Journal of Systems and Software 79(4), 523–536 (2006)CrossRefGoogle Scholar
  64. 64.
    Lomuscio, A.R., Wooldridge, M., Jennings, N.R.: A classification scheme for negotiation in electronic commerce. Group Decision and Negotiation 12(1), 31–56 (2003)CrossRefGoogle Scholar
  65. 65.
    Gedik, B., Kumar, V., Losa, G., Soulé, R., Wu, K.-L., Hirzel, M., Andrade, H.Google Scholar
  66. 66.
    Mohammad Khanli, L., Analoui, M.: Active grid information server for grid computing. The Journal of Supercomputing 50(1), 19–35 (2009)CrossRefGoogle Scholar
  67. 67.
    Morreale, V., Bonura, S., Francaviglia, G., Centineo, F., Cossentino, M., Gaglio, S.: Reasoning about goals in BDI agents: the PRACTIONIST framework. In: De Paoli, F., Di Stefano, A., Omicini, A., Santoro, C. (eds.) Proceedings of Joint Workshop “From Objects to Agents” (2006)Google Scholar
  68. 68.
    Newell, A.: Unified Theories of Cognition. Harvard University Press, Cambridge (1990)Google Scholar
  69. 69.
    Nilsson, N.J.: Teleo-reactive programs for agent control. Journal Artificial Intelligence Research 1, 139–158 (1994)Google Scholar
  70. 70.
    Oren, E., Kotoulas, S., Anadiotis, G., Siebes, R., ten Teije, A., van Harmelen, F.: Marvin: Distributed reasoning over large-scale semantic web data. Journal of Web Semantics 7(4), 305–316 (2009)CrossRefGoogle Scholar
  71. 71.
    Oskooei, A.R., Mirza-Aghatabar, M., Khorsandi, S.: Introduction of novel rule based algorithms for scheduling in grid computing systems. In: Second Asia International Conference on Modelling and Simulation (AMS 2008), pp. 138–143. IEEE Computer Society, Los Alamitos (2008)CrossRefGoogle Scholar
  72. 72.
    Padgett, J., Djemame, K., Dew, P.: Predictive adaptation for service level agreements on the grid. International Journal of Simulation: Systems, Science & Technology 7(2), 29–42 (2006)Google Scholar
  73. 73.
    Paschke, A., Boley, H., Kozlenkov, A., Craig, B.: Rule responder: Ruleml-based agents for distributed collaboration on the pragmatic web. In: Proceedings of the 2nd International Conference on Pragmatic Web, ICPW 2007, pp. 17–28. ACM, New York (2007)Google Scholar
  74. 74.
    Paschke, A., Bichler, M.: Knowledge representation concepts for automated sla management. Decision Support Systems 46(1), 187–205 (2008)CrossRefGoogle Scholar
  75. 75.
    Perraju, T.S., Prasad, B.E.: Interference analysis in multiple rule firing systems. Knowledge-Based Systems 13(4), 171–176 (2000)zbMATHCrossRefGoogle Scholar
  76. 76.
    Petcu, D., Petcu, M.: Distributed jess on a condor pool. In: Proceedings of the 9th WSEAS International Conference on Computers, Stevens Point, Wisconsin, USA, pp. 1–5. World Scientific and Engineering Academy and Society, WSEAS (2005)Google Scholar
  77. 77.
    Pokahr, A., Braubach, L., Lamersdorf, W.: A goal deliberation strategy for BDI agent systems. In: Eymann, T., Klügl, F., Lamersdorf, W., Klusch, M., Huhns, M.N. (eds.) MATES 2005. LNCS (LNAI), vol. 3550, pp. 82–93. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  78. 78.
    Pollack, M.E., Joslin, D., Nunes, A., Ur, S., Ephrati, E.: Experimental investigation of an agent commitment strategy. Technical Report 94–31, Department of Computer Science, University of Pittsburgh (1994)Google Scholar
  79. 79.
    Rao, A.: AgentSpeak(L): BDI Agents Speak Out in a Logical Computable Language. In: Van de Velde, W., Perram, J. (eds.) MAAMAW 1996. LNCS, vol. 1038, pp. 42–55. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  80. 80.
    Rao, A., Georgeff, M.: BDI Agents: from theory to practice. In: Lesser, V. (ed.) Proceedings of the 1st International Conference on Multi-Agent Systems (ICMAS 1995), pp. 312–319. MIT Press, Cambridge (1995)Google Scholar
  81. 81.
    Reticular Systems. AgentBuilder User’s Guide, version 1.3 edn (2000),
  82. 82.
    Russell, S., Norvig, P.: Artifical Intelligence: A Modern Approach. Prentice-Hall, Englewood Cliffs (2003)zbMATHGoogle Scholar
  83. 83.
    Schroeder, M., Wagner, G.: Vivid agents: Theory, architecture, and applications. Applied Artificial Intelligence 14(7), 645–675 (2000)CrossRefGoogle Scholar
  84. 84.
    Shoham, Y.: Agent-oriented programming. Artificial Intelligence 60(1), 51–92 (1993)MathSciNetCrossRefGoogle Scholar
  85. 85.
    Siddiqui, M., Villazon, A., Fahringer, T.: Semantic-based on-demand synthesis of grid activities for automatic workflow generation. In: Proceedings of the Third IEEE International Conference on e-Science and Grid Computing, E-SCIENCE 2007, pp. 43–50. IEEE Computer Society, Washington, DC, USA (2007)Google Scholar
  86. 86.
    Simon, H.A.: Cognitive science: the newest science of the artificial. Cognitive Science 4, 33–46 (1980)CrossRefGoogle Scholar
  87. 87.
    Skylogiannis, T., Antoniou, G., Bassiliades, N., Governatori, G., Bikakis, A.: Dr-negotiate – a system for automated agent negotiation with defeasible logic-based strategies. Data & Knowledge Engineering 63(2), 362–380 (2007)CrossRefGoogle Scholar
  88. 88.
    Soma, R., Prasanna, V.K.: Parallel inferencing for owl knowledge bases. In: 37th International Conference on Parallel Processing, ICPP 2008, pp. 75–82. IEEE Computer Society, Los Alamitos (2008)CrossRefGoogle Scholar
  89. 89.
    Tamma, V., Phelps, S., Dickinson, I., Wooldridge, M.: Ontologies for supporting negotiation in e-commerce. Engineering Applications of Artificial Intelligence 18(2), 223–236 (2005)CrossRefGoogle Scholar
  90. 90.
    Thain, D., Tannenbaum, T., Livny, M.: Distributed computing in practice: the condor experience. Concurrency and Computation: Practice and Experience 17(2-4), 323–356 (2005)CrossRefGoogle Scholar
  91. 91.
    Urbani, J., Kotoulas, S., Maassen, J., van Harmelen, F., Bal, H.E.: Owl reasoning with webpie: Calculating the closure of 100 billion triples. In: Aroyo, L., Antoniou, G., Hyvönen, E., ten Teije, A., Stuckenschmidt, H., Cabral, L., Tudorache, T. (eds.) ESWC 2010. LNCS, vol. 6088, pp. 213–227. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  92. 92.
    Urbani, J., Kotoulas, S., Oren, E., Harmelen, F.: Scalable distributed reasoning using mapReduce. In: Bernstein, A., Karger, D.R., Heath, T., Feigenbaum, L., Maynard, D., Motta, E., Thirunarayan, K. (eds.) ISWC 2009. LNCS, vol. 5823, pp. 634–649. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  93. 93.
    Vlahavas, I., Bassiliades, N.: Parallel, object-oriented, and active knowledge base systems. Kluwer Academic Publishers, Norwell (1998)zbMATHCrossRefGoogle Scholar
  94. 94.
    Wolfson, O., Ozeri, A.: Parallel and distributed processing of rules by data-reduction. IEEE Transactions on Knowledge and Data Engineering 5(3), 523–530 (1993)CrossRefGoogle Scholar
  95. 95.
    Wooldridge, M.: Reasoning about Rational Agents. MIT Press, Cambridge (2000)zbMATHGoogle Scholar
  96. 96.
    Wooldridge, M., Jennings, N.: Agent theories, architectures, and languages: A survey. In: Wooldridge, M., Jennings, N. (eds.) ECAI 1994 and ATAL 1994. LNCS, vol. 890, pp. 1–39. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  97. 97.
    Wooldrige, M.: An Introduction to MultiAgent Systems. John Wiley & Sons, Chichester (2002)Google Scholar
  98. 98.
    Zhang, W., Wang, K., Chau, S.-C.: Data partition and parallel evaluation of datalog programs. IEEE Transactions on Knowledge and Data Engineering 7(1), 163–176 (1995)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Costin Bǎdicǎ
    • 1
  • Lars Braubach
    • 2
  • Adrian Paschke
    • 3
  1. 1.Software Engineering Department, Faculty of Automatics, Computers and ElectronicsUniversity of CraiovaRomania
  2. 2.Distributed Systems and Information Systems, Computer Science DepartmentUniversity of HamburgGermany
  3. 3.Corporate Semantic Web, Computer Science DepartmentFU BerlinGermany

Personalised recommendations