📄 greedyswapsearcher.java
字号:
/**
* Description: The description of 2-change mutation strategy.
*
* @ Author Create/Modi Note
* Xiaofeng Xie Jun 19, 2006
*
* @version 1.0
*
*/
package maosKernel.behavior.greedy;
import Global.basic.attrib.*;
import Global.basic.data.collection.*;
import maosKernel.represent.space.*;
import maosKernel.behavior.mutate.*;
import maosKernel.behavior.channel.*;
import Global.basic.nodes.utilities.*;
public class GreedySwapSearcher extends AbsMaskedExplicitMutator {
private ISystematicChangeEngine greedySwaper;
private ILocalChangeEngine getSwapICostEngine;
public String getSpecialSummary() {
String sumInfo = "";
if (greedySwaper instanceof ISummaryEngine) {
sumInfo += ((ISummaryEngine)greedySwaper).getSummary();
}
if (getSwapICostEngine instanceof ISummaryEngine) {
sumInfo += ((ISummaryEngine)getSwapICostEngine).getSummary();
}
return sumInfo;
}
public void initUtilities() {
super.initUtilities();
initUtility(new BasicUtility("LocalChangeEigine", getSwapICostEngine));
initUtility(new BasicUtility("SystematicChangeEngine", greedySwaper));
}
public void shortcutInit() throws Exception {
super.shortcutInit();
getSwapICostEngine = (ILocalChangeEngine)(getValue("LocalChangeEigine"));
greedySwaper = (ISystematicChangeEngine)getValue("SystematicChangeEngine");
}
public void initGreedySwaper(ISystematicChangeEngine greedySwaper, ILocalChangeEngine getSwapICostEngine) {
this.greedySwaper = greedySwaper;
this.getSwapICostEngine = getSwapICostEngine;
}
public void setMaskFlags(IAlienICollectionEngine maskFlags) {
super.maskFlags = maskFlags;
if (greedySwaper instanceof ISetMaskFlagsEngine) {
( (ISetMaskFlagsEngine) greedySwaper).setMaskFlags(maskFlags);
}
}
public void mutateBehavior(SearchState baseState) {
greedySwaper.systematicSearch(baseState, getSwapICostEngine);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -