HELLO!

Teknik Informatika UIN MAULANA MALIK IBRAHIM MALANG|| Lalu Egiq Fahalik Anggara_220605110066 | linier algebra

by Prof. Dr. Suhartono, M.Kom

Berikut adalah beberapa contoh permasalahan yang dapat diselesaikan dengan menggunakan matriks dan R Studio:

  1. Permasalahan Sistem Persamaan Linier Dalam matematika, sistem persamaan linier dapat diselesaikan dengan menggunakan matriks. R Studio dapat digunakan untuk menghitung solusi dari sistem persamaan linier tersebut dengan menggunakan operasi matriks seperti invers matriks atau eliminasi Gauss.
# Membuat matriks koefisien 
A <- matrix(c(0, 2, 3, 4, 5, 6, 7, 8, 9), nrow = 3)

# Membuat vektor hasil b
b <- c(10, 20, 30)

# Menghitung solusi dari sistem persamaan linier Ax = b
x <- solve(A, b)

# Cetak solusi
x
## [1]   0  20 -10
  1. Permasalahan Optimasi Optimasi dapat diselesaikan dengan menggunakan matriks sebagai model matematis. R Studio dapat digunakan untuk menghitung solusi dari permasalahan optimasi tersebut dengan menggunakan metode-metode optimasi yang sudah disediakan, seperti metode gradient descent atau metode simplex.
library(lpSolve)
A <- matrix(c(2, 5, 1, 1, 3, 2, 1, 2, 3), nrow = 3)
A
##      [,1] [,2] [,3]
## [1,]    2    1    1
## [2,]    5    3    2
## [3,]    1    2    3
# Membuat vektor hasil b
b <- c(5, 6, 10)
b
## [1]  5  6 10
# Membuat vektor fungsi objektif c
c <- c(2, 3, 4)
c
## [1] 2 3 4
# Menghitung solusi dari permasalahan optimasi: min(c'x), Ax = b, x >= 0
d <- lp("min", c, A, "=", b, all.bin=TRUE)

# Cetak solusi
d
## Error: no feasible solution found

Berikut adalah contoh penerapan matriks dalam R Studio untuk menyelesaikan permasalahan keuangan:

Kita memiliki data keuangan perusahaan XYZ dalam bentuk matriks, dengan setiap baris mewakili kategori pengeluaran (misalnya, gaji, sewa, listrik, dll.) dan setiap kolom mewakili bulan (misalnya, Januari, Februari, Maret, dll.).

# Membuat matriks data keuangan
keuangan <- matrix(c(5000, 6000, 5500, 7000, 7500, 8000,
                      2000, 2500, 2800, 2300, 2400, 2700,
                      1000, 1200, 1100, 1300, 1400, 1500), 
                    nrow=3, 
                    ncol=6, 
                    byrow=TRUE)

# Memberikan nama pada baris dan kolom
rownames(keuangan) <- c("Gaji", "Sewa", "Listrik")
colnames(keuangan) <- c("Jan", "Feb", "Mar", "Apr", "Mei", "Jun")

# Menampilkan matriks keuangan
keuangan
##          Jan  Feb  Mar  Apr  Mei  Jun
## Gaji    5000 6000 5500 7000 7500 8000
## Sewa    2000 2500 2800 2300 2400 2700
## Listrik 1000 1200 1100 1300 1400 1500

Selanjutnya, kita ingin menghitung total pengeluaran per bulan dan total pengeluaran per kategori.

# Menghitung total pengeluaran per bulan
total_per_bulan <- apply(keuangan, 2, sum)

# Menghitung total pengeluaran per kategori
total_per_kategori <- apply(keuangan, 1, sum)

# Menampilkan hasil perhitungan
total_per_bulan
##   Jan   Feb   Mar   Apr   Mei   Jun 
##  8000  9700  9400 10600 11300 12200
total_per_kategori
##    Gaji    Sewa Listrik 
##   39000   14700    7500

Dalam program di atas, kita menggunakan fungsi “matrix” untuk membuat matriks keuangan dengan 3 baris dan 6 kolom. Setiap elemen dalam matriks mewakili jumlah pengeluaran untuk kategori tertentu pada bulan tertentu. Kami memberikan nama pada setiap baris dan kolom menggunakan fungsi “rownames” dan “colnames”. Setelah itu, kami menggunakan fungsi “apply” untuk menghitung total pengeluaran per bulan dan per kategori.

Berikut adalah contoh penerapan matriks dalam R Studio untuk menyelesaikan permasalahan penjadwalan:

Kita akan membuat sebuah jadwal pengiriman barang dari gudang ke lokasi-lokasi yang berbeda. Kita memiliki 5 lokasi yang berbeda dan setiap lokasi memiliki jadwal pengiriman yang berbeda-beda. Kita ingin mencari jadwal pengiriman yang optimal sehingga pengiriman dapat dilakukan dengan efisien.

Kita dapat memodelkan masalah ini sebagai sebuah masalah optimasi, di mana kita mencari jadwal pengiriman yang meminimalkan waktu dan biaya pengiriman. Dalam model ini, setiap baris mewakili lokasi, setiap kolom mewakili waktu pengiriman, dan setiap sel dalam matriks mewakili biaya pengiriman untuk mengirimkan barang dari gudang ke lokasi tertentu pada waktu tertentu.

# Membuat matriks biaya pengiriman
biaya <- matrix(c(10, 8, 6, 7, 9,
                  7, 9, 8, 6, 5,
                  5, 4, 6, 8, 7,
                  7, 8, 9, 6, 5,
                  9, 10, 8, 7, 6), 
                nrow=5, 
                ncol=5, 
                byrow=TRUE)

# Memberikan nama pada baris dan kolom
rownames(biaya) <- c("Lokasi 1", "Lokasi 2", "Lokasi 3", "Lokasi 4", "Lokasi 5")
colnames(biaya) <- c("Pengiriman 1", "Pengiriman 2", "Pengiriman 3", "Pengiriman 4", "Pengiriman 5")

# Menampilkan matriks biaya pengiriman
biaya
##          Pengiriman 1 Pengiriman 2 Pengiriman 3 Pengiriman 4 Pengiriman 5
## Lokasi 1           10            8            6            7            9
## Lokasi 2            7            9            8            6            5
## Lokasi 3            5            4            6            8            7
## Lokasi 4            7            8            9            6            5
## Lokasi 5            9           10            8            7            6