Controlling mining operations

A centralized processing system with a digital mine model and real-time updates addresses the challenge of efficiently controlling multiple autonomous mining machines by providing precise operation data, enhancing mining accuracy and consistency.

WO2026008354A1PCT designated stage Publication Date: 2026-01-08NORGES GEOTEKNISKE INSTITUTT AS +1
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2025/067448
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-07-04
Filing Date
2025-06-20
Publication Date
2026-01-08

AI Technical Summary

Technical Problem

Configuring autonomous mining machines for efficient operation in mines, especially when multiple machines are operating simultaneously, is challenging due to the need for real-time adaptation to changing subsurface geological conditions.

Method used

A centralized or distributed processing system that stores a digital model of the mine's subsurface geology, updates it with real-time sensor data from autonomous mining machines, and provides mining-operation data to machine control systems for precise control of the machines.

Benefits of technology

Enables more accurate and efficient mining operations by allowing autonomous machines to adapt in real-time to geological changes, improving coordination and consistency among multiple machines.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2025067448_08012026_PF_FP_ABST
    Figure EP2025067448_08012026_PF_FP_ABST
Patent Text Reader

Abstract

A method for controlling mining operations at a mine comprises accessing a digital model comprising information about a mine for each of a plurality of 3D blocks, and processing the mine information to determine a mining sequence for sequentially mining the plurality of blocks by a set of one or more mining machines. The processing comprises representing each block as a variable node of a factor graph, each associated with a variable value that is dependent upon the respective variable values of one or more blocks in a neighbourhood of the block and also upon one or more geometrical constraint rules. The method comprises optimizing, over the variable nodes, a global factor function that combines outputs of factor functions of factor nodes to determine a set of most- probable values for the plurality of blocks, and using these to determine the mining sequence.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Controlling Mining Operations

[0002] TECHNICAL FIELD

[0003] This disclosure relates to systems, methods and software for controlling a mine.

[0004] BACKGROUND

[0005] Autonomous mining machines are being developed that can operate without the need for a human driver or operator to be physically present with the machine while it is performing a mining operation. This has the potential to make open-pit and underground mines safer and more productive, while reducing the environmental footprint.

[0006] However, it is not straightforward to configure (e.g. instruct) autonomous mining machines for efficient operation of a mine, especially where multiple such machines are at work in the same mine. Embodiments of the present disclosure seek to provide a system for efficient control of a mine involving one or more autonomous mining machines.

[0007] SUMMARY

[0008] From a first aspect, the present disclosure provides a centralized or distributed processing system for controlling mining operations at a mine, wherein the centralized or distributed processing system is configured to store a digital model that models at least a subsurface geology of the mine; and is further configured, while an autonomous mining machine is performing one or more mining operations: at each of a first succession of times, to receive over a communication system, from a machine control system configured to control the autonomous mining machine in performing the mining operation(s), respective geological data about the subsurface geology of the mine, determined using one or more sensors of the autonomous mining machine; to use the geological data to update the digital model; and at each of a second succession of times, to use the digital model to determine respective mining-operation data for the machine control system to use in controlling the autonomous mining machine for performing the mining operation(s) and send the respective mining-operation data to the machine control system over the communication system.

[0009] From a second aspect, the present disclosure provides a distributed control system for controlling mining operations at a mine, the distributed control system comprising: a machine control system configured to control an autonomous mining machine in performing one or more mining operations; and a centralized or distributed processing system as disclosed herein, wherein the machine control system is configured, while performing the mining operation(s), to: send to the processing system, over the communication system, the respective geological data about the subsurface geology of the mine determined using the one or more sensors of the autonomous mining machine; receive the mining-operation data from the processing system; and use the mining-operation data in controlling the autonomous mining machine for performing the mining operation(s).

[0010] From a third aspect, the present disclosure provides a method of controlling mining operations at a mine, the method comprising, while an autonomous mining machine is performing one or more mining operations: at each of a first succession of times, sending, over a communication system, from a machine control system that is controlling the autonomous mining machine in performing the mining operation(s), to a centralized or distributed processing system storing a digital model that models at least a subsurface geology of the mine, respective geological data about the subsurface geology of the mine determined using one or more sensors of the autonomous mining machine; the processing system using the geological data to update the digital model; at each of a second succession of times, the processing system using the digital model to determine respective mining-operation data for the autonomous mining machine and sending the respective mining-operation data to the machine control system over the communication system; and the machine control system using the mining-operation data for controlling the autonomous mining machine in performing the mining operation(s).

[0011] From a fourth aspect, the present disclosure provides computer software (and a non-transitory storage medium carrying the same) comprising instructions which, when executed by one or more processors of a centralized or distributed processing system, cause the processing system, while an autonomous mining machine is performing one or more mining operations: at each of a first succession of times, to receive over a communication system, from a machine control system that is controlling the autonomous mining machine in performing the mining operation(s), respective geological data about the subsurface geology of the mine, determined using one or more sensors of the autonomous mining machine; to use the geological data to update a digital model, stored by the processing system, that models at least a subsurface geology of the mine; and at each of a second succession of times, to use the digital model to determine respective mining-operation data for the machine control system to use in controlling the autonomous mining machine for performing the mining operation(s) and send the respective mining-operation data to the machine control system over the communication system. Thus, it will be seen that, in accordance with certain embodiments of the present disclosure, a model of the mine, including subsurface geological features (e.g. representing where ore is located within the mine), is stored on a centralized or distributed processing system and can be updated, in real-time, by one or more autonomous mining machines as mining operations are underway, using sensor data acquired by the mining machines. This can enable the autonomous mining machines to access the model to refine how the mining operations are being performed, in real-time, based on the live geological data. This can result in more accurate and efficient operation of the mine than using a static model or plan determined prior to the commencement of mining operations.

[0012] Moreover, by storing the subsurface geological model on a centralized or distributed processing system, the processing system can conveniently be used to supply mining-operation data to multiple autonomous mining machines operating in the same mine from the same model. This can result in better coordination and consistency among the machines.

[0013] The autonomous mining machine may be a vehicle. It may be self-driving. It may be configured to navigate autonomously. The mining-operation data may include data that the machine is configured to use for navigating the mine. For example, the mining-operation data may comprise a destination for mined material (e.g. ore) carried by the machine, and the machine control system may determine and navigate the vehicle along a path to the indicated destination.

[0014] Each mining operation may be a single action or comprise a sequence of actions. It may comprise one or more of: excavation, drilling, loading material, moving material (e.g. hauling), explosive charging, spraying, or mineral processing. It may be performed by the autonomous mining machine acting alone, or it may involve a plurality of autonomous mining machines. The mining operation(s) may form part of a larger excavation project, which may involve a plurality of mining operations that are performed concurrently and / or consecutively by a set of one or more mining machines.

[0015] In some embodiments, the distributed control system comprises a plurality of machine control systems, each configured to control a respective autonomous mining machine of a plurality of autonomous mining machines for performing respective mining operations at the mine.

[0016] In some embodiments, each autonomous mining machine may be a part of the disclosed distributed control system, although this is not essential. Each autonomous mining machine may be any of: a surface loader, or underground loader, or drilling jumbo, or crawler drill, or truck, or hauler, or dumper, or mucker, or excavator, or continuous miner (CM), or rock-bolter, or explosive charging machine, or shotcrete-sprayer, or conveyer belt, or mobile mineral processing unit, or static mineral processing unit. Each machine control system may be located at the mine. Each machine control system may be located wholly or partly on or within the respective autonomous mining machine. It may be integrated with the autonomous mining machine during manufacture of the autonomous mining machine, or it may be retrofitted to an autonomous mining machine after the machine has been manufactured and / or used for mining operations.

[0017] Each autonomous mining machine may comprise one or more of: a drilling-system sensor, a vibration sensor, a velocity sensor, a ground penetrating radar, an electrical resistivity sensor, a LiDAR sensor, an IMU, a GPS receiver, a visible-light camera, a multispectral camera, a stereo camera, a water flowmeter, a mass measuring sensor, or a real-time chemical assaying sensor. In addition to using one or more sensors for determining geological data to send to the processing system, each machine may be configured to use one or more sensors (which may be the same or different sensors) for performing the mining operation(s) (e.g. for controlling an actuator and / or for navigating around the mine).

[0018] In some embodiments an optical sensing system (e.g. comprising a stereo camera and / or LiDAR sensor) or a geophysical sensing system (e.g. comprising a magnetometer and / or ground penetrating radar) may be used by the autonomous mining machine both for determining geological data and for performing the mining operation(s).

[0019] The centralized or distributed processing system may be situated at least partly at the mine. In some embodiments, the processing system may be partly or wholly implemented by the set of one or more autonomous mining machines. However, in some embodiments the processing system is wholly or partly located remotely from the mine — e.g. in a datacenter.

[0020] The processing system may be a server system. In some embodiments, the processing system is a distributed processing system. It may comprise one or more physical server machines, each comprising a processor; these may be located together or remotely from each other. It may comprise a plurality of processing units each located in a different respective autonomous mining machine.

[0021] In some embodiments, the digital model is stored in a memory of one of the autonomous mining machines. A complete instance of the digital model may be stored in a memory of an excavator. The excavator may comprise a processing system that is configured to use the digital model to determine a mining sequence for the mine, e.g. using a method as described below. It may be configured to send mining operation data to one or more autonomous mining machines that are not excavators. A fraction of the digital model (i.e. a partial copy) may be stored in the memory of an autonomous mining machine that is not an excavator, which may be configured to use the fraction of the digital model to navigating the mine. This approach may advantageously enable efficient distributed control of mining machines, led by one or more excavators, while lessening communication overhead and / or processing resources required by non-excavators.

[0022] The communication system may comprise a communication network. It may comprise a local area network at the mine and / or a wide area network such as the Internet. It may comprise one or more wireless (e.g. radio) networks at the mine. The communication system may additionally or alternatively comprise one or more communication links within an autonomous mining machine.

[0023] In some situations, geological data about the subsurface geology of the mine determined using one or more sensors of a first autonomous mining machine, performing a first mining operation, may be used to update the digital model with a change that affects the control of a second autonomous mining machine, performing a second mining operation. The first and second mining operations may occur over different respective time periods, or they may overlap in time.

[0024] The digital model may model the distribution of one or more ores within the mine. The ore may be any economically useful ore. The digital model may model any one or more of the following for the mine: geomechanical data; economic data; environmental data; processing data; and / or scheduling data.

[0025] The digital model may store (e.g. in a data structure in a centralized or distributed memory of the processing system) mine information, e.g. subsurface geological features, for each of a plurality of three-dimensional blocks. In a distributed processing system, respective copies or portions of the digital model may be stored in different respective processing systems. The blocks may be nonoverlapping. In some embodiments, each block is at least one cubic metre in volume. In some embodiments, each block has a minimum dimension of at least 50 cm or 1 m. In some embodiments, each block has a maximum dimension of at most 20 m or 10 m. The model may store a position of each block, e.g. in three-dimensional coordinates. It may store a geometry of each block (e.g. its shape and / or size and / or position). It may store information for some or all of the blocks from each of a plurality of predetermined categories (some of which may be optional or blank for any particular block).

[0026] The digital model may store respective geological data for some or all of the blocks, which may comprise geological position data and / or lithology data and / or structural geology data and / or economic data and / or mineralogical data. The mineralogical data may include chemical-element data, which may provide an indication of economic value and / or economical penalty for the mine. It may store a respective status for some or all of the blocks, which may indicate whether or not the block has been mined out, and / or whether or not the block is currently undergoing a mining operation. It may store respective mass data for some or all of the blocks, which may indicate how much ore the block contains, e.g. as concentrates or tailing masses. It may store mining activity data for some or all of the blocks, which may indicate a planned or measured activity for the block; it may identify an autonomous mining machine associated with the activity. It may store a respective destination for some or all of the blocks (e.g. processing plant / mill, or waste, or stockpile). It may store respective processing data and / or economics data and / or environmental data for some or all of the blocks.

[0027] Each autonomous mining machine may be configured to perform geological mapping from data obtained using one or more sensors of the machine.

[0028] The geological data sent to the processing system and / or modelled by the digital model may comprise lithology data, and / or structural geology data (e.g. rock surface map information, or a location of a boundary between lithological types), and / or geomechanical data (e.g. rock-fall risk data), and / or mineralogical data (e.g. which may include chemical composition data). It may comprise respective data associated with one or more three-dimensional blocks. The geological data may be determined, at least in part, using a stereo camera, LiDAR or ground penetrating radar (e.g. for structural and geomechanical data) or a multispectral camera (e.g. for mineralogical data) — e.g. of one or more mobile or static mining machines. It may be determined, at least in part, from mass and / or chemical assaying of feed, concentrates and tailings at a processing plant or processing unit.

[0029] Each autonomous mining machine may additionally be configured to send non-geological data about the mine to the processing system. It may send the status of a three-dimensional block (e.g. mined out or not). It may send processing data, e.g. a start or end time of each mining operation, or productivity and / or duration data for each cycle of mining machine.

[0030] The centralized or distributed processing system may be configured to use the digital model to determine an ordered list of blocks to be mined in sequence (i.e. a mining sequence). It may determine the ordered list at least partly based on one or more economic and / or environmental criteria. The ordered list may change over time in response to the geological (and optionally other) data received from the machine control system. The processing system may determine a geometry (e.g. size and / or orientation and / or location) of each block. The processing system may determine a respective destination for each block, which may be determined from a predefined set of destinations which may include two or more of: a processing plant, a stockpile, or a waste dump. The processing system may communicate a block (e.g. its identity and / or geometry) — which may be a next block to be mined — from the ordered list, and / or a destination of the block, to the machine control system as mining-operation data.

[0031] In some embodiments, the processing system is configured to store a digital model comprising information about a mine, the mine information comprising mine information for each of a plurality of three-dimensional blocks, and to process the mine information to determine a mining sequence for sequentially mining the plurality of blocks by a set of one or more mining machines.

[0032] Processing the mine information to determine the mining sequence may comprise: representing each block of the plurality of blocks as a respective variable node of a factor graph, each variable node being associated with a variable value of the respective block, wherein, for at least a subset of the plurality of blocks, the variable value for each block is dependent upon the respective variable values of one or more blocks in a respective neighbourhood of the block and is further dependent upon one or more geometrical constraint rules that are applied to the block, wherein the factor graph additionally comprises a set of factor nodes each having a factor function that is a function of each variable node to which the factor node is connected in the factor graph; applying an optimization process to a global factor function, over the variable nodes, to determine a set of most-probable values for the plurality of blocks, wherein the global factor function combines respective outputs of the factor functions of the factor nodes; and using the set of most-probable values to determine the mining sequence in dependence upon the most-probable value of each of the plurality of blocks.

[0033] From a further aspect, the present disclosure provides a centralized or distributed processing system for controlling mining operations at a mine, wherein the centralized or distributed processing system is configured to: access a digital model comprising information about a mine, the mine information comprising mine information for each of a plurality of three-dimensional blocks; and process the mine information to determine a mining sequence for sequentially mining the plurality of blocks by a set of one or more mining machines, wherein processing the mine information to determine the mining sequence comprises: representing each block of the plurality of blocks as a respective variable node of a factor graph, each variable node being associated with a variable value of the respective block, wherein, for at least a subset of the plurality of blocks, the variable value for each block is dependent upon the respective variable values of one or more blocks in a respective neighbourhood of the block and is further dependent upon one or more geometrical constraint rules that are applied to the block, wherein the factor graph additionally comprises a set of factor nodes each having a factor function that is a function of each variable node to which the factor node is connected within the factor graph; applying an optimization process, over the variable nodes, to a global factor function that combines outputs of the factor functions of the factor nodes so as to determine a set of most- probable values for the plurality of blocks; and using the set of most-probable values to determine the mining sequence in dependence upon the most-probable value of each of the plurality of blocks. The processing system may be configured to use the mining sequence to determine miningoperation data for use in controlling an autonomous mining machine for performing a mining operation. It may be configured to send the mining-operation data to a machine control system that is configured to control the autonomous mining machine in performing the mining operation. The digital model may be stored by the processing system, or it may be stored externally to the processing system.

[0034] From another aspect, the present disclosure provides a distributed control system for controlling mining operations at a mine, the distributed control system comprising: a machine control system configured to control an autonomous mining machine in performing one or more mining operations; and a centralized or distributed processing system as disclosed above, wherein the machine control system is configured to: receive mining-operation data from the processing system; and use the mining-operation data in controlling the autonomous mining machine for performing the mining operations.

[0035] From another aspect, the present disclosure provides a method (e.g. a computer-implemented method) for controlling mining operations at a mine, the method comprising: accessing a digital model comprising information about a mine, the mine information comprising mine information for each of a plurality of three-dimensional blocks; and processing the mine information to determine a mining sequence for sequentially mining the plurality of blocks by a set of one or more mining machines, wherein processing the mine information to determine the mining sequence comprises: representing each block of the plurality of blocks as a respective variable node of a factor graph, each variable node being associated with a variable value of the respective block, wherein, for at least a subset of the plurality of blocks, the variable value for each block is dependent upon the respective variable values of one or more blocks in a respective neighbourhood of the block and is further dependent upon one or more geometrical constraint rules, wherein the factor graph additionally comprises a set of factor nodes each having a factor function that is a function of each variable node to which the factor node is connected within the factor graph; applying an optimization process, over the variable nodes, to a global factor function that combines outputs of the factor functions of the factor nodes so as to determine a set of most- probable values for the plurality of blocks; and using the set of most-probable values to determine the mining sequence in dependence upon the respective most-probable value of each of the plurality of blocks.

[0036] From another aspect, the present disclosure provides computer software (and a non-transitory storage medium carrying the same) comprising instructions which, when executed by one or more processors of a centralized or distributed processing system, cause the processing system to carry out such a method.

[0037] Some embodiments may perform real-time updating of the digital mine model, as described herein. More generally, any feature of the preceding aspects or embodiments may be a feature of some embodiments of these aspects also.

[0038] The factor graph may comprise a factor node between each pair of variable nodes whose respective blocks abut each other in the mine. The respective neighbourhood of each block comprises one or more blocks that abut the block.

[0039] The one or more geometrical constraint rules includes a rule that, within the respective neighbourhood, a block at a first elevation should be mined before a block at a second, lower elevation and / or a rule requiring the mining sequence to comply with a predetermined slope stability angle.

[0040] The variable value for a block may be determined by evaluating a function that sums the variable values of every block in the respective neighbourhood that satisfies the one or more geometrical constraint rules.

[0041] A distance between blocks of the plurality of blocks may be calculated using a distance metric that depends at least upon geographic location and / or geological similarity, and connect pairs of blocks that separated by less than a threshold distance so as to form a respective loop in the factor graph. Geological similarity may be determined based on any one or more of: lithology data; structural geology data (e.g. rock surface map information, or a location of a boundary between lithological types); geomechanical data (e.g. rock-fall risk); and mineralogical data (e.g. chemical composition).

[0042] The optimization process may seek and / or determine an optimized (e.g. maximized) factor graph. It may seek to maximize the global factor function. It may be an iterative optimization process. The most-probable value of each block may be the value of the respective block in the factor graph that is determined by the optimization process.

[0043] The variable and / or most-probable value of each block may correspond to a variable and / or most- probable economic value of the block. It may represent a net present value (NPV) of the block.

[0044] The most-probable values may be used to determine a mining sequence that maximizes an economic value (e.g. NPV) of the mine. The mining sequence may be determined in dependence upon an ordered sequence of the most- probable values of the plurality of blocks such that a first block, with a first most-probable value in the set, is sequenced for mining before a second block that has a most-probable value in the set that is lower than the first most-probable value.

[0045] The factor graph may be updated at intervals while mining operations are underway, e.g. based on updated information in the digital model.

[0046] In embodiments of any of the aspects disclosed herein, the processing system may be configured to use the digital model to schedule mining operations at the mine in accordance with an optimization algorithm to reduce or eliminate time when one or more autonomous mining machines at the mine are idle (i.e. not performing any mining operation).

[0047] Each autonomous mining machine may be configured to plan a set (e.g. a sequence) of one or more mining operation(s) (e.g. an excavation or hauling of an identified block); it may do so using the mining-operation data obtained from the processing system. It may be configured to update the plan while the mining operations are underway using later-received mining-operation data. For example, a mining machine may receive an identity of a next block to operate on (e.g. to excavate or to blast) and may use this to plan a next mining operation or a sequence of mining operations.

[0048] Each autonomous mining machine may be configured to process sensor data to assess safety of the mine, at least in a vicinity of the machine.

[0049] The mining-operation data may comprise respective data associated with one or more three- dimensional blocks. It may comprise geology data and / or status data and / or environmental data and / or process data and / or mass data for a region (e.g. one or more 3D blocks) of the mine.

[0050] The first succession of times and the second succession of times may be different. They may be overlapping. Each may be spaced at regular or irregular intervals. The autonomous mining machine may be configured to detect an inconsistency (e.g. a difference above a threshold) between data obtained from the one or more sensors of the machine and data obtained from the processing system (e.g. previously-received mining-operation data). It may be configured to send respective geological data to the processing system in response to detecting such an inconsistency.

[0051] The processing system may be configured to send respective mining-operation data to the autonomous mining machine (and optionally to one or more further autonomous mining machines) in response to updating one or more subsurface geological features of the digital model. The processing system may be configured to receive mineral-processing data from a processing plant or unit (which may be considered to be an autonomous mining machine in some embodiments). The distributed control system may comprise a processing-plant or -unit monitoring system, configured to send the mineral-processing data to the processing system, e.g. at regular or irregular intervals (which may include while the autonomous mining machine is performing the mining operation(s)). The mineral-processing data may include flow data and / or mass data and / or chemical composition data. These data may relate to any or all of: feed received at the processing plant / unit; tailing output by the processing plant / unit; and product (e.g. economically-useful ore) output by the processing plant / unit. The plant monitoring system may comprise sensors for measuring flow (e.g. of water and pulp) and / or mass (e.g. of feed, concentrates and tailings) and / or chemical composition (e.g. of feed, concentrates and tailings). The processing system may be configured to use the mineral-processing data to update the digital model.

[0052] The processing system may be configured to model tailing information and / or mineral processing. It may be configured to use the digital model to analyze the mine — e.g. to perform geological and / or economic and / or operational prediction or analysis.

[0053] Features of any aspect or embodiment described herein may, wherever appropriate, be applied to any other aspect or embodiment described herein. Where reference is made to different embodiments or sets of embodiments, it should be understood that these are not necessarily distinct but may overlap.

[0054] BRIEF DESCRIPTION OF THE DRAWINGS

[0055] Certain embodiments of the present disclosure will now be described, by way of example only, with reference to the accompanying drawings, in which:

[0056] Figure 1 is a schematic diagram of a mine and a system for controlling the mine embodying the disclosure;

[0057] Figure 2 is a schematic diagram showing a close-up of one autonomous mining machine of the system;

[0058] Figure 3 is a schematic diagram showing processing modules of the system;

[0059] Figure 4 is a flow chart of operations carried out by the client and server processing modules;

[0060] Figure 5 is an exemplary factor graph for explaining a principle of some embodiments;

[0061] Figure 6 is a schematic representation of a neighbourhood of blocks of a mine represented in a mine-information model according to some embodiments;

[0062] Figure 7 is a factor graph corresponding to this neighbourhood of blocks;

[0063] Figure 8 is a schematic representation of two sets of blocks illustrating the application of geometric constraint rules according to some embodiments; Figure 9 is a schematic diagram showing three exemplary block mining groups and a corresponding plot of net present values (NPVs) and incremental rate of return (IRR) against time of mining;

[0064] Figure 10 is a schematic diagram showing two of the three exemplary block mining groups and a corresponding plot of NPV and IRR for each group against time of mining; and

[0065] Figure 11 is a schematic diagram illustrating determining an order of mining within one of the mining block groups based on an optimized factor graph according to some embodiments.

[0066] DETAILED DESCRIPTION OF EMBODIMENTS

[0067] Figure 1 shows an exemplary mine 100 that includes both open-pit surface-mining works and underground mining works. The mine 100 may contain one of more excavations as well as a processing plant 109 and other conventional features, such as a tailing dam or a waste rock dump. The mine 100 is controlled by a mining control system that includes a set of one or more processing modules, implementing a centralized or distributed processing system 101 as disclosed herein, and a set of autonomous mining machines 102-105. The machines 102-105 and processing system 101 work together to operate the mine 100, including planning and executing mining operations such as drilling, blasting, excavating, loading, hauling and mineral processing, with minimal on-site human involvement. The processing system 101 may be seen as a server system, providing miningoperation data to the machines 102-105 for use in controlling the machines to perform mining operations. The mine 100 can thus be operated efficiently and safely.

[0068] Each mining machine 102-105 carries a local control unit which can communicate at intervals with the processing system 101 over a communication system 107 (e.g. over a communication network) — e.g. using a radio transceiver on the mining machine. The machines 102-105 are arranged to communicate wirelessly with access points 108 located around the mine 100, which in turn can connect to the processing system 101 via the communication system 107. Communication between the machines 102-105 and the processing system 101 may occur over any number of wired links (e.g. cable or fibre) and / or wireless links (e.g. WiFi or cellular radio). The processing system 101 may be partially or wholly located at the site of the mine 100, or partially or wholly remotely (e.g. in a datacenter). In some embodiments, the processing system 101 , including its storage, may be partly or wholly implemented on the machines 102-105 themselves. However, in other examples, the processing system 101 is implemented wholly remotely, e.g. in one or more offsite datacenters. The communication system 107 may be purely a local communication system (i.e. at the site of the mine 100), but in some embodiments it includes a wide area network such as the Internet.

[0069] The autonomous mining machines 102-105 may include any number of surface and / or underground machines. They may include any number of crawler drills 102, surface loaders 103, underground loaders 104, drilling jumbos 105, haulers, dumpers, muckers, excavators, continuous miners (CM), rock-bolters, explosive charging machines, shotcrete-sprayers, mineral processing units, etc. Being autonomous means a mining machine is capable of operating (i.e. performing part or all of a mining operation) without a human driver or operator being continually present with the machine. The mining machine may additionally be capable of planning one or more aspects of the mining operation, such as determining where to move to and / or what block to operate on next. While the actions of the machines 102-105 will depend in part on their interactions with the processing system 101 , the machines 102-105 also contain local control units that enable them to perform complex tasks without needing real-time communication with the processing system 101.

[0070] Each mining machine 102-105 is equipped with one or more actuators for carrying out a mining operation. Some of the machines may be unable to move themselves (e.g. be static, or be carried by a human or a separate vehicle), but at least some of the machines 102-105 are mobile and can move around the mine 100 autonomously (i.e. without a driver). The machines 102-105 include various sensors. The machine may use these for navigation and / or for carrying out mining operations. In some embodiments, at least one machine may include a sensor whose output is not used directly by the machine but is rather used to provide data to the processing system 101 (which may then be used to control that machine indirectly and / or to control other machines of the system).

[0071] Figure 2 shows an exemplary mobile drilling jumbo 105 in more detail. In addition to a standard drifter drill 200, it is equipped with a downward-facing geophysical sensor 201 , an upward-facing geophysical sensor 202, a LiDAR sensor 203, a rearward-facing robot vision unit 204, a forwardfacing robot vision unit 205, and a machine control system 206.

[0072] More generally, each machine 102-105 may include any number of sensors, including any one or more of: a drilling-system sensor, a vibration sensor, a velocity sensor, a ground penetrating radar, an electrical resistivity sensor, a LiDAR sensor, an IMU, a GPS receiver, a visible-light camera, a multispectral camera, a stereo camera, an RPM monitoring sensor (e.g. for a combustion-engine powered machine), an electric power consumption monitor (e.g. for an electric vehicle) etc. In the case of a mobile or static mineral processing unit, the machine may include a water flowmeter, or a mass measuring sensor, or a real-time chemical assaying sensor.

[0073] Figure 3 shows some of the main modules of this exemplary mining machine 105 and the mine- information-model (MIM) processing system 101. Two further exemplary mining machines 102, 103 are also shown in Figure 3, albeit in less detail. In practice, every autonomous mining machines at a mine may contain or carry a similar respective machine control system 206 to the exemplary mining machine 105, and be capable of communicating with the processing system 101 over the communication system 107. The exemplary machine 105 contains various sensors 304 and actuators 305 for moving the vehicle and for operating the machine’s mining equipment. These are communicatively coupled to the machine control system 206. This may be an embedded computer containing one or more processors (CPUs and / or GPUs) and a memory that stores software for execution by the one or more processors that contains instructions implementing various modules and processes as described herein. The control system 206 may also include dedicated analog and / or digital circuitry, e.g. for powering the control unit 205, for communications, for providing a user interface (e.g. display screen), etc. The control system 206 can communicate with the processing system 101 over the communication system 107 using one or more communication peripherals 311 , such as a WiFi radio and / or a cellular radio. Although in this example the control system 206 is implemented on the respective machine 105, in other examples it is possible that some of the control system is located away from the machine 105, e.g. in a control room at the mine 100.

[0074] The functional modules provided by the control system 206 include: data acquisition 306, navigation & control 307, geological mapping & excavation design 308, and safety assessment 310. These are described in more detail below.

[0075] The processing system 101 may comprise one or multiple physical servers, which may share processing functions between them in any appropriate way (e.g. for efficiency or redundancy). The functions of the processing system 101 are implemented by software executing on one or more processors. The processing system 101 provides at least a modelling module 300, a web interface 301 , and a control & analytics module 302. These are described in more detail below.

[0076] The processing system 101 may, in some examples, be located remotely from the mine site. However, in other examples, some or all of the processing system 101 may be located at the mine 100, and be arranged to communicate with the machine control systems over a wired and wireless local area network. In some embodiments, part or all of the processing system 101 is located onboard one or more of the mining machines 102-105. It may, in some examples, share processing and / or storage resources with other operational units of the machines 102-105.

[0077] Processing system - Models

[0078] The modelling module 300 of the processing system 101 manages at least two models for the mine 100: a mine information model (MIM) and a tailing information model (TIM). The data for these models can be stored on the processing system 101 within the modelling module 300. The same processing system 101 may also be arranged to participate in the control of other mines, and so the modelling module 300 may also manage additional models for any other number of other mines. The web interface 301 allows a user to connect with the processing system 101 , e.g. over the Internet, for performing administrator actions such as making an initial model of the mine, or uploading additional new data.

[0079] The control & analytics module 302 contains a stateless geological predictor & updater, an economic predictor & updater, and an operational predictor & updater. In particular, it may perform short-term and / or long-term analytics to correlate the activities in the whole mine-to-port value chain with elements of the information saved in the MIM and TIM. This may facilitate more holistic management and control of the production. This technology may also be used to monitor the progress and performance of the production from a mine-to-port point of view. It can be used to run analytics to predict the duration of specific task inside the mine 100 which are in progress or will be started imminently.

[0080] The control & analytics module 302 may also include a mine planning and optimization tool. This tool may utilize conventional mine planning techniques to plan the mine 100 and schedule the production, but, in some embodiments, it uses a novel approach based on factor graphs to determine a mining sequence as described below. It may have sub-modules which utilize knowledge generated by the short-term and long-term analytics, in combination with the MIM and TIM, as well as fluctuations in the market and costs, to optimize the mine production and schedule holistically.

[0081] The control & analytics module 302 may also include a simulation tool that can utilize stochastic- and mathematics-based simulation techniques to understand how different scenarios of the market fluctuations, in combination with the uncertainties in geology and ore quality, machine availabilities, recovery rates and performance of the processing plant 109, and environmental footprints, can alter the mine production and revenue. The inputs of these simulations are based on the real available data from the mine 100 which are stored in the MIM and TIM, as well as results of the short-term and long-term analytics. The simulations may take account of irregularity in the availability of machines, and utilizing different machines with different productivities and cycle times. The results of the simulations can be updated as new data from the mine 100 becomes available. This simulation tool can allow a mine designer to predict the future production status (in terms of quality and quantity) more accurately and make decision regarding new drilling, or production plan changes, or changes to the settings of the processing plant 109, or purchasing / renting new machines.

[0082] The mine information model (MIM) is a data structure that can quantitatively represents a portion or the entirety of the mine 100, or of any other underground or surface mine or excavation in rock masses. The MIM models the subsurface geology of the mine, as well other optional aspects. It divides the mine space into three-dimensional blocks, at respective (x, y, z) coordinates, and stores data for each block (where available) across a number of different information layers. The blocks may be of uniform or differing sizes across the mine 100. For example, where there is blasting, the blocks might be around 5 m x 10 m x 10 m in size, whereas blocks that are excavated mechanically might be 1 m x 1 m x 1 m or smaller. However, these are just examples, and the blocks may be any appropriate size or sizes. The MIM is updated in real-time based on sensor data acquired from the mining machines 102-105, and is accessible in real-time for revising and implementing one or more mining operations, including while the operations are already underway.

[0083] Each block may include any one or more of: a unique block identifier (that does not change during the life of the mine); geometry data (containing the location, shape and size of the particular block); geological data (comprising lithology data and / or structural geology data and / or mineralogical (optionally including chemical composition) data for the block); architectural data (including whether the block is located inside a particular excavation plan such as a pit, panel, adit, access tunnel, etc.; or is part of rock to be left intact inside the mine such as a chain pillar or crown pillar) status data; mass data; mining activity data; processing data; economic data; and environmental data.

[0084] Each excavation project defined for a mine may be represented as a 3D closed surfaces (i.e. a mesh) which can be assigned to a group of blocks that are partially or fully inside the 3D closed surface. An excavation project may be composed of a set of mining operations, performed by different machines, some of which may be performed simultaneously and / or consecutively.

[0085] The status data indicates the mining status of the block (e.g. whether it has already been mined out, or is currently undergoing drilling, or hauling, etc.). It may also indicate within which part of a mine value chain, from mine-to-port, the current activity of the block is under.

[0086] The mass data for a block represents the mass in four major categories: ore, waste rock, concentrate, and tailing. It is allowed to change over time as new data becomes available, until the block is totally mined out. The mass data also includes the recovery rate of ore during mineral processing. The mining activity data contains a list of “MiningMachinesPerShift”, each of which is itself a list of one or more realizations of a “MachineType” class. The “MachineType” class contains the following attributes: machinejd: a unique identifier for a mining machine in a mine. It will not be changed in the life of mine machine_type: what type of machine it is. It may take one of the following types: drillingjumbo, excavator, charger, loader, dump_truck, road_truck and processing_plant start_time: a standard time variable to define when a machine will start to work std_start_time: the standard deviation of the machine’s start time to work end_time: a time variable to show the ending time of an activity that was carried out by a machine std_end_time: the standard deviation of the machine’s ending time for activities

[0087] The mining activity data layer has two realizations in the MIM: i) planned, and ii) measured. The planned values are updated by a short-term long-term analytics module until all the planned MiningMachinesPerShift lists have corresponding actual measured realizations.

[0088] The processing data contains data that is stored per shift of processing and that represents factors such as: power consumption in different parts of processing, water consumption, mass and chemical quality of feeds, products and tailings, as well as consumables in the mineral processing activities.

[0089] The processing data layer has two realizations in the MIM: i) planned, and ii) measured. The planned values are updated by a short-term long-term analytics module until there are measured values for all of the ProcessingPerShift realizations in the block’s list.

[0090] The economics data contains data regarding: the mining costs for each block; the revenue for each block; the economic value of each block; and cut-off grades of each block and the block’s destination (i.e. mill, stockpile or waste dump).

[0091] The economics data layer has two realizations in the MIM: i) planned, and ii) measured. The planned values may be calculated from nominal values provided by one or more demonstration sites.

[0092] The environmental data includes data such as: the carbon footprint of all mining activates, hazard of produced tailing or waste rock, and valorization potential of the tailing and waste rock. At least some values in the environmental data initially are estimated or planned values, but these are updated by the modelling system 300 as new data becomes available, for as long as the block’s mining status indicates the block has not yet been fully mined out.

[0093] The MIM may include additional layers, such as optional data on blasting for blocks where rock blasting is undertaken (e.g. bore hole details, blast pattern, specific charge, etc.).

[0094] It will be appreciated that this is one example of how the processing system 101 may model subsurface geology and other aspects of the mine 100, but other embodiments may support geological modelling of mines using different data structures.

[0095] The tailing information model (TIM) is similar to the MIM but its data layers are finetuned for tailings or waste rock dumps. Its layers focus mostly on the geochemical activities within the waste and their geotechnical stability. It may store a destination of the tailing: e.g. backfill, tailing dams or sea disposal.

[0096] Both models have data structures that can be updated in real-time as soon as new data is available from the mining machines 102-105 or processing plant 109, concerning spatial, geological, and environmental variation in the mine 100. They can also be queried in real-time by the machine control systems 206 in order to provide up-to-date information (e.g. geological data) for performing mining operations.

[0097] The modelling module 300 and / or control & analytics module 302 may utilize Bayesian (or other) approaches for updating geology, economy, and / or operational-related data in MIM. In this approach, initially based on the knowledge from a human expert, an approximate assumed statistical distribution can be determined for any parameter. Then, based on the available data from the mine site (i.e. from the sensors on the mining machines and any fixed in-situ sensors), those assumed statistical distributions are updated to match the observed data. Then, those updated statistical distributions are used to estimate different parameters of the database (when there are not any real measurements) plus the standard deviation of those estimated parameters. However, the type of Bayesian processes and assumptions of the different parameters is dependent on the parameter. This approach not only gives the opportunity to estimate a parameter but also the opportunity to determine the reliability of the estimations.

[0098] A challenge of this approach is for geology and mineral resource parameters, as the rest of the parameters, like economy and operational, are dependent on them. For this, initial geological and structural geological models from an exploration phase, explorational geophysical surveys, and data from drilled explorational boreholes, may be used to assume a general manifold which represents boundaries of ore unit(s) or any geological unit. In traditional approaches, there would be no further changes made to the geology and mineral content evaluations after this phase. However, the present system allows models on the processing system 101 to be updated continually based on sensor data acquired during the mining operations, as explained herein.

[0099] Different assumptions regarding the geometrical properties of the manifold (for example its major and minor stretching directions and its radius) may also be made based on geological knowledge and / or geophysical explorations. Then spherical gaussian processes, with the Bayesian approach, may be utilized to conditionalize the assumptions based on the available data. In this process, the statistical distributions of those assumed geometrical parameters for the spherical gaussian process are updated to adjust the manifold matching the observations made via drilled boreholes.

[0100] Alternatively, dependent on the size of data and complexity of the manifold surface, a Poisson surface construction method may be used, in which exploration data from boreholes and geophysics is used to identify points on the manifold and normal vector perpendicular to the manifold in those points; then, utilizing Poisson surface reconstruction method, the surface can be reconstructed. Later on, as new points on the surface become available, the reconstruction process can be continued.

[0101] After this phase, any new geological data relevant to the boundary of the assumed manifold becomes available, by the mining machines 102-105, and are used by the modelling module 300 and / or control & analytics module 302 to optimize the distributions of the geometrical parameters further to match also the recently observed data. This optimizing or reupdating of those statistical distributions may be quite fast. In addition, the standard deviations in each point of the manifold can provide understanding about the uncertainties of the ore boundaries. Similar processes as mentioned above can be applied to any geological boundaries.

[0102] Traditional mineral resource estimations are conducted by geostatistical modelling, without considering the geological data. However, there might be directional correlations in the geostatistical modelling, which is mostly based on the borehole data rather than geological knowledge. In the MIM, borehole data can be used along with all the relevant geological data (especially ore geological data), in a Bayesian approach, to make initial assumptions regarding the spatial variation of the ore quality which is conditioned to the measured values from the boreholes. Later on, during mining, as new data becomes available, the conditioned distributions may be optimized to match the new measurement data and then the ore content and standard deviation of the estimates are updated for unmined blocks. Other parameters in the MIM may be updated similarly, or using other approaches.

[0103] The initial phase, where the assumed vague initial statistical distribution is conditioned to the site investigation data or benchmark values, may happen in three major parallel levels for geology, economy and operational. Then, as new data become, available from the machines 102-105 or processing plant 109, the relevant part will update I optimize the conditioned statistical distributions.

[0104] More generally, any appropriate statistical modelling or machine-learning approaches may be used for updating the modelling module 300.

[0105] Mining Machines

[0106] As noted above, the sensor systems 304 of the machines 102-105 can contain different combinations of sensors which are utilized to monitor the performance, status and activities of the machine, as well as sensors for measuring and monitoring geological conditions around the machine. For machines that are mobile, the navigation and control module 307 can use the sensors 304 to move the machine safely around the mine 100. This may be done, for a machine operating underground, using VSLAM (Visual Simultaneous Localization And Mapping) with a stereo (3D) camera, as well as using IMU, vibration and magnetic sensors that are installed in the machine. Where the machine is operating above ground, GPS may be used in addition to these sensors.

[0107] The sensors 304 on the machine can include one or more 3D cameras for mapping rock surfaces and / or for grain size analysis (as well as for VSLAM). They can include a LiDAR sensor to monitor rock surface displacement. The machine 102-105 may communicate with one or more external geotechnical sensors for monitoring changes in the in-situ stresses and loading in rock support. These sensors may be installed in the rock mass and communicate with the machine 102-105 directly, or via the processing system 101 , e.g. through the wireless network, and their results can be used by the machine 102-105, in combination with the LiDAR, to assess the stability. Feeds, products, wastes and energy consumption of a processing plant 109 at the mine 100 will also be monitored by appropriate sensors.

[0108] These sensors are connected to data acquisition modules 306 of their local control systems 206 which collect digital sensor output and digitize any analog sensor output. Sensor data can be processed locally by the respective control system 206 and / or be uploaded to the processing system 101. Uploading can occur at a designated frequency in an appropriate format (e.g. as a time series, or CSV file, or movie).

[0109] Within each machine control system 206, a geological mapping & excavation design module 308 may be utilized to map rock mass in terms of geology and rock mechanics, in coordination with the MIM data structure on the processing system 101. Mapping & design tasks can be distributed and shared between the local modules 308 and the processing system 101 in any appropriate way. In some embodiments, these tasks are performed on the local modules 308, but using initial data received from the processing system 101 , e.g. data representing the geological background data, as well as size and orientation of the excavation. In some embodiments, the MIM processing system 101 will provide the orientation and size of the next excavation to be performed. The control & analytics module 302 executes an algorithm that selects an optimal pattern to mine the rock blocks, i.e. as a sequence or queue of blocks, that leads to a high economical turnover with low environmental footprint. In addition, the processing system 101 decides about the destination of the materials from each excavation step, which can be: a processing plant 109, a stockpile to be mixed with materials from neighbouring blocks, or a waste rock dump.

[0110] Design tasks that may be performed by the local modules 308 include: identifying the geotechnical instability mechanism of the rock excavation, designing rock support measures, implementing policies for monitoring and design of the blasting pattern for active stops and benches, controlling grain size of muck pile, guiding jumbo-drills in drilling boreholes for blasting or installing rock support, coordinating a borehole (e.g. azimuth and dip angles and length), etc.

[0111] The following steps may be taken, in some embodiments, to design an excavation project: i) From MIM get the orientation and size of the excavation for the next step (this is determined by mining in a direction which leads to maximum economical turnover while does not cause global collapse in mine. An optimization algorithm decides about the block series which are going to be mined and their destination which can be mill (processing plant), stockpile or waste dump. ii) Map the rock mass in surface and depth with the sensors on the machine. iii) Compare it with what has been provided by MIM; if it matches then continue. iv) Design blast pattern or excavation processes which leads to the desire excavation size and shape with least dilution to the orebody (no mixing from the host rock into ore) with most optimal grain size of muck (blasted pile) which leads to least energy consumption in the crushers (mineral comminution). This will be achieved by estimating in situ rock block size and shape, which is generated from previous mappings and current rock face in the stope. v) Geotechnical stability assessment with identifying the failure mechanism based on rock mass mapping on the surface of the stope in combination of the previous mapping and geological knowledge. vi) Guiding jumbo to drill blast holes and adjusting the drilling pattern according to the local data gathered from Measuring While Drilling (MWD) which marks the boundary of ore and host rock. In addition, in case instability in the borehole adjust the blast pattern. vii) After blasting rescan the surface and grain of the blasted rock and final design the rock support viii) Make policies for monitoring and rock fall risk assessment. ix) Excavate the blasted rock while monitoring the mass displacement in the roof. x) Guide the machines to install rock bolts, meshes and shotcrete (install rock support)

[0112] The safety assessment module 310 in each control system 206 combines standard observational methods in geotechnics with the instability mechanism predicted by the mapping & design processes 308, and knowledge in the MIM, to assess the rock fall hazard in the active zones of the underground or open pit mine 100. This module 310 may use a LiDAR scanner to monitor rock surfaces, in combination with in-situ stress sensors and instrumented rock support elements. It may use this data to find rock surfaces moving with velocity larger than a given threshold (e.g. 4 mm / day), to identify blocks where a failure mechanism is active. It may locate discontinuities and relevant failure mechanism observable at the rock surface, based on sensor data. For moving rock blocks, it can classify their level of risk, and raise an alarm if any dangerously-moving rock blocks are detected.

[0113] In some examples, the mining machine 105 will send any or all of the following data to the processing system 101 , at regular or irregular intervals while carrying out a mining operation: position data geological data grain-size data chemical analysis operational data.

[0114] Exactly what data is sent, and at what frequency, will depend in part on what type of machine it is and what sensors 304 it carries.

[0115] The position data may comprise world coordinates (Xw, Yw, Zw) and pose of the mining machine 105 (e.g. yaw, pitch and roll angles of the vehicle), with a frequency of 1 - 30 Hz dependent on the machine I activities. The real speed of the vehicles may typically be around 10 km / hr meaning there will be position data for approximately every 30mm movement of the vehicle. Coordinate and pose of the vehicles will be estimated based on fusing data from some or all of: a GPS sensor (in the surface mines), IMU, gyroscope and magnetometer as well as stereo-camera. The method of VSLAM may be used for navigation in underground.

[0116] The geological data may comprise: geological mapping data with stereo-camera: this data includes information regarding if the mapped geology from the rock face (mining stope) is matching with geomodel data downloaded from the MIM by the control system 206. If it is less than a given threshold, then the geological mapped data will not be transferred to the processing system 101 for inclusion in the MIM. The geological mapping data may include lists of points in the world coordinate system which are marking the boundaries between two lithological groups, points along a structural geological unit like faults, folds, etc. These points may be generated by analyzing the 3D movies and corresponding fused point clouds which are generated by the stereo camera. geomechanical mapping data with stereo-camera: discontinuities (different types of fractures which are visible at the excavation surfaces) will be reported. This data includes all the relevant geometrical data of the visible discontinuities at the rock surfaces. geological mapping data with GPR: ground penetrating radar (GPR) may generate 2D cross-section of the electrical resistivity at the different available surfaces of the rock mass in the vicinity of the excavation faces (mining stope). This method maps the geology in depth up until 10m into the rock mass. The geological model generated by GPR may be compared with the existing geological model data obtained from the Ml M, which has previously been downloaded into the machine 105. If the difference is larger than a given threshold, relevant update data, which includes several points in the world coordinate marking different lithological and structural geological boundaries, will be sent to the MIM through the communication system 107. geomechanical data with GPR used for geotechnical monitoring purposes: this comprises electrical resistivity of the rock mass not only dependent on the inherent properties of the rocks but also changes with stress state and fracturing of the rocks. The failure in rock mass is most of the time correlated with significantly decrease or increase of the electrical resistivity inside the rock mass. With GPR measurements the stability of the roofs, walls and floor of the rock masses can be estimated and associated with a risk level, which can be transmitted to the processing system 101 for inclusion in the MIM. rock-fall risk data: LiDAR installed on the machine or located stationary around the working area will map the rock surfaces and be used to generate a hazard map (in combination with the GPR data) that can be transmitted to the processing system 101 for inclusion in the MIM and / or used to signal an alarm in case of danger.

[0117] The grain-size data may comprise the grain size of crushed or blasted rocks. It may represent a grain size distribution of the blasted rocks.

[0118] The chemical analysis data may comprise information about the chemical composition of the muck (blasted and crushed rock) or in-situ rock (identified from rock surfaces). It may be determined by a multispectral or hyperspectral camera on the machine 105. This is not an exact chemical composition, but may classify the material, e.g. into one of two classes as being acceptable or not acceptable.

[0119] The operational data may comprise: machine loading data: for different machines this data is different; in general, it includes vibration data, RPM of the engine and / or electrical power consumption (if relevant), as well as I MU data showing tiling of the machine in three major axes. For drilling machines, it may additionally include Measuring While Drilling (MWD) data to assess stability of the boreholes and drilling speed of the machine. machine working cycle data: this may indicate the time it took the machine 105 to perform a specific cycle during the mining operation. For a drilling machine, this may be time for drilling one borehole; for an excavator or loader it may be the time taken to conduct one cycle of scooping; for a truck (e.g. hauler) it can be one cycle of hauling.

[0120] While performing a typical mining operation, a machine 102-105 (e.g. an excavator) may perform some or all of the following actions: conduct geological mapping estimate the pose of the machine start the excavator I jumbo drill I CM I loader retrieve data (e.g. geological block data) relevant for a new or next excavation step, stored in the MIM, from the processing system 101 check that any differences between the local mapping and data retrieved from the MIM are within a given tolerance, and send data to the processing system 101 for updating the MIM if they are not; this This applies mostly to geological and geotechnical data, but it may also include machine operating data such as drill-ability design rock blasting borehole arrangement (i.e. pattern) design excavation processes for excavator / CM I loader estimate the rock mass stability and design required rock support, and send failure mechanism data to the safety assessment module 310 send data to the processing system 101 for updating the MIM (e.g. with newly determined subsurface geology and geotechnical data) guide the rock support installing machine for the detail of the suggested support (if required) conduct excavation while excavating, check periodically if geological conditions mapped using the machine’s sensors differ from data in the MIM by more than an approved tolerance level, and if so send data to the processing system 101 for updating the MIM complete the excavation scan the grain size of the muck pile (in the case of at jumbo-drill and excavator), and estimate the chemical composition of the muck at the feeder of trucks by a multispectral or hyperspectral assaying sensor conduct geological mapping of the fresh rock surfaces, estimate the rock mass stability, design required rock support, and guide the rock support installing machine for the detail of the suggested support (if required) send acquired data to the processing system 101 for updating the models The data received by the machine from the Ml M can include some or all of: orientation, shape and size of excavation for the next round. The boundary of the excavation might follow the boundary of ore and host rock (this can be provided by a closed 3D mesh); geological boundaries of different lithological and structural geological features (this can be provided by cross-section in the format of image which is generated like every 25 cm along the excavation direction) previous relevant rock mechanical I geotechnical data for different lithological and structural geological unites required optimal grain size distribution for muck (if the blasting will be performed), relevant machine operational data from previous experiences in the same rock (if available) including drill-ability of different lithological groups, best required setting parameter for the excavating machine (for example setting parameter of percussion hammer of drilling machine), blast-ability of rock mass and ductility of intact rock for blasting; hyperspectral signature data to differentiate ore and gang destination of the excavated rock: processing plant, mixing with other materials in stockpile, or waste dump designated schedule for the machine to perform its own task. designated failure mechanism for rock mass in the roof and wall or in the benches in the area which is monitored by the machine

[0121] Processing Plant

[0122] The processing plant 109 has a monitoring system which measures the mass and analyses the chemical composition of the feed received at the plant 109, and of the tailings and product output by the plant 109. This analysis data is sent at intervals to the processing system 101 , which uses it to update the MIM and TIM. This information thus supplements the data received from the mining machines 102-105 and is also used for controlling the mining operations.

[0123] Chemical sensors at the processing plant 109 or processing unit (which may, in some examples, be considered a type of autonomous mining machine) may be used for a detailed characterizing of the feed, products and tailing / waste. This data may be used to update respective indicators of ore grade content, in the MIM, for blocks that have been mined (e.g. by updating mineralogical data or ore geology data), as well as providing mineral processing data for these blocks. That data may then be used in the processing system 101 to update the ore grade content of neighbouring blocks around each mined-out block. This may, in some examples, lead to change to the queue of blocks to be mined, and may influence the direction of the mining face.

[0124] Flow Chart

[0125] Figure 4 shows an example of an individual mining machine 106 and the MIM processing system 101 may interact while a mining operation (e.g. an excavation) is underway. While the mining machine 105 is performing 400 one or more mining operations, it receives 401 data from its sensors 304, including data about the subsurface geology. It analyses 402 this data in its mapping & design module 308. If determines 403 if there is a significant difference between the geology indicated by this data and the geology indicated by operational data that the machine 105 has previously received from the MIM through the processing system 101. If so, it sends data, e.g. about the subsurface geology of the mine 100, to the processing system 101.

[0126] While continuing to perform a sequence of mining operations, the machine 105 also receives 405, at intervals, updated mining-operation data. This can include the orientation, shape and size of the block for the next excavation or operation that machine has to perform. It can include the destination of the materials that are excavated (i.e. processing plant; mixing with other blocks in the stockpile; or waste dump).

[0127] The control & analytics module 302 is equipped with an optimization algorithm that determines an ordered list (i.e. queue I mining sequence) of the blocks to be mined, so as to achieve maximum economical turnover with minimum environmental footprint. This algorithm can update the list of the blocks as new data becomes available and as the MIM updates. Initially, such list of blocks can be generated in the processing system 101 by assigning a project that leads to production of a known amount of concentrates in a given time frame. More details on how an ordered list may be determined using factor graphs are provided below.

[0128] In addition, data in the MIM may enable different machines to operate in parallel with their maximum possible productivity while none them stands idle. The processing system 101 may run an optimization algorithm (e.g. in the control & analytics module 302) to reduce or eliminate idle or waiting times for the mining machines. Machine and mining operation allocation happens in the processing system 101 , which decides this according to the status of the mass and the progress level of different operations by different machines. The machine 105 can use this data in planning and executing the current operation (e.g. an excavation, or a drilling sequence, or moving material around the mine).

[0129] If the mining operation includes moving the particular mining machine 105, the updated miningoperation data may include current mapping data that the machine 105 required for safely navigating the mine. In particular, the geometry of the previous excavations is included in the MIM and can be supplied to enable the machine to navigate more accurately.

[0130] These processes can repeat many times during the course of a sequence of one or more mining operations (e.g. multiple times a second, or minute, or hour). In parallel, the processing system 101 receives 410 updated data, derived from the sensors, from the machine 105, and uses this to update 414 the MIM. The TIM may also be updated at this stage, depending on the type of machine 105 and data received. The modelling module 300 may update values in any of the block layers described above. The control & analytics module 302 updates 412 the statistical models at intervals (although not necessarily after every model update). Also, at intervals during the mining operation(s), updated mining-operation data is sent 413 to the machine 105 (and also to other machines as appropriate). This may be pushed by the processing system 101 , or may be sent in response to a request from the machine 105. These processes can repeat many times during the course of one or more operation(s) (e.g. multiple times a second, or minute, or hour).

[0131] In this way, autonomous mining machines 102-105 contribute geological data to the repository in an on-going manner, and can also access the latest data in order to provide accurate and efficient performance.

[0132] In this way, the processing system 101 can determine the direction to progress the mining activity from the current surface, and the size and shape of the excavation rounds in each block. It can also determine the destination of the materials which are excavated (process, stockpile and mix, or waste dump). The data received at the processing system 101 from the sensors of the mining machines 102-105 can be used to change the destination of a current block and of subsequent blocks, and even affect the direction of the whole mining progress.

[0133] The processing system 101 decides where each machine 102-105 should mine next, what the geometry of the next excavation should be, and where the excavated materials should end up. An optimization algorithm might be implemented by the processing system 101 to select an optimal next excavation step that leads to optimal economical mining with least environmental issues.

[0134] As noted above, however, other embodiments may divide the processing and planning tasks differently between the processing system 101 and the control systems 206 of the mining machines 102-105. In some embodiments, there may be no centralized static server, and the operations of the processing system 101 may instead be implemented by one or more of the autonomous mining machines 102-105, e.g. forming a distributed processing system. In some embodiments, one or more excavators may comprise mobile processing systems that collectively form part or all of the processing system 101. Such an excavator may store a complete copy of the MIM digital model which it may use for determining a mining block sequence. Other non-excavator mining machines may store fractional portions of the MIM, e.g. for use in navigating the mine, while receiving mining operation data from an excavator. Determining mining sequence

[0135] In some embodiments, the processing system 101 determines a mining sequence (an ordered list of blocks) using a novel approach based on a factor graph, which will now be described with reference to Figures 5 to 11.

[0136] The approaches described herein can allow an autonomous mining machine to operate while only a vague geological model is initially provided to it. The machines during mining will learn about geology and ore quality while updating the MIM model in real-time. However, economic parameters such as costs and revenue change over time and can influence mining activities. Additionally, the costs of mining and processing minerals are not solely associated with ore geology; they are also linked to the operating environment of the machines and changes in machine characteristics due to wear over time (e.g., road conditions, wear of crushers and mills, lifespan of machines, including the processing factory, etc.). Moreover, changes in the machines and their operating environment can affect the recovery rate of the processing plant, as it depends on the mineral comminution processes and the overall performance of the processing factory with specific types of feed.

[0137] Therefore, even though the system may have estimates for all these parameters with a known coefficient of variation using MIM data, the range of variation can still be large. In order to be able to utilize the experiences of machines in neighbouring blocks dealing with similar types of ore in similar environments, some embodiments use a graph reasoning system to reduce uncertainties in these estimates (machine performance, costs, and the performance of the mining process in terms of recovery rate), which are directly related to the machine performance itself.

[0138] Below a factored graph algorithm is introduced, followed by an algorithm to show how it may be implemented, e.g. by the control & analytics module 302, to generate a sequence of blocks to be mined which is updated in real-time with update of the geological data and the machines experience in the similar condition in the neighbouring blocks. The described method and system, equipped with this reasoning logic, can be used to conduct mining autonomously in a vaguely-described geological environment without human interference. The autonomous mining machines not only enhance geological knowledge as mining progresses but also transfer the experiences of the machines to other parts in terms of settings and performance. This can lead to an optimal estimation of the net present value (NPV) of the mine, as well as of environmental footprint and mining risks. These factors enable machines to make efficient autonomous decisions regarding the mining of block sequences.

[0139] Introducing Factor Graphs

[0140] Factor graphs (FG) are briefly introduced below by way of background, before showing how they may be utilized by the processing system 101 to identify the sequences of blocks to be mined by an autonomous mining machine. Bayesian networks are directed acyclic graphs where nodes represent random variables, and the edges of the graph represent the conditional dependencies among those variables. They are commonly used for inference problems. There are two types of nodes: random variable nodes (for which there may be prior knowledge with some uncertainties) and measurement nodes. The measurements are often substantially noisy and are conditionally related to the corresponding random variable. These relationships can be used to define conditional probability distributions that quantify the effect of the measurements on the estimation of the variable.

[0141] The development of factor networks was motivated by Bayesian networks, where a clear distinction is sought between state random variables (X) and measurements (Z) and / or where non-Gaussian likelihood functions are of interest. Factor graphs (FG) are bipartite graphs with two types of nodes: variable nodes and factor nodes. Edges are defined between factors and variables that are related to each other. Similar to a Bayesian network, an FG is used to specify a joint probability density of all inference processes as a product of factors.

[0142] Figure 5 shows a simple example factor graph, in which 11 and I2 are random variables for which there is prior knowledge with some uncertainties, and x1 , x2 and x3 are variables for which there is no prior knowledge. All unknowns, X, which includes xi, x2, X3, h and h , have nodes; however, unlike in a Bayesian network, measurements, Z, are not explicitly presented. In an FG, instead of using conditional probability densities between measurements (factors) and variables, an additional node is used to represent all the conditional posteriors p(X|Z). A variable node xi will connect to a factor node fj if xi is an argument of fj. In Figure 5, the small black nodes represent factors that connect only to the variables they are functions of. Each of these small black nodes represents a factor function (pt(Xf), where Xj is the group of variable nodes that are arguments of <pi.

[0143] In an FG the factorization of the global function can be defined as p(X) = Hi Pi (Xt).

[0144] The joint probability density distribution of the network can be expressed as:

[0145] The aim is to maximize the factor function — i.e. to optimize it. Any of several available mathematical optimization approaches may be used for this. Markov Chain Monte Carlo (MCMC) methods can also be used to simulate and maximize the posterior joint distribution function.

[0146] FGs for mine sequencing

[0147] The problem of finding the most optimal sequences of blocks for mining by one or more autonomous mining machines can be represented as a factor graph (FG) to maximize net present value (NPV), optionally subject to an acceptable risk level and / or while limiting the environmental footprint and / or risks of the decisions. Additionally, depending on the mining method and equipment, the system 101 may define criteria to leave a block in situ (unmined) if certain environmental footprint criteria are not satisfied.

[0148] In the base case, the NPV of a mine represents its profitability, considering the historical cash inflow and outflow from the mine, with respect to a certain original time where all cash inflows and outflows are discounted to the original time. After considering all the capital investment in the initial years of a mine, NPV can later be calculated by adding the discounted current value of the different blocks’ value as mining progresses. The economic value of a block is the revenue of the block (considering the recovery rates, commodity prices, and costs of selling) minus the costs of mining the block.

[0149] For each block, MIM geological data and mineral contents, which are spatially distributed variables, are recorded. These parameters are not dependent on the path taken by the machines to mine them, even though the time of mining will affect their discounted value. Mining cost variables related to the energy consumption of different machines, consumables of the machines, and the distance used for ore hauling or machine travel are path-dependent variables. This means that the sequencing of the blocks and the route used by the different autonomous machines will affect the mining costs and, as a result, the NPV of the mine. Additionally, the machines will experience wear in different dynamic parts, which slightly affects their performance. However, if two neighbouring blocks are similar in terms of geology, a mining machine should have more or less similar behaviour in interactions with them, which may enable the system 101 to estimate the performance of the machines in the neighbouring blocks.

[0150] Moreover, the recovery of the ore in the processing factory is associated with the performance of the comminution process, ore grade, and mineralization type. The two factors of ore grade and mineralization type may be recorded in the MIM. However, the comminution process is again pathdependent (depending on the life of the mine and even the maintenance history of the crushers and mills). Slight changes in the rock mass condition, rock blasting performance, and wear of the comminution equipment, including crushers and mills, might affect the energy utilized in the comminution process and the recovery rate of the ore in the processing plant. Therefore, the energy consumption in the comminution process and the recovery rate of the ore are also path-dependent variables. Hence, at least in some embodiments, the FG, which aims to find the optimal sequence of mining blocks, should effectively utilize the path-dependent factors to maximize NPV.

[0151] In summary, in the FG, each block of the mine can be represented as a variable node. Constraint rules imposed by the geometry of the mine, stability of the rock mass, environmental issues and risks, and the capacity of machines and processing plants can be imposed on the nodes. Additionally, a cut-off grade constraint may also be imposed. The NPV value per block is then presented as a global factor function, which will be maximized by the processing system 101 , considering these constraints. Note that the NPV per block is a distribution with uncertainties.

[0152] This method may offer scalability and flexibility compared to traditional mine design and scheduling methods. Additionally, it can allow for the explicit modelling of uncertainties in geology, revenue, costs, as well as environmental and geomechanical risks.

[0153] Factor-graph mine planning and scheduling may be implemented by the processing system 101 based on the following principles.

[0154] Belief propagation

[0155] The block variable of Xi (NPV at block i), has a prior value of N(p(i), o2(i)). Neighbouring blocks i and j are connected by an edge if the block j is in a direct neighbourhood of (e.g. abut I are in contact with) block i. Figure 6 shows an example neighbourhood of six blocks around block i. The difference in NPV estimates (or it may be aggregated to costs and revenues), Xij = N (pdiff(i,j) Odiff2(i,j)), as represented in Figure 7. The FG can be used by the system 101 to find most probable estimates of block NPV. The standard deviation Xi in block i may be reduced using knowledge I beliefs from neighbouring blocks.

[0156] Geometric constraints

[0157] For a block i, a neighbourhood zone in three dimensions can be defined having block i as an anchoring block. This is illustrated in Figure 8, which shows two different types of priorities in block mining, where the unlabelled blocks should be mined before being able to mine block i. The two examples in Figure 8 are for i) open pit when slope stable angle is 45 degrees and ii) underground conditions, for example a sublevel stoping.

[0158] Within the neighbourhood zone, geometrical constraints can be imposed by the system 101 in the optimization, such as: blocks at the higher elevations should be mined first (one level above); and / or the excavation order should follow a recommended slope stability angle; and / or for underground mines, similar geometric constraints can be defined.

[0159] For simplicity these geometric constraints on a neighbourhood might, for example, be shaped as letter “T”s, Ts or“L”s.

[0160] For an anchor block of i, and any block in a masked zone or neighbourhood presented by j, a precedence factor can be defined as: z > fl if Xj stasifies the given critera around X, geom i> j j ( Q otherwise Loop closure effect

[0161] Blocks that are close to each other in terms of geographic location, geology, geomechanics, and ore content should have similar interactions with machines, resulting in similar yield and cost effects. Therefore, a method of loop closure may be performed in some embodiments. This may comprise calculating the distance between blocks using a distance function based on variables mentioned above. Blocks with distances lower than a given threshold can be reported pairwise as in a loop. In these locations, an edge in the graph can be created to help smooth the final costs and revenue calculated from those blocks, ensuring smoothness in block valuation across the mine.

[0162] NPV

[0163] In some embodiments, the NPV value for block i can be calculated as follows: where:

[0164] Ri: revenue from block i

[0165] Ci: extraction and processing costs of block i d: discount rate (time value of money) t: time duration from assumed origin of time for discounting at which the block i is mined, processed and sold

[0166] Xj : NPV values of the rest of the blocks that are located above the block i and that will be mined before block i (this is governed by the geometrical constraints).

[0167] Time of mining

[0168] Since mining and processing capacities are limited, the Net Present Value (NPV) calculation for each block may account for production scheduling and operational constraints. Assuming a reasonable estimate of the mine's annual mining and processing capacity is known, along with its standard deviation, the time component in the NPV formula for each block can be determined through the following steps:

[0169] Identify Predecessor Blocks: Determine all the blocks that must be mined before the block of interest, based on slope and geometric constraints. These are typically the blocks located above or otherwise restricting access to the target block.

[0170] Organize by Mining Sequence and Capacity: Assuming that mining progresses in an orderly manner from higher to lower elevations, group the blocks into annual production parcels based on the available mining and processing capacity.

[0171] Estimate Mining Time (t): Using the cumulative tonnage or volume of the predecessor blocks, estimate the number of production cycles (e.g., years) required to reach the target block. This gives a rough estimate of the time t at which the block will be mined. Assign and Report Time: Use the calculated t as the time input for discounting cash flows in the NPV calculation for the block.

[0172] Factor graph optimization

[0173] In the optimization process, the aim is to maximize the factor functions, to determine: or function generated according to the network of the factor graph, <p( ) =

[0174] It should be noted that, for a node with variable of Xi, the factor value will have the form: whereas for an edge connecting two nodes i and j, it will be:

[0175] The processing system 101 may solve this equation (by maximizing <pNP1 / ( )) to determine most probable values of NPV for each block in the model while considering all the estimates and propagating knowledge from neighbouring blocks.

[0176] It should be understood that optimizing (e.g. maximizing) a function or a graph, as described anywhere herein, may additionally cover a process that determines an approximation of a true optimum (e.g. maximum), e.g. by using an iterative approximation process that stops after a finite number of iterations. Similarly, a most-probable value may, at least in some embodiments, be an estimated or approximated value.

[0177] Cut-off grade adding and optimization

[0178] In the above formulation, an additional constraint may be added to cover the allowed cut-off grade for the given economic conditions at the time of operation. This method is flexible and can adapt to any type of cut-off grade optimization.

[0179] Optimization methods of FG

[0180] Since the number of blocks in a mine can vary significantly, any one of a number of different optimization methods may be used for the FG depending on which is most suitable for each case. The available mathematical methods implemented by embodiments of the processing system 101 may include Nonlinear Least Squares Optimization, Gaussian Factor Graphs, QR Factorization, and the Levenberg-Marquardt Algorithm. It is also possible to implement a combination of these methods for a specific problem. In some embodiments, the method consists of the following main steps:

[0181] 1. Setting Up Geometrical Constraints for Mining: These constraints serve as the regulations required to be followed during mining. They are dictated by:

[0182] Stability of the rock mass

[0183] Minimum required space for the mining machines to operate

[0184] Number of available autonomous mining machines working in the same region of the mine while cooperating with each other

[0185] 2. Generating the Factor Graph: Generate a factor graph according to the data stored in the MIM and the geometrical constraints (including the cut-off grade constraint if required). Each block will be treated as least once as an anchor block, serving as a basis to apply geometrical dependencies I constraints.

[0186] 3. Updating the Factor Graph: If several blocks are mined out, remove them from the factor graph and instead, add the prior NPV for all the border blocks at the boundary of the excavations.

[0187] 4. Adding Loop Closure Edges: Add loop closure edges to the graph to ensure promote consistency and smooth transition in NPV estimation across neighbouring blocks.

[0188] 5. Optimizing the Graph: Optimize the graph which computes:

[0189] NPV for each individual block

[0190] Standard deviation for the estimated NPV (this can be also extended for estimated costs, revenue and any operational parameters of the mine)

[0191] The groups of the blocks which they must be mined before mining the current block and considering the production capacity of the mine and processing plant how the NPV value developed during that phase until the current block is reached.

[0192] IRR factor for each individual block (see next section for details of IRR)

[0193] Then conduct block queuing algorithm based on FG outputs. This algorithm generates initial block sequences to be mined based on their NPV and how NPV developed during mining, producing:

[0194] BlockQueue = {blockj, blockj, ...}

[0195] 6. Calculating Risk of Mining:

[0196] Calculate the risk of mining for the blocks in BlockQueue list, focusing only on the given number of the blocks to be mined earliest and find high risk blocks, flag them as ImmediateHighRiskBlocks = {blockj, block_k, ...}

[0197] If there is alternative block instead of the ImmediateHighRiskBlocks are available to avoid high risk of mining and name the updated I final block lists as Blocksequence.

[0198] 7. Update Block Queue in Real-time:

[0199] Repeat the process as new data becomes available from ongoing excavation. To reduce computational overhead:

[0200] Perform local updates (i.e. , near the current excavation front) after each block is mined. Perform global updates for the entire mine on a regular schedule (e.g., every 24 hours). Block Queuing Algorithm

[0201] The output of the FG optimization is the NPV and its standard deviation for each block. The NPV calculated per block represents the total value obtained from mining of a specific block and all the blocks that must be mined before it according the geometrical constraints. In the context of open pit mining, this corresponds to a pit where the target block located at the apex of a cone shaped excavation. This is illustrated in Figures 9, 10 & 11. The evolution of NPV for a such block group can be approximate by a quadratic curve or a similar growth function, as shown in Figures 9, 10 & 11.

[0202] To make decisions about priority of blocks for mining, another parameter is defined: Incremental Rate of Return (IRR) which is the slope of a secant line fitted to the initial portion of the NPV curve. IRR reflects the rates of positive cash flow that might be expected from those blocks. A higher IRR means that those blocks generate faster positive cash flow. For example, if two blocks have similar NPV but the one with larger IRR is preferred.

[0203] Since NPVs are estimated, a decision threshold is assigned: if the differences in NPVs between two blocks is smaller than a set tolerance, then they are considered equal for decision making processes.

[0204] To queue blocks in the order that they should be mined, the processing system 101 may use two algorithms — global and local — which are similar.

[0205] 1 . Global block group selection:

[0206] After FG optimization, the processing 101 may act as follows:

[0207] Identify the block with the maximum NPV and retrieve all the blocks above it that must be mined to access it, this for a mining group.

[0208] Calculate the IRR for this group.

[0209] Search for a second block that: o has next highest NPV, o is located above the previously selected block group (i.e. located in the shallower depth), o is not part of the previously selected mining group o has an IRR greater than IRR of the first group.

[0210] Repeat this process interactively, adding mining groups that meet the above-mentioned criteria until no more blocks satisfy all conditions.

[0211] This results in a list of mining groups: BlockMiningGroups = { (NPVi, IRRi, Groupi), (NPV2, I RR2, Group2), ... } Mining priorities may be assigned to these groups based on IRR. A higher IRR means the group is scheduled earlier. This prioritization tends to prefer smaller, shallower groups with faster returns before transitioning to larger, deeper pits with higher total NPV. The goal is to maximize the global NPV curve by selecting a sequence of mining groups that collectively yield the highest return in the shortest time.

[0212] 2. Within-group block scheduling:

[0213] Inside each mining group, a similar strategy may be employed:

[0214] Starting from the bottom of the group, the processing system 101 may identify sub-groups of blocks that can be mined together, utilizing similar algorithm as used for identifying global block groups.

[0215] Each sub-group’s NPV and IRR are calculated.

[0216] From the current surface (or machine location), select the accessible sub-group with the highest IRR.

[0217] Within that sub-group, blocks are prioritized based on individual economic value (Revenue - Cost).

[0218] If multiple blocks have similar values, proximity to the mining machine is used as a secondary ranking criterion.

[0219] Some other types of constraints in the block sequencing might be implemented in addition to those, including average feed quality control to processing plant or blending in the stockpiles, which can slightly alter the block order. However, the decisions will be made holistically to match demands from different part of the mine according to the data in the MIM. Those constraints will only change the order of the available blocks to only follow the block value to have more constrain in selection.

[0220] It will be appreciated by those skilled in the art that the present disclosure has been illustrated by describing one or more specific embodiments thereof, but is not limited to these embodiments; many variations and modifications are possible, within the scope of the accompanying claims.

Claims

CLAIMS1 . A method for controlling mining operations at a mine, the method comprising: accessing a digital model comprising information about a mine, the mine information comprising mine information for each of a plurality of three-dimensional blocks; and processing the mine information to determine a mining sequence for sequentially mining the plurality of blocks by a set of one or more mining machines, wherein processing the mine information to determine the mining sequence comprises: representing each block of the plurality of blocks as a respective variable node of a factor graph, each variable node being associated with a variable value of the respective block, wherein, for at least a subset of the plurality of blocks, the variable value for each block is dependent upon the respective variable values of one or more blocks in a respective neighbourhood of the block and is further dependent upon one or more geometrical constraint rules, wherein the factor graph additionally comprises a set of factor nodes each having a factor function that is a function of each variable node to which the factor node is connected within the factor graph; applying an optimization process, over the variable nodes, to a global factor function that combines outputs of the factor functions of the factor nodes so as to determine a set of most- probable values for the plurality of blocks; and using the set of most-probable values to determine the mining sequence in dependence upon the respective most-probable value of each of the plurality of blocks.

2. A method as claimed in claim 1 , wherein the factor graph comprises a factor node between each pair of variable nodes whose respective blocks abut each other in the mine.

3. A method as claimed in claim 1 or 2, wherein the respective neighbourhood of each block comprises one or more blocks that abut the block.

4. A method as claimed in any preceding claim, wherein the one or more geometrical constraint rules includes a rule that, within the respective neighbourhood, a block at a first elevation should be mined before a block at a second, lower elevation.

5. A method as claimed in any preceding claim, wherein the one or more geometrical constraint rules includes a rule requiring the mining sequence to comply with a predetermined slope stability angle.

6. A method as claimed in any preceding claim, further comprising determining the variable value for a block by evaluating a function that sums the variable values of every block in the respective neighbourhood that satisfies the one or more geometrical constraint rules.

7. A method as claimed in any preceding claim, further comprising calculating a distance between blocks of the plurality of blocks using a distance metric that depends at least upon geographic location and / or geological similarity, and connecting pairs of blocks that separated by less than a threshold distance so as to form a respective loop in the factor graph.

8. A method as claimed in any preceding claim, wherein the value of each block corresponds to an economic value of the block and wherein the determined mining sequence maximizes an economic value of the mine.

9. A method as claimed in any preceding claim, further comprising updating the factor graph at intervals while mining operations are underway.

10. A method as claimed in any preceding claim, wherein the digital model models at least a subsurface geology of the mine, the method further comprising, while an autonomous mining machine is performing one or more mining operations: at each of a first succession of times, receiving over a communication system, from a machine control system configured to control the autonomous mining machine in performing the mining operation(s), respective geological data about the subsurface geology of the mine, determined using one or more sensors of the autonomous mining machine; using the geological data to update the digital model; and at each of a second succession of times, using the digital model to determine respective mining-operation data for the machine control system to use in controlling the autonomous mining machine for performing the mining operation(s) and sending the respective mining-operation data to the machine control system over the communication system.

11. A method as claimed in any preceding claim, wherein the digital model stores, for some or all of the plurality of blocks, one or more of: geological position data, structural geology data, economic data, or mineralogical data.

12. A method as claimed in any preceding claim, wherein the digital model stores, for some or all of the plurality of blocks, a respective status for the block that indicates whether or not the block has been mined out, or that indicates whether or not the block is currently undergoing a mining operation.

13. A method as claimed in any preceding claim, further comprising communicating to an autonomous mining machine a next block to be mined from the mining sequence.

14. A centralized or distributed system for controlling mining operations comprising one or more processors and a memory and configured to perform a method according to any one of the preceding claims.

15. Computer software comprising instructions that, when executed by one or more processors of a centralized or distributed processing system, cause the processing system to perform a method according to any one claims 1 to 13.

Citation Information

Patent Citations

  • A method and system for intelligently compiling mining schedule for open-pit sand and gravel mines

    CN118657263B

  • Method and system for exploiting information from heterogeneous sources

    US20090240481A1

  • Mixed reality method and system for precision mining

    WO2019204900A1