Bulk Constraint Removal in Incremental Simplex Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The incremental simplex method for mathematical optimization is computationally expensive when removing constraints due to the need to undo pivoting operations, which is particularly challenging in scenarios with tens of thousands of constraints that are constantly changing, such as in graphical user interface layout optimization.

Innovation Solution

A method and apparatus that identifies and sorts constraints for bulk removal based on criteria like the number of equations containing each constraint or the time added, allowing for efficient re-sorting and parallel removal of disjoint sets, thereby minimizing the computational cost and improving the speed of finding optimal solutions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the incremental simplex method is used to remove constraints, then the solution can be updated efficiently from an existing solution, but the computational cost becomes expensive when removing constraints due to the need to undo pivoting operations

Engineering Contradiction:
Improvespeed of solution updatingVSAvoidcomputational cost
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

The patent applies preliminary action by pre-processing constraints to identify and organize them into groups that can be removed together. Before actual removal occurs, the system performs preliminary analysis to determine which constraints can be bulk-removed without requiring individual pivot undoing, thus preparing the data structure in advance to enable efficient batch removal operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the constraint removal process into two parts: constraints that can be safely removed in bulk without pivot operations, and constraints that require individual pivot undoing. By segmenting the constraint set and applying different removal strategies to different segments, the system avoids the computational expense of undoing pivots for all constraints while maintaining solution correctness.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If constraints are removed one at a time using the incremental simplex method, then each removal can be handled individually, but the process becomes computationally expensive and slow when dealing with tens of thousands of constraints

Engineering Contradiction:
Improveindividual constraint handlingVSAvoidspeed of constraint removal
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent merges multiple individual constraint removal operations into a single bulk removal operation. By identifying constraints that share common characteristics (such as being part of the same logical group or having similar pivot patterns), the system combines their removal into one operation that avoids repeated pivot undoing, thus dramatically improving speed when dealing with large numbers of constraints.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent changes the parameter of constraint removal from sequential individual operations to parallel bulk operations. By modifying how the removal process is parameterized - allowing multiple constraints to be removed simultaneously with a single pivot undo operation - the system achieves significant speedup while maintaining the correctness of individual constraint handling.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If the simplex algorithm performs pivots on the tableau to solve linear programming problems, then optimal solutions can be found, but the pivoting operations create complexity when constraints need to be removed later

Engineering Contradiction:
Improveoptimality of solutionVSAvoidcomplexity of constraint removal
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary data structure that tracks the relationship between constraints and pivot operations. This intermediary structure allows the system to maintain solution optimality through pivoting while simultaneously providing a mechanism to efficiently reverse or undo pivot operations when constraints are removed, thus reducing the complexity of constraint removal without sacrificing solution quality.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9535721B2Method and apparatus for optimized bulk constraint removal with accumulation
Publication Date: 2017.01.03 APPLE INC
  • US9535721B2 patent drawing
  • US9535721B2 patent drawing
  • US9535721B2 patent drawing

AI summary

A method and apparatus of a device that removes constraints in solving a mathematical programming problem is described. The device identifies a plurality of constraints for bulk removal by postponing execution of constraint removal requests. The device further sorts the plurality of constraints based on a set of criteria to put the plurality of constraints in a sorted order. To sort the plurality of constraints based on the set of criteria, the device determines, for each identified constraint, the number of equations containing the constraint in the mathematical programming problem. The device further sorts the plurality of constraints based on the number of equations determined for each constraint. The device performs bulk constraint removal on the plurality of constraints based on the sorted order.