12

I had the same doubt, and I arrived at the conclusion that the formula given in the textbooks is, at best, a practical approximation. The lead-time demand, in fact, is not normally distributed. Let $L$ denote the lead-time and $d$ denote the demand per unit of time. Working under the assumption that both of them are normally distributed, then the random ...


12

Here is the list of blogs and social media that I regularly check [in no particular order]: https://www.zverovich.net/ https://yetanothermathprogrammingconsultant.blogspot.com/ https://orinanobworld.blogspot.com/ http://erlingdandersen.blogspot.com/ https://punkrockor.com/ https://lemire.me/blog/ https://nathanbrixius.wordpress.com/ https://themosekblog....


10

There is indeed a paper titled Loss Distributions that provides the limited expected value functions $L(x)$ for several probability distributions (on page 15). It is directly related to the first-order loss function $n(x)$ through $$n(x)=\Bbb E(X)-L(x)\tag1$$ and notice that the loss function can also be written as $$n(x)=\int_x^\infty yf(y)\,dy-x(1-F(x))\...


10

I agree with @QianZhang's answer (nice theoretical properties, easy to implement), and I would add that there is some theoretical justification too. If demands come from customer arrivals, then Poisson is a reasonable demand distribution since customer arrivals are well modeled by Poisson (often). And if the mean is large enough, then normal is a good ...


9

What you’re describing is known as inventory optimization under yield uncertainty. There is quite a bit of literature on it. Two relevant literature reviews are Yano and Lee (OR 1995) and Grosfeld-Nir and Gerchak (AOR 2004). Yield uncertainty is only one type of supply uncertainty. A closely related form is disruptions; my students and I wrote a review ...


9

In my understanding, using normal/Poisson distribution for customer demand is mainly for two reasons. These distributions have nice properties for theoretical analysis in supply chain models These distributions are easier to implement or already been implemented for computational concerns


8

Only the EOQB approximation (approximation 2) has a fixed worst-case error bound. Zheng (1992) proved an error bound of $\frac18$, and Axsäter (1996) proved a stronger bound of $(\sqrt{5}-2)/2 \approx 0.118$, which is tight. The EOQ+SS approximation (approximation 1) does not have a fixed worst-case error bound; for any $m$, we can find a problem instance ...


7

According to a buddy of mine who was a faculty member in the area of purchasing / sourcing / procurement (they change their name every few years), "holding cost" and "carrying cost" are used pretty much interchangeably. They include costs to operate storage facilities, pilferage, spoilage, insurance and opportunity cost of capital tied up in inventory. He is ...


7

I think you simply made a mistake in the sign of one expression. You already figured out that: $$\Phi(y_2^0) = \frac{p-c}{p+h}.$$ So: $$\begin{align} &1 - e^{-\frac{1}{25}y_2^0} &&\hspace{-1cm}= \frac{5}{21} \\ \iff &e^{-\frac{1}{25}y_2^0} &&\hspace{-1cm}= \frac{16}{21} \\ \iff &-\frac{1}{25}y_2^0 &&\hspace{-1cm}= \ln\frac{...


7

This question provides a good example about a common problem we have when teaching newsvendor concepts. In some of the most useful problem settings, it can be tricky for students to properly specify holding (overage) and stockout (underage) costs. It just isn't always intuitive and it can be a disservice to students to force them to think this way in every ...


7

I agree that holding cost, carrying cost, and storage cost all sound like the same thing. The only thing I will add to the answer by @prubin is that often holding costs are expressed as a percentage of the value of the product. So, you might have a holding cost rate of $i=25\%$ and a product value of $c=200$, in which case the holding cost is $50$. Perhaps ...


6

In general it's good to write some equations before. But when you rely on an algebraic modeling language like OPL you may also directly try your ideas. Disclosure: I am the author of the linked article. Let me share a starting point with OPL CPLEX execute { cplex.optimalitytarget=3; } range weeks=1..100; tuple need { int startweek; int endweek; ...


6

In the EOQ setting, the total cost incurred during one order cycle is: $$TC = K + \frac{hQ^2}{2 \lambda} \;\;,$$ where the units of $K$ must be only \$ and $Q$ measures the inventory count in items after placing the order at the beginning of the cycle. If $K$ were to have units of \$ per order (or per cycle), then the second term must also have those units ...


6

To calculate the base-stock to meet a 99% type-1 service level, we need the 0.99 fractile of the demand distribution. The safety stock level is the base-stock level minus the mean demand. For the lognormal case, the author has fit a lognormal distribution and found that the parameters are $\mu=2.645$ and $\sigma=0.83255$. (Note that for a lognormal ...


6

I'm in general agreement with Larry's answer, but with one qualification. If you are generating random demand quantities from the sample CDF for a year, your demands will not conform to any trends or seasonal patterns (or even just short-term autocorrelation) in the historical data. If you then generate forecasts from the randomly sampled observations, the ...


6

For OM, you might like Jay, Barry and Chuck's OM Blog. For OR, I like OR in Devon, UK as well as many of the entries in Richard's excellent answer. I had a few other OR blogs that I liked, but sadly their owners appear to have stopped posting.


6

I would approach this as a mixed integer linear programming (MILP) problem. There are a number of MILP solvers, some open source, some commercial (with some of the commercial solvers providing free licenses for educational use). Many of them either have a Python API or can be used with PuLP (mentioned in comment to the selected answer). You might want to ...


5

The coefficient $2$ in the first equation has unit $1/\text{order}$, so the second approach is the right one, and $Q^*$ has units $\text{item}/\text{order}$. The unit comes from the holding cost $hQ/2$ in the formula for the total cost, which assumes that for order quantity $Q$ (items/order) you have in average $1/2$ order in stock, so $1/2$ has unit "order"...


5

Only approach 1 is correct! The other two approaches double-count one of the costs. In particular, approach 2 double-counts the cost of purchasing units. The cost of purchasing units is already "baked into" the holding and stockout costs, so it is incorrect to include it explicitly in the objective function. In other words, in approach 2 we are charging $c$ ...


5

Just like any other demand distribution (e.g., this one), you want to set the base-stock level ($S$) equal to $F^{-1}(\alpha)$, where $F(\cdot)$ is the cdf of the lead-time demand distribution and $\alpha$ is the desired service level; and then the safety stock is given by $SS = S - \mu_{LTD}$. (In the case of normal demand, as in your question, $F^{-1}(\...


5

Why not build the forecasting directly into your simulation? So, in each period $t$, you generate a forecast $y_t$ using whatever method you want (moving average, exponential smoothing, etc.), and choose an order quantity based on the forecast and the current estimate of the standard deviation of the forecast error. Then generate the random demand, calculate ...


5

Our blog might be useful too: https://www.optaplanner.org/blog/ We cover OR use cases (just did an article on Covid Appointment Scheduling), our technology and general insights.


5

I won't write a python solution as i am not familiar with any python modeling language but i can describe the approach i took in the past to solve problems like this. I would solve this problem using a technique of finite horizon optimal control where we have an $x_t$ a state vector for each time point, a control signal $u_t$, a prediction $p_t$. The core of ...


4

I tried simulating lots of normally distributed lead times and the normally distributed demand in each. The lead time demand sure looks normal: But a normality test gives $p = 0$ to at least 9 decimal places. Edit: Since the null hypothesis for this test is “the data comes from a normal distribution,” this means we can conclude the lead-time demands are not ...


4

Here's an approach that might be close to what you are looking for. Suppose that we have $n$ products, and for each product $i$ we know: $c_i$ = purchase cost per unit (i.e., cost to order inventory from the supplier) $\pi_i$ = profit margin per unit sold $f_i$, $F_i$ = probability distribution (pdf, cdf) of demand per period If there is only 1 product, ...


4

Question: Why do we normally assume normal distribution/Poisson distribution for customer demand in a supply chain? Answer : Based on my experience in the industry, I have seen that generally, business users use simple thumb rules-based methods for safety stock or inventory models. The next level of sophistication for these users is usage of Normal or ...


4

This is indeed a newsvendor problem. The fact that D is very uncertain only makes it more so. If we were in normal times, the standard approach would be: Use your historical data to calculate $\hat{\mu}$, an estimate for the mean demand. (Sounds like $\hat{\mu} = 1.05[\text{last year's demand}]$ is the go-to estimate for your relative.) If your historical ...


4

It is an interesting question. EOQ model starts from that the minimum point of the total cost (Inventory holding + Ordering cost). At the minimum point, the Inventory holding cost equals to the Ordering cost. (of course you can use calculus to find the minimum point but the answer will be the same) $\frac{Q}{2}h = \frac{\lambda}{Q}K$ The problem starts ...


4

Yes, there are such models. On (Q,R) specifically, see Gupta (1996), Parlar (1997), Mohebbi (2003), and others. There are many papers on other inventory models (not necessarily (Q,R)) under disruptions. My students and I wrote a literature review paper on these and other supply chain models with disruptions; see Snyder, et al. (2016). Note that these "...


4

If, given inventory level ($q_{i,t}$) and bucket decisions ($z_{i,t,k}$), profit is maximized by maximizing the supplied quantities, you probably can drop the big M constraints and trust the objective to prevent selection of a supplied quantity less than the min of the two upper limits. As an experiment, you could try running without those constraints and ...


Only top voted, non community-wiki answers of a minimum length are eligible