Data Processing Apparatus for Quadratic Assignment Problem Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for solving quadratic assignment problems (QAPs) require a large number of iterations and memory accesses, leading to significant computational time due to the need for extensive calculations and updates of local fields.

Innovation Solution

A data processing apparatus and method that utilize vector arithmetic operations to calculate changes in the evaluation function based on flow and distance matrices, allowing for efficient swapping of destinations in the matrices to update the assignment state, thereby reducing computational time through state-aligned matrix reordering and parallel tempering techniques.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If Boltzmann machines are used to solve QAP by transforming into Ising model and using Markov-chain Monte Carlo method, then the problem can be solved using neural network approach, but the calculation requires a large number of iterations and memory accesses leading to significant computational time

Engineering Contradiction:
Improveability to solve large-scale discrete optimization problemsVSAvoidcomputational time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent segments the calculation process by separating the evaluation function calculation into distinct components: flow matrix F, distance matrix D, and assignment matrix X. By calculating the product FX and then multiplying with D, the method breaks down the complex evaluation into manageable segments that can be processed more efficiently, reducing the number of iterative calculations needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-calculating and storing the flow matrix F and distance matrix D before the optimization process begins. The assignment matrix X is initialized with a valid assignment state. This preliminary setup eliminates the need to recalculate these fundamental components during each iteration, significantly reducing computational time while maintaining the ability to solve large-scale problems.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If extensive calculations and updates of local fields are performed in each iteration, then the optimization search can proceed thoroughly, but the computational time increases significantly

Engineering Contradiction:
Improveoptimization search thoroughnessVSAvoidcalculation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent uses matrix multiplication to compute the evaluation function as a copy-based operation: E = FXD, where the product FX creates an intermediate representation that is then multiplied with D. This copying approach replaces the need for iterative local field updates with a single matrix operation, maintaining optimization thoroughness while dramatically improving calculation efficiency.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent substitutes the mechanical iterative update process with a mathematical matrix operation. Instead of mechanically updating local fields h_i and energies E_i through multiple iterations, the method uses the closed-form expression E = Σ_i Σ_j F_ij d_φ(i)φ(j) implemented via matrix multiplication FXD. This substitution eliminates the iterative mechanical process while preserving the optimization search capability.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Measurement precision

If the evaluation function is calculated using the formula E=Σ_i Σ_j F_ij d_φ(i)φ(j) with repeated memory accesses, then accurate cost evaluation is achieved, but the number of operations per iteration increases

Engineering Contradiction:
Improveevaluation function accuracyVSAvoidnumber of operations per iteration
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent merges the flow matrix F and distance matrix D calculations into a single matrix multiplication operation FXD. By combining these operations, the method maintains accurate evaluation function calculation while reducing the total number of separate operations needed per iteration. The merging of F and D into the product FX creates a more efficient computational pathway.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent transitions from a double-loop iterative calculation approach to a matrix-based dimensional approach. By representing the evaluation function as E = FXD where F, X, and D are matrices, the method changes the computational dimension from iterative scalar operations to parallel matrix operations. This dimensional change reduces the number of operations per iteration while preserving evaluation accuracy.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS20220414184A1Data processing apparatus and data processing method
Publication Date: 2022.12.29 FUJITSU LTD
  • US20220414184A1 patent drawing
  • US20220414184A1 patent drawing
  • US20220414184A1 patent drawing

AI summary

A storage unit stores a flow matrix representing the flows between a plurality of entities to be assigned to a plurality of destinations, and a distance matrix representing the distances between the plurality of destinations. A processing unit calculates a first change in an evaluation function, which is to be caused by a first assignment change of exchanging the destinations of first and second entities among the plurality of entities, with vector arithmetic operations based on the flow and distance matrices, determines based on the first change whether to accept the first assignment change, and when determining to accept the first assignment change, updates an assignment state and updates the distance matrix by swapping the two columns or two rows (two columns in the example of FIG. 2) of the distance matrix corresponding to the first and second entities.