2026-02-19 17:10:05 -07:00

35 lines
780 B
R

#Based on Conrad Examples (Natural Resource Economics)
#Page 20
#Hamiltonian Method, terminal time
GET_Z <- function(lambda_2){
Z=(1-lambda_2)/2
return(Z)
}
GET_LAMBDA <- function(LAMBDA_2,Z){LAMBDA_2+Z^2}
Z_RES <- c()
LAMBDA_RES <- c()
LAMBDA_RES[1] <- 0
#Z_RES[10] <- 0
for(i in 1:10){
Z_RES[i] <- GET_Z(LAMBDA_RES[i])
if(i<10){LAMBDA_RES[i+1] <- GET_LAMBDA(LAMBDA_RES[i],GET_Z(LAMBDA_RES[i]))}
}
Z_RES <- c(rev(Z_RES),0)
LAMBDA_RES <- c(NA,rev(LAMBDA_RES))
X_RES <- c()
Y_RES <- c()
C_X <- 1000
for(i in 1:11){
X_RES[i] <- C_X
Y_RES[i] <- Z_RES[i]*C_X
C_X <- C_X-Y_RES[i]
}
RES <- cbind(LAMBDA_RES,Z_RES,X_RES,Y_RES)
plot(X_RES)
lines(1:11,Y_RES)
#Phase Plane Diagram
plot(X_RES,LAMBDA_RES)
#Page 22 Dynamic Programming, terminal time
#Bellmans Equation backward induction