Authors: Daniel Huynh, Duy Lam, Yagna Patel, and Kevin Yu
This project analyzes how the Electric Vehicles (EVs) affects carbon emissions across the United States. By projecting future EV adoption rates and their corresponding energy demands, we identify optimal solutions to implement renewable energy infrastructure to support a carbon neutral world. This information can be used to develop and implement Renewable Energy policies that encourage a carbon neutral world. Governments can use this model to plan their budgets and see where more investments into renewable energy may be needed to meet challenges created from increasing EV demand.
Policy Development
- Support creation of effective renewable energy policies
- Identify regions requiring immediate infrastructure investment
Resource Allocation
- Help governments optimize budget allocation for renewable and EV infrastructure
- Prioritize high-impact areas for renewable energy development
- Plan strategic grid and EV charging upgrades based on projected EV demand
Environmental Planning
- Track progress toward carbon neutrality goals
- Identify regions where emissions may increase without intervention
To use this program, follow these steps:
-
In terminal, run the command
pip install -r -requirements.txtto install required libraries -
run
dashboard.pyand click the local host link outputted in the terminal starting with "https://..." -
Adjust the slider to change the prediction year for plots and state maps
-
Select from a drop down menu to see specific data for an individual state
-
For 3d map, you can rotate the map via
command + clickorctrl + click
- The program extracts relevant CSV files. From these relevant CSV files, two CSV files are created where data analysis will be performed.
- Based on this data, various operations will be performed to extract relevant information.
- The relevant information will be projected in a plot or a map. This map or plot will be projected onto interactive dashboard widgets.
- Data is calculated using data from 2016-2022 specifically for fully battery electric vehicles.
- The program can be scaled quickly to use larger datasets by adding more rows.
- The visual dashboard allows for a comprehensive analysis and overall understanding the impact of EVs through a friendly user interface
- Adding more data related to other industries that the production and charging of EVs affect such as rare earth minerals.
- Considering county by county data to create a more comprehensive analysis of areas in need of potential energy infrastructure intervention to accomodate EV growth.
- Consider EV charger count and location in consideration with EV demand.
Time Complexity and Space Complexity for Each Function and Operation //Approximates
- Most of the functions are time complexity of O(n) with half coming from data analysis and half coming from plotting functions dynamically
data1Extraction.py:
-
extract_co2_emissionsfunction: Time: O(n) Space: O(n) -
extract_annual_generationfunction: Time: O(n) Space: O(n) -
calculate_co2_per_whfunction: Time: O(n²) Space: O(n) -
process_ev_sales_datafunction: Time: O(n) Space: O(n)
data2Regressions.py: k = prediction year
-
calculate_registration_trendfunction: Time: O(n + k) Space: O(n + k) -
calculate_growth_ratefunction: Time: O(n + k) Space: O(n + k) -
calculate_co2_per_whfunction: Time: O(n + k) Space: O(n + k) -
calculate_ev_demandfunction: Time: O(n + k) Space: O(n + k) -
calculate_ev_emissionsfunction: Time: O(n + k) Space: O(n + k)
data3Models.py:
-
plot_registration_trend functionfunction: Time: O(n), Space: O(n) -
plot_growth_ratefunction: Time: O(n), Space: O(n) -
plot_co2_emissionsfunction: Time O(n), Space: O(n) -
plot_ev_demandfunction: Time: O(n), Space: O(n) -
plot_ev_emissionsfunction: Time: O(n), Space: O(n) -
plot_ev_gas_proportionfunction: Time: O(n), Space: O(n)
GeoData1Analysis.py:
generate_emissions_projectionfunction: Time: O(n) Space: O(n)
GeoData2Models.py:
-
create_3d_state_mapfunction: Time: O(n) Space: O(n) -
create_3d_county_mapfunction: Time: O(n) Space: O(n)
GeoData3Generation.py:
-
load_state_datafunction: Time: O(n) Space: O(n) -
calculate_state_emissions_datafunction: Time: O(n) Space: O(n)
Dashboard.py:
-
generate_emissions_projectionfunction: Time: O(n) Space: O(n) -
generate_ev_emissions_percent_change_projectionfunction: Time: O(n) Space: O(n) -
create_3d_state_mapfunction: Time: O(n) Space: O(n) -
ev_registration_plotfunction: Time: O(n) Space: O(n) -
co2_plotfunction: Time: O(n) Space: O(n) -
ev_demand_plotfunction: Time: O(n) Space: O(n) -
ev_emissions_plotfunction: Time: O(n) Space: O(n) -
map_viewfunction: Time: O(n) Space: O(n) -
percent_map_viewfunction: Time: O(n) Space: O(n)
https://www.eia.gov/environment/emissions/carbon/
https://www.epa.gov/greenvehicles/greenhouse-gas-emissions-typical-passenger-vehicle
