PROJECT PRESENTATION
Course Title : Computer Programming Lab
Course Code : CE206
Group Name : Foundation X
Members:
Rakibul Hasan Student ID: 24205135
Niloy Student ID: 24205108
Md. Mahedi Morshed Student ID: 24205106
Rafiul Islam Student ID: 24205123
PYTHON-BASED ROAD PAVEMENT CONDITION ASSESSMENT AND MAINTENANCE PRIORITY RANKING SYSTEM
WHY PAVEMENTS DETERIORATE
• Repeated traffic loading
• Environmental exposure and ageing
• Water infiltration
• Inadequate drainage
• Delayed maintenance
• Reduced safety and ride quality
• Higher vehicle operating costs
• Faster deterioration
• Higher rehabilitation costs
• Difficult maintenance planning
WHY IT MATTERS
ROUGHNESS
CRACKING
RUTTING
POOR DRAINAGE
Surface fractures
Water accumulation
Uneven riding surface
Localised cavities
Wheel-path deformation
Understanding the Road Pavement Deterioration Problem
POTHOLES
Project Objectives and Expected Outcomes
3
PRIMARY OBJECTIVE
Evaluate pavement condition and identify maintenance priorities using Python.
CSV
01
Analyze
Road datasets
→
✓
02
Validate
Input accuracy
→
Σ
03
Calculate
Five indicators
→
100
04
Assess
Condition score
→
A
05
Classify
Four categories
→
↑
06
Recommend
Actions & ranks
→
▥
07
Visualize
Matplotlib charts
EXPECTED OUTPUT
Condition score • Category • Maintenance action • Priority rank • Charts • Final CSV
Proposed Methodology and System Architecture
DATASET SNAPSHOT
7
ROAD SECTIONS
13
RECORDED VARIABLES
Traffic is recorded but excluded from the current score.
1
CSV Dataset
Input
→
2
Data Loading
Pandas
→
3
Validation
Quality checks
→
4
Severity
5 indicators
→
5
Weighted Score
0–100
6
Classification
4 categories
→
7
Maintenance
Action mapping
→
8
Priority Rank
Low score first
→
9
Visualize
Matplotlib
→
10
Export
Final CSV
INPUT → PROCESSING → DECISION SUPPORT → VISUAL OUTPUT
• Geometry
• Distress data
• Roughness & drainage
• Traffic counts
Python Technologies and Programming Implementation
TECHNOLOGIES & APPLICATIONS
Py
Python
Main programming language
pd
Pandas
CSV loading, inspection, sorting and export
np
NumPy
Severity calculations, limits and classification
▥
Matplotlib
Condition, ranking and distribution charts
G
Google Colab / Drive
Notebook execution and dataset access
CORE PROGRAMMING CONCEPTS
Lists
Road-section IDs and distress parameter names
Tuples
Fixed condition category set
Dictionaries
Distress weights and maintenance mapping
Class & objects
Pavement Section stores road details and methods
File handling
Read input CSV and export analysis CSV
Weighted Pavement Distress Assessment Model
DISTRESS WEIGHT DISTRIBUTION
Cracking
25%
Potholes
25%
Rutting
20%
Roughness
20%
Drainage
10%
TOTAL WEIGHT = 100%
MATHEMATICAL MODEL
Distress Score =
0.25(Crack) + 0.25(Pothole) + 0.20(Rutting)\n+ 0.20(Roughness) + 0.10(Drainage)
Condition Score = 100 − Distress Score
SEVERITY NORMALIZATION
• Cracking: crack percentage, limited to 0–100.
• Potholes: pothole area ÷ road surface area × 100.
• Rutting: rut depth ÷ 25 mm × 100.
• Roughness & drainage: (rating − 1) ÷ 4 × 100.
Pavement Condition Classification System
CONDITION BANDS & MAINTENANCE ACTIONS
85–100
GOOD
Routine Maintenance
70–84.99
FAIR
Preventive Maintenance
40–69.99
POOR
Major Rehabilitation
Below 40
CRITICAL
Urgent Repair
ACTUAL DATASET DISTRIBUTION | 7 ROAD SECTIONS
GOOD
0 | 0.0%
FAIR
5 | 71.4%
POOR
2 | 28.6%
CRITICAL
0 | 0.0%
Results: Road Condition Analysis and Maintenance Priority
MAINTENANCE PRIORITY RANKING | LOWEST SCORE FIRST
1
R06
58.86
2
R05
67.20
3
R04
74.80
4
R02
78.22
5
R07
79.06
6
R01
83.27
7
R03
84.95
#1 HIGHEST PRIORITY
R06
Hathkhola Road (Sayedabad)
Condition score: 58.86 | POOR
MAJOR REHABILITATION
#2 SECOND PRIORITY
R05
Pragati Sarani (Middle Badda)
Condition score: 67.20 | POOR
MAJOR REHABILITATION
LIVE PLATFORM: ROADVISION PRO & PYTHON OUTPUT
ROADVISION PRO | LIVE WEB PLATFORM
Browser-based pavement analysis dashboard
• Upload road survey data: CSV, XLSX or XLS
• View condition scores and Good / Fair / Poor / Critical classes
• Compare sections through dashboard charts and analytics
• Review ranked maintenance actions and road inventory
• Export an Excel summary or PDF report
PYTHON NOTEBOOK | GOOGLE COLAB
The submitted code performs the same core analysis.
01
Load & validate the CSV dataset
02
Calculate five distress severity indicators
03
Apply weighted condition score and classification
04
Generate maintenance recommendations and priority ranks
05
Export final_road_pavement_analysis.csv
COLAB OUTPUT: DOWNLOAD FINAL CSV
Both routes use the project’s weighted scoring logic.
Conclusion, Engineering Significance and Future Scope
PROJECT OUTCOMES
• Processes and validates pavement data.
• Calculates five normalized distress indicators.
• Produces weighted scores and condition classes.
• Assigns maintenance actions and priority ranks.
• Generates charts and CSV output.
ENGINEERING SIGNIFICANCE
• Identifies weaker sections for attention
• Supports consistent comparison and planning
• Provides a preliminary screening tool
FUTURE IMPROVEMENTS
• Include traffic loading and GIS mapping
• Expand dataset and add maintenance cost analysis
• Calibrate weights with field data and standards
“Turning Road Condition Data into Smarter Maintenance Decisions.”
THANK YOU | Q&A