Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.7%) to scientific vocabulary
Repository
AWS setup for MATSim simulations
Basic Info
- Host: GitHub
- Owner: moia-oss
- License: gpl-3.0
- Language: Java
- Default Branch: main
- Size: 65.4 KB
Statistics
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
MATSim - AWS
AWS (amazon web services) setup for MATSim simulations.
Provides generic infrastructure as code templates to setup MATSim simulations to run as AWS batch jobs.
Includes: - S3 buckets for input (including executable jars) and output - IAM identity roles with the appropriate access rights - ECR repository to hold docker/podman images for execution - VPC setup - Batch setup to start individual jobs including starting and shutting down appropriately sized machines - (optionally) a job notification lambda function that notifies the user about the end of a job via a predefined slack workspace and channel
Requirements
- Java + Maven
- your own AWS account
- AWS cdk installed for deploying the AWS resources
- podman/docker for building the job image
- AWS cli installed for pushing the docker image to ECR
- a packaged executable jar (i.e., shaded via maven)
Steps
Setup Environment
Fill in the environment variables in the environment.env
file. You will need at least the AWS account number and your
desired region. This environment will act as a single source
of truth throughout the setup.
Set your AWS credentials in the System environment
Make sure that your credentials are available as environment variables.
As an alternative, if your organization supports it, use AWS SSO as described here. Be careful, the region of the SSO might be different from the region of your target account! You can see the parameters you need after logging in, by selecting the "Access Keys" link next to your account.
Use aws sso login --profile my-profile before running the deploy script.
Deploy AWS App
Run the 1_deployAWSInfrastructure.sh script. This will
- go to the matsim-aws-setup maven module.
- execute maven compile goal.
- Run:
- cdk bootstrap
- cdk deploy --all
Afterwards, check if there is a cdk.out folder under matsim-aws-setup
Build image and push to ECR
Use 2_deployMatsimImage.sh for building and pushing the job image once
the ECR repository has been setup.
Run Example
The scenarios folder contains the equil example scenario from MATSim original repo.
Within the matsim-aws-setup module, there is the io.moia.aws.run package that shows
how to get your first simulation running.
First, (with correct AWS credentials and the environment.env variables in your environment)
run the PrepareInput class, which simply uploads the required scenario files to your newly
created S3 input bucket.
Next, you need to package the maven module into an executable jar, such that it contains the RunEquil
main class. You can use the 3_updateJar.sh script provided here to run the package command and
update the resulting jar into the correct input bucket path.
Once the input and jar are uploaded you need to define a AWS batch job definition.
The job definition acts like a template for defining how a job should be run.
The definition defines various parameters, such as the batch job queue, the input/output buckets,
Main class, etc. Run the EquilExampleJobDefinition (again with correct environment variables)
to register the definition in your account.
Now you can run the EquilExampleJobSubmissionclass to actually submit your job. A link to the
AWS batch job will be printed to the console. The output will be synced to your output bucket.
Useful commands
mvn packagecompile and run testscdk lslist all stacks in the appcdk synthemits the synthesized CloudFormation templatecdk deploydeploy this stack to your default AWS account/regioncdk diffcompare deployed stack with current statecdk docsopen CDK documentation
DISCLAIMER:
The code is provided as is. There is no warranty about the correct usage of AWS resources. Any costs incurring in the user's account should be monitored closely and are in the whole responsibility of the user.
! Any deployment of this app may alter your AWS setup unintentionally !
Owner
- Name: MOIA GmbH - Open Source
- Login: moia-oss
- Kind: organization
- Repositories: 40
- Profile: https://github.com/moia-oss
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Kuehnel" given-names: "Nico" orcid: "https://orcid.org/0000-0003-0527-8653" - family-names: "Frawley" given-names: "Mark" - family-names: "Dubernet" given-names: "Thibaut" orcid: "https://orcid.org/0000-0001-9741-9999" title: "MATSim-AWS" version: 1.0 date-released: 2025-07-25 url: "https://github.com/moia-oss/matsim-aws/"
GitHub Events
Total
- Watch event: 2
- Delete event: 4
- Member event: 1
- Push event: 14
- Pull request review comment event: 1
- Pull request review event: 8
- Pull request event: 14
- Create event: 8
Last Year
- Watch event: 2
- Delete event: 4
- Member event: 1
- Push event: 14
- Pull request review comment event: 1
- Pull request review event: 8
- Pull request event: 14
- Create event: 8
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 0
- Total pull requests: 2
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 2
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
- nkuehnel (5)
- mfrawley-moia (3)
- tduberne-vw (2)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- ubuntu 22.04 build
- org.matsim:matsim 2026.0-2025w20
- software.amazon.awscdk:aws-cdk-lib 2.186.0
- software.amazon.awssdk:batch
- software.amazon.awssdk:ecr
- software.amazon.awssdk:iam
- software.amazon.awssdk:lambda
- software.amazon.awssdk:s3
- software.amazon.awssdk:sso
- software.amazon.awssdk:sts
- software.constructs:constructs [10.0.0,11.0.0)
- org.junit.jupiter:junit-jupiter 5.7.1 test