instance manufacturer_inst_mdp__11 {
    domain = manufacturer_mdp;

    objects {
        good : { g0000, g0001, g0002, g0100, g0101, g0102, g0200, g0201 };
    };
 
    non-fluents {
        // PROCESSED_TO
        PROCESSED_TO(g0000, g0100);
        PROCESSED_TO(g0001, g0100);
        PROCESSED_TO(g0001, g0101);
        PROCESSED_TO(g0002, g0101);
        PROCESSED_TO(g0000, g0102);
        PROCESSED_TO(g0001, g0102);
        PROCESSED_TO(g0100, g0200);
        PROCESSED_TO(g0102, g0200);
        PROCESSED_TO(g0101, g0201);
        PROCESSED_TO(g0102, g0201);


        // PRICES
        PRICE(g0000) = 22;
        PRICE(g0001) = 21;
        PRICE(g0002) = 24;
        PRICE(g0100) = 74;
        PRICE(g0101) = 72;
        PRICE(g0102) = 69;
        PRICE(g0200) = 232;
        PRICE(g0201) = 246;


        // PRICE TRENDS
        PRICE_TREND_CHANGE_PROB(g0000) = 0.01;
        PRICE_TREND_CHANGE_PROB(g0001) = 0.05;
        PRICE_TREND_CHANGE_PROB(g0002) = 0.08;
        PRICE_TREND_CHANGE_PROB(g0100) = 0.11;
        PRICE_TREND_CHANGE_PROB(g0101) = 0.11;
        PRICE_TREND_CHANGE_PROB(g0102) = 0.06;
        PRICE_TREND_CHANGE_PROB(g0200) = 0.02;
        PRICE_TREND_CHANGE_PROB(g0201) = 0.02;


        // PRICE_LEVEL_FACTORS
        PRICE_LEVEL_FACTOR(@level1) = 0.5;
        PRICE_LEVEL_FACTOR(@level2) = 0.6667;
        PRICE_LEVEL_FACTOR(@level3) = 0.8333;
        PRICE_LEVEL_FACTOR(@level4) = 1.0;
        PRICE_LEVEL_FACTOR(@level5) = 1.1667;
        PRICE_LEVEL_FACTOR(@level6) = 1.3333;
        PRICE_LEVEL_FACTOR(@level7) = 1.5;


        // PRICE_LEVEL_PROBS
        PRICE_LEVEL_PROB(@level1, @level1, @down) = 1.0;
        PRICE_LEVEL_PROB(@level1, @level2, @down) = 0.2;
        PRICE_LEVEL_PROB(@level2, @level2, @down) = 0.8;
        PRICE_LEVEL_PROB(@level2, @level3, @down) = 0.2;
        PRICE_LEVEL_PROB(@level3, @level3, @down) = 0.8;
        PRICE_LEVEL_PROB(@level3, @level4, @down) = 0.2;
        PRICE_LEVEL_PROB(@level4, @level4, @down) = 0.8;
        PRICE_LEVEL_PROB(@level4, @level5, @down) = 0.2;
        PRICE_LEVEL_PROB(@level5, @level5, @down) = 0.8;
        PRICE_LEVEL_PROB(@level5, @level6, @down) = 0.2;
        PRICE_LEVEL_PROB(@level6, @level6, @down) = 0.8;
        PRICE_LEVEL_PROB(@level6, @level7, @down) = 0.2;
        PRICE_LEVEL_PROB(@level7, @level7, @down) = 0.8;

        PRICE_LEVEL_PROB(@level1, @level1, @stable) = 0.9;
        PRICE_LEVEL_PROB(@level1, @level2, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level2, @level1, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level2, @level2, @stable) = 0.8;
        PRICE_LEVEL_PROB(@level2, @level3, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level3, @level2, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level3, @level3, @stable) = 0.8;
        PRICE_LEVEL_PROB(@level3, @level4, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level4, @level3, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level4, @level4, @stable) = 0.8;
        PRICE_LEVEL_PROB(@level4, @level5, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level5, @level4, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level5, @level5, @stable) = 0.8;
        PRICE_LEVEL_PROB(@level5, @level6, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level6, @level5, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level6, @level6, @stable) = 0.8;
        PRICE_LEVEL_PROB(@level6, @level7, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level7, @level6, @stable) = 0.1;
        PRICE_LEVEL_PROB(@level7, @level7, @stable) = 0.9;

        PRICE_LEVEL_PROB(@level1, @level1, @up) = 0.8;
        PRICE_LEVEL_PROB(@level2, @level1, @up) = 0.2;
        PRICE_LEVEL_PROB(@level2, @level2, @up) = 0.8;
        PRICE_LEVEL_PROB(@level3, @level2, @up) = 0.2;
        PRICE_LEVEL_PROB(@level3, @level3, @up) = 0.8;
        PRICE_LEVEL_PROB(@level4, @level3, @up) = 0.2;
        PRICE_LEVEL_PROB(@level4, @level4, @up) = 0.8;
        PRICE_LEVEL_PROB(@level5, @level4, @up) = 0.2;
        PRICE_LEVEL_PROB(@level5, @level5, @up) = 0.8;
        PRICE_LEVEL_PROB(@level6, @level5, @up) = 0.2;
        PRICE_LEVEL_PROB(@level6, @level6, @up) = 0.8;
        PRICE_LEVEL_PROB(@level7, @level6, @up) = 0.2;
        PRICE_LEVEL_PROB(@level7, @level7, @up) = 1.0;


        // FACTORY
        MAX_NUM_FACTORIES = 2;
        BUILD_FACTORY_COST(g0000) = 0;
        PROB_CONSTRUCTION_DELAY_FACTORY(g0000) = 0.00;
        BUILD_FACTORY_COST(g0001) = 0;
        PROB_CONSTRUCTION_DELAY_FACTORY(g0001) = 0.00;
        BUILD_FACTORY_COST(g0002) = 0;
        PROB_CONSTRUCTION_DELAY_FACTORY(g0002) = 0.00;
        BUILD_FACTORY_COST(g0100) = 45;
        PROB_CONSTRUCTION_DELAY_FACTORY(g0100) = 0.49;
        BUILD_FACTORY_COST(g0101) = 0;
        PROB_CONSTRUCTION_DELAY_FACTORY(g0101) = 0.00;
        BUILD_FACTORY_COST(g0102) = 48;
        PROB_CONSTRUCTION_DELAY_FACTORY(g0102) = 0.36;
        BUILD_FACTORY_COST(g0200) = 85;
        PROB_CONSTRUCTION_DELAY_FACTORY(g0200) = 0.46;
        BUILD_FACTORY_COST(g0201) = 110;
        PROB_CONSTRUCTION_DELAY_FACTORY(g0201) = 0.47;


        // STAFF
        // instance with marketing manager
        SALARY_MARKETING_MANAGER = 16;
        PROB_MARKETING_MANAGER_APPLIES = 0.32;
        MARKETING_MANAGER_BONUS = 0.84;

        // instance with lobbyist
        SALARY_LOBBYIST = 12;
        PROB_LOBBYIST_APPLIES = 0.25;
        LOBBYIST_BONUS = 0.25;

        // instance without production manager
        SALARY_PRODUCTION_MANAGER = 0;
        PROB_PRODUCTION_MANAGER_APPLIES = 0;

    };

    init-state {
        have-factory(g0101);

        price-trend(g0000) = @stable;
        price-trend(g0001) = @up;
        price-trend(g0002) = @stable;
        price-trend(g0100) = @stable;
        price-trend(g0101) = @stable;
        price-trend(g0102) = @down;
        price-trend(g0200) = @up;
        price-trend(g0201) = @stable;
        
    };

    horizon = 50;

    discount = 1.0;
}