Giter Club home page Giter Club logo

cs_simulation_gama's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cs_simulation_gama's Issues

fix the clock

change it from skeleomorphism to flat and give a generic way to set size and pos

Create model for Aalto campus which extends CityScope_main.gaml

As discussed with @agrignard and @sannailtanen, we need to create an ABM for the campus with a lot of the same functionality as CityScope_main.gaml. However, some functionality will need to be modified/extended. For example:

  • grid data in cityIO 2.1 format needs to be parsed
  • the sliders do not exist
  • locations of car parks should be modelled
  • there should not necessarily be a 1:1 relationship between residential types and office types.

What is the best way to do extend an existing model? Should we import the entire model CityScope_main.gaml? If we do this, can we then overwrite certain parameters and methods of the model?
Or can we import specific parts of CityScope_main.gaml? eg. can we import all the species and experiments but write new code for the global parameters and reflexes?

Use data about internal and external flows to improve representativeness of model

Right now all trips take place between buildings on campus and the number of agents is arbitrary. A number of changes should be made to improve the realism of the model.

  1. Get some data on
  • the numbers of people arriving to the campus each day and how many of them drive.
  • the number of people living and working/studying on campus and how many of them drive
  1. Create some external zones representing the main entry/exit points to the campus. Create "commuter" agents who "live" in these zones.
  2. Based on the data in point 1, simulate the correct number of internal and external driving trips.
  3. The number of agents will probably be too high to simulate so just simulate some fraction of them. Make sure to reduce the capacity of the car parks by the same factor.

Point 1 may take some time but we can proceed with points 2 to 4 with some assumed numbers for now.

Zombies or a bigger "area" may be needed

Since Volpe is only 1Km by 1Km, commuting by car is not that popular.

@agrignard Can we have a link to Ronan's Mocho data, and use that to feet the zombies?

If not, can we have all the Boston area as a playground?

User should be able to create/move car parks and residential buildings

In order to make the model useful for scenario evaluation we must be able to experiment with different scenarios of parking and housing provision. When additional housing is added, it should have the effect of converting 'external trips' which have a high likelihood of driving to to 'internal trips' which have a lower likelihood of driving.

There are several ways this interactivity can be added:

  • Sliders which add parking/housing in random locations on campus
  • Placing parking/housing by pointing and clicking the mouse. This can be achieved using an 'action' which is triggered by the mouse click and creates a new agent at the current mouse location.
  • Using the CityScope interface. This should be the eventual goal but it may be easier to start with another option.

Commuting Patterns

Make assumptions about commuting behaviors: specifically, how many people would live and work in the district and those who commute in each day from outside of the district. Assumptions will also be made about behaviors with respect to people who enter and leave the district for other no-work activities (recreation, shopping, etc.)

Tri PIE

It looks like something is wrong with the alignment of the text for the pie

Not sure where it comes from
screen shot 2018-05-01 at 09 22 13

Add a 2.1 Reader on top of the 1.0 model

Right now the GAMA ABM Volpe model is plugged to the GH scanning which is not sending a 2.1 version of cityIO and I don't knwo wiehter or not @popabczhang will have time to update it. In any case in order to have a generic model it would be great to have a 2.1 scanner that would send a 2.1 format and then having the 2.1 reader in the GAMA model in parallele

Mobility Modes and Pathways

Define the types of mobility modes for the project, including the vehicle characteristics of both existing and new modes (# passengers, speed, autonomous vs. conventional, etc.) and how each mode may be integrated with existing and proposed public transit. Define assumptions about the mobility use patterns of people (agents) that will be used to establish the origin/destination pairs for agent behaviors.

Content and Style of labels of pie chart

I've created some dynamic pie charts for the Aalto simulation. However, as shown in the image below, the labels are generated automatically in a way that is hard to read. How can we customise the content of the labels the width of the label boxes (so that the text doesn't get split across multiple lines).

Screenshot 2019-09-11 at 14 52 32

CityIO no density

right now when cityIO is no sending density data (which actually happens many times) the simulation is crashing because it's trying to access an empty array.

Find a way to have at least a simulation that does not crash

Agent Profiles

Define the profiles of people, numbers, and origin and destination points as determined by places of living, work, and other activities - including people who live in the district and those who commute. Profiles of people living in each type of residential building, working in each type of commercial building, and attracted to 3rd places (students, young professionals, families, mid- career workers, senior executives, etc.). This information will be used to establish the behaviors of each agent type: where they live, where they work, and the "3rd places" that they visit.

Merge DataOnModes and ModeCharacteristics

I understand that we want to differentiate the aspect (color,witdth, speed) form the characteristic but then it complexifies the description of the model. I would be in favor to merge the two file in a big file that is about Mode

What do you think?

Pie Charts seem to be broken

In dev run game_it_v1.0.gaml pie charts doesn't work properly (index ouf of bounds)

It used to work? Something related to GAMA 1.7 vs GAMA 1.8?

Entropy disable temporaly

I need to remove the entropy code temporally. Here is the commit where it has been remove.

ecf4733

I am working on a better architecture where typically that kind of stuff should be in a separate file dedicated to the analysis of the simulation.

Urban Design Refinement and Land Use Definition

Refine the initial urban plan to delineate the level of detail required for the agent–based simulation: uses of each building (types of residential, types of office, 3rd places (restaurants, shops, etc.) schools, cultural facilities, types of parks, etc.

Data Collection and Analysis

Define a generic way to describe the data required to construct an agent-based model, including GIS description of the proposed urban plan (buildings and roadways), total floor area of each building, estimated occupancy, building heights, transportation data, etc. The quality of the data will impact on the accuracy of the agent-based model.

Grid initialization in a configuration file

This model was developped before cityIO grid format and the settings about the city are hardcoded directly in the model. It should be read ideally from cityIO and at least from a local file using the same format as cityIO

// Variables used to initialize the table's grid.
float angle <- -9.74;
point center <- {1007, 632};
float brickSize <- 21.3;

Optimization

Now the fact that the road doesn't go to the bulidng takes lots of time in computation (for the agent to compute the shortest building)

One optimization is to link every building to the road network by generating the road

Impossible to write to cityIO

save(json_file("https://cityio.media.mit.edu/api/table/update/grasbrook/cityIO_Gama_Hamburg", c));

Doesnt work anymore

Pushing List in JSON file from GAMA

Right now if we want to push a list as a json file in cityIO from GAMA the list will be automatically stored as a map which results to a slightly different string that the one expecting

see here:
https://cityio.media.mit.edu/api/table/grasbrook/cityIO_Gama_Hamburg

This is a valid restriction from GAMA because:

JSON stands for JavaScript Object Notation, so a JSON file should be the description of a Javascript Object, which is a map, not an array.

However in a recent commit (gama-platform/gama@23f1a7e), the GamaJsonFile implementation has been updated (adapting to GAMA data structures a more recent version of the json-simple library to avoid too much serializations/deserializations), which, when asking to save a map with only one entry with "contents" as key, will serialize and save the corresponding value instead. Reading this kind of JSON list will, as it was doing before, produce a single-entry map.

So this should be fixed soon without the "contents" filed

Simulation, Scenario Testing and Visualization

Develop alternate scenarios to be modelled. Scenarios may relate to modal mix and assumptions about adoption rates of autonomous vehicles. Develop visualizations of modelled scenarios. These visualizations will be presented in video format.

Clarify Campus Residential Building Types

Currently all person agents pick their housing from the full list of vacant houses. However, students and staff should have different choice sets and/or preferences. To implement this, we need to know which person types prefer which housing types.

The residential buildings in the Buildings and Campus_Buildings shape files have a Scale attribute with values S, M or L. @sannailtanen What kinds of housing do each of these categories represent and how were they determined?

We have 2 types of people seeking housing: students and staff? Which of the housing types above are student housing and which are for staff/others?

Create charts to show important indicators in real-time

The Aalto model should have some charts (eg. time series plot, histogram, bar chart etc.) to show the most important indicators in real-time. Some examples of important indicators include:

  • the total km travelled by cars
  • the parking pressure (average/max over time or maybe a dynamic histogram)
  • the number of drivers who cannot find parking spaces
  • etc.
    Some examples of projects using charts can be found in the sample projects or in other CityScope projects. eg:

https://github.com/CityScope/CS_Simulation_GAMA/blob/devEnergy/CS_CityScope_GAMA/models/SandBox/Energy/SolarBlockChain.gaml

https://github.com/CityScope/CS_Simulation_GAMA/blob/master/CS_CityScope_GAMA/models/Game_IT.gaml

Aalto model very slow

@Babakfifoo I just ran the aalto model and it becomes very slow after few iterations do you have an idea why? With thousands of agents we shouldn't have such a slow model.

documentation: qgis(geofabrik)->export4gama :)

Please, add a few notes about how to use qgis for make a map for the gama simulation project.
the simulation code look for building of type ("R") at start for put agent in it so they can start to move, shouldnt i use a filter for select them on map and assign them this attribut in qgis?

ps: and for volpe, from where do you got these csv? :)

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.