Tugas 2 Final Project To Optimaze Hydrogen Storage Design

From ccitonlinewiki
Revision as of 08:35, 6 June 2023 by Vinbar110 (talk | contribs)
Jump to: navigation, search

Berikut merupakan code optimasi tangki hidrogen dengan kapasitas 1 liter, dan biaya produksi maksimal Rp. 500.000

import numpy as np from scipy.optimize import minimize

def objektif(x):

   # x[0] mewakili jari-jari, x[1] mewakili tinggi
   jari_jari = x[0]
   tinggi = x[1]
   # Hitung luas permukaan struktur silinder
   luas_permukaan = 2 * np.pi * jari_jari * (jari_jari + tinggi)
   return luas_permukaan

def konstrain(x):

   # x[0] mewakili jari-jari, x[1] mewakili tinggi
   jari_jari = x[0]
   tinggi = x[1]
   # Hitung volume internal struktur silinder
   volume = np.pi * jari_jari**2 * tinggi
   # Kembalikan selisih antara volume dan nilai yang diinginkan (1000 cm^3)
   return volume - 1000
  1. Menebak untuk jari-jari dan tinggi

x0 = [1.0, 10.0]

  1. Memberikan batasan untuk variabel (jari-jari dan tinggi)

batas = [(0, None), (0, None)]

  1. Menentukan constrain dalam bentuk kamus

konstrain_dict = {'type': 'eq', 'fun': konstrain}

  1. Menggunakan fungsi minimize untuk mengoptimalkan fungsi objektif dengan memenuhi konstrain

hasil = minimize(objektif, x0, method='SLSQP', bounds=batas, constraints=konstrain_dict)

  1. Print hasil yang telah dioptimalkan

print("Hasil Optimisasi:") print("Jari-jari: {:.2f} cm".format(hasil.x[0])) print("Tinggi: {:.2f} cm".format(hasil.x[1])) print("Luas Permukaan: {:.2f} cm^2".format(hasil.fun))