A Programming Approach to Collective Autonomy
Abstract
:1. Introduction
- we provide a review of literature about autonomy and especially collective autonomy in MASs (Section 2);
- we analyze the aggregate computing framework by the perspective of autonomy, by covering its positioning with respect to individual and collective autonomy, and showing how it can support adjustable autonomy (Section 3);
- we exemplify the discussion through a simulated case study, investigating (i) the relationship between individual goals/autonomy and collective goals/autonomy; and (ii) the relationship between structures and collective autonomy (Section 4); and
- we discuss gaps in the literature on programming reliable collective autonomy and delineate a research roadmap (Section 5).
2. Background and Related Work
2.1. Autonomy in Software Engineering and Multi-Agent Systems
2.2. Collective Autonomy
2.3. Multi-Agent Systems Programming
2.3.1. Aggregate Programming
- Stateful evolution: rep(init)(f)—expressing how a field, starting as init, should evolve round-by-round through unary function f.
- Neighbour interaction: nbr(e)—used to exchange with neighbours the value obtained by evaluating field expression e; this locally yields a neighbouring field, i.e., a field that maps any neighbour to the corresponding evaluation of e.
- Domain partitioning: branch(c){ifTrue}{ifFalse}—used to partition the domain of devices into two parts: the devices for which field c is locally true, which evaluate expression ifTrue, and those for which c yields false, which evaluate ifFalse.
3. Autonomy in Aggregate Computing
3.1. Aggregate-Oriented Agent Control Architecture
- Context evaluation. In this step, the agent looks at its current state, its sensors, and its message box for new information in order to update the local context.
- Aggregate program evaluation. In this step, the agent runs the aggregate program providing its local context as an input: the evaluation of the program returns an output data structure that can be used for context update.
- Context action. Using the output of the program evaluation, the agent must
- update its local state;
- send a message to neighbours;
- trigger actuations (if needed).
3.2. Individual Autonomy in Aggregate Computing
3.3. Collective Autonomy in Aggregate Computing
- the autonomy of the members of the collective—as discussed;
- the environment—namely the extent to which activity depends on environmental situations and events.
3.4. Summary and Comparison with Related Work
- collective autonomy: by cooperative execution of the aggregate program, or in terms of collective structures constraining individual behavior;
- (endogenous) individual autonomy: by calling local functions (as a sort of delegation);
- adjustable autonomy: by using structures or branching mechanisms to regulate the relationship between individuals and collective autonomy, or by controlling the amount of endogenous vs. exogenous autonomy (cf. Table 2).
4. Case Study
4.1. Experiment Setup
- Animal: an agent that needs to be rescued if it is in danger. The danger status changes are domain-specific dynamic. In this simulation, the animals change their status randomly at a constant rate (one animal every two seconds). It could be a sort of “smart collar”.
- Mobile node: an agent that moves around the world and could have the capability to heal an animal.
- Station: a fixed node that works as a gateway for mobile nodes.
- ExploreAreaTask: leads agents to explore an established portion of the space.
- HealTask: for which a set of agents must rescue a defined animal (and must correspondingly have “rescue capabilities”).
- leader election is made in the stationary nodes (via S);
- mobile nodes sense animals in danger and send the local information to the leader (via C);
- the leader chooses what is the animal that needs to be rescued;
- the leader shares its choice (via broadcast);
- the slaves act according to the leader choice.
4.2. Performance Metrics and Parameters
- p: is the probability to follow the collective choice, 1 − p is the probability to act selfishly; the bigger is p the lesser the agent is autonomous with respect to the collective goals.
- healer count: the nodes needed to rescue an animal. A higher value of healer count needs greater control on local agent behaviour in order to accomplish the collective task
4.3. Results and Discussion
4.4. Final Remarks
5. Research Roadmap
5.1. Expressing Collective Autonomous Behaviour
5.1.1. Cognitive Collectives
5.1.2. Collective Autonomy and Structural Organisation
5.2. Reliable Collective Autonomy
5.2.1. Safety and Guarantees
5.2.2. Norms and Trust
5.3. Applications
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Kephart, J.O.; Chess, D.M. The Vision of Autonomic Computing. Computer 2003, 36, 41–50. [Google Scholar] [CrossRef]
- de Lemos, R.; Giese, H.; Müller, H.A.; Shaw, M.; Andersson, J.; Litoiu, M.; Schmerl, B.R.; Tamura, G.; Villegas, N.M.; Vogel, T.; et al. Software Engineering for Self-Adaptive Systems: A Second Research Roadmap; Springer: Berlin/Heidelberg, Germany, 2010; Volume 7475, pp. 1–32. [Google Scholar]
- Wooldridge, M.J. An Introduction to MultiAgent Systems, 2nd ed.; Wiley: Hoboken, NJ, USA, 2009. [Google Scholar]
- Ferber, J. Multi-Agent Systems—An Introduction to Distributed Artificial Intelligence; Addison-Wesley-Longman: Boston, MA, USA, 1999. [Google Scholar]
- Weyns, D.; Omicini, A.; Odell, J. Environment as a first class abstraction in multiagent systems. Auton. Agents Multi Agent Syst. 2007, 14, 5–30. [Google Scholar] [CrossRef] [Green Version]
- Beal, J.; Dulman, S.; Usbeck, K.; Viroli, M.; Correll, N. Organizing the Aggregate: Languages for Spatial Computing. arXiv 2012, arXiv:1202.5509. [Google Scholar]
- Viroli, M.; Beal, J.; Damiani, F.; Audrito, G.; Casadei, R.; Pianini, D. From distributed coordination to field calculus and aggregate computing. J. Log. Algebraic Methods Program. 2019, 100486. [Google Scholar] [CrossRef]
- Beal, J.; Pianini, D.; Viroli, M. Aggregate Programming for the Internet of Things. Computer 2015, 48, 22–30. [Google Scholar] [CrossRef]
- Audrito, G.; Viroli, M.; Damiani, F.; Pianini, D.; Beal, J. A Higher-Order Calculus of Computational Fields. ACM Trans. Comput. Log. 2019, 20, 5:1–5:55. [Google Scholar] [CrossRef] [Green Version]
- Beal, J.; Viroli, M. Building Blocks for Aggregate Programming of Self-Organising Applications. In Proceedings of the Eighth IEEE International Conference on Self-Adaptive and Self-Organizing Systems Workshops, SASOW 2014, London, UK, 8–12 September 2014; pp. 8–13. [Google Scholar] [CrossRef]
- Viroli, M.; Audrito, G.; Beal, J.; Damiani, F.; Pianini, D. Engineering Resilient Collective Adaptive Systems by Self-Stabilisation. ACM Trans. Model. Comput. Simul. 2018, 28, 16:1–16:28. [Google Scholar] [CrossRef] [Green Version]
- Malone, T.W.; Crowston, K. The interdisciplinary study of coordination. ACM Comput. Surv. 1994, 26, 87–119. [Google Scholar] [CrossRef] [Green Version]
- Odell, J. Objects and Agents Compared. J. Object Technol. 2002, 1, 41–53. [Google Scholar] [CrossRef]
- Franklin, S.; Graesser, A. Is It an Agent, or just a Program? A Taxonomy for Autonomous Agents; InternationalWorkshop on Agent Theories, Architectures, and Languages; Springer: Berlin/Heidelberg, Germany, 1996; pp. 21–35. [Google Scholar]
- Castelfranchi, C.; Falcone, R. Founding Autonomy: The Dialectics Between (Social) Environment and Agent’s Architecture and Powers. In International Workshop on Computational Autonomy; Springer: Berlin/Heidelberg, Germany, 2003; Volume 2969, pp. 40–54. [Google Scholar]
- Castelfranchi, C. Guarantees for autonomy in cognitive agent architecture. In International Workshop on Agent Theories, Architectures, and Languages; Springer: Berlin/Heidelberg, Germany, 1994; pp. 56–70. [Google Scholar]
- De Silva, L.; Meneguzzi, F.; Logan, B. BDI Agent Architectures: A Survey. In Proceedings of the International Joint Conferences on Artificial Intelligence, Yokohama, Japan, 11–17 July 2020. [Google Scholar]
- Sekiyama, K.; Fukuda, T. Dissipative structure network for collective autonomy: Spatial decomposition of robotic group. In Distributed Autonomous Robotic Systems 2; Springer: Berlin/Heidelberg, Germany, 1996; pp. 221–232. [Google Scholar]
- Bottazzi, E.; Catenacci, C.; Gangemi, A.; Lehmann, J. From collective intentionality to intentional collectives: An ontological perspective. Cogn. Syst. Res. 2006, 7, 192–208. [Google Scholar] [CrossRef]
- Ray, P.; O’Rourke, M.; Edwards, D. Using collective intentionality to model fleets of autonomous underwater vehicles. In Proceedings of the OCEANS 2009, Biloxi, MS, USA, 26–29 October 2009; pp. 1–7. [Google Scholar]
- Conte, R.; Turrini, P. Argyll-Feet giants: A cognitive analysis of collective autonomy. Cogn. Syst. Res. 2006, 7, 209–219. [Google Scholar] [CrossRef]
- Liu, J.; Jin, X.; Tsui, K.C. Autonomy-oriented computing (AOC): Formulating computational systems with autonomous components. IEEE Trans. Syst. Man Cybern. Part A 2005, 35, 879–902. [Google Scholar] [CrossRef]
- Mao, X.; Wang, Q.; Yang, S. A survey of agent-oriented programming from software engineering perspective. Web Intell. 2017, 15, 143–163. [Google Scholar] [CrossRef]
- Bordini, R.H.; Hübner, J.F.; Wooldridge, M. Programming Multi-Agent Systems in AgentSpeak Using Jason; John Wiley & Sons: Hoboken, NJ, USA, 2007; Volume 8. [Google Scholar]
- Finin, T.W.; Fritzson, R.; McKay, D.P.; McEntire, R. KQML As An Agent Communication Language. In Proceedings of the Third International Conference on Information and Knowledge Management (CIKM’94), Gaithersburg, MD, USA, 29 November–2 December 1994; ACM: New York City, NY, USA, 1994; pp. 456–463. [Google Scholar] [CrossRef]
- Ricci, A.; Piunti, M.; Viroli, M.; Omicini, A. Environment Programming in CArtAgO. In Multi-Agent Programming, Languages, Tools and Applications; Bordini, R.H., Dastani, M., Dix, J., Seghrouchni, A.E.F., Eds.; Springer: Berlin/Heidelberg, Germany, 2009; pp. 259–288. [Google Scholar] [CrossRef]
- Rodriguez, S.; Gaud, N.; Galland, S. SARL: A General-Purpose Agent-Oriented Programming Language. In Proceedings of the 2014 IEEE/WIC/ACM International Joint Conferences on Web Intelligence (WI) and Intelligent Agent Technologies (IAT), Warsaw, Poland, 11–14 August 2014; pp. 103–110. [Google Scholar] [CrossRef]
- Hübner, J.F.; Sichman, J.S.; Boissier, O. Developing organised multiagent systems using the MOISE+ model: Programming issues at the system and agent levels. Int. J. Agent Oriented Softw. Eng. 2007, 1, 370–395. [Google Scholar] [CrossRef] [Green Version]
- Cardoso, R.C.; Ferrando, A. A Review of Agent-Based Programming for Multi-Agent Systems. Computers 2021, 10, 16. [Google Scholar] [CrossRef]
- DeHon, A.; Giavitto, J.; Gruau, F. (Eds.) Computing Media and Languages for Space-Oriented Computation; Schloss Dagstuhl-Leibniz-Zentrum für Informatik: Schloss Dagstuhl, Germany, 2007; Volume 06361. [Google Scholar]
- Mamei, M.; Zambonelli, F. Field-Based Coordination for Pervasive Multiagent Systems; Springer Series on Agent Technology; Springer: Berlin/Heidelberg, Germany, 2006. [Google Scholar] [CrossRef]
- Parunak, H.V.D.; Brueckner, S.; Sauter, J.A. Digital pheromone mechanisms for coordination of unmanned vehicles. In Proceedings of the First International Joint Conference on Autonomous Agents & Multiagent Systems, AAMAS 2002, Bologna, Italy, 15–19 July 2002; pp. 449–450. [Google Scholar] [CrossRef]
- Casadei, R.; Viroli, M.; Audrito, G.; Damiani, F. FScaFi: A Core Calculus for Collective Adaptive Systems Programming. Leveraging Applications of Formal Methods, Verification and Validation: Engineering Principles. In Proceedings of the 9th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2020, Rhodes, Greece, 20–30 October 2020; Lecture Notes in Computer Science. Margaria, T., Steffen, B., Eds.; Springer: Berlin/Heidelberg, Germany, 2020; Volume 12477, pp. 344–360. [Google Scholar] [CrossRef]
- Casadei, R.; Viroli, M.; Audrito, G.; Pianini, D.; Damiani, F. Engineering collective intelligence at the edge with aggregate processes. Eng. Appl. Artif. Intell. 2021, 97, 104081. [Google Scholar] [CrossRef]
- Casadei, R.; Pianini, D.; Viroli, M. Simulating large-scale aggregate MASs with Alchemist and Scala. In Proceedings of the 2016 Federated Conference on Computer Science and Information Systems (FedCSIS), Gdansk, Poland, 11–14 September 2016; pp. 1495–1504. [Google Scholar]
- Viroli, M.; Pianini, D.; Ricci, A.; Croatti, A. Aggregate plans for multiagent systems. Int. J. Agent Oriented Softw. Eng. 2017, 5, 336–365. [Google Scholar] [CrossRef]
- Casadei, R.; Pianini, D.; Placuzzi, A.; Viroli, M.; Weyns, D. Pulverization in Cyber-Physical Systems: Engineering the Self-Organizing Logic Separated from Deployment. Future Internet 2020, 12, 203. [Google Scholar] [CrossRef]
- Pianini, D.; Casadei, R.; Viroli, M.; Mariani, S.; Zambonelli, F. Time-Fluid Field-Based Coordination through Programmable Distributed Schedulers. arXiv 2020, arXiv:2012.13806. [Google Scholar]
- Beal, J.; Viroli, M.; Pianini, D.; Damiani, F. Self-Adaptation to Device Distribution in the Internet of Things. ACM Trans. Auton. Adapt. Syst. 2017, 12, 12:1–12:29. [Google Scholar] [CrossRef]
- Hollander, C.D.; Wu, A.S. The Current State of Normative Agent-Based Systems. J. Artif. Soc. Soc. Simul. 2011, 14. [Google Scholar] [CrossRef]
- Mostafa, S.A.; Ahmad, M.S.; Mustapha, A. Adjustable autonomy: A systematic literature review. Artif. Intell. Rev. 2019, 51, 149–186. [Google Scholar] [CrossRef]
- Dennett, D.C. The Intentional Stance; MIT Press: Cambridge, MA, USA, 1989. [Google Scholar]
- Huebner, B. Macrocognition: A Theory of Distributed Minds and Collective Intentionality; Oxford University Press: Oxford, UK, 2014. [Google Scholar]
- Casadei, R.; Pianini, D.; Viroli, M.; Natali, A. Self-organising Coordination Regions: A Pattern for Edge Computing. In Proceedings of the International Conference on Coordination Languages and Models, Kongens Lyngby, Denmark, 17–21 June 2019; Springer: Cham, Switzerland, 2019; pp. 182–199. [Google Scholar]
- Mo, Y.; Beal, J.; Dasgupta, S. An Aggregate Computing Approach to Self-Stabilizing Leader Election. In Proceedings of the 2018 IEEE 3rd International Workshops on Foundations and Applications of Self* Systems (FAS*W), Trento, Italy, 3–7 September 2018; pp. 112–117. [Google Scholar] [CrossRef]
- Audrito, G.; Casadei, R.; Damiani, F.; Viroli, M. Compositional Blocks for Optimal Self-Healing Gradients. In Proceedings of the 2017 IEEE 11th International Conference on Self-Adaptive and Self-Organizing Systems (SASO), Tucson, AZ, USA, 18–22 September 2017. [Google Scholar]
- Wolf, T.D.; Holvoet, T. Designing Self-Organising Emergent Systems based on Information Flows and Feedback-loops. In Proceedings of the First International Conference on Self-Adaptive and Self-Organizing Systems, SASO 2007, Boston, MA, USA, 9–11 July 2007; pp. 295–298. [Google Scholar] [CrossRef]
- Rodriguez, S.; Hilaire, V.; Gaud, N.; Galland, S.; Koukam, A. Holonic Multi-Agent Systems. In Self-organising Software—From Natural to Artificial Adaptation; Serugendo, G.D.M., Gleizes, M., Karageorgos, A., Eds.; Natural Computing Series; Springer: Berlin/Heidelberg, Germany, 2011; pp. 251–279. [Google Scholar] [CrossRef]
- Nicola, R.D.; Loreti, M.; Pugliese, R.; Tiezzi, F. A Formal Approach to Autonomic Systems Programming: The SCEL Language. ACM Trans. Auton. Adapt. Syst. 2014, 9, 7:1–7:29. [Google Scholar] [CrossRef]
- Pianini, D.; Montagna, S.; Viroli, M. Chemical-oriented simulation of computational systems with ALCHEMIST. J. Simulation 2013, 7, 202–215. [Google Scholar] [CrossRef]
- Casadei, R.; Viroli, M. Coordinating Computation at the Edge: A Decentralized, Self-Organizing, Spatial Approach. In Proceedings of the 2019 Fourth International Conference on Fog and Mobile Edge Computing (FMEC), Rome, Italy, 10–13 June 2019; pp. 60–67. [Google Scholar] [CrossRef]
- Gonzalez, L.F.; Montes, G.A.; Puig, E.; Johnson, S.; Mengersen, K.L.; Gaston, K.J. Unmanned Aerial Vehicles (UAVs) and Artificial Intelligence Revolutionizing Wildlife Monitoring and Conservation. Sensors 2016, 16, 97. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Ayele, E.D.; Meratnia, N.; Havinga, P.J.M. Towards a New Opportunistic IoT Network Architecture for Wildlife Monitoring System. In Proceedings of the 9th IFIP International Conference on New Technologies, Mobility and Security, NTMS 2018, Paris, France, 26–28 February 2018; pp. 1–5. [Google Scholar] [CrossRef] [Green Version]
- Fatima, S.S.; Wooldridge, M.J. Adaptive task resources allocation in multi-agent systems. In Proceedings of the Fifth International Conference on Autonomous Agents, AGENTS 2001, Montreal, QC, Canada, 28 May–1 June 2001; André, E., Sen, S., Frasson, C., Müller, J.P., Eds.; ACM: New York City, NY, USA, 2001; pp. 537–544. [Google Scholar] [CrossRef]
- Mao, S. Chapter 8 - Fundamentals of communication networks. In Cognitive Radio Communications and Networks; Wyglinski, A.M., Nekovee, M., Hou, Y.T., Eds.; Academic Press: Oxford, UK, 2010; pp. 201–234. [Google Scholar] [CrossRef]
- Mulero-Pázmány, M.; Stolper, R.; van Essen, L.D.; Negro, J.J.; Sassen, T. Remotely Piloted Aircraft Systems as a Rhinoceros Anti-Poaching Tool in Africa. PLoS ONE 2014, 9, e83873. [Google Scholar] [CrossRef] [Green Version]
- Marini, D.; Llewellyn, R.; Belson, S.; Lee, C. Controlling Within-Field Sheep Movement Using Virtual Fencing. Animals 2018, 8, 31. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Wall, J.; Wittemyer, G.; Klinkenberg, B.; Douglas-Hamilton, I. Novel opportunities for wildlife conservation and research with real-time monitoring. Ecol. Appl. 2014, 24, 593–601. [Google Scholar] [CrossRef] [Green Version]
- López, J.J.; Mulero-Pázmány, M. Drones for Conservation in Protected Areas: Present and Future. Drones 2019, 3, 10. [Google Scholar] [CrossRef] [Green Version]
- Hahn, N.; Mwakatobe, A.; Konuche, J.; de Souza, N.; Keyyu, J.; Goss, M.; Chang’a, A.; Palminteri, S.; Dinerstein, E.; Olson, D. Unmanned aerial vehicles mitigate human–elephant conflict on the borders of Tanzanian Parks: A case study. Oryx 2016, 51, 513–516. [Google Scholar] [CrossRef] [Green Version]
- Palermos, S.O. The Dynamics of Group Cognition. Minds Mach. 2016, 26, 409–440. [Google Scholar] [CrossRef]
- Schillo, M. Self-organization and adjustable autonomy: Two sides of the same coin? Connect. Sci. 2002, 14, 345–359. [Google Scholar] [CrossRef]
- Horling, B.; Lesser, V.R. A survey of multi-agent organizational paradigms. Knowl. Eng. Rev. 2004, 19, 281–316. [Google Scholar] [CrossRef] [Green Version]
- Pynadath, D.V.; Tambe, M.; Chauvat, N.; Cavedon, L. Toward Team-Oriented Programming. In Proceedings of the Intelligent Agents VI, Agent Theories, Architectures, and Languages (ATAL), 6th International Workshop, ATAL ’99, Orlando, FL, USA, 15–17 July 1999; Jennings, N.R., Lespérance, Y., Eds.; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 1999; Volume 1757, pp. 233–247. [Google Scholar] [CrossRef]
- Jarvis, J.; Rönnquist, R.; McFarlane, D.C.; Jain, L.C. A team-based holonic approach to robotic assembly cell control. J. Netw. Comput. Appl. 2006, 29, 160–176. [Google Scholar] [CrossRef]
- Koutsoubelias, M.; Lalis, S. TeCoLa: A Programming Framework for Dynamic and Heterogeneous Robotic Teams. In Proceedings of the 13th International Conference on Mobile and Ubiquitous Systems: Computing, Networking and Services, MobiQuitous 2016, Hiroshima, Japan, 28 November–1 December 2016; Hara, T., Shigeno, H., Eds.; ACM: New York City, NY, USA, 2016; pp. 115–124. [Google Scholar] [CrossRef]
- Mittal, S.; Risco-Martin, J.L. Simulation-based complex adaptive systems. In Guide to Simulation-Based Disciplines; Springer: Berlin/Heidelberg, Germany, 2017; pp. 127–150. [Google Scholar]
- Audrito, G.; Casadei, R.; Damiani, F.; Stolz, V.; Viroli, M. Adaptive distributed monitors of spatial properties for cyber-physical systems. J. Syst. Softw. 2021, 175, 110908. [Google Scholar] [CrossRef]
- dos Santos, J.S.; de Oliveira Zahn, J.; Silvestre, E.A.; da Silva, V.T.; Vasconcelos, W.W. Detection and resolution of normative conflicts in multi-agent systems: A literature survey. Auton. Agents Multi Agent Syst. 2017, 31, 1236–1282. [Google Scholar] [CrossRef]
- Aldini, A. Design and Verification of Trusted Collective Adaptive Systems. ACM Trans. Model. Comput. Simul. 2018, 28, 9:1–9:27. [Google Scholar] [CrossRef]
- Casadei, R.; Aldini, A.; Viroli, M. Towards attack-resistant Aggregate Computing using trust mechanisms. Sci. Comput. Program. 2018, 167, 114–137. [Google Scholar] [CrossRef]
- Müller, J.P.; Fischer, K. Application Impact of Multi-agent Systems and Technologies: A Survey. In Agent-Oriented Software Engineering—Reflections on Architectures, Methodologies, Languages, and Frameworks; Shehory, O., Sturm, A., Eds.; Springer: Berlin/Heidelberg, Germany, 2014; pp. 27–53. [Google Scholar] [CrossRef]
- Fasli, M. Agent Technology for e-Commerce; Wiley: Hoboken, NJ, USA, 2007. [Google Scholar]
- Bergenti, F.; Poggi, A. Multi-agent systems for e-health: Recent projects and initiatives. In Proceedings of the 10th International Workshop on Objects and Agents, Parma, Italy, 9–10 July 2009. [Google Scholar]
- Burmeister, B.; Haddadi, A.; Matylis, G. Application of multi-agent systems in traffic and transportation. IEE Proc. Softw. Eng. 1997, 144, 51–60. [Google Scholar] [CrossRef] [Green Version]
- Dudek, G.; Jenkin, M.R.M.; Milios, E.E.; Wilkes, D. A taxonomy for multi-agent robotics. Auton. Robots 1996, 3, 375–397. [Google Scholar] [CrossRef]
- Lee, J.H.; Kim, C.O. Multi-agent systems applications in manufacturing systems and supply chain management: A review paper. Int. J. Prod. Res. 2008, 46, 233–265. [Google Scholar] [CrossRef]
- González-Briones, A.; De La Prieta, F.; Mohamad, M.S.; Omatu, S.; Corchado, J.M. Multi-agent systems applications in energy optimization problems: A state-of-the-art review. Energies 2018, 11, 1928. [Google Scholar] [CrossRef] [Green Version]
- Merabet, G.H.; Essaaidi, M.; Talei, H.; Abid, M.R.; Khalil, N.; Madkour, M.; Benhaddou, D. Applications of Multi-Agent Systems in Smart Grids: A survey. In Proceedings of the 4th International Conference on Multimedia Computing and Systems, ICMCS 2014, Marrakech, Morocco, 14–16 April 2014; pp. 1088–1094. [Google Scholar] [CrossRef]
- Zanella, A.; Bui, N.; Castellani, A.P.; Vangelista, L.; Zorzi, M. Internet of Things for Smart Cities. IEEE Internet Things J. 2014, 1, 22–32. [Google Scholar] [CrossRef]
- Brambilla, M.; Ferrante, E.; Birattari, M.; Dorigo, M. Swarm robotics: A review from the swarm engineering perspective. Swarm Intell. 2013, 7, 1–41. [Google Scholar] [CrossRef] [Green Version]
- Ganti, R.K.; Ye, F.; Lei, H. Mobile crowdsensing: Current state and future challenges. IEEE Commun. Mag. 2011, 49, 32–39. [Google Scholar] [CrossRef]
- Bucchiarone, A.; D’Angelo, M.; Pianini, D.; Cabri, G.; De Sanctis, M.; Viroli, M.; Casadei, R.; Dobson, S. On the Social Implications of Collective Adaptive Systems. IEEE Technol. Soc. Mag. 2020, 39, 36–46. [Google Scholar] [CrossRef]
- Annaswamy, A.M.; Malekpour, A.R.; Baros, S. Emerging research topics in control for smart infrastructures. Annu. Rev. Control 2016, 42, 259–270. [Google Scholar] [CrossRef] [Green Version]
- Szuba, T. Computational Collective Intelligence; Wiley Series on Parallel and Distributed Computing; Wiley: Hoboken, NJ, USA, 2001. [Google Scholar]
- Finkelstein, A.; Kramer, J.; Nuseibeh, B.; Finkelstein, L.; Goedicke, M. Viewpoints: A Framework for Integrating Multiple Perspectives in System Development. Int. J. Softw. Eng. Knowl. Eng. 1992, 2, 31–57. [Google Scholar] [CrossRef]
Dimension | Elements/Terms | |
---|---|---|
Reference entity | Agent | Group of agents |
individual autonomy | collective autonomy | |
Autonomy “from” something | Other agents | Environment |
social autonomy | non-social/environmental autonomy | |
Autonomy “with respect to” something | Goals | Plans |
motivational autonomy | executive autonomy | |
Autonomy extremes | None | Full |
no autonomy (passivity) | absolute autonomy (freedom) | |
Autonomy flexibility | None | Full |
fixed autonomy | adjustable autonomy | |
Source of autonomy with respect to a component of a reference entity | Internal | External |
endogenous autonomy | exogenous autonomy |
Individual Autonomy Element | Range (Less–More) |
---|---|
Adherence to the aggregate execution protocol | Fully autonomous (uncooperative)—Completely adherent (control-driven) |
Endogenous autonomy (provided by the AC program) | Uncontrolled–Controlled |
Exogenous autonomy (undergone by the AC program) | Controlled–Uncontrolled |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Casadei, R.; Aguzzi, G.; Viroli, M. A Programming Approach to Collective Autonomy. J. Sens. Actuator Netw. 2021, 10, 27. https://doi.org/10.3390/jsan10020027
Casadei R, Aguzzi G, Viroli M. A Programming Approach to Collective Autonomy. Journal of Sensor and Actuator Networks. 2021; 10(2):27. https://doi.org/10.3390/jsan10020027
Chicago/Turabian StyleCasadei, Roberto, Gianluca Aguzzi, and Mirko Viroli. 2021. "A Programming Approach to Collective Autonomy" Journal of Sensor and Actuator Networks 10, no. 2: 27. https://doi.org/10.3390/jsan10020027
APA StyleCasadei, R., Aguzzi, G., & Viroli, M. (2021). A Programming Approach to Collective Autonomy. Journal of Sensor and Actuator Networks, 10(2), 27. https://doi.org/10.3390/jsan10020027