chiark
/
gitweb
/
~yarrgweb
/
ypp-sc-tools.main.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
routesearch: make #define debug_flags work again, but still not faster
[ypp-sc-tools.main.git]
/
yarrg
/
rscommon.h
diff --git
a/yarrg/rscommon.h
b/yarrg/rscommon.h
index 9e1032a4053c7cade117cd0650f00855560ad597..1e6679db087035d3a8e7e9da964a94fa94f1ef45 100644
(file)
--- a/
yarrg/rscommon.h
+++ b/
yarrg/rscommon.h
@@
-7,12
+7,15
@@
DF(sql) \
DF(sql2) \
DF(value) \
DF(sql) \
DF(sql2) \
DF(value) \
+ DF(value2) \
DF(search) \
DF(filter) \
DF(check) \
DF(tableau) \
DF(lp)
DF(search) \
DF(filter) \
DF(check) \
DF(tableau) \
DF(lp)
+//#define debug_flags 0
+
#define debug debug_file
#include "common.h"
#define debug debug_file
#include "common.h"
@@
-21,6
+24,8
@@
extern FILE *debug_file;
#define DEBUG_DEV "/dev/stdout" /* just for glpk */
#define DEBUG_DEV "/dev/stdout" /* just for glpk */
+#define GRANUS 3
+
#define COUNTER_LIST \
CTR(commodities_loaded) \
CTR(trades_loaded) \
#define COUNTER_LIST \
CTR(commodities_loaded) \
CTR(trades_loaded) \
@@
-30,10
+35,10
@@
extern FILE *debug_file;
CTR(routes_considered) \
CTR(routes_wrongfinalelim) \
CTR(routes_quickelim) \
CTR(routes_considered) \
CTR(routes_wrongfinalelim) \
CTR(routes_quickelim) \
- CTR(routes_
stratelim)
\
+ CTR(routes_
bucketelim)
\
CTR(routes_valued) \
CTR(routes_wrongfinal) \
CTR(routes_valued) \
CTR(routes_wrongfinal) \
- CTRA(newbests_
strat,2)
\
+ CTRA(newbests_
granu,GRANUS*2)
\
CTR(subroute_tails_valued) \
CTR(subroutes_valued) \
CTR(subroutes_nonempty)
CTR(subroute_tails_valued) \
CTR(subroutes_valued) \
CTR(subroutes_nonempty)
@@
-118,19
+123,21
@@
void setup_value(void);
typedef struct {
double value[AP];
typedef struct {
double value[AP];
- int ports[
AP][
MAX_ROUTELEN];
-} PotentialResult;
+ int ports[MAX_ROUTELEN];
+}
One
PotentialResult;
-#define STRATS 3
+typedef struct {
+ OnePotentialResult prs[AP];
+} Bucket;
void setup_search(void);
void search(int start_isle, int final_isle /* -1 means any */,
void setup_search(void);
void search(int start_isle, int final_isle /* -1 means any */,
-
PotentialResult ****strat_base_io[STRAT
S]
- /*
strat_base[strat
i][finalthing][midthing]-> */);
+
Bucket ****buckets_base_io[GRANU
S]
+ /*
bucket_base[granu
i][finalthing][midthing]-> */);
extern double max_mass, max_volu, max_capi;
extern double distance_loss_factor_per_league;
extern double max_mass, max_volu, max_capi;
extern double distance_loss_factor_per_league;
-extern int max_dist;
+extern int max_dist
, min_trade_maxprofit
;
#define LOSS_FACTOR_PER_DELAY_SLOT (1-1e-8)
#define LOSS_FACTOR_PER_DELAY_SLOT (1-1e-8)
@@
-140,7
+147,7
@@
extern int narches;
extern char **archnames;
extern int *islandid2arch;
extern char **archnames;
extern int *islandid2arch;
-extern int
stratsz_fin[STRATS], stratsz_mid[STRAT
S];
+extern int
granusz_fin[GRANUS], granusz_mid[GRANU
S];
extern FILE *output;
extern FILE *output;
@@
-162,12
+169,12
@@
extern FILE *output;
typedef struct {
double value;
typedef struct {
double value;
-
PotentialResult *pr
;
+
Bucket *bucket
;
} HighScoreEntry;
} HighScoreEntry;
-extern int
minstrat
;
-extern int nhighscores[
STRAT
S][AP];
-extern HighScoreEntry *highscores[
STRAT
S][AP];
+extern int
granus
;
+extern int nhighscores[
GRANU
S][AP];
+extern HighScoreEntry *highscores[
GRANU
S][AP];
#define ONDEMAND(pointer_lvalue, calloc_size_count) \
#define ONDEMAND(pointer_lvalue, calloc_size_count) \