From 4c7e63409d9834b636239004c8419afcafa0f988 Mon Sep 17 00:00:00 2001 From: Alinson S Xavier Date: Wed, 26 May 2021 09:01:30 -0500 Subject: [PATCH] Improve logging --- miplearn/instance/picklegz.py | 10 ++++++---- miplearn/solvers/learning.py | 4 ++++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/miplearn/instance/picklegz.py b/miplearn/instance/picklegz.py index c5956fa..83495e1 100644 --- a/miplearn/instance/picklegz.py +++ b/miplearn/instance/picklegz.py @@ -134,15 +134,17 @@ class PickleGzInstance(Instance): write_pickle_gz(self.instance, self.filename) -def write_pickle_gz(obj: Any, filename: str) -> None: - logger.info(f"Writing: {filename}") +def write_pickle_gz(obj: Any, filename: str, quiet: bool = False) -> None: + if not quiet: + logger.info(f"Writing: {filename}") os.makedirs(os.path.dirname(filename), exist_ok=True) with gzip.GzipFile(filename, "wb") as file: pickle.dump(obj, cast(IO[bytes], file)) -def read_pickle_gz(filename: str) -> Any: - logger.info(f"Reading: {filename}") +def read_pickle_gz(filename: str, quiet: bool = False) -> Any: + if not quiet: + logger.info(f"Reading: {filename}") with gzip.GzipFile(filename, "rb") as file: return pickle.load(cast(IO[bytes], file)) diff --git a/miplearn/solvers/learning.py b/miplearn/solvers/learning.py index ba85427..f64b7fb 100644 --- a/miplearn/solvers/learning.py +++ b/miplearn/solvers/learning.py @@ -184,6 +184,9 @@ class LearningSolver: logger.info("Solving root LP relaxation...") lp_stats = self.internal_solver.solve_lp(tee=tee) stats.update(cast(LearningSolveStats, lp_stats.__dict__)) + logger.info( + "LP relaxation solved in %.2f seconds" % lp_stats.lp_wallclock_time + ) logger.debug("Running after_solve_lp callbacks...") for component in self.components.values(): @@ -247,6 +250,7 @@ class LearningSolver: user_cut_cb=user_cut_cb, lazy_cb=lazy_cb, ) + logger.info("MIP solved in %.2f seconds" % mip_stats.mip_wallclock_time) stats.update(cast(LearningSolveStats, mip_stats.__dict__)) stats["Solver"] = "default" stats["Gap"] = self._compute_gap(