relativerpwclueassigner.java

来自「pso源程序」· Java 代码 · 共 42 行

JAVA
42
字号
/**
 * Description: returns the relative profit-to-wight ratio
 *
 * @ Author        Create/Modi     Note
 * Xiaofeng Xie    Nov 06, 2006
 *
 */

package implement.QKP.behavior.assign;

import implement.QKP.represent.*;
import Global.basic.data.collection.*;

public class RelativeRpwClueAssigner extends AbsClueAssigner {
  private IGetProblemDataEngine problemData;
  private IBasicICollectionEngine existElements;

  public RelativeRpwClueAssigner() {}

  protected void initProblemData(IGetProblemDataEngine problemData) {
    this.problemData = problemData;
  }

  public double getRealElementAt(int nodeID){
    return -getRelativeDensityAt(nodeID, existElements)/(double)problemData.getWeightAt(nodeID);
  }

  public void setExistingElements(IBasicICollectionEngine existElements) {
    this.existElements = existElements;
  }

  private int getRelativeDensityAt(int nodeID, IBasicICollectionEngine existElements){
    int density = problemData.getLinearValueAt(nodeID);
    int[] quadArray = problemData.getQuadraticValueAt(nodeID);
    for (int j=0; j<existElements.getSize(); j++) {
      density += quadArray[existElements.getElementAt(j)];
    }
    return density;
  }
}

⌨️ 快捷键说明

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