This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Overview

Here’s where you will find out if SCOP Framework is for you.

This documentation provides an extensive overview of the SCOP Framework and its associated documentation, helping those new to the platform to understand where to begin, and experienced users to quickly find information regarding a specific feature.

What is SCOP Framework?

SCOP is an framework for constructing agent-based models, simulations, and complete agent-based applications. The goal of SCOP is to blend cutting-edge software engineering techniques with agent-based modeling in order to quickly develop prototypes of research and industrial cases, and assess their practicality in a real-world setting.

What is it good for?

SCOP Framework …

  • is especially advantageous for creating models of open, distributed and intelligent systems that evolve over time.
  • allows developers to create models in their own environment, while also giving them the ability to evaluate their algorithms more accurately and optimize performance. By mimicking the system’s dynamics at an individual agent level, the consequences of algorithms’ decisions in different situations can be studied and investigated thoroughly.
  • provides comprehensive documentation and tutorials. It also contains a selection of ready to run and reuse simulations that can be utilized and modified. Currently, these simulations cover topics such as Blockchain Systems, Cellular Automata, Federated Learning, and Internet of Things (IoT).
  • is compatible with all major operating systems like MacOS, Windows, and Linux, as it is designed to run on a Java (17 or later) virtual machine. It can be used as a desktop application or through a command line interface.

What is it not good for?

SCOP Framework …

  • is not a Machine Learning (ML) platform. However, it is possible to integrate seamlessly libraries like Deep Java Library (DJL) to design models where agents use ML. See, for example, the Federated Learning example in the MAGE model library.

What is it not yet good for?

SCOP Framework …

  • does not provide yet the full mechanism for running Reinforcement Learning (RL) experiments.

Where should you go next?

As a next step, you can see:

1 - SCOP Framework

Multi-AGent development and Experimentation (MAGE) Platform

SCOP Framework allows for building, experimenting and deploying multi-agent systems in Java!

With MAGE, just a few lines of code is all you need to start building agents like an expert.

What is SCOP Framework?

MAGE (Multi-AGent Experimentation) is an platform for constructing agent-based models, simulations, and complete agent-based applications. The goal of MAGE is to blend cutting-edge software engineering techniques with agent-based modeling in order to quickly develop prototypes of research and industrial cases, and assess their practicality in a real-world setting.

What is it good for?

SCOP Framework …

  • is especially advantageous for creating models of open, distributed and intelligent systems that evolve over time.
  • allows developers to create models in their own environment, while also giving them the ability to evaluate their algorithms more accurately and optimize performance. By mimicking the system’s dynamics at an individual agent level, the consequences of algorithms’ decisions in different situations can be studied and investigated thoroughly.
  • provides comprehensive documentation and tutorials. It also contains a selection of ready to run and reuse simulations that can be utilized and modified. Currently, these simulations cover topics such as Blockchain Systems, Cellular Automata, Federated Learning, and Internet of Things (IoT).
  • is compatible with all major operating systems like MacOS, Windows, and Linux, as it is designed to run on a Java (17 or later) virtual machine. It can be used as a desktop application or through a command line interface.

What is it not good for?

SCOP Framework …

  • is not a Machine Learning (ML) platform. However, it is possible to integrate seamlessly libraries like Deep Java Library (DJL) to design models where agents use ML. See, for example, the Federated Learning example in the MAGE model library.

What is it not yet good for?

SCOP Framework …

  • does not provide yet the full mechanism for running Reinforcement Learning (RL) experiments.

Where should you go next?

As a next step, you can see:

2 - Basic Concepts

A guide to core programming concepts in SCOP Framework.

Overview

Among several agent-oriented approaches [54–59] proposed in the literature, the SCOP Framework uses a modified version of organizational the Agent/Group/Role (AGR) approach proposed in [55]. We call this approach Agent/Role/Environment approach.

Agents

Agents are active, communicating entities playing roles within environments. Agents play at least one role in a environment, but may hold multiple roles and be a member of multiple environments as well. However, no constraints are placed upon the architectures, the cognitive abilities and/or the mental issues of agents.

Environments

Environments identify contexts for patterns of activities (i.e., roles) that can be shared by sets of agents (i.e., they group together agents working together). Agents may communicate, if and only if, they belong to the same environment. Environments are organizational structures [60] where the interactions make an aggregate of agents a functionally coherent whole. Moreover, environments may establish boundaries as well. Agents that do not belong to an environments may not know its structure.

Roles

Roles are abstract representations of functional positions of agents in a group. A role describes the responsibilities associated to it, the constraints that agents need to satisfy in order to obtain that role, and the benefits that agents would obtain by playing that role.

References