IP Library Granted Patent US 12,561,171
Granted Patent B2
US 12,561,171 · App. 17/797,071 · Granted Feb 24, 2026

Optimization function generation apparatus, optimization function generation method, and program

Inventors: Kazuhiro Miyahara (Tokyo, JP); Keitaro Horikawa (Tokyo, JP); Kinya Tomita (Tokyo, JP)
Assignee: NTT, Inc.
G06F9/5038G06N10/80
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,561,171
App. No.
17/797,071
Granted
Feb 24, 2026
Kind
B2
Abstract

Provided is a technology for creating an optimization function for solving a scheduling problem for creating a process execution plan such that execution of all processes will be completed by a predetermined time point under constraint conditions regarding the processes and resources required by the processes, the optimization function relating to a variable that represents a quantum state. The technology includes: an input setting unit that sets a set P of processes, a set R of resources, a maximum time point End, the time p.time it takes to execute a process p, a set p.precede of processes of which execution needs to be completed before execution of the process p is started, and a set r.processes of processes that require a resource r when executed, as input to the scheduling problem for creating a plan of execution start time points of processes such that execution of all processes included in the set P will be completed by the maximum time point End under the predetermined constraint conditions; and an optimization function creation unit that creates the optimization function using the input.

Claims (694)

1 . An optimization function creation apparatus comprising:

an input setting circuitry configured to set a set P of processes, a set R of resources, a maximum time point End, the time p.time it takes to execute a process p(∈P), a set p.precede(⊆P) of processes of which execution needs to be completed before execution of the process p is started, and a set r.processes(⊆P) of processes that require a resource r(∈R) when executed, as input to a scheduling problem for creating a plan of execution start time points of processes such that execution of all processes included in the set P will be completed by the maximum time point End under predetermined constraint conditions;

an optimization function creation circuitry configured to create an optimization function for solving the scheduling problem using the input, the optimization function relating to a variable that represents a quantum state, wherein

the constraint conditions comprise a first constraint condition that start(q)+q.time≤start(p) holds true for processes p∈P and q∈p.precede,

the start(p) represents an execution start time point of a process p,

the constraint conditions further comprise a second constraint condition that {p∈r.processes|start(p)≤t≤start(p)+p.time}|≤1 holds true for each time point t up to the maximum time point End and each resource r∈R,

the optimization function is a function that takes the minimum value when the first constraint condition and the second constraint condition are satisfied,

the variable that represents a quantum state is a quantum bit that represents a particular state by taking the value 1 and represents a state other than the particular state by taking the value 0,

the optimization function is an objective function of Quadratic Unconstrained Binary Optimization (“QUBO”) defined based on a function that expresses the first constraint condition and a function that expresses the second constraint condition,

the function expressing the first constraint condition is a function that takes the value 0 when the first constraint condition is satisfied, and otherwise takes a value greater than 0,

the function expressing the second constraint condition is a function that takes the value 0 when the second constraint condition is satisfied, and otherwise takes a value greater than 0,

the variable that represents a quantum state is a variable that is defined so as to represent, with the value 1, a state where a time point t is at or after an execution start time point of a process p,

the quantum bit is defined as a variable x p,t whose value is “1” in a case where the time point t is at or after the execution start time point of the process p, and otherwise “0,” and

the objective function of QUBO is defined as a function JSP,

JSP

=

AfterStart

+

Order

+

Resource

,

AfterStart

=

0

t

<

End

-

1

p

P

x

p

,

t

(

1

-

x

p

,

t

+

1

)

,

Order

=

0

t

<

End

p

P

q

p

.

precede

x

p

,

t

(

1

-

x

q

,

t

-

q

.

time

)

,

Resource

=

r

R

0

t

<

End

Count

(

r

,

t

)

(

Count

(

r

,

t

)

-

1

)

,

Count

(

r

,

t

)

=

p

r

.

processes

(

x

p

,

t

-

x

p

,

t

-

p

.

time

)

the AfterStart represents a function expressing the meaning of the quantum bit x p,t ,

the Order represents a function expressing the first constraint condition, and

the Resource represents a function expressing the second constraint condition, and

a process execution plan creation circuitry configured to create, by executing the optimization function solving the scheduling problem using the input, a process execution plan as output of the optimization function to schedule process execution.

2 . A method for creating an optimization function, comprising:

an input setting step of setting, by an optimization function creation apparatus, a set P of processes, a set R of resources, a maximum time point End, the time p.time it takes to execute a process p(∈P), a set p.precede(⊆P) of processes of which execution needs to be completed before execution of the process p is started, and a set r.processes(⊆P) of processes that require a resource r(∈R) when executed, as input to a scheduling problem for creating a plan of execution start time points of processes such that execution of all processes included in the set P will be completed by the maximum time point End under predetermined constraint conditions;

an optimization function creating step of creating, by the optimization function creation apparatus, an optimization function for solving the scheduling problem using the input, the optimization function relating to a variable that represents a quantum state, wherein

the constraint conditions comprise a first constraint condition that start(q)+q.time≤start(p) holds true for processes p∈P and q∈p.precede,

the start(p) represents an execution start time point of a process p,

the constraint conditions further comprise a second constraint condition that |{p∈r.processes|start(p)≤t≤start(p)+p.time}|≤1 holds true for each time point t up to the maximum time point End and each resource r∈R,

the optimization function is a function that takes the minimum value when the first constraint condition and the second constraint condition are satisfied,

the variable that represents a quantum state is a quantum bit that represents a particular state by taking the value 1 and represents a state other than the particular state by taking the value 0,

the optimization function is an objective function of Quadratic Unconstrained Binary Optimization (“QUBO”) defined based on a function that expresses the first constraint condition and a function that expresses the second constraint condition,

the function expressing the first constraint condition is a function that takes the value 0 when the first constraint condition is satisfied, and otherwise takes a value greater than 0,

the function expressing the second constraint condition is a function that takes the value 0 when the second constraint condition is satisfied, and otherwise takes a value greater than 0,

the variable that represents a quantum state is a variable that is defined so as to represent, with the value 1, a state where a time point t is at or after an execution start time point of a process p,

the quantum bit is defined as a variable x p,t whose value is “1” in a case where the time point t is at or after the execution start time point of the process p, and otherwise “0,” and

the objective function of QUBO is defined as a function JSP,

JSP

=

AfterStart

+

Order

+

Resource

,

AfterStart

=

0

t

<

End

-

1

p

P

x

p

,

t

(

1

-

x

p

,

t

+

1

)

,

Order

=

0

t

<

End

p

P

q

p

.

p

r

e

c

e

d

e

x

p

,

t

(

1

-

x

q

,

t

-

q

.

time

)

,

Resource

=

r

R

0

t

<

End

Count

(

r

,

t

)

(

Count

(

r

,

t

)

-

1

)

,

Count

(

r

,

t

)

=

p

r

.

p

r

o

c

e

s

s

e

s

(

x

p

,

t

-

x

p

,

t

-

p

.

time

)

the AfterStart represents a function expressing the meaning of the quantum bit x p,t ,

the Order represents a function expressing the first constraint condition, and

the Resource represents a function expressing the second constraint condition; and

a process execution plan creating step of creating, by executing the optimization function solving the scheduling problem using the input, a process execution plan as output of the optimization function to schedule process execution by the optimization function creation apparatus.

3 . A non-transitory computer-readable recording medium storing a program for causing a computer to perform the method for creating an optimization function according to claim 2 .

4 . An optimization function creation apparatus comprising:

an input setting circuitry configured to set a set P of processes, a set R of resources, a maximum time point End, the time p.time it takes to execute a process p(∈P), a set p.precede(⊆P) of processes of which execution needs to be completed before execution of the process p is started, and a set r.processes(⊆P) of processes that require a resource r(∈R) when executed, as input to a scheduling problem for creating a plan of execution start time points of processes such that execution of all processes included in the set P will be completed by the maximum time point End under predetermined constraint conditions;

an optimization function creation circuitry configured to create an optimization function for solving the scheduling problem using the input, the optimization function relating to a variable that represents a quantum state, wherein

the constraint conditions comprise a first constraint condition that start(q)+q.time≤start(p) holds true for processes p∈P and q∈p.precede,

the start(p) represents an execution start time point of a process p,

the constraint conditions further comprise a second constraint condition that {p∈r.processes|start(p)≤t≤start(p)+p.time}|1 holds true for each time point t up to the maximum time point End and each resource r∈R,

the optimization function is a function that takes the minimum value when the first constraint condition and the second constraint condition are satisfied,

the variable that represents a quantum state is a quantum bit that represents a particular state by taking the value 1 and represents a state other than the particular state by taking the value 0,

the optimization function is an objective function of Quadratic Unconstrained Binary Optimization (“QUBO”) defined based on a function that expresses the first constraint condition and a function that expresses the second constraint condition,

the function expressing the first constraint condition is a function that takes the value 0 when the first constraint condition is satisfied, and otherwise takes a value greater than 0,

the function expressing the second constraint condition is a function that takes the value 0 when the second constraint condition is satisfied, and otherwise takes a value greater than 0,

the variable that represents a quantum state is a variable that is defined so as to represent, with the value 1, a state where a time point t is at or after an execution start time point of a process p,

the quantum bit is defined as a variable xp,t whose value is “1” in a case where the time point t is at or after the execution start time point of the process p, and otherwise “0,” and

the objective function of QUBO is defined as a function JSP,

JSP

=

AfterStart

+

Order

+

Resource

,

AfterStart

=

0

t

<

End

-

1

p

P

(

t

+

1

)

*

x

p

,

t

(

1

-

x

p

,

t

+

1

)

,

Order

=

0

t

<

End

p

P

q

p

.

p

r

e

c

e

d

e

x

p

,

t

(

1

-

x

q

,

t

-

q

.

time

)

,

Resource

=

r

R

0

t

<

End

Count

(

r

,

t

)

(

Count

(

r

,

t

)

-

1

)

,

Count

(

r

,

t

)

=

p

r

.

p

r

o

c

e

s

s

e

s

(

x

p

,

t

-

x

p

,

t

-

p

.

time

)

the AfterStart represents a function expressing the meaning of the quantum bit x p,t ,

the Order represents a function expressing the first constraint condition, and

the Resource represents a function expressing the second constraint condition, and

a process execution plan creation circuitry configured to create, by executing the optimization function solving the scheduling problem using the input, a process execution plan as output of the optimization function to schedule process execution.

5 . A method for creating an optimization function, comprising:

an input setting step of setting, by an optimization function creation apparatus, a set P of processes, a set R of resources, a maximum time point End, the time p.time it takes to execute a process p(∈P), a set p.precede(⊆P) of processes of which execution needs to be completed before execution of the process p is started, and a set r.processes(⊆P) of processes that require a resource r(∈R) when executed, as input to a scheduling problem for creating a plan of execution start time points of processes such that execution of all processes included in the set P will be completed by the maximum time point End under predetermined constraint conditions;

an optimization function creating step of creating, by the optimization function creation apparatus, an optimization function for solving the scheduling problem using the input, the optimization function relating to a variable that represents a quantum state, wherein

the constraint conditions comprise a first constraint condition that start(q)+q.time≤start(p) holds true for processes p∈P and q∈p.precede,

the start(p) represents an execution start time point of a process p,

the constraint conditions further comprise a second constraint condition that {p∈r.processes|start(p)≤t≤start(p)+p.time}|≤1 holds true for each time point t up to the maximum time point End and each resource r∈R,

the optimization function is a function that takes the minimum value when the first constraint condition and the second constraint condition are satisfied,

the variable that represents a quantum state is a quantum bit that represents a particular state by taking the value 1 and represents a state other than the particular state by taking the value 0,

the optimization function is an objective function of Quadratic Unconstrained Binary Optimization (“QUBO”) defined based on a function that expresses the first constraint condition and a function that expresses the second constraint condition,

the function expressing the first constraint condition is a function that takes the value 0 when the first constraint condition is satisfied, and otherwise takes a value greater than 0,

the function expressing the second constraint condition is a function that takes the value 0 when the second constraint condition is satisfied, and otherwise takes a value greater than 0,

the variable that represents a quantum state is a variable that is defined so as to represent, with the value 1, a state where a time point t is at or after an execution start time point of a process p,

the quantum bit is defined as a variable x p,t whose value is “1” in a case where the time point t is at or after the execution start time point of the process p, and otherwise “0,” and

the objective function of QUBO is defined as a function JSP,

JSP

=

AfterStart

+

Order

+

Resource

,

AfterStart

=

0

t

<

End

-

1

p

P

(

t

+

1

)

*

x

p

,

t

(

1

-

x

p

,

t

+

1

)

,

Order

=

0

t

<

End

p

P

q

p

.

p

r

e

c

e

d

e

x

p

,

t

(

1

-

x

q

,

t

-

q

.

time

)

,

Resource

=

r

R

0

t

<

End

Count

(

r

,

t

)

(

Count

(

r

,

t

)

-

1

)

,

Count

(

r

,

t

)

=

p

r

.

p

r

o

c

e

s

s

e

s

(

x

p

,

t

-

x

p

,

t

-

p

.

time

)

the AfterStart is a function expressing the meaning of the quantum bit x p,t ,

the Order is a function expressing the first constraint condition, and

the Resource is a function expressing the second constraint condition; and

a process execution plan creating step of creating, by executing the optimization function solving the scheduling problem using the input, a process execution plan as output of the optimization function to schedule process execution by the optimization function creation apparatus.

6 . A non-transitory computer-readable recording medium storing a program for causing a computer to perform the method for creating an optimization function according to claim 5 .

Assignments (2)
CHANGE OF NAME Recorded Jan 1, 2026
From: NIPPON TELEGRAPH AND TELEPHONE CORPORATION
To: NTT, INC.
Reel/Frame 074164/0623 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2022
From: MIYAHARA, KAZUHIRO; HORIKAWA, KEITARO; TOMITA, KINYA
To: NIPPON TELEGRAPH AND TELEPHONE CORPORATION
Reel/Frame 060701/0620 →
Continuity (1)
Related Publication 20230056830A1 · Feb 23, 2023
References Cited (10)
US 20110047201A1 · Macready · 2011 [cited by examiner]
US 20140187427A1 · Macready · 2014 [cited by examiner]
Venturelli, David, et al. Job Shop Scheduling Solver Based on Quantum Annealing, Oct. 17, 2016 (Year: 2016). [cited by examiner]
Venturelli, et al. (2016) “Job-Shop Scheduling Solver Based on Quantum Annealing”, Proceeding of the 11th Workshop on Constraint Satisfaction Techniques for Planning and Scheduling (COPLAS), Jun. 14, 2016, pp. 25-34, [o… [cited by applicant]
Hamasaki, et al. (2019) “Study on Job Scheduling Method of HPC System Using Accelerator for combination optimization Problem”, IPSJ SIG Technical Report, Feb. 26, 2019, vol. 2019-HPC-168, No. 12, pp. 1-9 with English tr… [cited by applicant]
Coffrin, et al. (2019) “Evaluating Ising Processing Units with Interger Programming”, arXiv: 1707.00355v2, [online], arXiv (Cornell University), Jun. 19, 2019, version v2, pp. 1-19, [retrieved on Jun. 11, 2020], Retriev… [cited by applicant]
A. Lucas (2014) “Ising formulations of many NP problems,” frontiers in Physics, [online], [searched on Jan. 17, 2020], Internet <URL: https://www.frontiersin.org/articles/10.3389/fphy.2014.00005/full>. [cited by applicant]
D-Wave Systems Inc, “The D-Wave 2000Q™ Quantum Computer Technology Overview,” [online], [searched on Jan. 17, 2020], Internet <URL: https://www.dwavesys.com/sites/default/files/D-Wave%202000Q%20Tech%20Collateral_1029F.p… [cited by applicant]
Nagaki et al. (2016) “A coherent Ising machine for 2000-node optimization problems,” Science, vol. 354, Issue 6312, pp.603-606. [cited by applicant]
Yoshimura, et al. (2019) “An efficient Ising model mapping method to solve induced subgraph isomorphism problems using Ising machines,” Adiabatic Quantum Computing Conference. [cited by applicant]