latex: Match with Overleaf current work
@@ -1,25 +1,88 @@
|
||||
\chapter{PENDAHULUAN}
|
||||
|
||||
\section{Latar Belakang}
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc consequat lectus dolor, a commodo odio suscipit nec. Aliquam posuere elit eget tellus dapibus, auctor ornare mi porttitor. Donec auctor aliquet nisl, quis convallis ligula rutrum id. Duis tortor ipsum, scelerisque vestibulum viverra eu, maximus vel mi. Nullam volutpat nunc et varius tempor. Vivamus convallis mi eros, aliquam semper dui tincidunt a. Morbi nunc dui, accumsan ac arcu nec, condimentum efficitur mauris. Etiam sed mauris semper, volutpat justo eu, placerat mauris. Suspendisse at erat eu arcu gravida mattis et id nunc. Aliquam malesuada magna odio, ac dictum erat vestibulum a. Mauris vel nisi sit amet elit tempor bibendum sit amet a velit. Morbi dignissim facilisis placerat.\par
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.5\linewidth]{frontmatter/img/slice1.jpg}
|
||||
\caption{Enter Caption}
|
||||
\label{fig:enter-label}
|
||||
\end{figure}
|
||||
\indent Monitoring Kesehatan Struktur (\textit{Structural Health Monitoring} atau SHM) merupakan riset penting yang tersebar di berbagai disiplin ilmu, termasuk teknik dirgantara, teknik sipil, dan teknik mesin. Tujuan utama dari monitor kesehatan struktur adalah memastikan keamanan dan keandalan struktur dengan mendeteksi kerusakan sedini mungkin. Dengan mengombinasikan teknologi sensor yang canggih serta pengolahan data secara \textit{real-time}, sistem monitor kesehatan struktur menjadi kekuatan para insinyur untuk memonitor integritas struktur, strategi optimisasi \textit{maintenance}, dan memprediksi sisa umur struktur.
|
||||
|
||||
Pellentesque vel accumsan lorem, id vulputate metus. Nulla mollis orci ante, et euismod erat venenatis eget. Proin tempus lobortis feugiat. Fusce vitae sem quis lacus iaculis dignissim ut eget turpis. Vivamus ut nisl in enim porttitor fringilla vel et mauris. Mauris quis porttitor magna. Pellentesque molestie viverra arcu at tincidunt. Maecenas non elit arcu.\par
|
||||
\indent Sistem SHM yang tangguh mengikuti \textit{framework} secara hierarkis untuk mengidentifikasi dan menilai kerusakan struktural. Menurut \textcite{rytter1993}, lima tahapan SHM tersebut adalah:
|
||||
\begin{enumerate}
|
||||
\item (Tingkat 1) Keberadaan Kerusakan: Menentukan apakah ada kerusakan pada struktur. Pada tahap ini, pengukuran getaran cukup untuk memastikan adanya kerusakan.
|
||||
\item (Tingkat 2) Lokasi Kerusakan: Mengidentifikasi lokasi geometris kerusakan, baik kerusakan tunggal maupun ganda.
|
||||
\item (Tingkat 3) Tipe Kerusakan: Mencirikan sifat kerusakan, yang dapat meliputi retakan, perubahan pada kondisi tumpuan, atau perubahan dalam sambungan struktur.
|
||||
\item (Tingkat 4) Tingkat Keparahan: Mengukur secara kuantitatif seberapa parah kerusakan terjadi. Biasanya melalui eksperimen atau model terkalibrasi yang menggambarkan efek kerusakan, seperti penurunan kekakuan atau panjang retakan.
|
||||
\item (Tingkat 5): Memprediksi sisa umur pakai struktur dengan mengandalkan pemantauan secara \textit{real-time} dan komprehensif serta model dengan fidelitas tinggi yang menggambarkan perkembangan kerusakan seiring waktu.
|
||||
\end{enumerate}
|
||||
Semakin tinggi tingkat identifikasi kerusakan, semakin besar pula kebutuhan akan sensor yang presisi, algoritma yang kompleks, serta parameter model yang akurat. Jika pada Tingkat 1 hanya diperlukan data yang terbatas untuk mendeteksi adanya kerusakan, maka Tingkat 5 membutuhkan akuisisi data secara \textit{real-time} dan canggih serta model prediktif yang memiliki fidelitas tinggi.
|
||||
|
||||
Etiam feugiat enim sit amet tortor interdum lobortis. Curabitur elementum faucibus sapien. Morbi eget facilisis lorem. In sed suscipit metus. Etiam porttitor, libero sit amet sodales hendrerit, libero dolor hendrerit nulla, sed convallis risus leo posuere metus. Cras gravida ac elit viverra ultrices. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Maecenas dictum urna elit, nec eleifend nulla mattis sit amet. Pellentesque suscipit metus vitae leo suscipit, a vehicula quam pretium. Sed eu est ut risus convallis hendrerit a vulputate justo. Nulla sollicitudin quam ut risus euismod, quis consequat dui mattis. Mauris id eros varius, pellentesque quam quis, venenatis tellus. Nulla vitae condimentum nisl. Vestibulum suscipit scelerisque dui, non posuere purus finibus nec. Nulla ultrices felis quis vestibulum porta. Suspendisse potenti.\par
|
||||
\par Tantangan utama terletak pada pengembangan sistem \acrshort{shm} yang mampu mengakomodasi berbagai tahapan identifikasi kerusakan secara efektif, baik dalam kondisi operasional normal maupun dalam situasi ekstrem seperti gempa bumi.
|
||||
|
||||
Nam tempus tincidunt interdum. Pellentesque at ligula ac massa semper efficitur vitae non ante. Suspendisse potenti. Cras vitae interdum erat, nec facilisis urna. Nulla commodo porttitor tellus non posuere. Vestibulum tristique ut urna quis porttitor. Sed pellentesque lectus sit amet ultrices aliquam. Aliquam erat volutpat. Nam dictum eu erat a mollis. Donec eget nulla vel risus aliquet suscipit sed at libero.\par
|
||||
% Penelitian ini difokuskan pada lima tahapan identifikasi kerusakan, dengan tujuan untuk mengembangkan pendekatan yang lebih komprehensif terhadap diagnosis kerusakan dan peningkatan akurasi pelokasian (Tingkat 2), sekaligus mengoptimalkan strategi penempatan sensor dan perancangan algoritma guna mencapai efisiensi biaya yang lebih tinggi.
|
||||
\par Dalam konteks pengembangan sistem \acrshort{shm} yang efektif, perlu memperhatikan elemen struktural yang rentan terhadap kerusakan namun sering kali terabaikan dalam pemantauan konvensional. % <- Transition sentence
|
||||
Salah satu komponen struktural yang umum digunakan dalam penyambungan adalah sambungan baut (\textit{bolt joint}), yang dikenal karena kemudahan dalam perakitan dan penggunaannya. Namun, sambungan berulir ini rentan mengalami kelonggaran akibat beban kejut atau getaran terus-menerus \parencite{chen2017}. Kelonggaran baut yang tidak terdeteksi sejak dini dapat menyebabkan kerusakan serius pada struktur, sehingga identifikasi dini terhadap kerusakan sambungan baut menjadi krusial dalam bidang teknik sipil, mesin, dan kedirgantaraan. % <- Target
|
||||
Pemantauan kondisi sambungan ini tidak hanya relevan dalam konteks deteksi dini (Tingkat 1), tetapi juga sangat penting untuk diagnosis kerusakan dan penentuan lokasi secara akurat (Tingkat 2), seiring dengan meningkatnya kebutuhan akan sistem \acrshort{shm} yang responsif dan adaptif terhadap dinamika kerusakan struktural. % <- closing sentences
|
||||
|
||||
\indent Deteksi kelonggaran baut telah dilakukan melalui berbagai metode. Kelompok pertama adalah inspeksi \textit{in-situ}, seperti inspeksi visual atau penggunaan alat mekanis seperti kunci torsi dan palu. Meskipun sederhana dan murah, metode ini sulit untuk mendeteksi kerusakan pada tahap awal \parencite{j.h.park2015}. Metode palu lebih efektif dibanding visual untuk mendeteksi awal kelonggaran, tetapi akurasinya dapat terganggu oleh kebisingan lingkungan, serta memakan waktu bila diaplikasikan pada struktur dengan banyak sambungan seperti jembatan \parencite{j.h.park2015,wang2013}.
|
||||
|
||||
\indent Kelompok kedua menggunakan teknik berbasis penglihatan komputer seperti kamera dan pencitraan digital, termasuk deteksi rotasi kepala baut menggunakan CNN dan Faster R-CNN \parencite{zhang2020,zhao2019}. Meskipun teknik ini dapat mendeteksi kerusakan secara visual tanpa dipengaruhi oleh kebisingan akustik, tantangan tetap ada dalam hal penempatan kamera dan beban komputasi tinggi dari model \gls{deep-learning}, terutama dalam kondisi ruang yang sangat seperti mesin kendaraan atau turbin.
|
||||
|
||||
\indent Kelompok ketiga dan yang menjadi fokus penelitian ini adalah teknik berbasis sensor, terutama pendekatan berbasis getaran (\textit{vibration-based}). Metode ini tidak hanya efektif dalam mengatasi keterbatasan teknik sebelumnya, tetapi juga mampu mendeteksi kelonggaran baut pada tahap awal secara baik dan akurat \parencite{nichols2004,razi2013}. Dalam penelitian ini, deteksi dilakukan melalui data akselerasi struktur yang diambil dari titik-titik sambungan dalam \textit{sistem grid} yang mewakili koneksi baut secara arah kolom.
|
||||
|
||||
\indent Penelitian oleh \textcite{abdeljaber2017} merupakan tonggak penting dalam sistem pemantauan kesehatan struktur (SHM), dengan menerapkan 30 model \acrlong{1d-cnn} pada 30 sensor akselerometer dalam struktur grid QUGS. Pendekatan ini menunjukkan bahwa metode pembelajaran mendalam sangat efektif dalam mendeteksi dan melokalisasi kerusakan dengan presisi tinggi. Namun, metode tersebut memerlukan sumber daya komputasi yang besar karena pemrosesan paralel data mentah berdimensi tinggi dari seluruh sensor \parencite{yang2020, liu2022}.
|
||||
|
||||
\indent Menanggapi tantangan ini, studi lanjutan seperti \parencite{shahid2022, doi:10.1007/s13349-023-00715-3} memperkenalkan pendekatan VMD-HT-CNN yang menggabungkan teknik ekstraksi fitur berbasis Variational Mode Decomposition (VMD) dan Hilbert Transform (HT) sebelum klasifikasi CNN. Metode ini secara signifikan meningkatkan efisiensi pelatihan dan akurasi deteksi meskipun dengan jumlah sensor yang lebih sedikit.
|
||||
|
||||
\indent Berdasarkan celah ini, penelitian ini mengadopsi strategi pengurangan jumlah sensor menjadi dua per jalur kolom (atas dan bawah), merepresentasikan sambungan vertikal seperti susunan baut, untuk menyederhanakan model tanpa kehilangan akurasi deteksi kerusakan. Data diubah melalui transformasi STFT sebelum diklasifikasikan menggunakan berbagai model pembelajaran mesin klasik. Dengan evaluasi antar berbagai pengklasifikasi dan validasi silang antar kolom, studi ini berkontribusi pada pengembangan sistem SHM yang efisien, hemat biaya, dan mudah diimplementasikan.
|
||||
|
||||
|
||||
|
||||
Maecenas hendrerit pharetra bibendum. Donec ut tortor ac augue aliquam ullamcorper nec id eros. Quisque consectetur elementum ipsum vitae posuere. Sed ultricies ipsum nibh, vitae volutpat neque bibendum at. Morbi dictum metus eu bibendum malesuada. Nam scelerisque purus erat, id dictum nisl pretium vitae. Curabitur finibus commodo dui ac molestie. In sed sem ac dui dapibus ullamcorper. Aenean molestie nulla eu lorem maximus hendrerit. Vivamus viverra velit dolor, in vehicula eros facilisis at. Vivamus in rhoncus sem.
|
||||
\section{Rumusan Masalah}
|
||||
Untuk memandu arah penelitian ini, beberapa permasalahan utama yang akan dibahas adalah sebagai berikut:
|
||||
|
||||
\begin{enumerate}
|
||||
\item Apakah sinyal getaran yang hanya diperoleh dari sensor pada bagian atas dan bawah suatu jalur kolom masih mampu merepresentasikan fitur-fitur penting yang diperlukan untuk mengklasifikasikan kerusakan struktur secara akurat?
|
||||
|
||||
\item Apakah penggabungan data dari beberapa jalur kolom dapat meningkatkan kemampuan generalisasi model, meskipun jumlah sensor pada tiap jalur dibatasi?
|
||||
|
||||
\item Apakah algoritma pemelajaran mesin klasik yang sederhana masih mampu menghasilkan model dengan kinerja yang cukup layak dibandingkan dengan model \textit{supervised} yang lebih kompleks ketika diterapkan pada skenario dengan input data sensor yang terbatas?
|
||||
\end{enumerate}
|
||||
% \section{Identifikasi Masalah}
|
||||
% \begin{itemize}
|
||||
% \item Kebanyakan kerangka kerja pada monitoring kesehatan struktur membutuhkan deretan sensor yang banyak, hal ini dibutuhkan biaya yang tinggi dan kurang praktikal untuk banyak pengaplikasian.
|
||||
|
||||
% \item Banyak model dengan performa tinggi bergantung pada teknik pemelajaran mendalam, sehingga dibutuhkan sumberdaya komputasi yang tinggi dan memungkinkan kurangnya kemudahan dan keterjangkauan untuk aplikasikan.
|
||||
|
||||
% \item Kurangnya kesederhanaan, pendeketan umum yang menyeimbangkan penggunaan sensor dengan keandalan dalam lokalisasi kerusakan.
|
||||
% \end{itemize}
|
||||
\section{Lingkup Penelitian}
|
||||
Studi ini berfokus pada dataset yang tersedia secara publik didapat dari Queen's University Grandstand Simulator (QUGS), sebuah kerangka besi level laboratorium yang dipasang dengan tiga puluh titik sensor akselerometer dan \textit{white shaker noise}. Riset terdahulu telah dilakukan pengaplikasian pemelajaran mesin jaringan saraf terhadap seluruh sensor yang terpasang penuh pada setiap titik \textit{joint} untuk mencapai akurasi yang tinggi. Akan tetapi, pada praktiknya, instrumentasi penuh seperti ini terkadang kurang efektif dari segi biaya dan kurang layak dalam skala besar.
|
||||
|
||||
\section{Tujuan Penelitian}
|
||||
\begin{enumerate}
|
||||
\item Mengembangkan alur sistem (\textit{pipeline}) pemantauan kesehatan struktur (Structural Health Monitoring/SHM) yang disederhanakan dengan hanya menggunakan sepasang sensor di ujung-ujung struktur.
|
||||
|
||||
% \item Memperlakukan setiap grup kolom sensor sebagai elemen balok satu dimensi yang disederhanakan, dan mengevaluasi apakah karakteristik kerusakan tetap terjaga dalam energi getaran yang ditransmisikan antara kedua ujungnya.
|
||||
|
||||
% \item Menyusun setiap grup kolom sebagai satu dataset terpisah dan melakukan lima pengujian berbeda, di mana masing-masing grup kolom berperan sebagai data validasi secara bergantian.
|
||||
|
||||
% \item Menyertakan data dari setiap grup kolom ke dalam data pelatihan untuk membentuk satu model umum yang dapat digunakan untuk seluruh grup kolom.
|
||||
|
||||
\item Mengeksplorasi kemungkinan generalisasi satu model terhadap berbagai jalur kolom hanya dengan memanfaatkan data dari sensor pada kedua ujung kolom.
|
||||
\end{enumerate}
|
||||
|
||||
% Dalam merespon hal tersebut, penelitian ini memperkenalkan pendekatan baru yang menekankan efisiensi pada penanganan data dan interpretasi fisik. Data pada sensor-sensor yang terpasang pada struktur grid ini dikelompokkan menjadi beberapa grup kolom, dan hanya menyisakan sensor awal dan sensor paling akhir dari setiap grup sensor sebagai input pengklasifikasian. Terdapat hipotesis bahwa energi getaran bergerak di sepanjang jalur kolom terjaga secara cukup baik antara ujung-ujung sensor untuk memungkinkan algoritma pemelajaran mesin, seperti Support-Vector Machine (SVM), Bagged Trees, Random Forest, Decision Tree, KNN, LDA, dan XGBoost, medeteksi dan mengklasifikasi secara akurat letak kerusakan.
|
||||
|
||||
\section{Manfaat Penelitian}
|
||||
% \subsubsection{Dolor}
|
||||
|
||||
Penelitian ini memberikan beberapa manfaat yang diharapkan dapat berkontribusi dalam pengembangan sistem deteksi kerusakan struktur, antara lain:
|
||||
|
||||
\begin{enumerate}
|
||||
\item Penelitian ini tidak berfokus pada pengembangan arsitektur model baru maupun penerapan \textit{transfer learning}, melainkan pada perancangan alur (\textit{pipeline}) klasifikasi yang sederhana dan mudah dipahami sebagai solusi tahap awal untuk pengembangan sistem monitor kesehatan struktur.
|
||||
|
||||
\item Dengan pemilihan titik sensor strategis yang terbatas (hanya di ujung atas dan bawah jalur kolom \textit{grid}) serta prapemrosesan berbasis transformasi STFT, penelitian ini menunjukkan bahwa efisiensi dapat dicapai tanpa mengorbankan akurasi secara signifikan.
|
||||
|
||||
\item Studi ini membuktikan bahwa algoritma pembelajaran mesin klasik seperti \gls{svm}, KNN, dan LDA masih mampu memberikan performa model yang kompetitif dalam klasifikasi kerusakan, apabila dipadukan dengan ekstraksi fitur yang tepat.
|
||||
|
||||
\item Hasil penelitian ini diharapkan dapat menjadi alternatif sistem SHM yang lebih terjangkau dan praktis untuk diterapkan pada struktur nyata, khususnya dalam kondisi keterbatasan sumber daya.
|
||||
|
||||
\item Rangkaian eksperimen dan pendekatan sistematis dalam penelitian ini dapat dijadikan tolok ukur atau \textit{baseline} untuk studi komparatif selanjutnya dan pengembangan model arsitektur yang lebih kompleks.
|
||||
\end{enumerate}
|
||||
63
latex/chapters/02_literature_review.tex
Normal file
@@ -0,0 +1,63 @@
|
||||
\chapter{TINJAUAN PUSTAKA DAN LANDASAN TEORI}
|
||||
\section{Tinjauan Pustaka}
|
||||
|
||||
\begin{figure}[!ht]
|
||||
\centering
|
||||
\includegraphics[width=0.5\linewidth]{frontmatter/img/slice1.jpg}
|
||||
\caption{Enter Caption}
|
||||
\label{fig:enter-label}
|
||||
\end{figure}
|
||||
|
||||
\section{Dasar Teori}
|
||||
|
||||
This chapter discusses the theoretical basis used in this research, including signal processing techniques and machine learning algorithms. These foundations form the core of the method used for vibration-based damage localization in a beam structure.
|
||||
|
||||
\subsection{Short-Time Fourier Transform (STFT)}
|
||||
|
||||
The Short-Time Fourier Transform (STFT) is a fundamental technique used to analyze non-stationary signals, such as those generated by structures under dynamic load or white noise excitation. While the traditional Fourier Transform provides frequency-domain information, it lacks time resolution. STFT overcomes this limitation by applying the Fourier Transform over short overlapping segments of the signal, thereby producing a time-frequency representation.
|
||||
|
||||
Mathematically, the STFT of a signal $x(t)$ is given by:
|
||||
\begin{equation}
|
||||
X(t, \omega) = \int_{-\infty}^{\infty} x(\tau) w(\tau - t) e^{-j \omega \tau} d\tau
|
||||
\end{equation}
|
||||
where $w(\tau - t)$ is a window function centered at time $t$, and $\omega$ is the angular frequency.
|
||||
|
||||
In this study, the STFT is employed to extract the time-frequency features of the vibration signals collected from the structure. These features are then used as inputs to machine learning classifiers. This process captures localized frequency content over time, which is crucial in identifying structural changes due to damage.
|
||||
|
||||
\subsection{Classification Algorithms}
|
||||
|
||||
This research evaluates five classical machine learning algorithms to perform the classification task of damage localization. Each algorithm has different strengths and limitations, and their performance is benchmarked to identify the most suitable one for the given dataset.
|
||||
|
||||
\subsubsection{Support Vector Machine (SVM)}
|
||||
|
||||
SVM is a supervised learning algorithm that seeks an optimal hyperplane that separates data into classes with maximum margin. SVM performs well in high-dimensional spaces and is robust to overfitting, especially in cases with a clear margin of separation.
|
||||
|
||||
SVM is appropriate for vibration signal classification due to its capability to handle nonlinear decision boundaries when equipped with kernel functions.
|
||||
|
||||
\subsubsection{K-Nearest Neighbors (KNN)}
|
||||
|
||||
KNN is a non-parametric, instance-based learning algorithm. It classifies a new data point based on the majority vote of its $k$ nearest neighbors in the feature space. Although simple, KNN can be effective when the data is well-distributed and class boundaries are smooth.
|
||||
|
||||
Its performance is sensitive to the choice of $k$ and distance metric. For high-dimensional data like STFT features, dimensionality reduction or careful scaling may be required.
|
||||
|
||||
\subsubsection{Decision Tree (DT)}
|
||||
|
||||
Decision Tree is a rule-based classifier that splits data into classes using feature thresholds. It builds a tree where each internal node represents a feature, each branch a decision rule, and each leaf a class label. DTs are easy to interpret and can capture non-linear relationships.
|
||||
|
||||
However, they are prone to overfitting, especially with noisy or small datasets.
|
||||
|
||||
\subsubsection{Random Forest (RF)}
|
||||
|
||||
Random Forest is an ensemble learning method based on constructing multiple decision trees during training and outputting the mode of the classes for classification. It improves the generalization capability of individual trees and reduces overfitting.
|
||||
|
||||
RF is suitable for damage detection as it provides robustness to noise and variance, making it ideal for real-world sensor data.
|
||||
|
||||
\subsubsection{Naïve Bayes (NB)}
|
||||
|
||||
Naïve Bayes is a probabilistic classifier based on Bayes' theorem, assuming feature independence. Despite its simplicity, it often performs well in high-dimensional problems and with small datasets.
|
||||
|
||||
NB is particularly effective when class-conditional independence holds approximately, which may occur when STFT features are well-separated in distribution.
|
||||
|
||||
\bigskip
|
||||
These theoretical foundations provide the methodological framework for implementing and evaluating the proposed damage localization system in this research. The combination of time-frequency analysis using STFT and classical machine learning classifiers enables an efficient and interpretable approach to structural health monitoring.
|
||||
% \subsubsection{Dolor}
|
||||
@@ -0,0 +1,67 @@
|
||||
\chapter{METODE PENELITIAN}
|
||||
|
||||
\section{Bahan dan Materi}
|
||||
|
||||
Penelitian ini menggunakan data sekunder dari \textcite{abdeljaber2017}, yang tersedia secara publik dan diperoleh melalui eksperimen menggunakan \textit{Queen's University Grandstand Simulator}. Adapun rincian data yang digunakan adalah sebagai berikut:
|
||||
|
||||
\begin{itemize}
|
||||
\item Dataset terdiri atas rekaman respons getaran dari struktur rangka baja berukuran $6 \times 5$ yang dilengkapi dengan 30 akselerometer.
|
||||
\item Setiap skenario dalam dataset mencakup satu kasus struktur tanpa kerusakan (healthy) dan 30 kasus kerusakan tunggal pada masing-masing sambungan (\textit{single-joint damage}).
|
||||
\item Sinyal getaran direkam dengan frekuensi pengambilan sampel sebesar 1024 Hz selama durasi 256 detik untuk tiap skenario.
|
||||
\item Kerusakan struktur disimulasikan dengan cara mengendurkan baut pada sambungan-sambungan tertentu.
|
||||
\end{itemize}
|
||||
|
||||
Struktur dataset yang digunakan ditampilkan pada Gambar~\ref{fig:original-data}.
|
||||
|
||||
\begin{figure}[!ht]
|
||||
\centering
|
||||
\includegraphics[width=0.5\textwidth]{chapters/img/original_data.png}
|
||||
\caption{Overview of the original data used from Abdeljaber et al. (2017)}
|
||||
\label{fig:original-data}
|
||||
\end{figure}
|
||||
\clearpage
|
||||
|
||||
\section{Alat}
|
||||
|
||||
Berikut merupakan perangkat lunak yang digunakan selama proses penelitian ini:
|
||||
|
||||
\begin{itemize}
|
||||
\item \textbf{Python 3.11} – digunakan untuk proses pra-pemrosesan data, pemodelan, dan evaluasi.
|
||||
\item \textbf{NumPy, SciPy, dan Pandas} – digunakan untuk manipulasi sinyal dan perhitungan numerik.
|
||||
\item \textbf{Matplotlib} – digunakan untuk menghasilkan spektrum STFT (Short-Time Fourier Transform).
|
||||
\item \textbf{PyTorch 2.3} – digunakan untuk membangun dan melatih model dengan algoritma pemelajaran mesin klasik.
|
||||
\item \textbf{Google Colab / Komputer Lokal} – digunakan untuk pelatihan model dan percobaan eksperimental.
|
||||
\end{itemize}
|
||||
|
||||
|
||||
% \section{Place and Time}
|
||||
% This research was conducted between [Month] and [Month] 2025 at the [Your Lab or Campus] using publicly available data. No new data collection was performed. All computational processes, including preprocessing, model training, and evaluation, were executed using Google Colab and a local machine.
|
||||
|
||||
\section{Langkah-Langkah Penelitian}
|
||||
Alur keseluruhan penelitian ini dilakukan melalui tahapan-tahapan sebagai berikut:
|
||||
|
||||
\begin{enumerate}
|
||||
\item \textbf{Akuisisi Data:} Mengunduh dataset dari Abdeljaber et al. yang berisi sinyal percepatan untuk 31 kondisi struktur (1 kondisi sehat dan 30 kondisi kerusakan tunggal).
|
||||
|
||||
\item \textbf{Seleksi Sensor:} Memilih sinyal dari sejumlah sensor terbatas pada garis vertikal tertentu (misalnya, node 1 dan 26) untuk mensimulasikan konfigurasi sensor yang direduksi.
|
||||
|
||||
\item \textbf{Pra-pemrosesan:} Melakukan normalisasi dan mengubah sinyal domain waktu mentah menjadi domain waktu-frekuensi menggunakan metode Short-Time Fourier Transform (STFT).
|
||||
|
||||
\item \textbf{Ekstraksi Fitur:} Menghasilkan \textit{data frame} frekuensi dalam domain waktu.
|
||||
|
||||
\item \textbf{Pengembangan Model:} Membangun dan melatih model klasifikasi berbasis algoritma pemelajaran mesin klasik (SVM, LDA, Bagged Trees, Random Forest, XGBoost) untuk mengklasifikasikan lokasi kerusakan struktur.
|
||||
|
||||
\item \textbf{Evaluasi:} Mengevaluasi kinerja model menggunakan metrik akurasi, presisi, dan confusion matrix pada berbagai skenario pengujian.
|
||||
\end{enumerate}
|
||||
|
||||
\section{Data Analysis}
|
||||
|
||||
The processed data were analyzed using classification metrics. The trained model's output was evaluated based on the ability to correctly identify damaged vs. undamaged scenarios. The main metrics used were:
|
||||
|
||||
\begin{itemize}
|
||||
\item \textbf{Accuracy:} Overall correct predictions across all classes.
|
||||
\item \textbf{Confusion Matrix:} To visualize classification performance across damage cases.
|
||||
\item \textbf{Precision and Recall:} For measuring the model's performance in detecting damage cases specifically.
|
||||
\end{itemize}
|
||||
|
||||
Additionally, experiments were repeated for varying numbers of sensors to simulate reduced-sensor configurations, analyzing how model performance changed with less input data.
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
\chapter{Hasil Penelitian dan Pembahasan}
|
||||
\begin{table}[ht]
|
||||
\centering
|
||||
\begin{tabular}{c|c}
|
||||
& \\
|
||||
&
|
||||
\end{tabular}
|
||||
\caption{Caption}
|
||||
\label{tab:my_label}
|
||||
\end{table}
|
||||
\section{}
|
||||
\section{}
|
||||
\section{}
|
||||
@@ -1,8 +1,8 @@
|
||||
\chapter{LITERATURE REVIEW AND THEORETICAL FOUNDATION}
|
||||
\chapter{LITERATURE REVIEW AND THEORITICAL FOUNDATION}
|
||||
\section{Literature Review}
|
||||
\input{chapters/id/02_literature_review/literature_review/abdeljaber2017}
|
||||
|
||||
\section{Theoretical Foundation}
|
||||
\section{Theoritical Foundation}
|
||||
\input{chapters/id/02_literature_review/theoritical_foundation/stft}
|
||||
\input{chapters/id/02_literature_review/theoritical_foundation/machine_learning}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Metode monitor kesehatan struktur (SHM) tradisional sering kali mengandalkan fitur yang dibuat secara manual dan pengklasifikasi (\textit{classifier}) yang diatur secara manual, yang menimbulkan tantangan dalam hal generalisasi, keandalan, dan efisiensi komputasi. Seperti yang disorot oleh \textcite{abdeljaber2017}, pendekatan-pendekatan ini umumnya memerlukan proses \textit{trial-and-error} dalam pemilihan fitur dan pengklasifikasi yang tidak hanya mengurangi ketangguhan metode tersebut di berbagai jenis struktur, tetapi juga menghambat penerapannya dalam pengaplikasian secara \textit{real-time} karena beban komputasi pada fase ekstraksi fitur.
|
||||
|
||||
\textcite{abdeljaber2017} memperkenalkan pendekatan deteksi kerusakan struktur berbasis CNN yang divalidasi melalui \textit{large-scale grandstand simulator} di Qatar University. Struktur tersebut dirancang untuk mereplikasi stadion modern, dilengkapi dengan 30 akselerometer, dan dikenai kerusakan terkontrol melalui pelonggaran baut sambungan antara balok dan gelagar. Data percepatan yang dikumpulkan di bawah eksitasi \textit{band-limited white noise} dan disampel pada 1024 Hz, kemudian dibagi menjadi bingkai berukuran 128 sampel untuk melatih 1-D CNN yang dilokalkan—satu untuk setiap sambungan (\textit{joint})—menciptakan sistem deteksi terdesentralisasi. Dalam dua fase (skenario) eksperimen, yang melibatkan pemantauan sebagian dan seluruh struktur, metode ini menunjukkan akurasi tinggi dalam pelokalisasian kerusakan, dengan kesalahan klasifikasi saat pelatihan hanya sebesar 0.54\%. Meskipun performa tetap andal bahkan dalam skenario kerusakan ganda, beberapa salah klasifikasi terjadi pada kasus kerusakan yang simetris atau berdekatan. Secara keseluruhan, metode yang diusulkan ini menawarkan solusi yang sangat efisien dan akurat untuk aplikasi SHM secara\textit{real-time}.
|
||||
\textcite{abdeljaber2017} memperkenalkan pendekatan deteksi kerusakan struktur berbasis CNN yang divalidasi melalui \textit{large-scale grandstand simulator} di Qatar University. Struktur tersebut dirancang untuk mereplikasi stadion modern, dilengkapi dengan 30 akselerometer, dan dikenai kerusakan terkontrol melalui pelonggaran baut sambungan antara balok dan gelagar. Data percepatan yang dikumpulkan di bawah eksitasi \textit{band-limited white noise} dan disampel pada 1024 Hz, kemudian dibagi menjadi bingkai berukuran 128 sampel untuk melatih 1-D CNN yang dilokalkan—satu untuk setiap sambungan (\textit{joint})—menciptakan sistem deteksi terdesentralisasi. Dalam dua fase (skenario) eksperimen, yang melibatkan pemantauan sebagian dan seluruh struktur, metode ini menunjukkan akurasi tinggi dalam pelokalisasian kerusakan, dengan kesalahan klasifikasi saat pelatihan hanya sebesar 0.54\%. Meskipun performa tetap andal bahkan dalam skenario kerusakan ganda, beberapa salah klasifikasi terjadi pada kasus kerusakan yang simetris atau berdekatan. Secara keseluruhan, metode yang diusulkan ini menawarkan solusi yang sangat efisien dan akurat untuk aplikasi SHM secara \textit{real-time}.
|
||||
|
||||
\indent Metode berbasis getaran merupakan salah satu teknik paling umum dalam sistem pemantauan kesehatan struktur (SHM) karena kemampuannya dalam mendeteksi perubahan kondisi struktur secara non-destruktif. Pendekatan ini bergantung pada prinsip bahwa kerusakan pada suatu struktur, seperti kelonggaran sambungan atau penurunan kekakuan elemen, akan mengubah karakteristik dinamikanya, seperti frekuensi alami, bentuk mode, dan respons getaran terhadap eksitasi tertentu.
|
||||
|
||||
|
||||
@@ -1,42 +1,77 @@
|
||||
\section{Analisis Data}
|
||||
|
||||
% Dalam studi ini, setiap sensor menghasilkan data akselerasi yang direkam sebagai sebuah vektor numerik kontinu. Secara matematis,
|
||||
% setiap data sensor didefinisikan sebagai
|
||||
% \begin{equation}
|
||||
% n \in \mathbb{R}^{262144},
|
||||
% \end{equation}
|
||||
% di mana \(n\) adalah vektor berisi 262144 sampel pengukuran akselerasi seperti yang dijelaskan pada persamaan~\ref{eq:sample}.
|
||||
|
||||
% Selanjutnya, data akselerasi untuk 30 sensor (atau \textit{node}) disimpan dalam sebuah berkas \texttt{.TXT}. Maka, setiap berkas tersebut dapat direpresentasikan sebagai matriks
|
||||
% \begin{equation}
|
||||
% N \in \mathbb{R}^{262144 \times 30},
|
||||
% \end{equation}
|
||||
% di mana setiap kolom dari \(N\) merupakan data akselerasi untuk satu sensor dari 30 sensor yang ada.
|
||||
|
||||
\subsection{Grid, Kode \textit{Joint}, dan Nama File}
|
||||
|
||||
% \begin{figure}[ht]
|
||||
% \centering
|
||||
% \input{chapters/img/specimen}
|
||||
% \caption{Caption}
|
||||
% \label{fig:enter-label}
|
||||
% \end{figure}
|
||||
% Dimulai dengan memberi indeks pada setiap node pengukuran dari struktur grid berukuran 6$\times$5 menggunakan sebuah bilangan bulat tunggal \(k\) dari nol hingga dua puluh sembilan. Setiap sinyal domain waktu mentah disimpan dalam file yang dinamai berdasarkan indeks ini:
|
||||
% \begin{equation*}
|
||||
% F_{k} = \texttt{``zzzAD}k\texttt{.TXT,''}
|
||||
% \quad k = 0,1,\dots,29.
|
||||
% \end{equation*}
|
||||
Masing-masing *sensor node* diberi nama menurut indeks \(n\) (dengan \(n = 0,1,\dots,29\)).
|
||||
Berkas data mentah tiap node disimpan dalam berkas teks berformat
|
||||
\texttt{zzzAD<n>.TXT}; penamaannya dapat dirumuskan sebagai
|
||||
|
||||
Direpresentasikan \(F_{k}\) di sini sebagai nama file untuk \textit{node} ke-\(k\). Kemudian dilampirkan nama file tersebut sebagai superskrip pada simbol \textit{node}:
|
||||
\[
|
||||
Z_{n} \;=\; \texttt{``zzzAD}n\texttt{.TXT''},
|
||||
\qquad n = 1,\dots,30.
|
||||
\]
|
||||
|
||||
Pada pembahasan selanjutnya, simbol \(Z_{n}\) dipakai sebagai penunjuk
|
||||
berkas data untuk node ke-\(n\).
|
||||
Untuk merujuk satu kanal (kolom) tertentu di dalam matriks
|
||||
\(\mathbf{D}^{(n)}\), digunakan notasi
|
||||
|
||||
\[
|
||||
\gls{not:damage_file}_{s}^{(\gls{not:joint_index})} \in \mathbb{R}^{262144},
|
||||
\]
|
||||
|
||||
dengan ketentuan:
|
||||
|
||||
* superskrip \((\gls{not:joint_index})\) menandakan indeks kasus kerusakan
|
||||
(1–30),
|
||||
* subskrip \(s\) menandakan indeks kanal sensor yang dipilih
|
||||
(\(s = 1,\dots,30\)).
|
||||
|
||||
Dengan demikian,
|
||||
\(\gls{not:damage_file}_{s}^{(n)}\) merepresentasikan sebuah vektor
|
||||
\(262144 \times 1\) yang berisi deret waktu hasil pengukuran kanal
|
||||
\(s\) pada skenario kerusakan ke-\(n\).
|
||||
|
||||
\subsection{Pemetaan Sensor ke Dalam Folder (Damage-case)}
|
||||
|
||||
Semua tiga puluh \textit{node} dikelompokkan ke dalam enam folder yang merepresentasikan enam skenario kerusakan, masing-masing dilabeli \(d_{i}\) dengan \(i=0,\dots,5\). Setiap folder mengandung tepat lima \textit{node} berurutan, sehingga didefinisikan:
|
||||
\begin{equation*}
|
||||
n_{k}^{F_{k}}
|
||||
\quad\text{adalah \textit{node} dengan indeks }k\text{ yang datanya diambil dari \textit{file} }F_{k}.
|
||||
\end{equation*}
|
||||
|
||||
\subsection{Pemetaan Sensor}
|
||||
|
||||
Semua tiga puluh node dikelompokkan ke dalam enam folder ``damage-case``, dilabeli \(d_{i}\) untuk \(i=0,\dots,5\). Setiap folder berisi tepat lima node berurutan, yang merepresentasikan satu skenario kerusakan:
|
||||
\begin{equation*}
|
||||
d_{i} = \bigl\{\,n_{5i}^{F_{5i}},\;n_{5i+1}^{F_{5i+1}},\;\dots,\;n_{5i+4}^{F_{5i+4}}\bigr\},
|
||||
\gls{not:damage_file_set_case}_{i} = \bigl\{
|
||||
\,\mathbf{D}_{5i}^{(5i)},
|
||||
\;\mathbf{D}_{5i+1}^{(5i+1)},
|
||||
\;\mathbf{D}_{5i+2}^{(5i+2)},
|
||||
\;\mathbf{D}_{5i+3}^{(5i+3)},
|
||||
\;\mathbf{D}_{5i+4}^{(5i+4)}
|
||||
\bigr\},
|
||||
\quad i = 0,\dots,5.
|
||||
\end{equation*}
|
||||
Atau secara konkrit,
|
||||
\begin{equation}
|
||||
\mathcal{D}_i = \bigl\{
|
||||
\end{equation}
|
||||
Sebagai contoh secara konkrit,
|
||||
\begin{align*}
|
||||
d_0&=\{n_{0}^{F_0},\;n_{1}^{F_1},\;n_{2}^{F_2},\;n_{3}^{F_3},\;n_{4}^{F_4}\}\\
|
||||
d_1&=\{n_{5}^{F_5},\;n_{6}^{F_6},\;n_{7}^{F_7},\;n_{8}^{F_8},\;n_{9}^{F_9}\}\\
|
||||
\;\;\vdots\\
|
||||
d_5&=\{n_{25}^{F_{25}},\;n_{26}^{F_{26}},\;n_{27}^{F_{27}},\;n_{28}^{F_{28}},\;n_{29}^{F_{29}}\}\\
|
||||
d_0 &= \{n_{0}^{F_0},\;n_{1}^{F_1},\;n_{2}^{F_2},\;n_{3}^{F_3},\;n_{4}^{F_4}\},\\[1ex]
|
||||
d_1 &= \{n_{5}^{F_5},\;n_{6}^{F_6},\;n_{7}^{F_7},\;n_{8}^{F_8},\;n_{9}^{F_9}\},\\[1ex]
|
||||
&\;\;\vdots\\[1ex]
|
||||
d_5 &= \{n_{25}^{F_{25}},\;n_{26}^{F_{26}},\;n_{27}^{F_{27}},\;n_{28}^{F_{28}},\;n_{29}^{F_{29}}\}.
|
||||
\end{align*}
|
||||
|
||||
\subsection{Seleksi Sensor \textit{Node} Ujung-Ujung (Domain Waktu)}
|
||||
|
||||
Dari setiap folder kerusakan, kita hanya menyimpan \textit{node} pertama dan terakhir untuk mensimulasikan tata letak sensor terbatas. Subset domain waktu ini dilambangkan dengan \(d_{i}^{\mathrm{TD}}\):
|
||||
Untuk mensimulasikan tata letak sensor terbatas, dari setiap folder kerusakan hanya diambil \textit{node} pertama dan terakhir. Subset domain waktu ini dilambangkan sebagai
|
||||
\begin{equation*}
|
||||
d_{i}^{\mathrm{TD}}
|
||||
= \bigl\{\,n_{5i}^{F_{5i}},\;n_{5i+4}^{F_{5i+4}}\bigr\},
|
||||
@@ -45,29 +80,28 @@ d_{i}^{\mathrm{TD}}
|
||||
|
||||
\subsection{Ekstraksi Fitur}
|
||||
|
||||
Kemudian, didefinisikan operator STFT \(\mathcal{T}\) untuk memetakan sinyal domain waktu mentah dengan panjang \(L=262144\) sampel menjadi sebuah spektrogram berukuran \(513\times513\). Kemudian digunakan \textit{Hanning window} dengan panjang \(N_{w}=1024\) dan hop size \(N_{h}=512\). Bentuk kompleks dari STFT adalah:
|
||||
Operator STFT \(\mathcal{T}\) didefinisikan untuk memetakan sinyal domain waktu mentah (vektor dengan panjang \(L=262144\)) menjadi spektrogram berukuran \(513\times513\). Langkah-langkahnya adalah:
|
||||
\begin{equation*}
|
||||
\begin{aligned}
|
||||
\text{(1) Window function:}\quad
|
||||
w[n] &= \frac12\Bigl(1 - \cos\frac{2\pi n}{N_w - 1}\Bigr),
|
||||
\text{(1) Fungsi jendela:}\quad
|
||||
w[n] &= \frac{1}{2}\Bigl(1 - \cos\frac{2\pi n}{N_w - 1}\Bigr),
|
||||
\quad n=0,\ldots,N_w-1; \\[1ex]
|
||||
\text{(2) STFT:}\quad
|
||||
S_k(p,t)
|
||||
&= \sum_{n=0}^{N_w-1}
|
||||
x_k\bigl[t\,N_h + n\bigr]
|
||||
\;w[n]\;
|
||||
e^{-j2\pi p n / N_w},\\
|
||||
e^{-j2\pi p n / N_w},\\[1ex]
|
||||
&\quad
|
||||
p = 0,\ldots,512,\quad t = 0,\ldots,512.
|
||||
\end{aligned}
|
||||
\end{equation*}
|
||||
|
||||
Pengambilan magnitudo menghasilkan matriks spektrogram pada bilah frekuensi $p$ dan \textit{frame} waktu $t$ untuk \textit{node} $k$
|
||||
Pengambilan magnitudo menghasilkan matriks spektrogram untuk \textit{node} \(k\) sebagai
|
||||
\begin{equation*}
|
||||
\widetilde n_{k}^{F_{k}}(p,t) \;=\; \bigl|S_{k}(p,t)\bigr|
|
||||
\;\in\;\mathbb{R}^{513\times513}.
|
||||
\end{equation*}
|
||||
Dengan demikian operatornya adalah
|
||||
Dengan demikian operator STFT dapat dituliskan sebagai:
|
||||
\begin{equation*}
|
||||
\mathcal{T}:\; n_{k}^{F_{k}}\in\mathbb{R}^{262144}
|
||||
\;\longmapsto\;
|
||||
@@ -76,7 +110,7 @@ Dengan demikian operatornya adalah
|
||||
|
||||
\subsection{Subset Domain Frekuensi}
|
||||
|
||||
Kemudian, \(\mathcal{T}\) diterapkan pada \textit{node} ujung-ujung yang telah dipilih, dihasilkan:
|
||||
Operator \(\mathcal{T}\) diterapkan pada \textit{node} ujung-ujung yang telah dipilih, sehingga diperoleh:
|
||||
\begin{equation*}
|
||||
d_{i}^{\mathrm{FD}}
|
||||
= \bigl\{\,
|
||||
@@ -89,7 +123,7 @@ d_{i}^{\mathrm{FD}}
|
||||
|
||||
\subsection{Pengelompokan Berdasarkan Letak Ujung Sensor}
|
||||
|
||||
Sensor-sensor ujung bagian bawah dilabeli sebagai Sensor A dan Sensor-sensor ujung bagian atas dilabeli sebagai Sensor B. Semua enam kasus kerusakan dikumpulkan menjadi satu menghasilkan dua himpunan spektrogram, masing-masing berisi enam (kasus kerusakan):
|
||||
Sensor-sensor ujung bagian bawah dilabeli sebagai Sensor A dan sensor-sensor ujung bagian atas dilabeli sebagai Sensor B. Semua data dari keenam kasus kerusakan digabungkan menjadi dua himpunan:
|
||||
\begin{equation*}
|
||||
\text{Sensor A}
|
||||
=
|
||||
@@ -112,15 +146,15 @@ Sensor-sensor ujung bagian bawah dilabeli sebagai Sensor A dan Sensor-sensor uju
|
||||
|
||||
\subsection{Perakitan Baris dan Pelabelan}
|
||||
|
||||
Setiap spektrogram berukuran \(513\times513\) diartikan sebagai 513 vektor fitur berdimensi 513. Kemudian diberikan indeks pengulangan dalam satu kasus kerusakan dengan \(r\in\{0,\dots,4\}\) dan potongan waktu dengan \(t\in\{0,\dots,512\}\). Misalkan
|
||||
Setiap spektrogram berukuran \(513\times513\) diartikan sebagai 513 vektor fitur berdimensi 513. Untuk setiap kasus kerusakan \(i\) dan sensor \(s\), vektor fitur ini direplikasi sebanyak 5 kali (indeks pengulangan \(r\in\{0,\dots,4\}\)) dan diambil masing-masing baris/kolom ke-\(t\) dengan
|
||||
\begin{equation*}
|
||||
\mathbf{x}_{i,s,r,t}\in\mathbb{R}^{513}
|
||||
\mathbf{x}_{i,s,r,t}\in\mathbb{R}^{513}.
|
||||
\end{equation*}
|
||||
menunjukkan baris (atau kolom) ke-\(t\) dari spektrogram ke-\(r\) untuk kasus kerusakan \(i\) dan sensor \(s\). Label skalar untuk kasus kerusakan tersebut adalah
|
||||
Label skalar untuk kasus kerusakan dinyatakan sebagai
|
||||
\begin{equation*}
|
||||
y_{i} = i,\quad i=0,\dots,5.
|
||||
\end{equation*}
|
||||
Kemudian didefinisikan fungsi \textit{slicing} sebagai
|
||||
Selanjutnya, fungsi \textit{slicing} didefinisikan sebagai
|
||||
\begin{equation*}
|
||||
\Lambda(i,s,r,t)
|
||||
\;=\;
|
||||
@@ -133,7 +167,7 @@ Kemudian didefinisikan fungsi \textit{slicing} sebagai
|
||||
|
||||
\subsection{Bentuk Akhir Data untuk Pelatihan}
|
||||
|
||||
Seluruh baris dari enam kasus kerusakan, lima pengulangan, dan 513 potongan waktu dikumpulkan menghasilkan \textit{dataset} untuk satu sisi sensor:
|
||||
Seluruh baris dari enam kasus kerusakan, lima pengulangan, dan 513 potongan waktu digabungkan menjadi dataset untuk satu sisi sensor:
|
||||
\begin{equation*}
|
||||
\mathcal{D}^{(s)}
|
||||
=
|
||||
@@ -145,7 +179,7 @@ r=0,\dots,4,\;
|
||||
t=0,\dots,512
|
||||
\bigr\}.
|
||||
\end{equation*}
|
||||
Karena terdapat total \(6\times5\times513=15{,}390\) baris dan setiap baris memiliki \(513\) fitur ditambah satu kolom label, maka bentuk akhir dari data untuk satu sisi sensor yang siap digunakan untuk pelatihan adalah
|
||||
Karena terdapat total \(6\times5\times513 = 15\,390\) baris, dan setiap baris memiliki \(513\) fitur ditambah satu kolom label, maka bentuk akhir dari data untuk satu sisi sensor adalah:
|
||||
\begin{equation*}
|
||||
|\mathcal{D}^{(s)}| = 15\,390 \times 514.
|
||||
\end{equation*}
|
||||
@@ -23,4 +23,4 @@ Struktur dataset yang digunakan ditampilkan pada Gambar~\ref{fig:specimen-photo}
|
||||
\includegraphics[width=0.75\linewidth]{chapters/img/specimen.png}
|
||||
\caption{Bentuk benda uji}
|
||||
\label{fig:specimen-photo}
|
||||
\end{figure}
|
||||
\end{figure}
|
||||
@@ -1,9 +1,10 @@
|
||||
Dataset yang digunakan dalam penelitian ini bersumber dari basis data getaran yang dipublikasi oleh \textcite{abdeljaber2017}.
|
||||
Dataset yang digunakan dalam penelitian ini bersumber dari basis data getaran yang dipublikasi oleh \textcite{abdeljaber2017}. Dataset tersebut dapat diakses dan diunduh melalui tautan DOI berikut:
|
||||
\url{https://doi.org/10.17632/52rmx5bjcr.1}
|
||||
|
||||
Dataset terdiri dari dua folder:
|
||||
\begin{itemize}
|
||||
\item \texttt{Dataset A/} – biasanya digunakan untuk pelatihan (training)
|
||||
\item \texttt{Dataset B/} – biasanya digunakan untuk pengujian (testing)
|
||||
\item \texttt{Dataset A/} – digunakan untuk pelatihan (training)
|
||||
\item \texttt{Dataset B/} – digunakan untuk pengujian (testing)
|
||||
\end{itemize}
|
||||
|
||||
Setiap folder berisi 31 berkas dalam format \texttt{.TXT}, yang dinamai sesuai dengan kondisi kerusakan struktur. Pola penamaan berkas adalah sebagai berikut:
|
||||
@@ -20,14 +21,34 @@ Sepuluh baris pertama dari setiap berkas berisi metadata yang menjelaskan konfig
|
||||
\item \textbf{Kolom 2–31:} Magnitudo percepatan dari \textit{joint} 1 hingga 30
|
||||
\end{itemize}
|
||||
|
||||
Setiap sinyal di-\textit{sampling} pada frekuensi $f_s = 1024$ Hz dan direkam selama durasi total $T = 256$ detik, sehingga menghasilkan:
|
||||
Setiap sinyal di-\textit{sampling} pada frekuensi $f_s = 1024$ Hz dan direkam selama $t = 256$ detik, sehingga menghasilkan:
|
||||
\begin{align}
|
||||
\gls{not:signal} &= \gls{not:sampling_freq} \cdot \gls{not:time_length} \nonumber \\
|
||||
&= 1024 \cdot 256 \nonumber \\
|
||||
&= 262144 \quad \text{sampel per kanal} \label{eq:sample}
|
||||
\end{align}
|
||||
|
||||
\begin{equation*}
|
||||
N = f_s \cdot T = 1024 \times 256 = 262{,}144 \quad \text{sampel per kanal}
|
||||
\end{equation*}
|
||||
Dengan demikian, setiap berkas \verb|zzzAD|$n$\verb|.TXT| dapat direpresentasikan sebagai matriks:
|
||||
\begin{equation}
|
||||
\mathbf{D}^{(n)} \in \mathbb{R}^{262144 \times 30}, \quad n = 1, \dots, 30
|
||||
\end{equation}
|
||||
di mana $n$ mengacu pada indeks kasus (1–30 = kerusakan pada \textit{joint} ke-$n$), dan berkas tanpa kerusakan pada seluruh \textit{joint}, \verb|zzzAU|\verb|.TXT|, direpresentasikan dengan matriks:
|
||||
\begin{equation}
|
||||
\mathbf{U} \in \mathbb{R}^{262144 \times 30}
|
||||
\end{equation}
|
||||
|
||||
Dengan demikian, setiap berkas dapat direpresentasikan sebagai matriks:
|
||||
\begin{equation*}
|
||||
\mathbf{X}^{(c)} \in \mathbb{R}^{262{,}144 \times 31}, \quad c = 0, 1, \dots, 30
|
||||
\end{equation*}
|
||||
di mana $c$ mengacu pada indeks kasus (0 = sehat, 1–30 = kerusakan pada \textit{joint}n ke-$c$), dan setiap baris merepresentasikan pengukuran berdasarkan waktu di seluruh 30 kanal sensor.
|
||||
|
||||
Kemudian \textit{dataset} A dapat direpresentasikan sebagai matriks:
|
||||
\begin{equation}
|
||||
\gls{not:dataset_A}
|
||||
=
|
||||
\Bigl\{
|
||||
\mathbf{U} \in \mathbb{R}^{262144 \times 30}
|
||||
\Bigr\}
|
||||
\;\cup\;
|
||||
\Bigl\{
|
||||
\mathbf{D}^{(n)} \in \mathbb{R}^{262144 \times 30}
|
||||
\;\bigm|\;
|
||||
n = 1, \dots, 30
|
||||
\Bigr\}.
|
||||
\end{equation}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
We now introduce a simple “data‐augmentation” logic across repeated tests as:
|
||||
\[
|
||||
\mathbf{c}_{j}^{(i)}
|
||||
\;=\;
|
||||
\Bigl[S_{0+j}^{(i)},\,S_{5+j}^{(i)},\,S_{10+j}^{(i)},\,S_{15+j}^{(i)},\,S_{20+j}^{(i)},\,S_{25+j}^{(i)}\Bigr]^{T}
|
||||
\;\in\mathbb{R}^{6}\!,
|
||||
\]
|
||||
where \(S_{k}^{(i)}\) is the \(k\)th sensor’s time‐frequency feature vector (after STFT+log‐scaling) from the \(i\)-th replicate of scenario \(j\).
|
||||
|
||||
For each fixed scenario \(j\), collect the five replicates into the set
|
||||
\[
|
||||
\mathcal{D}^{(j)}
|
||||
=\bigl\{\mathbf{c}_{j}^{(1)},\,\mathbf{c}_{j}^{(2)},\,\mathbf{c}_{j}^{(3)},\,\mathbf{c}_{j}^{(4)},\,\mathbf{c}_{j}^{(5)}\bigr\},
|
||||
\]
|
||||
so \(|\mathcal{D}^{(j)}|=5\). Across all six scenarios, the total augmented dataset is
|
||||
\[
|
||||
\mathcal{D}
|
||||
=\bigcup_{j=0}^{5}\mathcal{D}^{(j)}
|
||||
=\bigl\{\mathbf{c}_{j}^{(i)}: j=0,\dots,5,\;i=1,\dots,5\bigr\},
|
||||
\]
|
||||
with \(\lvert\mathcal{D}\rvert = 6 \times 5 = 30\) samples.
|
||||
|
||||
Each \(\mathbf{c}_{j}^{(i)}\) hence represents one ``column‐based’’ damage sample,
|
||||
and the collection \(\mathcal{D}\) serves as the input set for subsequent classification.
|
||||
@@ -0,0 +1,9 @@
|
||||
Let $\mathcal{G}$ represent the $6 \times 5$ structural grid, where each node is denoted with row and column as $N_{r,c}$ with $r \in \{1,2,...,6\}$ and $c \in \{1,2,...,5\}$.\\
|
||||
|
||||
\begin{figure}[ht]
|
||||
\centering
|
||||
% \includegraphics[width=\textwidth]{}
|
||||
\input{chapters/img/specimen}
|
||||
\caption{Diagram joint and sensors placement}
|
||||
\label{fig:specimen}
|
||||
\end{figure}
|
||||
@@ -0,0 +1,66 @@
|
||||
\subsection{Signal Normalization}
|
||||
Each raw acceleration time series
|
||||
\(\mathbf{a}_{k}(n)\), \(n = 0,1,\dots,N-1\) with \(N=262144\) samples (collected at \(f_s=1024\) Hz over 256 s) :contentReference[oaicite:0]{index=0} is first standardized to zero mean and unit variance:
|
||||
\[
|
||||
\tilde a_{k}(n)
|
||||
=\frac{a_{k}(n)-\mu_{k}}{\sigma_{k}},
|
||||
\quad
|
||||
\mu_{k}=\frac{1}{N}\sum_{n=0}^{N-1}a_{k}(n),
|
||||
\quad
|
||||
\sigma_{k}=\sqrt{\frac{1}{N}\sum_{n=0}^{N-1}\bigl(a_{k}(n)-\mu_{k}\bigr)^{2}}.
|
||||
\]
|
||||
|
||||
\subsection{Framing and Windowing}
|
||||
The normalized signal \(\tilde a_{k}(n)\) is chopped into overlapping frames of length \(W\) samples with hop size \(H\). The \(p\)-th frame is
|
||||
\[
|
||||
x_{k,p}[m]
|
||||
=\tilde a_{k}(pH + m)\,w[m],
|
||||
\quad
|
||||
m=0,1,\dots,W-1,
|
||||
\]
|
||||
where \(w[m]\) is a chosen window function (e.g., Hamming).
|
||||
|
||||
\subsection{Short-Time Fourier Transform (STFT)}
|
||||
For each frame \(x_{k,p}[m]\), compute its STFT:
|
||||
\[
|
||||
S_{k}(f,p)
|
||||
=\sum_{m=0}^{W-1}x_{k,p}[m]\;e^{-j2\pi\,f\,m/W},
|
||||
\]
|
||||
where \(f=0,1,\dots,W-1\) indexes frequency bins :contentReference[oaicite:1]{index=1}.
|
||||
|
||||
\subsection{Spectrogram and Log-Magnitude}
|
||||
Form the magnitude spectrogram
|
||||
\[
|
||||
M_{k}(f,p)
|
||||
=\bigl|S_{k}(f,p)\bigr|,
|
||||
\]
|
||||
and apply log scaling for numerical stability:
|
||||
\[
|
||||
L_{k}(f,p)
|
||||
=\log\bigl(1 + M_{k}(f,p)^{2}\bigr).
|
||||
\]
|
||||
This yields a time–frequency representation
|
||||
\(\mathbf{L}_{k}\in\mathbb{R}^{F\times P}\), with \(F\) frequency bins and \(P\) frames.
|
||||
|
||||
\subsection{Feature Matrix Assembly}
|
||||
For each column \(j\in\{1,\dots,5\}\), select only the two endpoint sensors:
|
||||
\[
|
||||
\mathbf{L}_{\text{bot},j} = \mathbf{L}_{(j)},\quad
|
||||
\mathbf{L}_{\text{top},j} = \mathbf{L}_{(25+j)},
|
||||
\]
|
||||
and stack them:
|
||||
\[
|
||||
\mathbf{F}_{j}
|
||||
=
|
||||
\begin{bmatrix}
|
||||
\mathbf{L}_{\text{bot},j} \\[6pt]
|
||||
\mathbf{L}_{\text{top},j}
|
||||
\end{bmatrix}
|
||||
\;\in\mathbb{R}^{2F\times P}.
|
||||
\]
|
||||
Finally, flatten into a feature vector:
|
||||
\[
|
||||
\mathbf{f}_{j}
|
||||
=\operatorname{vec}\bigl(\mathbf{F}_{j}\bigr)
|
||||
\;\in\mathbb{R}^{2FP}.
|
||||
\]
|
||||
@@ -0,0 +1,20 @@
|
||||
For the vertical column approach with limited sensors
|
||||
% we
|
||||
are defined as column vector $\mathbf{c}_j$:
|
||||
|
||||
\begin{equation}
|
||||
\mathbf{c}_j^{(i,d)} = [S_{0+j}^{(i+d)}, S_{5+j}^{(i+d)}, S_{10+j}^{(i+d)}, S_{15+j}^{(i+d)}, S_{20+j}^{(i+d)}, S_{25+j}^{(i+d)}]^T
|
||||
\end{equation}
|
||||
\begin{equation}
|
||||
\mathbf{D}^{(i)} = [\mathbf{c}_0^{(i,i+1)}, \mathbf{c}_1^{(i,i+6)}, \mathbf{c}_2^{(i,i+11)}, \mathbf{c}_3^{(i,i+16)}, \mathbf{c}_4^{(i,i+21)}]^T
|
||||
\end{equation}
|
||||
|
||||
where $j \in \{0, 1,2,3,4\}$ represents the column index.
|
||||
|
||||
For the limited sensor case focusing on endpoints only, we use:
|
||||
|
||||
\begin{equation}
|
||||
\mathbf{c}^{\text{limited}}_j = [S_{0+(j-1)}, S_{25+(j-1)}]^T
|
||||
\end{equation}
|
||||
|
||||
representing only the lower sensor (sensor A) and upper sensor (sensor B) of column $j$.
|
||||
@@ -0,0 +1,23 @@
|
||||
Untuk setiap sensor $S_k$ dengan $k \in \{0,1,2,...,29\}$ diletakkan pada \textit{node} $N_{k}$, deret deret akselerasi waktu didefinisikan sebagai:
|
||||
|
||||
\begin{equation}
|
||||
\mathbf{a}_{k}(t) = [a_{k}(t_1), a_{k}(t_2), \ldots, a_{k}(t_{262144})]
|
||||
\end{equation}
|
||||
|
||||
% where $N = 262144$ samples at a sampling frequency of 1024 Hz over 256 seconds.
|
||||
% $k \in \{i,(i+1),...,(i+(r\times j))\}$
|
||||
|
||||
Satu dataset utuh untuk setiap skenario ($A|B$) dapat direpresentasikan sebagai matrix $\mathbf{X}_d \in \mathbb{R}^{30 \times 262144}$:
|
||||
|
||||
\begin{equation}
|
||||
\mathbf{{X}_d}^\intercal =
|
||||
\begin{bmatrix}
|
||||
\mathbf{a}_{0}(t) \\
|
||||
\mathbf{a}_{1}(t) \\
|
||||
\mathbf{a}_{2}(t) \\
|
||||
\vdots \\
|
||||
\mathbf{a}_{29}(t)
|
||||
\end{bmatrix}
|
||||
\end{equation}
|
||||
|
||||
di mana $d \in \{0, 1, 2, \ldots, 30\}$ merepresentasikan skenario kerusakan, dengan $d=0$ mengindikasikan tanpa kasus kerusakan.
|
||||
@@ -1,8 +1,8 @@
|
||||
Data getaran struktur yang digunakan dalam penelitian ini diperoleh dari penelitian oleh \textcite{abdeljaber2017}, yang dilakukan menggunakan simulator struktur baja Grandstand di Queen’s University. Dalam eksperimen tersebut, struktur baja dipasang dengan akselerometer pada setiap sambungan-sambungan (\textit{joints}). Rangkaian perangkat keras yang digunakan untuk pengambilan data meliputi:
|
||||
|
||||
\begin{itemize}
|
||||
\item \textbf{27 akselerometer PCB model 393B04} (Gambar~\ref{fig:pcb393}) untuk merekam respons percepatan pada sebagian besar titik pengukuran.
|
||||
\item \textbf{3 akselerometer B\&K model 8344} (Gambar~\ref{fig:bk8344}) digunakan pada beberapa lokasi untuk validasi tambahan.
|
||||
\item \textbf{27 akselerometer PCB model 393B04} (Gambar~\ref{fig:accel393}) untuk merekam respons percepatan pada sebagian besar titik pengukuran.
|
||||
\item \textbf{3 akselerometer B\&K model 8344} (Gambar~\ref{fig:accel393}) digunakan pada beberapa lokasi untuk validasi tambahan.
|
||||
\item \textbf{Mounting magnetic PCB model 080A121} digunakan untuk menempelkan akselerometer secara aman pada struktur baja.
|
||||
\item \textbf{Modal shaker (Model 2100E11)} digunakan untuk memberikan eksitasi getaran terkontrol pada struktur (Gambar~\ref{fig:shaker}). Sinyal input untuk shaker dihasilkan melalui \textbf{penguat daya SmartAmp 2100E21-400}.
|
||||
\item \textbf{Dua perangkat akuisisi data 16-kanal (DT9857E-16)} digunakan secara simultan: satu untuk menghasilkan sinyal input ke shaker dan satu lagi untuk merekam data keluaran dari akselerometer (Gambar~\ref{fig:datalogger}).
|
||||
|
||||
BIN
latex/chapters/img/accel393.png
Normal file
|
After Width: | Height: | Size: 325 KiB |
BIN
latex/chapters/img/datalogger.png
Normal file
|
After Width: | Height: | Size: 1.1 MiB |
BIN
latex/chapters/img/original_data.png
Normal file
|
After Width: | Height: | Size: 793 KiB |
5
latex/chapters/img/original_data.svg
Normal file
|
After Width: | Height: | Size: 2.1 MiB |
BIN
latex/chapters/img/shaker.png
Normal file
|
After Width: | Height: | Size: 148 KiB |
|
Before Width: | Height: | Size: 976 KiB After Width: | Height: | Size: 678 KiB |
@@ -1,13 +1,15 @@
|
||||
$$
|
||||
\begin{matrix}
|
||||
N_{6,5} & \text{---} & N_{6,4} & \text{---} & N_{6,3} & \text{---} & N_{6,2} & \text{---} & N_{6,1} \\
|
||||
S_{29} & \text{---} & S_{28} & \text{---} & S_{27} & \text{---} & S_{26} & \text{---} & S_{25} \\
|
||||
\vert & & \vert & & \vert & & \vert & & \vert \\
|
||||
N_{5,5} & \text{---} & N_{5,4} & \text{---} & N_{5,3} & \text{---} & N_{5,2} & \text{---} & N_{5,1} \\
|
||||
S_{24} & \text{---} & S_{23} & \text{---} & S_{22} & \text{---} & S_{21} & \text{---} & S_{20} \\
|
||||
\vert & & \vert & & \vert & & \vert & & \vert \\
|
||||
N_{4,5} & \text{---} & N_{4,4} & \text{---} & N_{4,3} & \text{---} & N_{4,2} & \text{---} & N_{4,1} \\
|
||||
S_{19} & \text{---} & S_{18} & \text{---} & S_{17} & \text{---} & S_{16} & \text{---} & S_{15} \\
|
||||
\vert & & \vert & & \vert & & \vert & & \vert \\
|
||||
N_{3,5} & \text{---} & N_{3,4} & \text{---} & N_{3,3} & \text{---} & N_{3,2} & \text{---} & N_{3,1} \\
|
||||
S_{14} & \text{---} & S_{13} & \text{---} & S_{12} & \text{---} & S_{11} & \text{---} & S_{10} \\
|
||||
\vert & & \vert & & \vert & & \vert & & \vert \\
|
||||
N_{2,5} & \text{---} & N_{2,4} & \text{---} & N_{2,3} & \text{---} & N_{2,2} & \text{---} & N_{2,1} \\
|
||||
S_{9} & \text{---} & S_{8} & \text{---} & S_{7} & \text{---} & S_{6} & \text{---} & S_{5} \\
|
||||
\vert & & \vert & & \vert & & \vert & & \vert \\
|
||||
N_{1,5} & \text{---} & N_{1,4} & \text{---} & N_{1,3} & \text{---} & N_{1,2} & \text{---} & N_{1,1} \\
|
||||
\end{matrix}
|
||||
S_{4} & \text{---} & S_{3} & \text{---} & S_{2} & \text{---} & S_{1} & \text{---} & S_{0} \\
|
||||
\end{matrix}
|
||||
$$
|
||||
|
||||