DTCNS is a Python open source toolbox building Digital Twin-Oriented Complex Network Systems
The project was started in 2021 by Miss. Jiaqi Wen, Prof. Bogdan Gabrys and Prof. Kaska Musial-Gabrys at the Complex Adaptive Systems Lab - The University of Technology Sydney. This project is a core module for the simulation of Digital Twin-Oriented Complex Networked Systems in the near future.
We aim to develop and assess a modelling paradigm called Digital Twin Oriented Complex Networked System (DT-CNS) that incorporates increasing complexity levels dependent on heterogeneous network components and their changes over time. The DT-CNSs are composed of networks and dynamics of and on the networks 1. The networks can be represented as set of nodes connected with each other via edges where both nodes and edges can have attributes. The DT-CNS dynamics can be either considered as: (i) dynamic processes on the networks, which involve spreading phenomena including epidemic processes and information spreading processes, or (ii) dynamic networks with evolving structures and attributes (a.k.a. features) 2. For example, the DT-CNS of a social networked system can be composed of an evolving social network and the epidemic spreading process that propagates on the social networks through social contacts (See the below Figure).
We propose a conceptual modelling framework for DT-CNSs, which progresses from the generation 1 DT-CNS to the generation 5 DT-CNS (a DT) with an increasing complexity level across five generations 12. The generations of DT-CNSs each systemically vary in three key aspects: evolvability in dynamics, interrelations in dynamics and their interplay with the real world (See Figure below; Refer to Project Overview for more details).
DTCNS package aims to realise the abovementioned conceptual ideas and the current functionalities enable the modelling of generation 1 DT-CNSs and their extension towards higher complexity levels. Currently, we initialise generation 1 DT-CNSs based on heterogeneous node features and feature representation, interaction rules (feature preferences) and transmission rules (seed selection and transmissibility set-ups) 34. More details can be found in Generation 1 DT-CNS (A Quick Start).
Please note that this package is under active development. We will soon supplement functionalities and documents for DT-CNSs in higher generations.
$ pip install numpy copy pandas networkx heapq os math
Please navigate to the folder and run command:
$ python setup.py install
Generation 1 DT-CNS (A Quick Start)
If you use BibTeX, cite using the following entries:
@article@article{wen2024dtcns,
title={DTCNS: A python toolbox for Digital Twin-Oriented Complex Networked Systems},
author={Wen, Jiaqi and Gabrys, Bogdan and Musial, Katarzyna},
journal={SoftwareX},
volume={27},
pages={101818},
year={2024},
publisher={Elsevier}
}