Files
ortools-clone/ortools/graph
Corentin Le Molgat b027e57e95 dotnet: Remove reference to dotnet release command
- Currently not implemented...

Add abseil patch

- Add patches/absl-config.cmake

Makefile: Add abseil-cpp on unix

- Force abseil-cpp SHA1 to 45221cc
  note: Just before the PR #136 which break all CMake

Makefile: Add abseil-cpp on windows

- Force abseil-cpp SHA1 to 45221cc
  note: Just before the PR #136 which break all CMake

CMake: Add abseil-cpp

- Force abseil-cpp SHA1 to 45221cc
  note: Just before the PR #136 which break all CMake

port to absl: C++ Part

- Fix warning with the use of ABSL_MUST_USE_RESULT
  > The macro must appear as the very first part of a function
    declaration or definition:
    ...
    Note: past advice was to place the macro after the argument list.
  src: dependencies/sources/abseil-cpp-master/absl/base/attributes.h:418
- Rename enum after windows clash
- Remove non compact table constraints
- Change index type from int64 to int in routing library
- Fix file_nonport compilation on windows
- Fix another naming conflict with windows (NO_ERROR is a macro)
- Cleanup hash containers; work on sat internals
- Add optional_boolean sub-proto

Sync cpp examples with internal code
- reenable issue173 after reducing number of loops

port to absl: Python Part

- Add back cp_model.INT32_MIN|MAX for examples

Update Python examples

- Add random_tsp.py
- Run words_square example
- Run magic_square in python tests

port to absl: Java Part

- Fix compilation of the new routing parameters in java
- Protect some code from SWIG parsing

Update Java Examples

port to absl: .Net Part

Update .Net examples

work on sat internals; Add C++ CP-SAT CpModelBuilder API; update sample code and recipes to use the new API; sync with internal code

Remove VS 2015 in Appveyor-CI

- abseil-cpp does not support VS 2015...

improve tables

upgrade C++ sat examples to use the new API; work on sat internals

update license dates

rewrite jobshop_ft06_distance.py to use the CP-SAT solver

rename last example

revert last commit

more work on SAT internals

fix
2018-11-30 14:48:55 +01:00
..
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-13 10:12:02 +01:00
2018-11-27 08:20:58 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2017-06-08 12:48:45 +02:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00
2018-11-10 18:00:53 +01:00

<summary>
This directory contains data structures and algorithms for graph and
network flow problems.

It contains in particular:
- a compact and efficient graph representation (EbertGraph, see ebert_graph.h),
  which is used for most of the algorithms herein, unless specified otherwise.
- well-tuned algorithms (for example shortest paths and Hamiltonian paths.)
- hard-to-find algorithms (Hamiltonian paths, push-relabel flow algorithms.)
- other, more common algorithm, that are useful to use with EbertGraph.
</summary>

Graph representations:
- ebert_graph.h: Entry point for a directed graph class.

- digraph.h: Entry point for a directed graph class. To be deprecated by
  ebert_graph.h.

Paths:
- shortestpaths.h: Entry point for shortest path computations. Includes Dijkstra
  and Bellman-Ford algorithms.

- hamiltonian_path.h: Entry point for computing minimum Hamiltonian paths and
  cycles on directed graphs with costs on arcs, using a dynamic-programming
  algorithm (Does not need ebert_graph.h or digraph.h.)

Graph decompositions:
- connectivity.h: Entry point for computing connected components in an
  undirected graph. (Does not need ebert_graph.h or digraph.h.)

- cliques.h: Entry point for computing maximum cliques and clique covers in a
  directed graph, based on the Bron-Kerbosch algorithm. (Does not need
  ebert_graph.h or digraph.h.)

Flow algorithms:
- linear_assignment.h: Entry point for solving linear sum assignment problems
  (classical assignment problems where the total cost is the sum of the costs
  of each arc used) on directed graphs with arc costs, based on a push-relabel
  algorithm of Goldberg and Kennedy.

- max_flow.h: Entry point for computing maximum flows on directed graphs with
  arc capacities, based on a push-relabel algorithm of Goldberg and Tarjan.

- min_cost_flow.h: Entry point for computing minimun-cost flows on directed
  graphs with arc capacities, arc costs, and supplies/demands at nodes, based on
  a push-relabel algorithm of Goldberg and Tarjan.

- flow.swig: SWIG instructions to wrap the C++ library in Python and Java.

C++ examples are available in the examples directory alongside the
graph directory.

Python examples are available in the python directory alongside the
graph library.

Java examples are available in the examples/com/google/ortools directory.