//go to: https://www.lutanho.net/goodies/codetester.html //click on: (*)javascript //copy & paste: this text //adapt: m, f1, f2, c1, c2, b1, b2, Demand values //click on: [run] //Instance generator for data form //"Multi-Module Capacitated Lot-Sizing Problem and its Generalizations with Two-Echelons and Piecewise Concave Production Costs" (2019) //by Kartik Kulkarni and Manish Bansal (2019) //available at https://github.com/Bansal-ORGroup/MCLS-LSPC-Data m = 75; f1 = [3006, 3001, 2859, 3070, 2883, 2912, 2926, 3083, 2961, 3053, 3050, 3057, 2971, 2877, 3049, 2986, 2973, 3013, 3118, 2900, 3029, 3012, 2947, 3148, 2853, 2857, 2936, 3011, 3143, 2934, 3092, 2955, 2860, 3027, 3139, 3130, 2872, 2884, 2964, 2957, 2873, 3148, 3147, 2903, 3118, 2917, 3007, 3013, 3012, 3150, 2995, 3135, 3150, 2992, 2850, 2857, 3065, 2864, 3105, 3119, 3019, 3108, 3073, 3054, 3139, 2943, 3124, 3007, 3045, 3004, 3111, 2957, 2920, 3122, 3118]; f2 = [5873, 6016, 6002, 6127, 6099, 6150, 5867, 6035, 5990, 5858, 6156, 5979, 5856, 6113, 5964, 5998, 6081, 6099, 6157, 5982, 6131, 5950, 6154, 5968, 5911, 5955, 5875, 5975, 6007, 5904, 5994, 6192, 6077, 5960, 6091, 5998, 6170, 5895, 5861, 6110, 6176, 5955, 6078, 6022, 6194, 6059, 5936, 6041, 6155, 6116, 6175, 6052, 6157, 5980, 5973, 5870, 5866, 6013, 6099, 6004, 6180, 6078, 6191, 5912, 6045, 5931, 5954, 5943, 6098, 6040, 5984, 6077, 5937, 6108, 5964]; c1 = [0.66, 0.55, 0.69, 0.7, 0.76, 0.79, 0.94, 0.94, 0.99, 0.51, 0.55, 0.96, 0.97, 0.76, 0.56, 0.67, 0.59, 0.76, 0.98, 0.97, 0.85, 0.99, 0.9, 0.81, 0.95, 0.55, 0.51, 0.87, 0.88, 0.5, 0.81, 0.6, 0.95, 0.95, 0.87, 0.77, 0.67, 0.99, 0.79, 0.51, 0.87, 0.62, 0.65, 0.85, 0.59, 0.5, 0.62, 0.62, 0.76, 0.78, 0.90, 0.90, 0.65, 0.62, 0.82, 0.74, 0.66, 0.61, 0.81, 0.73, 0.74, 0.70, 0.87, 0.76, 0.61, 0.67, 0.76, 0.92, 0.98, 0.95, 0.83, 0.85, 0.75, 1.00, 0.84]; c2 = [0.66, 0.55, 0.69, 0.7, 0.76, 0.79, 0.94, 0.94, 0.99, 0.51, 0.55, 0.96, 0.97, 0.76, 0.56, 0.67, 0.59, 0.76, 0.98, 0.97, 0.85, 0.99, 0.9, 0.81, 0.95, 0.55, 0.51, 0.87, 0.88, 0.5, 0.81, 0.6, 0.95, 0.95, 0.87, 0.77, 0.67, 0.99, 0.79, 0.51, 0.87, 0.62, 0.65, 0.85, 0.59, 0.5, 0.62, 0.62, 0.76, 0.78, 0.90, 0.90, 0.65, 0.62, 0.82, 0.74, 0.66, 0.61, 0.81, 0.73, 0.74, 0.70, 0.87, 0.76, 0.61, 0.67, 0.76, 0.92, 0.98, 0.95, 0.83, 0.85, 0.75, 1.00, 0.84]; b1 = 1790; b2 = 3470; Demand = [417, 516, 571, 484, 418, 583, 430, 447, 431, 474, 427, 496, 505, 435, 572, 507, 496, 468, 589, 418, 425, 501, 513, 428, 425, 441, 467, 491, 468, 569, 493, 510, 440, 487, 503, 538, 544, 457, 581, 468, 474, 489, 439, 564, 567, 463, 553, 582, 458, 545, 561, 482, 566, 457, 591, 532, 527, 471, 551, 592, 559, 450, 583, 554, 537, 428, 515, 448, 471, 597, 574, 466, 541, 536, 581]; var h=0.05; //holding cost var win=window.open('',''); with(win.document) { open(); write('
');
  write('//Input data for Online Solver at https://www.lutanho.net/plt/lotsize.html
') write('//All costs multiplied by 100 to get integer values
') write('//I u_0 y_0 y_I
') write(' '+m+'; 0; 0; 0;
') write('startup x_min fix var up fix var x_max demand y_min fix var y_max
'); for (ii=0; ii'); write('
'); close(); }