/* LIST OF PARAMETERS AND VARIABLES USED in the numerical experiment carried out in: */ 
/* Title: "The economic lot-sizing problem with remanufacturing and heterogeneous returns: formulations, analysis and algorithms" */
/* Authors: Pedro Piñeyro and Omar Viera*/
/* Affilation: Department of Operations Research, Institute of Computer Science, Facultad de Ingeniería, Universidad de la República, Uruguay */

/* number of periods */
param T > 0;

/* number of quality levels for returns */
param I > 0;

/* demand values */
param D{t in 1..T} >= 0;

/* returns values */
param U{i in 1..I, t in 1..T} >= 0;

/* production set-up cost */
param Kp{t in 1..T} >= 0;

/* remanufacturing set-up cost */
param Kr{i in 1..I, t in 1..T} >= 0;

/* inventory unit cost of used products*/
param hu{i in 1..I, t in 1..T} >= 0;

/* inventory unit cost of serviceable products*/
param hs{t in 1..T} >= 0;

/* a sufficient big number*/
param M >= 0;

/* production quantity */
var p{t in 1..T} >= 0;

/* remanufacturing quantity */
var r{i in 1..I, t in 1..T} >= 0;

/* inventory level of used products of each quality*/
var yr{i in 1..I, t in 0..T} >= 0;

/* inventory level of serviceable products */
var ys{t in 0..T} >= 0;

/* to indicate the set-up of production */
var zp{t in 1..T} binary;

/* to indicate the set-up of remanufactuing */
var zr{i in 1..I, t in 1..T} binary;



/* NOT USED in the present numerical experiment: */

/* number of returns to be disposed */
param Q{t in 1..T} >= 0;

/* salvage value of returns */
param s{i in 1..I, t in 1..T};

/* final disposal set-up cost */
param Kd{t in 1..T} >= 0;

/* final disposal unit cost */
param cd{t in 1..T} >= 0;

/* production unit cost */
param cp{t in 1..T} >= 0;

/* remanufacturing unit cost */
param cr{i in 1..I, t in 1..T} >= 0;

/* inventory unit cost of non-remanufacturable returns */
param hq{t in 1..T} >= 0;

/* to indicate the set-up of final disposing */
var zd{i in 1..I, t in 1..T} binary;
