Running multiple experiments simultaneously on an array of chemical reactors

A method for executing multiple chemical experiments in parallel may be provided. The method comprises receiving a list of actions to be performed for synthesizing a chemical product. Thereby, the actions correspond to at least two chemical partial reactions and the list comprises a delimiter symbol separating two chemical partial reactions, determining identical chemical partial reactions, and building a reaction commonality tree (RCT) of the chemical reactions. Furthermore, the method comprises executing a plurality of the identical chemical partial reactions independent of a sequence of chemical partial reactions of the reaction commonality tree only once. Each of the identical chemical partial reactions is executed in a different chemical reactor and each resulting intermediate product has a quantity of the sum of the related identical chemical partial reactions. The method also comprises, storing the intermediate chemical products in a separate container, and executing remaining chemical partial reactions according to the RCT.

BACKGROUND

The invention relates generally to a method for executing multiple chemical experiments, and more specifically, to a method for executing multiple chemical experiments in parallel on an array of chemical reactors. The invention relates further to a chemical reaction control system for executing multiple chemical experiments in parallel on an array of chemical reactors, and program products.

SUMMARY

According to one aspect of the present invention, a method for executing multiple chemical experiments in parallel on an array of chemical reactors may be provided. The method may include receiving a list of actions to be performed for synthesizing a chemical product, where the list of actions may correspond to at least two chemical partial reactions, where the list may include a delimiter symbol separating each two chemical partial reactions in the list of actions, determining identical chemical partial reactions in the list of actions, and building a reaction commonality tree of the chemical partial reactions according to subsequent points in time in the list of actions.

Additionally, the method may include controlling and executing a plurality of the identical chemical partial reactions independent of a sequence of chemical partial reactions of the reaction commonality tree only once, where each of the plurality of identical chemical partial reactions may be executed in a different reactor of the array of chemical reactors, where each resulting intermediate product may have a quantity required by at least the sum of the related identical chemical partial reactions, storing each complete quantity of identical related intermediate chemical products in a separate container, and controlling an executing the chemical partial reactions according to the reaction commonality tree, thereby using at least in parts the stored intermediate chemical products.

According to another aspect of the present invention, a chemical reaction control system for executing multiple chemical experiments in parallel on an array of chemical reactors may be provided. The chemical reaction control system may include receiving means adapted for receiving a list of actions to be performed for synthesizing a chemical product, where the list of actions corresponds to at least two chemical partial reactions, where the list of actions may include a delimiter symbol separating each two chemical partial reactions in the list of actions, determining means adapted for determining identical chemical partial reactions in the list of actions, and building means adapted for building a reaction commonality tree of the chemical partial reactions according to subsequent points in time in the list of actions.

Moreover, the chemical reaction control system may include a first controller means adapted for controlling an execution of a plurality of the identical chemical partial reactions independent of a sequence of chemical partial reactions of the reaction commonality tree only once, where each of the plurality of identical chemical partial reactions may be executed in a different reactor of the array of chemical reactors, where each resulting intermediate product may have a quantity required by at least the sum of the related identical chemical partial reactions, and storage means adapted for storing each complete quantity of identical related intermediate chemical products in a separate container, and a second controller means adapted for controlling an execution of the chemical partial reactions according to the reaction commonality tree, thereby using at least in parts the stored intermediate chemical products.

The proposed method for executing multiple chemical experiments in parallel on an array of chemical reactors may offer multiple advantages, technical effects, contributions and/or improvements:

The proposed concept allows an acceleration and automation of at least in parts complex chemical reactions using in an array of chemical reactors (which may be a part of one or more chemical robots). Often, longer, more complex chemical reactions require intermediate steps, denoted here as partial chemical reactions, producing intermediate products which may be used in later stages of the longer, more complex chemical reactions. Thereby, in different stages of a longer list of partial chemical reactions, a repetition of the production of the intermediate product may be required. The here proposed concept addresses this situation advantageously by pulling identical partial chemical reactions together, although, in the sequence of the list of actions they are, so to speak, out of order, and execute the partial chemical reaction only once, thereby producing the complete required amount of the intermediate product for the complete list or lists of actions.

Different chemical reactions may be executed in parallel on different ones of the reactors of the array of chemical reactors, thereby increasing the total throughput of experiments through the reaction chambers significantly. This way, many more chemical experiments may be run in parallel, thereby increasing the productivity of the staff and the usage level of the equipment advantageously. Also the use of resources may be improved because executing a chemical reaction only once instead of several times may help to reduce the consumption of chemicals, energy and washing ingredients.

This may result in a faster development of new pharmaceutical products and may help to accelerate the depreciation time of the often very expensive equipment.

In the following, additional embodiments of the inventive concept will be described.

According to one embodiment, the method may include assigning a required number of the chemical reactors to one of the partial chemical reactions. Preforming one chemical reaction may include several sub-reaction-steps where a stable intermediate product is available. Hence, the reaction needs to be performed and has a flow of different sub-steps. If, e.g., a first reactant may need to be mixed with a catalyst under certain predefined environmental conditions before it may react with a second reactant under different predefined environmental conditions, the first sub-step may be performed in one reactor and the second sub-step may be performed in a second reactor.

According to one permissive embodiment of the method, the assigning may be performed under the constraint indicative of having more chemical partial reactions than chemical reactors may be available. In such a case, these intermediate products, which may be more dangerous, may be produced at a later time, whereas such intermediate products being more stable can be produced earlier in a longer, multi-step chemical process.

According to one embodiment of the method, the steps of receiving, determining, building and assigning may be performed by a program service. This may be a remote service. Separating the technical domains of controlling an at least in parts mechanical system, i.e., the chemical robot with its array of substances, and the controlling information technology may have the advantage that each domain specialist may focus on his/her core competency. Additionally, those controlling the operation of the chemical robot may be located remote to the actual, potentially dangerous, chemical experiment.

The remote program service may be provided by a proprietary environment, but may also advantageously be provided by a cloud computing system making use of all advantages of a cloud-computing deployment.

According to one possible embodiment of the method, the delimiter represents a store, e.g., in the form of the term “STORE”. Wherever this keyword is found in the string of the chemical program, an intermediate product may be available which can be kept in a special intermediate product container for later use in the chemical reaction process steps. Thus, an intermediate product may be produced in excess of the amount actually required if the same intermediate product may be required time-wise later if also other chemical reactions/programs have been received or are selected. This way, the overall process comprising a plurality of chemical programs may be optimized.

According to preferred embodiments of the method, the chemical reactors may be selected out of the group comprising batch reactors, continuous stirred tank reactors, plug flow reactors, semi-batch reactors, and microfluidic reactors. Reactors of these types are known in the field of automated or semi-automatic chemical experiments. Additionally, also different types of reactor types may be used in a mixed mode as long as they may be connectable to the area of containers comprising the chemical reactants.

According to one preferred embodiment, the method may also include determining the quantity required by at least the sum of the related identical chemical partial reactions according to a function comprising at least one out of the following arguments: the sum of quantities required to synthesize the respective intermediate product. It is also possible to use a first multiplication factor if the intermediate product is a solid compound, a second multiplication factor if the intermediate product is a liquid, and/or a third multiplication factor received via a user interface. This way, at least the sum of quantities required to synthesize the intermediate products for the chemical programs in question may be produced, thereby reflecting a loss of reactants due to being left in one of the reactors and be washed out during an intermediate cleaning process.

According to one optional embodiment, the method may also include producing one of the intermediate products in parallel in different ones of the chemical reactors. This may be done due to a limited capacity of one of the reactors or to speed up the production of the selected one of the intermediate products in order to reach a required amount of the specific intermediate product.

According to an advanced embodiment of the method, the chemical product, in particular the end product, may be a plurality of chemical products. This may, in particular, be interesting in the field of oil refineries or similar experimental environments.

DETAILED DESCRIPTION

Performing chemical experiments for a synthesis of new molecules in the chemical, biochemical or pharmaceutical area is time-consuming and typically labor-intensive. In order to partially automate such synthesis experiments, chemical robots have been introduced allowing a software controlled experiment designed in which a limited number of ingredients for the experiments may react, e.g., a reaction chamber to produce a designed experiment output instead of conducting such wet-lab experiments by humans. Such chemical robots typically source the reactants from an array of potential reactants in which the reactants are stored. Time is a major constraint in conducting the multitude of chemical experiments. However, due to the many required manual tasks to control such semi-automated experiment environments, it cannot be guaranteed that the equipment makes best use of the time available.

In this context, some documents have been published for processing biomass. Thereby, a process for the production cellulosic ethanol with 100% biogenic carbon content is described. Several tools for a partial process automation are involved.

Additionally, a method for analyzing process streams comprising five or more different hydrocarbon-containing components where at least one process is streamlined and is operatively connected to an online IR spectrometer and to an online gas chromatograph.

However, a disadvantage of known solutions is that they do not disclose how a chemical robot comprising a plurality of chemical reactors can be used to perform a plurality of reaction executions if multiple of such reaction executions may have identical initial reaction steps. Hence, a sub-optimal use of synthesis robots may be the result. Hence, in order to save time and resources, there is a need to automatically detect common reaction subtrees and execute corresponding reactions with only little overhead.

The term ‘array of chemical reactors’ may denote a plurality of different or identical chemical reactors connectable to an array of containers comprising reactants for a plurality of chemical experiments. In general, a chemical reactor may be an enclosed volume in which a chemical reaction may take place. A chemical reactor may also be part of a chemical robot. Actually, a chemical robot may include a plurality of chemical reactors and containers comprising reactants, as well as, containers to store intermediate products, as well as, the end product.

The term ‘list of actions’ may denote process steps required to produce a chemical end product. In order to achieve this objective, a plurality of intermediate products may be produced in the sequence of actions to arrive at the chemical end product.

The term ‘chemical product’ may denote a result of a chemical reaction or a series of chemical reactions. In order to receive the chemical end product it may be required to produce one or more intermediate products along the overall reaction process.

The term ‘chemical partial reaction’ may denote a sub-step of a complete chemical reaction to produce a chemical end product. Each chemical partial reaction may provide a stable (or at least semi-stable) intermediate product which may be used for further chemical partial reactions on the way to the chemical end product.

The term ‘delimiter symbol’ may denote a specific symbol of combinations of symbols, e.g., a string of predefined characters (staring with one character as a minimum), in order to separate different chemical partial reactions. Whenever a delimiter symbol is found after a chemical partial reaction the resulting intermediate product may be stable and storable.

The term ‘identical chemical partial reaction’ may denote a chemical partial reaction requiring identical reactants and resulting in the same intermediate product. Hence, identical chemical partial reactions may be required along the complete experiment process but at different points in time.

The term ‘reaction commonality tree’ may denote a data structure indicative of the sequence of partial chemical reactions and their related sequence of times at which they need to be performed in the overall chemical experiment.

The term ‘cloud computing system’ may denote a remote computing system delivering an application service under the paradigm of cloud computing.

Characteristics are as follows:

Service models are as follows:

Deployment Models are as follows:

In the following, a detailed description of the figures will be given. All instructions in the figures are schematic. Firstly, a block diagram of an embodiment of the inventive method for executing multiple chemical experiments in parallel on an array of chemical reactors is given. Afterwards, further embodiments, as well as embodiments of the chemical reaction control system for executing multiple chemical experiments in parallel on an array of chemical reactors, will be described.

FIG.1shows a block diagram of a preferred embodiment of the method100for executing multiple chemical experiments in parallel on an array of chemical reactors, according to an embodiment. The method100includes receiving,102, a list of actions to be performed, in particular, using the chemical reactors, for synthesizing a chemical end product (or a plurality of end products). Thereby, the list of actions may correspond to at least two chemical partial reactions. Furthermore, the list may include a delimiter symbol, e.g., STORE command, separating each two chemical partial reactions in the list of actions. It may be noted that also other delimiter symbols or commands may be used.

The method100includes further determining,104, identical chemical partial reactions in the list of actions; building,106, a reaction commonality tree of the chemical partial reactions according to subsequent points in time in the list of actions; and executing108, a plurality of the identical chemical partial reactions independent of a sequence of chemical partial reactions of the reaction commonality tree only once. Thereby, each of the plurality of identical chemical partial reactions can be executed in a different one of the array of chemical reactors. Additionally, each resulting intermediate product has a quantity required of at least the sum of the related identical chemical partial reactions requiring the intermediate product.

Furthermore, the method100includes storing,110, each complete quantity of identical related intermediate chemical products in a separate container; and executing,112, the chemical partial reactions according to the reaction commonality tree, thereby using at least in parts the stored intermediate chemical product(s). From a program service perspective not all steps of the method may be performed, some of the method steps may only be controlled; this applies in particular to those sub-steps of the method being performed by the chemical robot.

FIG.2shows a block diagram of a chemical reaction system200and an array204of a plurality of reactant containers202together with an array of chemical reactors214,216,218, . . . ,220, according to an embodiment. The reactant containers202are individually connected via pipe layer206to a valve and direction unit208which is on the other side connected via pipe layer210to one or more pipes per chemical reactor214,216,218, . . . ,220. The parallel lines212indicate that more than one pipe may exist between the valve and direction unit208and the individual chemical reactors214,216,218, . . . ,220. On the output side of the chemical reactors214,216,218, . . . ,220—e.g., connected in a 1:1 fashion—a plurality of chemical reaction product containers222exist. These product containers222may also be used for intermediate products from individual ones of the chemical reactors214,216,218, . . . ,220. Additionally, there may be pipe connections224between the product containers222and the valve and direction unit208in order to use intermediate products from the product containers222for subsequent reactions in the chemical reactors214,216,218, . . . ,220to finally produce the chemical (end) product.

FIG.3shows a block diagram300of an embodiment of a reaction commonality tree306, according to an embodiment. In this case, two lists of actions302,304, e.g., chemical programs, are shown in the top portion ofFIG.3. As can be seen, the first4actions are identical in the first list of actions302and the second list of actions304(ADD A, ADD, B, STIR 10 m, HEAT 80 deg). Exemplary, this may be interpreted as “add reactant A, add reactant B, stir the mixture for 10 minutes and heated up to 80° C.”. After the “STORE”, the list of actions differs between the first list of actions302and the second list of actions304. However, the “STORE” suggests that at this point a stable intermediate product has been produced. A multitude of action commands, such as, ADD, STIR, DRY, MIX, etc., may be used.

In the lower part ofFIG.3, the reaction commonality tree306is shown comprising a sub-list308of actions describing a partial chemical reaction based on the first four common actions (as described above). The so produced intermediate product may be used for both leaves of the reaction commonality tree306as list of actions310and list of actions312. It is understandable that this reaction commonality tree306is only a simple example making the fundamental principle comprehensible and that much more complex reaction commonality trees may exist with a much higher number of partial chemical reactions, so that the number of leaves and branches of the reaction commonality tree is much higher.

However, it should be understood that whenever a “STORE” command is shown in any of the list of actions at least one of the chemical reactors214,216,218, . . . ,220may deliver at least an intermediate product into one or more of the product containers222. It should also be understood that the amount of the intermediate product at the root of the reaction commonality tree306shall be enough to be used for both lower level partial chemical reactions described by the action list310and312. There can also be a situation in which different partial chemical reactions are executed in parallel in different chemical reactors producing different intermediate products to be used as different times according to the reaction commonality tree306.

For completeness reasons,FIG.4shows a diagram of an embodiment of the chemical reaction control system400for executing multiple chemical experiments in parallel on an array of chemical reactors. The chemical reaction system400includes receiving means, in particular a reception unit402, adapted for receiving a list of actions to be performed for synthesizing a chemical product. Thereby, the list of actions corresponds to at least two chemical partial reactions and the list can include one or more (typically identical) delimiter symbol/s separating each two chemical partial reactions in the list of actions.

Additionally, the chemical reaction system400includes determining means, in particular determination module404, adapted for determining identical chemical partial reactions in the list of actions, and building means—in particular building unit406—adapted for building a reaction commonality tree of the chemical partial reactions according to subsequent points in time in the list of actions.

Furthermore, the chemical reaction control system400includes first execution means, in particular a first execution controller408, adapted for controlling an execution of a plurality of the identical chemical partial reactions independent of a sequence of chemical partial reactions of the reaction commonality tree only once. Thereby, each of the plurality of identical chemical partial reactions is executed in a different reactor of the array of chemical reactors, where each resulting intermediate product has a quantity required by at least the sum of the related identical chemical partial reactions. The chemical reaction control system also includes storage means, in particular implemented as a portion of the chemical reaction system200, adapted for storing each complete quantity of identical related intermediate chemical products in a separate container, and second execution means, in particular a second execution controller410, adapted for controlling an execution of the chemical partial reactions according to the reaction commonality tree, thereby using at least in parts the stored intermediate chemical products.

It may also be mentioned that the reception unit402, the determination module404, the building unit406, the first execution controller408and the second execution controller410are communicatively coupled for an exchange of electrical signals and messages to enable the functioning of the complete chemical reaction control system400and the connected chemical reaction system200. In particular, the first and the second execution controller408,410can be connected to a plurality of values and sensors and other components like heaters and stirring units (not shown) of the chemical reaction system200. Alternative, the modules and unit may can also be connected via a chemical reaction control system internal bus system412.

Before turning toFIG.5, a set of functional abstraction layers600provided by cloud computing environment700(as shown inFIG.7) is shown inFIG.6and illustrates how parts of the inventive concept—in particular the above-mentioned program service—may be deployed. It should be understood in advance that the components, layers, and functions shown inFIG.6are intended to be only illustrative and embodiments of the invention are not limited thereto. As depicted, the following layers and corresponding functions are provided: hardware and software layers602include hardware and software components. Examples of hardware components include: mainframes604; servers606; RISC (Reduced Instruction Set Computer) architecture-based servers608; blade servers610; storage devices612; networks and networking components614. In some embodiments, software components include network application server software616and/or database software618.

A virtualization layer620provides an abstraction layer from which the following examples of virtual entities may be provided: virtual servers622; virtual storage624; virtual networks626, including virtual private networks; virtual applications and operating systems628; and virtual clients630.

Workload layer644provides examples of functionality for which the cloud computing environment may be utilized. Examples of workloads and functions which may be provided from this layer include: mapping and navigation646; software development and lifecycle management648; virtual classroom education delivery650; data analytics processing652; transaction processing654; and the chemical reaction control system656, for example the chemical reaction control system400inFIG.4.

Embodiments of the invention may be implemented together with virtually any type of computer, regardless of the platform being suitable for storing and/or executing program code.FIG.5shows, as an example, a computing device500suitable for executing program code related to the proposed method.

The computing device500is only one example of a suitable computer system, and is not intended to suggest any limitation as to the scope of use or functionality of embodiments of the invention described herein, regardless, whether the computing device500is capable of being implemented and/or performing any of the functionality set forth hereinabove. In the computing device500, there are components, which are operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with computing device500include, but are not limited to, personal computer systems, server computer systems, thin clients, thick clients, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments that include any of the above systems or devices, and the like. The computing device500may be described in the general context of computer system-executable instructions, such as program modules, being executed by the computing device500. Generally, program modules may include routines, programs, objects, components, logic, data structures, and so on that perform particular tasks or implement particular abstract data types. The computing device500may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed cloud computing environment, program modules may be located in both, local and remote computer system storage media, including memory storage devices.

Referring now toFIG.5, a block diagram of components of the computing device500, in accordance with an embodiment of the present invention is shown. It should be appreciated thatFIG.5provides only an illustration of an implementation and does not imply any limitations with regard to the environments in which different embodiments may be implemented. Many modifications to the depicted environment may be made.

The computing device may include one or more processors502, one or more computer-readable RAMs504, one or more computer-readable ROMs506, one or more computer readable storage media508, device drivers512, read/write drive or interface514, network adapter or interface516, all interconnected over a communications fabric518. Communications fabric518may be implemented with any architecture designed for passing data and/or control information between processors (such as microprocessors, communications and network processors, etc.), system memory, peripheral devices, and any other hardware components within a system.

One or more operating systems510, and one or more application programs511are stored on one or more of the computer readable storage media508for execution by one or more of the processors502via one or more of the respective RAMs504(which typically include cache memory). In the illustrated embodiment, each of the computer readable storage media508may be a magnetic disk storage device of an internal hard drive, CD-ROM, DVD, memory stick, magnetic tape, magnetic disk, optical disk, a semiconductor storage device such as RAM, ROM, EPROM, flash memory or any other computer-readable tangible storage device that can store a computer program and digital information.

The computing device may also include the R/W drive or interface514to read from and write to one or more portable computer readable storage media526. Application programs511on the computing device may be stored on one or more of the portable computer readable storage media526, read via the respective R/W drive or interface514and loaded into the respective computer readable storage media508.

The computing device may also include a display screen520, a keyboard or keypad522, and a computer mouse or touchpad524. Device drivers512interface to display screen520for imaging, to keyboard or keypad522, to computer mouse or touchpad524, and/or to display screen520for pressure sensing of alphanumeric character entry and user selections. The device drivers512, R/W drive or interface514and network adapter or interface516may comprise hardware and software (stored on computer readable storage media508and/or ROM506).

Additionally, chemical reaction control system400for executing multiple chemical experiments in parallel on an array of chemical reactors may be attached to the communications fabric518.

Referring now toFIG.7, illustrative cloud computing environment700is depicted. As shown, cloud computing environment700includes one or more cloud computing nodes70with which local computing devices used by cloud consumers, such as, for example, personal digital assistant (PDA) or cellular telephone74A, desktop computer74B, laptop computer74C, and/or automobile computer system74N may communicate. Cloud computing nodes70may communicate with one another. They may be grouped (not shown) physically or virtually, in one or more networks, such as Private, Community, Public, or Hybrid clouds as described hereinabove, or a combination thereof. This allows cloud computing environment700to offer infrastructure, platforms and/or software as services for which a cloud consumer does not need to maintain resources on a local computing device. It is understood that the types of computing devices74A-N shown inFIG.7are intended to be illustrative only and that cloud computing nodes710and cloud computing environment700can communicate with any type of computerized device over any type of network and/or network addressable connection (e.g., using a web browser).

In a nutshell, the inventive concept may be summarized by the following clauses:

1. A method for executing multiple chemical experiments in parallel on an array of chemical reactors, the method comprising

receiving a list of actions to be performed for synthesizing a chemical product, wherein the list of actions corresponds to at least two chemical partial reactions, wherein the list comprises a delimiter symbol separating each two chemical partial reactions in the list of actions,determining identical chemical partial reactions in the list of actions,building a reaction commonality tree of the chemical partial reactions according to subsequent points in time in the list of actions,executing a plurality of the identical chemical partial reactions independent of a sequence of chemical partial reactions of the reaction commonality tree only once, wherein each of the plurality of identical chemical partial reactions is executed in a different reactor of the array of chemical reactors, wherein each resulting intermediate product has a quantity required by at least the sum of the related identical chemical partial reactions, andstoring each complete quantity of identical related intermediate chemical products in a separate container, andexecuting non identical chemical partial reactions according to the reaction commonality tree, thereby using at least in parts the stored intermediate chemical products.
2. The method according to clause 1, also comprisingassigning a required number of the chemical reactors to one of the partial chemical reactions.
3. The method according to clause 1 or 2, wherein the assigning is performed under a constraint indicative of having more chemical partial reactions than chemical reactors available.
4. The method according to any of the preceding clauses, wherein the steps of receiving, determining, building and assigning is performed by a program service.
5. The method according to clause 4, wherein the program service is executable on a cloud computing system.
6. The method according to any of the preceding clauses, wherein the delimiter represents a store command.
7. The method according to any of the preceding clauses, wherein the chemical reactors are selected out of the group comprising batch reactors, continuous stirred tank reactors, plug flow reactors, semi-batch reactors, and microfluidic reactors.
8. The method according to any of the preceding clauses, also comprisingdetermining the quantity required by at least the sum of the related identical chemical partial reactions according to a function comprising at least one out of the following arguments: the sum of quantities required to synthesize the respective intermediate product, a first multiplication factor if the intermediate product is a solid compound, a second multiplication factor if the intermediate product is a liquid, or a third multiplication factor received from a user interface.
9. The method according to any of the preceding clauses, also comprisingproducing one of the intermediate products in parallel in different ones of the chemical reactors.
10. The method according to any of the preceding clauses, wherein the chemical product is a plurality of chemical products.
11. A chemical reaction control system for executing multiple chemical experiments in parallel on an array of chemical reactors, the chemical reaction control system comprisingreceiving means adapted for receiving a list of actions to be performed for synthesizing a chemical product, wherein the list of actions corresponds to at least two chemical partial reactions, wherein the list comprises a delimiter symbol separating each two chemical partial reactions in the list of actions,determining means adapted for determining identical chemical partial reactions in the list of actions,building means adapted for building a reaction commonality tree of the chemical partial reactions according to subsequent points in time in the list of actions,first controlling means adapted for controlling an executing a plurality of the identical chemical partial reactions independent of a sequence of chemical partial reactions of the reaction commonality tree only once, wherein each of the plurality of identical chemical partial reactions is executed in a different rector of the array of chemical reactors, wherein each resulting intermediate product has a quantity required by at least the sum of the related identical chemical partial reactions, andstorage means adapted for storing each complete quantity of identical related intermediate chemical products in a separate container,second controlling means adapted for controlling an executing of non-identical chemical partial reactions according to the reaction commonality tree, thereby using at least in parts the stored intermediate chemical products.
12. The chemical reaction control system according to clause 11, also comprisingassignment means adapted for assigning a required number of the chemical reactors to one of the partial chemical reactions.
13. The chemical reaction control system according to clause 11 or 12, wherein the assignment means are also adapted to be executed under a constraint indicative of having more chemical partial reactions than chemical reactors available.
14. The chemical reaction control system according to any of the clauses 11 to 13, wherein the receiving means, determination means, building means and assignment means are performed under control of a program service.
15. The chemical reaction control system according to clause 14, wherein the program service is executable on a cloud computing system.
16. The chemical reaction control system according to any of the clauses 11 to 15, wherein the delimiter represents a store command.
17. The chemical reaction control system according to any of the clauses 11 to 16, wherein the chemical reactors are selected out of the group comprising batch reactors, continuous stirred tank reactors, plug flow reactors, semi-batch reactors, and microfluidic reactors.
18. The chemical reaction control system according to any of the clauses 11 to 17, also comprisingdetermination means adapted for determining the quantity required by at least the sum of the related identical chemical partial reactions according to a function comprising at least one out of the following arguments: the sum of quantities required to synthesize the respective intermediate product, a first multiplication factor if the intermediate product is a solid compound, a second multiplication factor if the intermediate product is a liquid, or a third multiplication factor received from a user interface.
19. The chemical reaction control system according to any of the clauses 11 to 18, wherein the chemical reactors are also configurable for producing one of the intermediate products in parallel in different chemical reactors.
20. A computer program product for executing multiple chemical experiments in parallel on an array of chemical reactors, the program instructions being executable by one or more computing systems or controllers to cause the one or more computing systems to,receive a list of actions to be performed for synthesizing a chemical product, wherein the list of actions corresponds to at least two chemical partial reactions, wherein the list comprises a delimiter symbol separating each two chemical partial reactions in the list of actions,determine identical chemical partial reactions in the list of actions,build a reaction commonality tree of the chemical partial reactions according to subsequent points in time in the list of actions,control an execution of a plurality of the identical chemical partial reactions independent of a sequence of chemical partial reactions of the reaction commonality tree only once, wherein each of the plurality of identical chemical partial reactions is executed in a different reactor of the array of chemical reactors, wherein each resulting intermediate product has a quantity required by at least the sum of the related identical chemical partial reactions, and
storing each complete quantity of identical related intermediate chemical products in a separate container,control an execution non identical chemical partial reactions according to the reaction commonality tree, whereby the stored chemical intermediates are at least partially used.