Promoting the spread of knowledge and supporting businesses through win-win relationships

Stochastic Models

Estimated reading: 4 minutes 1264 views

Stochastic simulations requires equiprobable models to consider uncertainties related to geological aspects, such as grade and/or volume of ore.

While single scenarios of distinct models are run separately, a stochastic scenario consist of obeying all the single scenarios at once.

This is achieved through an adapted resource block model that contains equiprobable values for a given set of variables containing a certain level of uncertainty.

As a consequence, MiningMath produces reports with the risk-profile of indicators presenting the minimum, maximum, expected, and percentiles P10 and P90 (these are threshold values, indicating that 10% of the indicators are below the P10 and 90% of the indicators are below the P90). Fig. 1 and 2 depicts the graphs for the NPV and cumulative NPV respectively.

Report on NPV for stochastic model.

Maximum expected NPV for period 2

Minimum NPV expected for Period 2

P90 NPV for Period 3. 90% of possible expected values for Period 3 are below this point.

P10 NPV for Period 3. 10% of possible expected values for Period 3 are below this point.

Expected NPV for Period 6.

Fig 1: Report on NPV for stochastic model.

Maximum expected Cumulative NPV for Period 2.

Minimum Cumulative NPV expected for Period 3

P90 Cumulative NPV for Period 4. 90% of possible expected values for Period 3 are below this point.

Expected Cumulative NPV for Period 5.

Fig 2: Report on cumulative NPV for stochastic model.

The purpose of this page is to briefly explain how to import data and manage stochastic constraints using MiningMath.

Formatting Uncertain Fields

Uncertain-fields are those which might vary from simulation to simulation. By definition stochastic models have uncertain fields. Typically, grade fields contain uncertain information. Therefore, the user will need to format each equiprobable possibility in a specific way: name each uncertain column as the same adding {#} (where # is a number from 1 up to n). The list below highlight how grade headers should look like for example:

  • Copper {1}

  • Copper {2}

  • Copper {3}

  • Copper {4}

  • Copper {5}

Note that the grade information will influence the economic values for the processing stream. Therefore, the user will need to calculate the Economic Values for each possible grade information, as highlighted in Figure 3. This figure illustrates parts of a simulated copper deposit that can be downloaded here.

Figure 3: Stochastic values for copper grade (green) and respective process (blue) for 20 simulations.

Stochastic Constraints

Once you import your stochastic block model, the tabs Average and Sum will allow for constraints both on:

  1. Expected values to control the averages over all simulations.

    These constraints will guarantee that, in average, the indicators will be within the defined ranges. For example, take Expected Min = 0.60 and Expected Max = 0.65 for a certain constraint. If there are 3 simulations returning 0.59, 0.62 and 0.65, the average is 0.62, so this is within the range defined.

    Copper simulation example average
    Fig 4: Example to control the average of all simulations. This option is only available when databases containing stochastic data are imported.
  2. All simulations to guarantee that each one of them respect certain criteria

    These constraints control the variability, or the spread, of the results to be within a certain acceptable range. Let's take an example where such a range has Min = 0.60 and Max = 0.65, and again three simulations returning 0.59, 0.62, and 0.65. In this case the solution will be penalized by the optimizer, as 0.59 < 0.60. Learn more about penalized solutions here.

    Fig 5: Example to control all simulations individually. This option is only available when databases containing stochastic data are imported.

Stochastic optimization is an optimized way to combine all these modelled uncertainties into one schedule that maximizes the Expected NPV of the project.

Violated constraints

After executing the optimization with constraints for simulated indicators, it is possible that such constraints will not be respected due to some infeasibility in the problem (more about infeasibilities here).

MiningMath will try to solve any violated constraints following the hierarchy order depicted in Fig 6. Stochastic constraining are average and sum constraints. They have higher priority than any NPV improvements and time limits imposed by the user.

Constraint order
Figure 6: constraints hierarchy order.
Share this Doc

Stochastic Models

Or copy link

Chat Icon

Hi, it's Mima here 😇 Ask me any questions!