Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Serviced'optimisationlinéaire
Service d'optimisation linéaire, utilisé pour modéliser et résoudre des programmes linéaires et mixtes en nombres entiers. L'exemple ci-dessous résout le programme linéaire suivant:
Deux variables, x et y: 0 ≤ x ≤ 10 0 ≤ y ≤ 5
Contraintes: 0 ≤ 2 * x + 5 * y ≤ 10 0 ≤ 10 * x + 3 * y ≤ 20
Objectif:
Maximiser x + y
constengine=LinearOptimizationService.createEngine();// Add variables, constraints and define the objective using addVariable(),// addConstraint(), etc. Add two variables, 0 <= x <= 10 and 0 <= y <= 5engine.addVariable('x',0,10);engine.addVariable('y',0,5);// Create the constraint: 0 <= 2 * x + 5 * y <= 10letconstraint=engine.addConstraint(0,10);constraint.setCoefficient('x',2);constraint.setCoefficient('y',5);// Create the constraint: 0 <= 10 * x + 3 * y <= 20constraint=engine.addConstraint(0,20);constraint.setCoefficient('x',10);constraint.setCoefficient('y',3);// Set the objective to be x + yengine.setObjectiveCoefficient('x',1);engine.setObjectiveCoefficient('y',1);// Engine should maximize the objective.engine.setMaximization();// Solve the linear programconstsolution=engine.solve();if(!solution.isValid()){Logger.log(`No solution ${solution.getStatus()}`);}else{Logger.log(`Value of x: ${solution.getVariableValue('x')}`);Logger.log(`Value of y: ${solution.getVariableValue('y')}`);}
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2024/12/22 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2024/12/22 (UTC)."],[[["The Linear Optimization Service enables the modeling and resolution of linear and mixed-integer linear programs within Apps Script."],["It provides functionalities to define variables, constraints, and objectives for optimization problems."],["The service utilizes a dedicated engine, created via `createEngine()`, to process and solve the defined linear programs."],["Solutions can be retrieved and assessed for validity, providing values for optimized variables or indicating an infeasible solution."],["Developers can access detailed documentation and examples for utilizing the Linear Optimization Service effectively."]]],["The `LinearOptimizationService` solves linear and mixed-integer linear programs. Key actions include creating an engine via `createEngine()`, adding variables (e.g., 'x', 'y') with bounds using `addVariable()`, and defining constraints with `addConstraint()` and `setCoefficient()`. The objective is set using `setObjectiveCoefficient()`, specifying maximization with `setMaximization()`. Finally, `solve()` computes the solution, and results are accessed via methods such as `getVariableValue()`. The service also includes properties like `Status` and `VariableType`.\n"]]