MATLAB: How to minimize the L1 norm of residuals

curve fittingl1 normminimizationoptimizationresiduals

Hello,
The datasets I currently analyse are not normally distributed (according to shapiro-wilk and kolgomorov-smirnov @ p = 0.05). Therefore, I prefer plotting them as boxplots. However, I would actually like to fit a nonlinear model (in that case a dose respone curve, f(x) = y(end)./(1 + 10.^((param(1) – x)*param(2))))) to the (non-existing) mean in order to extract some parameters. So, is there any way and is it allowed to fit my function to the median instead of the mean values? I assume that I have to minimize the L1 norm of the residuals, but that gives me a hard time. Can you help me on this one?
Best regards
Philipp

Best Answer

FMINSEARCH would be a good candidate, since you have only two unknowns
fun=@(param) norm( f - y(end)./(1 + 10.^((param(1) - x)*param(2))))) ,1);
fminsearch(fun,initialGuess)