rework more parts of the framework to follow a strict subclass ordering
commit65221706eca42f6d0c19e35a4ba6f6ca84ad5bed
authorJochen Keil <jochen.keil@gmail.com>
Thu, 1 Jul 2010 18:48:03 +0000 (1 20:48 +0200)
committerJochen Keil <jochen.keil@gmail.com>
Thu, 1 Jul 2010 18:48:03 +0000 (1 20:48 +0200)
tree7f3c097a32c9333812f2d70267cf6bb7a5cc0e15
parent6ef16d2995d777eb2f17d13bd15b5104736c6034
rework more parts of the framework to follow a strict subclass ordering

ACOMediator is an abstract class now
ASMediator and ACSMediator inherit from it

ASParameter is an abstract class which defines getAlpha/setAlpha as
concrete function with a concrete class member variable Alpha.
It inherits/extends ACOParameter.

EAS/ASRank/SimpleASParameter inherit from ASParameter which all add
properties despite SimpleAS which is basically the same as AS.

Subclassing the Mediator and Parameter classes now allows stricter
checking for the constructor argument in the strategy classes.

Finally the strategy classes for AS have been split into subclasses like
for Mediator and Parameter, with SimpleAS, EAS and ASRank
inheriting/extending {ASStrategy|ASPheromoneStrategy|..} which
inherit/extend from {ACOStrategy|PheromoneStrategy|..}.
26 files changed:
aco/AntMain.java
aco/mediator/ACOMediator.java
aco/mediator/acs/ACSMediator.java [new file with mode: 0644]
aco/mediator/as/ASMediator.java [new file with mode: 0644]
aco/mediator/as/asrank/ASRankMediator.java [new file with mode: 0644]
aco/mediator/as/eas/EASMediator.java [new file with mode: 0644]
aco/mediator/as/simpleas/SimpleASMediator.java [new file with mode: 0644]
aco/parameter/as/ASParameter.java
aco/parameter/as/asrank/ASRankParameter.java [moved from aco/parameter/asrank/ASRankParameter.java with 89% similarity]
aco/parameter/as/eas/EASParameter.java [moved from aco/parameter/eas/EASParameter.java with 94% similarity]
aco/parameter/as/simpleas/SimpleASParameter.java [copied from aco/parameter/as/ASParameter.java with 84% similarity]
aco/strategy/acs/ACSChoiceInformationStrategy.java
aco/strategy/acs/ACSPheromoneStrategy.java
aco/strategy/acs/ACSStrategy.java
aco/strategy/acs/ACSTauZeroStrategy.java
aco/strategy/as/ASChoiceInformationStrategy.java
aco/strategy/as/ASStrategy.java
aco/strategy/as/ASTauZeroStrategy.java [deleted file]
aco/strategy/as/asrank/ASRankPheromoneStrategy.java [moved from aco/strategy/asrank/ASRankPheromoneStrategy.java with 85% similarity]
aco/strategy/as/asrank/ASRankTauZeroStrategy.java [new file with mode: 0644]
aco/strategy/as/eas/EASPheromoneStrategy.java [moved from aco/strategy/eas/EASPheromoneStrategy.java with 83% similarity]
aco/strategy/as/eas/EASTauZeroStrategy.java [new file with mode: 0644]
aco/strategy/as/simpleas/SimpleASPheromoneStrategy.java [moved from aco/strategy/as/ASPheromoneStrategy.java with 79% similarity]
aco/strategy/as/simpleas/SimpleASTauZeroStrategy.java [new file with mode: 0644]
aco/strategy/asrank/ASRankTauZeroStrategy.java [deleted file]
aco/strategy/eas/EASTauZeroStrategy.java [deleted file]