# US 2025/0165765 A1 · Combinatorial optimization accelerated by parallel, sparsely communicating, compute-memory integrated hardware

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2025/0165765 A1
- Document ID: US20250165765A1
- Status: Published application
- Kind: A1
- Application number: 18/791,687
- Filed: 2024-08-01
- Published: 2025-05-22
- Earliest claimed: 2024-04-26
- Assignees: Intel Corporation
- Applicants: Intel Corporation
- Inventors: Philipp Stratmann; Alessandro Pierro; Gabriel Andres Fonseca Guerra; Sumedh Risbud; Andreas Wild; Ashish Rao Mangalore
- Web page: https://patentgrep.com/patent/US20250165765A1

## CPC

- G06N 3/065: Analogue means
- G06F 17/18: for evaluating statistical data {, e.g. average values, frequency distributions, probability functions, regression analysis (forecasting specially adapted for a specific administrative, business or logistic context G06Q10/04)}
- G06N 3/049: Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
- G06N 3/063: using electronic means
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A neuromorphic network may solve combinatorial optimization problems. The neuromorphic network may include variable neurons, a solution monitoring neuron, and one or more readout neurons. The variable neurons may each represent one binary variable in a combinatorial optimization problem. An internal state of a variable neuron may change as the variable flips. The internal state may be stored in a memory of the variable neuron. The variable neuron may spike when its internal state changes. One or more other variable neurons receiving the spike may determine whether to change their internal states based on the spike. The variable neurons may send their internal states to the solution monitoring neuron to compute a cost of the QUBO problem and determine whether a solution is found. A readout neuron may receive variable assignments resulting in the solution from at least some variable neurons and integrate the variable assignments into one message.

## Claims

### Claim 1

An apparatus, comprising:
a first neuron of a neural network, the first neuron comprising a first memory for storing a first variable, different values of the first variable corresponding to different states of the first neuron;
a second neuron of the neural network, the second neuron communicatively coupled to the first neuron and comprising a second memory for storing a second variable, different values of the second variable corresponding to different states of the second neuron, the second neuron to determine whether to modify its state based on a message from the first neuron; and
a third neuron of the neural network, the third neuron communicatively coupled to the first neuron and the second neuron for computing a cost, using a cost function, from data received from the first neuron and data received from the second neuron and comprising a third memory for storing the cost.

### Claim 2 (depends on 1)

The apparatus of claim 1, wherein the message indicates a modification of a value of the first variable by the first neuron, and the second neuron is to determine whether to modify its state by computing a change of cost based on the modification of the value of the first variable by the first neuron.

### Claim 3 (depends on 1)

The apparatus of claim 1, wherein the second neuron is to determine whether to modify its state further based on a weight, the weight corresponding to a synapse between the first neuron and the second neuron.

### Claim 4 (depends on 3)

The apparatus of claim 3, wherein the first neuron is to modify its state based on the weight and a message from the second neuron, the message from the second neuron indicating a modification of a value of the second variable by the second neuron.

### Claim 5 (depends on 3)

The apparatus of claim 3, further comprising:
a fourth neuron comprising a fourth memory, the fourth memory to store a fourth variable, the fourth neuron to modify its state by modifying a value of the fourth variable based on the message from the first neuron and another weight corresponding to a synapse between the first neuron and the fourth neuron.

### Claim 6 (depends on 1)

The apparatus of claim 1, wherein the second neuron is to determine whether to modify its state by computing a probability of modifying its state based on the message from the first neuron.

### Claim 7 (depends on 1)

The apparatus of claim 1, wherein the second neuron is to determine whether to modify its state by comparing a number in the message from the first neuron with one or more other numbers.

### Claim 8 (depends on 1)

The apparatus of claim 1, wherein the first neuron or the second neuron is to store a value of the first variable or the second variable as a desirable value based on a message from the third neuron.

### Claim 9 (depends on 8)

The apparatus of claim 8, wherein the third neuron is to generate and send out the message based on a determination that the cost reaches a target cost or that a time associated with computing the cost reaches a time limit.

### Claim 10 (depends on 1)

The apparatus of claim 1, further comprising:
a fourth neuron communicatively coupled with the first neuron and the second neuron, the fourth neuron to:
receive a first message from the first neuron;
receive a second message from the second neuron; and
generate a single message from the first message and the second message.

### Claim 11

A method, comprising:
determining, by a first neuron, a value of a first variable by performing a modification of a previously determined value of the first variable, the first variable corresponding to an internal state of the first neuron;
transmitting, from the first neuron to a second neuron, a message indicating the modification of the previously determined value of the first variable;
determining, by the second neuron, a value of a second variable based on the message, the second variable corresponding to an internal state of the first neuron; and
performing, by a third neuron, a computation of a cost function for combinatorial optimization based on the internal state of the first neuron and the internal state of the second neuron.

### Claim 12 (depends on 11)

The method of claim 11, wherein determining the value of the second variable comprises:
computing a change of cost based on the modification of the value of the first variable by the first neuron; and
determining whether to modify a previously determined value of the second variable based on the change of cost.

### Claim 13 (depends on 11)

The method of claim 11, wherein determining the value of the second variable comprises:
determining whether to modify a previously determined value of the second variable further based on a weight, the weight corresponding to a synapse between the first neuron and the second neuron.

### Claim 14 (depends on 11)

The method of claim 11, wherein determining the value of the second variable comprises:
determining whether to modify a previously determined value of the second variable further by computing a probability of modifying its state based on the message from the first neuron or by comparing a number in the message from the first neuron with one or more other numbers.

### Claim 15 (depends on 11)

The method of claim 11, further comprising:
transmitting the message from the first neuron to a fourth neuron; and
determining, by the fourth neuron based on the message, a value of another variable stored in a memory of the fourth neuron.

### Claim 16 (depends on 11)

The method of claim 11, further comprising:
after the computation of the cost function, transmitting a message from the third neuron to the first neuron or the second neuron, the message causing the first neuron or the second neuron to store the value of the first variable or the second variable as a best value of the first variable or the second variable.

### Claim 17 (depends on 16)

The method of claim 16, wherein transmitting a message from the third neuron to the first neuron or the second neuron comprises:
determining, by the third neuron, whether the cost reaches a target cost; and
in response to determining the cost reaches a target cost, transmitting from the third neuron the message to the first neuron or the second neuron.

### Claim 18

One or more non-transitory computer-readable media storing instructions executable to perform operations, the operations comprising:
determining, by a first neuron, a value of a first variable by performing a modification of a previously determined value of the first variable, the first variable corresponding to an internal state of the first neuron;
transmitting, from the first neuron to a second neuron, a message indicating the modification of the previously determined value of the first variable;
determining, by the second neuron, a value of a second variable based on the message, the second variable corresponding to an internal state of the first neuron; and
performing, by a third neuron, a computation of a cost function for combinatorial optimization based on the internal state of the first neuron and the internal state of the second neuron.

### Claim 19 (depends on 18)

The one or more non-transitory computer-readable media of claim 18, wherein determining the value of the second variable comprises:
determining whether to modify a previously determined value of the second variable further based on the message and a weight, the weight corresponding to a synapse between the first neuron and the second neuron.

### Claim 20 (depends on 18)

The one or more non-transitory computer-readable media of claim 18, wherein the operations further comprise:
after the computation of the cost function, transmitting a message from the third neuron to the first neuron or the second neuron, the message causing the first neuron or the second neuron to store the value of the first variable or the second variable as a best value of the first variable or the second variable.
