Ich habe versucht, eine Reihe von nicht linearen Gleichungen zu lösen, aber stecken.Lösen nichtlinearer Gleichungen in R mit BB-Paket
0<x1<1 ; x2>0 ; x3>0
library(BB)
f <- function(x) {
x1 <- x[1]
x2 <- x[2]
x3 <- x[3]
F <- rep(NA, 3)
F[1] <- 1-x1^(log(1+1/(x3)^x2))-0.64
F[2] <- x1^(log(1+1/(x3)^x2))-x1^(log(1+(2/x3)^x2))-0.17
F[3] <- x1^(log(1+(2/x3)^x2))-x1^(log(1+(3/x3)^x2))-0.10
return(F)
}
p0 <- c(0.5,2,1)
dfsane(par=p0, fn=f,control=list(maxit=30000))
Es blieb bei einem Fehler auf der ersten Iteration nur
„Fehler: Fehler bei der Funktionsauswertung“
Kann mir jemand helfen, wie der Fehler zu beheben?
@ Josliber, Ja, Sie sind wahr. Tatsächlich habe ich Einschränkungen für die Funktionsargumente, wie ich im Anfang als 0 0 erwähnt habe; x3> 0. Kann jemand helfen, solche Situation zu ertragen? –
@BilalPara Das Paket nloptr bietet eingeschränkte nichtlineare Optimierung. Sie können überprüfen, ob das in Ihrem Fall funktioniert. – josliber
@ Josliber, bin ich etwas verwirrt, wie man Optimierungsmethode verwendet, um Lösung der nichtlinearen Gleichungen dort zu erhalten. –