IP Library Granted Patent US 12710988
Granted Patent B2
US 12710988 · App. 18/381,274 · Granted Aug 18, 2026

Method and system for probabilistic allocation of indivisible resources

Inventors: Eleonora Kreacic (London, GB); Parisa Hassanzadeh (San Jose, CA); Sihan Zeng (Sunnyvale, CA); Sumitra Ganesh (Short Hills, NJ); Manuela Veloso (New York, NY)
Assignee: JPMORGAN CHASE BANK, N.A.
G06F9/5033G06F17/18
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 12710988
App. No.
18/381,274
Granted
Aug 18, 2026
Kind
B2
Abstract

A system and a method for allocating indivisible resources to agents over a finite horizon in a manner that balances resource utilization and fairness are provided. The method includes: receiving first information that relates to a number of agents included in a set of agents; receiving second information that relates to whether each respective agent is requesting an allocation of an indivisible resource during a particular allocation round; assigning, to each respective agent, a respective weight that relates to an importance of the respective agent; calculating, for each respective agent, a respective agent-specific allocation probability; and determining an allocation of the indivisible resource for the particular allocation round based on the agent-specific allocation probabilities. The determination of the allocation may be adjusted based on a budget that indicates an availability of the resource during the particular allocation round.

Claims (60)

1 . A method for allocating resources, the method being implemented by at least one processor, the method comprising:

receiving, by the at least one processor, first information that relates to a number of agents included in a plurality of agents;

receiving, by the at least one processor, second information that relates to whether, for each respective agent included in the plurality of agents, the respective agent is requesting an allocation of an indivisible resource during a particular allocation round, wherein the indivisible resource is perishable and cannot be carried over to future rounds;

assigning, by the at least one processor to each respective agent included in the plurality of agents, a respective weight that relates to an importance of the respective agent, wherein differing weights are applied to the plurality of agents;

calculating, by the at least one processor for each respective agent based on the assigned respective weight, a respective agent-specific allocation probability;

determining, by the at least one processor, an allocation of the indivisible resource for the particular allocation round based on each respective agent-specific allocation probability;

measuring metrics regarding utilization rate of the indivisible resource allocated; and

modifying the respective agent-specific allocation probability based on measured utilization rate for optimizing efficiency in resource exhaustion while maintaining fairness with respect to the plurality of agents.

2 . The method of claim 1 , further comprising receiving third information that relates to a length of a time period and fourth information that relates to a number of allocation rounds within the time period during which the indivisible resource is to be allocated,

wherein the determining of the allocation of the indivisible resource for the particular allocation round is further based on the third information and the fourth information.

3 . The method of claim 2 , further comprising receiving fifth information that relates to a number of units of the indivisible resource available to be allocated during an entirety of the time period,

wherein the determining of the allocation of the indivisible resource for the particular allocation round is further based on the fifth information.

4 . The method of claim 1 , further comprising receiving sixth information that relates to an availability budget for the allocation of the indivisible resource during the particular allocation round,

wherein the determining of the allocation of the indivisible resource for the particular allocation round is further based on the availability budget.

5 . The method of claim 1 , further comprising receiving seventh information that relates to prior allocations of the indivisible resource over a predetermined period of time,

wherein the determining of the allocation of the indivisible resource for the particular allocation round is further based on the seventh information.

6 . The method of claim 1 , further comprising receiving eighth information that, for each respective agent that has received the allocation of the indivisible resource for the particular allocation round, indicates at least one from among the indivisible resource having been utilized by the respective agent and the indivisible resource having been wasted by the respective agent.

7 . The method of claim 6 , further comprising measuring, based at least in part on the eighth information, a first metric that relates to at least one from among a round allocation rate, a round attendance rate, a round efficiency, an agent satisfaction rate, a weighted average for the agent satisfaction rate, an agent attendance rate, and a maximum difference of agent allocation rates.

8 . The method of claim 1 , further comprising:

obtaining a first estimate that relates to an expected future demand for the indivisible resource; and

obtaining a second estimate that relates to a utilization reliability with respect to the indivisible resource,

wherein the calculating of each respective agent-specific allocation probability comprises maximizing Jensen's inequality with respect to the assigned respective weight for each respective agent, the first estimate, and the second estimate.

9 . The method of claim 1 , wherein the assigning of each respective weight to each respective agent is based on an input that is received from a user.

10 . A computing apparatus for allocating resources, the computing apparatus comprising:

a processor;

a memory; and

a communication interface coupled to each of the processor and the memory,

wherein the processor is configured to:

receive, via the communication interface, first information that relates to a number of agents included in a plurality of agents;

receive, via the communication interface, second information that relates to whether, for each respective agent included in the plurality of agents, the respective agent is requesting an allocation of an indivisible resource during a particular allocation round, wherein the indivisible resource is perishable and cannot be carried over to future rounds;

assign, to each respective agent included in the plurality of agents, a respective weight that relates to an importance of the respective agent, wherein differing weights are applied to the plurality of agents;

calculate, for each respective agent based on the assigned respective weight, a respective agent-specific allocation probability;

determine an allocation of the indivisible resource for the particular allocation round based on each respective agent-specific allocation probability;

measure metrics regarding utilization rate of the indivisible resource allocated; and

modify the respective agent-specific allocation probability based on measured utilization rate for optimizing efficiency in resource exhaustion while maintaining fairness with respect to the plurality of agents.

11 . The computing apparatus of claim 10 , wherein the processor is further configured to receive, via the communication interface, third information that relates to a length of a time period and fourth information that relates to a number of allocation rounds within the time period during which the indivisible resource is to be allocated,

wherein the determination of the allocation of the indivisible resource for the particular allocation round is further based on the third information and the fourth information.

12 . The computing apparatus of claim 11 , wherein the processor is further configured to receive, via the communication interface, fifth information that relates to a number of units of the indivisible resource available to be allocated during an entirety of the time period,

wherein the determination of the allocation of the indivisible resource for the particular allocation round is further based on the fifth information.

13 . The computing apparatus of claim 10 , wherein the processor is further configured to receive, via the communication interface, sixth information that relates to an availability budget for the allocation of the indivisible resource during the particular allocation round,

wherein the determination of the allocation of the indivisible resource for the particular allocation round is further based on the availability budget.

14 . The computing apparatus of claim 10 , wherein the processor is further configured to receive, via the communication interface, seventh information that relates to prior allocations of the indivisible resource over a predetermined period of time,

wherein the determination of the allocation of the indivisible resource for the particular allocation round is further based on the seventh information.

15 . The computing apparatus of claim 10 , wherein the processor is further configured to receive, via the communication interface, eighth information that, for each respective agent that has received the allocation of the indivisible resource for the particular allocation round, indicates at least one from among the indivisible resource has been utilized by the respective agent and the indivisible resource has been wasted by the respective agent.

16 . The computing apparatus of claim 15 , wherein the processor is further configured to measure, based at least in part on the eighth information, a first metric that relates to at least one from among a round allocation rate, a round attendance rate, a round efficiency, an agent satisfaction rate, a weighted average for the agent satisfaction rate, an agent attendance rate, and a maximum difference of agent allocation rates.

17 . The computing apparatus of claim 10 , wherein the processor is further configured to:

obtain a first estimate that relates to an expected future demand for the indivisible resource;

obtain a second estimate that relates to a utilization reliability with respect to the indivisible resource; and

perform the calculation of each respective agent-specific allocation probability by maximizing Jensen's inequality with respect to the assigned respective weight for each respective agent, the first estimate, and the second estimate.

18 . The computing apparatus of claim 10 , wherein the assignment of each respective weight to each respective agent is based on an input that is received from a user.

19 . A non-transitory computer readable storage medium storing instructions for allocating resources, the storage medium comprising executable code which, when executed by a processor, causes the processor to:

receive first information that relates to a number of agents included in a plurality of agents;

receive second information that relates to whether, for each respective agent included in the plurality of agents, the respective agent is requesting an allocation of an indivisible resource during a particular allocation round, wherein the indivisible resource is perishable and cannot be carried over to future rounds;

assign, to each respective agent included in the plurality of agents, a respective weight that relates to an importance of the respective agent, wherein differing weights are applied to the plurality of agents;

calculate, for each respective agent based on the assigned respective weight, a respective agent-specific allocation probability;

determine an allocation of the indivisible resource for the particular allocation round based on each respective agent-specific allocation probability;

measure metrics regarding utilization rate of the indivisible resource allocated; and

modify the respective agent-specific allocation probability based on measured utilization rate for optimizing efficiency in resource exhaustion while maintaining fairness with respect to the plurality of agents.

20 . The storage medium of claim 19 , wherein when executed by the processor, the executable code further causes the processor to receive third information that relates to a length of a time period and fourth information that relates to a number of allocation rounds within the time period during which the indivisible resource is to be allocated,

wherein the determination of the allocation of the indivisible resource for the particular allocation round is further based on the third information and the fourth information.