Commit Graph

9 Commits (4e296e0cf193b80e662db526fdc17321fb3f604c)

Author SHA1 Message Date
J. Fernando Sánchez 73282530fd Big refactor v0.30
All test pass, except for the TestConfig suite, which is not too critical as the
plan for this version onwards is to avoid configuration as much as possible.
1 year ago
J. Fernando Sánchez 2869b1e1e6 Clean-up
* Removed old/unnecessary models
* Added a `simulation.{iter_}from_py` method to load simulations from python
files
* Changed tests of examples to run programmatic simulations
* Fixed programmatic examples
2 years ago
J. Fernando Sánchez a1262edd2a Refactored time
Treating time and conditions as the same entity was getting confusing, and it
added a lot of unnecessary abstraction in a critical part (the scheduler).

The scheduling queue now has the time as a floating number (faster), the agent
id (for ties) and the condition, as well as the agent. The first three
elements (time, id, condition) can be considered as the "key" for the event.

To allow for agent execution to be "randomized" within every step, a new
parameter has been added to the scheduler, which makes it add a random number to
the key in order to change the ordering.

`EventedAgent.received` now checks the messages before returning control to the
user by default.
2 years ago
J. Fernando Sánchez 227fdf050e Fix conditionals 2 years ago
J. Fernando Sánchez 78833a9e08 Formatted with black 2 years ago
J. Fernando Sánchez d9947c2c52 WIP: all tests pass
Documentation needs some improvement

The API has been simplified to only allow for ONE topology per
NetworkEnvironment.
This covers the main use case, and simplifies the code.
2 years ago
J. Fernando Sánchez cd62c23cb9 WIP: all tests pass 2 years ago
J. Fernando Sánchez f811ee18c5 WIP 2 years ago
J. Fernando Sánchez 3dc56892c1 WIP: working config 2 years ago