Skip to content

Commit 0008c67

Browse files
committed
fix scaling method print
1 parent 4c0b571 commit 0008c67

File tree

1 file changed

+31
-8
lines changed

1 file changed

+31
-8
lines changed

highs/pdlp/hipdlp/logger.cc

Lines changed: 31 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,6 @@ void Logger::print_params(const PrimalDualParams& params) {
7171
{RestartStrategy::NO_RESTART, "None"},
7272
{RestartStrategy::FIXED_RESTART, "Fixed"},
7373
{RestartStrategy::ADAPTIVE_RESTART, "Adaptive"}};
74-
std::map<ScalingMethod, std::string> scaling_map = {
75-
{ScalingMethod::NONE, "None"},
76-
{ScalingMethod::RUIZ, "Ruiz"},
77-
{ScalingMethod::POCK_CHAMBOLLE, "Pock-Chambolle"},
78-
{ScalingMethod::L2_NORM, "L2-Norm"},
79-
{ScalingMethod::COMBINED, "Combined"}};
8074
std::map<StepSizeStrategy, std::string> step_size_map = {
8175
{StepSizeStrategy::FIXED, "Fixed"},
8276
{StepSizeStrategy::ADAPTIVE, "Adaptive"},
@@ -92,10 +86,39 @@ void Logger::print_params(const PrimalDualParams& params) {
9286
<< enum_to_string(params.restart_strategy, restart_map);
9387
info(ss.str());
9488
ss.str("");
95-
ss << " - Scaling Method: "
96-
<< "to fix";
89+
90+
std::string scaling_method = "None";
91+
if (params.use_ruiz_scaling && params.use_pc_scaling && params.use_l2_scaling) {
92+
scaling_method = "Combined (Ruiz + PC + L2)";
93+
} else if (params.use_ruiz_scaling && params.use_pc_scaling) {
94+
scaling_method = "Ruiz + Pock-Chambolle";
95+
} else if (params.use_ruiz_scaling && params.use_l2_scaling) {
96+
scaling_method = "Ruiz + L2-Norm";
97+
} else if (params.use_pc_scaling && params.use_l2_scaling) {
98+
scaling_method = "Pock-Chambolle + L2-Norm";
99+
} else if (params.use_ruiz_scaling) {
100+
scaling_method = "Ruiz";
101+
} else if (params.use_pc_scaling) {
102+
scaling_method = "Pock-Chambolle";
103+
} else if (params.use_l2_scaling) {
104+
scaling_method = "L2-Norm";
105+
}
106+
107+
ss << " - Scaling Method: " << scaling_method;
97108
info(ss.str());
98109
ss.str("");
110+
111+
// Optionally, add more details about scaling parameters if any scaling is used
112+
if (params.use_ruiz_scaling) {
113+
ss.str("");
114+
ss << " * Ruiz iterations: " << params.ruiz_iterations;
115+
info(ss.str());
116+
}
117+
if (params.use_pc_scaling) {
118+
ss.str("");
119+
ss << " * PC alpha: " << params.pc_alpha;
120+
info(ss.str());
121+
}
99122
ss << " - Step Size Strategy: "
100123
<< enum_to_string(params.step_size_strategy, step_size_map);
101124
info(ss.str());

0 commit comments

Comments
 (0)