Price proposal device and price proposal method
Patent Information
- Application Number
- JP2025508066
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Filing Date
- 2025-09-09
- Publication Date
- 2025-11-25
AI Technical Summary
Existing systems fail to effectively estimate demand for products with limited sales periods and adjust prices to maximize seller profits, considering changes in demand over time and the influence of other products' prices.
A price proposal device and method that calculates a time series of suggested prices for product groups, using a demand function to estimate demand based on input prices, and searches for optimal prices across multiple time periods to increase overall seller profit, incorporating a demand model that accounts for changes in demand due to time and other products' prices.
The solution enables accurate demand estimation and optimal price setting, ensuring increased seller profits by reflecting changes in demand over time and the impact of other products' prices, thereby maximizing sales and profit across multiple product groups.
Abstract
Description
Price proposal device, price proposal method, and recording medium
[0001] The present invention relates to a price proposal device, a price proposal method, and a recording medium.
[0002] Systems have been proposed that calculate product prices so as to maximize sales profits. For example, Patent Literature 1 describes an optimization system that optimizes product prices so as to maximize total sales. Patent Literature 2 describes an inventory system that learns pricing using Q-learning.
[0003] International Publication No. 2017 / 056368 Special Publication No. 2022-509384
[0004] Demand for a product may change depending on the period for which the product is available for sale and the prices offered for other products, and it would be desirable to be able to estimate demand in response to such changes in demand.
[0005] An example of an object of this disclosure is to provide a price proposal device, a price proposal method, and a recording medium that can solve the above-mentioned problems.
[0006] According to a first aspect of the present invention, a price proposal device comprises: a demand function acquisition means for acquiring a demand function that, in response to input of a time series of offered prices for each of a plurality of product groups, each of which has a sales period set for that product group, and the offered prices for each of the plurality of product groups in a certain time period, outputs an estimated value of demand for each of the product groups when those offered prices are offered; and a solution search means for using the demand function to search for an offered price for each of the plurality of product groups so as to maximize the seller's profits across the plurality of time periods and across the plurality of product groups.
[0007] According to a second aspect of the present invention, a price proposal method includes a computer acquiring a demand function that, in response to input of a time series of offered prices for each of a plurality of product groups, each of which has a sales period set for that product group, and the offered prices for each of the plurality of product groups during a certain time period, outputs an estimate of demand for each of the product groups when those offered prices are offered, and using the demand function to search for an offered price for each of the plurality of product groups that will maximize the seller's profit across the plurality of time periods and across the plurality of product groups.
[0008] According to a third aspect of the present invention, a recording medium is a recording medium having recorded thereon a program for causing a computer to execute the following steps: obtain a demand function that, in response to input of a time series of the offered prices for each of a plurality of product groups, each of which has a sales period set for that product group, and the offered prices for each of the plurality of product groups during a certain time period, outputs an estimated value of demand for each of the product groups when those offered prices are offered; and use the demand function to search for an offered price for each of the plurality of product groups that will maximize the seller's profits across the plurality of time periods and across the plurality of product groups as a whole.
[0009] According to the present invention, a demand function can be obtained to estimate the period during which a product is available for sale and the demand that varies depending on the asking prices of other products.
[0010] FIG. 1 is a diagram showing an example of the configuration of a sales system according to a first embodiment. FIG. 2 is a diagram showing an example of the configuration of a price proposal device according to a first embodiment. FIG. 3 is a flowchart showing an example of the processing procedure by which the price proposal device according to the first embodiment proposes an offered price. FIG. 4 is a diagram showing an example of the configuration of a price proposal device according to a second embodiment. FIG. 5 is a diagram showing an example of the processing procedure by which the price proposal device according to the second embodiment solves an optimization problem in a simple manner. FIG. 6 is a diagram showing an example of the processing procedure by which the solution search unit according to the second embodiment determines state candidates. FIG. 7 is a diagram showing an example of the procedure by which the solution search unit according to the second embodiment performs state update processing. FIG. 8 is a diagram showing an example of the configuration of a price proposal device according to a third embodiment. FIG. 9 is a diagram showing an example of the processing procedure in a price proposal method according to a fourth embodiment. FIG. 10 is a schematic block diagram showing the configuration of a computer according to at least one embodiment.
[0011] <First Embodiment> Below, embodiments of the present invention will be described, but the following embodiments do not limit the invention according to the claims. Furthermore, not all combinations of features described in the embodiments are necessarily essential to the solution of the invention. FIG. 1 is a diagram showing an example of the configuration of a sales system according to the first embodiment. In the configuration shown in FIG. 1, a sales management system 1 includes a price proposal device 100 and a sales processing system 200.
[0012] The sales management system 1 is a system that manages the sales of products. The price proposal device 100 assists in determining the proposed price of a product. In particular, the price proposal device 100 can manage products that have a limited sales period, and proposes prices for each time period (each time zone). The time here refers to the date and time, i.e., the time that distinguishes between different dates. The proposed price proposed by the price proposal device 100 is also referred to as the proposed price.
[0013] The price proposal device 100 may be configured using a computer such as a workstation (WS) or a personal computer (PC). The computer configuring the price proposal device 100 may also include a quantum computer.
[0014] For a product that has a finite sales period, demand may change depending on the time and the offered price. With regard to time, for example, if the product is taking an airplane flight (boarding the flight), the plans of people (potential customers) may change over time, resulting in both new demand and a decrease in demand. Alternatively, if the product is a food product with an expiration date, demand may change depending on the length of time until the expiration date. Furthermore, demand may change over time due to changes in the sales situation of similar products at other stores and changes in people's (potential customers') needs or desires for the product.
[0015] Also, regarding the asking price, it is thought that the lower the price, the greater the demand. However, when considering the seller's profit, it is thought that increasing demand by setting a low price does not necessarily lead to an increase in the seller's profit. For example, if profit = price (unit price) x number of units sold, even if the price is set low and all inventory items are sold, the low unit price means that profit will be relatively small.
[0016] Therefore, the price proposal device 100 solves an optimization problem that searches for a proposed price for each time period that maximizes profits throughout the entire period during which the product can be sold, and proposes a price based on the obtained solution.
[0017] Furthermore, the price proposal device 100 proposes the price for each time period for multiple products whose demand may affect each other. For example, if the product is the use of an airplane flight and different prices are proposed depending on the departure date, a person (a potential customer) who is flexible with their departure date may choose to use the flight with the cheapest proposed price among flights that meet the departure date conditions. In this case, it is conceivable that the demand for the flight with the cheapest proposed price will increase, and the demand for other flights will decrease accordingly.
[0018] In addition, if the products are the same type of food product with a best-before date, and some products are discounted because their best-before dates are approaching, and some products are not discounted because they still have some time until their best-before dates, it is likely that demand for the discounted products will increase and demand for the non-discounted products will decrease accordingly.
[0019] Therefore, the price proposal device 100 solves the above optimization problem using an objective function that indicates an estimated total profit for multiple products whose demands may affect each other. As a result, the price proposal device 100 searches for and proposes prices for each of the multiple products at each price proposal time so as to maximize the profit for the multiple products as a whole.
[0020] In the following, an example will be described in which the target product for which the price proposal device 100 proposes a price is an airline ticket. However, the target product for which the price proposal device 100 proposes a price can be any product that has a limited sales period and a limited inventory (number of items that can be sold).
[0021] The last time a product can be sold is also called the cut-off time for that product. For example, if the product is an airplane flight (boarding on that flight), the last time reservations for that flight can be accepted is an example of the cut-off time.
[0022] For the sake of clarity, the following description will be given assuming that products with the same closing time are not differentiated. For example, if the product is the use of an airplane flight, the same price (a single price for all remaining seats) will be offered for all remaining seats on a flight if the price offer time is the same.
[0023] Furthermore, a collection of products with the same closing time is referred to as a slot or a product group. For example, if the product is the use of an airplane flight, each seat on the airplane flight is an example of a product, and a collection of seats on one flight is an example of a slot. Products included in the same slot are offered at the same time at the same price. Furthermore, the price proposal device 100 estimates demand according to the offered price for each slot and each time.
[0024] However, for products for which the price proposal device 100 proposes prices, products with the same closing time may be divided into multiple classes, and prices may be proposed for each class. For example, if the product is the use of an airplane flight, the seats on one flight may be divided into multiple classes, and prices may be proposed for each class. In this case, a set of products with the same closing time and belonging to the same class may be set as a slot. Then, as in the above case, the same price may be proposed for products included in the same slot at the same time, and the price proposal device 100 may estimate demand according to the proposed price for each slot and for each time.
[0025] The sales processing system 200 manages sales performance information for products. The sales processing system 200 may be configured using a computer system such as a client server system. The sales processing system 200 may have a function for selling products, like an online airline ticket reservation system, and may record and manage sales performance (sales results) when a sale is completed. Alternatively, the sales processing system 200 may accept input of sales performance information by a seller when a sale is completed, and record and manage the input sales performance information, like a POS (Point Of Sale) system. The sales performance information managed by the sales processing system 200 is used by the price proposal device 100 to estimate demand in order to calculate the proposed price.
[0026] In the following, it is assumed that the price proposed by the price proposal device 100 is adopted as the offered price as is, and it is also expressed as "the offered price is determined by the price proposal device 100." Furthermore, it is assumed that no discount is made from the offered price, and that the offered price becomes the selling price as is.
[0027] However, the price proposed by the price proposal device 100 may differ from the actual selling price. For example, the seller of the product may decide the proposed price by referring to the price proposed by the price proposal device 100. Also, a discount may be applied to the proposed price.
[0028] Even if the price proposed by the price proposal device 100 differs from the actual selling price, the correlation between the price proposed by the price proposal device 100 and the selling price is expected to result in improved profits compared to when not using the price proposal device 100. Alternatively, the price proposal device 100 may learn a model that calculates the difference between the proposed price and the actual selling price, and reflect the predicted value of the difference between the proposed price and the selling price in the calculation of the proposed price.
[0029] Time is expressed as time steps from 1 to T. T is an integer representing the final time, and T>0. t' can be expressed as t'=1, 2, ..., T, where t' is an index representing time. One step in the time steps is also called a time or a time period.
[0030] The price proposal device 100 proposes, for each time slot, a price for which the deadline has not yet passed. The time length of each step may be set to the same length, such as one step being set to one hour in the time step. Alternatively, the time length may vary depending on the step, such as one step being set to one hour between 8:00 AM and 8:00 PM, and the entire period (the entire time from 8:00 PM to 8:00 AM) being set to one step between 8:00 PM and 8:00 AM. The slots for which the deadline has not yet passed are also referred to as remaining slots.
[0031] The price proposal device 100 may be configured to repeatedly propose prices for each time from time 1 to T, for example, by setting the final time T to the end of each month. Also, the price proposal device 100 may be configured to execute multiple repetitions of price proposals for each time from time 1 to T in parallel. For example, if reservations for flights in each month begin on the 1st of the previous month, the price proposal device 100 may be configured to execute, in parallel, a repetition of price proposals for each time from time 1 to T for flights in the current month, and a repetition of price proposals for each time from time 1 to T for flights in the following month.
[0032] The final time T may also differ depending on the slot. For example, if the final time T is set to the end of each month, the value of the final time T may be set according to the number of days in each month, and the value of the final time T may differ for each month. Also, for example, if reservations for each month's flight start on the first day of the previous month, the departure time for each flight is different, and reservations can be made up to 20 minutes before the departure time of each flight, the time from when reservations start to when they end (the deadline) differs depending on the slot. Therefore, in this case, the value of the final time T differs depending on the slot.
[0033] The current time may be represented by t, where t is an index representing time and is an integer such that 1≦t≦T. When the current time is t, the price proposal device 100 estimates (predicts) demand at the current time t and at subsequent times based on information indicating actual demand for each time slot up to time t−1, and proposes a price for each slot to be presented at the current time t.
[0034] The actual demand for each time slot and for each time slot is the number of items sold for that time slot. Therefore, the price proposal device 100 uses information indicating the number of items sold for that time slot at that time (sales performance information) for each time slot and for each time slot as information indicating the actual demand for each time slot and for each time slot.
[0035] Furthermore, the number of slots is J, and each slot is identified by an identification number j=1, 2, ..., J, where J is an integer greater than or equal to 1. The deadline of the j-th slot is T j and 0<T 1 <...<T J = T. In this way, the earlier the deadline, the smaller the identification number assigned to the slot. The j-th slot will also be referred to as slot j.
[0036] The deadline of each slot is included in a different step in the time step, and the time t' can be expressed as, for example, t' = 1, 2, ..., T1, T1+1, ..., T2, T2+1, .... However, there may be slots whose deadlines are included in the same step. For example, the deadline T i and the deadline T of the i+1th slot. i+1 are included in the same step, and T i =T i+1 It may also be expressed as:
[0037] For each slot, the product can be purchased up until the deadline, and cannot be purchased from the time after the deadline. Therefore, if the current time is represented by t, then for the j-th slot, t = T j Prices can be offered and demand accepted (i.e., bought and sold) until t = Tj +1 and thereafter, no prices are quoted for the jth slot and no demand is accepted.
[0038] Also, the number of the window whose deadline arrives first at time t' or after that is denoted by j t’ It is written as j t’ can be expressed as in equation (1).
[0039]
[0040] Furthermore, the price proposal device 100 selects K proposal price candidates p 1 , p 2 , ..., p K The price to be offered is selected from any one of the following: K is an integer greater than or equal to 2. 1 <p 2 <...<p K In this way, the cheaper the price of a candidate, the smaller the identification number assigned to it.
[0041] Fig. 2 is a diagram showing an example of the configuration of price proposal device 100. In the configuration shown in Fig. 2, price proposal device 100 includes a communication unit 110, a display unit 120, an operation input unit 130, a storage unit 180, and a control unit 190. Control unit 190 includes a demand function acquisition unit 191 and a model learning unit 192.
[0042] The communication unit 110 communicates with other devices. For example, the communication unit 110 receives sales performance information from the sales processing system 200. When the sales processing system 200 sells a product, the communication unit 110 may transmit a proposed price to the sales processing system 200, and the sales processing system 200 may use the received proposed price as the asking price.
[0043] The display unit 120 has a display screen such as a liquid crystal panel or an LED (Light Emitting Diode) panel, and displays various images. For example, the display unit 120 may display the proposed price calculated by the price proposal device 100.
[0044] The operation input unit 130 includes input devices such as a keyboard and a mouse, and accepts user operations. For example, if the price proposal device 100 cannot acquire information about a product, or part of it, such as the product's closing time or inventory quantity, from the sales processing system 200, the operation input unit 130 may accept a user operation to input information about the product. The operation input unit 130 may also accept a user operation to set a meta parameter value in an algorithm used by the price proposal device 100.
[0045] The storage unit 180 stores various data. For example, the storage unit 180 stores information about products, such as the closing time and inventory quantity of the product. The storage unit 180 also stores sales performance information that the price proposal device 100 acquires from the sales processing system 200. The storage unit 180 is configured using a storage device provided in the price proposal device 100.
[0046] The control unit 190 controls each unit of the price proposal device 100 to perform various processes. The functions of the control unit 190 or a part thereof may be executed by a CPU (Central Processing Unit) included in the price proposal device 100 reading and executing a program from the storage unit 180. Furthermore, the functions of the control unit 190 or a part thereof may be executed using a quantum computer, such as by the control unit 190 solving an optimization problem using a quantum computing technique.
[0047] The model learning unit 192 learns a demand model based on historical data of the offered prices of each of a plurality of product groups at each time and the demand for each product group at the time the offered prices were offered. The demand model here is a model that shows the relationship between the time series of the offered prices of each of a plurality of product groups and the demand. The demand model used by the price proposal device 100 is not limited to a specific type of model. For example, the price proposal device 100 may use a demand model that shows the type of demand distribution.
[0048] Furthermore, consider the case where a user who operates the price proposal device 100 assumes that the distribution of demand follows a Poisson distribution. The Poisson distribution can be expressed by an equation with the mean value of the distribution as a parameter. The user who operates the price proposal device 100 is also simply referred to as the user.
[0049] In this case, the price proposal device 100 may use a demand model that indicates a Poisson distribution. For example, the price proposal device 100 may use a demand model that receives input of the price and time for each product group and outputs a Poisson distribution of demand for each product group. Furthermore, the demand model may output the mean value of the distribution as an output that indicates the Poisson distribution.
[0050] In this case, each time the model learning unit 192 acquires performance data on the prices of each product group and the demand for each product group, the model learning unit 192 updates the input / output relationship of the demand model so as to reflect the relationship between the prices and the demand indicated in the acquired performance data. The process of the model learning unit 192 updating the input / output relationship of the demand model corresponds to an example of demand model learning.
[0051] Alternatively, the price proposal device 100 may use a demand model that indicates a demand function. The demand function here is a function that, in response to input of the offered prices of a plurality of product groups in a certain time period, outputs an estimated value of demand for each product group when those offered prices are offered. The following describes an example in which the demand function outputs the average value of the estimated demand distribution as the estimated value of demand. Here, the parameters of the demand distribution are expressed as a function of price and time, and although it is possible to assume in advance what type of demand distribution there is, it is assumed that the demand distribution itself cannot be known in advance.
[0052] The price proposal device 100 may estimate the demand function using a parametric Bayesian estimation method. For example, under the assumption that the demand function is specified by parameters, the user prepares a demand function template in advance and sets in advance the distribution of the template's parameter values for parameter estimation.
[0053] The demand function template here is a demand function that includes parameters. In other words, the demand function template is a function that has parameters and represents a demand function. The demand function is determined by determining the values of the template parameters. The demand function template is not limited to a specific function, and can be various functions that have parameters.
[0054] The price proposal device 100 calculates the posterior distribution of the template parameter values based on the performance data of combinations of price and demand for each time period. Then, the price proposal device 100 samples the template parameter values based on the posterior distribution, and inputs the sampled parameter values into the demand function template to obtain the demand function.
[0055] In this case, the combination of the demand function template and the posterior distribution of the template's parameter values corresponds to an example of a demand model. The model learning unit 192 updates the posterior distribution of the template's parameter values each time it acquires actual data on the prices and demand for each product group. This update of the posterior distribution corresponds to an example of learning the demand model.
[0056] Alternatively, the price proposal device 100 may estimate the demand function using a nonparametric Bayesian estimation method. For example, without assuming that the demand function is specified by parameters, the price proposal device 100 calculates the posterior distribution of the demand function in a Gaussian process based on performance data of combinations of price and demand for each time period. Then, the price proposal device 100 samples the demand function from the Gaussian process.
[0057] In this case, a Gaussian process is an example of a demand model. In the price proposal device 100, the Gaussian process represents the distribution of demand for each price. The model learning unit 192 updates the demand model by calculating the posterior distribution of the Gaussian process, which is the demand model, each time it acquires performance data on the price for each product group and the demand for each product group. The process of updating the demand model by the model learning unit 192 is an example of learning the demand model. However, the nonparametric model used by the price proposal device 100 is not limited to a Gaussian process as long as it is a model that can express a demand function.
[0058] Alternatively, the price proposal device 100 may acquire the demand model in advance. Also, the price proposal device 100 may acquire the demand model from another device. In these cases, the price proposal device 100 does not need to be equipped with the model learning unit 192.
[0059] The demand function acquisition unit 191 acquires a demand function based on the demand model. When the price proposal device 100 uses a demand model that indicates the type of demand distribution, the demand model that receives input of the price and time for each product group after learning by the model learning unit 192 and outputs the distribution of demand for each product group can be treated as the demand function.
[0060] For example, if the price proposal device 100 uses a demand model that exhibits a Poisson distribution, as described above, the Poisson distribution can be expressed by an equation with the mean value of the distribution as a parameter. As a result, the demand model learned by the model learning unit 192 can receive input of the price and time for each product group and output the mean value of the demand distribution for each product group. The demand model in this case corresponds to an example of a demand function.
[0061] When the price proposal device 100 estimates a demand function using a parametric Bayesian estimation method, the demand function acquisition unit 191 samples parameter values based on the posterior distribution of the parameter values of a demand function template. Then, the demand function acquisition unit 191 sets the sampled parameter values in the demand function template to acquire the demand function.
[0062] When the price proposal device 100 estimates a demand function using a non-parametric Bayesian estimation method, the demand function acquisition unit 191 samples the demand function from a non-parametric model such as a Gaussian process.
[0063] The demand function acquisition unit 191 corresponds to an example of a demand function acquisition means. The demand function acquisition unit 191 acquires a demand function λ whose input and output are shown in Equation (2). ~ j may be acquired.
[0064]
[0065] A character with a tilde is a character with " ~ For example, λ with a tilde j λ ~ j In equation (2), the frame identification number j is expressed as the demand function λ ~ j The jth frame to the Jth frame are used as the identification number of the demand function λ ~ j is the target window for outputting demand estimates.
[0066] "{p 1 , ..., p K} J-j+1 " is a set of candidate asking prices {p 1 , ..., p K}. Therefore, "{p 1 , ..., p K} J-j+1 " is a set of all possible ordered pairs (p i_1 , p i_2 , ..., p i_J-j+1 ) as an element. j-1 +1, ..., T j}” is the deadline T j-1 The next time T j-1 +1 to jth frame deadline T j This indicates a set whose elements are each time up to the current time.
[0067] In addition, in formula (2), "x" indicates a Cartesian product of sets. 1 , ..., p K} J-j+1 ×{T j-1 +1, ..., T j}" is a set {T j-1 +1, ..., T j}, all possible ordered pairs (p i_1 , p i_2 , ..., p i_J-j+1 , t') as elements.
[0068] demand function λ j receives input of time t′ and the asking price for each remaining slot at that time. The asking price in this case may be a provisional value for solving the optimization problem.
[0069] "R" in formula (2) J-j+1 " denotes the J-j+1 dimensional real number space. The demand function λ ~ j outputs the demand estimate for each of the remaining slots at time t', which is input as an argument. The demand estimate here is the number of items that are expected to be sold when there is no need to consider stock-outs of the items.
[0070] While the quantity of a product is expressed as an integer, the demand function λ ~ j The demand estimate output by is used in the calculation of the objective function for maximizing the estimated value of the sales amount corresponding to the proposed price, which is used by the price proposal device 100 in the solution search, and the demand estimate does not need to be expressed as an integer value. ~ j is assumed to output the demand estimates for each of the remaining frames as real values.
[0071] Since the number of remaining slots decreases every time the deadline for a slot passes, in the example of equation (2), the demand function λ ~ j The time to be input to is the deadline T j-1 The next time Tj-1 +1 to jth frame deadline T j The time is set to .
[0072] However, the demand function acquired by the demand function acquisition unit 191 is not limited to a specific one, and may be any of various functions that output a demand estimate value according to time series data of the asking price for each slot. For example, when the demand function acquisition unit 191 acquires the closing time T j-1 The next time T j-1 +1 to the closing time of the last slot T J At each time up to the time T j-1 +1 to T J A demand function may be obtained that outputs a demand estimate for each of the remaining slots at each time up to the end of the period.
[0073] In this case, the provisionally set offered price for the slot after the deadline may be excluded from being input to the demand function. Alternatively, a price that is predetermined as a sufficiently high price that makes demand approximately zero may be input to the demand function as the provisionally set offered price for the slot after the deadline. Note that there is no need for a strict relationship expressed by a function between the offered price and the actual demand; it is sufficient if there is a correlation that is approximately expressed by the demand function acquired by the demand function acquisition unit 191.
[0074] Below, we will explain an example in which the model learning unit 192 uses actual sales information (information indicating actual demand) obtained from the sales processing system 200 to learn a demand model using a Gaussian process, and the demand function acquisition unit 191 samples a demand function from the obtained Gaussian process.
[0075] As described above for the user, at the start of demand model learning, the model learning unit 192 does not know the demand function itself, but it knows the type of probability distribution that the actual demand follows (or what type of probability distribution should be assumed). Here, it is assumed that the model learning unit 192 knows that the Poisson distribution should be assumed as the probability distribution that the actual demand follows. However, the type of probability distribution assumed as the probability distribution that the actual demand follows is not limited to the Poisson distribution, and various types can be used depending on the relationship between the asking price and the actual demand. The fact that the actual demand follows the Poisson distribution is expressed as in Equation (3).
[0076]
[0077] λ j indicates the average value of the actual demand in the jth window. j ) is the average value of the actual demand in the jth window, λ j This shows the Poisson distribution when . j is Poisson(λ j ) indicates the actual demand for the j-th slot obtained according to the probability distribution shown in
[0078] The average value of the actual demand depends on the time t' and the asking price p for each remaining slot at that time. Therefore, we can use these as arguments to define the function λ j (p, t'), where "p" is a vector indicating the provisionally set value of the proposed price for each of the remaining slots at time t'. The price proposal device 100 calculates the average value λ of the actual demand. j Since (p, t') is unknown, the estimated average demand value λ ~ j (p, t') and calculate the demand function λ ~ j (p, t') is used as the demand function λ of the jth frame. ~ j is expressed as in equation (4).
[0079]
[0080] exp denotes an exponential function with Napier's constant e as the base.j is a Gaussian process g j is a function sampled based on
[0081]
[0082] g j (m, K) represents a Gaussian process with mean vector m and kernel function K.
[0083] Gaussian process g j The calculation of the posterior distribution in is done using the demand function λ ~ j This can be done using a known calculation algorithm, using actual data corresponding to the input and output of the above as data points.
[0084] The proposed price calculated and output by the price proposal device 100 can be used as the actual value of the proposed price. ~ j The number of items sold for the jth slot at time t' can be used as actual sales data equivalent to the output of (1). The number of items sold for the jth slot at time t' is indicated in the sales performance information from the sales processing system 200.
[0085] The model learning unit 192 calculates a Gaussian process g j All of the obtained performance data may be used as performance data used to calculate the posterior distribution in . That is, the model learning unit 192 may use the asking price for each remaining slot at each time in the past, including slots whose deadlines have already passed, as performance data for the asking price. For performance data on demand, the model learning unit 192 may use the number of items sold in the slot for which demand is to be estimated at each time in the past. At this point in time, the model learning unit 192 may use the Gaussian process g j This is the time when the posterior distribution at
[0086] Alternatively, the model learning unit 192 may use a part of the obtained performance data to calculate the Gaussian process g jFor example, the model learning unit 192 may use the asking price for each slot at each past time for each of the currently remaining slots as the performance data of the asking price. In this case, too, the model learning unit 192 may use the number of units sold of the product in the slot for which demand is to be estimated at each past time for the performance data of demand.
[0087] In addition, the model learning unit 192 uses performance data of past cases for which the final time has already passed to calculate the Gaussian process g j Furthermore, the price proposal device 100 may use a demand model or a demand function in a past case where the final time has already passed.
[0088] For example, if it is known that the trend of demand in the same month is the same every year, the model learning unit 192 may use the actual data of the same month as the current month in the previous year or any year before to calculate the Gaussian process g j Alternatively, the price proposal device 100 may use the demand model already acquired by the model learning unit 192 or the demand function already acquired by the demand function acquisition unit 191 in estimating demand for the same month as the current month in the last year or an earlier year.
[0089] As mentioned above, the Gaussian process g corresponding to each remaining frame at a certain time j The calculation of the posterior distribution in corresponds to an example of learning of the demand model by the model learning unit 192. As the number of performance data increases, the accuracy of the demand model is expected to increase.
[0090] When a Poisson distribution is used as the probability distribution assumed to be followed by the actual demand, the average value of the distribution can be obtained as a parameter value indicating the Poisson distribution using a Gaussian process. In this way, when the average value of the distribution of the actual demand can be obtained using a Gaussian process, the demand function acquisition unit 191 calculates a function indicating an estimated value of the average value of the demand or a function approximating the estimated value of the average value of the demand as the demand function λ ~ j It can be obtained as (p, t').
[0091] However, as described above, the probability distribution that the actual demand is assumed to follow is not limited to a specific type of distribution. ~ j (p, t') is not limited to a function indicating an estimated value of the average value of the demand or a function approximating the estimated value of the average value of the demand, but can be any function obtained according to the probability distribution indicated by the demand model.
[0092] The demand function λ for each of the remaining frames ~ jt (p, t'), λ ~ jt+1 (p, t'), ..., λ ~ J The combination of (p, t') is expressed as the demand function λ ~ Also called (p, t'). Demand function λ ~ (p, t') is an example of a demand function that, in response to input of the offered prices of each of a plurality of product groups in a certain time period, outputs an estimated value of demand for each product group when those offered prices are offered.
[0093] The solution search unit 193 uses the demand function to search for the asking price for each of the multiple product groups in each of the multiple time periods so as to maximize the seller's profit across the multiple time periods and across the multiple product groups. The solution search unit 193 is an example of a solution search means.
[0094] Specifically, the solution search unit 193 calculates the asking price for each remaining slot at each time. In particular, the solution search unit 193 calculates the asking price that maximizes the seller's profit by solving an optimization problem using the demand function acquired by the demand function acquisition unit 191. The objective function of the optimization problem solved by the solution search unit 193 can be, for example, the function shown in Equation (6).
[0095]
[0096] As described above, "p" is a vector indicating the provisional asking price values for each of the remaining slots at time t'. For each slot, the provisional asking price values are set as the asking price candidates p 1 , p2 , ..., p K Either of the following is selected. ~ jt’ is a demand function acquired by the demand function acquisition unit 191. ~ jt’ The value of (p, t') is a vector indicating the demand estimate for each of the remaining slots when the asking price indicated by "p" is offered at time t'.
[0097] "<p, λ ~ jt’ (p, t')>" is a vector "p" and a vector "λ ~ jt’ (p, t') represents the inner product of ~ jt’ "(p, t')>" indicates the total amount of the estimated sales amount for each remaining slot when the asking price indicated by "p" is offered at time t'.
[0098] "x jt’ (p, t')" is "<p, λ ~ jt’ The weight function x indicates the weight to be multiplied by (p, t'). j The input and output are expressed as in equation (7).
[0099]
[0100] In equation (7), the frame identification number j is used as the weight function x j It is also used as an identification number for 1 , ..., p K} J-j+1 ", "{T j-1 +1, ..., T j}" and "x" are the same as in the case of formula (2).
[0101] The demand function λ shown in equation (2) ~ j As in the case of j is the deadline T of the j-1th slot. j-1 The next time T j-1 +1 to jth frame deadline T jThe system receives input of the asking price for each of the J-j+1 slots from j to J at each time up to the end of the period. The asking price in this case may be a provisional setting value for solving the optimization problem.
[0102] Furthermore, as shown in equation (7), the weighting function x j outputs a real value greater than or equal to 0 and less than or equal to 1. The weighting function x j The value of is the target of solution search in the optimization calculation performed by the solution search unit 193. That is, the solution search unit 193 searches for a weighting function x jt’ Search for the value of (p, t'). The value of the weight function is also called the weight or the weight value.
[0103] "Σ" in equation (6) t’=t T Σ p∈{p1,・・・,pK}J-jt’+1 " is "<p, λ ~ jt’ (p, t')>" to "x jt’ (p, t′)” is multiplied and the resulting value is added up for all combinations of the asking prices of the remaining slots indicated by vector p, from the current time t to the final time T.
[0104] The first constraint condition in the optimization problem solved by the solution search unit 193 can be, for example, the condition shown in equation (8).
[0105]
[0106] Equation (8) expresses that at time t', for all combinations of the asking prices of the remaining slots represented by vector p, "x jt’ (p, t')" is added to the final time T, and the constraint condition shown in equation (8) is satisfied for each time t' = t, t + 1, ..., T from the current time t to the final time T.
[0107] The second constraint condition in the optimization problem solved by the solution search unit 193 can be, for example, the condition shown in equation (9).
[0108]
[0109] Equation (9) is the weight "x jt’The constraint condition shown in equation (9) is that the vector p (p, t') is equal to or greater than 0. It is assumed that the constraint condition shown in equation (9) is satisfied for each time t' = t, t+1, ..., T from the current time t to the final time T, and for any combination of the asking prices of the remaining slots indicated by the vector p.
[0110] From equations (6), (8) and (9), the weight "x jt’ (p, t') can be understood to represent the probability that the sales amount will be the largest when the asking price of the remaining slots indicated by vector p is offered at time t'. Equation (6) can be understood to represent the expected value of the sales amount obtained from the current time t to the final time T.
[0111] Here, it is assumed that the sales amount is equal to the profit. Equation (6) corresponds to an example of the objective function that indicates the total profit for multiple products whose demands may affect each other, as described above. Alternatively, the objective function may include an equation for converting the sales amount into profit, and the solution search unit 193 may search for a price that maximizes the seller's profit. Alternatively, the price proposal device 100 may propose a price that maximizes the sales amount. If the larger the sales amount, the larger the profit, then maximizing the sales amount will maximize profit.
[0112] The third constraint condition in the optimization problem solved by the solution search unit 193 can be, for example, the condition shown in equation (10).
[0113]
[0114] " [λ ~ jt’ (p, t')] j-jt’+1 " indicates the estimated demand for the j-th window at time t' when the asking price indicated by vector p is offered. "Σ t’=t Tj Σ p∈{p1,・・・,pK}J-jt’+1 " is the jth frame, "[λ ~ jt’ (p, t')] j-jt’+1 " to "x jt’(p, t')" for all combinations of the offer prices of the remaining slots indicated by vector p, and from the current time t to the deadline T j Show that they add up to
[0115] "n j (t-1)" indicates the number of items in stock in the j-th slot at time t-1. j The inventory quantity indicated by "(t-1)" reflects the number of sales at time t-1. j The stock quantity indicated by "(t-1)" can be said to be the stock quantity of the product in the jth slot at the end of the time slot indicated by time t-1.
[0116] Equation (10) is the time from the current time t to the deadline time T j The constraint condition is that the total number of sales of the product in the slot up to time t is equal to or less than the number of items in stock at time t-1. The solution search unit 193 searches for a solution that satisfies the constraint condition shown in equation (10) for all of the remaining slots at the current time t. That is, the solution search unit 193 searches for a solution that satisfies the constraint condition shown in equation (10) for all of the remaining slots at the current time t. t , j t+1 , . . . , J, a solution is searched for that does not use up the stock in any of the remaining slots by satisfying the constraints shown in equation (10) for all j in J.
[0117] Here, even if the proposed price of a product is set low and demand increases, if the product runs out of stock, the product cannot be sold any more, and this does not lead to profits for the seller. Therefore, the solution search unit 193 searches for a proposed price that is unlikely to result in a situation where the product runs out of stock and cannot be sold to meet demand, by performing a solution search based on the constraint condition shown in equation (10). Equation (10) is an example of a constraint condition that does not result in inventory shortages.
[0118] The proposal processing unit 194 controls the output of the offered prices obtained through the solution search by the solution search unit 193. For example, the proposal processing unit 194 may control the communication unit 110 to transmit the offered prices for each of a plurality of product groups in a time period in the near future, from among the offered prices obtained through the solution search by the solution search unit 193, to the sales processing system 200. In this case, the combination of the communication unit 110 and the proposal processing unit 194 corresponds to an example of a proposal means.
[0119] However, the method by which the price proposal device 100 outputs the offered prices is not limited to a specific method. For example, the proposal processing unit 194 may control the display unit 120 to display the offered prices for each of a plurality of product groups in a time period in the near future, among the offered prices obtained through the solution search by the solution search unit 193. In this case, the combination of the display unit 120 and the proposal processing unit 194 corresponds to an example of a proposal means.
[0120] 3 is a flowchart showing an example of a processing procedure for the price proposal device 100 to propose an offered price. In the processing of FIG. 3, the model learning unit 192 ~ (p, t) is initialized (step S1).
[0121] Next, the demand function acquisition unit 191 calculates the demand model λ ~ From (p, t) the demand function λ ~ jt’ (p, t) is sampled (step S2). Next, the solution search unit 193 searches for weight values for each time and for each combination of candidate offered prices (step S3).
[0122] Next, the solution search unit 193 determines the price to be proposed as the asking price for each of the remaining slots at the current time t based on the weights obtained by the search (step S4). For example, the solution search unit 193 adopts the asking price candidate associated with the largest weight among the weights at the current time t as the proposed price.
[0123] Next, the proposal processing unit 194 performs processing to propose the price determined by the solution search unit 193 in step S4 (step S5). For example, the proposal processing unit 194 controls the communication unit 110 to transmit the price determined by the solution search unit 193 in step S4 to the sales processing system 200. In addition to this, or instead, the proposal processing unit 194 may control the display unit 120 to display the price determined by the solution search unit 193 in step S4.
[0124] Next, the model learning unit 192 acquires the actual value of the demand at the current time t (step S6). Next, the price proposal device 100 determines whether the final time T has passed (step S7). If it is determined that the final time T has not passed (step S7: NO), the model learning unit 192 learns the demand model λ based on the actual value of the demand obtained in step S6. ~ (p, t) is updated (step S11). After step S11, the process returns to step S2.
[0125] On the other hand, if the price proposal device 100 determines in step S7 that the final time T has passed (step S7: YES), the process returns to step S1. In this case, the price proposal device 100 starts the process of Fig. 3 for the new product to be sold. In cases such as when the model learning unit 192 already knows the correlation between the demand for the product whose final time T has passed and the demand for the new product to be processed in Fig. 3, the model learning unit 192 uses the demand model λ set in step S1. ~ The initial values of (p, t) may be updated.
[0126] As described above, the demand function acquisition unit 191 acquires a demand function. The demand function is a function that, in response to inputs of a time series of the offered prices for each of a plurality of product groups, each of which has a sales period defined for that product group, and the offered prices for each of the plurality of product groups in a certain time period, outputs an estimated value of demand for each of the product groups when those offered prices are offered. The solution search unit 193 uses the demand function to search for an offered price for each of the plurality of product groups that maximizes the seller's profit across all of the plurality of time periods and across all of the plurality of product groups.
[0127] The price proposal device 100 can obtain a demand function for estimating the period during which a product is available for sale and the demand that changes depending on the offered prices of other products. In particular, the price proposal device 100 obtains a demand function based on a demand model that shows the relationship between the offered prices of multiple product groups and the demand function, and is therefore expected to obtain a demand function that reflects the offered prices of other product groups when estimating demand for each product group. Furthermore, the price proposal device 100 obtains a demand function based on a demand model that shows the relationship between the time series of the offered prices of the product groups and the demand function, and is therefore expected to obtain a demand function that reflects changes in the period during which a product is available for sale over time when estimating demand for a product group.
[0128] Furthermore, the price proposal device 100 can determine the asking price in response to the demand that changes depending on the period during which the product is available for sale and the asking prices of other products. In particular, by using a demand model that shows the relationship between the time series of the asking prices of each of a plurality of product groups and the demand function, the price proposal device 100 can propose asking prices that reflect the influence of the asking prices of other product groups on the demand of each product group and also reflect changes in the period during which the product is available for sale over time.
[0129] Furthermore, the demand function acquisition unit 191 learns the demand function based on performance data relating to the offered prices of each of a plurality of product groups and the demand for each product group at the time the offered prices were offered. The price proposal device 100 can learn the demand model each time performance data is obtained, which is expected to improve the accuracy of the demand model and the demand function. Furthermore, the price proposal device 100 can repeat the learning of the demand model and update the demand model in response to changes in the period during which a product is available for sale over time.
[0130] In addition, the demand function acquisition unit 191 calculates the posterior distribution of the probability related to the demand function based on actual data on the offered prices of each of multiple product groups and the demand for each product group when those offered prices were offered, and acquires the demand function based on the obtained posterior distribution.
[0131] According to the price proposal device 100, it is possible to learn a demand model including a posterior distribution of probabilities related to the demand function each time performance data is obtained, and it is expected that the accuracy of the demand model and the accuracy of the demand function can be improved. Furthermore, according to the price proposal device 100, it is possible to repeatedly learn the demand model and update the demand model in accordance with changes over time in the period during which the product is available for sale.
[0132] In addition, the demand function acquisition unit 191 calculates the posterior distribution of the parameter values of the demand function including the parameters based on the actual data of the offered prices of each of multiple product groups and the demand for each product group when those offered prices were offered, samples the parameter values based on the obtained posterior distribution, and acquires a demand function to which the sampled parameter values are applied.
[0133] According to the price proposal device 100, it is possible to learn a demand model including a posterior distribution of the parameter values of the demand function each time performance data is obtained, and it is expected that the accuracy of the demand model and the accuracy of the demand function can be improved. Furthermore, according to the price proposal device 100, it is possible to repeatedly learn the demand model and update the demand model in accordance with changes over time in the period during which the product is available for sale.
[0134] In addition, the demand function acquisition unit 191 calculates the posterior distribution of the demand function in a Gaussian process that shows the distribution of the demand function based on actual data on the offered prices of each of multiple product groups, the time at which those offered prices were offered, and the demand for each product group at the time those offered prices were offered, and samples the demand function based on the obtained posterior distribution.
[0135] According to the price proposal device 100, it is possible to learn a demand model using a Gaussian process each time performance data is obtained, which is expected to improve the accuracy of the demand model and the demand function. Furthermore, according to the price proposal device 100, it is possible to repeatedly learn the demand model and update the demand model in accordance with changes over time in the period during which the product is available for sale.
[0136] Second Embodiment In the first embodiment, it is possible to solve the optimization problem based on the objective function shown in the above formula (6) and the constraint conditions shown in formulas (8), (9), and (10) using a known solution search algorithm. In this case, as the number of frames increases, the number of solution candidates p∈{p 1 , ..., p K} J-jt’+1 This may increase the number of elements, significantly increasing the calculation time.
[0137] On the other hand, if it takes a long time for the price proposal device 100 to calculate the proposed price, even if the price proposal device 100 proposes a price, the price may not be presented at an appropriate time, and this may not lead to an increase in the seller's profits. Therefore, the price proposal device 100 may be configured to solve the optimization problem in a simplified manner. In the second embodiment, an example in which the price proposal device 100 solves the optimization problem in a simplified manner will be described.
[0138] Figure 4 is a diagram showing an example of the configuration of a price proposal device 100 according to the second embodiment. In the configuration shown in Figure 4, the price proposal device 100 includes a communication unit 110, a display unit 120, an operation input unit 130, a storage unit 180, and a control unit 190. The control unit 190 includes a model learning unit 192, a demand function acquisition unit 191, a solution search unit 193, and a proposal processing unit 194. The solution search unit 193 includes an initial setting unit 311, a time period selection unit 312, a product group selection unit 313, a change unit 314, and a proposed price determination unit 315.
[0139] The price proposal device 100 shown in Fig. 4 corresponds to the example of the price proposal device 100 shown in Fig. 2. Fig. 4 shows that the solution search unit 193 further comprises an initial setting unit 311, a time period selection unit 312, a product group selection unit 313, and a change unit 314, in addition to the configuration of the price proposal device 100 in Fig. 2. In all other respects, the sales management system 1, the solution search unit 193, and the sales processing system 200 in the second embodiment are all the same as those in the first embodiment.
[0140] The initial setting unit 311 initializes the offered prices for each of a plurality of product groups for each of a plurality of time periods. The time period selection unit 312 selects one of the plurality of time periods. The time period selected by the time period selection unit 312 is treated as the time period for which the offered prices are to be changed.
[0141] The product group selection unit 313 selects one of the multiple product groups. The slot selected by the product group selection unit 313 is treated as the slot for which the offered price is to be changed. The change unit 314 changes the offered price of the selected product group for the selected time period.
[0142] The proposed price determination unit 315 selects a combination that is estimated to maximize the seller's profit from among multiple combinations of the proposed prices of multiple product groups in multiple time periods obtained by repeatedly selecting time periods, selecting product groups, and changing the proposed prices.
[0143] As the objective function in the second embodiment, for example, the objective function shown in equation (11) can be used.
[0144]
[0145] "<p, λ ~ jt’ "(p, t')>" is the same as in the case of equation (6), and indicates the total amount of sales for each remaining slot when the asking price indicated by "p" is offered at time t'. Equation (11) indicates the total amount of sales for each remaining slot when the asking price indicated by "p" is offered at each of the start time 1 to the final time T, for all remaining slots, and for all times from the start time 1 to the final time T. In equation (11), the asking price p is assumed to be determined for each time. If the asking price p at time t' is denoted as p(t'), maximizing the value of the objective function shown in equation (11) can be expressed as equation (12).
[0146]
[0147] argmax outputs the argument value that maximizes the value of the equation shown to the right. Equation (12) represents the proposed prices p(1), p(2), ..., p(T) at each time that maximizes the value of the objective function shown in equation (11). When the price proposal device 100 simply solves an optimization problem, the constraint shown in equation (13), for example, can be used.
[0148]
[0149] " [λ ~ jt’ (p, t')] J-jt’+1 " is the same as in equation (10) and indicates the estimated demand for the jth slot at time t' when the asking price indicated by vector p is offered. n j The argument of (0) is time 0, which indicates the time before the product goes on sale. j (0) indicates the initial value of the stock quantity of the product in the jth slot.
[0150] Equation (13) is the time from the start time 1 to the deadline time T j The constraint condition is that the total sales quantity of the product in the frame up to j = 1, 2, ..., J is equal to or less than the initial value of the product inventory quantity. The solution search unit 193 searches for a solution that satisfies the constraint condition shown in equation (13) for each frame j = 1, 2, ..., J.
[0151] The solution search unit 193 treats the combination of the offered prices for each time and for each of the remaining slots as a state and sets the initial state. 0 can be expressed as in equation (14).
[0152]
[0153] T τ represents the final time. τ =T=T J "{p 0 (t)} t=1 Tτ " is p 0 (1), p 0 (2), ..., p 0 (T τ) represents a set whose elements are p 0 (t) denotes the initial value of the asking price for each remaining slot at time t. p 0 (t) can be expressed as in equation (15).
[0154]
[0155] p kj(t) k denotes the provisional setting value of the asking price for the jth slot at time t. j (t) is the K prices p 1 , p 2 , ..., p K Among them, the asking price p of the jth window at time t kj(t) The price p selected as k In the following description, the state adopted by the solution search unit 193 is referred to as the initial state p 0 That is, the solution search unit 193 calculates the initial state p 0 will be updated sequentially.
[0156] The time period selection unit 312 is in the initial state p 0 At time t=1, 2, ..., T τ The product group selection unit 313 selects one of the remaining slots j=j at the time t selected by the time slot selection unit 312. t , j t +1, ..., J. The change unit 314 then changes the offered price p set for the selected time and the selected frame. kj(t) Determine whether to replace or not.
[0157] Offer price p kj(t) If it is decided to update the asking price p kj(t) o p kj(t)+1 or p kj(t)-1 Replace with p kj(t)+1 is the list of suggested prices p arranged in ascending order of price. 1 , p 2 , ..., p K Among them, p kj(t) Therefore, p kj(t)+1 is pkj(t) Among the candidates with higher prices than p kj(t) It is the closest candidate to p kj(t)-1 is the list of suggested prices p arranged in ascending order of price. 1 , p 2 , ..., p K Among them, p kj(t) Therefore, p kj(t)-1 is p kj(t) Among the candidates with lower prices than p kj(t) It is the closest candidate to
[0158] The solution search unit 193 calculates the initial state p 0 It is determined whether or not to replace one of the offered prices for each time included in the list and for each remaining slot, and if it is determined to replace one, the replacement process is repeated, for example, a predetermined number of times.
[0159] 5 is a diagram showing an example of a processing procedure when the price proposal device 100 solves an optimization problem in a simple manner. In the processing of FIG. 5, the initial setting unit 311 sets the initial state p 0 (Step S201). The initial setting unit 311 determines the initial state p 0 Element p for each time t 0 (t) may be determined as in equation (16).
[0160]
[0161] p ∞ is a preset constant to accommodate not offering a price and not accepting demand. ∞ The value of [T] may be set to a sufficiently large value that is expected to result in no demand, such as a price 100 times the expected general price of the product being sold. J ] is from time 1 to T J Set {1, 2, ..., T J}.
[0162] Next, the solution search unit 193 determines a temperature as a function of the number of trials (step S202). The number of trials is represented as u, and the temperature is represented as T(u). The temperature T(u) is used as a function for changing the frequency of replacing the offered price depending on the number of trials.
[0163] Next, the solution search unit 193 calculates the state transition probability P tra (Step S203). The state transition probability P tra is the initial state p 0 The state transition probability P tra can be set according to the characteristics of demand for the products handled by the price proposal device 100. For example, the user may set the state transition probability P tra Then, the solution search unit 193 calculates the specified state transition probability P tra Here, the solution search unit 193 may set the state transition probability P tra As a result, the state transition probability p 1 and p 2 The state transition probability p 1 and p 2 This will be discussed later.
[0164] Next, the solution search unit 193 calculates the acceptance probability P acc (Step S204). The acceptance probability P acc is the state transition probability P tra If it is decided to accept the state transition, the change unit 314 changes the initial state p 0 On the other hand, if it is decided not to accept the state transition, the change unit 314 updates the initial state p 0 will be left as is without updating.
[0165] Next, the solution search unit 193 starts a loop L1 in which state transition trials are repeated (step S205). The solution search unit 193 repeats the processing of the loop L1 for a predetermined number of times. The number of times of repetition is represented as N. In the processing of the loop L1, the solution search unit 193 determines a state candidate pt (step S206).
[0166] 6 is a diagram showing an example of a procedure for the solution search unit 193 to determine a state candidate pt. The solution search unit 193 performs the process of FIG. 6 in step S206 of FIG. 5. In the process of FIG. 6, the time period selection unit 312 selects the initial state p 0 Time 1, 2, ... T J In the explanation of the process in FIG. 6, the time at which the time period selection unit 312 samples is represented as t.
[0167] In addition, the product group selection unit 313 selects the remaining slots j at time t. t , j t +1, ..., J (step S302). In the description of the process in FIG. 6, the frame sampled by the product group selection unit 313 is represented by j. Next, the change unit 314 calculates the difference Δr (step S303). The difference Δr is expressed as in equation (17).
[0168]
[0169] p + (t) is p shown in equation (15) 0 The price of the j-th frame sampled in step S302 is increased by one from the price of each remaining frame, which is an element of (t). + (t)] j " indicates the asking price of the jth slot after increasing the asking price by one. "[λ ~ (t, p + (t))] j " denotes the estimated demand for the jth slot after increasing the asking price of that slot by one. ~ (t, p + (t))] j [p + (t)]j " indicates the estimated sales amount of the jth slot at time t after the asking price of the jth slot is increased by one.
[0170] " [p 0 (t)] j " indicates the asking price of the jth slot before increasing the asking price by one. "[λ ~ (t, p 0 (t))] j " denotes the estimated demand for the jth slot before increasing the asking price of that slot by one. ~ (t, p 0 (t))] j [p 0 (t)] j " indicates an estimated sales amount of the jth slot at time t before the asking price of the jth slot is increased by 1. Δr indicates the increase in sales amount of the jth slot at time t due to the asking price of the jth slot being increased by 1.
[0171] Δr is the demand function λ ~ The profit from changing the asking price [λ ~ (t, p + (t))] j [p + (t)] j and the demand function λ ~ The profit of not changing the asking price [λ ~ (t, p 0 (t))] j [p 0 (t)] j This corresponds to an example of the difference between the sales amount and the profit. As described above, in this case, the sales amount is assumed to be equal to the profit. Note that, regarding the increase in the offered price in one state transition, it may be specified that only one increase in the lowest-priced candidate offered prices is possible, or two or more increases may be permitted.
[0172] Next, the change unit 314 determines whether Δr>0 (step S304). If it is determined that Δr>0 (step S304: YES), the change unit 314 changes the state transition probability p 1Based on the above, a candidate p for the transition destination state is determined (step S311).
[0173] Specifically, the change unit 314 changes the probability p 1 Then, the candidate state p of the transition destination is p + It is decided to. + is the initial state p 0 [p 0 (t)] j [p + (t)] j The state transition probability p 1 is a constant that is preset according to the object handled by the price proposal device 100, and p 1 For example, if a user has a state transition probability p 1 The value may be set in advance.
[0174] Furthermore, the change unit 314 changes the probability 1-p 1 Then, the candidate state of the transition destination is p - It is decided to. - is the initial state p 0 [p 0 (t)] j [p - (t)] j It is replaced by p - (t) is p shown in equation (15) 0 The price of the j-th frame sampled in step S302 is reduced by one from the price of each remaining frame, which is an element of (t). - (t)] j " indicates the offered price after the offered price of the jth slot is reduced by one. Note that, regarding the reduction of the offered price in one state transition, it may be specified that only one offered price can be reduced in the ascending order of the offered price candidates, or it may be permitted to reduce two or more offered prices. After step S311, the solution search unit 193 ends the processing of FIG. 6.
[0175] On the other hand, if it is determined in step S304 that Δr≦0 (step S304: NO), the change unit 314 changes the state transition probability p 2 Based on the above, a candidate p for the transition destination state is determined (step S321).
[0176] Specifically, the change unit 314 changes the probability p 2 Then, the candidate state p of the transition destination is p - The state transition probability p 2 is a constant that is preset according to the object handled by the price proposal device 100, and p 2 For example, if a user has a state transition probability p 2 The value of the probability 1-p may be set in advance. 2 Then, the candidate state of the transition destination is p + After step S321, the solution search unit 193 ends the process of FIG.
[0177] 5, after the process of FIG. 6 is performed in step S206, the solution search unit 193 performs a state update process (step S207). In the state update process, the change unit 314 updates the state candidate p determined in step S206. t If it is decided to accept the initial state p 0 Let p be the candidate state. t Update to.
[0178] Fig. 7 is a diagram showing an example of the procedure by which the solution search unit 193 performs a state update process. The solution search unit 193 performs the process of Fig. 7 in step S207 of Fig. 5. In the process of Fig. 7, the change unit 314 determines whether there are any slots that will result in inventory shortages if the state transition is accepted (step S401). Specifically, when the change unit 314 adopts the state candidate p, it determines whether or not equation (18) holds for all remaining slots j at time t sampled in step S301 of Fig. 6.
[0179]
[0180] Equation (18) expresses the demand for the jth slot at all times (from time 1 to time T j ) for the sum Σ t’=1 Tj λ ~ j (p(t'), t') is the initial stock value n of the jth frame. jIf it is determined that there is no slot that will become out of stock if the state transition is accepted (step S401: YES), the change unit 314 selects a candidate p for the state of the transition destination and the initial state p 0 The probability p(p, p 0 ) and the initial state p 0 is replaced with a candidate p of the state to be transitioned to (step S411). 0 is replaced with a candidate p of the state to which the transition is made, as shown in equation (19).
[0181]
[0182] After step S411, the change unit 314 ends the process in Fig. 7. On the other hand, if it is determined in step S331 that there is a slot that will become insufficient in stock if the state transition is accepted (step S401: NO), the solution search unit 193 ends the process in Fig. 7. In this case, p 0 The value is not updated.
[0183] After performing the process of FIG. 7 in step S207 of FIG. 5 , the solution search unit 193 performs termination processing of loop L1 (step S208). Specifically, the solution search unit 193 determines whether the number of iterations of the process of loop L1 has reached a predetermined number of trials. If it is determined that the number of iterations of the process of loop L1 has not reached the predetermined number of trials, the solution search unit 193 continues to repeat the process of loop L1. On the other hand, if it is determined that the number of iterations of the process of loop L1 has reached the predetermined number of trials, the solution search unit 193 ends loop L1.
[0184] After loop L1 is completed, the solution search unit 193 selects the state in which the value of the objective function is maximized from the state history obtained by the processing of loop L1 (step S209). The price indicated by the selected state is adopted as the price proposed by the price proposal device 100. After step S209, the solution search unit 193 terminates the processing of FIG. 5.
[0185] The price proposal device 100 may search for an offered price using quantum computing such as quantum annealing. Alternatively, the price proposal device 100 may search for an offered price using a method that simulates quantum computing such as simulated annealing. Alternatively, the price proposal device 100 may execute the processes shown in Figures 5 to 7 directly (for example, with a von Neumann computer) without using a quantum solution.
[0186] Alternatively, the price proposal device 100 may use, as a variable indicating the proposed price for each time and for each remaining slot at that time, a single variable having K states, which is the number of proposed price candidates. Alternatively, the price proposal device 100 may use, as a variable indicating the proposed price for each time and for each remaining slot at that time, a binary variable indicating whether the proposed price candidate is adopted or rejected.
[0187] For example, when a quantum bit that takes on a value of either "1" or "0" is used as a binary variable, it may be specified that "1" indicates adoption and "0" indicates rejection. Then, the price proposal device 100 may use K quantum bits for each time period and for each remaining slot at that time period to search for a solution in which one of the K quantum bits has a value of "1" and the other quantum bits have values of "0."
[0188] Let K quantum bits at time t' and the j-th frame be x (t’,j,1) , x (t’,j,2) , ..., x (t’,j,K) Then, the constraint that the value of any one quantum bit is "1" and the values of the other quantum bits are "0" is expressed as, for example, equation (20).
[0189]
[0190] From time t to T and the remaining frame j t’ The constraint that equation (20) holds true for all of j through j is expressed as equation (21).
[0191]
[0192] The price proposal device 100 may use a penalty function including the penalty term shown on the left side of equation (21) as an objective function, and search for a proposed price so that the value of the objective function becomes as small as possible.
[0193] As described above, the initial setting unit 311 initializes the offered prices for each of the multiple product groups for each of the multiple time periods. The time period selection unit 312 selects one of the multiple time periods. The product group selection unit 313 selects one of the multiple product groups. The change unit 314 changes the offered price of the selected product group for the selected time period. The proposed price determination unit 315 selects a combination that is estimated to maximize the seller's profit from among multiple combinations of offered prices for each of the multiple product groups for each of the multiple time periods obtained by repeatedly selecting a time period, selecting a product group, and changing the offered price. A proposal means, such as a combination of the communication unit 110 and the proposal processing unit 194 or a combination of the display unit 120 and the proposal processing unit 194, outputs the offered prices for each of the multiple product groups for at least the most recent time period from the selected combinations.
[0194] The price proposal device 100 according to the second embodiment can perform a predetermined number of solution searches, and the time required to calculate the proposed price can be kept approximately constant. In particular, the price proposal device 100 according to the second embodiment can keep the time required to calculate the proposed price approximately constant even when there are a large number of frames. In this way, the price proposal device 100 according to the second embodiment can estimate the time required to calculate the proposed price in advance, and is expected to be able to propose an offered price at an appropriate time.
[0195] Furthermore, the change unit 314 determines whether to raise or lower the asking price based on the difference between the profit when the asking price is changed, as estimated using the demand function, and the profit when the asking price is not changed, as estimated using the demand function. This allows the change unit 314 to search for an asking price that will increase the seller's profit. In this respect, the price proposal device 100 according to the second embodiment is expected to be able to propose an asking price that will increase the seller's profit.
[0196] The change unit 314 also provisionally sets the proposed price after the change, and determines whether to change the proposed price to the provisionally set price based on the result of estimating whether changing the proposed price will cause an inventory shortage. The price proposal device 100 according to the second embodiment can calculate and propose a proposed price that avoids inventory shortages, and in this respect, it is expected that the seller's profits will be relatively large.
[0197] Here, lowering the proposed price is expected to increase demand, but even if demand exceeds the inventory, the seller can only sell up to the inventory, and the excess demand does not translate into profits for the seller. In contrast, the price proposal device 100 according to the second embodiment searches for a proposed price that does not cause inventory shortages, and is therefore expected to result in relatively large profits for the seller.
[0198] <Third embodiment> Fig. 8 is a diagram showing an example of the configuration of a price proposal device according to the third embodiment. In the configuration shown in Fig. 8, a price proposal device 610 includes a demand function acquisition unit 611 and a solution search unit 612.
[0199] With this configuration, the demand function acquisition unit 611 acquires a demand function. The demand function is a function that, in response to input of a time series of the offered prices for each of a plurality of product groups, each of which has a sales period set for that product group, and the offered prices for each of the plurality of product groups in a certain time period, outputs an estimated value of demand for each of the product groups when those offered prices are offered. The solution search unit 612 uses the demand function to search for the offered price for each of the plurality of product groups so as to maximize the seller's profit across the plurality of time periods and across the plurality of product groups as a whole. The demand function acquisition unit 611 is an example of a demand function acquisition means. The solution search unit 612 is an example of a solution search means.
[0200] The price proposal device 610 can obtain a demand function for estimating the period during which a product is available for sale and the demand that changes depending on the offered prices of other products. In particular, the price proposal device 610 obtains a demand function based on a demand model that shows the relationship between the offered prices of multiple product groups and the demand function, and is therefore expected to obtain a demand function that reflects the offered prices of other product groups when estimating demand for each product group. Furthermore, the price proposal device 610 obtains a demand function based on a demand model that shows the relationship between the time series of the offered prices of the product groups and the demand function, and is therefore expected to obtain a demand function that reflects changes in the period during which a product is available for sale over time when estimating demand for a product group.
[0201] Furthermore, the price proposal device 610 can determine the asking price in response to the demand that changes depending on the period during which the product is available for sale and the asking prices of other products. In particular, by using a demand model that shows the relationship between the time series of the asking prices of each of a plurality of product groups and the demand function, the price proposal device 610 can propose asking prices that reflect the influence of the asking prices of other product groups on the demand of each product group and also reflect changes in the period during which the product is available for sale over time.
[0202] The demand function acquisition unit 611 can be realized using, for example, the functions of the demand function acquisition unit 191 shown in Fig. 1. The solution search unit 612 can be realized using, for example, the functions of the solution search unit 193 shown in Fig. 1.
[0203] <Fourth embodiment> Fig. 9 is a diagram showing an example of a processing procedure in a demand function acquisition method according to a fourth embodiment. The price proposal method shown in Fig. 9 includes acquiring a demand function (step S611) and performing a solution search (step S612).
[0204] In obtaining a demand function (step S611), the computer obtains a demand function. The demand function is a function that receives inputs of a time series of offered prices for each of a plurality of product groups, each of which has a sales period set for that product group, and the offered prices for each of the plurality of product groups during a certain time period, and outputs an estimated value of demand for each of the product groups when those offered prices are offered. In performing a solution search (step S612), the computer uses the demand function to search for an offered price for each of the plurality of product groups that maximizes the seller's profits across all of the plurality of time periods and across all of the plurality of product groups.
[0205] The price proposal method shown in Figure 9 can obtain a demand function for estimating the period during which a product is available for sale and the demand that changes depending on the offered prices of other products. In particular, the demand function acquisition method shown in Figure 9 obtains a demand function based on a demand model that shows the relationship between the offered prices of multiple product groups and the demand function, and is therefore expected to obtain a demand function that reflects the offered prices of other product groups when estimating demand for each product group. Furthermore, the demand function acquisition method shown in Figure 9 obtains a demand function based on a demand model that shows the relationship between a time series of the offered prices of the product groups and the demand function, and is therefore expected to obtain a demand function that reflects changes in the period during which a product is available for sale over time when estimating demand for a product group.
[0206] Furthermore, according to the price proposal method shown in Fig. 9, the offered price can be determined in response to the demand that changes depending on the period during which the product is available for sale and the offered prices of other products. In particular, the price proposal method shown in Fig. 9 uses a demand model that shows the relationship between the time series of the offered prices of each of a plurality of product groups and the demand function, so that the offered price can be proposed while reflecting the influence of the offered prices of other product groups on the demand of each product group and also reflecting changes in the period during which the product is available for sale over time.
[0207] 10 is a schematic block diagram illustrating the configuration of a computer according to at least one embodiment. In the configuration shown in FIG. 10, a computer 700 includes a CPU 710, a main memory device 720, an auxiliary memory device 730, an interface 740, a non-volatile recording medium 750, and a quantum chip 760.
[0208] One or more of the price proposal device 100 and the price proposal device 610, or a part thereof, may be implemented in the computer 700. In this case, the operation of each of the above-mentioned processing units is stored in the auxiliary storage device 730 in the form of a program. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-mentioned processing in accordance with the program. The CPU 710 also allocates storage areas in the main storage device 720 corresponding to each of the above-mentioned storage units in accordance with the program. Communication between each device and other devices is executed by the interface 740, which has a communication function, and performs communication under the control of the CPU 710.
[0209] The quantum chip 760 is a chip (circuit) that operates using quantum states in quantum mechanics. The quantum chip 760 operates with respect to annealing as described above in each embodiment. The quantum chip 760 may be configured as an external quantum device attached to the main body of the computer 700. The computer 700 may perform annealing using the quantum chip 760. Alternatively, the computer 700 may perform annealing by simulated annealing using the CPU 710.
[0210] When the price proposal device 100 is implemented in the computer 700, the operation of the control unit 190 and each of its units is stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-mentioned processing in accordance with the program.
[0211] Furthermore, the CPU 710 allocates a storage area of the storage unit 180 in the main storage device 720 in accordance with the program. Communication with other devices by the communication unit 110 is performed by the interface 740 having a communication function and operating under the control of the CPU 710. Display of various images by the display unit 120 is performed by the interface 740 having a display device and displaying various images under the control of the CPU 710. Reception of user operations by the operation input unit 130 is performed by the interface 740 having an input device and receiving user operations under the control of the CPU 710.
[0212] When the price proposal device 610 is implemented in the computer 700, the operations of the demand function acquisition unit 611 and the solution search unit 612 are stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-mentioned processing in accordance with the program.
[0213] Furthermore, the CPU 710, in accordance with the program, allocates a storage area in the main storage device 720 for processing by the price proposal device 610. Communication between the price proposal device 610 and other devices is performed by the interface 740, which has a communication function and operates under the control of the CPU 710. Interaction between the price proposal device 610 and a user is performed by the interface 740, which has a display device and an input device, displaying various images under the control of the CPU 710 and accepting user operations.
[0214] One or more of the above-described programs may be recorded on nonvolatile recording medium 750. In this case, interface 740 may read the programs from nonvolatile recording medium 750. Then, CPU 710 may directly execute the programs read by interface 740, or may temporarily store the programs in main storage device 720 or auxiliary storage device 730 and then execute them.
[0215] Alternatively, a program for executing all or part of the processing performed by price proposal device 100 and price proposal device 610 may be recorded on a computer-readable recording medium, and the program may be loaded into a computer system and executed to perform the processing of each component. Note that the term "computer system" here includes hardware such as an operating system and peripheral devices. Furthermore, the term "computer-readable recording medium" refers to portable media such as floppy disks, optical magnetic disks, ROMs (Read Only Memory), and CD-ROMs (Compact Disc Read Only Memory), as well as storage devices such as hard disks built into computer systems. The program may be designed to implement part of the aforementioned functions, or may be capable of implementing the aforementioned functions in combination with a program already stored in the computer system.
[0216] Although an embodiment of the present invention has been described above in detail with reference to the drawings, the specific configuration is not limited to this embodiment, and includes designs within the scope of the gist of the present invention.
[0217] A part or all of the above-described embodiments can be described as, but not limited to, the following supplementary notes.
[0218] (Supplementary Note 1) A price proposal device comprising: a demand function acquisition means for acquiring a demand function that, in response to input of a time series of the offered prices for each of a plurality of product groups, each of which has a sales period set for that product group, and the offered prices for each of the plurality of product groups in a certain time period, outputs an estimated value of demand for each of the product groups when those offered prices are offered; and a solution search means for using the demand function to search for an offered price for each of the plurality of product groups so as to maximize the seller's profit across the plurality of time periods and across the plurality of product groups.
[0219] (Supplementary Note 2) The price proposal device according to Supplementary Note 1, wherein the demand function acquisition means learns the demand function based on actual data of the offered prices of each of a plurality of product groups and the demand for each product group when those offered prices are offered.
[0220] (Supplementary Note 3) The price proposal device described in Supplementary Note 2, wherein the demand function acquisition means calculates a posterior distribution of the probability related to the demand function based on actual data on the offered prices of each of a plurality of product groups and the demand for each product group when those offered prices were offered, and acquires the demand function based on the obtained posterior distribution.
[0221] (Supplementary Note 4) The price proposal device according to Supplementary Note 3, wherein the demand function acquisition means calculates a posterior distribution of the parameter values of the demand function including parameters based on actual data of the offered prices of each of a plurality of product groups and the demand for each product group when those offered prices were offered, samples the parameter values based on the obtained posterior distribution, and acquires a demand function to which the sampled parameter values are applied.
[0222] (Supplementary Note 5) The price proposal device described in Supplementary Note 3, wherein the demand function acquisition means calculates a posterior distribution of the demand function in a Gaussian process that indicates the distribution of the demand function based on actual data on the offered prices of each of a plurality of product groups, the time at which those offered prices were offered, and the demand for each product group at the time those offered prices were offered, and samples the demand function based on the obtained posterior distribution.
[0223] (Supplementary Note 6) The price proposal device according to any one of Supplementary Notes 1 to 5, wherein the solution search means searches for a suggested price for each of the plurality of product groups under the constraint that no inventory shortages will occur.
[0224] (Supplementary Note 7) The price proposal device described in any one of Supplementary Notes 1 to 5, wherein the solution search means comprises: an initial setting means for initially setting the proposed price for each of a plurality of product groups in each of a plurality of time periods; a time period selection means for selecting one of the plurality of time periods; a product group selection means for selecting one of the plurality of product groups; a modification means for modifying the proposed price of the selected product group in the selected time period; and a proposed price determination means for selecting a combination that is estimated to maximize the seller's profit from among a plurality of combinations of proposed prices for each of the plurality of product groups in each of the plurality of time periods obtained by repeatedly selecting the time period, selecting the product group, and modifying the proposed prices.
[0225] (Supplementary Note 8) The price proposal device according to Supplementary Note 7, wherein the change means determines whether to raise or lower the offered price based on a difference between a profit estimated using the demand function when the offered price is changed and a profit estimated using the demand function when the offered price is not changed.
[0226] (Supplementary Note 9) The price proposal device described in Supplementary Note 7 or Supplementary Note 8, wherein the change means provisionally sets a changed proposed price and determines whether to change the proposed price to the provisionally set proposed price based on an estimation result of whether changing the proposed price will cause an inventory shortage.
[0227] (Supplementary Note 10) A price proposal method including: a computer obtains a demand function that, in response to input of a time series of offered prices for each of a plurality of product groups, each of which has a sales period set for that product group, and the offered prices for each of the plurality of product groups in a certain time period, outputs an estimate of demand for each of the product groups when those offered prices are offered; and uses the demand function to search for an offered price for each of the plurality of product groups that will maximize the seller's profit across the plurality of time periods and across the plurality of product groups.
[0228] (Appendix 11) A recording medium having recorded thereon a program for causing a computer to execute the following: obtaining a demand function that, in response to input of a time series of the offered prices for each of a plurality of product groups, each of which has a sales period set for that product group, and the offered prices for each of the plurality of product groups in a certain time period, outputs an estimate of the demand for each of the product groups when those offered prices are offered; and using the demand function to search for an offered price for each of the plurality of product groups that will maximize the seller's profits across the plurality of time periods and across the plurality of product groups.
[0229] The present invention may be applied to a price proposal device, a price proposal method, and a recording medium.
[0230] 1 Sales management system 100, 610 Price proposal device 110 Communication unit 120 Display unit 130 Operation input unit 180 Memory unit 190 Control unit 191, 611 Demand function acquisition unit 192 Model learning unit 193, 612 Solution search unit 194 Proposal processing unit 200 Sales processing system 311 Initial setting unit 312 Time period selection unit 313 Product group selection unit 314 Change unit 315 Proposed price determination unit
Claims
1. a demand function acquisition means for acquiring a demand function that outputs an estimated value of demand for each product group when the offered prices are offered in response to input of a time series of offered prices for each of a plurality of product groups, each of which has a sales period set for that product group, and the offered prices for each of the plurality of product groups in a certain time period; a solution search means for searching for an asking price for each of a plurality of product groups using the demand function so as to maximize the seller's profit over a plurality of time periods and over a plurality of product groups; A price proposal device comprising:
2. the demand function acquisition means learns the demand function based on actual data of the offered prices of each of a plurality of product groups and the demand for each product group when the offered prices are offered; The price suggestion device of claim 1 .
3. the demand function acquisition means calculates a posterior distribution of a probability related to the demand function based on actual data of the offered prices of each of a plurality of product groups and the demand for each product group when those offered prices are offered, and acquires the demand function based on the obtained posterior distribution; The price suggestion device according to claim 2 .
4. The demand function acquisition means calculates a posterior distribution of the parameter values of the demand function including parameters based on actual data of the offered prices of each of a plurality of product groups and the demand for each product group when those offered prices were offered, samples the parameter values based on the obtained posterior distribution, and acquires a demand function to which the sampled parameter values are applied. The price suggestion device according to claim 3.
5. the demand function acquisition means calculates a posterior distribution of the demand function in a Gaussian process that indicates the distribution of the demand function based on actual data of the offered prices of each of a plurality of product groups, the times at which those offered prices were offered, and the demand for each product group at the time those offered prices were offered, and samples the demand function based on the obtained posterior distribution; The price suggestion device according to claim 3.
6. the solution search means searches for an offered price for each of the plurality of product groups under the constraint that no inventory shortage occurs; The price proposal device according to any one of claims 1 to 5.
7. The solution search means an initial setting means for initially setting the suggested price for each of a plurality of product groups for each of a plurality of time periods; a time zone selection means for selecting one of the plurality of time zones; a product group selection means for selecting one of the plurality of product groups; A change means for changing the offered price of the selected product group in the selected time period; a proposed price determination means for selecting, from among a plurality of combinations of proposed prices for each of a plurality of product groups in each of a plurality of time periods obtained by repeatedly selecting the time period, selecting the product group, and changing the proposed prices, a combination that is estimated to maximize the seller's profit; Equipped with The price proposal device according to any one of claims 1 to 5.
8. the change means determines whether to increase or decrease the asking price based on a difference between a profit when the asking price is changed, estimated using the demand function, and a profit when the asking price is not changed, estimated using the demand function. The price suggestion device of claim 7.
9. the change means provisionally sets the changed asking price, and determines whether to change the asking price to the provisionally set asking price based on an estimation result of whether or not an inventory shortage will occur if the asking price is changed; The price suggestion device of claim 7.
10. The computer A demand function is obtained that outputs an estimated value of demand for each product group when the offered prices are presented, in response to input of a time series of offered prices for each of a plurality of product groups, each of which has a sales period set for that product group, and the offered prices for each of the plurality of product groups in a certain time period; Using the demand function, a price offered for each of the plurality of product groups is searched for so as to maximize the seller's profit across the plurality of time periods and across the plurality of product groups. A price proposal method that includes: