⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lkconfig.h

📁 Lin-Kernighan heuristic for the TSP and minimum weight perfect matching
💻 H
📖 第 1 页 / 共 2 页
字号:
#undef KD_NO_HIDDEN_BIT/* Define KD_NO_HIDDEN_RNN_TEST to turn off the testing the hidden bit * before recursing in E2_rnn.  This is less drastic than removing hidden * bits altogether (see KD_NO_HIDDEN_BIT), but it still doesn't save time. * * Default:	#undef KD_NO_HIDDEN_RNN_TEST  */#undef KD_NO_HIDDEN_RNN_TEST /*************************************************************************** * These options select options for repeatability -- good for experiments. **************************************************************************//* Define QSORT_DETERMINATE to make sorting stable, i.e. so that we * preserve the order of objects that compare as equal.  Also consider * command-line option -S dsort (which substitutes Bentley and McIlroy's * deterministic sorting routine in place of the qsort routine from the * system's C library. * * Turn this option on only if you want to ensure repeatable results, both * across runs and across systems.  For repeatable results across systems, * you must also use -S dsort. * * Default:	#undef QSORT_DETERMINATE */#undef QSORT_DETERMINATE/* Define CITY_ORDER_INVARIANT to ensure that computations do not depend * on the initial ordering of the cities.  This is for repeatability. * This does not work yet.  (Faith Fich's suggestion of looking at * statistical behaviour under input randomization may be good enough.) * * Default:	#undef CITY_ORDER_INVARIANT */#undef CITY_ORDER_INVARIANT/*************************************************************************** * These options control in some way the amount of output generated. **************************************************************************//* Define LK_SHOW_AFTER_SFC to output the cities graphically (in * PostScript) after sorting them according to Moore's version of Hilbert's * space-filling curve.  The output is generated only if the -p * (--postscript) command-line option is used to request PostScript output. * * Default:	#undef LK_SHOW_AFTER_SFC */#undef LK_SHOW_AFTER_SFC/* Define KD_SHOW_KDTREE to output the partitioning used for the k-d tree. * The output is made graphically in PostScript, and only if the -p * (--postscript) option is used. * * Default:	#undef KD_SHOW_KDTREE */#undef KD_SHOW_KDTREE/* Define KD_ALLOW_VERBOSE to turn on debugging output for module KDTREE, *  subject to the verbose command line option. *  * Default:	#undef KD_ALLOW_VERBOSE */#undef KD_ALLOW_VERBOSE/* Define JBMR_REPORT_DEPTHS to show how deep tabu probing goes, and how * deep actually improving moves go.  These are platform-independent * statistics of work done by the tabu search algorithm. This is not * affected by the value of JBMR_MAX_VERBOSE. * * Default:	#define JBMR_REPORT_DEPTHS 1 */#if !defined(JBMR_REPORT_DEPTHS)#define JBMR_REPORT_DEPTHS 1#endif/* Define MATCH_REPORT_DEPTHS is analogous to JBMR_REPORT_DEPTHS, * but affects the minimum weight perfect matching code instead of  * the TSP code. * * Default:	#define MATCH_REPORT_DEPTHS 1 */#if !defined(MATCH_REPORT_DEPTHS)#define MATCH_REPORT_DEPTHS 1#endif/* Define JBMR_MAX_VERBOSE to determine how much verbose output code gets * compiled into the LK optimization code for the TSP (i.e. in module JBMR). * The level of detail actually output depends on this value and the values * given to the -v or --verbose command-line options.   * * If undefined, then there is no runtime overhead due to verbose output  * code, i.e., checks against variable |verbose| are not even compiled into  * the code. * * Default:	#define JBMR_MAX_VERBOSE 45 */#if !defined(JBMR_MAX_VERBOSE)#define JBMR_MAX_VERBOSE 45#endif#define MATCH_MAX_VERBOSE JBMR_MAX_VERBOSE/* Define MILESTONE_MAX_VERBOSE to determine how much milestone reporting. * gets done.  All the milestone output happens below 50. * * Default:	#define MILESTONE_MAX_VERBOSE 45 */#if !defined(MILESTONE_MAX_VERBOSE)#define MILESTONE_MAX_VERBOSE 45#endif/* Define TABUHASH_MAX_VERBOSE to determine how much verbose output code gets * compiled into the tabu hash list code. * * Default:	#define TABUHASH_MAX_VERBOSE 0 */#if !defined(TABUHASH_MAX_VERBOSE)#define TABUHASH_MAX_VERBOSE 0#endif/* If JBMR_MAX_VERBOSE is greater than zero, we can turn on very verbose * output for a specific city by setting symbol JBMR_WATCH_THIS_CITY * to the numeric value of the city to watch. * * Example:	#define JBMR_WATCH_THIS_CITY (999) * This turns on very verbose output when t[1]=999. *  * Default:	#undef JBMR_WATCH_THIS_CITY */#undef JBMR_WATCH_THIS_CITY/*************************************************************************** * These options control how much checking is done. **************************************************************************//* Define ERROR_NO_CHECK to turn off assertion checking. * * Default: 	#undef ERROR_NO_CHECK */#undef ERROR_NO_CHECK/* Define LK_CHECK_KDTREE to make module LK check that all nn computations * are correct.  On $n$-city instances, this does $O(n^2)$ work. *  * Default:	#undef LK_CHECK_KDTREE */#undef LK_CHECK_KDTREE/* Define KD_CHECK_PARTITIONING to make the k-d tree building routine * check that it has partitioned the cities correctly. * * Default:	#undef KD_CHECK_PARTITIONING */#undef KD_CHECK_PARTITIONING/* Define KD_CHECK_BBOX to make the k-d tree building routine check that * it computes its bounding boxes correctly. * * Default:	#undef KD_CHECK_BBOX */#undef KD_CHECK_BBOX/* The value of ARRAY_DEBUG controls how much checking is done by the * array-based tour representation.  A value of 0 does no checking.  A * non-zero value checks input conditions for flips.  A value greater than * 1000 forces a time-consuming ($O(n)$) consistency check after each flip. * * Default:	#define ARRAY_DEBUG 0 */#define ARRAY_DEBUG 0/* Define TWOLEVEL_FLIP_CHECK_PRECONDITION to force the tour representation * based on two-level tree to check the input precondition for flips.  This * is analogous to ARRAY_DEBUG being non-zero.  Sorry for the naming * inconsistency. * * Default:	#undef TWOLEVEL_FLIP_CHECK_PRECONDITION */#undef TWOLEVEL_FLIP_CHECK_PRECONDITION/* Define TWOLEVEL_DEBUG to force both two-level trees and arrays to be * used to represent tours, and ensuring that they are consistent with * each other. * * Default:	#undef TWOLEVEL_DEBUG */#undef TWOLEVEL_DEBUG/* Define DECLUSTER_DEBUG to a non-zero value to allow program * declustertest (part of decluster.w) to examine and test data structures * internal to the decluster module. * * Default:	#define DECLUSTER_DEBUG 0 */#if !defined(DECLUSTER_DEBUG)#define DECLUSTER_DEBUG 0#endif/* Define DIRTY_DEBUG to a non-zero value to do extra checking on  * dirty sets in dirty.w. * I needed this only to debug a memory buffer overrun problem I had * with the change_log array in jbmr.w and match.w. * * Default:	#define DIRTY_DEBUG 0 */#if !defined(DIRTY_DEBUG)#define DIRTY_DEBUG 0#endif

⌨️ 快捷键说明

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