Tugas Optimisasi Statistika

Tugas Mencari Koefisien Beta dengan Menggunakan Iterasi Jacobi

Deklarasi Nilai A dan B

A <- matrix(c(3,1,-1,4,7,-3,2,-2,5), nrow=3, byrow=TRUE)
b <- c(5,20,10)
x0 <- c(0,0,0)

Pertama kita bangkitkan matriks A berukuran 3X3 dan vektor b.

Percobaan 1

library(Rlinsolve)
## ** ------------------------------------------------------- **
## ** Rlinsolve
## **  - Solving (Sparse) System of Linear Equations
## **
## ** Version    : 0.3.2      (2023)
## ** Maintainer : Kisung You (kisungyou@outlook.com)
## **
## ** Please share any bugs or suggestions to the maintainer.
## ** ------------------------------------------------------- **
jacobi <-lsolve.jacobi(A,b,x0, reltol=1e-05, maxiter=500)
## * lsolve.jacobi : Initialiszed.
## * lsolve.jacobi : A may not be symmetric.
## * lsolve.jacobi : making it normal equation form via 'adjsym' flag.
## * lsolve.jacobi : LHS matrix A is not diagonally dominant.
## *               : solution from Jacobi method is not guaranteed.
## * lsolve.jacobi : computations finished.
jacobi$x
##          [,1]
## [1,] 1.506324
## [2,] 3.132175
## [3,] 2.650298
jacobi$iter
## [1] 177
jacobi$errors[which.min(jacobi$errors)]
## [1] 9.895752e-06

Berdasarkan output diatas, terlihat bahwa pada percobaan 1 dengan nilai maxiter=500 dan reltol=1e-05 memiliki nilai koefisien 1.506324, 3.132175, 2.650298, iterations=177, dan nilai error sebesar 9.895752e-06

Percobaan 2

library(Rlinsolve)
jacobi <-lsolve.jacobi(A,b,x0, reltol=1e-07, maxiter=2000)
## * lsolve.jacobi : Initialiszed.
## * lsolve.jacobi : A may not be symmetric.
## * lsolve.jacobi : making it normal equation form via 'adjsym' flag.
## * lsolve.jacobi : LHS matrix A is not diagonally dominant.
## *               : solution from Jacobi method is not guaranteed.
## * lsolve.jacobi : computations finished.
jacobi$x
##          [,1]
## [1,] 1.506027
## [2,] 3.132527
## [3,] 2.650599
jacobi$iter
## [1] 272
jacobi$errors[which.min(jacobi$errors)]
## [1] 9.581642e-08

Berdasarkan output diatas, terlihat bahwa pada percobaan 2 dengan nilai maxiter=2000 dan reltol=1e-07 memiliki nilai koefisien 1.506027, 3.132527, 2.650599, iterations=272, dan nilai error sebesar 9.581642e-08

Percobaan 3

library(Rlinsolve)
jacobi <-lsolve.jacobi(A,b,x0, reltol=1e-15, maxiter=5000)
## * lsolve.jacobi : Initialiszed.
## * lsolve.jacobi : A may not be symmetric.
## * lsolve.jacobi : making it normal equation form via 'adjsym' flag.
## * lsolve.jacobi : LHS matrix A is not diagonally dominant.
## *               : solution from Jacobi method is not guaranteed.
## * lsolve.jacobi : computations finished.
jacobi$x
##          [,1]
## [1,] 1.506024
## [2,] 3.132530
## [3,] 2.650602
jacobi$iter
## [1] 649
jacobi$errors[which.min(jacobi$errors)]
## [1] 9.647454e-16

Berdasarkan output diatas, terlihat bahwa pada percobaan 3 dengan nilai maxiter=5000 dan reltol=1e-15 memiliki nilai koefisien 1.506024, 3.132530, 2.650602, iterations=649, dan nilai error sebesar 9.647454e-16

Metode Matriks

A <- matrix(c(3,1,-1,4,7,-3,2,-2,5), nrow=3, byrow=TRUE)
b <- c(5,20,10)
solve(A)%*%b
##          [,1]
## [1,] 1.506024
## [2,] 3.132530
## [3,] 2.650602
solve(A,b)
## [1] 1.506024 3.132530 2.650602

Berdasarkan output metode matriks dengan metode iterasi jacobi pada percobaan 1,2,3 dengan nilai maxiter diperbesar dan nilai reltol yang diperkecil diperoleh bahwa percobaan 3 dengan nilai maxiter terbesar dan nilai reltol terkecil memiliki tingkat error paling kecil dan nilai koefisien yang paling mendekati koefisien yang dicoba dengan nilai matriks.