「配列値に対して演算はできません」エラーについて
現在、効用が最も高いメッシュへエージェントが移動をするというモデルを作成しています。 メッシュ(My)には4つの区域があり、効用には3つの属性があります(fitness(属性))。 最大効用を求めるため、Universe上でUniverse.max_fitnessという変数を4次元、各3配列で設定しました。(max_fitness(区域,属性)) If My.KUIKI == 0 Then If My.fitness(0) > Universe.max_fitness(0,0) Then Universe.max_fitness(0,0) = My.fitness(0) Elseif My.fitness(1) > Universe.max_fitness(0,1) Then Universe.max_fitness(0,1) = My.fitness(1) Elseif My.fitness(2) > Universe.max_fitness(0,2) Then Universe.max_fitness(0,2) = My.fitness(2) End if End if 以上のように設定したところ、「配列値に対して演算はできません」とエラーが出ました。 この場合、配列値とはどちらを指しているのでしょうか? また、IF文内ではそもそも配列値を使用できないのか、コードが間違っているのかどちらなのでしょうか? モデル構築に不慣れで困っているため、お力添えいただけると幸いです。
現在、効用が最も高いメッシュへエージェントが移動をするというモデルを作成しています。 メッシュ(My)には4つの区域があり、効用には3つの属性があります(fitness(属性))。 最大効用を求めるため、Universe上でUniverse.max_fitnessという変数を4次元、各3配列で設定しました。(max_fitness(区域,属性)) If My.KUIKI == 0 Then If My.fitness(0) > Universe.max_fitness(0,0) Then Universe.max_fitness(0,0) = My.fitness(0) Elseif My.fitness(1) > Universe.max_fitness(0,1) Then Universe.max_fitness(0,1) = My.fitness(1) Elseif My.fitness(2) > Universe.max_fitness(0,2) Then Universe.max_fitness(0,2) = My.fitness(2) End if End if 以上のように設定したところ、「配列値に対して演算はできません」とエラーが出ました。 この場合、配列値とはどちらを指しているのでしょうか? また、IF文内ではそもそも配列値を使用できないのか、コードが間違っているのかどちらなのでしょうか? モデル構築に不慣れで困っているため、お力添えいただけると幸いです。
