solver(MPSolver::CreateSolver("GLOP"));
// Create the variables x and y.
MPVariable* const x = solver->MakeNumVar(0.0, 1, "x");
MPVariable* const y = solver->MakeNumVar(0.0, 2, "y");
LOG(INFO) << "Number of variables = " << solver->NumVariables();
// Create a linear constraint, 0 <= x + y <= 2.
MPConstraint* const ct = solver->MakeRowConstraint(0.0, 2.0, "ct");
ct->SetCoefficient(x, 1);
ct->SetCoefficient(y, 1);
LOG(INFO) << "Number of constraints = " << solver->NumConstraints();
// Create the objective function, 3 * x + y.
MPObjective* const objective = solver->MutableObjective();
objective->SetCoefficient(x, 3);
objective->SetCoefficient(y, 1);
objective->SetMaximization();
solver->Solve();
LOG(INFO) << "Solution:" << std::endl;
LOG(INFO) << "Objective value = " << objective->Value();
LOG(INFO) << "x = " << x->solution_value();
LOG(INFO) << "y = " << y->solution_value();
}
} // namespace operations_research
int main() {
operations_research::BasicExample();
return EXIT_SUCCESS;
}
C++ proqramının icrası
Yuxarıdakı proqramı aşağıdakı kimi işlədə bilərsiniz:
Yuxarıdakı kodu kopyalayıb yeni fayla yapışdırın və olaraq qeyd edin program.cc.
OR-Tools quraşdırdığınız qovluğun yuxarı səviyyəsində əmr pəncərəsini açın və daxil edin:
make run SOURCE=relative/path/to/
program.cc
relative/path/to/proqramı saxladığınız qovluğa gedən yol haradadır .
Qeyd: OR-Tools-u quraşdırdığınız kataloqun yuxarı səviyyəsindən yuxarıdakı əmri yerinə yetirməlisiniz.
Proqram məqsəd funksiyasını maksimuma çatdıran xdəyərləri qaytarır :y
Solution:
x = 1.0
y = 1.0
Proqramı işə salmadan tərtib etmək üçün aşağıdakıları daxil edin:
make build SOURCE=relative/path/to/
program.cc