Explore chapters and articles related to this topic
Advances in earthquake engineering with information technology
Published in B.F. Spencer, Y.X. Hu, Earthquake Engineering Frontiers in the New Millennium, 2017
In a parallel program, the computation is broken down into tasks and these tasks are assigned to processors. There are a number of ways of doing this depending on the connectivity of the processors and whether memory is shared or distributed. The object-oriented paradigm is ideally suited to parallel programs because the tasks can be identified as the invocation of the object operations. A popular parallel object-oriented programming model is the actor model. Actors are autonomous and concurrently executing objects that execute asynchronously. An aggregate is a collection of actors.
Test Beds for Distributed AI Research
Published in Satya Prakash Yadav, Dharmendra Prasad Mahato, Nguyen Thi Dieu Linh, Distributed Artificial Intelligence, 2020
Shubhangi Sankhyadhar, Mohit Pandey
The actor model is a mathematical theory for concurrent computations that considers “actors” as universal primitives of concurrent computation. An actor only communicates with permissible actors for communication as shown in Figure 11.2.
Enhancing parallelism of distributed algorithms with the actor model and a smart data movement technique
Published in International Journal of Parallel, Emergent and Distributed Systems, 2021
Anatoliy Doroshenko, Eugene Tulika, Olena Yatsenko
The actor model of concurrent computation [3] is a formalisation of the experience of developing efficient asynchronous multiprocessor systems with distributed memory. This model was developed as a response to the difficulty of developing efficient distributed code, and instead provides declarative means for describing the distributed system's desired behaviour. An actor, as a main functioning element of the model, formalises the concept of an asynchronous reactive process focused on message passing, which reads messages from a message buffer (a mailbox), performs operations in response to a message, and sends a message to mailboxes of other actors as a result of performing the operations. The declarative capabilities of an actor's specification consist of a configuration of possible input messages of the actor, possible actor states, the correlation between the incoming message type and message handler, and a set of outcoming messages. The actor model was proved to be effective in the communications industry, with high-speed signal processing, in the Internet of things and real-time systems.
MarineMAS: A multi-agent framework to aid design, modelling, and evaluation of autonomous shipping systems
Published in Journal of International Maritime Safety, Environmental Affairs, and Shipping, 2019
Zhe Xiao, Xiuju Fu, Liye Zhang, Wanbing Zhang, Manu Agarwal, Rick Siow Mong Goh
Besides, concurrent computing naturally fits with MAS for modelling multiple autonomous agents’ behaviour and their interactions. Nowadays, most mainstream servers are multi-core multi-threaded, tasks are considered to run in concurrent mode to maximize the system capacity. In the meantime, some emerging technologies have been proposed to make efficient utilization of computing resources of multi-core servers and to achieve higher throughput, less overhead and latency for highly concurrent system implementation. For instance, akka is an actor model-based framework to facilitate the design and development of highly concurrent applications. Compared with thread-based concurrency, “akka” has much lightweight resource unit called “actor” and well-designed message communication between actors. As thus, individual agent can be attached with a launched actor for the corresponding processing tasks and operations. Communication between different agents (station–vessel and vessel–vessel) is implemented through sending/receiving the messages, while method call and direct access is applied for functional integral entities between vessel, radar, and navigator as well as between shore station agent, predictor, and planner.
Evaluation of JADE multi-agent system and Erlang holonic control implementations for a manufacturing cell
Published in International Journal of Computer Integrated Manufacturing, 2019
Armstrong (2003) identifies the inability to isolate components as the main limitation of developing fault tolerant systems in many popular programming languages. Specifically considering Java, Czajkowski and Daynés (2001) argue that to run multiple Java applications safely on the same computer, each application should be run in its own Java Virtual Machine and in its own OS process – a scenario detrimental to efficiency, performance and scalability. In contrast, the provisions for error isolation in Erlang are present at the architectural level. The actor model allows for the isolation of errors – processes, as the basic unit of abstraction, act as abstraction boundaries that limit the propagation of errors (Armstrong 2003).