The Solar Site Suitability Planner is a Python-based geospatial tool designed to automate and streamline the evaluation of land for solar energy development. Leveraging open-source libraries, the project integrates Digital Elevation Model (DEM) data to analyze terrain and slope characteristics, coupled with solar irradiance estimates sourced from NASA POWER datasets. The tool offers both interpretable rule-based scoring and advanced machine learning (XGBoost) modeling to assess site suitability across large geographic regions. Results are visualized through interactive, color-coded maps using Folium, allowing users to intuitively identify the most promising locations for solar projects. The planner is modular and extensible, enabling future incorporation of additional environmental, infrastructure, or economic data layers and supporting rapid, data-driven site assessment for researchers, students, and stakeholders in the renewable energy sector.
The Solar Site Suitability Planner is an automated Python-based geospatial application crafted to assist in the efficient evaluation of land parcels for utility-scale solar energy development. The system synthesizes spatial data from Digital Elevation Models (DEM) to characterize terrain features—primarily elevation and slope—while integrating spatially mapped solar irradiance estimates sourced from the NASA POWER dataset.
Feature extraction routines are implemented using NumPy and Rasterio, enabling high-performance computation of terrain derivatives on large raster grids. Suitability scoring is achieved via two parallel approaches: (1) a deterministic, rule-based model combining normalized solar input and penalized terrain slope for transparent, interpretable decision rules; and (2) a supervised machine learning model (XGBoost classifier) trained on extracted geospatial features allowing for complex, nonlinear site ranking if ground truth or expert-labeled site data is available.
Visualization routines leverage Folium to render interactive, color-coded maps overlaying suitability scores on geographic basemaps. The system optimizes performance when handling large datasets by subsampling and efficient raster-to-feature transformations. The codebase adopts a modular architecture for ease of extension, facilitating the integration of supplemental layers such as land use, proximity to transmission lines, or exclusion zones.
This modular pipeline enables robust, reproducible, and scalable solar suitability assessments suitable for research, teaching, and rapid site screening by clean energy stakeholders.
The Solar Site Suitability Planner employs a structured and repeatable methodology to automate the process of evaluating land suitability for solar energy development. The core workflow consists of the following steps:
Data Acquisition
Obtain Digital Elevation Model (DEM) raster data covering the geographic region of interest to provide high-resolution terrain information.
Collect solar irradiance data for the same region from the NASA POWER dataset. For demonstration or prototyping, a synthetic spatial solar irradiance gradient may be generated.
Feature Extraction
Compute terrain slope values for each grid cell in the DEM using numerical differentiation techniques (e.g., NumPy gradients).
Align and map corresponding solar irradiance values to each cell in the study area, ensuring spatial consistency.
Suitability Scoring
Rule-Based Scoring: Calculate a suitability score for every location using a transparent function that normalizes solar irradiance and penalizes steep slopes, assigning the highest scores to flat areas with greater solar resource.
Machine Learning-Based Scoring (optional): Extract feature vectors (slope and solar) for each grid cell. If labeled site suitability data are available, use these features to train an XGBoost classifier and predict suitability scores across the landscape.
Visualization
Transform the computed suitability scores into a color-coded grid.
Generate an interactive map using Folium, overlaying suitability scores as colored markers (or heatmap) atop a geographic basemap. Subsampling is applied for large rasters to optimize map performance and clarity.
Interpretation and Output
The final output is an HTML map, enabling users to visually explore the most and least suitable areas for solar site placement.
The modular pipeline allows for future integration of additional data layers (e.g., land use, proximity to transmission lines, exclusion zones) and alternative scoring models.
Throughout the process, open-source Python libraries such as Rasterio, NumPy, and Folium are used for data processing, analysis, and visualization. This methodology supports consistent, scalable, and reproducible site suitability assessments, suitable for both demonstration and practical screening applications.
To evaluate the effectiveness of the Solar Site Suitability Planner, a series of experiments were conducted using real-world geospatial data for the Karnataka region of India. The experiments assessed both the rule-based and machine learning (XGBoost) approaches for site suitability scoring and compared their outputs.
Study Area and Data Preparation
The project area was selected in Karnataka, India, representing a realistic solar development zone.
Digital Elevation Model (DEM) data with ~30m resolution was imported and preprocessed.
NASA POWER solar irradiance data was collected and, for demonstration, a synthetic spatial gradient was used to simulate regional variation.
Experiment 1: Rule-Based Suitability Scoring
The planner was run in rule-based mode, combining normalized solar irradiance and penalizing steep terrain.
Suitability maps were generated and visually inspected; results showed highest suitability scores in flat, high-solar areas, while hilly or low-irradiance regions scored poorly.
The output map confirmed expected patterns: major plains appeared green (good), mountains and valleys were red (poor).
Experiment 2: Machine Learning (XGBoost) Scoring
Randomly assigned pseudo-labels defined “suitable” sites as those with slope <15° and solar irradiance above the 30th percentile to balance classes for ML training.
An XGBoost classifier was trained on extracted slope and solar features.
Prediction results were normalized and plotted; the ML model successfully differentiated high and low suitability areas, aligning with the rule-based map but enabling incorporation of more complex patterns when available.
Label balance and feature variation were carefully monitored to prevent class collapse.
Experiment 3: Visualization and Subsampling
Various visualization subsampling steps (e.g., plotting every 20th grid cell) were tested to optimize browser performance without sacrificing spatial detail.
Folium maps were assessed in multiple browsers for interactivity and clarity, confirming usability with large DEM datasets.
Sensitivity Analysis
The impact of changing slope and solar thresholds was evaluated to ensure the model's robustness.
The system’s adaptability was tested with alternative DEMs and bounding boxes, confirming reproducibility in different regions.
The Solar Site Suitability Planner successfully automates the evaluation of terrain and solar irradiance data to generate geospatial suitability maps for solar energy installations.
Data Integration:
Digital Elevation Model (DEM) data combined with NASA POWER solar irradiance—simulated as a spatial gradient for demonstration—provides essential environmental features (slope and solar input).
Scoring Methods:
Rule-Based Scoring: A transparent formula penalizing steep slopes and rewarding high solar irradiance produces interpretable suitability scores.
Machine Learning (XGBoost): When trained with pseudo-labels, the model predicts suitability probabilities, capturing more complex patterns.
Visualization:
Interactive folium maps are generated, efficiently subsampling points for performance, showing suitability across the study area with intuitive red-orange-green color coding.
Performance and Usability:
The project handles large raster datasets effectively and outputs easy-to-share HTML maps, enabling planners and researchers to explore and identify optimal solar farm sites quickly.
Limitations:
ML-based scoring depends heavily on label quality and feature variation. Current labels are pseudo-generated and may require real site data for best results. Synthetic solar gradients demonstrate method but real solar raster data will improve accuracy.
The Solar Site Suitability Planner effectively combines terrain and solar irradiance data to automate the identification of optimal locations for solar energy development. By leveraging both rule-based and machine learning methods, the tool provides flexible and interpretable suitability assessments. Its interactive visualizations enable intuitive exploration of large geographic areas, supporting informed decision-making for renewable energy planning. With further integration of real-world labeled data and additional environmental layers, the planner can evolve into a robust, scalable solution for sustainable site selection.