GithubHelp home page GithubHelp logo

crafty_cobra's People

Contributors

alanbseo avatar holzhauer avatar

Watchers

 avatar

crafty_cobra's Issues

CRAFTY restricting institution to control land use changes in urban and protected areas

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

Land Use Restricting institution for representing protected areas

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

Relative setting or normalisation of thresholds

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()

GUI improvements

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.).

Pararellisation (for a single run)

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).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.