Buggy code:
public class TSPSolver implements Serializable { private static final long serialVersionUID = 5685114427785070701L ; private static volatile int [ ] bestArray ; private static volatile int [ ] swapIndex ; private static volatile int [ ] initialPermute ; private static volatile long time ; private static volatile long runTime ; private static volatile int [ ] [ ] matrix ; private static volatile int [ ] [ ] pathArray ; private static volatile int [ ] [ ] nnArray ; private static volatile int bestValue ; private static volatile int threadCount ; private static volatile int lowEstimate ; private static volatile int watchperson ; private static volatile int nearestWatchPerson ; private static boolean distributed ; private static TSPSingle [ ] singles ; public TSPSolver ( int [ ] [ ] inputMatrix , int [ ] inputPermute , int indexSentinel , int estimate , boolean multiMachine ) { } public int [ ] getInitialPermute ( ) { } public void setInitialPermute ( int [ ] initialPermute ) { } public int getLowEstimate ( ) { } public void setLowEstimate ( int lowEstimate ) { } public int getWatchperson ( ) { } public void setWatchperson ( int watchperson ) { } public static void main ( String [ ] args ) throws FileNotFoundException { TSPSolver tsp ; int watchPersonToo = 1 ; int firstEstimate ; int [ ] [ ] start ; int [ ] startHere ; int [ ] shortest ; boolean test = false ; String matrixString = TSPSolver . fileReadIn ( ) ; start = TSPSolver . StringToIntMatrix ( matrixString ) ; startHere = new int [ start [ 0 ] . length ] ; <START_BUG> firstEstimate = 1000 ; <END_BUG> for ( int i = 0 ; i < ( startHere . length ) ; i ++ ) { startHere [ i ] = i ; } System . out . println ( ( "Matrix<seq2seq4repair_space>symmetry:<seq2seq4repair_space>" + ( TSPSolver . symmetryCheck ( start ) ) ) ) ; tsp = new TSPSolver ( start , startHere , watchPersonToo , firstEstimate , test ) ; shortest = tsp . solve ( ) ; System . out . println ( ( ( ( "Best<seq2seq4repair_space>path:\t" + ( TSPSolver . MatrixLineToString ( shortest ) ) ) + "\tBest<seq2seq4repair_space>Distance:\t" ) + ( TSPSolver . threadablePermuteValue ( shortest , start ) ) ) ) ; System . out . println ( ( "Run<seq2seq4repair_space>time<seq2seq4repair_space>in<seq2seq4repair_space>milliseconds:<seq2seq4repair_space>" + ( TSPSolver . runTime ) ) ) ; System . out . println ( ( "hh:mm:ss<seq2seq4repair_space>" + ( String . format ( "%02d:%02d:%02d" , TimeUnit . MILLISECONDS . toHours ( TSPSolver . runTime ) , ( ( TimeUnit . MILLISECONDS . toMinutes ( TSPSolver . runTime ) ) - ( TimeUnit . HOURS . toMinutes ( TimeUnit . MILLISECONDS . toHours ( TSPSolver . runTime ) ) ) ) , ( ( TimeUnit . MILLISECONDS . toSeconds ( TSPSolver . runTime ) ) - ( TimeUnit . MINUTES . toSeconds ( TimeUnit . MILLISECONDS . toMinutes ( TSPSolver . runTime ) ) ) ) ) ) ) ) ; } public int [ ] solve ( ) { } public static boolean symmetryCheck ( int [ ] [ ] unknownMatrix ) { } public static int [ ] threadLaunchingPermuteFinder ( ) { } public static int lowEstimateEval ( int [ ] [ ] evalMatrix ) { } public static int [ ] threadablePermuteFinding ( int [ ] [ ] clonedMatrix , int [ ] initial , int estimate , int sentinelIndex ) { } public static int [ ] threadablePermuteBranchBound ( int [ ] sortable , int [ ] [ ] matrix , int estimate ) { } public static int threadablePermuteValue ( int [ ] permute , int [ ] [ ] matrix ) { } public static int [ ] getLexes ( int [ ] currentPermute ) { } public static String MatrixLineToString ( int [ ] matrixJumps ) { } public static int [ ] [ ] StringToIntMatrix ( String matrixString ) { } public static String fileReadIn ( ) throws FileNotFoundException { } public static String print ( int [ ] array ) { } public static int [ ] next_permutation ( int [ ] array ) { } public static String printArray ( int [ ] array ) { } public static void insertionSort ( int [ ] permute , int position ) { } public static void upInsertionSort ( int [ ] permute , int position ) { } public static void bubbleSort ( int [ ] a , int position ) { } public static void swap ( int [ ] array , int x , int y ) { } }

Fix:
firstEstimate = TSPSolver . lowEstimateEval ( start ) ;