Skip to main content

User-friendly Graphical User Interface (GUI) to efficiently predict a trilinear approximation of pushover curves for low-rise reinforced concrete (RC) frame buildings, using a Machine Learning (ML) based approach.

Project description

Pushover-ML

Pushover-ML is a didactic and user-friendly Graphical User Interface (GUI) to efficiently predict a trilinear approximation of pushover curves for low-rise reinforced concrete (RC) frame buildings, using a Machine Learning (ML) based approach. This tool is expected to be used by practitioners (e.g. students, research centers and engineering offices) to quickly carry out a Pushover analysis without requiring the construction and implementation of detailed nonlinear models. By simplifying the prediction of seismic performance, Pushover-ML bridges the gap between advanced ML techniques and practical engineering applications.

Trilinear approximation

The GUI provides insights into the expected seismic capacity by predicting three key points of the Pushover curve: 1) Yielding point (Yield), 2) Maximum capacity point (Max), and 3) Collapse point (Coll). Those points are represented in the Pushover curve through the roof drift ratio (δ) and the base shear (Vs) of the frame building. The scheme for the trilinear prediction is presented below: image

Input data

Pushover-ML receives as input data 11 input variables related to the frame distribution, the section geometry and reinforcement ratios of structural elements (i.e. beams and columns), the material properties, and the applied vertical forces for an acceptable range presented in Figure 2 of [1]: image

ML models

The GUI allows the user to make predictions using different ML techniques such as:

  • Artificial Neural Networks.
  • Gradient Boosting Machines.
  • Random Forest.
  • Lasso Regression.

And also provides per default an option called "BEST", which fits the predictions with a combination of the abovementioned ML techniques, selecting the best-performing models (i.e., δ and Vs) for each key point of the pushover curve (i.e., Yield, Max, and Coll), leveraging the strengths of each technique.

Repository distribution

This repository provides an update of the GUI presented in previous research [2], including a more user-friendly interface, new ML techniques, different prediction modes (i.e., individual and multiple), and defining the yielding with greater robustness. The content of this repository is presented below:

  • Database: Includes the processed data (used for training process of ML techniques) and the r``aw data (recorded after each Pushover analysis generated in OpenseesPy). The raw data is presented in Pickle format (visualization is available using Python). For further information about the meaning of each variable in the raw dataset, please do not hesitate to reach out at carlosantr@unisabana.edu.co
  • GUI: Includes the executable files (.exe) of Pushover-ML for the Spanish and English version. Also presents the Backend structure of the GUI, which can be executed on python environment by the "GUI_main.py" file (the user must accomplish with the compilation requirements, operating environments and dependencies presented in [1]).
  • Examples: Includes prediction examples for the individual and multiple mode of prediction. The individual folder provides to the user the output excel file format of the examples presented in Figure 5 of [1]. The multiple folder provides to the user an example of the input and output Excel file ("Example_MultipleMode.xlsx" and "Results_MultipleMode.xlsx", respectively) for multiple mode prediction, and another input Excel files in the folder "Errors" to exemplify typical errors indentified by the GUI.

Note

This project is licensed under the Apache License 2.0. See the LICENSE file for details.

This work is also part of MSc. thesis in Applied Analytics. For further information about Pushover-ML, licensing, data availability and collaboration in research related to ML applications, do not hesitate to contact at carlosantr@unisabana.edu.co.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pushover_ml-1.4.4.tar.gz (16.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pushover_ml-1.4.4-py3-none-any.whl (16.9 MB view details)

Uploaded Python 3

File details

Details for the file pushover_ml-1.4.4.tar.gz.

File metadata

  • Download URL: pushover_ml-1.4.4.tar.gz
  • Upload date:
  • Size: 16.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.7

File hashes

Hashes for pushover_ml-1.4.4.tar.gz
Algorithm Hash digest
SHA256 4e854e2b8dec5460309910cf8eed02c3e958ad1b5bdb650f4fbf94025a67dc4e
MD5 8ffa86a7ea4158a9f3026c0f66338ff0
BLAKE2b-256 fdef2b69b87462337a239870805610ac6bafa4b82aacf04b336a85a9f87b7e44

See more details on using hashes here.

File details

Details for the file pushover_ml-1.4.4-py3-none-any.whl.

File metadata

  • Download URL: pushover_ml-1.4.4-py3-none-any.whl
  • Upload date:
  • Size: 16.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.7

File hashes

Hashes for pushover_ml-1.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9059367d56833bc5f51f36309316d2200ae05cfe700e92e0d878bcbc0f5f5205
MD5 9f2ea9321d649dccee85d2d34d96d5c4
BLAKE2b-256 926519a52a8ed211cb458e3c0d30cc116f5bd2a0648f471520b745c633800bca

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page