Skip to content

Commit

Permalink
prepare for minizinc challenge
Browse files Browse the repository at this point in the history
  • Loading branch information
lperron committed Jul 5, 2023
1 parent 14460b3 commit 8241194
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 9 deletions.
1 change: 0 additions & 1 deletion ortools/flatzinc/cp_model_fz_solver.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1313,7 +1313,6 @@ void SolveFzWithCpModelProto(const fz::Model& fz_model,
m.proto.search_strategy().empty() ? "quick_restart" : "fixed");
m.parameters.add_subsolvers("core_or_no_lp"),
m.parameters.add_subsolvers("max_lp");

} else {
m.parameters.add_subsolvers("default_lp");
m.parameters.add_subsolvers(
Expand Down
3 changes: 3 additions & 0 deletions ortools/sat/parameters_validation.cc
Original file line number Diff line number Diff line change
Expand Up @@ -172,18 +172,21 @@ std::string ValidateParameters(const SatParameters& params) {

const auto strategies = GetNamedParameters(params);
for (const std::string& subsolver : params.subsolvers()) {
if (subsolver == "core_or_no_lp") continue;
if (!strategies.contains(subsolver)) {
return absl::StrCat("subsolver \'", subsolver, "\' is not valid");
}
}

for (const std::string& subsolver : params.extra_subsolvers()) {
if (subsolver == "core_or_no_lp") continue;
if (!strategies.contains(subsolver)) {
return absl::StrCat("subsolver \'", subsolver, "\' is not valid");
}
}

for (const std::string& subsolver : params.ignore_subsolvers()) {
if (subsolver == "core_or_no_lp") continue;
if (!strategies.contains(subsolver)) {
return absl::StrCat("subsolver \'", subsolver, "\' is not valid");
}
Expand Down
2 changes: 1 addition & 1 deletion tools/docker/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -709,7 +709,7 @@ distclean: clean
##########################
## MINIZINC CHALLENGE ##
##########################
MZN_TAG=or-tools-minizinc-challenge:2022v1
MZN_TAG=or-tools-minizinc-challenge:2023v1

.PHONY: minizinc-challenge
minizinc-challenge: minizinc-challenge.Dockerfile
Expand Down
16 changes: 9 additions & 7 deletions tools/docker/minizinc-challenge.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM minizinc/mznc2022:latest AS env
FROM minizinc/mznc2023:latest AS env

ENV SRC_GIT_BRANCH main

Expand All @@ -19,19 +19,21 @@ RUN apt update -qq \
ENV CC=gcc-11 CXX=g++-11

# Install CMake 3.25.2
RUN wget -q "https://cmake.org/files/v3.25/cmake-3.25.2-linux-x86_64.sh" \
&& chmod a+x cmake-3.25.2-linux-x86_64.sh \
&& ./cmake-3.25.2-linux-x86_64.sh --prefix=/usr/local/ --skip-license \
&& rm cmake-3.25.2-linux-x86_64.sh
RUN wget -q "https://cmake.org/files/v3.26/cmake-3.26.4-linux-x86_64.sh" \
&& chmod a+x cmake-3.26.4-linux-x86_64.sh \
&& ./cmake-3.26.4-linux-x86_64.sh --prefix=/usr/local/ --skip-license \
&& rm cmake-3.26.4-linux-x86_64.sh

FROM env AS devel
WORKDIR /root
RUN git clone -b "$SRC_GIT_BRANCH" --single-branch https://github.com/google/or-tools

FROM devel AS build
WORKDIR /root/or-tools
RUN make cpp BUILD_PYTHON=OFF BUILD_JAVA=OFF BUILD_DOTNET=OFF USE_SCIP=OFF USE_COINOR=OFF JOBS=8
RUN rm -rf build
RUN cmake -S. -Bbuild -DBUILD_PYTHON=OFF -DBUILD_JAVA=OFF -DBUILD_DOTNET=OFF -DUSE_SCIP=OFF -DUSE_COINOR=OFF -DBUILD_DEPS=ON
RUN cmake --build build --target all -j16

RUN ln -s /root/or-tools/install_make/bin/fzn-ortools /entry_data/fzn-exec
RUN ln -s /root/or-tools/build/bin/fzn-ortools /entry_data/fzn-exec

RUN cp /root/or-tools/ortools/flatzinc/mznlib/*mzn /entry_data/mzn-lib

0 comments on commit 8241194

Please sign in to comment.