質問: gaの引数nvarsを整数値で、重複なく入力する方法 matlabのgaに関して2点質問があります。 1点目: gaの引数をnvars=4、intcon=1~45(整数値)としたところ、 each member of intcon must not exceed the number of variables とのエラーが出てしまいました。 この方法以外に、nvarsを1~45の整数値で入力する方法があれば教えていただきたいです。 2点目: nvarsの各要素が重複しないようにする方法があれば教えていただきたいです。 以上、よろしくお願いします。
回答: intcon はどの各変数に整数制約を付けるかを決める入力なので、4つの変数すべてが整数なら intcon = [1,2,3,4] とすべきです。整数の範囲制約には ub, lb を使ってください。 例:https://www.mathworks.com/help/gads/mixed-integer-optimization.html intcon is a vector of positive integers that contains the x components that are integer-valued. for example, if you want to restrict x(2) and x(10) to be integers, set intcon to [2,10].