Assalamualaikum Warahmatullahi Wabarakatuh,
Sebelumnya perkenalkan nama saya Muhammad Hanifasyam Afifendra (2306265410). Pada kesempatan kali ini saya akan menjelaskan sedikit terkait Penerapan PINNs untuk Konduksi Panas melalui Pendekatan DAI5

Dalam era perkembangan teknologi komputasi yang pesat, Physics-Informed Neural Networks (PINNs) muncul sebagai salah satu terobosan penting dalam bidang scientific computing. Metode ini secara cerdas menggabungkan kekuatan neural networks dengan prinsip-prinsip fisika fundamental untuk menyelesaikan berbagai persamaan diferensial yang sering muncul dalam pemodelan fenomena alam. Esai ini akan membahas secara komprehensif penerapan PINNs pada masalah konduksi panas satu dimensi (1D) melalui lensa framework DAI5 yang holistik.
Pengenalan PINNs dan Konteks Konduksi Panas 1D
PINNs merupakan paradigma baru dalam pemecahan masalah fisika komputasi yang memanfaatkan:
- Kemampuan approximasi universal dari neural networks
- Automatic differentiation untuk mengekstrak informasi diferensial
- Integrasi langsung hukum fisika ke dalam proses pembelajaran
Untuk kasus konduksi panas 1D, kita mempertimbangkan persamaan panas:
โu/โt = ฮฑ(โยฒu/โxยฒ)
dimana u(x,t) menyatakan distribusi suhu, ฮฑ adalah difusivitas termal, x adalah posisi spasial, dan t adalah waktu.
Pendekatan dengan kerangka DAI5 :
1. Deep Awareness of I (Kesadaran Diri yang Mendalam)
Sebagai langkah pertama, kerangka DAI5 mengingatkan kita bahwa segala upaya pemecahan masalah, termasuk dalam komputasi numerik, harus dimulai dengan kesadaran akan keberadaan Sang Pencipta. Persamaan konduksi panas 1D:
โ
adalah cerminan keteraturan alam yang ditetapkan Allah SWT. Dengan menyadari hal ini, PINN tidak hanya dipandang sebagai alat teknis, tetapi juga sebagai sarana untuk memahami kebijaksanaan Ilahi yang terwujud dalam hukum fisika.
Contoh Implementasi:
Dalam PINN, neural network dirancang untuk mempelajari solusi persamaan panas. Kesadaran bahwa solusi ini harus selaras dengan hukum alam (seperti Hukum Fourier) menjadi landasan etis dan intelektual.
2. Intention (Niat)
Niat dalam pengembangan PINN harus jelas: menciptakan solusi yang akurat dan bermanfaat bagi umat manusia, bukan sekadar mencapai keunggulan teknis. Dalam konteks konduksi panas 1D, tujuan utama PINN adalah:
- Mengatasi kelemahan metode tradisional (seperti FEM atau FDM) yang memerlukanย meshย dan biaya komputasi tinggi.
- Menghasilkan solusi yangย physics-compliantย tanpa data pelatihan ekstensif.
Contoh:
Dengan memanfaatkan automatic differentiation, PINN mengintegrasikan persamaan panas langsung ke dalam loss function, sehingga solusi yang dihasilkan otomatis mematuhi hukum fisika.
3. Initial Thinking (Pemikiran Awal tentang Masalah)
Sebelum membangun model, penting memahami akar masalah:
- Persamaan Panas 1D:ย Menggambarkan distribusi suhuย u(x,t)u(x,t)ย pada material homogen.
- Kondisi Batas:ย Misalnya, suhu tetapย T0T0โย diย x=0x=0ย danย T1T1โย diย x=1x=1.
- Solusi Analitik:ย Untuk kasus sederhana, solusi berupa profil linearย T(x)=T0+(T1โT0)xT(x)=T0โ+(T1โโT0โ)x.
Peran PINN:
Neural network diaproksimasi sebagai T(x)T(x) dengan parameter yang dilatih untuk meminimalkan loss function, yang terdiri dari:
- Residual PDE:ย Mengukur kepatuhan terhadap persamaan panas.
- Kondisi Batas:ย Memastikan solusi memenuhi syarat di tepi domain.
4. Idealization (Idealisasi)
Untuk menyederhanakan masalah, beberapa asumsi dibuat:
- Neural networkย dengan lapisan tersembunyi (hidden layers) dan aktivasiย Tanhย cukup untuk merepresentasikan solusi.
- Material bersifat homogen (difusivitas termalย ฮฑฮฑย konstan).
- Kondisi batas sederhana (suhu tetap atau fluks panas nol).
# Import Libraries
import torch
import torch.nn as nn
import numpy as np
import matplotlib.pyplot as plt
# Define PINN Class
class PINN(nn.Module):
def __init__(self):
super(PINN, self).__init__()
self.net = nn.Sequential(
nn.Linear(1, 25), # Mengubah jumlah neuron pada layer pertama
nn.Tanh(),
nn.Linear(25, 25), # Mengubah jumlah neuron pada hidden layer
nn.Tanh(),
nn.Linear(25, 1)
)
def forward(self, x):
return self.net(x)
# Compute Loss Function
def compute_loss(model, x, T0, T1):
x = x.requires_grad_(True)
T = model(x)
# Compute derivatives
dT_dx = torch.autograd.grad(T, x, grad_outputs=torch.ones_like(T), create_graph=True)[0]
d2T_dx2 = torch.autograd.grad(dT_dx, x, grad_outputs=torch.ones_like(dT_dx), create_graph=True)[0]
# Physics loss
physics_loss = torch.mean(d2T_dx2**2)
# Boundary conditions
T_left = model(torch.tensor([[0.0]]))
T_right = model(torch.tensor([[1.0]]))
bc_loss = (T_left - T0)**2 + (T_right - T1)**2
return physics_loss + bc_loss
# Train PINN Function
def train_pinn(T0, T1, epochs=1000):
model = PINN()
optimizer = torch.optim.Adam(model.parameters(), lr=0.002) # Mengubah learning rate
x = torch.linspace(0, 1, 120).reshape(-1, 1) # Menambah jumlah titik diskritisasi
for epoch in range(epochs):
optimizer.zero_grad()
loss = compute_loss(model, x, T0, T1)
loss.backward()
optimizer.step()
if epoch % 100 == 0:
print(f"Epoch {epoch}, Loss: {loss.item():.6f}")
return model
# Plot Result Function
def plot_results(model, T0, T1):
x = torch.linspace(0, 1, 120).reshape(-1, 1)
with torch.no_grad():
T_pred = model(x).numpy()
x = x.numpy()
T_analytical = T0 + (T1 - T0) * x
plt.figure(figsize=(8, 6))
plt.plot(x, T_pred, label="PINN Solution", linewidth=2)
plt.plot(x, T_analytical, "--", label="Analytical Solution", linewidth=2)
plt.xlabel("x")
plt.ylabel("Temperature")
plt.title("1D Steady-State Heat Conduction")
plt.legend()
plt.grid(True)
# Simpan grafik sebagai file jika tidak ada display
plt.savefig("heat_conduction_result_updated.png")
print("Grafik telah disimpan sebagai 'heat_conduction_result_updated.png'")
# Main Execution
if __name__ == "__main__":
# Parameter default
T0 = 100.0 # Suhu di x=0
T1 = 0.0 # Suhu di x=1
epochs = 1000
# Latih model dan tampilkan hasil
model = train_pinn(T0, T1, epochs)
plot_results(model, T0, T1)
5. Instruction Set (Set Instruksi)
Langkah implementasi PINN untuk konduksi panas 1D:
- Definisi Model:ย Bangunย neural networkย dengan inputย xxย dan outputย T(x)T(x).
- Hitung Loss:Loss=MSE(Tpred,Ttrue)+ฮปโ MSE(Residualย PDE)Loss=MSE(Tpredโ,Ttrueโ)+ฮปโ MSE(Residualย PDE)di mana residual PDE memastikanย d2Tdx2โ0dx2d2Tโโ0.
- Pelatihan:ย Gunakanย optimizerย Adam untuk memperbarui parameter model.
- Validasi:ย Bandingkan prediksi PINN dengan solusi analitik.
Hasil:
- Dengan peningkatanย epochย (misal: 1000 โ 10.000), akurasi PINN mendekati solusi analitik (Gambar 1).


- PINN menghasilkan solusiย smoothย dan konsisten dengan fisika, tanpa memerlukanย meshย seperti pada FEM/FDM.
Dengan integrasi sains, teknologi, dan spiritualitas, PINN dalam kerangka DAI5 menjadi contoh bagaimana pendekatan komputasi modern dapat dilakukan secara bertanggung jawab dan bermakna.
Wassalamuโalaikum Warahmatullahi Wabarakatuh.