Autonomously optimising a geometric design for a mechanical part
The AI-driven optimization of mechanical part designs addresses resource and time constraints in industrial design, achieving globally optimal solutions for interacting with fluids and particulates, reducing costs and enhancing accessibility.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-23
- Publication Date
- 2026-04-02
AI Technical Summary
Current industrial methods for designing mechanical parts that interact with fluids and particulate matter are resource-intensive, time-consuming, and often result in suboptimal designs due to reliance on empirical methods and local optima, hindering innovation and accessibility for smaller organizations.
A computer-implemented method using AI to autonomously optimize the geometric design of mechanical parts by iteratively generating, simulating, and analyzing CAD models, employing a four-dimensional computational physics simulation to seek global optima, and calibrating fluid and particulate matter properties for accurate simulation.
This approach reduces design time and cost, mitigates risks of suboptimal solutions, and democratizes access to advanced design capabilities, enabling globally optimal designs for mechanical parts interacting with fluids and particulates.
Smart Images

Figure EP2025077116_02042026_PF_FP_ABST
Abstract
Description
Docket No. P361697GBAUTONOMOUSLY OPTIMISING A GEOMETRIC DESIGN FOR A MECHANICAL PART
[0001] TECHNICAL FIELD
[0002] The present disclosure relates to the disclosure provides computing apparatus, computer-implemented methods and software for autonomously generating a geometric design for a mechanical part optimised to perform an intended function by interacting with a fluid and / or particulate matter in an operating environment. The present disclosure also provides instructions for manufacturing mechanical parts and moulds therefor optimised by the methods disclosed therein, as well as the manufactured parts and moulds of the mechanical parts.BACKGROUND
[0003] Industrial geometric design plays a pivotal role in the efficiency of various processes within the manufacturing and process industries, and in the efficiency of machines used in a wide variety of industries such as energy and transport. This relates to the geometric configurations of mechanical parts that are to perform an intended function by interacting with a fluid and / or particulate matter in an operating environment. For example, this can relate to mechanical parts that are to perform an intended function for processing a fluid and / or particulate matter in a processing environment. This includes, but is not limited to mechanical parts such as impellers, attritors, mascerators, paddles, vessels, packed beds, etc, for use in mixers, grinders, coaters, purifiers, bio-reactors, etc, for processing fluids (such as liquids), particulates or pastes (which may be a mix of particulate matter into a liquid) in the food, pharmaceutical, chemical, mineral or bio-fuel industries. In other examples, this can relate to mechanical parts that are to perform an intended function in an operating environment by interacting with a fluid and / or particulate matter to perform a useful function. This includes, but is not limited to, turbine blades and propellers. Here the fluid and / or particulate matter is not ‘processed’ per se to transform it or use it somehow as is the objective in the previous examples, but rather the mechanical part interacts with it the fluid and / or particulate matter to perform a useful function such as driving wind turbines or exerting thrust on a fluid such as air or water.
[0004] Taking an example from the manufacturing and process industries, a Z-mixer comprises two counter-rotating blades in a chamber to efficiently mix together particles or pastes including pharmaceuticals, pigments, doughs and ceramics. The geometrical design and operational parameters of the Z-blades, in the context of a given processing materialDocket No. P361697GB and environment, can have a significant impact on the efficiency and effectiveness of the process (e.g. for a Z-mixer, the rate at which mixing of different particles happens and / or the power required therefor). However, arriving at an efficient and effective design is not straightforward.
[0005] Traditionally, this domain has relied on empirical methods, guided by human experts with extensive experience. Consequently, the evolution of the geometric designs of mechanical parts has usually been incremental, often tethered to established precedents, resulting in prolonged development cycles from conceptualization to prototyping. The iterative design optimization process is both time-consuming and resource-intensive, with a single iteration possibly extending over years, encompassing computer-aided design (CAD) drawings, prototype manufacturing, and experimental validation.
[0006] The significance of optimising the geometric designs of mechanical parts for industrial processing cannot be overstated, given that the process industry accounts for a substantial portion of the heating energy demand in some countries (e.g., 11% in the UK). Improvements in design can potentially yield substantial economic benefits and environmental advantages through reduced energy consumption and carbon emissions. Nonetheless, there are considerable challenges in this regard, including: accessing sufficient expertise and relying often on intuition and skill to iterate designs, followed by manufacturing, and experimental campaigns. This results in a slow pace of design iterations, and gives optimization efforts a high-risk nature with no guaranteed improvement. Additionally, the optimization of geometric designs is compounded by mathematical complexities, making conventional modeling approaches unsuitable. Designs often get trapped in local minima, unable to reach a global optimum, which underscores the necessity for a paradigm shift in design methodology.
[0007] Current industry practices predominantly revolve around adhering to dated designs, minor adjustments by specialized teams, or comprehensive in-house design and manufacturing efforts that can span years. These approaches are not only resource-intense but also stifle innovation and accessibility for smaller organizations. The present invention aims to address these substantial challenges by proposing an optimized design and development framework that reduces the cost and time associated with producing geometric designs, mitigates the risk of suboptimal solutions, and democratizes access to cutting-edge design capabilities for entities across the size spectrum.Docket No. P361697GB
[0008] There exists a clear unmet need for cost-effective prototyping, rapid design iteration capabilities, and methodologies capable of transcending local optimality to uncover globally optimal designs.
[0009] It is in this context the present disclosure has been devised.BRIEF SUMMARY
[0010] In accordance with the present disclosure, the computer implemented methods, apparatuses and software disclosed herein provide a solution that uses Al to autonomously optimise the design of a mechanical parts that are to perform an intended function by interacting with a fluid and / or particulate matter in an operating environment given only a CAD model of the mechanical part, the operating environment and relevant properties of the material the mechanical part processes. The method proceeds iteratively to design and re-design the mechanical part, at each stage seeking to improving its function toward a goal (e.g. “minimise power draw” and / or “maximise throughput”) defined by the user. The intended function of the mechanical part may be for processing a fluid and / or particulate matter in a processing environment, for example to bring about a transformation of the fluid and / or particulate matter. Alternately, or in addition, the intended function of the mechanical part may not be processing the fluid and / or particulate matter and instead it may relate to using the interaction with the fluid and / or particulate matter to bring about an effect outside the fluid and / or particulate matter itself, such as to efficiently provide a linear thrust or to translate fluid motion into a torque.
[0011] Thus, viewed from one aspect, the present invention provides a computer- implemented method of autonomously generating a geometric design for a mechanical part optimised to perform an intended function by interacting with a fluid and / or particulate matter in a processing environment. The method may include, for a set of free parameters from which a computer aided design, CAD, kernel program may be configured to generate a possible model for the mechanical part based on a value selected for each parameter, each free parameter having a range of possible values and representing a predictably controllable aspect of the possible geometry of the mechanical part to be manufactured, the free parameters together defining a parameter space to be searched, initialising a search distribution across the parameter space. The method also includes, for each successive epoch, iteratively: generating a plurality of sets of candidate parameter values based on sampling the current search distribution across the parameter space; generating a plurality of CAD models for the mechanical part using the CAD kernel program, each of the plurality of CAD models being based on one of the plurality of generated sets of candidate parameterDocket No. P361697GB values in the parameter space, the generated plurality of CAD models having a diversity of candidate geometries for the mechanical part; generating a simulation of the performance of the modelled mechanical part for each model of the plurality of generated CAD models for that epoch using a four dimensional computational physics simulation program, the physics simulation program being configured to simulate the performance of the modelled mechanical part in performing its intended function interacting with a model of the fluid and / or particulate matter in a model of the processing environment in intended use; analysing the simulation of each CAD model for the mechanical part over time to generate a metric selected to quantitatively characterise the performance of the CAD model against one or more objective criteria to be optimised for; selecting a subset of the generated CAD models for that epoch having a quantitatively better performance against the objective criteria based on the generated metric for each model; and, based on the selected subset of generated CAD models, updating the search distribution across the parameter space to reflect the distribution of the parameter values corresponding to the selected subset of generated CAD models in the parameter space; and proceeding to the next epoch to generate, simulate and analyse “evolved” CAD models having candidate geometries with features based on combinations of free parameters synthesised across the updated search distribution.
[0012] In embodiments, the computer-implemented method may also include stopping the iteration to the next epoch if the uncertainty in the search distribution falls below a threshold value, optionally a threshold standard deviation for the search distribution.
[0013] In embodiments, the computer-implemented method may also include selecting a final optimised CAD model for the mechanical part based on the search distribution in the final epoch.
[0014] In embodiments, the computer-implemented method may also include causing or generating data or instructions for causing at least one part or one mould to be manufactured based on a final optimised CAD model, the data or instructions optionally being instructions for controlling a additive manufacturing machine such as a 3D printer or for operating one or more production machines to form the part or the mould.
[0015] In embodiments, the computer-implemented method may also include manufacturing at least one part or one mould based on a final optimised CAD model.
[0016] In embodiments, generating a simulation of the performance of the modelled mechanical part for each model of the plurality of generated CAD models may include usingDocket No. P361697GB the four dimensional computational physics simulation program to generate the simulations for each model in parallel.
[0017] In embodiments, the computer-implemented method may also include calibrating the properties of the fluid and / or particulate matter modelled in the four dimensional computational physics simulation program based on empirical measurements such that the simulation accurately recreates the performance of the modelled mechanical part in performing its intended function in interacting with a model of the fluid and / or particulate matter in a model of the processing environment in intended use.
[0018] In embodiments, the computer-implemented method may also include building, in the four dimensional computational physics simulation program, as a digital model of a physical processing machine for use in model calibration, wherein the physical processing machine is the same or similar to that which is to be optimised, or is for characterising a representative fluid and / or particulate media, a model of the processing environment of the physical machine including a model of the representative fluid and / or particulate media for interaction with the part in the processing environment; inputting values for properties of the modelled fluid and / or particulate matter in the computational physics simulation program based on measurement of the modelled fluid and / or particulate matter or on reference data; receiving data representative of the experimental characterisation of the behaviour of the fluid and / or particulate matter during representative operation conditions of the physical processing machine; and calibrating the properties of the modelled fluid and / or particulate matter in the computational physics simulation program by iteratively: generating a simulation of the performance of the digital model of the physical processing machine for the representative operating conditions; comparing one or more metrics of the behaviour of the modelled fluid and / or particulate matter in the digital model derived from the simulation with the same metrics derived from the data representative of the experimental characterisation of the behaviour of the fluid and / or particulate matter during operation of the physical processing machine; and adjusting the properties of the modelled fluid and / or particulate matter in the computational physics simulation program; until the metrics of the behaviour of the modelled fluid and / or particulate matter derived from the simulation match the metrics derived from the experiment with an error below a threshold value, such that the physics simulation program is calibrated to produce a simulated behaviour that recreates the experimental behaviour of the physical processing machine for representative operation conditions. In embodiments, the physical processing machine may optionally include a mechanical part having an example design, and the model of the physical machine may also include a model of the mechanical part.Docket No. P361697GB
[0019] In embodiments, the computer-implemented method may also include validating the calibrated properties of the modelled fluid and / or particulate matter in the computational physics simulation program by: receiving data representative of the experimental characterisation of the behaviour of the fluid and / or particulate matter during different representative operation conditions of the physical processing machine; generating a simulation of the performance of the digital model of the physical processing machine for the different representative operating conditions; comparing one or more metrics of the behaviour of the modelled fluid and / or particulate matter in the digital model derived from the simulation with the same metrics derived from the data representative of the experimental characterisation of the behaviour of the fluid and / or particulate matter during operation of the physical processing machine; and validating that the metrics of the behaviour of the modelled fluid and / or particulate matter derived from the simulation match the metrics derived from the experiment with an error below a threshold validation value.
[0020] In embodiments, the four dimensional computational physics simulation program simulating the performance of the modelled mechanical part in performing its intended function interacting with a model of the fluid and / or particulate matter in a model of the processing environment in intended use may use one or more methods selected from a group including but not limited to: a Discrete Element Method, Computational Fluid Dynamics Method, Finite Element Method, Monte Carlo Method, particle-in-cell method, numerical modelling method, and multiphase particle-in-cell method.
[0021] In embodiments, the metric selected to quantitatively characterise the performance of the CAD model against one or more objective criteria to be optimised for may be nonlinear, noisy, discontinuous, non-convex across the parameter space, and wherein the evolving of the CAD models from one epoch to the next causes the optimisation to escape local optima and reliably seek a global optimum.
[0022] In embodiments, the mechanical part may be driven or caused or allowed to move to perform its intended function by interacting with a fluid and / or particulate matter in an operating environment.
[0023] In embodiments, the generated CAD models may be for optimising the geometric design of plural mechanical parts that work together to perform an intended function for processing the fluid and / or particulate matter in the processing environment.
[0024] In embodiments, the computer-implemented method may also include, for each of the plurality of generated CAD models for the mechanical part, validating that each model satisfies operating constraints using the physics simulation program being to simulate theDocket No. P361697GB range of motion of the modelled mechanical part in performing its intended function in a model of the processing environment in intended use, and discarding CAD models that may be not operationally viable.
[0025] In embodiments, the computer aided design, CAD, kernel program may be configured to generate a possible model for the mechanical part using the values of at least a subset of the free parameters to control one or more of the number, position, orientation, size, shape and scale or as a direct input value of one or more fixed or control points, curvature values, surfaces, volumes, features.
[0026] In embodiments, the computer aided design, CAD, kernel program may be configured to generate a possible model for the mechanical part limited by one or more design constraints including a manufacturability of the part, the mounting locations for the part, the size and bounds for the part, and limitations arising from the material properties for the part.
[0027] In embodiments, the computer-implemented method may also include meshing the CAD models for the mechanical part for use in the simulation by the four dimensional computational physics simulation program.
[0028] In embodiments, the iterative method may be scripted to loop through successive epochs to generate CAD models, simulate their operation, analyse their performance and adjust the search distribution to evolve the designs of the CAD models for the next epoch.
[0029] In embodiments, the metric may be selected to quantitatively characterise the performance of the CAD model against one or more objective criteria selected from the group including but not limited to: a mixing metric, a grinding metric, a size reduction metric, a coating metric, a purification metric, a reaction metric.
[0030] In embodiments, the metric may be selected to quantitatively characterise the performance of the CAD model against multiple objective criteria to be optimised for.
[0031] In embodiments, the search distribution may be selected to have a multivariate Gaussian distribution along each of the parameters in the parameter space, and wherein updating the search distribution across the parameter space to reflect the distribution of the parameter values corresponding to the selected subset of generated CAD models includes updating the mean and covariance values of the multivariate Gaussian distribution such that the updated search distribution may be representative of the selected subset of generated CAD models.
[0032] In embodiments, the parameter space further includes, in addition to the set of free geometric parameter values, one or more free operational parameters for the operation of theDocket No. P361697GB mechanical part in the processing environment or for operation of the processing machine or processing environment more generally, the method further including, in each epoch additionally generating candidate operational parameter values based on sampling the current search distribution across the parameter space, generating a simulation of the performance of the modelled mechanical part for each model of the plurality of generated CAD models for the corresponding candidate operational parameter values for that epoch using a four dimensional computational physics simulation program, such that the iterative method further optimises the parameters for the operation of the mechanical part, as well as the geometry of the mechanical part.
[0033] Viewed from another aspect, the present disclosure provides a non-transitory computer-readable storage medium including instructions that, when executed by one or more processors of a computer, configure the computer to perform the method may also include.
[0034] Viewed from yet another aspect, the present disclosure provides a computing apparatus for autonomously generating a geometric design for one or more mechanical parts optimised to perform an intended function by interacting with a fluid and / or particulate matter in an operating environment, the computing apparatus may include one or more processors. The computing apparatus also includes a memory storing instructions that, when executed by the processor, configure the computing apparatus to implement a computer aided design, CAD, kernel program configured to generate a possible model for the mechanical part based on a value selected for each parameter of a set of free parameters, each free parameter having a range of possible values and representing a predictably controllable aspect of the possible geometry of the mechanical part to be manufactured, the free parameters together defining a parameter space to be searched; and implement a four dimensional computational physics simulation program configured to simulate the performance of the modelled mechanical part in performing its objective function interacting with a model of the fluid and / or particulate matter in a model of the processing environment in intended use. The instructions further configure the computing apparatus to: for the set of free parameters, initialise a search distribution across a parameter space; and, for each successive epoch, iteratively: generate a plurality of sets of candidate parameter values based on sampling the current search distribution across the parameter space; generate a plurality of CAD models for the mechanical part using the CAD kernel program, each of the plurality of CAD models being based on one of the plurality of generated sets of candidate parameter values in the parameter space, the generated plurality of CAD models having a diversity of candidate geometries for the mechanical part; generate a simulation ofDocket No. P361697GB the performance of the modelled mechanical part for each model of the plurality of generated CAD models for that epoch using the four dimensional computational physics simulation program; analyse the simulation of each CAD model for the mechanical part over time to generate a metric selected to quantitatively characterise the performance of the CAD model against one or more objective criteria to be optimised for; select a subset of the generated CAD models for that epoch having a qualitatively better performance against the objective criteria based on the generated metric for each model; based on the selected subset of generated CAD models, update the search distribution across the parameter space to reflect the distribution of the parameter values corresponding to the selected subset of generated CAD models in the parameter space; and proceed to the next epoch to generate, simulate and analyse evolved CAD models having candidate geometries with features based on combinations of free parameters synthesised across the updated search distribution.
[0035] It will be appreciated from the foregoing disclosure and the following detailed description of the examples that certain features and implementations described as being optional in relation to any given aspect of the disclosure set out above should be understood by the reader as being disclosed also in combination with the other aspects of the present disclosure, where applicable. Similarly, it will be appreciated that any attendant advantages described in relation to any given aspect of the disclosure set out above should be understood by the reader as being disclosed as advantages of the other aspects of the present disclosure, where applicable. That is, the description of optional features and advantages in relation to a specific aspect of the disclosure above is not limiting, and it should be understood that the disclosures of these optional features and advantages are intended to relate to all aspects of the disclosure in combination, where such combination is applicable.BRIEF DESCRIPTION OF THE DRAWINGS
[0036] Certain examples of the present disclosure will now be described, with reference to the accompanying drawings, in which:
[0037] FIG. 1 shows a schematic illustration of an example computing apparatus 100 for autonomously generating a geometric design for one or more mechanical parts optimised to perform an intended function in accordance with aspects of the present disclosure;
[0038] FIG. 2 shows a photograph of an industrial Z-mixer including two Z-blades rotating in a processing environment of a contoured chamber for processing fluid and / or particulate matter;Docket No. P361697GB
[0039] FIG. 3 A illustrates example initial steps for creating a CAD model for a “halfhead” of a the Z-mixer blade in the CAD kernel program in accordance with aspects of the present disclosure;
[0040] FIG. 3B illustrates the effects of varying the individual degrees of freedom of the geometric parametrisation of a single Z-mixer “half-head” as shown in FIG. 3 A in the CAD kernel program;
[0041] FIG. 3C illustrates how the CAD kernel program builds a CAD model of a Z-mixer blade by connecting two Z-mixer blade half-heads such as those shown in FIG. 3B with a flap, wherein the size of the flap is also variable as a degree of freedom in the CAD kernel program;
[0042] FIG. 3D illustrates how the CAD kernel program builds a CAD model of a Z-mixer blade by uniting a separate Z-Mixer blade’s sections such as those shown in FIG. 3C, subtracting it from an enclosing box, and subtracting the latter again from another enclosing box;
[0043] FIG. 3E illustrates the four example CAD models of Z-mixer blade designs that can be parametrically and automatically produced by the CAD kernel program to have different geometries;
[0044] FIG. 3F illustrates the generation of meshed versions of the CAD models shown in FIG. 3E for use in the computational physics simulation program;
[0045] FIG. 4 illustrates an example computer-implemented method of autonomously generating a geometric design for a mechanical part optimised to perform an intended function in accordance with aspects of the present disclosure;
[0046] FIG. 5 illustrates a simplified plot of an example multivariate gaussian search distribution in two dimensions of the parameter space, marked with a plurality of sets of candidate parameter values sampled from the current search distribution across the parameter space;
[0047] FIG. 6 illustrates an aspect of the subject matter in accordance with one embodiment.
[0048] FIG. 7 illustrates testing, using the physics simulation program to simulate the range of motion of a modelled mechanical part, that a CAD model for a candidate Z-mixer blade design satisfies operating constraints;
[0049] FIG. 8 illustrates the steps in simulating an current state-of-the-art industrial Z- mixer using the discrete element method;Docket No. P361697GB
[0050] FIG. 9 illustrates an analysis of the simulation of the mixing results achieved by the current state-of-the-art industrial Z-mixer shown in FIG. 8 over time, the mixing results to be characterised by a mixing index as a performance metric indicative of the level of mixing of tracer particles;
[0051] FIG. 10 illustrates an updated plot of the multivariate gaussian search distribution shown in FIG. 5, showing a subset of the plurality of sets of candidate parameter values selected as having a qualitatively better performance against objective criteria based on a generated performance metric for each model;
[0052] FIG. 11 illustrates a further updated plot of FIG. 10 showing the updated the multivariate gaussian search distribution based on the selected subset of CAD models, the updated search distribution being sampled from in the next epoch to generate new sets of candidate parameter values to synthesise evolved CAD models;
[0053] FIG. 12 illustrates an analysis of the simulation of the mixing results at the same intervals over time achieved by an optimised industrial Z-mixer design generated by the method of FIG. 4;
[0054] FIG. 13 illustrates a comparison of the mixing index performance metric indicative of the level of mixing of tracer particles achieved over time by the current state-of-the-art industrial Z-mixer and the optimised industrial Z-mixer design generated by the method of FIG. 4; and
[0055] FIG. 14 illustrates an example computer-implemented method of calibrating the properties of the fluid and / or particulate matter modelled in the four dimensional computational physics simulation program in the method of FIG. 4 in accordance with aspects of the present disclosure;
[0056] FIG. 15 illustrates the comparison of a discrete element method simulation of a digital model of an industry-standard experimental powder characterisation device for calibration against experimental results from a physical version of the powder characterisation device;
[0057] FIG. 16 illustrates an example computer-implemented method of manufacturing and causing to be manufactured a geometric design for a mechanical part optimised to perform an intended function generated by the method of FIG. 4, accordance with aspects of the present disclosure.DETAILED DESCRIPTIONDocket No. P361697GB
[0058] Hereinafter, examples of the disclosure are described with reference to the accompanying drawings. However, it should be appreciated that the disclosure is not limited to the described examples, and all changes and / or equivalents or replacements thereto also belong to the scope of the disclosure. The same or similar reference denotations may be used to refer to the same or similar elements throughout the specification and the drawings.
[0059] As used herein, the terms “have,” “may have,” “include,” or “may include” a feature (e.g., a number, function, operation, or a component such as a part) indicate the existence of the feature and do not exclude the existence of other features. Throughout the description and claims of this specification, the words “comprise” and “contain” and variations of them mean “including but not limited to”, and they are not intended to (and do not) exclude other components, integers or steps. Throughout the description and claims of this specification, the singular encompasses the plural unless the context otherwise requires. In particular, where the indefinite article is used, the specification is to be understood as contemplating plurality as well as singularity, unless the context requires otherwise.
[0060] As used herein, the terms “A or B,” “at least one of A and / or B,” or “one or more of A and / or B” may include all possible combinations of A and B. For example, “A or B,” “at least one of A and B,” “at least one of A or B” may indicate all of (1) including at least one A, (2) including at least one B, or (3) including at least one A and at least one B.
[0061] As used herein, the terms “first” and “second” may modify various components regardless of importance and do not limit the components. These terms are only used to distinguish one component from another. For example, reference to a first component and a second component may indicate different components from each other regardless of the order or importance of the components.
[0062] It will be understood that when an element (e.g., a first element) is referred to as being (physically, operatively or communicatively) “coupled with / to,” or “connected with / to” another element (e.g., a second element), it can be coupled or connected with / to the other element directly or via a third element. In contrast, it will be understood that when an element (e.g., a first element) is referred to as being “directly coupled with / to” or “directly connected with / to” another element (e.g., a second element), no other element (e.g., a third element) intervenes between the element and the other element.
[0063] The terms as used herein are provided merely to describe some embodiments thereof, but not to limit the scope of other embodiments of the disclosure. It is to be understood that the singular forms “a,” “'an,” and “the” include plural references unless theDocket No. P361697GB context clearly dictates otherwise. All terms including technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiments of the disclosure belong. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
[0064] FIG. 1 shows a schematic illustration of an example computing apparatus 100 for autonomously generating a geometric design for one or more mechanical parts optimised to perform an intended function in accordance with aspects of the present disclosure.
[0065] The computing apparatus 100 comprises a memory 102, one or more processors 104 and an input / output module 108. A bus system (not shown) may be provided which supports communication between at the least one processor 104, memory 102 and input / output module 108. The computing apparatus 100 may be a general purpose computing apparatus implemented in a desktop or laptop or other suitable standalone device, or it may be implemented in a dedicated server, or virtual server supported in a cloud computing environment accessible by a user / operator device over the Internet. Any suitable implementation is possible and the example implementation described herein is not intended to be limiting.
[0066] The processor 104 executes instructions that can be loaded into memory 102. The processor 104 can include any suitable number(s) and type(s) of processors or other devices in any suitable arrangement. Example types of processor 104 include microprocessors, microcontrollers, digital signal processors, field programmable gate arrays and application specific integrated circuits.
[0067] The memory 102 may be provided by any structure(s) capable of storing and facilitating retrieval of information (such as data, program code, and / or other suitable information on a temporary or permanent basis). The memory 102 can represent a random access memory or any other suitable volatile or non-volatile storage device(s). The memory 102 may also contain one or more components or devices supporting longer-term storage of data, such as a read only memory, hard drive, flash memory, or optical disc, which may store software code for loading into the memory 102 at runtime. In use, the processor 104 and memory 102 provide a runtime runtime environment 106 in which instructions or code loaded into the memory 102 can be executed by the processor to generate instances of software modules in the runtime runtime environment 106.Docket No. P361697GB
[0068] The computing apparatus 100 also comprises input / output module 108 providing a communications interface for receiving data and instructions from a user / operator operating a user interface using one or more user input devices, such as a keyboard and mouse or other pointing device, or from one or more other devices or information sources through a data connection supported by a network such as the Internet.
[0069] The memory 102 comprises instructions which, when executed by the one or more processors 104, cause one or more of the processors 104 to instantiate an optimisation control module 110, a CAD kernel program 112, a physics simulation program 114, and a simulation analysis module 116. The computing apparatus 100, through operation of the optimisation control module 110, a CAD kernel program 112, a physics simulation program 114, and a simulation analysis module 116, carries out the method 400 shown in FIG. 4 to autonomously generating a geometric design for a mechanical part optimised to perform an intended function in accordance with aspects of the present disclosure.
[0070] However, before the optimisation method of FIG. 4 is described, the operation of the CAD kernel program 112 will now be described in more detail in relation to FIG. 3 A to FIG. 3F.
[0071] To configure the computing apparatus 100 to carry out the method of FIG. 4 to optimise a geometric design of a mechanical part, the CAD kernel program 112 must first be configured to be able to create CAD models having a geometric design that can be automatically tuned based on one or more free parameters usable to define the geometry of the mechanical part. That is, the CAD kernel program 112 is configured to generate a possible model for the mechanical part based on a value selected for each parameter of a a set of free parameters defining a parameter space to be searched. Each free parameter has a range of possible values and represents a predictably controllable aspect of the possible geometry of the mechanical part to be manufactured.
[0072] Differently from the CAD kernel program 112, the CAD design methods generally used by industry - with GUI programs such as AutoCAD, Fusion 360, SolidWorks, etc. - are inappropriate, as each new design requires a human drawing out each design feature.
[0073] Thus, to autonomously guide geometric optimisation operated by the optimisation control module 110, the CAD kernel program 112 is configured to have some numeric free parameters that can be modified and from which the CAD kernel program 112 can generate CAD models having a number of significantly different designs, without human input.
[0074] To build CAD models with such a range of geometries, the CAD kernel program 112 needs to be configured directly, so that it operates autonomously and without a GUIDocket No. P361697GB based on input values for a set of free parameters, such that a geometry-generation script can be re-executed with different input parameters to create a new design. This means that:1. The general CAD design expertise (requiring a large degree of manual input to draw CAD objects to build CAD models) is unapplicable.2. The resulting CAD kernel program 112 is completely unstructured (i.e., without the basic building blocks of CAD GUIs), with no visual aids of their intermediate steps.3. The possible designs must be highly variable, while remaining physically constructible - again, without the need for human visual assessment.
[0075] While the unstructured nature of CAD kernel programming extraordinarily increases the complexity of the geometry-design process, it also affords the liberty of using virtually any shape - any discontinuous, non-smooth, parameterised curve is now possible (or can be very accurately approximated piece-wise by splines).
[0076] From a technical standpoint, parametric geometric designs are built bottom-up: starting from points, connecting curves, forming surfaces, enclosing volumes; rotating, translating, uniting, subtracting geometric entities.
[0077] In terms of creative design, there is a careful balance to be made: it is desired for the possible designs to be highly diverse, including a wide variety of shapes, curvatures, textures, placements, orientations, possible attachments and variation across other aspects of the design. However, each new free parameter (“tuning knob” on the geometry) can require tens or hundreds of more candidate designs to be generated through the design iterations to find optima - so it is desired to minimise the number of free parameters to decrease the computational cost.
[0078] There is also a subtle but important consideration for configuring the CAD kernel program 112: changing a parameter should have, as much as possible, predictable effects on the geometry. For example, if a surface could be wavy or blocky, instead of having two parameters controlling waviness and blockiness, they could be merged into a single value that goes from -1 (blocky) to 1 (wavy), with 0 representing a flat surface; this way, the number of free parameters are minimised while the effects are relatively predictable (as opposed to suddenly jumping from blocky to wavy geometries); however, this now requires a creative mathematical parameterisation of an equation that goes from wavy to blocky.
[0079] The configuration and operation of the CAD kernel program 112 to autonomously generate, based on input values for a set of free parameters, a number of CAD models for a Z-mixer (or simply a Z-mixer) having significantly different designs, will now be described in more detail with reference to FIG. 2, and FIG. 3A to FIG. 3F.Docket No. P361697GB
[0080] FIG. 2 shows a photograph of an industrial Z-mixer 200 including two Z-blades 202 rotating in a processing environment of a contoured chamber or trough 204 for processing fluid and / or particulate matter. Each Z-blade 202 includes two half heads 206 at each end, each joined to a central head 208 by a respective flap 210, such that each has a characteristic “Z” shape. This design mixes, kneads, or disperses fluid and / or particulate matter through a combination of shearing and kneading actions.
[0081] The Z-blade mixer is particularly adept at handling a wide range of viscosities, from moderately viscous pastes to extremely thick dough-like materials, making it versatile across various applications. The Z-blade mixer is used in several industries for different purposes, such as:1. Chemical Industry: For mixing or reacting chemical compounds where uniform mixing is crucial.2. Pharmaceuticals: Used for mixing and kneading drug formulations, including tablet granulation, or creating consistent pastes and gels.3. Food Production: Ideal for mixing heavy doughs, pastes, or marzipan, as well as in the production of candies, gums, and other confectioneries.4. Cosmetics: For blending thick creams, lotions, and make-up bases where uniform texture and consistency are critical.5. Plastics and Rubber Manufacturing: In the compounding and preparation of plastic and rubber materials before shaping or curing processes.
[0082] The performance of a Z-mixer in efficiently mixing such diverse and dense materials lies in its ability to apply extensive shear and kneading actions, ensuring homogeneous products without air incorporation. Its design also allows for varying degrees of heat transfer for exothermic or endothermic reactions during the mixing process, making it a highly valuable tool in many manufacturing and processing industries. The geometric design of the Z-blades and the operational parameters have a significant effect of the efficiency Z-mixer and effectiveness and the rate of the mixing of particles in the trough 204. The optimisation of the geometric design of the Z-blades 202 for the Z-mixer 200 by the computing apparatus 100 operating method 400 will be set out herein as an example.
[0083] To optimise the geometry of Z-Mixer blades, the starting point is the properties of the geometric design that we should ask the optimiser should seek to vary and refine, and we then build up a parameterised CAD model for the Z-blades that can be autonomously varied based on these parameters. The chosen geometric free parameters for the Z-blades are: the blade axial length; the number of axial heads; the head diameter; the head thickness; the head depth; the head roundness; the Z-angle; the radial angle; and the flap ratio. OfDocket No. P361697GB course, this is not exhaustive and other free parameters could be added and others could be changed or removed.
[0084] Curves describing geometric entities of geometric designs that parameterise the above free parameters can be defined and coded into any suitable CAD kernel program such as the OpenCASCADE CAD kernel, which is written in the C++ programming language and so through which it is possible to code the parameterised generation of CAD models. OpenCASCADE is linked into GMSH, an open-source meshing library which can use OpenCASCADE CAD geometries as the basis on which to create triangulated meshes (i.e., discretising the complex continuous geometry into easier-to-handle triangles to define surfaces). GMSH itself is also written in C++ allowing it to interface directly to OpenCASCADE. It also has a C header interface which further has a Python layer allowing high level code or scripts to be written in Python to manage C++ objects in OpenCASCADE, which allows control of the geometric entities making up the generated CAD models. The use of OpenCASCADE and GMSH is not intended to be limiting and any suitable CAD kernel (such as Parasolid or ShapeManager) and other software (such as Cubit for meshing) may be used to provide the CAD kernel program 112 to generate CAD models.
[0085] The configuration of the CAD kernel program 112 to parametrically generate CAD models of a given mechanical part may be achieved by receipt of input through input / output module 108, for example by a user operating a user terminal or otherwise providing user input through a device to code the CAD kernel program 112.
[0086] How the CAD kernel program 112 is configured to generate CAD models of the Z- blades having geometric designs that vary significantly based on these parameters will now be described with reference to FIG. 3A to FIG. 3F.
[0087] FIG. 3A illustrates example initial steps for creating a CAD model for a “halfhead” of a the Z-mixer blade in the CAD kernel program. As a parameter would like to vary is the tip roundness of the Z-blade, a quadratic Bezier curve is used to describe the half head shape by which the roundness can be parameterised:
[0088] is the curve traced from Po (at t = 0) to (at t = 1) with Pi being a “control point”, which can control the curve roundness. Bezier curves can be coded into the OpenCASCADE CAD kernel providing the CAD kernel program 112. Thus, the CADDocket No. P361697GB kernel program 112 can be configured by writing Python code that inserts 3 points corresponding to the two base corners and the tip of a vertical half-head side (see FIG. 3 A left pane (A)) and two control points for the Bezier curves; the three points are then connected with a straight line at the base and two Bezier curves for the sides. If the control points are moved upwards (downwards), the tip becomes more rounded (sharper). Therefore, a “roundness” parameter can be defined, going from 0 (for which the control points are at the bottom, i.e., very sharp tip) to 1 (for which the control points are at the top, i.e., very rounded tip).
[0089] For the two other free parameters corresponding to the “thickness” of the base and the “diameter” (length) of the mixer head, the Bezier control points are moved relative to these other values.
[0090] The same code can be repeated to create the second side of the mixer half-head (see FIG. 3B middle pane (B)). Each face’s three curves can then be grouped into a wire, and the two wires can be connected by creating a continuous outer shell passing through them, which now generated three surface sides (see FIG. 3 A right pane (C)) which, together with the two faces enclose the half-head volume. The distance between the two faces represents another free parameter, “depth”, whose effects are shown in FIG. 3 A right pane (C).
[0091] As seen in the example of the industrial Z-mixer (see FIG. 2), the blades are twisted. This can be generalised into two types of twists: an axial “Z-angle” (at 90 degrees it would be perpendicular to the middle shaft, at >90 degrees it form an acute Z-shape, while at <90 it form an obtuse angle to the middle shaft), and a “radial angle” around the middle shaft. Again, these can be coded into the CAD kernel program 112 so that the half heads are shaped and arranged according to the input parameter values.
[0092] That is, from the constructed, parameterised shape, two faces of a half head can be constructed (see FIG. 3 A middle pane (B)) and connected to create an outer shell of the half head (see FIG. 3 A right pane (C)).
[0093] The further free parameters, can be coded up in a similar manner using curves or other equations that define the shape of different geometric elements making up the half head.
[0094] In this regard, FIG. 3B illustrates the effects of varying the individual degrees of freedom of the geometric parametrisation of a single Z-mixer half-head as shown in FIG. 3 A in the CAD kernel program. That is, the CAD model for the base geometric design (see FIG. 3B pane (A)) for the half head produced by the CAD kernel program 112 can be changed by altering the input values for the parameters varying the half head diameter (seeDocket No. P361697GBFIG. 3B pane (B)), depth (see FIG. 3B pane (C)), thickness (see FIG. 3B pane (D)), roundedness (see FIG. 3B pane (E)) , Z-angle (see FIG. 3B pane (F)) and radial angle (see FIG. 3B pane (G)). Intuitively, it may be expected that they will have important effects on the efficiency of the mixer, but their exact behaviour is impossible to predict without actually pushing them through particles - for example, would an acute Z-angle increase axial mixing better than an obtuse one? A larger head depth would probably move more particles, but would they mix better? What values do are needed to prevent the two blades from hitting each other? Intuition is necessary in the creative design parameterisation stage, but an automated form of exploring the parameter space to find the optimum values then enables autonomous optimisation.
[0095] FIG. 3C illustrates how the CAD kernel program builds a CAD model of a Z-mixer blade by connecting two Z-mixer blade half-heads such as those shown in FIG. 3B with a flap, wherein the size of the flap is also variable as a degree of freedom in the CAD kernel program. That is, once a mixer half-head is created - which can be encapsulated in a Python class and recreated at different points in space - it is possible to place two half-heads at different radial orientations along the Z-mixer blade and connect them with a flap, as depicted in Fig. 3B. The extent of this flap can be controlled as another free parameter going between 0 (no flap) to 1 (flap as large as the half-heads). This would control the place along the Bezier curves that the flap ends would be at. To create this flap, two base corners and a tip point are created - like for the half-heads - and two control points which must be computed according to the half-heads’ roundness value, such that the Bezier curves describing the flap sides are flush on the heads. The “flap extent” then controls how far along the half heads’ Bezier curves the flap base corners lie. Once the flap sides are placed on the back of the first head and front of the second head, they can be connected in a similar fashion to how the two head sides were, so that the flap traces a continuous twist between the two sides. Tracing this continuous twist involves a complex optimisation algorithm finding the spatial trace that minimises the total curvature of the resulting shape.
[0096] Larger blades of different twists, radial configurations and different numbers of heads can now be constructed from a mix of half-heads and connecting flaps. To create a full head, two half heads are created at opposite orientations. The full Z-blade can then be created procedurally.
[0097] In this regard, FIG. 3D illustrates how the CAD kernel program builds a CAD model of a Z-mixer blade by uniting a separate Z-Mixer blade’s sections such as those shown in FIG. 3C, subtracting it from an enclosing box, and subtracting the latter again from another enclosing box.Docket No. P361697GB
[0098] Tor example, an example procedure for creating a CAD model for a standard three head, two flap blade (as shown in FIG. 3D left pane (A)) is as follows:1. Place edge half head 1 (leftmost half head in FIG. 3D).2. Place middle half-head 1 (upper middle half-head in FIG. 3D).3. Connect edge half-head 1 with middle half-head 1 with a flap.4. Place middle half-head 2 at same location as middle half-head 1, but with orientation 180 degrees more than the latter’s so they form a full head.5. Place edge half-head 2.6. Connect middle half-head 2 with edge half-head 2 with a flap.
[0099] A final step operated by the CAD kernel program 112 to generate the CAD model is that of uniting all separate volumes (one for each half-head, plus one for each flap) into a single continuous one. The common “union” Boolean geometric operation would keep the separators between the parts, e.g., the common surface where a half-head and a flap touch; instead, all parts are subtracted from a larger enclosing volume (as shown in FIG. 3D middle pane (B)), yielding a single volume with the designed Z-mixer shape carved out. Now the subtraction can be repeated: another enclosing volume is inserted and the hollowed-out one is subtracted from it, such that only the carved-out geometrical shape of the paratmetrically designed CAD model of the Z-mixer remains, as a single continuous volume, with no walls between sections (as shown in FIG. 3D right pane (C)).
[0100] Thus the CAD kernel program 112 can be configured to generate a CAD model for a Z-mixer having a varying geometric design based on a set of parameter values for the following geometric free parameters (the numeric types and ranges for which are indicated):• The blade axial length: positive, continuous real number.• The number of axial heads: positive, discrete integer greater or equal to 2.• The head diameter: positive, continuous real number.• The head thickness: positive, continuous real number.• The head depth: positive, continuous real number.• The head roundness: continuous real number between 0 and 1.• The Z-angle: continuous real number between -71 and TI radians.• The radial angle: continuous real number between ~2TI and 2TI radians.• The flap ratio: continuous real number between 0 and 1.
[0101] FIG. 3E illustrates the four example CAD models of Z-mixer blade designs that can be parametrically and automatically produced by the CAD kernel program to have different geometries.Docket No. P361697GB
[0102] The blade axial length can be fixed to the dimension of a pre-existing processing environment such as trough 204, while the head thickness can be fixed based on material strength measurements, as required for specific applications. That leaves 7 free parameters to morph the Z-blade geometry into a variety of shapes, as shown in FIG. 3E.
[0103] Thus, the Z-blade has a 7-dimensional parameter space, in which each point - i.e., parameter combination - corresponds to a CAD model for a Z-blade having a unique geometric design.
[0104] This parameter space has a mix of continuous and discrete variables, some with orders of magnitude differences in numeric ranges, and all with unknown effects on the mixing behaviour. Thus the parameter space a vast number of candidate CAD models with a range of vastly different Z-blade geometric designs, each with potentially very different, and unknowable mixing performances. This explains the extreme difficulty of geometric design optimisation, resulting in little design changes in industrial process equipment in the last decades.
[0105] FIG. 3F illustrates the generation of meshed versions of the CAD models shown in FIG. 3E for use in the computational physics simulation program. That is, once a CAD model geometric design has been created, it must be meshed - that is, discretised into triangles which are faster and easier to simulate, post-process, render, 3D-print or manufacture. This step is separate from the CAD model creation, and indeed can be done with different programs, e.g., a CAD kernel such as OpenCASCADE can export the geometry as a file in the STEP format for general 3D models, which can then be loaded by another meshing-specialised library such as Cubit or GMSH. The CAD geometry construction and meshing can be done automatically using the GMSH Python interface, so that no intermediate 3D model export is needed. The meshed CAD models are then usable by the physics simulation program 114 to simulate their performance in the processing environment.
[0106] FIG. 4 illustrates an example computer-implemented method 400 of autonomously generating a geometric design for a mechanical part optimised to perform an intended function in accordance with aspects of the present disclosure.
[0107] Although the example method 400 depicts a particular sequence of operations, the sequence may be altered without departing from the scope of the present disclosure. For example, some of the operations depicted may be performed in parallel or in a different sequence that does not materially affect the function of the method 400. In other examples, different components of an example device or system that implements the method 400 mayDocket No. P361697GB perform functions at substantially the same time or in a specific sequence. In the example, the optimisation control module 110 coordinates the CAD kernel program 112, the physics simulation program 114 and the simulation analysis module 116 in performing the method 400. However, this is only an example implementation and is not intended to be limiting.
[0108] The method 400 can proceed once the CAD kernel program 112 is configured to parametrically generate CAD models of the mechanical part or varying geometric designs that can be used by a suitable computational physics simulation program 114 to generate a 4D simulation of how the CAD models perform in their intended function in processing the intended fluid and / or particulate matter in the processing environment over time. For this, the physics simulation program 114 also needs to be configured to autonomously receive the CAD models and automatically simulate the performance over time. Further, the computational physics simulation program 114 should be configured to have properties of the simulated fluid and / or particulate matter that are calibrated to as accurately as possible recreate the physical behaviour of the physical fluid and / or particulate matter in the processing environment. The physics simulation program 114 may, in addition to simulating physics in the operational environment, perform coupled physics-chemistry simulations of the operational environment and the fluid and / or particulate matter. Further detail on this will be set out below, in particular in relation to FIG. 14 and FIG. 15.
[0109] In step 402, the optimisation control module 110 initialises a search distribution across the parameter space that defines the distribution from which values of the different free parameters to be simulated are chosen (e.g. by random draw). This is shown in FIG. 5, which illustrates a simplified plot of an example multivariate gaussian initial search distribution 502 in two dimensions of an example parameter space. It should be noted that this is a simplified representation as the parameter space is an TV-dimensional space corresponding to the number of free parameters, and so the multivariate search distribution also comprises this number of parameters. It should be noted also that the initial search distribution 502 shown is also only illustrative and exemplary, and is not intending to be limiting. It is beneficial that the initial search distribution 502 should generally be broad and positioned roughly centrally in the parameter space, as this allows the wide parameter space to be explored. It should also be noted that the multivariate Gaussian distribution is not necessarily limiting and other distributions may be usable. However, in the example given, the optimisation control module 110 stores parameters for the search distribution from one iteration for the next, by a mean or central value and a standard deviation or variance value for the Gaussian distribution in each parameter.Docket No. P361697GB
[0110] Then for each successive epoch, including the first epoch, the optimisation control module 110 in step 404 generates a plurality of sets of candidate parameter values based on sampling the current search distribution across the parameter space. For the initial epoch, this is the initial search distribution 502. However, as the search distribution is updated from one epoch to the next, the sampling is based on the current (i.e. updated search distribution).[OHl] As can be seen in FIG. 5, for the first epoch, a plurality of sets of candidate parameter values 504 are marked, each by an X, representing the location in the parameter space in those two dimensions sampled from the initial search distribution 502. The sampling may be by random draw from the search distribution, which, as can be seen, leads to the candidate parameter values 504 generally being distributed in accordance with the initial search distribution 502 as indicated by the dashed lines indicating constant probability around the multivariate Gaussian distribution.
[0112] In embodiments, the parameter space may further include, in addition to the set of free geometric parameter values, one or more free operational parameters for the operation of the mechanical part in the processing environment or for operation of the processing machine or processing environment more generally. The operational parameters may represent considerations like rotation speed, phase, or flow rates of the fluid in / out, or operational parameters of other parts of the machine separate from the mechanical part, that are freely controllable or constrainable in the process etc. If any free operational parameters are provided in the parameter space, in step 404 the optimisation control module 110 may additionally generate a plurality of candidate operational parameter values based on sampling the current search distribution across the parameter space. These candidate operational parameter values may be provided as part of the output vector of parameters, or separately.
[0113] The result of this step 404, is that the optimisation control module 110 generates a plurality of sets of candidate parameter values 504 for each parameter of the parameter space which is configured to be directly usable by the CAD kernel program 112 to generate a plurality of candidate CAD models for the mechanical part having a range of different geometric designs each defined by the candidate parameter values. The candidate parameter values may be arranged as a vector and passed by the optimisation control module 110 to the CAD kernel program 112. In the example shown in FIG. 5, sixty sets of candidate parameter values 504 are generted.Docket No. P361697GB
[0114] The optimisation control module 110 then passes these candidate parameter values to the CAD kernel program 112 and, in step 406, the CAD kernel program 112 generates a plurality of CAD models for the mechanical part using the CAD kernel program based on plurality of generated sets of candidate parameter values. Thus in the example following FIG. 5, the CAD kernel program 112 is provided with sixty vectors of candidate parameter values 504, and it autonomously and parametrically generates sixty CAD models of a Z- blade each having very different geometric designs based on the sets of candidate parameter values 504. An example of this is shown in FIG. 6, not for Z-blades, but for a design of an attritor. FIG. 6 shows an example set of CAD models for different geometric designs of an attritor that are parametrically generated by CAD kernel program responsive to input of 32 sets of candidate parameter values. As can be seen, the attritor CAD models have different numbers and orientations of paddles of different sizes and at different heights along the shaft. The CAD models have all been autonomously generated by CAD kernel program 112.
[0115] The CAD kernel program 112 then passes the CAD models to the physics simulation program. The CAD models are in a form usable by the physics simulation program to perform a simulation of the performance of the modelled mechanical part over time. For this, the CAD kernel program 112 may be configured to mesh the CAD models for the mechanical part for use in the simulation by the four dimensional computational physics simulation program.
[0116] Unlike simulations, physical, “real world” experimental setups are expensive, timeconsuming and involve multiple teams of designers, manufacturers, experimentalists and analysts working in tight cooperation while still providing limited, noisy information about the system being investigated. Simulations, on the other hand, allow rapid prototyping - once a “digital model” is set up in the physics simulation program 114, changing the processing conditions is as simple as changing a few numbers in the simulation definition script - and provide a complete picture of the simulated system by allowing all the desired physical information regarding the system to be extracted. In contrast, experimental setups and imaging / sensing can only usually obtain a very limited subset of information about the physical system (e.g. imaging can measure particle speed, but cannot sense forces between particles). The accuracy of the physics simulation is improved significantly if the simulation can be accurately calibrated, in particular for the behaviour of the fluid and / or particulate matter to be modelled. Thus, the model of the fluid and / or particulate matter may be configured by calibration using, for example, a method 1400 as shown in FIG. 14 and described below. In this way, the physics simulation program 114 can provide reliableDocket No. P361697GB evidence of the real world utility and effectiveness of candidate CAD models for mechanical parts, without having to prototype and physically test each one.
[0117] Thus, on receipt of the plurality of CAD models, the physics simulation program 114 is configured to, at step 408, autonomously and automatically generate a simulation of the performance of the modelled mechanical part for each model of the plurality of generated CAD models using a four dimensional computational physics simulation program. The physics simulation program 114 may be configured to simulate the performance of the modelled mechanical part in performing its intended function interacting with a model of the fluid and / or particulate matter in a model of the processing environment in intended use.
[0118] The computational physics simulation program 114 may use one or more methods selected from a group including:• Discrete Element Method,• Computational Fluid Dynamics Method,• Finite Element Method,• Monte Carlo Method,• particle-in-cell method, and• multiphase particle-in-cell method.
[0119] This list of simulation methods is not intending to be limiting, and the specific simulation method may be chosen based on the mechanical part, its intended function, the fluid and / or particulate matter and the processing environment in question. Again, the configuration of the physics simulation program 114 to perform the simulation may be based on user input and / or data received at the input / output module 108, for example by a user configuring the physics simulation program 114 using a user interface before the optimisation method 400 is carried out.
[0120] The physics simulation program 114 may be configured such that, in the simulation of the mechanical part in use, the mechanical part may be driven or caused or allowed to move to perform its intended function by interacting with a fluid and / or particulate matter in an operating environment. For example, the physics simulation program 114 may be configured to cause the the CAD models of the Z-blades of the simulated Z-mixer to rotate in the trough. The particles then in the trough for processing are then simulated, for example using a Discrete Element Method, to simulate how they are moved around in the trough by the rotating Z-blades, and by each other, to reveal a simulation of how they may be mixed over time by the simulated Z-mixer incorporating the Z-blades according to the CAD models in that epoch. It is important to note that the physics simulation program 114Docket No. P361697GB performs physics modelling of the system processing the fluid and / or particulate matter over time, so that the performance of the system can be discovered and predicted by the simulation as close to physical reality as is achievable by the physics model. The motion of a given mechanical part in the simulation can also be driven through a feedback loop based on the motion of the particles / fluid in the simulation - e.g. air driving a wind turbine, or a pressure sensor and a PID controller.
[0121] Where a modeled system includes plural mechanical parts to be optimised, their interaction and motion may be modelled. For example, the generated CAD models may be for optimising the geometric design of plural mechanical parts that work together to perform an intended function for processing the fluid and / or particulate matter in the processing environment. An example is the Z-mixer that includes two Z-blades.
[0122] The physics simulation program 114 may be configured to validate that each of the received CAD models satisfies operating constraints for the system by, for example, simulating the range of motion of the modelled mechanical part in performing its intended function in a model of the processing environment in intended use. An example of this can be seen in FIG. 7, which shows a CAD model for a candidate Z-blade design that does not satisfy operating constraints because the blades crash into each other when rotating (see FIG. 7, right pane). The physics simulation program 114 and / or the optimisation control module 110 may, responsive to the physics simulation program 114 finding that a candidate CAD model is not valid, discard those CAD models are not operationally viable.
[0123] As the physics simulation program 114 receives plural CAD models for the part in each epoch, to allow efficient processing, the physics simulation program 114 may be configured to generate the simulations for each CAD model in parallel.
[0124] Where the parameter space includes a number of operational parameters for the system, as well as a number of geometric parameters for the modelled part, the physics simulation program 114 may be configured to generating a simulation of the performance of the modelled mechanical part for each model of the plurality of generated CAD models for the corresponding candidate operational parameter values. This may be responsive to the optimisation control module 110 or the CAD kernel program 112 passing to the physics simulation program 114 the vectors representing the sets of candidate parameter values 504 including the candidate operational parameter values. The candidate operational parameter values may be tied to a specific CAD model, or they may be tested across multiple different CAD models. For example, the set of candidate parameter values associated with a candidate CAD model for a Z-mixer may include operational parameter values that causeDocket No. P361697GB the physics simulation program 114 to simulate the Z-mixer blades as rotating at independent and differently set rotation speeds, with a set phase or offset. In this way, the the iterative method can further optimise the parameters for the operation of the mechanical part, as well as the geometry of the mechanical part.
[0125] FIG. 8 illustrates the steps in simulating an current state-of-the-art industrial Z- mixer (having the design shown above the main panes) using the discrete element method to model its mixing of a microcrystalline cellulose (MCC) powder. The illustrated stages including, from the first panel (a) on the left, the generation of a CAD model for the current state-of-the-art industrial Z-mixer, its meshing in the second panel (b), its setting at the start of a physics simulation in third (c) to mix a modelled particulate matter (shown with a section of yellow tracer particles), and at the end of a physics simulation (e.g. after 10 seconds of operation) in the fourth panel (d) on the right.
[0126] Taking this example in more detail for illustration of the configuration and operation of the physics simulation program 114, to run a discrete element method (DEM) simulation of a particulate system (and autonomously optimise it) a programmable DEM engine is needed which can define system boundaries via STL meshes. Suitable DEM engines include LAMMPS, LIGGGHTS or YADE. The LIGGGHTS DEM engine, based on the LAMMPS platform developed by the Sandia US National Labs, is a highly-optimised and scalable DEM engine that has been extensively validated against industrial particulate processes, and has been used in the example shown in FIG. 8 and FIG. 9 to simulate and optimise the Z-mixer. However, this is not intended to be limiting and any DEM engine which allows automated definition of simulations may be used.
[0127] In general, defining a DEM simulation for a particulate system mixed by a Z-mixer involves specifying at least:• A particle size distribution.• Body forces.• Neighbourhood search parameters.• Contact models for computing forces during particle-particle and particle-wall contacts. These models also require setting some particle properties such as friction, restitution, Young’s modulus, etc.• Some walls with optional movements (e.g., rotation, shaking).• An integration scheme and timestep for computing the relevant particle states (e.g., positions, velocities, angular velocities) and advancing the simulation.• Regions where particles will be inserted, and the number thereof.Docket No. P361697GB• Output formats and data export frequency (e.g., exporting the particle positions in a general VTK format to be visualised and post-processed in another program).• Length of time to simulate the system for.
[0128] In the example, the particle size distribution (PSD) of the target particulate matter to be modelled has been measured using a Sympatec QICPIC. This can be input into the physics simulation program 114 to configure the behaviour of the model of the particulate matter, and it may be subject to further refinement and improvement following the particle property calibration method 1400 described in relation to FIG. 14 below. This particulate matter PSD is then reproduced in the simulation of the Z-mixer.
[0129] The contact models are also defined based on input data and / or following further calibration and validation simulations, so that particle properties accurately reproduce the dense granular flow dynamics of the real MCC powder. The walls must be created before launching the simulation in a separate program, and a standard industrial trough 204 as typically used in the pharmaceutical and food industries of 0.4 x 0.8 x 0.6 m with a rounded bottom is modelled using GMSH , as shown in FIG. 8. The Z-blade CAD models are as those received from the CAD kernel program 112. Two Z-blades are inserted at 0.2 m apart with their orientation offset by 90 degrees, as used in the vast majority of Z-mixer applications (thus offset is not an operational parameter); and they are set to both rotate inwards at 30 RPM which is again a standard rotation rate used in industry (thus rotation rate is not an operational parameter optimised for in the example). However, it is possible that some blade designs will collide while rotating (a collision example is highlighted in the right panel of FIG. 7) - therefore, another pre-simulation step is included to check for blade collisions during a full 360-degree rotation.
[0130] A typical integration scheme for DEM simulations is the Velocity Verlet method, which balances second-order accuracy with relatively low computational cost; a timestep of 10'5s is used - i.e., all contacts, forces, particle states are evaluated 100,000 times per simulated second, ensuring high accuracy.
[0131] Once all system geometry is defined and imported in the simulation engine (two left panels in FIG. 8), the particles are inserted over the static blades. Here, 40,000 particles are poured and left to settle for 1 second in the simulation (as shown in two left panels in FIG. 8). Afterwards, the 30 RPM inwards blade rotation is started and the simulation is run for 20 seconds, corresponding to 10 complete blade revolutions, which is roughly 5 times longer than the time needed to reach steady-state mixing for the standard design - and therefore plenty to extract accurate statistics and make predictions on time needed to reach aDocket No. P361697GB given mixing level. Fig. 8, panels d) depicts a qualitative, visual representation of the mixing of two particle species (same sizes, same properties, different starting points shown in different colours for a tracer) after 8 seconds, during steady-state mixing.
[0132] Once the physics simulation program 114 has completed the programmed simulations of all the (valid) CAD models for the mechanical part in the epoch, the results of the simulations are passed to the simulation analysis module 116 for quantitative evaluation of the simulated perfomance of each CAD model in performing its intended function.
[0133] Thus, in step 410, the physics simulation program 114 passes the results of the simulation of each CAD model to the simulation analysis module 116 which is configured to analyse the simulation of the modelled mechanical part over time to generate a metric selected to quantitatively characterise the performance of the CAD model against one or more objective criteria to be optimised for.
[0134] The simulation analysis module 116 may be configured, again by user input received via input / output module 108, to process the simulations to determine a metric chosen to be suitable for the system being modelled and the objective criteria to be optimised for. For example, the metric may be selected to quantitatively characterise the performance of the CAD model against one or more objective criteria selected from the group including: a mixing metric, a grinding metric, a size reduction metric, a coating metric, a purification metric, a reaction metric (if the intended function of the system and the mechanical part is to perform mixing, grinding, size reduction, coating, purification or a reaction). The objective criteria may relate to the efficiency, effectiveness or energy consumption of the CAD model in performing the intended function or any other suitable goal in the physical system such as achieving a desired processing outcome of the fluid and / or particulate matter, such as achieving a specific size distribution in the processed particles. Indeed, to balance these criterion, the metric may be selected to quantitatively characterise the performance of the CAD model against multiple objective criteria to be optimised for.
[0135] Thus, in the example, to assess the performance of each simulated design for the Z- blade, and effectively compare them with the performance of the other designs, the simulation analysis module 116 analyses the data generated by the physics simulation program 114 to generate a mixing effectiveness index, and a metric is determined based on this. To achieve this, a post-processing workflow is implemented using the Python programming language to automatically import and analyse the VTK files exported by theDocket No. P361697GB physics simulation program 114 into the simulation analysis module 116. In general, postprocessing analysis by the simulation analysis module 116 allows us to quantify and answer key questions about the system performance such as:• Flow patterns (i.e. Where do particles go?)• Occupancies (i.e. How long do particles spend time, and where?)• Segregation / Mixing (i.e. How do particles move compared to other particles in the system?)• Energy consumption / dissipation (i.e. How much energy does the system consume?)• Stresses within the system.
[0136] In the example of the Z-mixer, the simulation analysis module 116 is configured to post-process the simulation data to perform an assessment of the mixing efficiency of the system by determining a metric called the “Lacey Mixing Index”. This index offers a quantitative method to compare mixing in the modelled system with the different Z-blade designs and thus establish a measurable standard by which each CAD model's performance can be evaluated.
[0137] Introduced by Lacey P.M.C. in 1943, the Lacey Mixing Index is a quantitative measure for assessing the mixing in solid particle systems. It compares the extent of actual mixing to the ‘perfect’ mixing that is hypothetically achievable in the fluid and / or particulate matter. The process of calculation begins by dividing the analysis area into N number of cells. Within each cell, the concentration of a reference component,is contrasted with the system's overall concentration,
[0138] The index is primarily focused on calculating the variance r for the concentration of this reference component across all cells. This variance is defined as:
[0139] Where <Ji is the concentration of the reference component in each cell, andis the average concentration across the system. The maximum (oo2) and minimumvariances are then used to define the range of mixing efficiency, with the Lacey Mixing Index M calculated as:Docket No. P361697GB
[0140] This index thus facilitates a comparative analysis of mixing efficiency across different times and different simulations. In the context of the Z-mixer simulations, we seek to improve mixing rates, not just the mixing achieved at a single point in time.
[0141] Referring now to FIG. 9, this illustrates an analysis of the simulation of the mixing results achieved by the current state-of-the-art industrial Z-mixer shown in FIG. 8 over time by the physics simulation program 114 and simulation analysis module 116. Particles are categorised into two distinct species: one quarter of the particles designated as Species One and the remainder as Species Two (see the two different colours of particles in FIG. 9). Concentrations of the initial quadrant of tracer particle (shown in red before mixing, top row) relative to the number of total particles in each one of the 20 * 10 square parcels for the industry standard-like design are shown over time. The initial state (shown in the top row, pane (a)), characterised by a complete segregation of the two virtual particle species, yields a Lacey Mixing Index of zero, indicating no intermixing.
[0142] The tracer concentration in each parcel is shown after 8 seconds of mixing (middle row, pane (c)) and after 16 seconds (bottom row, pane (e)). The number concentration is colour-coded between 0 (blue) and 1 (red); as only a quarter of the particles are tracers, uniform mixing is represented by a concentration of 0.25 (i.e., uniform light blue). As can be seen, after 16 seconds, the two species of particle are poorly mixed by the industry standard Z-blade geometric design, with a significant concentration of the red particles still arranged around the central head of the bottom Z-blade. The overall value of the Lacey Mixing Index AL for the industry standard Z-blade is around 0.5 after 16 seconds.
[0143] The simulation and analysis of the industry standard Z-blade is shown for illustration only, and in practice, in the first epoch, the CAD kernel program 112 produces a large number (e.g. 64) of CAD models having diverse geometric designs, the performance of which is simulated in parallel by the physics simulation program 114, and then analysed by the simulation analysis module 116, the results of which are then used in the following epochs, as will be described below, to try to find a global minima to achieve a design that provides optimum performance against the objective criteria. In the example shown, the question is, can the optimisation method 400 find a design for a Z-blade that achieves a quantitatively better mixing performance than the industry standard Z-blade. It is critical to note that the rate of this mixing is predominantly influenced by the geometry of the Z-blade, assuming constant rotational speed and uniform powder properties and other properties also remaining constant.Docket No. P361697GB
[0144] In the context of the Z-Mixer simulations, we seek to improve mixing rates, not just the mixing achieved at a single point in time. To quantify the mixing rate, we extract the Lacey Index over the time of the simulation (see FIG. 13) and fit an asymptotic curve to the graph. In this way the diminishing returns occurring due to the asymptotic nature of the Lacey Index are encapsulated. This means that, for example, if it takes 10 seconds to reach 50% mixing, after another 10 seconds we would only reach 75% mixing and so on. For the industry standard Z-mixer, a mixing rate of 18.61s is achieved.
[0145] Thus, following the generation of the metric for each CAD model by the simulation analysis module 116, the data relating to the performance of each CAD model is passed from the simulation analysis module 116 back to the optimisation control module 110 which is then configured to, autonomously and automatically, at step 412 select a subset of, or prioritising by applying weights to, the generated CAD models for that epoch having a quantitatively better performance. Any appropriate approach to this may be possible. Indeed the CAD models (e.g. represented by the corresponding set of parameter values used to generate that CAD model), may be ranked according to the metric, such as the Lacey Mixing Index, or an asymptotic characterisation of the progression thereof, and a subset of the highest ranking CAD models may be selected in each epoch. For example, as shown in FIG. 10 for the Z-mixer example, a subset of the thirty highest ranked CAD models based on the analysed performance in the simulation, out of the sixty generated in that epoch, are selected. As can be seen the selected candidate parameter values 1004 are generally located in the region of the parameter space have values of between 0 and 2 for parameter 1, and between 0 and 1.5 for parameter 2. This indicates that the geometric designs of the CAD models having features with these parameters generally performed better than the rest of the candidate CAD models in that epoch.
[0146] Then, in step 414, the optimisation control module 110 is configured to autonomously and automatically update the search distribution. For this, for example where the search distribution is selected to have a multivariate Gaussian distribution along each of the parameters in the parameter space, updating the search distribution across the parameter space to reflect the distribution of the parameter values corresponding to the selected subset of generated CAD models may include updating the mean and covariance values of the multivariate Gaussian distribution such that the updated search distribution may be representative of the selected subset of generated CAD models. As can be seen in Fig 11, the updated search distribution 1102 is shown in dotted lines localised around the selected candidate parameter values 1004. Relative to the initial search distribution 502, the updated search distribution 1102 is much less broad, indicating that in this epoch, the simulationsDocket No. P361697GB have narrowed in on a set of values in the parameter space (at least in relation to the illustrated parameters) that generate better performance for the intended function.
[0147] Then, in decision step 416, the optimisation control module 110 decides whether or not to proceed to the next epoch. This is effectively a decision step to assess whether an optimum (ideally a global optimum) performance has been reached. For example, the optimisation control module 110 may stop the iteration to the next epoch if the uncertainty in the search distribution falls below a threshold value. For example, if a threshold standard deviation for the search distribution is reached (balanced across all parameters). If a decision is made at decision step 416 to proceed to the next epoch, the method returns to step 404 to generate a new plurality of sets of candidate parameter values for updated CAD models, but this time the current search distribution sampled from is the updated search distribution, which is narrowed in on the parameter space that has been found by simulation in the last epoch to produce a better performance in the simulations. These new sets of candidate parameter values are then used to generate new CAD models, which are then in turn simulated and analysed to assess their performance, to again update the search distribution.
[0148] Iterating though the rounds of successive epochs to generate, simulate and analyse evolved CAD models having candidate geometries with features based on combinations of free parameters synthesised across the updated search distributions, causes the method 400 to autonomously and iteratively arrive at a search distribution in the parameter space that generates a CAD models having a geometric designs that escape local optima and move towards a global optimum performance. For this, the iterative method may be scripted to loop through successive epochs to generate CAD models, simulate their operation, analyse their performance and adjust the search distribution to evolve the designs of the CAD models for the next epoch.
[0149] Thus the method 400 iterates through repeatedly until at decision step 416, a decision is made to not proceed to the next epoch. At this point, although this is optional, the method may proceed to step 418 to select a final optimised CAD model for the mechanical part based on the search distribution at step 418.
[0150] By the above method 400, as the search distribution is updated each epoch and new designs are sampled from that new search distribution, the method is effectively an evolutionary algorithm (for example, adopting a Covariance Matrix Adaptation Evolutionary Strategy - where a covariance matrix is used to represent the shape of the search distribution ellipsoid that is moved and reshaped each epoch) that synthesises newDocket No. P361697GB designs that add diversity and combine features found in the best performing designs from the previous round. Importantly, the CAD models from the previous round are discarded and each epoch starts afresh. This evolving of the CAD models from one epoch to the next causes the optimisation to escape local optima and reliably seek a global optimum.
[0151] Significantly, as the metric selected to quantitatively characterise the performance of the CAD model against one or more objective criteria to be optimised for may often be non-linear, noisy, discontinuous, non-convex across the parameter space, normal optimisation approaches may be susceptible to getting stuck in local minima. This occurs to the high-dimensional parameter space, the unpredictable behaviour of powders and additionally the discontinuous behaviour of geometric design generation. Therefore, there are potentially a significant number of local minima within the error-space. Such a problem cannot be solved by the vast majority modern optimisation algorithms, which employ gradient-based methods. In contrast, the method 400 reliably seeks designs that achieve a global optimum performance.
[0152] In relation to the Z-mixer example, the optimisation method 400 evolved and found a best perfoming geometric design for a Z-blade having an exotic shape, as seen in the meshed CAD model shown to the right of FIG. 12. That is, after completing 30 epochs and 3840 simulation runs, the optimisation method 400 identified the most effective parameters for the Z-Mixer as follows: a count of 4 mixing heads, each with a diameter of 0.28±0.01 m, a depth of 0.14±0.01 m, set at a Z angle of approximately -9.77±6.02 degrees, a radial angle of 89.82 ± 4.62 degrees, and a flap ratio of 0.88±0.04. The simulation of the mixing results for this design are shown in FIG. 12 at the same intervals over time as shown for the industry standard model in FIG. 9. As can be seen, the colour of the different areas of the particles is much more homogenous after 16 seconds, when compared to the results for the industry standard model in FIG. 9.
[0153] Turning to FIG. 13 which shows a comparison of the Lacey Mixing Index achieved over time by the current state-of-the-art industrial Z-mixer (bottom line) and the optimised industrial Z-mixer design (top line) generated by the method 400 of FIG. 4, it can be seen that the optimised design achieved a mixing rate of 2.48 seconds (i.e. mixing is asymptotically closer by 50% to perfect mixing every 2.48 seconds). This is a 7.5-fold improvement over the industry-standard design mixing rate 18.61 seconds (i.e. mixing is asymptotically closer by 50% to perfect mixing every 18.61 seconds).
[0154] Thus the method 400 autonomously found an optimised exotic Z-blade design that achieved a 7.5 fold improvement in mixing rate, leading to a significantly higherDocket No. P361697GB throughput, more effective mixing and greater energy efficiency, in a way which could not feasibly or reliably have been found manually by trial and error and prototyping, or by other optimisation approaches.
[0155] To validate the design, the optimisation can be run with a range of different input parameters for the powders, including a multitude of powder-sizes, cohesive and free- flowing powders, and various different contact parameters such as the friction coefficients to simulate a broader range of realistic industrial powders. The resulting geometries all resembled similar key design parameters as stated above, leading to the conclusion that the design generated approaches what appears to approach a global optimum based on the knowledge and observation of the system used to perform the simulation and optimisation, i.e. a mixer design that appears, based on the simulation, to approach an optimal outcome across the different observed ranges of powders. However, to reliably achieve an optimum design that will perform well in practice for an intended function and an intended fluid and / or particulate matter, it is useful to calibrate the parameters used in the physics simulation program 114 for the physics model of the fluid and / or particulate matter.
[0156] Thus turning to FIG. 14, this illustrates an example computer-implemented method 1400 of calibrating the properties of the fluid and / or particulate matter modelled in the four dimensional computational physics simulation program in the method of FIG. 4 in accordance with aspects of the present disclosure. FIG. 14 illustrates an example routine for summary. Although the example routine depicts a particular sequence of operations, the sequence may be altered without departing from the scope of the present disclosure. For example, some of the operations depicted may be performed in parallel or in a different sequence that does not materially affect the function of the routine. In other examples, different components of an example device or system that implements the routine may perform functions at substantially the same time or in a specific sequence.
[0157] By this method 1400, it is sought to calibrate the particle properties of the simulated fluid and / or particulate matter against the behaviour of a corresponding real fluid and / or particulate matter using the same or a similar processing environment, or, preferably, a standard characterisation device. For example, this approach can be used to measure and implement the particle size distribution or other properties of the matter, then reproduce the properties using a digital model of an experimental setup of the processing environment or standard characterisation device.
[0158] The dynamics of dense particulate systems are primarily affected by particle surface interactions (e.g., friction, restitution, cohesion) and geometrical effects (e.g., walls,Docket No. P361697GB blades, rotation rates). As the present-day scientific understanding of particulate dynamics is very poor - e.g., even the simplest particles, such as coffee, may exhibit solid (e.g. packed coffee), liquid (e.g. flowing grounds) and gaseous (e.g. air flow entrainment) behaviours concurrently -, the particle properties used in even the most accurate modelling techniques require iterative calibration.
[0159] One of the most accurate dense granular flow modelling techniques currently available for many feasible industrial-scale simulations is the Discrete Element Method (DEM), which considers individual particles and their pairwise contacts using sophisticated contact force models (e.g., Hertz-Mindlin normal and tangential frictional force with hysteretic shear, Johnson-Kendall-Roberts adhesion model) that are then integrated following Newtonian translational and Eulerian rotational mechanics using time increments of under 10'5seconds (the time steps used can vary and be chosen dependent on the system and materials being modelled). Typically, hundreds to millions of particles are simulated using DEM for seconds or minutes of simulation time to investigate complex granular phenomena - as such, this modelling technique is highly computationally-demanding, routinely requiring hours to weeks of real time on state-of-the-art high-performance computing platforms, scaling up to thousands of CPUs and GPUs. It is therefore important to ensure the physical model configured in the physics simulation program 114 is as close to reality as possible.
[0160] Thus, in method 1400, the physics simulation program 114 may be configured to be usable to calibrate the properties of the fluid and / or particulate matter modelled in the four dimensional computational physics simulation program based on empirical measurements such that the simulation accurately recreates the performance of the modelled mechanical part in performing its intended function in interacting with a model of the fluid and / or particulate matter in a model of the processing environment of the physical processing machine in intended use. The digital model of the physical processing machine may be the same or similar to that which is to be optimised, or is for characterising a representative fluid and / or particulate media. The model of the processing environment of the physical machine includes a model of the representative fluid and / or particulate media for interaction with the part in the processing environment.
[0161] In step 1404, values for properties of the modelled fluid and / or particulate matter in the computational physics simulation program may be input based on measurement of the modelled fluid and / or particulate matter or on reference data.Docket No. P361697GB
[0162] For this, in the example of the Z-mixer, a powder is chosen that will be representative of potential applications of the Z-mixer, or if optimising for a specific process of a given powder, the actual powder could be used. To make the optimised design more general, however, a monocrystalline cellulose (MCC) powder has been chosen which has particle properties representative of some materials used in the pharmaceutical industry and food industry.
[0163] The exact particle size distribution (PSD) is measured using an optical analyser such as the Sympatec QICPIC. As the granular dynamics of polydisperse particles are often different to that of monodisperse powders, the measured PSD will be accurately implemented in the Discrete Element Method simulation.
[0164] A rotating drum angle of repose tester - in this case the Granutools GranuDrum - is used as the standard physical processing machine for characterising a representative fluid and / or particulate media to experimentally characterise the MCC powder as it reproduces the dense granular flow regimes found in Zmixers.
[0165] The drum is half filled and the free-flowing surface formed by the particles as the half-filled drum is rotated is closely tied to the frictional and cohesive properties of the powder, but - as typical with granular materials - in a highly non-linear, difficult to predict fashion.
[0166] Images are captured of the rotating drum at different rotation rates to capture multiple flow regimes - accurately simulating multiple flow states will later ensure that our calibrated particle properties are truly capturing the physical properties of the real MCC powder, and we can therefore “take the particles out” of the drum and place them in a Z- mixer chamber. Images of the experiment are shown in the left column of FIG. 15.
[0167] The DEM digital model of the granular rotating drum is set up as in step 1402 including inputting the experimental parameters in step 1406 obtained through measurement using the experimental machine, such as the particle size distribution and density, drum size, rotation rate, camera position, image acquisition.
[0168] Then, in steps 1408 to 1414, the method iteratively calibrates the frictional and cohesive properties of the DEM contact models used chosen to be those parameters which most significantly affect dense granular flows - that is, “sliding friction” (i.e., opposition to translational motion due to the particle surface), “rolling friction” (i.e., opposition to rotational motion due to the particle shape), “cohesive energy density” (i.e., adhesion between particles due to surface chemistry or liquid bridges). The calibration varies the sliding friction, rolling friction and cohesive energy density of the digital model, runningDocket No. P361697GB the DEM simulation of the rotating granular drum for each contact parameter combination, capturing the resulting free surface shape and comparing it with the experimentally-captured images and computing a scalar discriminating factor, generally called “error”. Importantly, multiple drum rotation rates are evaluated concurrently, e.g., 15 RPM (corresponding to the “rolling regime” of the drum) and 45 RPM (corresponding to the “cascading regime” of the drum). The goal of calibration is to find the contact parameters that reduce the errors to near-zero - i.e., the simulation reproduces the experimental results at different powder flow regimes.
[0169] For this, the method 1400 thus includes, at step 1408, generating a simulation of the performance of the digital model of the physical processing machine for the representative operating conditions. Then, at step 1410, the method includes comparing one or more metrics of the behaviour of the modelled fluid and / or particulate matter in the simulation of the digital model of the physical processing machine with the data representative of the experimental characterisation of the behaviour of the modelled fluid and / or particulate matter in the physical processing machine. Then at decision step 1412, if the error is not below a threshold value at decision step 1412, the method proceeds to step 1414 and adjusts the properties of the modelled fluid and / or particulate matter in the computational physics simulation program. This proceeds until the error is below a threshold value and the final properties of the modelled fluid and / or particulate matter in the computational physics simulation program.
[0170] Once a calibrated set of particle properties is found, it is validated at flow states different to the ones used for calibration - this is an essential step that guarantees the physicality of the results: virtually all statistical models (correlations, fitted equations, surrogate models, neural networks) fail outside their training range, or with data outside the range of values they have been fitted with. If the DEM granular drum simulation that was calibrated at 15 and 45 RPM can reproduce the experimental results at 10 RPM and 30 RPM - again, without having been specifically calibrated at these values - then the true physical particle properties have been found, and we have proven that we can simulate the particles in different dense granular flow setups and trust the quantitative, physical accuracy of the results.
[0171] Thus the method 1400 may also include validating the calibrated properties of the modelled fluid and / or particulate matter in the computational physics simulation program by: receiving data representative of the experimental characterisation of the behaviour of the fluid and / or particulate matter during different representative operation conditions (e.g. Rotation rates) of the physical processing machine; generating a simulation of theDocket No. P361697GB performance of the digital model of the physical processing machine for the different representative operating conditions and comparing one or more metrics of the behaviour of the modelled fluid and / or particulate matter in the digital model derived from the simulation with the same metrics derived from the data representative of the experimental characterisation of the behaviour of the fluid and / or particulate matter during operation of the physical processing machine. If the metrics of the behaviour of the modelled fluid and / or particulate matter derived from the simulation match the metrics derived from the experiment with an error below a threshold validation value, the calibrated properties are thus validated.
[0172] As can be seen in FIG. 15, the simulation with the calibrated properties has been validated at different rotation rates.
[0173] As an output of the optimisation method 400 (which may follow calibration method 1400), one or more optimised geometric designs for a mechanical part may be produced. FIG. 16 illustrates an example method of manufacturing and causing to be manufactured a geometric design for a mechanical part optimised to perform an intended function generated by the method of FIG. 4, accordance with aspects of the present disclosure.
[0174] FIG. 16 illustrates an example method 1600 of manufacturing and causing to be manufactured a geometric design for a mechanical part optimised to perform an intended function generated by the method of FIG. 4. Although the example method 1600 depicts a particular sequence of operations, the sequence may be altered without departing from the scope of the present disclosure. For example, some of the operations depicted may be performed in parallel or in a different sequence that does not materially affect the function of the method 1600. In other examples, different components of an example device or system that implements the method 1600 may perform functions at substantially the same time or in a specific sequence.
[0175] The method 1600 includes generating optimised model(s) for the mechanical part at step 1602, using for example, the method 400.
[0176] The method 1600 may then optionally include generating instructions for causing at least one part or one mould to be manufactured based on a final optimised CAD model at step 1604. The computer-implemented method may also include causing or generating data or instructions for causing at least one part or one mould to be manufactured based on a final optimised CAD model, the data or instructions optionally being instructions for controlling an additive manufactuing machine such as a 3D printer or for operating one or more production machines to form the part or the mould. The generated data may be suchDocket No. P361697GB that it is usable only for causing at least one part or one mould to be manufactured based on a final optimised CAD model, and for no other purpose including study.
[0177] The method 1600 may then include actually manufacturing at least one part or one mould based on a final optimised CAD model at step 1606.
[0178] Features, integers, characteristics or groups described in conjunction with a particular aspect, embodiment or example of the invention are to be understood to be applicable to any other aspect, embodiment or example described herein unless incompatible therewith. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and / or all of the steps of any method or process so disclosed, may be combined in any combination, except combinations where at least some of such features and / or steps are mutually exclusive. The invention is not restricted to the details of any foregoing embodiments. The invention extends to any novel one, or any novel combination, of the features disclosed in this specification (including any accompanying claims, abstract and drawings), or to any novel one, or any novel combination, of the steps of any method or process so disclosed. In particular, any dependent claims may be combined with any of the independent claims and any of the other dependent claims.
[0179] Each feature disclosed in this specification (including any accompanying claims, abstract and drawings), may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise. Thus, unless expressly stated otherwise, each feature disclosed is one example only of a generic series of equivalent or similar features. The invention is not restricted to the details of any foregoing embodiments. The invention extends to any novel one, or any novel combination, of the features disclosed in this specification (including any accompanying claims, abstract and drawings), or to any novel one, or any novel combination, of the steps of any method or process so disclosed. The claims should not be construed to cover merely the foregoing embodiments, but also any embodiments which fall within the scope of the claims.
Claims
Docket No. P361697GBCLAIMS1. A computer-implemented method of autonomously generating a geometric design for a mechanical part optimised to perform an intended function by interacting with a fluid and / or particulate matter in an operating environment, the method comprising: for a set of free parameters from which a computer aided design, CAD, kernel program is configured to generate a possible model for the mechanical part based on a value selected for each parameter, each free parameter having a range of possible values and representing a predictably controllable aspect of the possible geometry of the mechanical part to be manufactured, the free parameters together defining a parameter space to be searched, initialising a search distribution across the parameter space; for each successive epoch, iteratively: generating a plurality of sets of candidate parameter values based on sampling the current search distribution across the parameter space; generating a plurality of CAD models for the mechanical part using the CAD kernel program, each of the plurality of CAD models being based on one of the plurality of generated sets of candidate parameter values in the parameter space, the generated plurality of CAD models having a diversity of candidate geometries for the mechanical part; generating a simulation of the performance of the modelled mechanical part for each model of the plurality of generated CAD models for that epoch using a four dimensional computational physics simulation program, the physics simulation program being configured to simulate the performance of the modelled mechanical part in performing its intended function interacting with a model of the fluid and / or particulate matter in a model of the processing environment in intended use; analysing the simulation of each CAD model for the mechanical part over time to generate a metric selected to quantitatively characterise the performance of the CAD model against one or more objective criteria to be optimised for; selecting a subset of the generated CAD models for that epoch having a quantitatively better performance against the objective criteria based on the generated metric for each model; based on the selected subset of generated CAD models, updating the search distribution across the parameter space to reflect the distribution of the parameter values corresponding to the selected subset of generated CAD models in the parameter space; and:Docket No. P361697GB proceeding to the next epoch to generate, simulate and analyse evolved CAD models having candidate geometries with features based on combinations of free parameters synthesised across the updated search distribution.
2. The computer-implemented method of claim 1, further comprising stopping the iteration to the next epoch if the uncertainty in the search distribution falls below a threshold value, optionally a threshold standard deviation for the search distribution.
3. The computer-implemented method of claim 1 or 2, further comprising selecting a final optimised CAD model for the mechanical part based on the search distribution in the final epoch.
4. The computer-implemented method of any one of claims 1 to 3, the method further comprising causing or generating data or instructions for causing at least one part or one mould to be manufactured based on a final optimised CAD model, the data or instructions optionally being instructions for controlling a 3D printer or for operating one or more production machines to form the part or the mould.
5. The computer-implemented method of any one of claims 1 to 4, the method further comprising manufacturing at least one part or one mould based on a final optimised CAD model.
6. The computer-implemented method of any one of claims 1 to 5, wherein generating a simulation of the performance of the modelled mechanical part for each model of the plurality of generated CAD models comprises using the four dimensional computational physics simulation program to generate the simulations for each model in parallel.
7. The computer-implemented method of any one of claims 1 to 6, further comprising calibrating the properties of the fluid and / or particulate matter modelled in the four dimensional computational physics simulation program based on empirical measurements such that the simulation accurately recreates the performance of the modelled mechanical part in performing its intended function in interacting with a model of the fluid and / or particulate matter in a model of the processing environment in intended use.
8. The computer-implemented method of claim 7, the method further comprising: building, in the four dimensional computational physics simulation program, as a digital model of a physical processing machine for use in model calibration, wherein the physical processing machine is the same or similar to that which is to be optimised, or is forDocket No. P361697GB characterising a representative fluid and / or particulate media, a model of the processing environment of the physical machine including a model of the representative fluid and / or particulate media for interaction with the part in the processing environment; inputting values for properties of the modelled fluid and / or particulate matter in the computational physics simulation program based on measurement of the modelled fluid and / or particulate matter or on reference data; receiving data representative of the experimental characterisation of the behaviour of the fluid and / or particulate matter during representative operation conditions of the physical processing machine; and calibrating the properties of the modelled fluid and / or particulate matter in the computational physics simulation program by iteratively: generating a simulation of the performance of the digital model of the physical processing machine for the representative operating conditions; comparing one or more metrics of the behaviour of the modelled fluid and / or particulate matter in the digital model derived from the simulation with the same metrics derived from the data representative of the experimental characterisation of the behaviour of the fluid and / or particulate matter during operation of the physical processing machine; and adjusting the properties of the modelled fluid and / or particulate matter in the computational physics simulation program; until the metrics of the behaviour of the modelled fluid and / or particulate matter derived from the simulation match the metrics derived from the experiment with an error below a threshold value, such that the physics simulation program is calibrated to produce a simulated behaviour that recreates the experimental behaviour of the physical processing machine for representative operation conditions.
9. The computer-implemented method of claim 8, further comprising validating the calibrated properties of the modelled fluid and / or particulate matter in the computational physics simulation program by: receiving data representative of the experimental characterisation of the behaviour of the fluid and / or particulate matter during different representative operation conditions of the physical processing machine; generating a simulation of the performance of the digital model of the physical processing machine for the different representative operating conditions;Docket No. P361697GB comparing one or more metrics of the behaviour of the modelled fluid and / or particulate matter in the digital model derived from the simulation with the same metrics derived from the data representative of the experimental characterisation of the behaviour of the fluid and / or particulate matter during operation of the physical processing machine; and validating that the metrics of the behaviour of the modelled fluid and / or particulate matter derived from the simulation match the metrics derived from the experiment with an error below a threshold validation value.
10. The computer-implemented method of any one of claims 1 to 9, wherein the four dimensional computational physics simulation program simulates the performance of the modelled mechanical part in performing its intended function interacting with a model of the fluid and / or particulate matter in a model of the processing environment in intended use using one or more methods selected from a group including a:Discrete Element Method;Computational Fluid Dynamics Method;Finite Element Method;Monte Carlo Method; particle-in-cell method; and multiphase particle-in-cell method.I E The computer-implemented method of any one of claims 1 to 10, wherein the metric selected to quantitatively characterise the performance of the CAD model against one or more objective criteria to be optimised for is non-linear, noisy, discontinuous, non-convex across the parameter space, and wherein the evolving of the CAD models from one epoch to the next causes the optimisation to escape local optima and reliably seek a global optimum.
12. The computer-implemented method of any one of claims 1 to 11, wherein the mechanical part is driven or caused or allowed to move to perform its intended function by interacting with a fluid and / or particulate matter in an operating environment.
13. The computer-implemented method of any one of claims 1 to 12, wherein the generated CAD models are for optimising the geometric design of plural mechanical parts that work together to perform an intended function for processing the fluid and / or particulate matter in the processing environment.
14. The computer-implemented method of any one of claims 1 to 13, further comprising, for each of the plurality of generated CAD models for the mechanical part, validating that eachDocket No. P361697GB model satisfies operating constraints using the physics simulation program being to simulate the range of motion of the modelled mechanical part in performing its intended function in a model of the processing environment in intended use, and discarding CAD models that are not operationally viable.
15. The computer-implemented method of any one of claims 1 to 14, wherein the computer aided design, CAD, kernel program is configured to generate a possible model for the mechanical part using the values of at least a subset of the free parameters to control one or more of the number, position, orientation, size, shape and scale or as a direct input value of one or more fixed or control points, curvature values, surfaces, volumes, features.
16. The computer-implemented method of any one of claims 1 to 15, wherein the computer aided design, CAD, kernel program is configured to generate a possible model for the mechanical part limited by one or more design constraints including a manufacturability of the part, the mounting locations for the part, the size and bounds for the part, and limitations arising from the material properties for the part.
17. The computer-implemented method of any one of claims 1 to 16, further comprising meshing the CAD models for the mechanical part for use in the simulation by the four dimensional computational physics simulation program.
18. The computer-implemented method of any one of claims 1 to 17, wherein the iterative method is scripted to loop through successive epochs to generate CAD models, simulate their operation, analyse their performance and adjust the search distribution to evolve the designs of the CAD models for the next epoch.
19. The computer-implemented method of any one of claims 1 to 18, wherein the metric is selected to quantitatively characterise the performance of the CAD model against one or more objective criteria selected from the group including: a mixing metric; a grinding metric; a size reduction metric; a coating metric; a purification metric; a reaction metric.Docket No. P361697GB20. The computer-implemented method of any one of claims 1 to 19, wherein the metric is selected to quantitatively characterise the performance of the CAD model against multiple objective criteria to be optimised for.
21. The computer-implemented method of any one of claims 1 to 20, wherein the search distribution is selected to have a multivariate Gaussian distribution along each of the parameters in the parameter space, and wherein updating the search distribution across the parameter space to reflect the distribution of the parameter values corresponding to the selected subset of generated CAD models includes updating the mean and covariance values of the multivariate Gaussian distribution such that the updated search distribution is representative of the selected subset of generated CAD models.
22. The computer-implemented method of any one of claims 1 to 21, wherein the parameter space further includes, in addition to the set of free geometric parameter values, one or more free operational parameters for the operation of the mechanical part in the processing environment or for operation of the processing machine or processing environment more generally, the method further including, in each epoch: additionally generating candidate operational parameter values based on sampling the current search distribution across the parameter space; generating a simulation of the performance of the modelled mechanical part for each model of the plurality of generated CAD models for the corresponding candidate operational parameter values for that epoch using a four dimensional computational physics simulation program; such that the iterative method further optimises the parameters for the operation of the mechanical part, as well as the geometry of the mechanical part.
23. A non-transitory computer-readable storage medium including instructions that, when executed by one or more processors of a computer, configure the computer to perform the method of any one of claims 1 to 21.
24. A computing apparatus for autonomously generating a geometric design for one or more mechanical parts optimised to perform an intended function by interacting with a fluid and / or particulate matter in an operating environment, the computing apparatus comprising: one or more processors; and a memory storing instructions that, when executed by the processor, configure the computing apparatus to:Docket No. P361697GB implement a computer aided design, CAD, kernel program configured to generate a possible model for the mechanical part based on a value selected for each parameter of a set of free parameters, each free parameter having a range of possible values and representing a predictably controllable aspect of the possible geometry of the mechanical part to be manufactured, the free parameters together defining a parameter space to be searched; implement a four dimensional computational physics simulation program configured to simulate the performance of the modelled mechanical part in performing its objective function interacting with a model of the fluid and / or particulate matter in a model of the processing environment in intended use; the instructions further configuring the computing apparatus to: for the set of free parameters, initialise a search distribution across a parameter space; for each successive epoch, iteratively: generate a plurality of sets of candidate parameter values based on sampling the current search distribution across the parameter space; generate a plurality of CAD models for the mechanical part using the CAD kernel program, each of the plurality of CAD models being based on one of the plurality of generated sets of candidate parameter values in the parameter space, the generated plurality of CAD models having a diversity of candidate geometries for the mechanical part; generate a simulation of the performance of the modelled mechanical part for each model of the plurality of generated CAD models for that epoch using the four dimensional computational physics simulation program; analyse the simulation of each CAD model for the mechanical part over time to generate a metric selected to quantitatively characterise the performance of the CAD model against one or more objective criteria to be optimised for; select a subset of the generated CAD models for that epoch having a quantitatively better performance against the objective criteria based on the generated metric for each model; based on the selected subset of generated CAD models, update the search distribution across the parameter space to reflect the distribution of the parameter values corresponding to the selected subset of generated CAD models in the parameter space; and:Docket No. P361697GB proceed to the next epoch to generate, simulate and analyse evolved CAD models having candidate geometries with features based on combinations of free parameters synthesised across the updated search distribution.
Citation Information
Patent Citations
Optimizing design parameters using a simulation neural network
WO2023144383A1
Adsorbent structures and method and system for designing adsorbent structures
WO2024103114A1