Abstract:
A first agent device (100), computer-implemented method and computer program product for message routing with content passing and reference passing for a distributed system (500) with a plurality of interacting agent devices (100, 201, 202, 203, 300) wherein the interaction between the interacting agent devices occurs through exchange of messages, an exchanged message including a content portion (CP) and a reference identifier (RI) associated with a particular agent device. The reference identifier (RI) enables any other agent device to establish a communication with the particular agent device. The content portion (CP) has a type which is either a content type or a message-set type. The first agent device (100) includes a first interface component (110) configured to load a first agent class specification (152) defining a first finite state machine (FSM1) which is configured to control the function of the first agent device (100) when executed by a process execution engine (121). Further, a second interface component (120) is configured to retrieve at least a subset of a plurality of messages (M2_1, M2_2, M2_3) from a message buffer (151), the plurality of buffered messages (M2_1, M2_2, M2_3) originating from a plurality of multi-agent devices (201, 202, 203) linked to a second agent class specification defining a second finite state machine (FSM2). The first finite state machine (FSM1) and the second finite state machine (FSM2) enable the interaction of the first agent device (100) with the plurality of multi-agent devices (201, 202, 203). Further, the first agent device has at least one processor component (130) configured to run the process execution engine (121) and, in accordance with the first finite state machine (FSM1), to process retrieved messages (M2_1, M2_2, M2_3), to generate an aggregate message (M3) including at least a subset of the buffered messages (M2_1, M2_2, M2_3) in the content portion (CP) of the aggregate message (M3), and to provide the aggregate message (M3) for further processing.
Abstract:
A first agent device (100), computer-implemented method and computer program product for message routing with content passing and reference passing for a distributed system (500) with a plurality of interacting agent devices (100, 201, 202, 203, 300) wherein the interaction between the interacting agent devices occurs through exchange of messages, an exchanged message including a content portion (CP) and a reference identifier (RI) associated with a particular agent device. The reference identifier (RI) enables any other agent device to establish a communication with the particular agent device. The content portion (CP) has a type which is either a content type or a message-set type. The first agent device (100) includes a first interface component (110) configured to load a first agent class specification (152) defining a first finite state machine (FSM1) which is configured to control the function of the first agent device (100) when executed by a process execution engine (121). Further, a second interface component (120) is configured to retrieve at least a subset of a plurality of messages (M2_1, M2_2, M2_3) from a message buffer (151), the plurality of buffered messages (M2_1, M2_2, M2_3) originating from a plurality of multi-agent devices (201, 202, 203) linked to a second agent class specification defining a second finite state machine (FSM2). The first finite state machine (FSM1) and the second finite state machine (FSM2) enable the interaction of the first agent device (100) with the plurality of multi-agent devices (201, 202, 203). Further, the first agent device has at least one processor component (130) configured to run the process execution engine (121) and, in accordance with the first finite state machine (FSM1), to process retrieved messages (M2_1, M2_2, M2_3), to generate an aggregate message (M3) including at least a subset of the buffered messages (M2_1, M2_2, M2_3) in the content portion (CP) of the aggregate message (M3), and to provide the aggregate message (M3) for further processing.