Archived
0

get avg profit by tonne

This commit is contained in:
iMoHax
2015-08-24 16:11:27 +03:00
parent 88fb2fcaf9
commit deefd94927
2 changed files with 33 additions and 31 deletions

View File

@@ -80,7 +80,7 @@ public class Scorer {
} }
public double getAvgProfit() { public double getAvgProfit() {
return avgProfit * profile.getShip().getCargo(); return avgProfit;
} }
public double getMaxProfit() { public double getMaxProfit() {

View File

@@ -36,10 +36,12 @@ public class ScorerTest extends Assert {
profile.setBalance(1000000); profile.setBalance(1000000);
Scorer scorer = new Scorer(fWorld, profile); Scorer scorer = new Scorer(fWorld, profile);
double avgProfit = scorer.getAvgProfit() * profile.getShip().getCargo();
double score = scorer.getScore(scorer.getAvgDistance(), 0, 1, 1, 4); double score = scorer.getScore(scorer.getAvgDistance(), 0, 1, 1, 4);
double score1 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit()/2, 1, 1, 4); double score1 = scorer.getScore(scorer.getAvgDistance(), avgProfit/2, 1, 1, 4);
double score2 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit()*10, 1, 1, 4); double score2 = scorer.getScore(scorer.getAvgDistance(), avgProfit*10, 1, 1, 4);
double score3 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 1, 1, 4); double score3 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 1, 1, 4);
assertTrue(score < score1); assertTrue(score < score1);
assertTrue(score1 < score3); assertTrue(score1 < score3);
@@ -51,56 +53,56 @@ public class ScorerTest extends Assert {
assertTrue(Math.abs(score2/score3) >= 10); assertTrue(Math.abs(score2/score3) >= 10);
score1 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 0, 1, 4); score1 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 0, 1, 4);
score2 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 1, 1, 4); score2 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 1, 1, 4);
score3 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 2, 1, 4); score3 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 2, 1, 4);
assertTrue(score1 > score2); assertTrue(score1 > score2);
assertTrue(score2 > score3); assertTrue(score2 > score3);
score1 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 1, 1, 4); score1 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 1, 1, 4);
score2 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 1, 2, 4); score2 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 1, 2, 4);
score3 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 1, 3, 4); score3 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 1, 3, 4);
assertTrue(score1 > score2); assertTrue(score1 > score2);
assertTrue(score2 > score3); assertTrue(score2 > score3);
score1 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 1, 1, 3); score1 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 1, 1, 3);
score2 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 1, 1, 4); score2 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 1, 1, 4);
score3 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 1, 1, 5); score3 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 1, 1, 5);
assertTrue(score1 > score2); assertTrue(score1 > score2);
assertTrue(score2 > score3); assertTrue(score2 > score3);
score = scorer.getScore(0, scorer.getAvgProfit(), 1, 1, 4); score = scorer.getScore(0, avgProfit, 1, 1, 4);
score1 = scorer.getScore(scorer.getAvgDistance()/2, scorer.getAvgProfit(), 1, 1, 4); score1 = scorer.getScore(scorer.getAvgDistance()/2, avgProfit, 1, 1, 4);
score2 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 1, 1, 4); score2 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 1, 1, 4);
score3 = scorer.getScore(scorer.getAvgDistance()*2, scorer.getAvgProfit(), 1, 1, 4); score3 = scorer.getScore(scorer.getAvgDistance()*2, avgProfit, 1, 1, 4);
assertTrue(score > score1); assertTrue(score > score1);
assertTrue(score1 > score2); assertTrue(score1 > score2);
assertTrue(score2 > score3); assertTrue(score2 > score3);
score1 = scorer.getScore(700, scorer.getAvgProfit(), 1, 1, 4); score1 = scorer.getScore(700, avgProfit, 1, 1, 4);
score2 = scorer.getScore(2800, scorer.getAvgProfit()*1.2, 1, 1, 4); score2 = scorer.getScore(2800, avgProfit*1.2, 1, 1, 4);
score3 = scorer.getScore(2800, scorer.getAvgProfit()*1.5, 1, 1, 4); score3 = scorer.getScore(2800, avgProfit*1.5, 1, 1, 4);
assertTrue(score1 > score2); assertTrue(score1 > score2);
assertTrue(score3 > score1); assertTrue(score3 > score1);
score1 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit()/2, 0, 1, 4); score1 = scorer.getScore(scorer.getAvgDistance(), avgProfit/2, 0, 1, 4);
score2 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit()*2, 1, 1, 4); score2 = scorer.getScore(scorer.getAvgDistance(), avgProfit*2, 1, 1, 4);
score3 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit()*4, 0, 1, 4); score3 = scorer.getScore(scorer.getAvgDistance(), avgProfit*4, 0, 1, 4);
assertTrue(score2 > score1); assertTrue(score2 > score1);
assertTrue(score3 > score2); assertTrue(score3 > score2);
score = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 2, 2, 4); score = scorer.getScore(scorer.getAvgDistance(), avgProfit, 2, 2, 4);
score1 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit()*1.2, 8, 2, 4); score1 = scorer.getScore(scorer.getAvgDistance(), avgProfit*1.2, 8, 2, 4);
score2 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 8, 2, 4); score2 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 8, 2, 4);
score3 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit()*1.4, 8, 2, 4); score3 = scorer.getScore(scorer.getAvgDistance(), avgProfit*1.4, 8, 2, 4);
assertTrue(score > score1); assertTrue(score > score1);
assertTrue(score > score2); assertTrue(score > score2);
assertTrue(score < score3); assertTrue(score < score3);
score = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 4, 2, 4); score = scorer.getScore(scorer.getAvgDistance(), avgProfit, 4, 2, 4);
score1 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit()*1.8, 4, 4, 4); score1 = scorer.getScore(scorer.getAvgDistance(), avgProfit*1.8, 4, 4, 4);
score2 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit(), 4, 4, 4); score2 = scorer.getScore(scorer.getAvgDistance(), avgProfit, 4, 4, 4);
score3 = scorer.getScore(scorer.getAvgDistance(), scorer.getAvgProfit()*2.1, 4, 4, 4); score3 = scorer.getScore(scorer.getAvgDistance(), avgProfit*2.1, 4, 4, 4);
assertTrue(score >= score1); assertTrue(score >= score1);
assertTrue(score > score2); assertTrue(score > score2);
assertTrue(score < score3); assertTrue(score < score3);