converge-optimization 0.1.1

Optimization algorithms for converge.zone - Rust reimplementation of OR-Tools subset
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
# This file is auto generated by bazel2cmake.py from examples/cpp/BUILD.bazel
# Don't edit manually, your changes will be lost.
# You can update this file by running:
#   python3 tools/build/bazel2cmake.py examples/cpp/BUILD.bazel

ortools_cxx_binary(
  NAME bzl_cc_example_binpacking_2d_sat
  SOURCES binpacking_2d_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_binpacking_2d_sat_class01_instance2_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/binpacking_2d_sat_class01_instance2_test.bintest
  ENVIRONMENT
    BINTEST_binpacking_2d_sat=$<TARGET_FILE:bzl_cc_example_binpacking_2d_sat>
    BINTEST_Class_01.2bp=${CMAKE_SOURCE_DIR}/ortools/packing/testdata/Class_01.2bp
)

ortools_cxx_library(
  NAME bzl_cc_example_cgc
  SOURCES
    cgc.cc
    cgc.h
    cgc_data.h
  TYPE SHARED
)

ortools_cxx_binary(
  NAME bzl_cc_example_cgc_main
  SOURCES cgc_main.cc
  LINK_LIBRARIES bzl_cc_example_cgc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_cgc_test_solution
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/cgc_test_solution.bintest
  ENVIRONMENT
    BINTEST_cgc_main=$<TARGET_FILE:bzl_cc_example_cgc_main>
    BINTEST_1.in=${CMAKE_CURRENT_SOURCE_DIR}/testdata/cgc/1.in
    BINTEST_2.in=${CMAKE_CURRENT_SOURCE_DIR}/testdata/cgc/2.in
    BINTEST_3.in=${CMAKE_CURRENT_SOURCE_DIR}/testdata/cgc/3.in
    BINTEST_cgcut1.in=${CMAKE_CURRENT_SOURCE_DIR}/testdata/cgc/cgcut1.in
    BINTEST_cgcut2.in=${CMAKE_CURRENT_SOURCE_DIR}/testdata/cgc/cgcut2.in
    BINTEST_cgcut3.in=${CMAKE_CURRENT_SOURCE_DIR}/testdata/cgc/cgcut3.in
)

ortools_cxx_binary(
  NAME bzl_cc_example_constraint_programming_cp
  SOURCES constraint_programming_cp.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_constraint_programming_cp_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/constraint_programming_cp_test.bintest
  ENVIRONMENT BINTEST_constraint_programming_cp=$<TARGET_FILE:bzl_cc_example_constraint_programming_cp>
)

ortools_cxx_binary(
  NAME bzl_cc_example_costas_array_sat
  SOURCES costas_array_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_costas_array_sat_model1_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/costas_array_sat_model1_test.bintest
  ENVIRONMENT BINTEST_costas_array_sat=$<TARGET_FILE:bzl_cc_example_costas_array_sat>
)

ortools_cxx_bintest(
  NAME bzl_cc_example_costas_array_sat_model2_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/costas_array_sat_model2_test.bintest
  ENVIRONMENT BINTEST_costas_array_sat=$<TARGET_FILE:bzl_cc_example_costas_array_sat>
)

ortools_cxx_bintest(
  NAME bzl_cc_example_costas_array_sat_model3_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/costas_array_sat_model3_test.bintest
  ENVIRONMENT BINTEST_costas_array_sat=$<TARGET_FILE:bzl_cc_example_costas_array_sat>
)

ortools_cxx_binary(
  NAME bzl_cc_example_cryptarithm_sat
  SOURCES cryptarithm_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_cryptarithm_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/cryptarithm_sat_test.bintest
  ENVIRONMENT BINTEST_cryptarithm_sat=$<TARGET_FILE:bzl_cc_example_cryptarithm_sat>
)

ortools_cxx_binary(
  NAME bzl_cc_example_dobble_ls
  SOURCES dobble_ls.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_dobble_ls_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/dobble_ls_test.bintest
  ENVIRONMENT BINTEST_dobble_ls=$<TARGET_FILE:bzl_cc_example_dobble_ls>
)

ortools_cxx_binary(
  NAME bzl_cc_example_golomb_sat
  SOURCES golomb_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_golomb_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/golomb_sat_test.bintest
  ENVIRONMENT BINTEST_golomb_sat=$<TARGET_FILE:bzl_cc_example_golomb_sat>
)

ortools_cxx_binary(
  NAME bzl_cc_example_knapsack_2d_sat
  SOURCES knapsack_2d_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_knapsack_2d_sat_class01_instance2_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/knapsack_2d_sat_class01_instance2_test.bintest
  ENVIRONMENT
    BINTEST_knapsack_2d_sat=$<TARGET_FILE:bzl_cc_example_knapsack_2d_sat>
    BINTEST_Class_01.2bp=${CMAKE_SOURCE_DIR}/ortools/packing/testdata/Class_01.2bp
)

ortools_cxx_binary(
  NAME bzl_cc_example_jobshop_sat
  SOURCES jobshop_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_jobshop_sat_ft06
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/jobshop_sat_ft06.bintest
  ENVIRONMENT
    BINTEST_jobshop_sat=$<TARGET_FILE:bzl_cc_example_jobshop_sat>
    BINTEST_ft06=${CMAKE_SOURCE_DIR}/ortools/scheduling/testdata/ft06
)

ortools_cxx_binary(
  NAME bzl_cc_example_magic_sequence_sat
  SOURCES magic_sequence_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_magic_sequence_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/magic_sequence_sat_test.bintest
  ENVIRONMENT BINTEST_magic_sequence_sat=$<TARGET_FILE:bzl_cc_example_magic_sequence_sat>
)

ortools_cxx_binary(
  NAME bzl_cc_example_multi_knapsack_sat
  SOURCES multi_knapsack_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_multi_knapsack_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/multi_knapsack_sat_test.bintest
  ENVIRONMENT BINTEST_multi_knapsack_sat=$<TARGET_FILE:bzl_cc_example_multi_knapsack_sat>
)

ortools_cxx_binary(
  NAME bzl_cc_example_shift_minimization_sat
  SOURCES shift_minimization_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_shift_minimization_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/shift_minimization_sat_test.bintest
  ENVIRONMENT
    BINTEST_shift_minimization_sat=$<TARGET_FILE:bzl_cc_example_shift_minimization_sat>
    BINTEST_shift_minimization.dat=${CMAKE_CURRENT_SOURCE_DIR}/testdata/shift_minimization.dat
)

ortools_cxx_binary(
  NAME bzl_cc_example_weighted_tardiness_sat
  SOURCES weighted_tardiness_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_weighted_tardiness_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/weighted_tardiness_sat_test.bintest
  ENVIRONMENT
    BINTEST_weighted_tardiness_sat=$<TARGET_FILE:bzl_cc_example_weighted_tardiness_sat>
    BINTEST_wt40.txt=${CMAKE_CURRENT_SOURCE_DIR}/testdata/wt40.txt
)

ortools_cxx_binary(
  NAME bzl_cc_example_magic_square_sat
  SOURCES magic_square_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_magic_square_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/magic_square_sat_test.bintest
  ENVIRONMENT BINTEST_magic_square_sat=$<TARGET_FILE:bzl_cc_example_magic_square_sat>
)

ortools_cxx_binary(
  NAME bzl_cc_example_network_routing_sat
  SOURCES network_routing_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_network_routing_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/network_routing_sat_test.bintest
  ENVIRONMENT BINTEST_network_routing_sat=$<TARGET_FILE:bzl_cc_example_network_routing_sat>
)

ortools_cxx_binary(
  NAME bzl_cc_example_nqueens
  SOURCES nqueens.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_nqueens_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/nqueens_test.bintest
  ENVIRONMENT BINTEST_nqueens=$<TARGET_FILE:bzl_cc_example_nqueens>
)

ortools_cxx_binary(
  NAME bzl_cc_example_sports_scheduling_sat
  SOURCES sports_scheduling_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_sports_scheduling_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/sports_scheduling_sat_test.bintest
  ENVIRONMENT BINTEST_sports_scheduling_sat=$<TARGET_FILE:bzl_cc_example_sports_scheduling_sat>
)

ortools_cxx_binary(
  NAME bzl_cc_example_pdptw
  SOURCES pdptw.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_pdptw_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/pdptw_test.bintest
  ENVIRONMENT
    BINTEST_pdptw=$<TARGET_FILE:bzl_cc_example_pdptw>
    BINTEST_lc102.txt=${CMAKE_CURRENT_SOURCE_DIR}/testdata/lc102.txt
)

ortools_cxx_bintest(
  NAME bzl_cc_example_pdptw_non_homogenous_fleet_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/pdptw_non_homogenous_fleet_test.bintest
  ENVIRONMENT
    BINTEST_pdptw=$<TARGET_FILE:bzl_cc_example_pdptw>
    BINTEST_lc102.txt=${CMAKE_CURRENT_SOURCE_DIR}/testdata/lc102.txt
)

ortools_cxx_binary(
  NAME bzl_cc_example_random_tsp
  SOURCES random_tsp.cc
)

ortools_cxx_binary(
  NAME bzl_cc_example_integer_programming
  SOURCES integer_programming.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_integer_programming_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/integer_programming_test.bintest
  ENVIRONMENT BINTEST_integer_programming=$<TARGET_FILE:bzl_cc_example_integer_programming>
)

ortools_cxx_binary(
  NAME bzl_cc_example_linear_programming
  SOURCES linear_programming.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_linear_programming_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/linear_programming_test.bintest
  ENVIRONMENT BINTEST_linear_programming=$<TARGET_FILE:bzl_cc_example_linear_programming>
)

ortools_cxx_binary(
  NAME bzl_cc_example_linear_solver_protocol_buffers
  SOURCES linear_solver_protocol_buffers.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_linear_solver_protocol_buffers_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/linear_solver_protocol_buffers_test.bintest
  ENVIRONMENT BINTEST_linear_solver_protocol_buffers=$<TARGET_FILE:bzl_cc_example_linear_solver_protocol_buffers>
)

ortools_cxx_binary(
  NAME bzl_cc_example_strawberry_fields_with_column_generation
  SOURCES strawberry_fields_with_column_generation.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_strawberry_fields_with_column_generation_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/strawberry_fields_with_column_generation_test.bintest
  ENVIRONMENT BINTEST_strawberry_fields_with_column_generation=$<TARGET_FILE:bzl_cc_example_strawberry_fields_with_column_generation>
)

ortools_cxx_library(
  NAME bzl_cc_example_print_dimacs_assignment
  SOURCES print_dimacs_assignment.h
  TYPE INTERFACE
)

ortools_cxx_library(
  NAME bzl_cc_example_parse_dimacs_assignment
  SOURCES parse_dimacs_assignment.h
  TYPE INTERFACE
)

ortools_cxx_binary(
  NAME bzl_cc_example_dimacs_assignment
  SOURCES dimacs_assignment.cc
  LINK_LIBRARIES
    bzl_cc_example_parse_dimacs_assignment
    bzl_cc_example_print_dimacs_assignment
)

ortools_cxx_bintest(
  NAME bzl_cc_example_dimacs_assignment_min_cost_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/dimacs_assignment_min_cost_test.bintest
  ENVIRONMENT
    BINTEST_dimacs_assignment=$<TARGET_FILE:bzl_cc_example_dimacs_assignment>
    BINTEST_dimacs_example.txt=${CMAKE_CURRENT_SOURCE_DIR}/testdata/dimacs_example.txt
)

ortools_cxx_bintest(
  NAME bzl_cc_example_dimacs_assignment_max_cost_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/dimacs_assignment_max_cost_test.bintest
  ENVIRONMENT
    BINTEST_dimacs_assignment=$<TARGET_FILE:bzl_cc_example_dimacs_assignment>
    BINTEST_dimacs_example.txt=${CMAKE_CURRENT_SOURCE_DIR}/testdata/dimacs_example.txt
)

ortools_cxx_binary(
  NAME bzl_cc_example_mps_driver
  SOURCES mps_driver.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_mps_driver_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/mps_driver_test.bintest
  ENVIRONMENT
    BINTEST_mps_driver=$<TARGET_FILE:bzl_cc_example_mps_driver>
    BINTEST_maximization.mps=${CMAKE_SOURCE_DIR}/ortools/linear_solver/testdata/maximization.mps
)

ortools_cxx_binary(
  NAME bzl_cc_example_linear_assignment_api
  SOURCES linear_assignment_api.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_linear_assignment_api_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/linear_assignment_api_test.bintest
  ENVIRONMENT BINTEST_linear_assignment_api=$<TARGET_FILE:bzl_cc_example_linear_assignment_api>
)

ortools_cxx_binary(
  NAME bzl_cc_example_flow_api
  SOURCES flow_api.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_flow_api_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/flow_api_test.bintest
  ENVIRONMENT BINTEST_flow_api=$<TARGET_FILE:bzl_cc_example_flow_api>
)

ortools_cxx_binary(
  NAME bzl_cc_example_max_flow
  SOURCES max_flow.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_max_flow_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/max_flow_test.bintest
  ENVIRONMENT BINTEST_max_flow=$<TARGET_FILE:bzl_cc_example_max_flow>
)

ortools_cxx_binary(
  NAME bzl_cc_example_min_cost_flow
  SOURCES min_cost_flow.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_min_cost_flow_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/min_cost_flow_test.bintest
  ENVIRONMENT BINTEST_min_cost_flow=$<TARGET_FILE:bzl_cc_example_min_cost_flow>
)

ortools_cxx_library(
  NAME bzl_cc_example_fap_parser
  SOURCES
    fap_parser.cc
    fap_parser.h
  TYPE SHARED
)

ortools_cxx_library(
  NAME bzl_cc_example_fap_model_printer
  SOURCES
    fap_model_printer.cc
    fap_model_printer.h
  LINK_LIBRARIES bzl_cc_example_fap_parser
  TYPE SHARED
)

ortools_cxx_library(
  NAME bzl_cc_example_fap_utilities
  SOURCES
    fap_utilities.cc
    fap_utilities.h
  LINK_LIBRARIES bzl_cc_example_fap_parser
  TYPE SHARED
)

ortools_cxx_binary(
  NAME bzl_cc_example_frequency_assignment_problem
  SOURCES frequency_assignment_problem.cc
  LINK_LIBRARIES
    bzl_cc_example_fap_model_printer
    bzl_cc_example_fap_parser
    bzl_cc_example_fap_utilities
)

ortools_cxx_binary(
  NAME bzl_cc_example_qap_sat
  SOURCES qap_sat.cc
)

ortools_cxx_binary(
  NAME bzl_cc_example_slitherlink_sat
  SOURCES slitherlink_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_slitherlink_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/slitherlink_sat_test.bintest
  ENVIRONMENT BINTEST_slitherlink_sat=$<TARGET_FILE:bzl_cc_example_slitherlink_sat>
)

ortools_cxx_binary(
  NAME bzl_cc_example_uncapacitated_facility_location
  SOURCES uncapacitated_facility_location.cc
)

ortools_cxx_binary(
  NAME bzl_cc_example_variable_intervals_sat
  SOURCES variable_intervals_sat.cc
)

ortools_cxx_bintest(
  NAME bzl_cc_example_variable_intervals_sat_test
  SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/variable_intervals_sat_test.bintest
  ENVIRONMENT BINTEST_variable_intervals_sat=$<TARGET_FILE:bzl_cc_example_variable_intervals_sat>
)

ortools_cxx_binary(
  NAME bzl_cc_example_pdlp_solve
  SOURCES pdlp_solve.cc
)