# Can't fit dose response curve, could you tell me Why and How

Hello there !

I just have started programming and Julia these days, and I am trying fitting curve (dose response) by Optim.jl
But I can’t obtain better parameters and predictions (the all predictions have same value eventhough I use parameters that are calculated by optimize()) .
So, I would like you to tell me which is/are wrong and how to fix it.
I just have started programming and Julia

Here is my codes;

``````xdata = [0.1, 0.3, 1.0, 3.0, 10.0]
ydata = [138.48, 150.23, 192.14, 199.78, 233.76]
xbase = collect(range(minimum(xdata), maximum(xdata), 100))

@. DoseRes(x, p) = p[1] + ((p[2] - p[1]) / (1 + 10 ^ ((p[3] - x) * p[4])))

function cost(x, y, p)
err = 0.0
for i in 1:length(x)
err = sum(abs2(y[i] - DoseRes(x[i], p...))) / (2 * length(x))
end
return err
end
result = optimize(p -> cost(xdata, ydata, p), [0.0, 0.0, 0.0, 0.0])
pbest = Optim.minimizer(result)

DoseRes(xbase, pbest)
``````

result is like this;

``````100-element Vector{Float64}:
233.75995328637563
233.75995328637563
233.75995328637563
233.75995328637563
233.75995328637563
233.75995328637563
233.75995328637563
233.75995328637563
233.75995328637563
233.75995328637563
233.75995328637563
233.75995328637563
233.75995328637563
⋮
``````