MATLAB: Ga function Input data

ga optimization functionMATLAB

Hey, I wish to use ga optimization for a given function.
I want to send an "extra" variable to the function that is not part of the optimized variables
basically: I have a function
function f=FindAC(x,val)
X is a 2X1 vector that I want to find the optimized value val is just a long array of input data
I tried:
ga(@(x,val)FindAC,2,[],[],[],[],lb,ub,[],intcon)
but I get error message
Not enough input arguments.
needless to say that without the ga optimization :
f=FindAC(x,val)
the function runs without errors
how can I send "val" to the function while asking the ga to optimize x

Best Answer

Try making ‘FindAC’ a function only of ‘x’ for ga:
ga(@(x)FindAC(x,val),2,[],[],[],[],lb,ub,[],intcon)
This a guess, since I am not certain what the problem is.