Optimization system, method, and program
Patent Information
- Application Number
- PCT/JP2026/000095
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-02-25
- Filing Date
- 2026-01-06
- Publication Date
- 2026-09-03
Smart Images

Figure JP2026000095_03092026_PF_FP_ABST
Abstract
Description
Optimization systems, methods, and programs
[0001] This disclosure relates to an optimization system, optimization method, and optimization program for optimizing transportation routes.
[0002] Due to factors such as a declining birthrate, an aging population, and overall population decrease, the number of users of public transportation is decreasing. One regional challenge that reflects this situation is the reduction of public transportation services, particularly bus services. In some areas, a vicious cycle is occurring where the decline in ridership due to population decrease, coupled with the reduction in services to ensure profitability for bus companies, further diminishes convenience.
[0003] In response to this situation of declining utilization rates and convenience, the use of on-demand transportation, which responds only when requested by users and enables efficient travel by sharing rides with multiple users, is increasing.
[0004] For example, Non-Patent Document 1 describes a method for applying quantum annealing to the dispatch planning problem of a demand-responsive transport service that takes ride-sharing into consideration. The method described in Non-Patent Document 1 aims to find a dispatch plan that maximizes the available time of all taxis (the sum of the time spent traveling to the base and the time spent waiting at the base) in a dispatch plan that handles all reservations.
[0005] Hideto Shinohara, Yu Yamashiro, Kazuhiro Saito, and Tomomitsu Umeki, "Application of Quantum Annealing to the Dispatch Planning Problem of Demand Transportation Services Considering Ride-Sharing," Information Processing Society of Japan Research Report, Vol. 2022-QS-5 No. 14, 2022 / 3 / 24
[0006] When implementing on-demand transportation, it is desirable to schedule user reservations and calls, and to efficiently route passengers through key pick-up and drop-off locations.
[0007] Therefore, this disclosure aims to provide an optimization system, an optimization method, and an optimization program that can optimize the routes of transportation means passing through predetermined locations.
[0008] The optimization system disclosed herein comprises: an input unit that accepts reservation information including a boarding location, alighting location, and desired boarding time or desired alighting time; a formulation unit that formulates an objective function including a minimization term representing the total travel distance of transportation means that can accommodate multiple users passing through predetermined locations, and one or more constraint terms representing penalties for violating constraints when moving between locations; and an optimization unit that performs a process to optimize the route of transportation means moving between locations by minimizing an objective function calculated based on the travel time between locations and the combination of user boarding from the boarding location to the alighting location included in the input reservation information, wherein the one or more constraint terms include a term indicating whether the boarding time or alighting time specified by the combination of boarding is within an allowable time range from the desired boarding time or desired alighting time in the reservation information.
[0009] The optimization method disclosed herein accepts the input of reservation information including the boarding location, alighting location, and desired boarding time or desired alighting time, formulates an objective function that includes a minimization term representing the total travel distance of transportation means that can accommodate multiple users passing through predetermined locations, and one or more constraint terms representing penalties for violating constraints when moving between locations, and executes a process to optimize the route of transportation means moving between locations by minimizing the objective function calculated from the combination of user boarding from the boarding location to the alighting location included in the input reservation information based on the travel time between locations, wherein one or more constraint terms include a term that indicates whether the boarding time or alighting time specified by the boarding combination is within an acceptable time range from the desired boarding time or desired alighting time in the reservation information.
[0010] The optimization program described herein is characterized in that it causes a computer to perform an input process that accepts reservation information including a boarding location, alighting location, and desired boarding time or desired alighting time; a formulation process that formulates an objective function including a minimization term representing the total travel distance of transportation means that can accommodate multiple users passing through predetermined locations, and one or more constraint terms representing penalties for violating constraints when moving between locations; and an optimization process that optimizes the route of transportation means moving between locations by minimizing the objective function calculated from the combination of user boarding from the boarding location to the alighting location included in the input reservation information, based on the travel time between locations, wherein the one or more constraint terms include a term that indicates whether the boarding time or alighting time specified by the combination of boarding is within an acceptable time range from the desired boarding time or desired alighting time in the reservation information.
[0011] According to this disclosure, it is possible to optimize the routes of transportation means passing through predetermined locations.
[0012] This is an explanatory diagram showing an example configuration of one embodiment of the optimization system of this disclosure. This is an explanatory diagram showing an example of travel time between locations. This is an explanatory diagram showing an example of reservation information. This is an explanatory diagram showing a specific example of the value of a binary variable. This is an explanatory diagram showing an example of the process for calculating the arrival start time and arrival end time. This is a flowchart showing an example of the operation of the optimization system. This is a block diagram showing an overview of the optimization system of this disclosure. This is a schematic block diagram showing the configuration of a computer according to at least one embodiment.
[0013] This disclosure assumes a bus as a means of on-demand transportation and assumes it will be operated as follows: First, the user requests the bus company by telephone or application, specifying the date and time they wish to use the service, as well as their pick-up location and destination. At the requested date and time, the bus will pick up the user at the designated pick-up location and transport them to their destination. During this journey, the bus may pick up other users at other locations and may also stop at other users' destinations. However, the means of transportation is not limited to buses; it may also be a commercial vehicle such as a taxi.
[0014] It should be noted that the method described in Non-Patent Document 1 aims to maximize the free time of taxis so as to cope with sequentially received reservations to the greatest extent possible. On the other hand, the present disclosure aims to minimize the total travel distance (that is, travel time) in order to schedule a route that allows passing through each base in the most efficient manner.
[0015] In general, a transport route is often determined so that reservations grouped in a batch format can be transported efficiently. On the other hand, in the method of accepting reservations in real time, every time a reservation is received, the operation plan is reviewed and the most efficient transport route at that time is determined. In any case, if there are a large number of reservations, a large number of bases, and a large number of roads, the number of candidate routes increases explosively, making it difficult to efficiently determine a route.
[0016] Therefore, the present disclosure describes a method for obtaining an optimal solution in real time even for an enormous number of routes by scheduling the most efficient route for passing through bases (bus stops) based on bus usage reservations through quantum annealing or simulated annealing.
[0017] In order to obtain an optimal solution, the present embodiment adopts the following contents as preconditions. First, an on-demand bus is a means of transportation that can carry multiple users who get on board via predetermined bases. A plurality of on-demand buses can be operated. However, each bus has a predetermined maximum passenger capacity, and cannot carry more passengers than this capacity. Furthermore, users make reservations in advance when they intend to ride. The reservation information input at the time of reservation will be described later. Furthermore, when it is determined that it is difficult to fulfill a registered reservation due to reasons such as overlapping with other reservations, the user is notified that the reservation cannot be made. The user needs to make a new reservation for another date and time after receiving this notification.
[0018] In the present embodiment, a route is determined based on all the received reservation information. Normally, route determination processing is performed by batch processing. If a reservation is received in the middle of processing, the reservation is added to the already received reservation information, and route determination processing is performed again in real time. In this case, if an inconsistent route that does not satisfy constraints or the like is determined, the added reservation is discarded, and the user who made the reservation is prompted to make a reservation for another date and time.
[0019] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings.
[0020] FIG. 1 is an explanatory diagram showing a configuration example of an embodiment of the optimization system of the present disclosure. The optimization system 100 of the present embodiment includes a storage unit 10, an input unit 20, a formulation unit 30, an optimization unit 40, a verification unit 50, and an output unit 60. The optimization system 100 is connected to a quantum computer 200.
[0021] The quantum computer 200 is a computer that realizes parallel computing utilizing phenomena of quantum mechanics. For example, a quantum annealing type quantum computer (hereinafter referred to as a quantum annealing machine) is a dedicated device for finding the ground state of the Hamiltonian of an Ising model, and is a device that executes annealing based on the Ising model. More specifically, the quantum annealing machine is a device that probabilistically obtains the value of a binary variable that minimizes or maximizes the objective function (i.e., Hamiltonian) of the Ising model with the binary variable as an argument. Note that the binary variable may be implemented by classical bits or quantum bits.
[0022] The configuration of the quantum computer 200 in this embodiment is arbitrary. The quantum computer 200 may be configured with any hardware that probabilistically finds the values of binary variables that minimize or maximize an objective function that takes binary variables as arguments. For example, the quantum computer 200 may be a non-von Neumann computer in which the objective function is implemented in hardware in the form of an Ising model. Furthermore, the quantum computer 200 may be a quantum annealing machine, an Ising machine implemented in hardware, or a von Neumann computer in which annealing is simulated.
[0023] The memory unit 10 stores various information used by the optimization system 100 for processing. In this embodiment, the locations of transportation hubs (e.g., bus stops) are predetermined. Also, in this embodiment, for the sake of simplicity, the travel time between hubs is assumed to be a fixed value. The memory unit 10 stores the predetermined travel time between hubs.
[0024] Figure 2 is an explanatory diagram showing an example of travel time between locations. In this embodiment, the arrangement of bus stops is predetermined as illustrated in Figure 2, and the travel time (in minutes) between each bus stop is stored in the storage unit 10 in a table format.
[0025] Furthermore, the storage unit 10 stores reservation information received from the user by the input unit 20, which will be described later. Details of the reservation information will be described later. The storage unit 10 is implemented, for example, by a magnetic disk or the like.
[0026] The input unit 20 receives input of various types of information that the optimization system 100 uses for processing. As described above, the input unit 20 receives reservation information from the user. The reservation information includes the boarding location, alighting location, and desired boarding time or desired alighting time. The reservation information may also include the number of passengers. For example, if the base is a bus stop, the reservation information may include a number identifying the boarding bus stop (boarding bus stop number), a number identifying the alighting bus stop (alighting bus stop number), desired boarding time or desired alighting time, and the number of passengers. In the following explanation, it will be assumed that the reservation information includes a desired alighting time.
[0027] FIG. 3 is an explanatory diagram showing an example of reservation information. The reservation information illustrated in FIG. 3 indicates that it includes a boarding bus stop number, an alighting bus stop number, a desired alighting time, and the number of passengers. In this way, by having the user input either the desired boarding time or the desired alighting time as reservation information, it is possible to improve the operability for the user.
[0028] The formulation unit 30 uses specified parameters to generate an objective function that will be used for optimization processing by the optimization unit 40 described later. In the present embodiment, in order to optimize the route of a transportation means, the formulation unit 30 generates an objective function including a term representing the total travel distance of the transportation means (hereinafter may also be referred to as a minimization term). Furthermore, in the present embodiment, an objective function that takes reservation information into account is generated so that optimization can be performed while also considering the user's boarding and alighting times.
[0029] Specifically, the formulation unit 30 formulates an objective function including the aforementioned minimization term and one or more constraint terms representing a penalty when a constraint condition for travel between bases is violated.
[0030] For example, let the set of buses be A={a 1 , a 2 , …, a na}, and let the set of bus stops be P={p 1 , p 2 , …, p np}. Also, let the set of reservations be R={R 1 , R 2}. Here, R 1 represents the set of boarding reservations {r 11 , r 12 , …, r 1nr}, and R 2 represents the set of alighting reservations {r 21 , r 22 , …, r 2nr}.
[0031] Furthermore, let the set of travel orders be M={m 1 , m 2 , …, m nm}, let the travel time between bus stop i and bus stop j be d ij , and let the maximum passenger capacity of bus a be E aThe number of passengers boarding and alighting for each reservation is h R = {h r11 , h r12 , ..., h r2nr} (however, h r1k = h r2k ), a set u that indicates 1 if the passenger boards or alights at bus stop P with each reservation r, and 0 otherwise. PR = {u p1 r11 , u p1 r12 , ..., u pnp r2nr}
[0032] Then, the meeting time for the bus arrival start time permitted for each reservation r is T inR = {Tin r11 , Tin r12 , ..., Tin r2nr}, the total number of bus arrival times allowed for each reservation r is Tout R = {Tout r11 , Tout r12 ..., Tout r2nr}, the acceptable time range for bus arrival is T margin The maximum time window in which the bus arrives before each TinR is T max The method for calculating the acceptable arrival start and end times will be described later.
[0033] At this time, in the mth movement, a binary variable x is used to indicate 1 if bus a moves to bus stop p and corresponds to reservation r, and 0 if it does not correspond. aprm Therefore, the objective function H is expressed by equation 1, which is exemplified below. Note that λ and W are given by... 1 , W 2 , W 3 , W 4 , W 5 and W 6 This is a positive constant that indicates the degree to which the weight of each term is considered, and for example, a value entered into the input unit 20 by a user is used.
[0034]
[0035] The meaning of each term in Equation 1 above will be explained below.
[0036] The first term represents the total distance traveled by the bus (i.e., the total travel time) and corresponds to the minimization term described above.
[0037] The terms from the second term onward indicate constraints and correspond to the constraint terms mentioned above. The second term indicates that a single bus will always stop at the bus stop corresponding to the reservation during a single trip. This term can be said to be a term that prevents inconsistencies such as the same bus stopping at two or more bus stops simultaneously.
[0038] The third clause indicates that each reservation will always correspond to one boarding and one alighting on one specific bus. This clause is intended to prevent unnecessary stops more than once for a single reservation.
[0039] The fourth clause indicates that the relationship between the boarding time and alighting time for each reservation is not contradictory (specifically, the alighting time does not precede the boarding time). For example, suppose the result is that the boarding reservation r1in results in m1 being the first to board, and the alighting reservation r1out results in m2 being the second to alight. Since movement is not possible when m1 ≥ m2, a penalty will be incurred if m1 ≥ m2.
[0040] Item 5 indicates that the boarding and alighting times for each reservation are within the pre-set allowable time range. Specifically, it indicates whether the boarding or alighting time specified by the combination of boarding and alighting falls within the allowable time range from the desired boarding or alighting time in the reservation information.
[0041] The tolerance time is set, for example, ±5 minutes, and is used when generating reservation information, as described later. Increasing this value increases the likelihood of the reservation being fulfilled, making it easier for reservations to be confirmed and for the operator to obtain the optimal route. On the other hand, it also increases the likelihood of inconveniencing passengers (for example, the bus arriving later than expected, or having to go to the bus stop earlier).
[0042] Item 6 indicates that the total number of passengers boarding by reservation is within the upper limit. This item means that a penalty will be imposed if the total number of passengers exceeds the upper limit. For each bus operation, the number of passengers boarding by reservation is added, and the number of passengers alighting by reservation is subtracted, and it is determined whether the sum is less than or equal to the upper limit of passengers (Ea) for the bus in question.
[0043] Item 7 indicates that for each reservation, the number of times the passenger boards and alights on the same bus is always the same. This means that each boarding and alighting reservation indicated by a single reservation must correspond to the same boarding and alighting location on the same bus.
[0044] Figure 4 shows the binary variable x aprm This is an explanatory diagram showing specific examples of the values of x. The example shown in Figure 4 shows the results according to the number of moves when a bus A moves to bus stop P based on a reservation R. In the table in Figure 4, the part enclosed by the dashed line is the binary variable x. aprm This represents the following. In Figure 4, the initial position of the bus is set to the number of moves M=0, and it is shown that the bus stopped at bus stop P=A based on the passenger reservation r1in during the first move, and stopped at bus stop P=B based on the passenger reservation r2in during the second move.
[0045] Regarding the relationship with the above constraints, the constraint indicated by the second term means that, in the example in Figure 4, there must be exactly one 1 in each column. Furthermore, the constraint indicated by the third term means that, in the example in Figure 4, within each row representing each boarding and alighting reservation, there must be exactly one 1 in any of the buses, or a series of 1s.
[0046] The optimization unit 40 converts the input reservation information into a format used for optimization processing. Specifically, the optimization unit 40 calculates the acceptable start and end times of arrival for each reservation based on a predetermined allowable time. For example, suppose the allowable time is set to ±5 minutes as described above. In this case, the optimization unit 40 calculates the acceptable start time of arrival as 5 minutes back from the desired boarding time included in the reservation information, and calculates the acceptable end time of arrival as 5 minutes forward from the desired disembarking time included in the reservation information.
[0047] In this embodiment, the system accepts input of either the desired boarding time or the desired alighting time. The optimization unit 40 then calculates the desired boarding time or desired alighting time that is not included in the reservation information, based on the travel time between locations.
[0048] Figure 5 is an explanatory diagram illustrating an example of the process for calculating the arrival start time and arrival end time. Here, we will explain how to calculate the arrival start time and arrival end time based on the travel time between locations exemplified in Figure 2 and the reservation information exemplified in Figure 3. The allowable time is assumed to be ±5 minutes. For example, we focus on the reservation information r1: (C, E, 7:30, 2) = (boarding bus stop number, alighting bus stop number, desired alighting time, number of passengers).
[0049] The time it takes to get from bus stop C to bus stop E is 9 minutes, according to the table in Figure 2. Since the desired alighting time at bus stop E is 7:30, the optimization unit 40 calculates the desired boarding time at bus stop C as 7:21, 9 minutes earlier. Based on the allowable time, the optimization unit 40 adds ±5 minutes to the desired boarding and alighting times at each bus stop. As a result, it is determined that at bus stop C, boarding should occur between 7:16 and 7:26, and at bus stop E, alighting should occur between 7:25 and 7:35. That is, boarding reservation r1in: (C, 7:16-7:26, 2), alighting reservation r1out: (E, 7:25-7:35, 2) = (bus stop number, boarding / alighting time range, number of passengers boarding / alighting).
[0050] If we apply this to Equation 1 shown above, and let the boarding reservation be rαin and the alighting reservation be rαout, then the respective information can be expressed as follows. Note that the bus stop numbers A, B, C... correspond to 1, 2, 3... respectively. rαin = (P 3 , Tin r1α ~Tout r1α , h 1α ) rαout = (P 5 , Tin r2α ~Tout r2α , h 2α )
[0051] The optimization unit 40 then optimizes the route of the means of transport moving between bases by minimizing the objective function formulated by the formulation unit 30. The value of the objective function is calculated based on the combination of passenger boarding locations and alighting locations included in the input reservation information. Therefore, the optimization unit 40 optimizes the route by minimizing the objective function calculated based on the combination of passenger boarding locations and alighting locations included in the reservation information.
[0052] In this embodiment, in each term included in the objective function (specifically, the minimization term and the constraint term), whether or not a means of transportation passes through a predetermined location is represented by a binary variable x. aprm It is expressed as follows. Therefore, the optimization unit 40 may have the quantum computer 200 optimize using an objective function expressed as a binary variable. For example, the optimization unit 40 may send the above-mentioned equation 1 to the quantum computer 200 to perform the optimization process. Note that the method for having the quantum computer 200 perform the optimization process is widely known, so a detailed explanation is omitted here.
[0053] The verification unit 50 verifies the content of the optimal solution obtained by the optimization unit 40. In this embodiment, the route is determined based on all the reservation information received. Therefore, there may be cases where it is not possible to determine a route that satisfies all conditions. In this case, the verification unit 50 verifies whether all the reservation information is reflected in the route identified by the obtained optimal solution without any inconsistencies. For example, the verification unit 50 may verify whether all reservations are reflected in the determined route, or whether there are any inconsistencies such as the same bus being present at multiple bus stops simultaneously.
[0054] If a discrepancy exists between the identified route and the reservation information, the verification unit 50 deletes some of the reservation information and instructs the optimization unit 40 to run the optimization process again. The optimization unit 40 receives this instruction, deletes some of the reservation information, and runs the route optimization process again.
[0055] The method for determining which reservation information to delete is arbitrary. In this embodiment, the optimization process may be performed in batch processing, or it may be performed in real time each time reservation information is added. Therefore, the verification unit 50 may determine which reservation information to delete depending on the mode of the optimization process.
[0056] First, let's explain the situation where the optimization process is performed in batch processing. For example, the optimization unit 40 performs optimization processing in batch processing at night for reservations made up to one day before the operation. Here, the verification unit 50 may decide that all reservation information that has inconsistencies with the identified route is the reservation information to be deleted.
[0057] Next, we will explain a situation in which the optimization process is performed in real time. For example, suppose a route is determined using reservation information that does not contain any inconsistencies in batch processing. If new reservation information is then entered on the day, the optimization unit 40 will perform the optimization process in real time using the reservation information used to determine the route and the new reservation information. Note that the optimization process may be performed each time reservation information is entered, or it may be performed on several reservation entries at once. If an inconsistency arises in the route identified by this optimization process, the verification unit 50 may decide that the last entered reservation information is the reservation information to be deleted.
[0058] The output unit 60 outputs the results of the optimization process performed by the optimization unit 40. Specifically, the output unit 60 outputs a route that does not have any inconsistencies with the reservation information as a result of the optimization process. The output unit 60 may, for example, output the arrival times between each base and the number of users to board or alight at each base for each mode of transport in operation.
[0059] Furthermore, the output unit 60 may output a notification to the user who sent the reservation information that has been determined to be deleted, requesting them to make a reservation again.
[0060] Furthermore, the output unit 60 may issue control instructions to each device based on the output results. The output unit 60 may, for example, notify and display the estimated arrival time of the bus on an electronic display board (not shown) installed at each bus stop.
[0061] The input unit 20, the formulation unit 30, the optimization unit 40, the verification unit 50, and the output unit 60 are implemented by a computer processor (e.g., a CPU (Central Processing Unit) or GPU (Graphics Processing Unit)) that operates according to a program (optimization program). For example, the program may be stored in the memory unit 10 of the optimization system 100, and the processor may read the program and operate as the input unit 20, the formulation unit 30, the optimization unit 40, the verification unit 50, and the output unit 60 according to the program.
[0062] Furthermore, each function of the optimization system 100 may be provided in SaaS (Software as a Service) format. Also, the input unit 20, the formulation unit 30, the optimization unit 40, the verification unit 50, and the output unit 60 may each be implemented with dedicated hardware.
[0063] Furthermore, some or all of the components of each device may be implemented by general-purpose or dedicated circuits, processors, etc., or combinations thereof. These may be comprised of a single chip or multiple chips connected via a bus. Some or all of the components of each device may be implemented by a combination of the aforementioned circuits, etc., and programs.
[0064] Furthermore, if some or all of the components of the optimization system 100 are implemented by multiple information processing devices or circuits, these multiple information processing devices or circuits may be centrally located or distributed. For example, the information processing devices or circuits may be implemented in a form in which each is connected via a communication network, such as a client-server system or a cloud computing system.
[0065] Next, an example of the operation of the optimization system 100 of this embodiment will be described. Figure 6 is a flowchart showing an example of the operation of the optimization system 100 of this embodiment. The input unit 20 receives the input of reservation information (step S11). The formulation unit 30 formulates an objective function that includes a minimization term representing the total travel distance of the means of transport and a constraint term representing the penalty for violating the constraint conditions (step S12). This constraint term includes a term that indicates whether the boarding time or alighting time specified by the combination of boarding is within the allowable time range from the desired boarding time or desired alighting time in the reservation information. The optimization unit 40 then optimizes the route of the means of transport by minimizing the objective function calculated from the combination of input reservation information based on the travel time between bases (step S13).
[0066] As described above, in this embodiment, the input unit 20 receives reservation information, and the formulation unit 30 formulates an objective function including a minimization term and a constraint term. Then, the optimization unit 40 optimizes the route of the means of transport by minimizing the objective function calculated from the combination of input reservation information. Thus, the route of the means of transport passing through predetermined locations can be optimized.
[0067] Next, an overview of the present disclosure will be described. Figure 7 is a block diagram showing an overview of the optimization system of the present disclosure. The optimization system 80 (for example, the optimization system 100) according to the present disclosure includes an input unit 81 (for example, an input unit 20) that accepts input of reservation information including a boarding location, alighting location, and desired boarding time or desired alighting time; a formulation unit 82 (for example, a formulation unit 30) that formulates an objective function including a minimization term (for example, the first term in Equation 1 above) that represents the total travel distance of a means of transport (for example, a bus) that can accommodate multiple users traveling via a predetermined base (for example, a bus stop), and one or more constraint terms (for example, the second term and subsequent terms in Equation 1 above) that represent penalties for violating constraints when moving between bases; and an optimization unit 83 (for example, an optimization unit 40) that performs a process to optimize the route of a means of transport moving between bases by minimizing an objective function calculated from combinations of user boarding from boarding location to alighting location included in the input reservation information, based on the travel time between bases.
[0068] Furthermore, one or more constraint terms include a term indicating whether the boarding or alighting time specified by the boarding combination falls within the allowable time range from the desired boarding or alighting time in the reservation information.
[0069] Such a configuration allows for the optimization of transportation routes between designated locations.
[0070] Furthermore, the input unit 81 may accept the input of reservation information that also includes the number of passengers. The constraint term may also include a term indicating that the total number of passengers boarding due to the reservation is within the upper limit.
[0071] Furthermore, the optimization unit 83 may calculate the allowable arrival start time and arrival end time for each reservation based on a predetermined allowable time.
[0072] Furthermore, the optimization unit 83 may calculate desired boarding or alighting times that are not included in the reservation information, based on the travel time between locations.
[0073] Furthermore, the optimization system 80 may include a verification unit (for example, a verification unit 50) that verifies whether all reservation information is consistently reflected in the route identified by the obtained optimal solution. If the optimization unit 83 finds a discrepancy between the identified route and the reservation information, it may delete some of the reservation information and perform the route optimization process again.
[0074] Furthermore, in the minimization term and constraint term, whether or not a means of transportation passes through a predetermined location may be expressed as a binary variable. The optimization unit 83 may then use the objective function expressed as a binary variable to have the quantum computer optimize the system.
[0075] Figure 8 is a schematic block diagram showing the configuration of a computer according to at least one embodiment. The computer 1000 includes a processor 1001, a main memory 1002, an auxiliary memory 1003, and an interface 1004. The computer 1000 may also be connected to a computer for executing mathematical programming solvers, an annealing machine, a simulator, etc.
[0076] The optimization system 80 described above is implemented in the computer 1000. The operation of each processing unit described above is stored in the auxiliary storage device 1003 in the form of a program (optimization program). The processor 1001 reads the program from the auxiliary storage device 1003, loads it into the main memory 1002, and executes the above processing according to the program.
[0077] In at least one embodiment, the auxiliary storage device 1003 is an example of a non-temporary tangible medium. Other examples of non-temporary tangible media include magnetic disks, magneto-optical disks, CD-ROMs (Compact Disc Read-only memory), DVD-ROMs (Read-only memory), and semiconductor memory connected via the interface 1004. Furthermore, if this program is distributed to the computer 1000 via a communication line, the computer 1000 that receives the program may expand it into the main memory 1002 and execute the above processing.
[0078] Furthermore, the program may be intended to implement some of the functions described above. In addition, the program may be a so-called differential file (differential program) that implements the functions described above in combination with other programs already stored in the auxiliary storage device 1003.
[0079] Although the present invention has been described above with reference to the embodiments and examples, the present invention is not limited to the above embodiments and examples. Various modifications to the structure and details of the present invention can be made, as can be understood by those skilled in the art within the scope of the present invention.
[0080] This application claims priority based on Japanese Patent Application No. 2025-27492, filed on 25 February 2025, and incorporates all of its disclosures herein.
[0081] 10 Memory Unit 20 Input Unit 30 Formulation Unit 40 Optimization Unit 50 Verification Unit 60 Output Unit 100 Optimization System 200 Quantum Computer
Claims
1. An optimization system comprising: an input unit that accepts input of reservation information including boarding location, alighting location, and desired boarding time or desired alighting time; a formulation unit that formulates an objective function including a minimization term representing the total travel distance of transportation means that can accommodate multiple users passing through predetermined locations, and one or more constraint terms representing penalties for violating constraints when moving between locations; and an optimization unit that performs a process to optimize the route of transportation means moving between locations by minimizing the objective function calculated based on the combination of user boarding from the boarding location to the alighting location included in the input reservation information, wherein the one or more constraint terms include a term indicating whether the boarding time or alighting time specified by the combination of boarding is within an allowable time range from the desired boarding time or desired alighting time in the reservation information.
2. The optimization system according to claim 1, wherein the input unit accepts the input of reservation information including the number of passengers, and the constraint term includes a term indicating that the total number of passengers who board by reservation is within the upper limit.
3. The optimization system according to claim 1 or 2, wherein the optimization unit calculates the allowable arrival start time and arrival end time for each reservation based on a predetermined allowable time.
4. The optimization system according to claim 1 or 2, wherein the optimization unit calculates a desired boarding time or desired alighting time not included in the reservation information based on the travel time between locations.
5. The optimization system according to claim 1 or 2, further comprising a verification unit that verifies whether all reservation information is reflected in the route identified by the obtained optimal solution without contradiction, and the optimization unit, if a contradiction occurs between the identified route and the reservation information, deletes some of the reservation information and executes the process of optimizing the route again.
6. The optimization system according to claim 1 or 2, wherein in the minimization term and constraint term, whether or not a means of transport passes through a predetermined base is represented by a binary variable, and the optimization unit causes a quantum computer to optimize using the objective function represented by the binary variable.
7. An optimization method characterized in that it accepts input of reservation information including boarding location, alighting location, and desired boarding time or desired alighting time; formulates an objective function including a minimization term representing the total travel distance of a means of transport that can accommodate multiple users traveling via a predetermined base, and one or more constraint terms representing penalties for violating constraints when traveling between bases; and performs a process to optimize the route of the means of transport traveling between bases by minimizing the objective function calculated based on the combination of user boarding from the boarding location to the alighting location included in the input reservation information, based on the travel time between bases; and the one or more constraint terms include a term indicating whether the boarding time or alighting time specified by the combination of boarding is within an allowable time range from the desired boarding time or desired alighting time in the reservation information.
8. The optimization method according to claim 7, wherein the input of reservation information further includes the number of passengers, and the constraint term includes a term indicating that the total number of passengers who board by reservation is within the upper limit.
9. An optimization program that causes a computer to perform an input process that accepts reservation information including a boarding location, alighting location, and desired boarding time or desired alighting time; a formulation process that formulates an objective function including a minimization term representing the total travel distance of a means of transport that can accommodate multiple users traveling via a predetermined location, and one or more constraint terms representing penalties for violating constraints when traveling between locations; and an optimization process that optimizes the route of a means of transport traveling between locations by minimizing the objective function calculated from the combination of user boarding from the boarding location to the alighting location included in the input reservation information, based on the travel time between locations, wherein the one or more constraint terms include a term indicating whether the boarding time or alighting time specified by the combination of boarding is within an acceptable time range from the desired boarding time or desired alighting time in the reservation information.
10. An optimization program according to claim 9, which causes a computer to accept the input of reservation information, including the number of passengers, in its input processing, and the constraint term includes a term indicating that the total number of passengers who board by reservation is within an upper limit.