⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tourstatepicker.java

📁 pso源程序
💻 JAVA
字号:
/**
 * Description: For two encoded states (A, B), updating A based on the B
 *
 * @ Author        Create/Modi     Note
 * Xiaofeng Xie    Apr 28, 2006    MAOS-TSP Beta 1.1.002
 *
 * @version 1.0
 */

package maosKernel.behavior.pick;

import Global.methods.*;
import maosKernel.memory.*;
import maosKernel.represent.landscape.*;
import Global.basic.nodes.utilities.*;

public class TourStatePicker extends AbsStatePicker {
  private boolean isBetter = true;
  private int taoB = 1;
  private IEncodedDataEvaluateEngine evaluateEngine;

  public TourStatePicker(){}

  protected void setRootInfo(AbsLandscape landscape) {
    evaluateEngine = landscape;
  }

  public void initUtilities() {
    super.initUtilities();
    initUtility(new BooleanUtility("isBetter", isBetter));
    initUtility(new IntegerUtility("taoB", taoB));
  }

  public void shortcutInit() throws Exception {
    super.shortcutInit();
    isBetter = TypeConverter.toBoolean(getValue("isBetter"));
    taoB = TypeConverter.toInteger(getValue("taoB"));
  }

  public EncodedState pickBehavior(IGetRandEnocdeStateEngine msState) {
    if (evaluateEngine==null ||taoB<2) return msState.getRandomPoint();

    EncodedState selState, baseState = msState.getRandomPoint();
    for (int i=1; i<taoB; i++) {
      selState = msState.getRandomPoint();
      if (isBetter==EncodedStateHandler.evaluate(evaluateEngine, selState, baseState)) {
        baseState = selState;
      }
    }
    return baseState;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -