From: Lemon F on
Hi all

I am new to matlab, but need to perform an optimisation using matlab(need to, not must, but i think matlab is powerful enough to do this). right now i only know fminsearch, but as i known this function only deal with continues parameters, what if i also have discreted parameters, what should I do to perform such optimisation. and also the objective function may have error(noise), how does matlab deal with these errors? can it tolerate the errors?

cheers
From: Derya Ozyurt on
Hello,
You can check out this technical solution for one way of dealing with
discrete parameters:

http://www.mathworks.com/support/solutions/en/data/1-10PDHC/

Best Regards,
Derya


"Lemon F" <f.lemon.jin(a)hotmail.com> wrote in message
news:i3e11d$3kh$1(a)fred.mathworks.com...
> Hi all
>
> I am new to matlab, but need to perform an optimisation using matlab(need
> to, not must, but i think matlab is powerful enough to do this). right now
> i only know fminsearch, but as i known this function only deal with
> continues parameters, what if i also have discreted parameters, what
> should I do to perform such optimisation. and also the objective function
> may have error(noise), how does matlab deal with these errors? can it
> tolerate the errors?
>
> cheers


From: Lemon F on
Thans Derya, But i've looked into your link, it doesn't seems to have metion anything about dealing with discrete parameters.

"Derya Ozyurt" <dozyurt(a)mathworks.com> wrote in message <i3f87v$cgd$1(a)fred.mathworks.com>...
> Hello,
> You can check out this technical solution for one way of dealing with
> discrete parameters:
>
> http://www.mathworks.com/support/solutions/en/data/1-10PDHC/
>
> Best Regards,
> Derya
>
>
> "Lemon F" <f.lemon.jin(a)hotmail.com> wrote in message
> news:i3e11d$3kh$1(a)fred.mathworks.com...
> > Hi all
> >
> > I am new to matlab, but need to perform an optimisation using matlab(need
> > to, not must, but i think matlab is powerful enough to do this). right now
> > i only know fminsearch, but as i known this function only deal with
> > continues parameters, what if i also have discreted parameters, what
> > should I do to perform such optimisation. and also the objective function
> > may have error(noise), how does matlab deal with these errors? can it
> > tolerate the errors?
> >
> > cheers
>
From: Steven_Lord on


"Lemon F" <f.lemon.jin(a)hotmail.com> wrote in message
news:i3gmh0$t6t$1(a)fred.mathworks.com...
> Thans Derya, But i've looked into your link, it doesn't seems to have
> metion anything about dealing with discrete parameters.

Integer values are discrete, aren't they?

Take the code in the technical solution and adapt it so that it only deals
with the specific discrete values that you want rather than the integers
that it's currently configured to deal with. The easiest way to do so would
probably be to generate integer values and use those values as indices into
the vector of discrete values, or apply a transformation. For example, if
your discrete values are [1 4 9] you could generate an integer between 1 and
3 and index into the vector [1 4 9] or generate an integer between 1 and 3
and work with that integer squared.

--
Steve Lord
slord(a)mathworks.com
comp.soft-sys.matlab (CSSM) FAQ: http://matlabwiki.mathworks.com/MATLAB_FAQ
To contact Technical Support use the Contact Us link on
http://www.mathworks.com

From: Lemon F on
Thank you Steven, I think I get your point, I will try your way and see how it goes

"Steven_Lord" <slord(a)mathworks.com> wrote in message <i3h396$so6$1(a)fred.mathworks.com>...
>
>
> "Lemon F" <f.lemon.jin(a)hotmail.com> wrote in message
> news:i3gmh0$t6t$1(a)fred.mathworks.com...
> > Thans Derya, But i've looked into your link, it doesn't seems to have
> > metion anything about dealing with discrete parameters.
>
> Integer values are discrete, aren't they?
>
> Take the code in the technical solution and adapt it so that it only deals
> with the specific discrete values that you want rather than the integers
> that it's currently configured to deal with. The easiest way to do so would
> probably be to generate integer values and use those values as indices into
> the vector of discrete values, or apply a transformation. For example, if
> your discrete values are [1 4 9] you could generate an integer between 1 and
> 3 and index into the vector [1 4 9] or generate an integer between 1 and 3
> and work with that integer squared.
>
> --
> Steve Lord
> slord(a)mathworks.com
> comp.soft-sys.matlab (CSSM) FAQ: http://matlabwiki.mathworks.com/MATLAB_FAQ
> To contact Technical Support use the Contact Us link on
> http://www.mathworks.com