Author: Mohamed Elgouhary Project Type: V2X Communication / Autonomous Vehicles / Networking Simulation Language: Python
This repository contains a Python-based project for studying Vehicle-to-Everything (V2X) communication concepts in connected and autonomous vehicle environments.
The project focuses on simulating and analyzing communication behavior between vehicles and surrounding infrastructure. It can be used as a starting point for experiments related to connected vehicles, intelligent transportation systems, autonomous driving, and cooperative perception.
Vehicle-to-Everything communication allows vehicles to exchange information with other vehicles, roadside infrastructure, pedestrians, networks, and cloud or edge systems. V2X is important for improving road safety, traffic efficiency, situational awareness, and cooperative autonomous driving.
This project provides code and report materials for exploring V2X-related communication behavior using Python simulations and analysis.
The main goals of this project are to:
- Study V2X communication concepts.
- Simulate interactions between connected vehicles and/or infrastructure.
- Analyze communication performance using Python.
- Support experiments related to autonomous and connected vehicles.
- Provide a reproducible project structure with code and report materials.
V2X-Project/
├── README.md
├── code/
└── report/
| Folder | Description |
|---|---|
code/ |
Python scripts and implementation files for the V2X project |
report/ |
Project report, documentation, or written analysis |
README.md |
Project overview and usage instructions |
V2X communication includes several communication modes:
| V2X Type | Meaning |
|---|---|
| V2V | Vehicle-to-Vehicle communication |
| V2I | Vehicle-to-Infrastructure communication |
| V2P | Vehicle-to-Pedestrian communication |
| V2N | Vehicle-to-Network communication |
| V2C | Vehicle-to-Cloud communication |
In autonomous driving, V2X can support:
- Cooperative awareness
- Collision avoidance
- Intersection safety
- Lane-change coordination
- Traffic-flow optimization
- Sharing of road hazard information
- Cooperative perception and sensor data exchange
The project can be used to simulate or analyze a V2X communication scenario such as:
Connected vehicles
↓
Message generation
↓
Wireless / network communication model
↓
Infrastructure or vehicle receiver
↓
Performance analysis
↓
Safety or traffic-efficiency interpretation
Depending on the experiment, the analysis may include:
- Communication delay
- Packet delivery behavior
- Vehicle density effects
- Message frequency
- Network load
- Transmission reliability
- Safety-related event detection
git clone https://github.com/Mohamed-Elgouhary/V2X-Project.git
cd V2X-Projectpython -m venv .venv
source .venv/bin/activateOn Windows:
python -m venv .venv
.venv\Scripts\activateIf the repository does not already include a requirements.txt file, create one using the packages needed by your code.
Common packages for this type of project may include:
pip install numpy pandas matplotlib scipy networkxGo to the code folder:
cd codeThen run the main Python script.
For example:
python main.pyIf the main file has a different name, list the files first:
lsThen run the appropriate script:
python <script_name>.pyDepending on the script, the project may generate:
- Communication performance plots
- Delay or latency analysis
- Packet delivery analysis
- Vehicle/network simulation results
- Figures for the project report
- CSV files containing experiment results
If output files are generated, it is recommended to organize them under:
outputs/
├── figures/
├── logs/
└── results/
To make the project easier to reuse, the repository can be organized as:
V2X-Project/
├── README.md
├── requirements.txt
├── .gitignore
├── code/
│ ├── main.py
│ ├── simulation.py
│ ├── analysis.py
│ └── utils.py
├── data/
│ └── README.md
├── outputs/
│ ├── figures/
│ ├── logs/
│ └── results/
└── report/
This project can be extended by studying:
- Effect of vehicle density on V2X message delivery.
- Effect of communication delay on collision-warning performance.
- V2V versus V2I communication scenarios.
- Roadside-unit placement and coverage.
- Cooperative awareness message frequency.
- Network congestion in dense traffic.
- Edge-assisted V2X communication.
- V2X-supported autonomous intersection coordination.
- V2X-based lane-change safety.
- Sensor-data sharing for cooperative perception.
This repository can support research questions such as:
- How does communication delay affect autonomous vehicle safety?
- How does vehicle density affect V2X reliability?
- How can V2I communication improve intersection safety?
- How can V2X support cooperative perception?
- What network conditions are required for real-time autonomous vehicle coordination?
To make the project easier to reproduce:
- Add a
requirements.txtfile. - Document the main script name.
- Include example input data if applicable.
- Save generated figures under
outputs/figures/. - Save numerical results under
outputs/results/. - Include configuration parameters in the README or a config file.
- Add comments explaining simulation assumptions.
Create a file named requirements.txt with:
numpy
pandas
matplotlib
scipy
networkx
Add or remove packages depending on your actual code.
Create a file named .gitignore with:
__pycache__/
*.pyc
.venv/
venv/
.ipynb_checkpoints/
outputs/logs/
outputs/results/
*.csv
*.xlsx
.DS_Store
Thumbs.dbIf your project uses small example CSV files, do not ignore those specific files.
Add these topics to the GitHub repository:
v2x
vehicle-to-everything
connected-vehicles
autonomous-driving
intelligent-transportation-systems
vehicular-networks
v2v
v2i
python
simulation
networking
smart-mobility
Use this as the repository description:
Python project for simulating and analyzing V2X communication scenarios for connected and autonomous vehicles.
This repository is developed and maintained by:
Mohamed Elgouhary PhD Student and Graduate Research Assistant Lane Department of Computer Science and Electrical Engineering West Virginia University
This project was developed as part of work in connected vehicles, autonomous driving, intelligent transportation systems, and V2X communication.
For questions or collaboration, please contact:
Mohamed Elgouhary Email: mae00018@mix.wvu.edu