-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Phoenix is a distributed, modular, agent-based simulation platform. It is currently under active development and is being used for simulations at Fields of View. We will update more diagrams, design and code constantly. Phoenix is released under the Mozilla Public License.
This wiki is still under construction, so a few pages might not exist, yet. We are constantly making updates to the wiki as and when we push changes to the repository.
Current agent based platforms, such as MASON, JADE, Repast, Swarm either focus on the number of agents or on the abilities of agents. The systems we are studying imposed a number of restrictions on us. The following are the key parameters that we used to measure the current agent based platform. They are also the parameters that guided the design for Phoenix.
In order for the agents to be more expressive in their behaviour, Phoenix uses strategic agents as against the BDI framework.
Phoenix is designed to have a modular architecture in order to allow the simulation developer to attach or remove modules as per the domain requirements. For example, if the simulation requires agents to use GIS co-ordinates, a module can be added to allow them to work with the GIS system. The modular structure also allows better separation of code and allows for better maintenance and extensibility.
Following the modular and distributed architecture, Phoenix consciously separates visualisation from the main simulation process. Often, visualisation is tightly coupled to the simulation engine, this results in huge speed reductions. Therefore, we have separated the two in our system. This also allows one to develop different types of visualisation for the same simulation.
In order to run large scale simulations, Phoenix has a distributed architecture where more than one machine is able to run the same simulation. Unlike a MPI system, Phoenix allows specific functional definitions for each of the connected nodes. This allows us to define distributed systems where some machines can be configured to perform specific tasks. For example, in a GIS enabled simulation one of the machines can be added as a dedicated GIS server or in a traffic simulation, one specific machine can be designated to handle all the pedestrians.
Phoenix is a distributed, modular, agent-based simulation platform. The platform can be used to create large scale agent based simulations to study complex adaptive systems such as infrastructure design, policy design and responses to disasters.
Phoenix is currently being used at Fields of View in the following problem areas:
- Disaster Management
- Transportation
- Smart Energy System
- Urban Evolution
Management of disasters requires planning and preparation prior to the disaster, efficient responses at the time of the event and rescue and rehabilitation post the event. Planning involves design of Standard Operating Procedures and communication protocols for co-ordination among the disaster management agencies. Preparation requires identification of agencies, tracking and maintenance of resources such as tools, supplies, food, medicine, personnel, etc.
Phoenix is designed to aid in the planning and design process. The simulation will then help us understand and create multiple “What if?” scenarios. As a test case, we are using Phoenix to develop a simulation to test interoperability of GIS protocols among disaster management agencies. Read more on the project Page.
Critical resources in a working environment that need management include water, energy and waste, among others. This can be thought of as a socio-technical system where the inhabitants interact with the environment in a social context. A 'smart' system addresses the problem of managing resources and services in the environment in an effective, sustainable and reliable manner.
We are using Phoenix to develop a simulation tool capable of identifying different scenarios for improving energy utilisation. The focus is to use existing infrastructure and not compromise on user comfort. Read more on the project page.
Given that a considerable portion of our population will be in urban areas, it becomes critical to understand the dynamics of different urban phenomena, the relationships between systems and services in the cities in order to promote economic growth and overall sustainability. We propose to simulate key relationships of different variables such as population, employment, infrastructure, land-use, transportation, weather, migration to understand where failures could occur and how to design more efficient and sustainable cities.
To trace this process of evolution in a city like Bangalore, we would like to create a model that simulates various processes, various parts of the city and the linkages between them. As part of this effort, we plan to use Phoenix to understand the relationship between the city and its poor. We wish to understand the reasons for the differences in the trajectories of evolution of slums. Read more on the project page.