Index: /liacs/nc/laser-pulse-shaping/SHG.m
===================================================================
--- /liacs/nc/laser-pulse-shaping/SHG.m	(revision 27)
+++ /liacs/nc/laser-pulse-shaping/SHG.m	(revision 27)
@@ -0,0 +1,44 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% This function calculates the Second Harmonic Generation
+% of a Gaussian of frequencies with a given phase function.
+%
+%    phi - an input COLUMN vector, containing the phase function.
+%    SHG - the output of the calculation; scalar.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+function [SHG] = SHG(phi);
+
+%constant for consistency with the Fortran Calculation...
+c_fortran = 153.7687;
+
+% Generate the Gaussian and the phase function consistently.
+Np = length(phi(:,1));
+Nv = 4000;
+v = linspace(-300,300,Nv); %Linearly Spaced Vector
+G = 40;
+Ain = exp(-(v/G).^2); %The Gaussian of Frequencies
+
+%Distribute the phase function according to the desired resolution
+step = round((2600-1400)/Np);
+step = step + (step==1);
+phase = zeros(1,Nv);
+k = 1;
+for j = 1400:step:2600-step+1,
+    phase([j:j+step-1]) = phi(k);
+    if (k < Np)
+        k = k+1;
+    else
+        k = Np;
+    end
+end
+    % *** The Core: SHG *** %
+
+%Fourier Transform with phase shift (phi) on the Gaussian *Ain*
+E_t = fftshift(ifft(fftshift(exp(i*phase).*Ain)));
+
+%plot(abs(E_t));
+%Integrate the result to yield the SHG
+SHG = sum(abs(E_t).^4)/c_fortran;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%% E O F %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Index: /liacs/nc/low-correlation/Makefile
===================================================================
--- /liacs/nc/low-correlation/Makefile	(revision 26)
+++ /liacs/nc/low-correlation/Makefile	(revision 27)
@@ -1,4 +1,4 @@
 BIN=main
-CFLAGS="-fnested-functions"
+CFLAGS=-lm
 
 all: $(BIN)
Index: /liacs/nc/low-correlation/autocorrelation.m
===================================================================
--- /liacs/nc/low-correlation/autocorrelation.m	(revision 27)
+++ /liacs/nc/low-correlation/autocorrelation.m	(revision 27)
@@ -0,0 +1,24 @@
+% An objective function for the low-autocorrelation problem.
+% Author: Ofer M. Shir, 2004; oshir@liacs.nl.
+%-----------------------------------------------------------------------
+function [f] = autocorrelation(pop)
+% Given a population of binary sequences, this function calculates 
+% the merit function according to the formula specified in the exercise description.
+% The input pop is the given matrix.
+% The output f is the merit factor calculated (row vector).
+
+n = size(pop,1);
+m = size(pop,2);
+E = zeros(1,m);
+
+% Calculated efficiently in a matrix-notation; auxilary matrices - Y1,Y2 - are
+% initialized in every iteration. They are shifted form of the original y vectors. 
+% The diaganol of the dot-squared Y2*Y1 matrix is exactly the inner sum of merit function.
+for k=1:n-1
+    Y1=pop(1:n-k,:);
+    Y2=pop(k+1:n,:)';
+    E=E+((diag(Y2*Y1)).^2)';
+end
+
+% The output:
+f = (n*n*ones(1,m))./(2*E);
Index: /liacs/nc/low-correlation/main.c
===================================================================
--- /liacs/nc/low-correlation/main.c	(revision 26)
+++ /liacs/nc/low-correlation/main.c	(revision 27)
@@ -9,7 +9,8 @@
 #include <stdlib.h>
 #include <math.h>
+
 int main(int argc, char *argv[]) {
 
-const int SIZE = 20;
+const int SIZE = 50;
 int * signal = malloc(SIZE * sizeof(int));
 int e_total, e_sub;
Index: /liacs/nc/traveling-salesman/lu980.m
===================================================================
--- /liacs/nc/traveling-salesman/lu980.m	(revision 27)
+++ /liacs/nc/traveling-salesman/lu980.m	(revision 27)
@@ -0,0 +1,992 @@
+function x = lu980()
+% NAME : lu980
+% COMMENT : 980 locations in Luxembourg
+% COMMENT : Derived from National Imagery and Mapping Agency data
+% TYPE : TSP
+% DIMENSION : 980
+% EDGE_WEIGHT_TYPE : EUC_2D
+% NODE_COORD_SECTION
+x = [
+1 49525.5556 5940.5556
+2 49525.5556 5940.5556
+3 49738.8889 6345.0000
+4 49608.3333 6405.8333
+5 49796.6667 6155.5556
+6 49828.6111 5764.7222
+7 49757.7778 6353.3333
+8 49716.3889 6490.0000
+9 49533.3333 6316.6667
+10 49716.3889 6490.0000
+11 49616.6667 6233.3333
+12 49533.3333 6316.6667
+13 49501.3889 6352.7778
+14 50053.3333 5919.1667
+15 49967.7778 5890.2778
+16 50053.3333 5919.1667
+17 49623.6111 6136.3889
+18 49650.0000 6050.0000
+19 49968.8889 5931.9444
+20 49988.8889 5999.1667
+21 49988.8889 5999.1667
+22 50140.5556 6023.8889
+23 49650.0000 6050.0000
+24 49968.8889 5931.9444
+25 49938.6111 6156.1111
+26 49850.0000 6116.6667
+27 49541.3889 6021.6667
+28 49750.0000 6200.0000
+29 49719.7222 6200.0000
+30 49511.1111 5873.8889
+31 50053.3333 5919.1667
+32 50155.5556 6053.3333
+33 50155.5556 6053.3333
+34 49816.9444 6088.0556
+35 49888.0556 6067.7778
+36 49523.8889 6342.2222
+37 49538.0556 6284.1667
+38 50137.2222 6075.0000
+39 49566.6667 6116.6667
+40 49623.6111 6136.3889
+41 49600.0000 6150.0000
+42 49866.6667 6216.6667
+43 49866.6667 6216.6667
+44 49963.6111 6124.1667
+45 49540.8333 6200.8333
+46 49833.3333 6382.7778
+47 50104.4444 5946.1111
+48 49963.6111 6124.1667
+49 49972.7778 5941.9444
+50 50038.3333 5989.4444
+51 49691.3889 6388.3333
+52 49816.6667 6250.0000
+53 49816.6667 6250.0000
+54 49623.6111 6136.3889
+55 49944.1667 5785.8333
+56 49710.0000 6500.2778
+57 49854.4444 6095.0000
+58 49800.0000 5866.6667
+59 49944.1667 5785.8333
+60 49658.3333 6137.2222
+61 49926.6667 6173.6111
+62 49555.0000 6287.5000
+63 49788.8889 6286.6667
+64 49816.6667 6300.0000
+65 49985.2778 6126.6667
+66 49985.2778 6126.6667
+67 49836.6667 5906.3889
+68 49803.0556 6000.0000
+69 49935.0000 6208.8889
+70 49511.1111 5873.8889
+71 49769.7222 5982.2222
+72 50075.5556 6046.6667
+73 50001.6667 6145.5556
+74 50121.1111 6000.2778
+75 49628.6111 6278.0556
+76 49717.7778 6010.2778
+77 49717.7778 6010.2778
+78 50064.4444 5883.0556
+79 50121.1111 6000.2778
+80 50046.1111 5878.0556
+81 50064.4444 5883.0556
+82 49570.8333 6280.5556
+83 49960.2778 5860.8333
+84 49916.6667 5783.3333
+85 49916.6667 5783.3333
+86 49894.4444 6163.6111
+87 49700.0000 6433.3333
+88 49475.8333 6042.2222
+89 49950.5556 5796.1111
+90 49897.5000 6183.3333
+91 49911.3889 5995.5556
+92 49561.9444 6221.6667
+93 49903.0556 5780.0000
+94 49903.0556 5780.0000
+95 49620.5556 6073.3333
+96 49967.2222 6167.7778
+97 49967.2222 6167.7778
+98 50078.8889 5958.0556
+99 49676.9444 6123.8889
+100 49696.1111 5920.2778
+101 49811.3889 6478.3333
+102 49661.3889 5919.1667
+103 49866.6667 6216.6667
+104 49536.3889 6029.4444
+105 49830.0000 6171.9444
+106 49816.6667 5866.6667
+107 49562.7778 6364.4444
+108 49581.3889 5966.9444
+109 49965.0000 5826.6667
+110 49965.0000 5826.6667
+111 49525.5556 5940.5556
+112 49701.1111 5967.2222
+113 49628.0556 6104.4444
+114 49701.1111 5967.2222
+115 50010.5556 6026.6667
+116 49701.1111 5967.2222
+117 49628.0556 6104.4444
+118 49641.9444 6239.4444
+119 50018.0556 5948.8889
+120 49853.0556 6187.2222
+121 49716.6667 6133.3333
+122 49830.5556 5854.4444
+123 49830.5556 5854.4444
+124 49722.7778 5927.5000
+125 49511.6667 6356.9444
+126 49511.6667 6356.9444
+127 49746.1111 5971.9444
+128 49716.6667 6216.6667
+129 49620.5556 6268.6111
+130 49797.7778 6159.1667
+131 49605.8333 6258.8889
+132 49582.5000 5956.3889
+133 49744.1667 6170.8333
+134 49718.8889 6092.2222
+135 49683.3333 5950.0000
+136 50181.6667 6025.2778
+137 49933.0556 6063.6111
+138 49990.5556 5857.5000
+139 49578.3333 6058.8889
+140 49578.3333 6058.8889
+141 49990.5556 5857.5000
+142 49716.6667 6133.3333
+143 50010.2778 5852.2222
+144 49506.3889 6012.7778
+145 49830.5556 6098.6111
+146 49590.0000 6316.1111
+147 49590.0000 6316.1111
+148 49471.6667 6365.8333
+149 49775.0000 6360.5556
+150 49893.6111 6044.7222
+151 49792.2222 5975.8333
+152 49804.1667 6253.8889
+153 49548.0556 5928.8889
+154 50099.4444 5997.5000
+155 49548.0556 5928.8889
+156 49613.3333 6218.8889
+157 49695.2778 5870.5556
+158 49727.2222 5986.3889
+159 49695.2778 5870.5556
+160 50080.0000 5975.5556
+161 49460.8333 6033.0556
+162 49460.8333 6033.0556
+163 49955.8333 5924.7222
+164 49786.6667 6096.1111
+165 49797.7778 6504.1667
+166 49786.6667 6096.1111
+167 49662.5000 6302.7778
+168 49691.9444 6002.2222
+169 49794.4444 5821.6667
+170 49794.4444 5821.6667
+171 49662.5000 6302.7778
+172 49866.9444 5773.3333
+173 49866.9444 5773.3333
+174 49834.7222 5742.7778
+175 49622.7778 6107.7778
+176 49741.6667 6114.4444
+177 49548.8889 6317.2222
+178 49546.3889 5856.3889
+179 49548.8889 6317.2222
+180 49542.2222 6150.0000
+181 49567.7778 6285.0000
+182 49567.7778 6285.0000
+183 49574.7222 6034.7222
+184 49567.7778 6285.0000
+185 50036.6667 6131.1111
+186 50055.8333 6083.6111
+187 49531.1111 5847.2222
+188 49682.5000 6289.1667
+189 49691.9444 6002.2222
+190 49779.7222 5935.2778
+191 49546.3889 5840.8333
+192 49751.6667 5957.5000
+193 49734.1667 6319.4444
+194 49916.9444 6011.9444
+195 49850.2778 5901.3889
+196 50080.0000 5975.5556
+197 50057.7778 6037.5000
+198 49746.6667 6260.2778
+199 49545.0000 6366.9444
+200 49488.6111 6351.6667
+201 49868.6111 6267.7778
+202 49797.2222 5953.8889
+203 49773.6111 5928.0556
+204 49765.5556 5890.8333
+205 49765.5556 5890.8333
+206 49765.5556 5890.8333
+207 49960.2778 5860.8333
+208 49533.3333 6316.6667
+209 49562.5000 6008.8889
+210 49749.7222 6083.0556
+211 49749.7222 6083.0556
+212 49562.5000 6008.8889
+213 49656.9444 6233.6111
+214 49656.9444 6233.6111
+215 49830.8333 5845.0000
+216 49960.8333 6143.0556
+217 49616.6667 6166.6667
+218 49717.5000 6120.2778
+219 49717.5000 6120.2778
+220 49801.6667 5939.1667
+221 49673.3333 6400.8333
+222 49673.3333 6400.8333
+223 49536.3889 6029.4444
+224 49960.2778 5860.8333
+225 49791.1111 5934.7222
+226 49770.2778 6109.1667
+227 49770.2778 6109.1667
+228 49549.4444 6000.2778
+229 49994.4444 6013.0556
+230 50012.7778 6091.3889
+231 49916.6667 6000.0000
+232 49916.6667 6000.0000
+233 49616.6667 6133.3333
+234 49916.6667 6000.0000
+235 49770.2778 6109.1667
+236 49779.7222 5809.4444
+237 49558.3333 5880.5556
+238 49558.3333 5880.5556
+239 49811.6667 5765.8333
+240 49524.4444 6129.7222
+241 50107.2222 6007.7778
+242 49778.8889 6441.3889
+243 49783.8889 5904.4444
+244 49657.2222 6000.2778
+245 49668.3333 6330.2778
+246 49676.1111 6315.5556
+247 49616.6667 6266.6667
+248 49596.3889 6260.0000
+249 50016.6667 5860.8333
+250 49950.0000 6066.6667
+251 49833.3333 6100.0000
+252 49730.2778 5843.8889
+253 49833.3333 6016.6667
+254 49513.6111 5896.1111
+255 49577.5000 5910.8333
+256 49777.5000 6150.5556
+257 49848.0556 6035.5556
+258 50007.2222 6146.6667
+259 49646.6667 6400.5556
+260 49768.6111 5820.0000
+261 50156.6667 5978.6111
+262 49653.6111 6241.1111
+263 49941.3889 5882.7778
+264 49675.2778 6008.8889
+265 49786.9444 6174.7222
+266 49789.1667 5857.7778
+267 49509.1667 6056.1111
+268 49979.7222 5910.8333
+269 49742.2222 5926.1111
+270 49947.5000 5979.1667
+271 49701.6667 5916.3889
+272 49969.1667 5923.0556
+273 50011.6667 5843.6111
+274 49933.3333 6066.6667
+275 49833.3333 6100.0000
+276 49755.2778 5912.2222
+277 49833.3333 6016.6667
+278 49536.1111 5893.0556
+279 49567.5000 5910.2778
+280 49855.5556 6047.2222
+281 49631.3889 6403.6111
+282 49758.3333 5826.9444
+283 50145.8333 5983.8889
+284 49883.3333 6200.0000
+285 49647.5000 6260.0000
+286 49877.5000 5887.2222
+287 50080.5556 5921.6667
+288 49900.0000 5950.0000
+289 49700.0000 5900.0000
+290 49616.6667 6233.3333
+291 49566.6667 5933.3333
+292 49619.4444 6240.0000
+293 49616.3889 6156.6667
+294 49623.6111 6136.3889
+295 50028.8889 6066.6667
+296 49855.5556 6047.2222
+297 49789.1667 5857.7778
+298 49948.3333 6129.4444
+299 49629.1667 6267.5000
+300 50033.6111 6038.6111
+301 49693.8889 6442.2222
+302 49784.7222 6310.8333
+303 49680.2778 6130.0000
+304 49631.6667 6119.1667
+305 49680.2778 6130.0000
+306 49585.2778 6255.5556
+307 49733.3333 6216.6667
+308 49700.0000 6116.6667
+309 49738.3333 6500.0000
+310 49748.8889 6106.1111
+311 49533.0556 5988.3333
+312 49505.0000 6281.1111
+313 49533.0556 5988.3333
+314 49746.1111 6465.0000
+315 49867.7778 6239.4444
+316 49768.0556 6116.6667
+317 49738.3333 6500.0000
+318 49866.6667 5833.3333
+319 49866.6667 5833.3333
+320 49818.6111 6020.2778
+321 49818.6111 6020.2778
+322 49818.6111 6020.2778
+323 49900.0000 6091.9444
+324 49761.6667 6188.8889
+325 49833.8889 6007.5000
+326 49833.8889 6007.5000
+327 49696.1111 6481.3889
+328 49954.7222 6106.9444
+329 49871.9444 5972.5000
+330 49954.7222 6106.9444
+331 49871.9444 5972.5000
+332 49748.8889 6106.1111
+333 49603.3333 6095.5556
+334 49962.5000 5981.6667
+335 49962.5000 5981.6667
+336 49962.5000 5981.6667
+337 49816.6667 5866.6667
+338 49962.5000 5981.6667
+339 49650.8333 6303.6111
+340 49691.1111 6059.1667
+341 49572.7778 6248.6111
+342 49801.9444 6218.3333
+343 50040.8333 6017.5000
+344 49923.3333 5872.2222
+345 50040.8333 6017.5000
+346 49923.3333 5872.2222
+347 49600.0000 6250.0000
+348 49883.3333 5900.0000
+349 50117.5000 5992.7778
+350 49930.8333 6037.2222
+351 49900.0000 6209.1667
+352 49866.9444 5773.3333
+353 49954.7222 6106.9444
+354 50053.3333 6061.9444
+355 49710.0000 6061.6667
+356 50051.6667 6074.7222
+357 49702.7778 6426.3889
+358 49627.5000 6023.3333
+359 49800.0000 5866.6667
+360 49757.7778 6353.3333
+361 49716.6667 6183.3333
+362 49789.4444 5839.7222
+363 49789.4444 5839.7222
+364 49701.6667 5916.3889
+365 49810.5556 5918.6111
+366 49733.3333 6133.3333
+367 49668.3333 6330.2778
+368 49700.0000 5983.3333
+369 49779.7222 5935.2778
+370 49516.6667 6166.6667
+371 49883.3333 6233.3333
+372 49750.0000 5850.0000
+373 49700.0000 6283.3333
+374 49566.6667 5933.3333
+375 49766.6667 6450.0000
+376 49822.2222 5855.8333
+377 49516.6667 5850.0000
+378 49833.3333 6183.3333
+379 49655.5556 6434.4444
+380 49655.5556 6434.4444
+381 49611.6667 6130.0000
+382 49611.6667 6130.0000
+383 49909.4444 5890.8333
+384 50060.0000 5941.9444
+385 49859.4444 5851.1111
+386 49859.4444 5851.1111
+387 49694.7222 6142.5000
+388 49694.7222 6142.5000
+389 49898.8889 6205.2778
+390 49530.2778 6120.2778
+391 49918.6111 6086.6667
+392 49715.8333 6133.6111
+393 49565.8333 5886.6667
+394 49620.8333 6121.6667
+395 49558.8889 5980.5556
+396 50124.4444 6110.0000
+397 49910.0000 5877.5000
+398 49739.7222 5856.6667
+399 49568.3333 6065.2778
+400 49611.6667 6130.0000
+401 50070.0000 5978.0556
+402 49598.6111 6368.0556
+403 49983.6111 6014.4444
+404 49799.4444 6086.1111
+405 49983.6111 6014.4444
+406 49716.1111 6436.3889
+407 50160.8333 6108.8889
+408 49800.0000 6100.0000
+409 49790.0000 6388.3333
+410 50119.1667 6083.3333
+411 49525.0000 5837.5000
+412 49776.9444 6221.1111
+413 49798.6111 5835.2778
+414 49789.4444 5839.7222
+415 49924.4444 6130.2778
+416 49620.8333 6121.6667
+417 49546.3889 5856.3889
+418 49546.3889 5856.3889
+419 49516.6667 5850.0000
+420 49596.6667 5875.8333
+421 49596.6667 5875.8333
+422 49870.5556 5903.0556
+423 49791.9444 6132.7778
+424 49701.6667 5916.3889
+425 49701.6667 5916.3889
+426 49535.5556 6146.9444
+427 49670.0000 5950.0000
+428 49664.4444 6073.0556
+429 49974.7222 6054.1667
+430 49838.0556 5840.2778
+431 49670.0000 5950.0000
+432 49728.3333 6210.2778
+433 49561.1111 6112.2222
+434 50069.4444 6070.5556
+435 50069.4444 6070.5556
+436 49750.2778 6306.1111
+437 49741.9444 6018.6111
+438 50013.3333 5964.7222
+439 49741.9444 6018.6111
+440 50054.7222 6031.3889
+441 49532.5000 6355.2778
+442 50019.4444 5968.0556
+443 49646.3889 5916.3889
+444 49623.8889 6149.4444
+445 49903.3333 6135.0000
+446 49674.7222 6320.5556
+447 49694.4444 6069.4444
+448 49900.8333 6037.2222
+449 49668.3333 6035.8333
+450 49489.1667 6039.7222
+451 49952.7778 6020.0000
+452 49921.3889 5903.0556
+453 49739.4444 5970.5556
+454 49866.6667 6233.3333
+455 49634.4444 6355.8333
+456 49645.0000 5990.8333
+457 49644.4444 5984.4444
+458 49778.3333 5895.0000
+459 50102.7778 6113.0556
+460 49631.3889 5917.7778
+461 49707.2222 6253.0556
+462 49883.3333 6200.0000
+463 49716.6667 6366.6667
+464 49716.6667 6366.6667
+465 49816.6667 5950.0000
+466 49584.1667 6173.6111
+467 49474.4444 6079.4444
+468 49950.5556 5796.1111
+469 49950.5556 5796.1111
+470 49901.6667 5884.7222
+471 49851.9444 6134.7222
+472 49697.5000 6197.5000
+473 49599.7222 6387.7778
+474 49736.1111 5898.6111
+475 50096.1111 6059.1667
+476 49696.6667 6131.6667
+477 49516.9444 6065.0000
+478 50164.7222 6015.0000
+479 50181.6667 6025.2778
+480 50164.7222 6015.0000
+481 50133.3333 6066.6667
+482 49722.5000 5907.2222
+483 49950.0000 5800.0000
+484 49810.0000 5866.6667
+485 49650.8333 6235.0000
+486 49810.0000 5866.6667
+487 49650.8333 6235.0000
+488 50017.7778 6093.3333
+489 49938.6111 6156.1111
+490 49938.6111 6156.1111
+491 49973.0556 6091.6667
+492 49947.2222 6081.6667
+493 49810.5556 5918.6111
+494 49810.5556 5918.6111
+495 49810.5556 5918.6111
+496 50083.3333 6000.0000
+497 49985.0000 6073.3333
+498 49616.3889 5990.2778
+499 49807.2222 5791.6667
+500 49807.2222 5791.6667
+501 49602.5000 6124.1667
+502 50123.6111 6049.4444
+503 49713.0556 6050.8333
+504 49947.2222 6081.6667
+505 49632.5000 6220.8333
+506 50099.7222 5923.3333
+507 49883.8889 6258.0556
+508 49566.6667 5933.3333
+509 49632.5000 6220.8333
+510 49688.6111 5914.7222
+511 49607.2222 5932.2222
+512 49776.3889 6515.2778
+513 49873.0556 5931.1111
+514 49568.0556 6151.3889
+515 49750.2778 6328.6111
+516 49873.0556 5931.1111
+517 49741.6667 6427.7778
+518 49734.4444 6336.1111
+519 49652.7778 6141.3889
+520 49687.2222 6143.6111
+521 49506.6667 6150.5556
+522 49857.2222 5880.5556
+523 49950.5556 5796.1111
+524 49857.2222 5880.5556
+525 49668.6111 6142.2222
+526 50046.1111 5904.1667
+527 49668.6111 6142.2222
+528 50096.1111 6088.0556
+529 49903.6111 5962.2222
+530 49888.8889 5978.8889
+531 49762.5000 6241.3889
+532 49683.3333 5933.3333
+533 49950.0000 6066.6667
+534 49833.3333 6016.6667
+535 49825.0000 5751.1111
+536 49848.0556 6035.5556
+537 49768.6111 5820.0000
+538 49577.5000 5910.8333
+539 50156.6667 5978.6111
+540 49520.8333 6186.6667
+541 49548.6111 6209.1667
+542 49931.3889 5790.0000
+543 49606.9444 6168.6111
+544 50046.1111 5904.1667
+545 49812.5000 6282.5000
+546 49857.2222 5880.5556
+547 49649.4444 5931.6667
+548 49687.7778 6365.5556
+549 49566.6667 5933.3333
+550 49873.0556 5931.1111
+551 50108.0556 5923.3333
+552 49900.0000 5900.0000
+553 49835.0000 6331.3889
+554 49616.6667 6133.3333
+555 49984.4444 5872.5000
+556 49984.4444 5872.5000
+557 49827.7778 5967.2222
+558 49880.2778 6221.9444
+559 49762.5000 6033.8889
+560 50083.3333 6060.0000
+561 49673.3333 6400.8333
+562 49674.7222 6441.9444
+563 49762.5000 6033.8889
+564 49762.5000 6033.8889
+565 49633.3333 6200.0000
+566 49633.3333 6200.0000
+567 49853.0556 5915.8333
+568 49853.0556 5915.8333
+569 49831.9444 6093.0556
+570 49583.8889 6359.1667
+571 49709.7222 5988.3333
+572 49734.7222 6287.2222
+573 49630.8333 5891.3889
+574 49630.8333 5891.3889
+575 49936.9444 6101.6667
+576 49660.2778 5981.6667
+577 49619.1667 6354.4444
+578 49726.3889 6116.9444
+579 49921.6667 5968.3333
+580 49921.6667 5968.3333
+581 49688.8889 6248.3333
+582 49660.2778 5981.6667
+583 49660.2778 5981.6667
+584 49921.6667 5968.3333
+585 49822.2222 5855.8333
+586 50149.1667 6013.3333
+587 50149.1667 6013.3333
+588 49669.7222 5965.2778
+589 49922.5000 6054.1667
+590 49728.8889 6231.9444
+591 50149.1667 6013.3333
+592 49742.2222 6480.0000
+593 49742.2222 6480.0000
+594 49767.2222 6498.8889
+595 49777.7778 6499.4444
+596 49767.2222 6498.8889
+597 49866.9444 6182.5000
+598 49759.1667 6387.7778
+599 49750.0000 6000.0000
+600 49585.5556 6123.0556
+601 49616.6667 5952.5000
+602 49600.0000 6166.6667
+603 49695.2778 5870.5556
+604 50107.2222 6007.7778
+605 49666.6667 6416.6667
+606 49666.6667 6416.6667
+607 49515.0000 6191.6667
+608 49816.6667 5866.6667
+609 49915.5556 6196.1111
+610 50181.6667 6025.2778
+611 49938.6111 6156.1111
+612 49903.6111 5962.2222
+613 49814.1667 5874.7222
+614 49843.0556 6204.1667
+615 49529.4444 6010.8333
+616 49899.1667 5812.7778
+617 49836.1111 5789.1667
+618 49661.6667 6343.6111
+619 49836.1111 5789.1667
+620 49836.1111 5789.1667
+621 49836.1111 5789.1667
+622 50075.2778 6068.8889
+623 50075.2778 6068.8889
+624 49739.7222 6187.2222
+625 49695.2778 5870.5556
+626 49759.1667 6041.1111
+627 49603.6111 5900.8333
+628 49623.8889 6202.7778
+629 49532.5000 6248.3333
+630 49855.5556 6047.2222
+631 49511.1111 5873.8889
+632 49650.0000 6050.0000
+633 49750.0000 6200.0000
+634 49511.1111 5873.8889
+635 49816.6667 6116.6667
+636 49799.4444 6086.1111
+637 49531.1111 5847.2222
+638 49533.3333 6316.6667
+639 49866.6667 5833.3333
+640 49866.9444 5773.3333
+641 49859.4444 5851.1111
+642 49634.4444 6355.8333
+643 49883.3333 6166.6667
+644 49633.3333 6200.0000
+645 49933.3333 5800.0000
+646 49666.6667 6416.6667
+647 49843.0556 6204.1667
+648 49933.3333 5800.0000
+649 50150.0000 6050.0000
+650 49511.1111 5873.8889
+651 49507.5000 6287.5000
+652 49616.6667 6216.6667
+653 49531.1111 5847.2222
+654 49562.7778 6153.8889
+655 50012.7778 6091.3889
+656 49519.7222 6078.3333
+657 49776.9444 6221.1111
+658 49933.3333 6216.6667
+659 49774.1667 5955.5556
+660 49847.5000 6104.1667
+661 49847.5000 6104.1667
+662 49778.8889 6116.6667
+663 50062.7778 6003.6111
+664 49711.3889 6310.5556
+665 49997.7778 5948.8889
+666 49711.3889 6310.5556
+667 49911.3889 5936.3889
+668 49495.8333 5980.5556
+669 49950.5556 5796.1111
+670 49823.0556 5888.3333
+671 49886.1111 5936.6667
+672 49911.3889 5936.3889
+673 49495.8333 5980.5556
+674 49911.3889 5936.3889
+675 49574.4444 6275.5556
+676 49864.7222 6114.7222
+677 49544.4444 6327.5000
+678 49978.0556 5948.6111
+679 49864.7222 6114.7222
+680 49544.4444 6327.5000
+681 49978.0556 5948.6111
+682 49765.8333 6221.9444
+683 49675.5556 6247.2222
+684 49510.2778 5943.6111
+685 49829.4444 6222.7778
+686 49844.4444 6249.7222
+687 49999.4444 5992.7778
+688 49599.7222 6387.7778
+689 50093.6111 5956.6667
+690 50093.6111 5956.6667
+691 49486.9444 6291.6667
+692 49724.7222 5917.7778
+693 49505.2778 6316.3889
+694 49724.7222 5917.7778
+695 49505.2778 6316.3889
+696 49778.3333 5895.0000
+697 49778.3333 5895.0000
+698 49520.0000 6298.3333
+699 49763.8889 5857.2222
+700 49686.6667 6185.2778
+701 49685.5556 5878.6111
+702 49628.8889 6131.9444
+703 49717.5000 5950.0000
+704 49599.7222 6387.7778
+705 50093.6111 5956.6667
+706 50093.6111 5956.6667
+707 49524.1667 5966.1111
+708 49548.8889 6016.9444
+709 49805.5556 6422.2222
+710 49480.5556 6087.5000
+711 49480.5556 6087.5000
+712 50133.6111 6019.1667
+713 50133.6111 6019.1667
+714 50133.6111 6019.1667
+715 49617.2222 6393.8889
+716 50017.7778 6006.1111
+717 50039.1667 6079.7222
+718 50039.1667 6079.7222
+719 50036.1111 6071.3889
+720 50062.2222 5955.8333
+721 50062.2222 5955.8333
+722 49970.0000 5837.2222
+723 49629.7222 6139.1667
+724 50062.2222 5955.8333
+725 49921.1111 6038.3333
+726 49588.3333 5983.3333
+727 49853.6111 6319.1667
+728 49853.6111 6319.1667
+729 49726.1111 5841.1111
+730 49524.1667 5891.3889
+731 49524.1667 5891.3889
+732 49921.1111 6038.3333
+733 49867.7778 6155.8333
+734 49726.1111 5841.1111
+735 49777.5000 6472.2222
+736 49973.0556 6091.6667
+737 50015.0000 5889.7222
+738 49921.1111 6038.3333
+739 49859.1667 5961.3889
+740 50065.5556 5963.8889
+741 50093.6111 5956.6667
+742 49507.5000 6287.5000
+743 49540.8333 6259.7222
+744 49602.2222 5948.3333
+745 49935.2778 5975.8333
+746 49791.9444 6132.7778
+747 50057.7778 5898.0556
+748 49535.5556 6146.9444
+749 49581.9444 6226.6667
+750 49974.7222 6054.1667
+751 49773.0556 6338.3333
+752 49768.6111 5820.0000
+753 49758.3333 5826.9444
+754 49810.2778 6097.2222
+755 49761.9444 6303.3333
+756 49761.9444 6303.3333
+757 50054.7222 6031.3889
+758 50054.7222 6031.3889
+759 49596.6667 5875.8333
+760 49611.3889 6136.1111
+761 49866.6667 6183.3333
+762 49866.6667 6183.3333
+763 49866.6667 6183.3333
+764 50107.2222 6007.7778
+765 49781.1111 6273.6111
+766 49761.6667 6188.8889
+767 49933.3333 6216.6667
+768 49617.2222 6393.8889
+769 49826.9444 6091.3889
+770 49933.3333 6216.6667
+771 49589.4444 6106.9444
+772 49645.0000 5990.8333
+773 49644.4444 5984.4444
+774 49606.9444 6325.8333
+775 49725.5556 5964.4444
+776 49758.0556 6478.6111
+777 49827.2222 5935.8333
+778 49750.8333 6008.3333
+779 49910.0000 6067.2222
+780 49485.2778 6323.0556
+781 49900.8333 5858.6111
+782 49883.0556 6098.8889
+783 49491.1111 6092.5000
+784 49933.8889 5941.9444
+785 49492.7778 6069.4444
+786 49658.3333 6364.7222
+787 49981.6667 5906.1111
+788 49859.4444 5851.1111
+789 49723.6111 6342.5000
+790 49723.6111 6342.5000
+791 49723.6111 6342.5000
+792 49736.1111 6023.0556
+793 49853.0556 6187.2222
+794 49658.3333 6082.2222
+795 49770.8333 6304.1667
+796 49706.6667 6340.5556
+797 49770.8333 6304.1667
+798 50124.1667 6063.6111
+799 49855.5556 5903.6111
+800 49912.5000 6140.0000
+801 49656.6667 6049.7222
+802 50021.3889 5911.3889
+803 50083.8889 5992.5000
+804 49775.2778 6015.5556
+805 49775.2778 6015.5556
+806 49733.3333 6133.3333
+807 49553.8889 6329.1667
+808 49758.0556 6478.6111
+809 49910.0000 6067.2222
+810 49697.7778 6219.7222
+811 49900.8333 5858.6111
+812 49701.3889 6018.8889
+813 49887.7778 5816.3889
+814 49717.7778 6355.0000
+815 49717.7778 6355.0000
+816 49754.1667 6513.8889
+817 49594.4444 6150.0000
+818 49903.6111 5888.0556
+819 49851.6667 5793.3333
+820 49903.6111 5888.0556
+821 50058.3333 6066.3889
+822 49974.1667 5843.8889
+823 49683.0556 6141.6667
+824 49775.2778 6015.5556
+825 49921.9444 5849.4444
+826 49921.9444 5849.4444
+827 49775.2778 6015.5556
+828 50046.3889 5934.1667
+829 50046.3889 5934.1667
+830 50046.3889 5934.1667
+831 49923.3333 5997.5000
+832 50012.2222 6052.7778
+833 50012.2222 6052.7778
+834 50012.2222 6052.7778
+835 49923.3333 5997.5000
+836 49738.3333 6267.2222
+837 49697.2222 6170.5556
+838 50118.0556 5979.1667
+839 49702.7778 6374.7222
+840 49960.2778 6192.2222
+841 49544.4444 6137.7778
+842 49960.2778 6192.2222
+843 49787.5000 6069.4444
+844 50083.3333 6000.0000
+845 49826.9444 6091.3889
+846 49616.6667 6216.6667
+847 49616.6667 6216.6667
+848 49616.6667 6216.6667
+849 49544.4444 6137.7778
+850 50118.8889 6038.6111
+851 49857.5000 5825.0000
+852 49759.1667 6239.7222
+853 49851.6667 5793.3333
+854 49860.2778 6288.0556
+855 49626.3889 6336.9444
+856 49683.3333 6350.0000
+857 49876.6667 6218.0556
+858 49518.6111 6102.7778
+859 49917.2222 6227.7778
+860 49795.2778 5941.1111
+861 49575.8333 5983.8889
+862 49575.8333 5983.8889
+863 49611.1111 6050.0000
+864 49743.8889 6115.0000
+865 49952.2222 5856.1111
+866 49758.3333 6116.9444
+867 49677.7778 6359.4444
+868 49525.0000 6042.2222
+869 49813.6111 6089.1667
+870 49766.6667 5866.6667
+871 49677.7778 6359.4444
+872 49843.6111 6268.0556
+873 49656.9444 6127.5000
+874 49813.6111 6350.2778
+875 49540.2778 6129.1667
+876 49540.2778 6129.1667
+877 49727.2222 6393.8889
+878 49512.7778 5929.4444
+879 49510.2778 5943.6111
+880 49512.7778 5929.4444
+881 50165.5556 6088.8889
+882 49723.3333 6302.5000
+883 49649.1667 6128.3333
+884 49835.8333 6291.6667
+885 49730.5556 5887.2222
+886 49746.1111 6363.6111
+887 49528.0556 6353.8889
+888 49835.8333 6291.6667
+889 49921.9444 5849.4444
+890 49887.7778 5816.3889
+891 49891.9444 6165.2778
+892 49833.3333 6016.6667
+893 49758.3333 5826.9444
+894 49898.3333 5820.2778
+895 49883.3333 5900.0000
+896 49567.5000 5910.2778
+897 50145.8333 5983.8889
+898 50046.1111 5878.0556
+899 49668.3333 6330.2778
+900 49516.6667 5850.0000
+901 50012.7778 6091.3889
+902 49900.0000 6050.0000
+903 50097.2222 5973.0556
+904 49900.0000 6050.0000
+905 49552.7778 6315.8333
+906 49522.7778 6224.7222
+907 49861.3889 5843.8889
+908 49702.5000 6043.3333
+909 49756.3889 6160.8333
+910 49766.6667 5866.6667
+911 49565.0000 6163.6111
+912 49510.5556 6257.2222
+913 49744.1667 6328.3333
+914 49744.1667 6328.3333
+915 49715.5556 6216.6667
+916 49700.0000 5983.3333
+917 49971.1111 6009.7222
+918 50036.6667 5870.8333
+919 49531.1111 5847.2222
+920 49624.4444 6421.6667
+921 49533.3333 5900.0000
+922 49533.6111 6080.8333
+923 49474.4444 6079.4444
+924 49511.1111 5873.8889
+925 49513.6111 5896.1111
+926 49531.1111 5847.2222
+927 49536.1111 5893.0556
+928 49562.5000 6008.8889
+929 49575.8333 5983.8889
+930 49578.3333 6058.8889
+931 49589.4444 6106.9444
+932 49656.6667 6049.7222
+933 49696.1111 5920.2778
+934 49701.6667 5916.3889
+935 49741.9444 6018.6111
+936 49759.1667 6041.1111
+937 49798.6111 5835.2778
+938 49799.4444 6086.1111
+939 49484.7222 6097.7778
+940 49530.8333 6355.0000
+941 49565.0000 6163.6111
+942 49590.0000 6316.1111
+943 49619.4444 6240.0000
+944 49632.5000 6220.8333
+945 49629.1667 6267.5000
+946 49674.7222 6320.5556
+947 49716.3889 6490.0000
+948 49759.1667 6239.7222
+949 49757.7778 6353.3333
+950 49759.1667 6387.7778
+951 49784.7222 6310.8333
+952 49796.6667 6155.5556
+953 49790.0000 6388.3333
+954 49834.7222 5742.7778
+955 49851.9444 6134.7222
+956 49859.4444 5851.1111
+957 49866.9444 5773.3333
+958 49899.1667 5812.7778
+959 49900.8333 5858.6111
+960 49903.6111 5962.2222
+961 49903.3333 6135.0000
+962 49923.0556 5878.6111
+963 49974.1667 5843.8889
+964 49981.6667 5906.1111
+965 50012.7778 6091.3889
+966 50040.8333 6017.5000
+967 50039.1667 6079.7222
+968 50046.1111 5878.0556
+969 50046.3889 5934.1667
+970 50062.2222 5955.8333
+971 50065.5556 5963.8889
+972 50080.5556 5921.6667
+973 50093.6111 5956.6667
+974 50155.5556 6053.3333
+975 50181.6667 6025.2778
+976 50108.0556 5923.3333
+977 49880.2778 6221.9444
+978 49894.4444 6163.6111
+979 49926.6667 6173.6111
+980 49938.6111 6156.1111];
+%EOF
+
+x = [x(:,3) x(:,2)];
Index: /liacs/nc/traveling-salesman/qa194.m
===================================================================
--- /liacs/nc/traveling-salesman/qa194.m	(revision 27)
+++ /liacs/nc/traveling-salesman/qa194.m	(revision 27)
@@ -0,0 +1,206 @@
+function x = qa194()
+% NAME : qa194
+% COMMENT : 194 locations in Qatar
+% COMMENT : Derived from National Imagery and Mapping Agency data
+% TYPE : TSP
+% DIMENSION : 194
+% EDGE_WEIGHT_TYPE : EUC_2D
+% NODE_COORD_SECTION
+x = [
+1 24748.3333 50840.0000
+2 24758.8889 51211.9444
+3 24827.2222 51394.7222
+4 24904.4444 51175.0000
+5 24996.1111 51548.8889
+6 25010.0000 51039.4444
+7 25030.8333 51275.2778
+8 25067.7778 51077.5000
+9 25100.0000 51516.6667
+10 25103.3333 51521.6667
+11 25121.9444 51218.3333
+12 25150.8333 51537.7778
+13 25158.3333 51163.6111
+14 25162.2222 51220.8333
+15 25167.7778 51606.9444
+16 25168.8889 51086.3889
+17 25173.8889 51269.4444
+18 25210.8333 51394.1667
+19 25211.3889 51619.1667
+20 25214.1667 50807.2222
+21 25214.4444 51378.8889
+22 25223.3333 51451.6667
+23 25224.1667 51174.4444
+24 25233.3333 51333.3333
+25 25234.1667 51203.0556
+26 25235.5556 51330.0000
+27 25235.5556 51495.5556
+28 25242.7778 51428.8889
+29 25243.0556 51452.5000
+30 25252.5000 51559.1667
+31 25253.8889 51535.2778
+32 25253.8889 51549.7222
+33 25256.9444 51398.8889
+34 25263.6111 51516.3889
+35 25265.8333 51545.2778
+36 25266.6667 50969.1667
+37 25266.6667 51483.3333
+38 25270.5556 51532.7778
+39 25270.8333 51505.8333
+40 25270.8333 51523.0556
+41 25275.8333 51533.6111
+42 25277.2222 51547.7778
+43 25278.3333 51525.5556
+44 25278.3333 51541.3889
+45 25279.1667 51445.5556
+46 25281.1111 51535.0000
+47 25281.3889 51512.5000
+48 25283.3333 51533.3333
+49 25283.6111 51546.6667
+50 25284.7222 51555.2778
+51 25286.1111 51504.1667
+52 25286.1111 51534.1667
+53 25286.6667 51533.3333
+54 25287.5000 51537.7778
+55 25288.0556 51546.6667
+56 25290.8333 51528.3333
+57 25291.9444 51424.4444
+58 25292.5000 51520.8333
+59 25298.6111 51001.6667
+60 25300.8333 51394.4444
+61 25306.9444 51507.7778
+62 25311.9444 51003.0556
+63 25313.8889 50883.3333
+64 25315.2778 51438.6111
+65 25316.6667 50766.6667
+66 25320.5556 51495.5556
+67 25322.5000 51507.7778
+68 25325.2778 51470.0000
+69 25326.6667 51350.2778
+70 25337.5000 51425.0000
+71 25339.1667 51173.3333
+72 25340.5556 51293.6111
+73 25341.9444 51507.5000
+74 25358.8889 51333.6111
+75 25363.6111 51281.1111
+76 25368.6111 51226.3889
+77 25374.4444 51436.6667
+78 25377.7778 51294.7222
+79 25396.9444 51422.5000
+80 25400.0000 51183.3333
+81 25400.0000 51425.0000
+82 25404.7222 51073.0556
+83 25416.9444 51403.8889
+84 25416.9444 51457.7778
+85 25419.4444 50793.6111
+86 25429.7222 50785.8333
+87 25433.3333 51220.0000
+88 25440.8333 51378.0556
+89 25444.4444 50958.3333
+90 25451.3889 50925.0000
+91 25459.1667 51316.6667
+92 25469.7222 51397.5000
+93 25478.0556 51362.5000
+94 25480.5556 50938.8889
+95 25483.3333 51383.3333
+96 25490.5556 51373.6111
+97 25492.2222 51400.2778
+98 25495.0000 50846.6667
+99 25495.0000 50965.2778
+100 25497.5000 51485.2778
+101 25500.8333 50980.5556
+102 25510.5556 51242.2222
+103 25531.9444 51304.4444
+104 25533.3333 50977.2222
+105 25538.8889 51408.3333
+106 25545.8333 51387.5000
+107 25549.7222 51431.9444
+108 25550.0000 51433.3333
+109 25560.2778 51158.6111
+110 25566.9444 51484.7222
+111 25567.5000 50958.8889
+112 25574.7222 51486.3889
+113 25585.5556 51151.3889
+114 25609.4444 51092.2222
+115 25610.2778 51475.2778
+116 25622.5000 51454.4444
+117 25645.8333 51450.0000
+118 25650.0000 51372.2222
+119 25666.9444 51174.4444
+120 25683.8889 51505.8333
+121 25686.3889 51468.8889
+122 25696.1111 51260.8333
+123 25700.8333 51584.7222
+124 25708.3333 51591.6667
+125 25716.6667 51050.0000
+126 25717.5000 51057.7778
+127 25723.0556 51004.1667
+128 25734.7222 51547.5000
+129 25751.1111 51449.1667
+130 25751.9444 50920.8333
+131 25758.3333 51395.8333
+132 25765.2778 51019.7222
+133 25772.2222 51483.3333
+134 25775.8333 51023.0556
+135 25779.1667 51449.7222
+136 25793.3333 51409.4444
+137 25808.3333 51060.5556
+138 25816.6667 51133.3333
+139 25823.6111 51152.5000
+140 25826.6667 51043.8889
+141 25829.7222 51245.2778
+142 25833.3333 51072.2222
+143 25839.1667 51465.2778
+144 25847.7778 51205.8333
+145 25850.0000 51033.3333
+146 25856.6667 51083.3333
+147 25857.5000 51298.8889
+148 25857.5000 51441.3889
+149 25866.6667 51066.6667
+150 25867.7778 51205.5556
+151 25871.9444 51354.7222
+152 25872.5000 51258.3333
+153 25880.8333 51221.3889
+154 25883.0556 51185.2778
+155 25888.0556 51386.3889
+156 25900.0000 51000.0000
+157 25904.1667 51201.6667
+158 25928.3333 51337.5000
+159 25937.5000 51313.3333
+160 25944.7222 51456.3889
+161 25950.0000 51066.6667
+162 25951.6667 51349.7222
+163 25957.7778 51075.2778
+164 25958.3333 51099.4444
+165 25966.6667 51283.3333
+166 25983.3333 51400.0000
+167 25983.6111 51328.0556
+168 26000.2778 51294.4444
+169 26008.6111 51083.6111
+170 26016.6667 51333.3333
+171 26021.6667 51366.9444
+172 26033.3333 51116.6667
+173 26033.3333 51166.6667
+174 26033.6111 51163.8889
+175 26033.6111 51200.2778
+176 26048.8889 51056.9444
+177 26050.0000 51250.0000
+178 26050.2778 51297.5000
+179 26050.5556 51135.8333
+180 26055.0000 51316.1111
+181 26067.2222 51258.6111
+182 26074.7222 51083.6111
+183 26076.6667 51166.9444
+184 26077.2222 51222.2222
+185 26078.0556 51361.6667
+186 26083.6111 51147.2222
+187 26099.7222 51161.1111
+188 26108.0556 51244.7222
+189 26116.6667 51216.6667
+190 26123.6111 51169.1667
+191 26123.6111 51222.7778
+192 26133.3333 51216.6667
+193 26133.3333 51300.0000
+194 26150.2778 51108.0556];
+%EOF
+
+x = [x(:,3) x(:,2)];
