An online probabilistic inverse optimization system which infers objectives and constraints in an online fashion from time-varying problem data and corresponding agent decisions, the online probabilistic inverse optimization system comprising:
- a memory storing computer-executable program code;
- a forward optimizer comprising at least one processor configured to execute the program code, wherein the program code is configured to, when executed by the at least one processor, cause the forward optimizer to:
- retrieve the time-varying problem data including objectives, constraints and parameters,
- compute an optimal solution or decision by solving a forward optimization problem based on the retrieved time-varying problem data, and
- output the computed optimal solution;
- and
- an inverse optimizer comprising at least one processor configured to execute the program code, wherein the program code is configured to, when executed by the at least one processor, cause the inverse optimizer to:
- retrieve the agent decisions and the computed optimal solution from the forward optimizer,
- measure a deviation or similarity between the agent's decisions and the computed optimal solution,
- solve an inverse optimization problem formulated as an online maximum likelihood estimation, and
- wherein the inverse optimization problem is solved as an extended online maximum likelihood problem employing Lagrange relaxation and duality gap conditions to update the objectives and constraints,
- output updated objective weights and updated constraints for use by the forward optimizer,
- wherein the forward optimizer and the inverse optimizer iteratively operate to process new time-varying problem data and agent decisions, and
- wherein the forward optimizer uses the updated objective weights and the updated constraints to compute a new optimal solution, thereby improving the accuracy and speed of adapting to changes in the problem data.