Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
80f38aa
Added project README and structure for Urban Parking P6
ChiranjeeviVeluri Mar 22, 2026
cc2f643
Moved project into Playground folder
ChiranjeeviVeluri Mar 22, 2026
dae4309
Added preprocessing script and cleaned parking dataset
adityasubhash35 Mar 23, 2026
f7362f2
Performed EDA on cleaned dataset and Updated README.md
Aishwarya289 Mar 23, 2026
d855776
Created GNN required files
ChiranjeeviVeluri Mar 23, 2026
f31c68c
updated README.md
Aishwarya289 Mar 23, 2026
1291869
changes to readme
Aishwarya289 Mar 23, 2026
febb3d1
Created the Test graph with the cleaned data set with all the needed …
ChiranjeeviVeluri Apr 5, 2026
3693bb8
Small changes to the graph code
ChiranjeeviVeluri Apr 5, 2026
9b7479f
Visualisation Enhancement
Aishwarya289 Apr 5, 2026
46ef3df
feat: prepare GNN-ready dataset with feature engineering and graph ed…
adityasubhash35 Apr 5, 2026
9e21127
Updated the model.py
ChiranjeeviVeluri May 3, 2026
2541d1e
updated the model by training it
Aishwarya289 May 3, 2026
e36e4ab
Minor changes on the model
ChiranjeeviVeluri May 3, 2026
299e252
added area_feature file and cleaned parking dataset with area feature
Aishwarya289 May 13, 2026
9d86745
Updated Readme file and made minor changes to the code
ChiranjeeviVeluri May 13, 2026
c0d9464
updated README file
ChiranjeeviVeluri May 14, 2026
0500b4f
FINAL README
ChiranjeeviVeluri May 14, 2026
ab7049b
Code Cleaned
adityasubhash35 May 17, 2026
1b1c17d
Removed README file
adityasubhash35 May 17, 2026
70c029c
Added use cases
Aishwarya289 May 17, 2026
d1fa58a
Updated the final README
Aishwarya289 May 17, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
424 changes: 424 additions & 0 deletions Playground/Urban_Parking_P6/README.md

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
{
"use_case_id": "UC001",
"title": "Urban Parking Demand Forecasting Using Graph Neural Networks",
"author": "Aishwarya Ravichandran",
"team_members": [
"Chiranjeevi Veluri",
"Aditya",
"Aishwarya Ravichandran"
],
"course": "Capstone Project",
"project_type": "Machine Learning and Graph Analytics",
"domain": "Intelligent Transport Systems (ITS)",
"description": "This use case presents a Graph Neural Network (GNN)-based solution for predicting next time-step parking occupancy in Melbourne. The system models parking bays as graph nodes and connects geographically nearby bays using edges. Temporal features such as hour of day and day of week are combined with spatial features including latitude and longitude to forecast whether each parking bay will be occupied or free. Users can select a Melbourne area and specify a desired time to generate customized predictions, which are displayed through an interactive graph visualization.",
"business_objective": "To develop an intelligent parking demand forecasting system that predicts future parking occupancy for selected Melbourne suburbs using Graph Neural Networks, helping drivers find parking more efficiently and supporting smart-city planning.",
"problem_statement": "Parking demand is influenced by both temporal patterns and spatial relationships between nearby parking bays. Traditional machine learning models treat each parking bay independently and fail to capture neighborhood effects. This project addresses the problem by modeling parking bays as a graph and predicting occupancy at the next time step.",
"dataset": {
"name": "Melbourne On-Street Parking Sensor Data",
"processed_file": "cleaned_parking_with_area.csv",
"source": "City of Melbourne Open Data Portal",
"attributes": [
"bay_id",
"timestamp",
"latitude",
"longitude",
"occupancy",
"area"
],
"target_variable": "future_occupancy",
"areas": [
"Melbourne CBD",
"Richmond",
"Docklands",
"Carlton",
"Fitzroy",
"Brunswick",
"South Yarra",
"St Kilda"
]
},
"features": {
"input_features": [
"hour",
"day",
"latitude",
"longitude"
],
"temporal_features": [
"hour of day",
"day of week"
],
"spatial_features": [
"latitude",
"longitude",
"graph connectivity"
]
},
"forecasting_logic": {
"approach": "One-step forecasting",
"description": "Current features at time t are used to predict occupancy at the next time step t+1 using shift(-1)."
},
"graph_construction": {
"library": "NetworkX",
"nodes": "Unique parking bays",
"edges": "Parking bays within 0.5 km",
"distance_metric": "Haversine distance"
},
"model": {
"name": "Graph Convolutional Network (GCN)",
"framework": "PyTorch Geometric",
"hidden_units": 16,
"dropout": 0.3,
"output_classes": 2,
"optimizer": "Adam",
"learning_rate": 0.01,
"loss_function": "CrossEntropyLoss",
"epochs": 200,
"classification_threshold": 0.4,
"train_test_split": "80/20"
},
"performance": {
"train_accuracy": "~65%",
"test_accuracy": "~40-50%",
"evaluation_metrics": [
"Training Accuracy",
"Testing Accuracy",
"Prediction Probabilities",
"Predicted vs Actual Labels"
]
},
"interactive_features": {
"area_selection": true,
"hour_input": true,
"day_input": true,
"clickable_visualization": true,
"node_details": [
"Bay ID",
"Predicted Status",
"Actual Status",
"Confidence Score",
"Latitude",
"Longitude"
]
},
"visualization": {
"library": "Matplotlib",
"graph_library": "NetworkX",
"color_scheme": {
"red": "Actual occupied",
"green": "Actual free",
"yellow_border": "Incorrect prediction",
"blue": "Selected node"
}
},
"key_files": [
"graph.py",
"features.py",
"model.py",
"train.py",
"prepare_data.py",
"select_area.py",
"predict_by_area.py",
"visualize_predictions.py",
"cleaned_parking_with_area.csv",
"parking_gnn_model.pth"
],
"technologies": [
"Python",
"Pandas",
"NumPy",
"NetworkX",
"PyTorch",
"PyTorch Geometric",
"Matplotlib",
"Scikit-learn"
],
"limitations": [
"Moderate prediction accuracy",
"Limited feature set",
"One-step forecasting only",
"Static graph structure",
"No real-time data integration",
"Desktop-based interface"
],
"future_improvements": [
"Integrate weather and event data",
"Use advanced GNN architectures such as GAT",
"Support multi-step forecasting",
"Hyperparameter optimization",
"Real-time API integration",
"Web dashboard deployment",
"Parking recommendation system"
],
"repository_structure": {
"src": "Python source code",
"data": "Processed datasets",
"models": "Saved trained models",
"docs": "Use case documentation"
},
"tags": [
"Graph Neural Networks",
"Urban Parking",
"Machine Learning",
"Forecasting",
"Smart Cities",
"Intelligent Transport Systems",
"PyTorch Geometric"
],
"difficulty": "Intermediate",
"status": "Completed"
}
Loading