Questions tagged [repast-hpc]

Repast for High Performance Computing (Repast HPC) is a next generation agent-based modeling system intended for large-scale distributed computing platforms. It implements the core Repast Simphony concepts modifying them to work in a parallel distributed environment.

Repast for High Performance Computing (Repast HPC) is a next generation agent-based modeling system intended for large-scale distributed computing platforms. It implements the core Repast Simphony concepts (e.g. contexts and projections), modifying them to work in a parallel distributed environment.

Repast HPC is written in cross-platform It can be used on workstations, clusters, and supercomputers running , , or . Portable models can be written in either standard or Logo-style C++.

Repast HPC implements the core Repast Simphony concepts and features. Agents are implemented as Objects, in the case of Repast HPC, as C++ classes. An agent's state is represented by the field variables of those classes and agent behavior is represented by methods in those classes.

The simulation proceeds using a schedule. Each iteration of the simulation, the next event is popped of the schedule queue and executed. Repast HPC implements a dynamic discrete-event scheduler with conservative synchronization.

If your question is related to the Repast for High Performance Computing framework, you should use this tag.

20 questions
2
votes
1 answer

Issue with Synchronisation of Agents from different types in a shared discrete space projection

I have an issue regarding the synchronisation of different agents. So I have a shared context with a BaseAgent class as the tutorial suggested for the case where we have more than 1 agent type in the same context. Then I have 4 more agent classes…
1
vote
1 answer

How to create ghost agents based on agents from another rank in repast4py?

I am trying to create an OrderBook agent that can be shared across all ranks. I can share the agent using mpi4py send and receive operations. But based on the documentation here I am assuming self.context.synchronize(restore_orderbook) will create…
Vinay
  • 1,149
  • 3
  • 16
  • 28
1
vote
1 answer

What is a quick way to filter agents retrieved by Moore2DGridQuery

I am developing a model on RepastHPC, where I have multiple types of agents inhabiting the same discrete grid projection. On each tick the agents of one of the types need to query the grid projection and find the agents at their current location.…
1
vote
1 answer

Running discrete grid projections on more than 4 processes

I currently have my model running with a discrete grid projection on 4 processes. I create the grid in the following way: std::vector processDimensions; processDimensions.push_back(2); processDimensions.push_back(2); // The grid projection…
1
vote
1 answer

Is there a way to modify an agent in the buffer zone of Repast HPC Grid, and propagate those changes back to the original agent?

My question is regarding modifying agents on another process. I am using a grid, where I have static agents, one agent per grid cell. Each agent can get its direct neighbours using the Moore2DGridQuery. Then depending on the neighbouring agents…
1
vote
1 answer

Problems installing Repast HPC 2.3.1 on MacOS

Updated: I am trying to install repast hpc 2.3.1 on my MacBook Pro with M1 processor, however I run into the following issue. I am following the Install.txt instructions included in the package. The issue now occurs when I try to use ./install rhpc…
1
vote
1 answer

How to stop simulation run after specific time NOT tick

all. Regardless of what my model does, I want to stop the simulation after running for a specific time (real clock time). For example, stop after 5 or 10 or 15 minutes. I tried stopping it after 5 minutes using the…
1
vote
1 answer

How to configure the context.xml file?

I just started learning repast. When I follow the examples in the attached documentation,I found a problem with the configuration of the context.xml file,What should I do?enter image description hereenter image description here
LiGuanding
  • 23
  • 2
1
vote
0 answers

C++ code runs on Mac with multithreading, file will not open in Ubuntu

Running C++ code using Repast HPC 2.1 on an Ubuntu 14.04 VirtualBox VM. This code has been proven to work when run in XCode on a Mac laptop. I'm currently trying to make the existing code run in Ubuntu. Make runs successfully on the code in Ubuntu,…
Rachael
  • 23
  • 8
1
vote
1 answer

GCC 4.8.4 Error on Ubuntu 14.04 VM: -std=c++11 flag isn't being detected

I've looked everywhere online and can't seem to find a solution to this issue. I have tried -std=c++11, -std=c++0x, and -std=c++1y flags in the makefile and env file, all of which have no effect on the following errors: 'to_string' is not a member…
Rachael
  • 23
  • 8
1
vote
0 answers

error when installing Repast HPC 2.0

Has anyone tried Repast HPC 2.0. I am trying to install it on Mint 16 (64-bit) but got errors as below: mkdir -p ../include/repast_hpc mkdir -p ../include/relogo cp ../src/repast_hpc/*.h ../include/repast_hpc/ cp ../src/relogo/*.h…
Yvan
  • 35
  • 5
1
vote
0 answers

Repast HPC in Xcode 5.1 parse issue error

all. I’d like to ask a question about the error I encounter when I try to use Repast HPC in Xcode 5.1. (Repast HPC is an agent-based simulation library based on C++. For more information, go to http://repast.sourceforge.net/repast_hpc.html) For…
0
votes
1 answer

How to simulate an order queue in repast across multiple ranks(processor cores )?

I am just beginning with repast python. I want to simulate a small order handling process with multiple steps. Let's say there are 1000 orders with different order placement timestamps. There are 3 steps after the order is received, picking(10 - 15…
Vinay
  • 1,149
  • 3
  • 16
  • 28
0
votes
1 answer

Is there a way to access the weight of an edge using Repast4Py's network module?

The Repast4py API documentation states there are ways to add edges with weights in a network. Similarly, it states ways to access the number of edges a given vertex has. However, it doesn't seem there is a way to access the weight of a given vertex.…
0
votes
1 answer

Flexible Array Member for 2D-Array

I am currently working on a big project involving repast_hpc and mpi. I wanted to implement a two dimensional shared (across processes) array, because repast_hpc itself does not seem to come with that. For that I need an array member of a class.…
Tritos
  • 1
  • 1
1
2