This paper develops an order-up-to S inventory model that is designed to handle multiple items, resource constraints, lags in delivery, and lost sales without sacrificing computational simplicity. Mild conditions are shown to ensure that the expected average holding cost and the expected average shortage cost are separable convex functions of the order-up-to levels. We develop nonparametric estimates of these costs and use them in conjunction with linear programming to produce what is termed the "LP policy." The LP policy has two major advantages over traditional methods: first, it can be computed in complex environments such as the one described above; and second, it does not require an explicit functional form of demand, something that is difficult to specify accurately in practice. In two numerical experiments designed so that optimal policies could be computed, the LP policy fared well, differing from the optimal profit by an average of 2.20% and 1.84%, respectively. These results compare quite favorably with the errors incurred in traditional methods when a correctly specified distribution uses estimated parameters. Our findings support the effectiveness of this mathematical programming technique for approximating complex, real-world inventory control problems.