The World Avatar project aims to create a digital ‘avatar’ of the real world. The digital world is composed of a dynamic knowledge graph (KG) that contains concepts and data that describe the world, and an ecosystem of autonomous computational agents that simulate the behaviour of the world and that update the concepts and data so that the digital world remains current in time. A knowledge graph is a network of data expressed as a directed graph, where the nodes of the graph are concepts or their instances (data items) and the edges of the graph are links between related concepts or instances. Knowledge graphs are often built using the principles of Linked Data. They provide a powerful means to host, query and traverse data, and to find and retrieve related information.
The World Avatar represents information in a dynamic knowledge graph using technologies from the Semantic Web stack. Unlike a traditional database, the World Avatar contains an ecosystem of autonomous computational agents that continuously update it. The agents are described ontologically as part of the knowledge graph, and are able to perform actions on both concepts and instances. This design enables agents to update and restructure the knowledge graph, and allows them to discover and compose other agents simply by reading from and writing to the knowledge graph.
Listed below are a number of the key technical features available within The World Avatar ecosystem. More information on these, and other features, can be found in their respective repositories.
TWA Stack:
The knowledge graph and its agents are hosted using collections of containers. How to use them is explained in the stack tools repository that most notably includes the stack manager and the stack data uploader.
TWA Base Library:
The base lib is a collection of functionality that is shared among many parts of the code. Core functions include the ability to generate and upload TBoxes, query KGs and RDBs, implement RESTful APIs, and triple cloning.
TWA Visualisation Framework:
The TWA-VF is a container that provides a web-page with which a user can view and explore geospatial information held in the TWA ecosystem. This includes not only map data, 3D-representations of buildings, and building information models (BIM), but also any data or information connected to them within the KG, such as data calculated by models, acquired sensor data, or other time series data.
TWA Ontologies:
The ontology library lists mid- to lower-level formal ontologies that were developed for certain use cases within TWA. The TWA framework accommodates existing ontologies and extends them where necessary to allow a more complete description of relevant concepts.
Autonomous Agents:
Agents are pieces of software that act on the knowledge graph - reading from it, writing to it, thus making it evolve dynamically in time. The agents live in different repositories that are specific to the topic or project they were developed for (e.g., the Exposure Calculation Agent). There also exists an agent template for Java developers. Some agents can still be found in the old repository's agents folder.
Object Graph Mapper:
The main purpose of the OGM is to provide a layer of abstraction so that developers can write code that interacts with the KG without having to write queries or updates in a query language such as SPARQL. An OGM achieves this by mapping concepts and their properties as represented in the KG to classes with member fields in an object-oriented programming language. A developer can then simply write their code using classes and objects like they would write any other code. The twa package provides this functionality for Python development.
Collaboration is at the heart of The World Avatar project. Development happens publicly on GitHub, and we are grateful to the community for contributing bugfixes and improvements. Read below to learn how you can take part in improving The World Avatar.
- The Organization for Ethical Source has produced an Open Source Code of Conduct that we expect project participants to adhere to. Please read the full text so that you can understand what actions will and will not be tolerated.
- Read our contributing guide to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to The World Avatar.
The World Avatar is MIT licensed.
- The World Avatar Website
- Key Collaborators: