crafty-abm / crafty_cobra Goto Github PK
View Code? Open in Web Editor NEWCRAFTY Component-Based Role Agents (CoBRA)
CRAFTY Component-Based Role Agents (CoBRA)
Current CRAFTY parallelised using MPI for multiple runs or a run with multiple regions. For smaller grid sizes (1 km), parallelism required for a single run in a single region. Possibly use Java stream API for the cells in parallel? Requires investigation on the sequence of the model running. (what can run simultaneously or should sequentially).
A restricting institution reads a restricted land use layer from a CSV file in scenario loader and prohibits or controls land use changes in the targeted cells.
It can be a regional institution (or global, depends on the needs). The CSV file has a structure like below:
X Y Year AFT1 AFT2 AFT2 …
10 50 2016 Y N N N …
10 50 2017 Y N N N …
The imposed restriction continues until new restriction comes in.
Reference: https://www.wiki.ed.ac.uk/display/CRAFTY/CoBRA%3A+Institutional+Action
@see canTakeOver() in org.volante.abm.agent.DefaultLandUseAgent
Penalsing overproduction (by removing negative) is now applied to all services at once. Make it selective by service, specified in the competition xml file.
A restricting institution reads a restricted land use layer from a CSV file in scenario loader and prohibits or controls land use changes in the targeted cells.
It can be a regional institution (or global, depends on the needs). The CSV file has a structure like below:
X Y Year AFT1 AFT2 AFT2 …
10 50 2016 Y N N N …
10 50 2017 Y N N N …
The imposed restriction continues until new restriction comes in.
Reference: https://www.wiki.ed.ac.uk/display/CRAFTY/CoBRA%3A+Institutional+Action
@see canTakeOver() in org.volante.abm.agent.DefaultLandUseAgent
Every time a threshold is used, it's converted to a proportion of the mean benefit value across the current population of agents. It makes difficult to determine the prescribed giving-in and giving-up thresholds as the benefit level changes over time.
Ideally the current mean benefit value can be compared to the benefit values of a cell.
SD gap normalisation
SD gap relative to the current demand
E.g. Resisudal Demand (Gap_i) = (S_i - D_i)/D_i
In competition.xml, normaliseCellResidual and normaliseCellSupply are
by default `true' (means we normalise both).
They trigger normalisation is implemented in
org.volante.abm.agent.NormalisedCurveCompetitivenessModel.java
and done for each cell.
org.volante.abm.agent.DefaultLandUseAgent.considerGivingUp() and
org.volante.abm.agent.DefaultLandUseAgent.considerGivingUp.ProductionModel()
Make the model can trace the trajectory of an AFT in each cell. May have to store management decisions as well.
List up desired improvements of the current GUI (model display and control window)
The control window does not close when the button is pressed. It is due to a NullPointerException occurred in the finalActions() method. Java AWT thread is independent from the main thread, thus the object not accessible from the window thread. To fix it, it needs a handle to the main thread (to close file streams etc.).
Throw an error when FR IDs duplicated
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.