Comments (2)
I suggest to assign this issue to milestone 2.0, i.e. post optimization of first prototype?
the properties dictionary comes from Agents.jl. So it will remain there at the moment. It still has some useful use-cases (where properties are not excessively accessed during model simulation). For other use-cases, e.g. heavily accessed parameters, variables etc. In section 4 of design document (V0.3) an initial proposal is suggested, to attach separate variable-size lists of variables, parameters, etc. to the agents, or ABM or MABM structs. The definition of identifiers could look as follows:
abstract type AbstractIdentifier end
abstract type AbstractVariable <: AbstractIdentifier end
...
mutable struct Variable{T} <: AbstractVariable
identity::string
val::T
# ...
end
...
# A contract for any agent subtype:
function addVariable!(agent::AbstractSocialAgent, var::AbstractVariable,initVal) end
function addParameter!(agent::AbstractSocialAgent, par::AbstractParameter,val) end
function addConstant!(agent::AbstractSocialAgent, cst::AbstractConstant,val) end
function deleteVariable!(agent::AbstractSocialAgent, var::AbstractVariable) end
from loneparentsmodel.jl.
I think this is done
from loneparentsmodel.jl.
Related Issues (20)
- Fuse all parameter types? HOT 1
- naming conventions var_name => varName
- Demography Data HOT 2
- keyword parameters HOT 2
- Model within mainHelper.jl HOT 19
- to place demographydata.jl within a module HOT 4
- implement income increments
- implement simple net migration
- selectMarraige HOT 1
- New Model API module HOT 4
- use newer age pyramid from UK for initialisation
- separate EconomyModel
- get rid of `struct *Data`
- make order and selection of processes run-time configurable
- add model docs to repo
- rethink state updates
- factor out classShares, ageBandShares
- get rid of getters/setters?
- try to reduce number of temporary vectors in jobmarket.jl
- make parameters patchable
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from loneparentsmodel.jl.