Skip to content

Problem transformation functionality#473

Draft
g-poveda wants to merge 3 commits into
airbus:masterfrom
g-poveda:gpd/transformations
Draft

Problem transformation functionality#473
g-poveda wants to merge 3 commits into
airbus:masterfrom
g-poveda:gpd/transformations

Conversation

@g-poveda
Copy link
Copy Markdown
Collaborator

In this big PR, we add a new functionality around problem transformation.
-The idea is to add an api (in generic_tools/transformation) that is specifically done to transform a problem into another one, keeping either an exact or approximated mapping, and convert also the solution from 1 problem to another one.
-We then build a TransformationSolver class that is a new SolverDO class that take a source problem, a problem transformation and a solver subbrick to build a new solver. In practice it can be used for example to solve a binpack problem using a RCPSP solver.
-We introduce a new api idea to generalize SequentialMetaSolver, by creating a DAG of solver/transformation that can be used to solve a problem, it allows "parallel" solver tries (in different branches of the DAG) even though it's not done in parallel in practice.
-Added transformation for most problem and associated tests.
Replace #466

g-poveda added 3 commits May 13, 2026 21:37
this comes from the observation that many problem are generalisation of the other one (but without python inheritance), so solver from one problem can be used to the other one modulo transformation of the solutions.
We generalize therefore the sequentialmetasolver mecanism to include transformation nodes which transforms problem.
Moreover we can also build any dag of execution of different bricks. The mecanism still will evolve with the different needs or examples we could find in the lib.
@g-poveda g-poveda marked this pull request as draft May 21, 2026 11:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant