DE102017111926A1 - Process control circuit and method for controlling a processing arrangement - Google Patents
Process control circuit and method for controlling a processing arrangement Download PDFInfo
- Publication number
- DE102017111926A1 DE102017111926A1 DE102017111926.4A DE102017111926A DE102017111926A1 DE 102017111926 A1 DE102017111926 A1 DE 102017111926A1 DE 102017111926 A DE102017111926 A DE 102017111926A DE 102017111926 A1 DE102017111926 A1 DE 102017111926A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- measurement
- state information
- state
- matrix
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
Gemäß verschiedenen Ausführungsformen kann eine Verarbeitungschaltung (108) Folgendes enthalten: eine Datenerfassungsschaltung (102), die konfiguriert ist, Prozessdaten und Messdaten einer Bearbeitungsanordnung (104) zu erfassen, wobei die Prozessdaten mehrere Prozessereignisdaten gemäß mehreren Prozessereignissen enthalten und die Messdaten mehrere Messereignisdaten gemäß mehreren Messereignissen enthalten; eine Datenverschmelzungsschaltung (108), die konfiguriert ist, Zustandsinformationen, wobei die Zustandsinformationen einen Status der Bearbeitungsanordnung (104) repräsentieren, und Genauigkeitsinformationen, die eine Genauigkeit der Zustandsinformationen repräsentieren, bereitzustellen; wobei die Datenverschmelzungsschaltung (108) ferner konfiguriert ist, basierend auf den erfassten Prozessereignisdaten die Zustandsinformationen zu aktualisieren, wodurch die Genauigkeit der Zustandsinformationen verringert wird, und unabhängig vom Aktualisieren der Zustandsinformationen basierend auf den erfassten Messereignisdaten den früheren Zustand der Zustandsinformationen wiederherzustellen, wodurch die Genauigkeit der Zustandsinformationen vergrößert wird, und eine Steuerschaltung (110), die konfiguriert ist, die Bearbeitungsanordnung (104) basierend auf den Zustandsinformationen und/oder basierend auf den Genauigkeitsinformationen zu steuern. According to various embodiments, a processing circuit (108) may include: a data acquisition circuit (102) configured to acquire process data and measurement data of a processing device (104), wherein the process data includes a plurality of process event data according to a plurality of process events and the measurement data includes a plurality of measurement event data corresponding to a plurality of measurement events contain; a data merge circuit (108) configured to provide state information, wherein the state information represents a status of the processing device (104), and provide accuracy information representing an accuracy of the state information; wherein the data fusion circuit (108) is further configured to update the state information based on the acquired process event data, thereby reducing the accuracy of the state information, and to restore the prior state of state information independently of updating the state information based on the acquired measurement event data Status information, and a control circuit (110) configured to control the processing device (104) based on the state information and / or based on the accuracy information.
Description
Technisches GebietTechnical area
Verschiedene Ausführungsformen beziehen sich im Allgemeinen auf eine Prozesssteuerschaltung und ein Verfahren zum Steuern einer Bearbeitungsanordnung.Various embodiments generally relate to a process control circuit and method for controlling a processing arrangement.
Hintergrundbackground
Im Allgemeinen können in vielen Industriezweigen mehr oder weniger komplexe Bearbeitungsanordnungen verwendet werden, um die gewünschten Waren, z. B. elektronische Vorrichtungen, mechanische Vorrichtungen, elektromechanische Vorrichtungen und dergleichen, herzustellen oder zu bearbeiten. Derartige Bearbeitungsanordnungen können mehrere Bearbeitungswerkzeuge oder irgendwelche anderen geeigneten Vorrichtungen zum Bearbeiten der Waren enthalten. In der Halbleiterindustrie kann ein sogenannter Werkzeugpark, der mehrere Bearbeitungswerkzeuge enthält, zum Bearbeiten irgendeines geeigneten Typs des Werkstücks, z. B. zum Bearbeiten eines Wafers, eines Chips, einer Chip-Baugruppe, einer Leiterplatte und dergleichen, verwendet werden. In der Halbleiterindustrie kann das Bearbeiten eines Werkstücks einen oder mehrere Schichtungsprozesse, einen oder mehrere Prozesse des Versehens mit Mustern, eine oder mehrere Temperaturbehandlungen, einen oder mehrere Implantationsprozesse usw. enthalten. Obwohl die Bearbeitungswerkzeuge einzeln gesteuert sein können, kann ein globales Steuersystem verwendet werden, um alle Bearbeitungswerkzeuge zu steuern, z. B. zum Einstellen der jeweiligen Bearbeitungswerkzeuge, zum Festlegen eines oder mehrerer Betriebsparameter der jeweiligen Bearbeitungswerkzeuge oder für eine andere Einstellung der jeweiligen Bearbeitungswerkzeuge. Die lokale und/oder globale (z. B. fabrikweite) Steuerung der jeweiligen Bearbeitungswerkzeuge kann außerdem als Durchlauf-zu-Durchlauf-System (bzw. „Run-to-Run-System“) bezeichnet werden. Im Allgemeinen kann es jedoch schwierig sein, eine große Anzahl von Bearbeitungswerkzeugen zu steuern, die außerdem eine große Anzahl verschiedener Prozesse bezüglich der Datenverarbeitung ausführen.In general, more or less complex processing arrangements can be used in many industries to produce the desired goods, e.g. As electronic devices, mechanical devices, electromechanical devices and the like, manufacture or edit. Such processing arrangements may include multiple processing tools or any other suitable apparatus for processing the goods. In the semiconductor industry, a so-called tool park containing multiple machining tools may be used to machine any suitable type of workpiece, e.g. For processing a wafer, a chip, a chip package, a circuit board, and the like. In the semiconductor industry, machining a workpiece may include one or more layering processes, one or more patterning processes, one or more temperature treatments, one or more implantation processes, and so on. Although the editing tools may be individually controlled, a global control system may be used to control all editing tools, e.g. B. for setting the respective processing tools, for setting one or more operating parameters of the respective processing tools or for a different setting of the respective processing tools. The local and / or global (eg, factory-wide) control of the respective machining tools may also be referred to as a run-to-run system. In general, however, it may be difficult to control a large number of editing tools that also perform a large number of different data processing operations.
ZusammenfassungSummary
Gemäß verschiedenen Ausführungsformen kann eine Verarbeitungsschaltung Folgendes enthalten: eine Datenerfassungsschaltung, die konfiguriert ist, Prozessdaten und Messdaten einer Bearbeitungsanordnung zu erfassen, wobei die Prozessdaten mehrere Prozessereignisdaten gemäß mehreren Prozessereignissen enthalten und die Messdaten mehrere Messereignisdaten gemäß mehreren Messereignissen enthalten; eine Datenverschmelzungsschaltung, die konfiguriert ist, Zustandsinformationen, wobei die Zustandsinformationen einen Status der Bearbeitungsanordnung repräsentieren, und Genauigkeitsinformationen, die eine Genauigkeit der Zustandsinformationen repräsentieren, bereitzustellen; wobei die Datenverschmelzungsschaltung ferner konfiguriert ist, die Zustandsinformationen basierend auf den erfassten Prozessereignisdaten zu aktualisieren, wodurch die Genauigkeit der Zustandsinformationen verringert wird, und unabhängig vom Aktualisieren der Zustandsinformationen den früheren Zustand der Zustandsinformationen basierend auf den erfassten Messdaten wiederherzustellen (engl: „downdate“), wodurch die Genauigkeit der Zustandsinformationen vergrößert wird, und eine Steuerschaltung, die konfiguriert ist, die Bearbeitungsanordnung basierend auf den Zustandsinformationen zu steuern.According to various embodiments, a processing circuit may include: a data acquisition circuit configured to acquire process data and measurement data of a processing device, the process data including a plurality of process event data according to a plurality of process events and the measurement data including a plurality of measurement event data according to a plurality of measurement events; a data merging circuit configured to provide state information, wherein the state information represents a status of the processing device, and to provide accuracy information representing an accuracy of the state information; wherein the data fusion circuit is further configured to update the state information based on the acquired process event data, thereby decreasing the accuracy of the state information, and independently of updating the state information, to restore the previous state of the state information based on the acquired measurement data ("downdate"), whereby the accuracy of the state information is increased, and a control circuit configured to control the processing arrangement based on the state information.
Figurenlistelist of figures
In den Zeichnungen beziehen sich gleiche Bezugszeichen im Allgemeinen überall in den verschiedenen Ansichten auf die gleichen Teile. Die Zeichnungen sind nicht notwendigerweise maßstabsgerecht, wobei die Betonung stattdessen im Allgemeinen auf das Veranschaulichen der Prinzipien der Erfindung gelegt ist. In der folgenden Beschreibung werden verschiedene Ausführungsformen der Erfindung bezüglich der folgenden Zeichnungen beschrieben, worin:
-
1 eine schematische graphische Darstellung einer Prozesssteuerschaltung gemäß verschiedenen Ausführungsformen zeigt, -
2A und2B ein Beispiel einer Operation einer Datenverschmelzungsschaltung gemäß verschiedenen Ausführungsformen zeigen, -
3A eine schematische graphische Darstellung des Betriebs einer Prozesssteuerschaltung gemäß verschiedenen Ausführungsformen zeigt, -
3B eine schematische graphische Darstellung des Betriebs einer Prozesssteuerschaltung gemäß verschiedenen Ausführungsformen zeigt, -
4A bis4E verschiedene Konfigurationen einer Datenverschmelzungsschaltung in einer schematischen graphischen Darstellung gemäß verschiedenen Ausführungsformen zeigen, -
5A und5B ein Beispiel einer Modellmehrdeutigkeit in einer schematischen graphischen Darstellung gemäß verschiedenen Ausführungsformen zeigen, -
6A bis6I verschiedene Konfigurationen einer Datenverschmelzungsschaltung gemäß verschiedenen Ausführungsformen zeigen, -
7A und7B verschiedene Konfigurationen einer Datenverschmelzungsschaltung in einer schematischen Ansicht gemäß verschiedenen Ausführungsformen zeigen, -
8 eine Konfiguration einer Datenverschmelzungsschaltung in einer schematischen Ansicht gemäß verschiedenen Ausführungsformen zeigt, -
9 eine Konfiguration einer Datenverschmelzungsschaltung in einer schematischen Ansicht gemäß verschiedenen Ausführungsformen zeigt, -
10 eine Konfiguration einer Datenverschmelzungsschaltung in einer schematischen Ansicht gemäß verschiedenen Ausführungsformen zeigt, -
11 eine Konfiguration einer Datenverschmelzungsschaltung in einer schematischen Ansicht gemäß verschiedenen Ausführungsformen zeigt, -
12 eine Konfiguration einer Datenverschmelzungsschaltung in einer schematischen Ansicht gemäß verschiedenen Ausführungsformen zeigt, -
13 eine Konfiguration einer Datenverschmelzungsschaltung in einer schematischen Ansicht gemäß verschiedenen Ausführungsformen zeigt, -
14 eine Konfiguration einer Datenverschmelzungsschaltung in einer schematischen Ansicht gemäß verschiedenen Ausführungsformen zeigt, -
15 eine Konfiguration einer Datenverschmelzungsschaltung in einer schematischen Ansicht gemäß verschiedenen Ausführungsformen zeigt, -
16A bis16C verschiedene Konfigurationen einer Datenverschmelzungsschaltung gemäß verschiedenen Ausführungsformen zeigen, -
17A und17B verschiedene Konfigurationen einer Datenverschmelzungsschaltung in einer schematischen Ansicht gemäß verschiedenen Ausführungsformen zeigen, und -
18 einen schematischen Ablaufplan eines Verfahrens zum Betreiben einer Prozesssteuerschaltung gemäß verschiedenen Ausführungsformen zeigt.
-
1 FIG. 2 shows a schematic diagram of a process control circuit according to various embodiments, FIG. -
2A and2 B show an example of an operation of a data fusion circuit according to various embodiments, -
3A FIG. 2 shows a schematic diagram of the operation of a process control circuit according to various embodiments, FIG. -
3B FIG. 2 shows a schematic diagram of the operation of a process control circuit according to various embodiments, FIG. -
4A to4E show various configurations of a data fusion circuit in a schematic diagram according to various embodiments, -
5A and5B show an example of a model ambiguity in a schematic diagram according to various embodiments, -
6A to6I show various configurations of a data fusion circuit according to various embodiments, -
7A and7B show various configurations of a data fusion circuit in a schematic view according to various embodiments, -
8th shows a configuration of a data merging circuit in a schematic view according to various embodiments, -
9 shows a configuration of a data merging circuit in a schematic view according to various embodiments, -
10 shows a configuration of a data merging circuit in a schematic view according to various embodiments, -
11 shows a configuration of a data merging circuit in a schematic view according to various embodiments, -
12 shows a configuration of a data merging circuit in a schematic view according to various embodiments, -
13 shows a configuration of a data merging circuit in a schematic view according to various embodiments, -
14 shows a configuration of a data merging circuit in a schematic view according to various embodiments, -
15 shows a configuration of a data merging circuit in a schematic view according to various embodiments, -
16A to16C show various configurations of a data fusion circuit according to various embodiments, -
17A and17B show various configurations of a data fusion circuit in a schematic view according to various embodiments, and -
18 12 shows a schematic flowchart of a method for operating a process control circuit according to various embodiments.
Beschreibungdescription
Die folgende ausführliche Beschreibung bezieht sich auf die beigefügten Zeichnungen, die zur Veranschaulichung spezifische Einzelheiten und Ausführungsformen zeigen, in denen die Erfindung praktiziert werden kann. Die Ausführungsformen werden in ausreichender Ausführlichkeit beschrieben, um es den Fachleuten auf dem Gebiet zu ermöglichen, die Erfindung zu praktizieren. Es können andere Ausführungsformen verwendet werden, wobei strukturelle, logische und elektrische Änderungen vorgenommen werden können, ohne vom Schutzumfang der Erfindung abzuweichen. Die verschiedenen Ausführungsformen sind nicht notwendigerweise wechselseitig ausschließend, da einige Ausführungsformen mit einer oder mehreren anderen Ausführungsformen kombiniert werden können, um neue Ausführungsformen zu bilden. Verschiedene Ausführungsformen sind im Zusammenhang mit Verfahren beschrieben, während verschiedene Ausführungsformen im Zusammenhang mit Vorrichtungen beschrieben sind. Es kann jedoch erkannt werden, dass die im Zusammenhang mit Verfahren beschriebenen Ausführungsformen ähnlich für die Vorrichtungen gelten können und umgekehrt.The following detailed description refers to the accompanying drawings, which, for purposes of illustration, show specific details and embodiments in which the invention may be practiced. The embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. Other embodiments may be used, structural, logical, and electrical changes being made without departing from the scope of the invention. The various embodiments are not necessarily mutually exclusive, as some embodiments may be combined with one or more other embodiments to form new embodiments. Various embodiments are described in the context of methods, while various embodiments are described in the context of devices. However, it will be appreciated that the embodiments described in connection with methods may apply similarly to the devices, and vice versa.
Die Begriffe „wenigstens einer“ und „einer oder mehrere“ können so verstanden werden, dass sie irgendeine ganze Zahl, die größer als oder gleich eins ist, d. h., eins, zwei, drei, vier, [...], usw., enthalten. Der Begriff „mehrere“ kann so verstanden werden, dass er irgendeine ganze Zahl, die größer als oder gleich zwei ist, d. h., zwei, drei, vier, fünf, [...], usw., enthält.The terms "at least one" and "one or more" may be understood to include any integer greater than or equal to one, d. h., one, two, three, four, [...], etc., included. The term "multiple" may be understood to mean any integer greater than or equal to two, that is, any number greater than or equal to two. h., two, three, four, five, [...], etc., contains.
Die Redewendung „wenigstens eines von“ hinsichtlich einer Gruppe von Elementen kann hier so verwendet werden, dass wenigstens ein Element aus der Gruppe, die aus den Elementen besteht, gemeint ist. Die Redewendung „wenigstens eines von“ hinsichtlich einer Gruppe von Elementen kann hier z. B. so verwendet werden, dass eine Auswahl von Folgenden gemeint ist: eines der aufgelisteten Elemente, mehrere von einem der aufgelisteten Elemente, mehrere einzelne aufgelistete Elemente oder mehrere von mehreren aufgelisteten Elementen. The phrase "at least one of" with respect to a group of elements may be used herein to mean at least one element of the group consisting of the elements. The phrase "at least one of" with respect to a group of elements can be used here for. B. may be used to mean a selection of: one of the listed items, a plurality of one of the listed items, a plurality of individual listed items, or a plurality of multiple listed items.
Eine „Schaltung“, wie sie hier verwendet wird, wird als irgendeine Art einer logikimplementierenden Entität verstanden, die Spezial-Hardware oder einen Prozessor, der Software ausführt, enthalten kann. Eine Schaltung kann folglich eine analoge Schaltung, eine digitale Schaltung, eine Mischsignalschaltung, eine Logikschaltung, ein Prozessor, ein Mikroprozessor, eine Zentraleinheit (CPU), eine Graphikverarbeitungseinheit (GPU), ein digitaler Signalprozessor (DSP), eine feldprogrammierbare Gatteranordnung (FPGA), eine integrierte Schaltung, eine anwendungsspezifische integrierte Schaltung (ASIC) usw. oder irgendeine Kombination daraus sein. Irgendeine andere Art der Implementierung der jeweiligen Funktionen, die im Folgenden ausführlicher beschrieben werden, kann außerdem als eine „Schaltung“ verstanden werden. Es wird erkannt, dass zwei (oder mehr) der Schaltungen, die hier ausführlich beschrieben sind, als eine einzige Schaltung mit einer im Wesentlichen äquivalenten Funktionalität verwirklicht sein können, und dass umgekehrt irgendeine einzelne Schaltung, die hier ausführlich beschrieben ist, als zwei (oder mehr) separate Schaltungen mit einer im Wesentlichen äquivalenten Funktionalität verwirklicht sein kann. Zusätzlich können sich die Bezugnahmen auf eine „Schaltung“ auf zwei oder mehr Schaltungen beziehen, die gemeinsam eine einzige Schaltung bilden. Der Begriff „Schaltungsanordnung“ kann sich auf eine oder mehrere Schaltungen und/oder eine elektronische Vorrichtung, die aus einer oder mehreren Schaltungen besteht, beziehen.As used herein, a "circuit" is understood to be any type of logic-implementing entity that may include specialized hardware or a processor that executes software. A circuit may thus comprise an analog circuit, a digital circuit, a composite signal circuit, a logic circuit, a processor, a microprocessor, a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a field programmable gate array (FPGA), an integrated circuit, an application specific integrated circuit (ASIC), etc., or any combination thereof. Any other way of implementing the respective functions, which will be described in more detail below, may also be understood as a "circuit". It will be appreciated that two (or more) of the circuits described in detail herein may be implemented as a single circuit having substantially equivalent functionality, and conversely that any single circuit described in detail herein may be implemented as two (or more) separate circuits having a substantially equivalent functionality can be realized. In addition, the references to a "circuit" may refer to two or more circuits that together form a single circuit. The term "circuitry" may refer to one or more circuits and / or an electronic device consisting of one or more circuits.
Eine „Verarbeitungsschaltung“ (oder äquivalent eine „Verarbeitungsschaltungsanordnung“ oder ein „Prozessor“), wie sie hier verwendet wird, wird als auf irgendeine Schaltung verweisend verstanden, die eine Operation(en) an einem Signal(en) ausführt, wie z. B. irgendeine Schaltung, die eine Verarbeitung an einem elektrischen Signal oder einem optischen Signal ausführt. Eine Verarbeitungsschaltung kann sich folglich auf irgendeine analoge oder digitale Schaltungsanordnung beziehen, die eine Charakteristik oder eine Eigenschaft eines elektrischen oder optischen Signals ändert, das analoge und/oder digitale Daten enthalten kann. Eine Verarbeitungsschaltung kann sich folglich auf eine analoge Schaltung (die explizit als eine „analoge Verarbeitungsschaltung(sanordnung)“ bezeichnet werden kann), eine digitale Schaltung (die explizit als eine „digitale Verarbeitungsschaltung(sanordnung)“ bezeichnet werden kann), eine Logikschaltung, einen Prozessor, einen Mikroprozessor, eine Zentraleinheit (CPU), eine Graphikverarbeitungseinheit (GPU), einen digitalen Signalprozessor (DSP), eine feldprogrammierbare Gatteranordnung (FPGA), eine integrierte Schaltung, eine Anwendungsspezifische integrierte Schaltung (ASIC) usw. oder irgendeine Kombination daraus beziehen. Entsprechend kann sich eine Verarbeitungsschaltung auf eine Schaltung beziehen, die eine Verarbeitung an einem elektrischen oder optischen Signal als Hardware oder als Software, wie z. B. als in Hardware (z. B. einem Prozessor oder einem Mikroprozessor) ausgeführte Software, ausführt. „Digitale Signalverarbeitungsschaltung(sanordnung)“, wie sie hier verwendet wird, kann sich auf eine Schaltung beziehen, die unter Verwendung einer digitalen Logik implementiert ist, die eine Verarbeitung an einem Signal, z. B. einem elektrischen oder einem optischen Signal, ausführt, die eine Logikschaltung(en), einen Prozessor(en), einen skalaren Prozessor(en), einen Vektorprozessor(en), einen Mikroprozessor(en), einen Controller, einen Mikrocontroller, eine Zentraleinheit(en) (CPU), eine Graphikverarbeitungseinheit(en) (GPU), einen digitalen Signalprozessor(en) (DSP), eine feldprogrammierbare Gatteranordnung(en) (FPGA), eine integrierte Schaltung(en), eine anwendungsspezifische integrierte Schaltung(en) (ASIC) oder irgendeine Kombination daraus enthalten kann. Weiterhin wird erkannt, dass eine einzelne Verarbeitungsschaltung äquivalent in zwei separate Verarbeitungsschaltungen geteilt sein kann und dass umgekehrt zwei separate Verarbeitungsschaltungen in einer einzigen äquivalenten Verarbeitungsschaltung kombiniert sein können.As used herein, a "processing circuit" (or equivalent, "processing circuitry" or "processor") is understood to refer to any circuit that performs an operation (s) on a signal (s), such as a device. For example, any circuit that performs processing on an electrical signal or an optical signal. A processing circuit may thus refer to any analog or digital circuitry that changes a characteristic or property of an electrical or optical signal that may include analog and / or digital data. A processing circuit may thus be referred to an analog circuit (which may be explicitly referred to as an "analog processing circuit"), a digital circuit (which may be explicitly referred to as a "digital processing circuit"), a logic circuit, a Processor, a microprocessor, a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a field programmable gate array (FPGA), an integrated circuit, an application specific integrated circuit (ASIC), etc., or any combination thereof. Accordingly, a processing circuit may refer to a circuit that performs processing on an electrical or optical signal as hardware or software such. B. executes software executed in hardware (eg, a processor or a microprocessor). As used herein, "digital signal processing circuitry" may refer to a circuit implemented using digital logic that is capable of processing on a signal, e.g. An electrical or optical signal, comprising a logic circuit (s), a processor (s), a scalar processor (s), a vector processor (s), a microprocessor (s), a controller, a microcontroller, a Central processing unit (s) (CPU), graphics processing unit (s) (GPU), digital signal processor (s) (DSP), field programmable gate array (s) (FPGA), integrated circuit (s), application specific integrated circuit (s) ) (ASIC) or any combination thereof. Furthermore, it is recognized that a single processing circuit may equivalently be divided into two separate processing circuits, and conversely, two separate processing circuits may be combined in a single equivalent processing circuit.
Im Folgenden wird eine allgemeine Beschreibung einer Prozesssteuerschaltung gemäß verschiedenen Ausführungsformen, gefolgt von verschiedenen Ausführungsformen, die die Prozesssteuerschaltung ausführlicher beschreiben, bereitgestellt.
Die Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen können die Prozessdaten
Gemäß verschiedenen Ausführungsformen können die Bearbeitungswerkzeuge
Im Fall der Halbleiterbearbeitung kann jedes der verwendeten Bearbeitungswerkzeuge
Ferner kann die Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Ferner kann die Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen kann die Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen kann die Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen kann eine Durchlauf-zu-Durchlauf-Strategie zwei Schritte enthalten. Erstens das Schätzen eines geeigneten Zustands (der außerdem als Zustandsinformationen bezeichnet wird) der gesteuerten Prozesse unter Verwendung der Prozessdaten der vorherigen Materialien. Diese Daten können z. B. mitlaufende Messungen (z. B. einer Schichtdicke, einer kritischen Abmessung usw.), abgeleitete Größen (wie z. B. die Entfernungsgeschwindigkeit) und Werkzeugdaten enthalten. Der Zustand wird gewählt, um die Eigenschaften des Prozesses, der abgestimmt werden muss, widerzuspiegeln. Zweitens das Verwenden der Zustandsschätzung, um den (die) Abstimmparameter für das nächste Material zu berechnen.According to various embodiments, a run-to-run strategy may include two steps. First, estimating an appropriate state (also referred to as state information) of the controlled processes using the process data of the previous materials. This data can be z. For example, in-line measurements (eg, a layer thickness, a critical dimension, etc.), derived quantities (such as the removal rate), and tool data. The state is chosen to reflect the characteristics of the process that needs to be tuned. Second, using state estimation to calculate the tuning parameter (s) for the next material.
Gemäß verschiedenen Ausführungsformen kann die Zustandsschätzung ein Hauptaspekt des Steueralgorithmus sein, d. h., der Prozesssteuerschaltung
- • um den Regelkreis im Fall eines ungültigen Zustands automatisch zu unterbrechen,
- • um zusätzliche Messungen automatisch auszulösen, um die Zustandsvalidität wiederherzustellen,
- • um die Anzahl der gemessenen Materialien (z. B. über das Metrologieabtastsystem) zu steuern,
- • um ein geeignetes Fertigungswerkzeug für das nächste zu bearbeitende Material automatisch auszuwählen (d. h., um ein Werkzeug auszuwählen, für das ein gültiger Zustand vorhanden ist),
- • um Materialien automatisch zu den Fertigungswerkzeugen zu senden, um das Ablaufen der entsprechenden Werkzeugzustände zu verhindern,
- • um die Rückkopplungsverstärkung des Regelkreises anzupassen, z. B. um die Rückkopplung zu vergrößern, falls der Zustand (teilweise) abgelaufen ist und/oder die ankommenden Messdaten signifikant neue Informationen enthalten.
- • to automatically interrupt the control loop in the event of an invalid condition,
- • to automatically trigger additional measurements to restore state validity;
- • to control the number of measured materials (eg via the metrology scanning system),
- • to automatically select a suitable production tool for the next material to be machined (ie to select a tool for which a valid condition exists),
- • to send materials automatically to the production tools to prevent the expiration of the corresponding tool states,
- • to adjust the feedback gain of the control loop, eg. To increase the feedback if the state is (partially) expired and / or the incoming measurement data contains significantly new information.
Herkömmlich können simplistische Validierungskriterien für die erhaltenen Zustände der Bearbeitungsanordnung
- • der Zustand kann ungültig gemacht werden, falls der Zeitraum seit der letzten Zustandsaktualisierung irgendeinen vorgegebenen Schwellenwert übersteigt (Zeitabschaltung),
- • der Zustand kann ungültig gemacht werden, falls die Anzahl der bearbeiteten Materialien (z. B. Chargen, Wafer usw.) seit der letzten Zustandsaktualisierung irgendeinen vorgegebenen Schwellenwert übersteigt (Materialabschaltung),
- • die Zustandsaktualisierung kann unterdrückt werden, falls sich die Anzahl der einzelnen Messungen unter einem vorgegebenen Schwellenwert befindet,
- • der Zustand kann ungültig gemacht werden, falls die Anzahl der Materialien, die bearbeitet werden, aber noch nicht gemessen worden sind, einen vorgegebenen Schwellenwert übersteigt. Alternativ kann zu einer einfachen arithmetischen Summe der Anzahl der Materialien ebenso eine gewichtete Summe verwendet werden. Die gewichtete Summe hebt Materialien hervor, die zuletzt bearbeitet worden sind (eine unbeobachtete Drift),
- • In dem Fall, in dem ein EWMA-Filter (ein exponentiell gewichtetes Filter mit beweglichem Durchschnitt) für die Zustandsschätzung verwendet wird, kann die effektive Unterdrückung des Messrauschens aufgrund des Filters quantifiziert werden (Rauschverringerungsfaktor). Der Zustand kann nur gültig sein, falls die Rauschverringerung irgendeinen vorgegebenen Schwellenwert übersteigt.
- The state can be invalidated if the period since the last state update exceeds any given threshold (timeout),
- • the state can be invalidated if the number of processed materials (eg batches, wafers, etc.) exceeds any given threshold since the last state update (material shutdown),
- • the status update can be suppressed if the number of individual measurements is below a predetermined threshold,
- • the state can be invalidated if the number of materials being processed but not yet measured exceeds a predetermined threshold. Alternatively, a weighted sum may also be used for a simple arithmetic sum of the number of materials. The weighted sum highlights materials that were last edited (an unobserved drift),
- In the case where an EWMA filter (an exponentially weighted moving average filter) is used for the state estimation, the effective suppression of the measurement noise due to the filter can be quantified (noise reduction factor). The condition can only be valid if the noise reduction exceeds any given threshold.
Die Schwellenwerte für die oben beschriebenen simplistischen Validierungskriterien können herkömmlich durch einen Prozessingenieur basierend auf einem „guten Gefühl“ bestimmt werden. Die Signifikanz der Kriterien wird durch diese im hohen Grade subjektive und fehleranfällige Herangehensweise beeinträchtigt. Zusätzlich sind die Kriterien statisch und spiegeln nicht die sehr dynamische Natur einer Fertigung mit hoher Mischung und geringem Volumen wieder. Aufgrund dieser Einschränkungen werden die Schwellenwerte herkömmlich konservativ gewählt, was vorzeitige Unterbrechungen des Regelkreises und andere Probleme verursacht. In vielen Fällen können die oben beschriebenen Validitätsinformationen aufgrund eines Fehlens von zuverlässigen Validitätsinformationen nicht implementiert werden.The thresholds for the simplistic validation criteria described above may be conventionally determined by a process engineer based on a "good feeling". The significance of the criteria is impaired by this highly subjective and error prone approach. In addition, the criteria are static and do not reflect the very dynamic nature of high mix, low volume manufacturing. Because of these limitations, the thresholds are traditionally conservative, causing premature interruptions in the control loop and other problems. In many cases, the validity information described above can not be implemented due to a lack of reliable validity information.
Die Zustandsschätzung kann durch mehrere Mechanismen verfälscht werden, wie z. B.:
- • eine Werkzeugdrift (die Größe unterscheidet sich für verschiedene Produkte),
- • die Werkzeugwartung (eine zufällige und/oder systematische Zustandsverschiebung),
- • ein Gesamtausfall oder ein Mangel an Messwerten,
- • das Abtasten der Messwerte und/oder
- • zur Neige gehende Produkte.
- • a tool drift (the size is different for different products),
- • tool maintenance (a random and / or systematic state shift),
- • a total failure or lack of measurements,
- • the sampling of the measured values and / or
- • Dwindling products.
Jedes der oben beschriebenen simplistischen Validierungskriterien kann nur einen Teilaspekt der tatsächlichen Situation abdecken. Es würde eine Validierungsroutine, wie sie hier beschrieben ist, erwünscht sein, die alle Verfälschungsmechanismen gleichzeitig abdecken kann.Each of the simplistic validation criteria described above can cover only a partial aspect of the actual situation. A validation routine as described herein would be desirable, which can cover all spoofing mechanisms simultaneously.
Als ein Beispiel kann sich die Entfernungsgeschwindigkeit eines chemisch-mechanischen Planarisierungsprozesses für jeden bearbeiteten Wafer oder jedes bearbeitete Produkt verschlechtern. Die Größe der Verschlechterung kann von der Oberflächenstruktur des bearbeiteten speziellen Wafers oder Produkts abhängen. Der Wafer oder die Produkte können in einer praktisch zufälligen Reihenfolge bearbeitet werden. Einige Chargen können sofort gemessen werden, einige mit einer beträchtlichen Zeitverzögerung. Die Durchlauf-zu-Durchlauf-Steuerung kann verwendet werden, um die Verschlechterung der Entfernungsgeschwindigkeit zu modellieren und um den chemisch-mechanischen Planarisierungsprozess abzustimmen, z. B. um die Entfernungszeit einzustellen. In dieser komplexen Situation ist es für den Prozessingenieur unmöglich, unter Verwendung eines herkömmlichen Durchlauf-zu-Durchlauf-Systems Folgendes richtig zu spezifizieren
- • eine feste Zeitabschaltung für eine Schätzung der Entfernungsgeschwindigkeit (der Zeitraum, in dem ein Schätzfehler über irgendeinen vorgegebenen Schwellenwert ansteigt, ist im hohen Grade variabel),
- • eine feste Materialabschaltung (die Anzahl der bearbeiteten Wafer, bevor der Schätzfehler irgendeinen vorgegebenen Schwellenwert verletzt, ist im hohen Grade variabel),
- • eine feste Anzahl einzelner Messungen pro Wafer, die für eine gültige Zustandsaktualisierung benötigt wird, (die durch jede Messung bereitgestellten Informationen unterscheiden sich in Abhängigkeit vom Ort der Messstelle beträchtlich),
- • eine feste Obergrenze für die Anzahl der bearbeiteten Wafer, die noch nicht gemessen worden sind, (verschiedene Produkte verschlechtern die Zustandsschätzung verschieden) und/oder
- • eine Untergrenze für den Rauschverringerungsfaktor (für die Berechnung des Rauschverringerungsfaktors wird angenommen, dass alle Produkte die Zustandsschätzung ähnlich verschlechtern; wobei außerdem fehlende oder verzögerte Messwerte vernachlässigt werden).
- A fixed timeout for an estimate of the range rate (the time period in which an estimation error rises above any given threshold is highly variable),
- A solid material shutdown (the number of wafers processed before the estimation error violates any given threshold is highly variable),
- A fixed number of individual measurements per wafer needed for a valid state update (the information provided by each measurement varies considerably depending on the location of the measurement site),
- A fixed upper limit for the number of processed wafers that have not yet been measured (different products worsen the state estimate) and / or
- A lower limit for the noise reduction factor (for the calculation of the noise reduction factor, it is assumed that all products similarly deteriorate the state estimation, besides neglecting missing or delayed measured values).
Gemäß verschiedenen Ausführungsformen kann das Zustandsschätz- und Validierungssystem aufgebaut sein, wie im Folgenden beschrieben wird. Es wird angegeben, dass ein Fachmann die im Folgenden beschriebenen Gleichungen und/oder Algorithmen modifizieren oder umformulieren kann, ohne das durch die Gleichungen und/oder Algorithmen definierte allgemeine Konzept zu ändern. Die hier verwendeten Indizes können z. B. in andere Indizes geändert oder durch andere Indizes ersetzt werden, wobei jede geeignete Programmiersprache verwendet werden kann, um die Algorithmen zu implementieren. Die Variable in der Form von Skalaren, Vektoren und/oder Matrizen können ebenso anders umformuliert werden. Hier wird ein allgemeines Konzept basierend auf einem oder mehreren Beispielen bereitgestellt und beschrieben. Ferner werden im Folgenden außerdem ausführliche Lösungen für die bevorzugten Ausführungsformen bereitgestellt, wobei sie jedoch als beispielhaft zu verstehen sind, weil das mathematische Konzept verschiedene Formulierungen für die gleichen Gleichungen erlaubt.According to various embodiments, the state estimation and validation system may be constructed, as described below. It is stated that one skilled in the art can modify or rewrite the equations and / or algorithms described below without changing the general concept defined by the equations and / or algorithms. The indices used here can be z. Changed into other indices or replaced with other indices, any suitable programming language can be used to implement the algorithms. The variables in the form of scalars, vectors and / or matrices can also be reworded differently. Here, a general concept based on one or more examples is provided and described. Furthermore, detailed solutions for the preferred embodiments are also provided below, but are to be considered as exemplary, because the mathematical concept allows different formulations for the same equations.
Gemäß verschiedenen Ausführungsformen kann ein lineares zeitvariantes Zustandsraummodell, das eine zufällige Erregung enthält, um den Prozess zu modellieren, z. B. gemäß der folgenden Gleichung verwendet werden:
Wie oben veranschaulicht ist, kann gemäß verschiedenen Ausführungsformen die Datenverschmelzungsschaltung
Die Datenverschmelzungsschaltung
Als ein Beispiel kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen wird die entsprechende Messung gemäß dem Prozessmodell modelliert, wie z. B. wie folgt:
Wie oben veranschaulicht worden ist, kann die Datenverschmelzungsschaltung
Als ein Beispiel kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen können nicht alle Elemente der Matrizen (A, N, Q, B, C, M, R) einzeln parametrisiert sein. Ein oder mehrere Elemente können auf Nullen gesetzt sein. Große Gruppen von Elementen können demselben Parameter zugewiesen sein. In dieser Weise kann, falls gewünscht, die effektive Anzahl der Parameter drastisch verringert werden.According to various embodiments, not all elements of the matrices (A, N, Q, B, C, M, R) can be individually parameterized. One or more elements may be set to zeros. Large groups of elements can be assigned the same parameter. In this way, if desired, the effective number of parameters can be drastically reduced.
Gemäß verschiedenen Ausführungsformen können die Produktionsmassendaten (die z. B. beispielhafte Prozessdaten
Gemäß verschiedenen Ausführungsformen kann ein Kalman-Filter verwendet werden, um den Zustand
Gemäß verschiedenen Ausführungsformen kann das Kalman-Filter z. B. basierend auf den Gleichungen (1), (2) wie folgt in zwei Sätze von Gleichungen (3), (4) geteilt werden:
In der gleichen Weise kann das Kalman-Filter basierend z. B. auf den Gleichungen (1*), (2*) oder ähnlichen Gleichungen eines weiteren geeigneten Prozessmodells in zwei Sätze von Gleichungen geteilt werden. Beide Sätze von Gleichungen (3), (4) können vollständig unabhängig voneinander ausgeführt werden. Die Gleichung (3) kann nach jedem Prozess- oder Wartungsschritt ausgeführt werden (was außerdem als „Prozessaktualisierung“ oder nur als „Aktualisierung“ bezeichnet wird). Diese Schritte vergrößern den Schätzfehler und verringern deshalb die Genauigkeit der Zustandsinformationen, da ein neues unbekanntes Prozessrauschen den beobachteten Zustand verschiebt. Die Gleichung (4) kann nach einem oder mehreren Messschritten ausgeführt werden (was außerdem als „Metrologieaktualisierung“ oder nur als „Wiederherstellung des früheren Zustands“ bezeichnet wird). Das Berücksichtigen der Messdaten verringert den Schätzfehler und vergrößert deshalb die Genauigkeit der Zustandsinformationen, da sie neue Informationen über den Zustand bereitstellen. In dem Fall, in dem die Metrologiedaten (die außerdem als die Messdaten bezeichnet werden) aus mehr als einem Messwert bestehen, kann die Metrologieaktualisierung (
Gemäß verschiedenen Ausführungsformen kann die Fehlerkovarianzmatrix Pk+1 verwendet werden, um die Fehlervarianz zu berechnen oder um mit anderen Worten die Genauigkeitsinformationen der Zustandsinformationen bereitzustellen. Die Fehlervarianz kann basierend auf der folgenden Gleichung oder ähnlichen Formulierungen bestimmt werden:
Gemäß verschiedenen Ausführungsformen können der Zustandsvektor x̂ und die Fehlerkovarianzmatrix P̂ automatisch erweitert werden, wenn die Daten für neue Produkte, ein neues Werkzeug usw. erfasst werden. Deshalb kann der Durchlauf-zu-Durchlauf-Controller (z. B. die Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen kann die hier beschriebene Prozesssteuerschaltung
- sie kann eine Zustandsschätzung bereitstellen, die bezüglich der verfügbaren Daten in Anbetracht dessen optimal ist, dass:
- • Daten bei der Fertigung in geringem Volumen und hoher Mischung knapp, unregelmäßig und wertvoll sind,
- • die Rückkopplungsverstärkung an die Datensituation und die Wafer in Bearbeitung (WIP) angepasst werden kann,
- • die Schätzungen für jeden Zeitpunkt optimal sind,
- • eine Zustandsschätzung selbst in ungünstigen Situationen (z. B. fehlende Messwerte, fehlende Abtastung usw.) optimal ist;
- ein Schätzfehler in Anbetracht dessen bereitgestellt (z. B. berechnet) werden kann, dass:
- • eine Empfehlung unterdrückt werden kann, falls die Genauigkeit einer Zustandsschätzung unzureichend ist,
- • eine permanente Modellvalidierung verwirklicht ist, es z. B. geprüft werden kann, ob ankommende Daten konsistent modelliert werden und/oder ob das für die Vorhersage verwendete interne Modell richtig bereitgestellt ist und dem Prozess im wirklichen Leben entspricht,
- ein universeller Rahmen für eine einfache und eine komplexe Steueraufgabe bereitgestellt wird; und
- eine modellbasierte Herangehensweise bereitgestellt wird, die sich ohne die Notwendigkeit des Anpassens der Schätzalgorithmen selbst nur auf die richtige Modellierung des Prozesses konzentriert.
- it can provide a state estimate that is optimal in terms of available data given that:
- • Low-volume and high-mix production data is scarce, irregular and valuable,
- • the feedback gain can be adapted to the data situation and the wafer in progress (WIP),
- • the estimates are optimal for each time point,
- A state estimation is optimal even in unfavorable situations (eg missing readings, missing sample, etc.);
- an estimation error can be provided (eg calculated) considering that:
- • a recommendation can be suppressed if the accuracy of a state estimation is insufficient,
- • a permanent model validation is realized, it z. For example, it is possible to check whether incoming data is consistently modeled and / or whether the internal model used for the prediction is properly provided and corresponds to the process in real life.
- providing a universal framework for a simple and a complex tax task; and
- a model-based approach is provided which, without the need to adjust the estimation algorithms themselves, focuses only on the proper modeling of the process.
Gemäß den verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen werden, wenn das Produktionsereignis die Zustandsschätzung (z. B. aufgrund eines Bearbeitungsereignisses, eines Wartungsereignisses usw.) verschlechtert, durch die Gleichung (3) Daten hinzugefügt, was außerdem als eine Prozessaktualisierung bezeichnet wird. Wenn das Produktionsereignis die Daten (z. B. im Fall eines Metrologieereignisses) erzeugt hat, die die Zustandsschätzung verbessern, werden die Daten durch die Gleichung (4) hinzugefügt, was außerdem als eine Metrologieaktualisierung bezeichnet wird.According to various embodiments, when the production event degrades the state estimation (eg, due to a machining event, a maintenance event, etc.), data is added by equation (3), which is also referred to as a process update. When the production event has generated the data (eg, in the case of a metrology event) that improves the state estimate, the data is added by equation (4), which is also referred to as a metrology update.
Falls Material (z. B. ein Wafer, eine Charge, ein Los usw.) an einem gesteuerten Produktionsprozess ankommt, kann eine Anforderung an das
- • Wenn die Standardabweichung σERR des Schätzfehlers einen vorgegebenen Schwellenwert, LREC, übersteigt, können die R2R-Systeme keine Abstimmparameter an
die Bearbeitungsanordnung 104 , z. B. an ein Produktionswerkzeug, senden. Der automatische Regelkreis (z. B. die Steuerung der Bearbeitungsanordnung104 ) kann unterbrochen werden, um einen Ausbeuteverlust und/oder Ausschuss zu vermeiden. Gemäß verschiedenen Ausführungsformen kann dieDatenverschmelzungsschaltung 108 , die wenigstens eine Validierungsroutine enthält, sicherstellen, dass die automatische Durchlauf-zu-Durchlauf-Steuerung (z. B. die Steuerung der Bearbeitungsanordnung104 ) nur ausgeführt wird, wenn eine ausreichend zuverlässige Zustandsschätzung verfügbar ist. - • Die ankommenden Messdaten yk+1 können z. B. durch das Berechnen der normierten Erneuerung des Verhältnisses, v0, z. B. gemäß Folgendem:
B. mit 1 ≤ Ly ≤ 5oder 2 ≤ Ly ≤ 4 oder irgendeinem anderen geeigneten Intervall als ein Kriterium, charakterisiert werden. Die normierte Erneuerung v0 des Verhältnisses ist ein universelles Maß, das von dem Verwendungsfall und dem Übergangsverhalten (dem Einschwingen) des Schätzalgorithmus unabhängig ist. Falls die normierte Erneuerung v0 des Verhältnisses Ly übersteigt, sind mehrere Reaktionen möglich, wie z.B.:- ■ es kann eine Zustandsaktualisierung übersprungen werden, weil yk+1 als fehlerhaft betrachtet wird, und/oder
- ■ es kann ein Prozessingenieur (z. B. über E-Mail, SMS oder irgendein anderes geeignetes Signal oder irgendeine andere geeignete Nachricht) informiert werden, weil das Modell und die realen Daten nicht mehr zusammenpassen; dies könnte eine Angabe sein, dass sich der Prozess geändert hat und das Prozessmodell neu eingestellt werden muss.
- • Das Metrologieabtastsystem kann basierend auf den Genauigkeitsinformationen, z. B. basierend auf der Standardabweichung σERR des Schätzfehlers, dynamisch gesteuert werden. Für hohe Werte der Standardabweichung σERR des Schätzfehlers kann die Abtastrate verringert werden (d. h., es können mehr Materialien gemessen werden); für geringe Werte der Standardabweichung σERR des Schätzfehlers kann die Abtastrate vergrößert werden (es können z. B. weniger Materialien gemessen werden). Dafür kann gemäß verschiedenen Ausführungsformen eine Schnittstelle und ein Datenaustausch zwischen dem Abtasten und dem
R2R -System bereitgestellt werden. - • Wenn die Standardabweichung σERR des Schätzfehlers einen vorgegebenen Schwellenwert, LMET, übersteigt, können zusätzliche Messungen ausgelöst werden, z. B. über ein Echtzeit-Abfertigungssystem (
RTD -System), um die Genauigkeit der Zustandsschätzung zu verbessern. Dafür kann gemäß verschiedenen Ausführungsformen eine Schnittstelle und ein Datenaustausch zwischen demRTD - und demR2R -System bereitgestellt werden. - • Gemäß verschiedenen Ausführungsformen kann das Echtzeit-Abfertigungssystem konfiguriert sein, basierend auf der Standardabweichung σERR des Schätzfehlers ein neues Produktionswerkzeug für ein spezifisches Material auszuwählen:
- ■ wobei nur Werkzeuge ausgewählt werden können, für die die Standardabweichung des Schätzfehlers σERR < LREC ist; dies stellt sicher, dass für alle ausgewählten Werkzeuge ein gültiger Zustand zur Berechnung der Abstimmparameter verfügbar ist, und/oder
- ■ aus den ausgewählten Werkzeugen das Werkzeug mit der höchsten Standardabweichung σERR des Schätzfehlers gewählt werden kann; dies kann eine weitere Verschlechterung/einen weiteren Ablauf der entsprechenden Zustandsschätzung verhindern.
- • If the standard deviation σ ERR of the estimation error exceeds a predetermined threshold, L REC , the R2R systems can not apply tuning parameters to the
processing arrangement 104 , z. To a production tool. The automatic control loop (eg the control of the processing arrangement104 ) can be interrupted to avoid loss of yield and / or rejects. According to various embodiments, thedata fusion circuit 108 containing at least one validation routine, ensure that the automatic run-to-pass control (eg, the control of the processing arrangement104 ) is executed only when a sufficiently reliable state estimate is available. - • The incoming measurement data y k + 1 can, for. By calculating the normalized renewal of the ratio, v 0 , z. B. according to the following:
- ■ a status update can be skipped because y k + 1 is considered faulty, and / or
- ■ a process engineer can be informed (eg via e-mail, SMS or any other suitable signal or any other suitable message) because the model and the real data no longer match; this could be an indication that the process has changed and the process model needs to be reset.
- • The metrology scanning system can be based on the accuracy information, e.g. Based on the standard deviation σ ERR of the estimation error, dynamically controlled. For high values of the standard deviation σ ERR of the estimation error, the sampling rate can be reduced (ie, more materials can be measured); for low values of the standard deviation σ ERR of the estimation error, the sampling rate can be increased (for example, fewer materials can be measured). For that can According to various embodiments, an interface and a data exchange between the scanning and the
R2R System be provided. - • If the standard deviation σ ERR of the estimation error exceeds a predetermined threshold, L MET , additional measurements may be triggered, eg. Via a real-time dispatch system (
RTD System) to improve the accuracy of the state estimation. For this, according to various embodiments, an interface and a data exchange between theRTD - and theR2R System be provided. - According to various embodiments, the real-time dispatch system may be configured to select a new production tool for a specific material based on the standard deviation σ ERR of the estimation error:
- ■ where only tools can be selected for which the standard deviation of the estimation error is σ ERR <L REC ; this ensures that a valid state for calculating the tuning parameters is available for all selected tools, and / or
- ■ the tool with the highest standard deviation σ ERR of the estimation error can be selected from the selected tools; this can prevent a further deterioration / further course of the corresponding state estimation.
Gemäß verschiedenen Ausführungsformen können basierend auf den Genauigkeitsinformationen ein oder mehrere Überwachungsprozesse gestartet werden und/oder können eine oder mehrere Warnungen gesendet oder angezeigt werden. Es kann mehr als einen Schwellenwert geben, um mehr als einen unterschiedlichen Prozess entsprechend dem jeweiligen Schwellenwert in dem Fall, in dem die Genauigkeit der Zustandsinformationen diesen jeweiligen Schwellenwert übersteigt, zu starten.According to various embodiments, based on the accuracy information, one or more monitoring processes may be started and / or one or more warnings may be sent or displayed. There may be more than one threshold to start more than one different process according to the respective threshold in the case where the accuracy of the state information exceeds that respective threshold.
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
In Analogie zu den oben beschriebenen Ausführungsformen kann die Prozesssteuerschaltung
Basierend auf dem Schätzfehler σ kann wenigstens eine zusätzliche Schaltung gesteuert werden, es kann z. B. ein Echtzeit-Abfertiger gesteuert werden
Gemäß verschiedenen Ausführungsformen kann das Verfahren zum Steuern der Bearbeitungsanordnung
Gemäß verschiedenen Ausführungsformen kann die Prozesssteuerschaltung
Bei der Halbleiterfertigung können viele Prozesse überwacht werden. Es kann z. B. eine statistische Prozesssteuerung (
Gemäß verschiedenen Ausführungsformen kann die Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen kann die Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen kann ein Kalman-Filter, das eine entsprechende Fehlerkovarianzmatrix
Wie z. B. in
Die Prozesssteuerschaltung
Bei einer Produktion mit hoher Mischung und geringem Volumen können Daten knapp, erratisch und wertvoll sein. Die Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen kann ein Ausbeuteverlust und/oder Ausschuss aufgrund ungültiger Zustandsschätzungen unter Verwendung der Genauigkeitsinformationen verhindert werden. Der Regelkreis kann nur unterbrochen werden, falls dies notwendig ist, weil jede überflüssige Unterbrechung zusätzliche Produktionskosten in der Form von vorausgeschickten Wafern, einer zusätzlichen Arbeitsbelastung für das Produktionspersonal (z. B. im Fall eines manuellen Eingriffs) und/oder einen Zeitverlust erzeugen würde. Zusätzlich können außerdem Kosten eingespart werden.According to various embodiments, yield loss and / or rejection due to invalid state estimates may be prevented using the accuracy information. The loop can only be interrupted if necessary because any unnecessary disruption would generate additional production costs in the form of pre-sent wafers, additional workload for the production personnel (eg in case of manual intervention) and / or loss of time. In addition, costs can also be saved.
Gemäß verschiedenen Ausführungsformen können ein oder mehrere Aspekte der Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen können die rekursiven Schätz- und Vorhersagealgorithmen an Produktionsszenarios mit verzögerten und permutierten Messungen angepasst werden. Um die Stabilität von Halbleiterfertigungsprozessen oder anderen Fertigungsprozessen zu verbessern, kann eine externe automatische Steuerung zusätzlich zu der internen Steuerung des Fertigungswerkzeugs verwendet werden. Diese externe Steuerung kann als Durchlauf-zu-Durchlauf-Steuerung (
Im Allgemeinen kann die Zustandsschätzung ein wichtiger Aspekt des Steueralgorithmus sein. Es kann vorteilhaft sein, ein auf einem Kalman-Filter basierenden Algorithmus für die Zustandsschätzung zu verwenden, wie hier beschrieben wird. Das Kalman-Filter kann für ein Material wenigstens zweimal aufgefrischt (oder, mit anderen Worten, aktualisiert) werden. Das erste Auffrischen (oder die erste Aktualisierung) kann (z. B. direkt) nach dem Bearbeiten des Materials ausgeführt werden (d. h., die Prozessaktualisierung), während das zweite Auffrischen (oder die zweite Aktualisierung) ausgeführt werden kann, wenn die entsprechenden Metrologiedaten verfügbar werden (d. h., eine Wiederherstellung des früheren Zustands oder eine Metrologieaktualisierung). Es gibt oft eine beträchtliche Zeitverzögerung (z. B. mehrere Stunden oder Tage) zwischen dem Bearbeiten und dem Messen, wobei deshalb eine oder mehrere andere Fertigungsoperationen zwischen der Aktualisierung und der Wiederherstellung des früheren Zustands für ein Material (z. B. für ein Prozessereignis und ein entsprechendes Messereignis eines Materials) ausgeführt werden können. In der Zwischenzeit können andere Materialien bearbeitet und/oder gemessen werden. Diese anderen Materialien können die früher bearbeiteten Materialien überholen, d. h., die Materialien kommen in einer zufällig permutierten Reihenfolge bei der Metrologieoperation an, siehe z. B.
Gemäß verschiedenen Ausführungsformen kann jedoch in einer schematischen graphischen Darstellung die natürliche Aktualisierungsfolge aufgrund des Fertigungsprozesses in eine (sortierte) Aktualisierungsfolge modifiziert werden, die für ein rekursiv arbeitendes Filter, z. B. für ein Kalman-Filter, vorteilhaft sein kann, wie in
Wie in den
Gemäß verschiedenen Ausführungsformen kann eine Prozesssteuerschaltung ähnlich zu der oben beschriebenen Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen können alle Materialien mit ausstehenden Metrologiedaten in einer Warteschlange
Gemäß verschiedenen Ausführungsformen kann für die Prozessaktualisierung
Wie in
Wie in
Gemäß verschiedenen Ausführungsformen kann ein rekursiver Schätzalgorithmus (z. B. ein Kalman-Filter) verwendet werden, um die Zustandsinformationen für ein Durchlauf-zu-Durchlauf-Steuersystem zu schätzen, wie hier beschrieben ist. Gemäß verschiedenen Ausführungsformen können die Zustandsinformationen den Basiszustand
Bei jedem relevanten Produktionsereignis (z. B. einem Prozess, einer Messung, einer Wartung usw.) können Daten an das
Wie in
Ferner kann die Datenverschmelzungsschaltung
Alternativ kann die Reihenfolge für das Aktualisieren
Gemäß verschiedenen Ausführungsformen wird ein Verfahren bereitgestellt, um komplexen Mehrdeutigkeiten in Durchlauf-zu-Durchlauf-Kalman-Filter-Modellen gewachsen zu sein. Wie oben beschrieben worden ist, kann die Zustandsschätzung ein wichtiger Teil eines Steueralgorithmus sein, der in einer Prozesssteuerschaltung verwendet werden kann. Gemäß verschiedenen Ausführungsformen kann der Steueralgorithmus auf einem Kalman-Filter basieren, siehe z. B. die Gleichungen (1) bis (6), wie oben beschrieben worden ist.According to various embodiments, a method is provided for coping with complex ambiguities in run-to-run Kalman filter models. As described above, the state estimation may be an important part of a control algorithm that may be used in a process control circuit. According to various embodiments, the control algorithm may be based on a Kalman filter, see e.g. For example, the equations (1) to (6) have been described above.
Die Zustandsinformationen des Prozesses (siehe z. B. die Gleichungen (1) und (2)) können durch zwei Sätze von Gleichungen (z. B. die Gleichungssätze (3) und (4)) geschätzt werden, die vollständig unabhängig voneinander ausgeführt werden. Nach jedem Prozessereignis oder Wartungsereignis kann eine Prozessaktualisierung
Die Folge der Sätze von Gleichungen (3), (4) spiegelt die Ansammlung und die Verschlechterung der Prozessinformationen (die Abnahme und die Zunahme des Schätzfehlers) solange präzise wieder, wie die Prozessmodellparameter Q, R, B, D, C, A zu dem Prozess im wirklichen Leben passen. Die praktische Anwendung des Kalman-Filters für die Durchlauf-zu-Durchlauf-Steuerung kann jedoch angepasst werden, um einen oder mehrere der folgenden Aspekte zu berücksichtigen:
- ■ eine sehr große Anzahl von Zuständen (
50 -1000 ); - ■ neue Zustände müssen automatisch hinzugefügt und initialisiert werden;
- ■ Zustände entwickeln sich über längere Zeiträume (Jahre);
- ■ irgendein Zustand wird (im Wesentlichen) niemals aktualisiert;
- ■ eine Modellmehrdeutigkeit.
- ■ a very large number of states (
50 -1000 ); - ■ new states must be added and initialized automatically;
- ■ Conditions develop over longer periods of time (years);
- ■ any state is (essentially) never updated;
- ■ a model ambiguity.
Gemäß verschiedenen Ausführungsformen kann ein neuer Zustand (können neue Zustände) zur Laufzeit durch das Vergrößern der Zustandsinformationen
Eine zuverlässige frühere Kenntnis kann jedoch in der Praxis oft nicht verfügbar sein. Dies kann insbesondere für ein automatisches System, das 24/7 betrieben wird, der Fall sein. Gemäß verschiedenen Ausführungsformen kann das Filter, das verwendet wird, um die Bearbeitungsanordnung
Dieses Verhalten kann durch das Annehmen eines gemeinsamen Werkzeugzustands XWerkzeug modelliert werden, der durch die Linie
Es gibt in der Tat unendliche Zustandskonstellationen, die durch die Daten nicht abgegrenzt werden können. Es gibt einen zusätzlichen Freiheitsgrad, der durch die Daten nicht aufgelöst (bestimmt) wird und der zu Schätzproblemen führen kann. Die einzelnen Zustände XWerkzeug, XA, XB und XC sind im Gegensatz zu den Zustandskombinationen XWerkzeug + XA, XWerkzeug + XB und XWerkzeug + XC undefiniert. Aufgrund dessen ist die Varianz des Schätzfehlers der einzelnen Zustände XWerkzeug, XA, XB und XC unendlich. Dies bedeutet, dass große Komponenten, die in die Fehlerkovarianzmatrix P durch eine Initialisierung „mit großen Werten“ injiziert werden, niemals verschwinden und deshalb die Genauigkeit bei jedem Iterationsschritt verschlechtern. Gemäß verschiedenen Ausführungsformen können diese Probleme vermieden werden, wie im Folgenden ausführlicher beschrieben wird, was eine Hauptverbesserung für die Anwendung der Kalman-basierten Filterung auf ein Durchlauf-zu-Durchlauf-Steuersystem sein kann.There are indeed infinite state constellations that can not be delimited by the data. There is an additional degree of freedom that is not resolved (determined) by the data and that can lead to estimation problems. The individual states X tool , X A , X B and X C are in contrast to the state combinations X tool + X A , X tool + X B and X tool + X C undefined. Because of this, the variance of the estimation error of the individual states is X tool , X A , X B and X C are infinite. This means that large components injected into the error covariance matrix P by initialization "with large values" will never disappear and therefore degrade the accuracy at each iteration step. According to various embodiments, these problems may be avoided, as described in more detail below, which may be a major improvement for the application of Kalman-based filtering to a pass-to-pass control system.
Im Allgemeinen kann es mehrere Strategien geben, um das oben umrissene Problem zu überwinden, wie z. B.:
- • Das Vermeiden einer Modellmehrdeutigkeit durch das Definieren eines einzelnen Zustands für jede Kontextkombination, d. h. das Definieren eines eigenen Zustands für XWerkzeug + XA, XWerkzeug + XB bzw. XWerkzeug + XC: Dies kann eine einfache Lösung sein, wobei aber eine große Anzahl von Zuständen (z. B. Anzahl der Werkzeuge * Anzahl der Produkte * [...]) erzeugt werden kann. Ferner erfordert dies von null verschiedene Nichtdiagonalelemente in der Prozessrauschmatrix Q (die Speicherung und die Handhabung von n2 Elementen). Im Fall von z. B. neuen Produkten müssen neue Zustände für alle Werkzeug-/Produktkombinationen sofort erzeugt werden; selbst wenn einige dieser Kombinationen niemals verwendet werden.
- • Das Eliminieren der Modellmehrdeutigkeit durch das Hinzufügen von Einschränkungen an die Zustände (wie z. B. XA + XB + XC = 0): In diesem Fall wird eine verringerte Anzahl von Zuständen verwendet (Anzahl der Werkzeuge + Anzahl der Produkte + [...]), wobei die Prozessrauschmatrix Q diagonal sein kann (n anstelle von n2 Elementen). Es können jedoch numerische Probleme auftreten und die Einschränkungen müssen regelmäßig aufgefrischt werden. Ferner können die Einschränkungen kompliziert zu entwerfen sein, insbesondere für komplexe Szenarios (z. B. für Mehrebenenzustände, Feinabstimmungs-Vorbelastungen, Gradienten, Polynome). Ferner sind im Fall von Dedikationen (z. B. eines Werkzeugs) einige Zustandskombinationen (z. B. Werkzeug/Produkt) undefiniert, wobei der Entwurf der Einschränkungen diese Tatsache berücksichtigen muss, die Einschränkungen dynamisch modifiziert werden müssen, falls die Werkzeug-Dedikation aufgegeben wird, und eine zusätzliche Logik benötigt wird, um die Zustände von den dedizierten Zuständen zu den nicht dedizierten Zuständen umzusetzen. Ferner sind die neuen Zustände während der Initialisierungsphase undefiniert, wobei diese Tatsache durch die Einschränkungen verborgen wird, wobei eine zusätzliche Logik benötigt wird, um diese Phase zu unterdrücken und/oder zu steuern.
- • Die Verwendung „mittelgroßer“ Anfangswerte: Dies kann eine komplizierte Herangehensweise sein. Der Anfangswert muss für die richtige Initialisierung des Filters groß genug sein und klein genug sein, um die numerischen Probleme unter Kontrolle zu halten. Die Anfangswerte müssen sehr sorgfältig eingestellt (z. B. „handgearbeitet“) werden, was für eine 24/7-Produktion und diverse Produktportfolios schwierig zu verwenden sein kann. Ferner ist in diesem Fall keine Unterscheidung zwischen nicht initialisierten und abgelaufenen Zuständen möglich. Ferner verschwinden die numerischen Probleme nicht vollständig. Es wird jedoch eine verringerte Anzahl von Zuständen (Anzahl der Werkzeuge + Anzahl der Produkte + [...]) verwendet, wobei die Prozessrauschmatrix Q diagonal sein kann (n anstelle von n2 Elementen). Ferner können komplexe Szenarios (z. B. Mehrebenenzustände, Feinabstimmungs-Vorbelastungen, Gradienten, Polynome usw.) natürlich gehandhabt werden, wobei Zustandskombinationen definiert werden, wenn
- • Avoiding model ambiguity by defining a single state for each context combination, ie defining its own state for X tool + X A , X tool + X B, and X tool + X C, respectively: This may be a simple solution, but a large number of states (eg number of tools * number of products * [...]) can be generated. Furthermore, this requires non-zero non-diagonal elements in the process noise matrix Q (the storage and handling of n 2 elements). In the case of z. For example, new products must immediately create new states for all tool / product combinations; even if some of these combinations are never used.
- • Eliminating the model ambiguity by adding constraints to the states (such as X A + X B + X C = 0): In this case, a reduced number of states is used (number of tools + number of products + [...]), where the process noise matrix Q can be diagonal (n instead of n 2 elements). However, there may be numerical problems and the restrictions must be refreshed regularly. Furthermore, the constraints may be complicated to design, especially for complex scenarios (eg, multi-level states, fine-tuning bias, gradients, polynomials). Further, in the case of dedications (eg, a tool), some state combinations (eg, tool / product) are undefined, and the design of constraints must take this fact into account, and the constraints must be dynamically modified if tool dedication is abandoned and additional logic is needed to translate the states from the dedicated states to the non-dedicated states. Furthermore, the new states are undefined during the initialization phase, this fact being hidden by the constraints, with additional logic needed to suppress and / or control that phase.
- • The use of "medium" initial values: this can be a complicated approach. The initial value must be large enough for proper initialization of the filter and small enough to keep the numerical problems under control. The initial values must be set very carefully (eg "handcrafted"), which can be difficult to use for a 24/7 production and various product portfolios. Furthermore, no distinction between uninitialized and expired states is possible in this case. Furthermore, the numerical problems do not completely disappear. However, there will be a reduced number of states (number of tools + number of products + [...] ), where the process noise matrix Q may be diagonal (n instead of n 2 elements). Furthermore, complex scenarios (eg, multi-level states, fine-tuning preloads, gradients, polynomials, etc.) can be naturally handled, defining state combinations when
Gemäß verschiedenen Ausführungsformen kann die Fehlerkovarianzmatrix P in einen endlichen und einen unendlichen Teil zerlegt werden, was zu allen Vorteilen der Herangehensweise der mittelgroßen Anfangswerte führt, während die Nachteile vermieden werden. Gemäß verschiedenen Ausführungsformen kann die Fehlerkovarianzmatrix P wie folgt oder in einer ähnlichen Weise zerlegt werden:
Gemäß verschiedenen Ausführungsformen kann das Einsetzen der Gleichung (7) in die Gleichung (3) zu einem neuen Satz von Gleichungen (8) für die Prozessaktualisierung wie folgt führen:
Wenn die Fehlerkovarianzmatrix P z. B. gemäß Gleichung (7) zerlegt wird, kann die Metrologieaktualisierung (z. B. gemäß der Gleichung (4)) in zwei Fälle zerlegt werden. Gemäß verschiedenen Ausführungsformen können basierend auf den folgenden Gleichungen:
Die numerische Grenze, LNUM, kann z. B. auf eine sehr kleine Zahl, z. B. auf einen Wert von 10-10, gesetzt werden. Die Fehlervarianz
Die Fehlervarianz
Diese Herangehensweise kann einen oder mehrere der folgenden Aspekte verwirklichen:
- • eine exakte Initialisierung mit unendlich „∞“ ist möglich,
- • der Anfangswert kann beliebig gewählt werden, weil das Ergebnis unabhängig von dieser Wahl ist,
- • die Rechenkomplexität der Prozessaktualisierung ohne Zustandsübergang (d. h., Ak+1 =In) ist von
n , - • die Rechenkomplexität der Metrologieaktualisierung ist von n2 (falls sie richtig implementiert ist, wie z. B. im Folgenden beschrieben wird),
- • nicht initialisierte und abgelaufene Zustände können voneinander abgegrenzt werden,
- • aufgrund zu „kleiner“ und zu „großer“ Komponenten in der Fehlerkovarianzmatrix
P treten keine numerischen Probleme auf, - • es wird eine verringerte Anzahl von Zuständen verwendet (Anzahl der Werkzeuge + Anzahl der Produkte + [...]),
- • die Prozessrauschmatrix
Q kann diagonal sein (n anstelle von n2 Elementen), - • komplexe Szenarios (z. B. Mehrebenenzustände, Feinabstimmungs-Vorbelastungen, Gradienten, Polynome) werden natürlich gehandhabt:
- ■ es werden Zustandsdefinitionen definiert, falls
- ■ neue Zustandsebenen können zur Laufzeit hinzugefügt werden, neue Zustände können zur Laufzeit hinzugefügt und initialisiert werden,
- ■ Zustandskombinationen werden initialisiert, sobald
- ■ es werden Zustandsdefinitionen definiert, falls
- • Dedikationen (z. B. eines Werkzeugs) werden natürlich behandelt:
- ■ Zustandsdefinitionen werden definiert, falls
- ■ sobald nicht dedizierte Daten verfügbar sind, werden die dedizierten Zustände automatisch in nicht dedizierte Zustände umgesetzt.
- ■ Zustandsdefinitionen werden definiert, falls
- • an exact initialization with infinite "∞" is possible
- • the initial value can be chosen arbitrarily, because the result is independent of this choice,
- • The computational complexity of the process update without state transition (ie, A k + 1 = I n ) is of
n . - The computational complexity of the metrology update is of n 2 (if properly implemented, eg as described below),
- • uninitialized and expired states can be separated from each other,
- Due to "small" and "big" components in the error covariance matrix
P there are no numerical problems - • a reduced number of states is used (number of tools + number of products + [...]),
- • the process noise matrix
Q can be diagonal (n instead of n 2 elements), - • complex scenarios (eg multi-level states, fine-tuning preloads, gradients, polynomials) are handled naturally:
- ■ state definitions are defined if
- ■ new state levels can be added at runtime, new states added and initialized at runtime,
- ■ State combinations are initialized as soon as
- ■ state definitions are defined if
- • Dedications (eg of a tool) are handled naturally:
- ■ State definitions are defined if
- ■ Unless dedicated data is available, the dedicated states are automatically translated to non-dedicated states.
- ■ State definitions are defined if
Eine Spezifikation einer numerischen Grenze LNUM kann jedoch kompliziert sein, insbesondere wenn der Bereich der Beobachtungsvektorelemente Ck(i) groß ist, was im Folgenden ausführlicher beschrieben wird.However, a specification of a numerical boundary L NUM may be complicated, especially if the range of the observation vector elements C k (i) is large, which will be described in more detail below.
Gemäß verschiedenen Ausführungsformen kann ein Initialisierungsproblem des Durchlauf-zu-Durchlauf-Kalman-Filters durch das Zerlegen der Fehlerkovarianzmatrix
Gemäß verschiedenen Ausführungsformen kann die Modifikation des oben beschriebenen Kalman-Filters Teil eines universellen Durchlauf-zu-Durchlauf-/Überwachungssystems sein, das in Halbleiter- (oder anderen) Industrien verwendet wird. In dem Fall, in dem ein Kalman-Modell verwendet wird und in dem die Fehlerkovarianzmatrix in einen endlichen und einen unendlichen Teil zerlegt ist, kann der Betrieb der Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Im Ergebnis kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen kann der frühere Zustand der Zustandsinformationen für einen Messvektor über mehrere einzelne skalare Wiederherstellungen des früheren Zustands wiederhergestellt werden, wobei für jede einzelne skalare Wiederherstellung des früheren Zustands z. B. basierend auf einem numerischen Bezugswert, LNUM, wie oben beschrieben worden ist, geprüft wird, ob das Unterscheidungskriterium null ist.According to various embodiments, the earlier state of the state information for one measurement vector may be recovered over a plurality of single prior art scalar recoveries, wherein for each individual scalar restoration of the previous state, e.g. Based on a numerical reference value, L NUM , as described above, it is checked whether the discrimination criterion is zero.
Gemäß verschiedenen Ausführungsformen wird für ein Unendlichkeitsfilter ein schneller und stabiler quadratischer Algorithmus zur Wiederherstellung des früheren Zustands bereitgestellt. Die Zustandsschätzung kann durch einen Steueralgorithmus bereitgestellt werden, der in der Datenverschmelzungsschaltung
Ausführlicher können die Zustandsinformationen eines Prozesses, der z. B. durch die Gleichungen (1), (2) moduliert wird, durch zwei Sätze von Gleichungen geschätzt werden, die vollständig unabhängig voneinander ausgeführt werden, siehe z. B. den Satz von Gleichungen (3), (4), wie oben beschrieben worden ist. Nach jedem Prozess- oder Wartungsschritt wird gemäß dem ersten Satz von Gleichungen (8) mit den Gleichungen (8a) bis (8c) eine Prozessaktualisierung ausgeführt:
Ferner können Metrologiedaten durch die Metrologieaktualisierung, die z. B. außerdem als Wiederherstellung des früheren Zustands bezeichnet wird, zu den Zustandsinformationen hinzugefügt werden, wie oben mit der folgenden Definition beschrieben worden ist:
Wenn die Metrologiedaten aus mehr als einem Messwert bestehen, kann die Aktualisierung mit den Gleichungen (9)-(12d) für jeden Wert separat ausgeführt werden, wie oben beschrieben worden ist. Die Folge der Gleichungen (8a)-(8c) und (9)-(12d) spiegelt die Ansammlung und die Verschlechterung der Prozessinformationen (z. B. die Verringerung und die Zunahme des Schätzfehlers) so lange präzise wieder, wie die Prozessmodellparameter Q, R, B, D, C, A zu dem Prozess im wirklichen Leben passen.If the metrology data consists of more than one measurement value, the update can be performed separately with equations (9) - (12d) for each value, as described above. The sequence of equations (8a) - (8c) and (9) - (12d) accurately reflects the accumulation and degradation of the process information (e.g., the reduction and increase in estimation error) as long as the process model parameters Q, R, B, D, C, A fit the process in real life.
Gemäß verschiedenen Ausführungsformen kann der Schätzalgorithmus (z. B. gemäß den Gleichungen (8a)-(12d)) Vorteile gegenüber einer herkömmlichen Kalman-Filterung (insbesondere falls er auf eine Durchlauf-zu-Durchlauf-Steuerung angewendet wird) aufweisen. Das Unterscheiden des Falls
Als ein Beispiel zeigt
Wenn die Elemente des Beobachtungsvektors,
Gemäß verschiedenen Ausführungsformen wird ein Quadratwurzelalgorithmus basierend auf den Gleichungen (8a)-(12d) bereitgestellt, wie im Folgenden ausführlicher beschrieben wird. Gemäß verschiedenen Ausführungsformen werden die Kovarianzmatrizen PR und PI durch die Faktorisierungen ersetzt. Die Faktorisierung kann z. B. wie folgt oder in einer ähnlichen Weise definiert werden:
Obwohl die folgende Ausführungsform basierend auf einem spezifischen Beispiel der Faktorisierung beschrieben wird, siehe die Gleichungen (15), (16), können andere Faktorisierungen in der gleichen Weise verwendet werden, wie z. B.:
Ferner können die folgenden Faktorisierungen in einer ähnlichen Weise verwendet werden:
Gemäß verschiedenen Ausführungsformen kann die Strategie des Radizierens auf die Kalman-Filterung angewendet werden. Die Konditionszahl der Quadratwurzeln SR, SI (der Cholesky-Faktoren) ist besser als die Konditionszahl der ursprünglichen Matrizen PR, PI. Der numerische herausfordernde Teil kann die Wiederherstellung des früheren Zustands (die Metrologieaktualisierung) sein. Für Standard-Kalman-Filter können die genausten (und gleichzeitig die effizientesten) Algorithmen der Carlson-Algorithmus und der Bierman-Algorithmus sein. Sowohl der Carlson-Algorithmus als auch der Bierman-Algorithmus basieren auf den gleichen Prinzipien und sind von einem numerischen Standpunkt fast äquivalent. Gemäß verschiedenen Ausführungsformen wird der Carlson-/Bierman-Algorithmus in einer modifizierten, z. B. verallgemeinerten, Weise für die Wiederherstellung des früheren Zustands z. B. basierend auf den Gleichungen (11a)-(12d) verwendet. Die Implementierung des modifizierten Carlson-Algorithmus wird im Folgenden ausführlicher beispielhaft gezeigt.According to various embodiments, the strategy of radying may be applied to Kalman filtering. The condition number of the square roots S R , S I (the Cholesky factors) is better than the condition number of the original matrices P R , P I. The numerical challenging part may be the restoration of the previous state (the metrology update). For standard Kalman filters, the most accurate (and at the same time the most efficient) algorithms can be the Carlson algorithm and the Bierman algorithm. Both the Carlson algorithm and the Bierman algorithm are based on the same principles and are almost equivalent from a numerical standpoint. According to various embodiments, the Carlson / Bierman algorithm is implemented in a modified, e.g. B. generalized, way for the restoration of the previous state z. Based on equations (11a) - (12d). The implementation of the modified Carlson algorithm is shown in more detail below by way of example.
Gemäß verschiedenen Ausführungsformen kann das Radizieren der Gleichungen (8a)-(12d) einem oder mehreren der folgenden Aspekte begegnen:
Gemäß verschiedenen Ausführungsformen kann der Carlson-Algorithmus für die Schritte der Wiederherstellung des früheren Zustands verwendet werden, die z. B. als Folgendes:
Die verallgemeinernde Wiederherstellung des früheren Zustands basierend auf dem modifizierten Carlson kann z. B. mit dem Algorithmus (1), der als die verallgemeinerte Carlson-Wiederherstellung des früheren Zustands (GCDD) bezeichnet wird, wie folgt implementiert werden:The generalized restoration of the previous state based on the modified Carlson may be e.g. With algorithm (1), which is referred to as the Generalized Carlson Recovery of Earlier State (GCDD), as follows:
ALGORITHMUS 1:ALGORITHM 1:
Die verallgemeinerte Wiederherstellung des früheren Zustands, die auf dem oben bereitgestellten Algorithmus basiert oder in einer ähnlichen Weise implementiert ist, kann eine oder mehrere der folgenden Eigenschaften aufweisen:
- • es können sowohl singulärer Matrizen als auch totale Wiederherstellungen des früheren Zustands (R = 0) behandelt werden;
- • jede totale Wiederherstellung des früheren Zustands erzeugt eine neue Zeile, die exakt null ist;
- • ein Rangdefizit wird in der Matrixstruktur codiert:
- ■ es vergrößert die numerische Genauigkeit,
- ■ Zeilen, die exakt null sind, müssen nicht gespeichert werden,
- ■ PI weist typischerweise nur einige von null verschiedene Zeilen auf, wobei deshalb
- ■ der Speicherraum für P = PR + PI um etwa 50 % verringert ist;
- • alle von null verschiedenen Zeilen weisen von null verschiedene Diagonalelemente auf;
- • Zeilen, die exakt null sind, werden anders als von null verschiedene Zeilen verarbeitet; und
- • Zeilen, die exakt null sind, werden während der weiteren Verarbeitung bewahrt.
- • both singular matrices and total restores of the previous state (R = 0) can be treated;
- • each total restore of the previous state creates a new line that is exactly zero;
- • a ranking deficit is coded in the matrix structure:
- ■ it increases the numerical accuracy,
- ■ Lines that are exactly zero do not need to be saved
- ■ P I typically has only a few nonzero lines, therefore
- ■ the memory space for P = P R + P I is reduced by about 50%;
- • all nonzero lines have non-zero diagonal elements;
- • Lines that are exactly zero are processed differently than non-zero lines; and
- • Lines that are exactly zero are preserved during further processing.
Im Vergleich zu dem bezüglich
Zusätzlich weist der oben beschriebene Algorithmus (
Gemäß verschiedenen Ausführungsformen kann der oben beschriebene Algorithmus (1) z. B. basierend auf der folgenden Gleichung zu beliebigen Wiederherstellungen des früheren Zustands erweitert werden:
Dies gibt wie folgt Anlass für folgenden Algorithmus für eine modifizierte Carlson-Wiederherstellung des früheren Zustands gemäß verschiedenen Ausführungsformen:This gives rise to the following modified state Carlson reconstruction algorithm as follows, according to various embodiments:
ALGORITHMUS 2
-
1. Eingabe:
- S - obere (n, n)-Dreiecksmatrix
- v - (n, 1)-Vektor
- tol - Skalar
- S - upper (n, n) triangular matrix
- v (n, 1) vector
- tol - scalar
- 2. Lösen: v = ST a für a; z. B. a = (ST)+ v2. Solve: v = S T a for a; z. For example, a = (S T ) + v
-
3. Berechnen
-
4. Die Ergebnismatrix
S mit dem Algorithmus (1) berechnen:-
S = GCDD(S, a, R, tol)
S calculate with the algorithm (1):-
S = GCDD (S, a, R, tol)
-
Gemäß verschiedenen Ausführungsformen werden zwei unabhängige im hohen Grade stabile Algorithmen zum Radizieren z. B. der Gleichungen (11b) bis (11d) verwendet, siehe den Algorithmus (3) und den Algorithmus (5) im Folgenden. Um der Kürze willen kann die Gleichung (11b) z. B. wie folgt umgeschrieben werden:
Die Grundidee des Algorithmus (3) ist, die Gleichung (21) z. B. wie folgt umzuordnen:
Gemäß verschiedenen Ausführungsformen kann die Matrix Munter Verwendung einer QR-Zerlegung wie folgt faktorisiert werden:
Das Einsetzen der Gleichung (25) in die Gleichung (24) zeigt, dass die Ergebnismatrix
Gemäß verschiedenen Ausführungsformen kann z. B. basierend auf dem Algorithmus (3) die Quadratwurzel der Gleichungen (11b) bis (11d) gebildet werden:According to various embodiments, z. For example, based on the algorithm (3), the square root of equations (11b) to (11d) are formed:
ALGORITHMUS 3:ALGORITHM 3:
-
1. Eingabe:
- SR,k - obere (n, n)-Dreiecksmatrix
- SI,k - obere (n, n)-Dreiecksmatrix
- Ck+1 - (1, n)-Beobachtungsvektor
- R - Skalar
- S R, k - upper (n, n) triangular matrix
- S I, k - upper (n, n) triangular matrix
- C k + 1 - (1, n) observation vector
- R - scalar
-
2. Berechnen:
-
3. Die Matrix aufbauen:
-
4. Orthogonale Zeilentransformationen (z. B. Givens-Rotationen) verwenden, um die letzte Zeile der Matrix M zu eliminieren und die obere Dreiecksform der anderen Zeilen wiederherzustellen. Sicherstellen, dass alle Zeilen, die exakt null sind, bewahrt werden und dass alle von null verschiedenen Zeilen ein von null verschiedenes Diagonalelement aufweisen.
-
5. Die Ergebnismatrix SR,k+1 ist durch die Zeilen 1, 2, ..., n von
M gegeben.5. The result matrix S R, k + 1 is defined by 1, 2,..., N oflines M given. -
6. Die Ergebnismatrix SI,k+1 und Kk+1 mit dem Algorithmus (1) berechnen:
Aufgrund der orthogonalen Zeilentransformation im Punkt
Gemäß verschiedenen Ausführungsformen kann basierend auf dem Algorithmus (5) die Quadratwurzel der Gleichungen (11b) bis (11d) z. B. wie folgt gebildet werden. Der Algorithmus (5) trennt die Gleichung (11b) in drei sequentielle Aktualisierungen des Rangs
Die linke Seite der Gleichung (21) kann durch den im Folgenden aufgelisteten Ablauf berechnet werden. Die Gleichung (27) zeigt, dass der Schritt
- 1. Aktualisierung des
Rangs 1 mit dem Vektor - 2. Aktualisierung des
Rangs 1 mit dem „positiven“ Eigenvektor von - 3. Wiederherstellung des früheren Zustands des
Rangs 1 mit dem „negativen“ Eigenvektor von - 4. Aktualisierung des
Rangs 1 mit dem Vektor
- 1. Update the rank
1 with the vector - 2. Update the rank
1 with the "positive" eigenvector of - 3. Restore the former state of rank
1 with the "negative" eigenvector of - 4. Update the rank
1 with the vector
Gemäß verschiedenen Ausführungsformen kann die totale Wiederherstellung des früheren Zustands im Schritt
Für die Schritte
Gemäß verschiedenen Ausführungsformen kann die Aktualisierung des Rangs
ALGORITHMUS 4
-
1. Eingabe:
- S - obere (n, n)-Dreiecksmatrix
- a - (n, 1)-Vektor
- S - upper (n, n) triangular matrix
- a (n, 1) vector
-
2. Die Matrix aufbauen:
-
3. Die orthogonalen Zeilentransformationen (z. B. Givens-Rotationen) verwenden, um die letzte Zeile von M zu eliminieren. Sicherstellen, dass alle Zeilen, die exakt null sind, bewahrt werden und alle von null verschiedenen Zeilen ein von null verschiedenes Diagonalelement aufweisen.
-
4. Die Ergebnismatrix
S ist durch die Zeilen1 ,2 , ..., n vonM gegeben.4. The result matrixS is through thelines 1 .2 , ..., n ofM given.
Gemäß verschiedenen Ausführungsformen kann der im Folgenden gezeigte Algorithmus (5) ausschließlich für Aktualisierungen des Rangs
ALGORITHMUS 5:ALGORITHM 5:
-
1. Eingabe:
- SR,k - obere (n, n)-Dreiecksmatrix
- SI,k - obere (n, n)-Dreiecksmatrix
- Ck+1 - (1, n)-Beobachtungsvektor
- R - Skalar
- S R, k - upper (n, n) triangular matrix
- S I, k - upper (n, n) triangular matrix
- C k + 1 - (1, n) observation vector
- R - scalar
-
3.
-
4. Die Helfermatrix S1 mit dem Algorithmus (4) berechnen:
-
5. Die Helfermatrix S2 mit dem Algorithmus (4) berechnen:
-
6. Die Helfermatrix S3 mit dem Algorithmus (1) berechnen:
-
7. Die Ergebnismatrix SR,k+1 mit dem Algorithmus (4) berechnen:
-
8. Die Ergebnismatrix SI,k+1 und Kk+1 mit dem Algorithmus (1) berechnen:
Die Gleichungen (12b)-(12d) entsprechenden einer auf einem Kalman-Filter basierenden Wiederherstellung des früheren Zustands, wobei die Matrix PR singulär sein kann. Deshalb kann gemäß verschiedenen Ausführungsformen der Algorithmus (1) angewendet werden. Gemäß verschiedenen Ausführungsformen kann basierend auf dem Algorithmus (6) die Quadratwurzel der Gleichungen (12b) bis (12d) wie folgt gebildet werden:Equations (12b) - (12d) correspond to a Kalman filter-based restoration of the former state, where the matrix P R may be singular. Therefore, according to various embodiments, the algorithm (1) can be applied. According to various embodiments, based on the algorithm (6), the square root of equations (12b) to (12d) may be formed as follows:
ALGORITHMUS 6:ALGORITHM 6:
-
1. Eingabe:
- SR,k - obere (n, n)-Dreiecksmatrix
- SI,k - obere (n, n)-Dreiecksmatrix
- Ck+1 - (1, n)-Beobachtungsvektor
- R - Skalar
- S R, k - upper (n, n) triangular matrix
- S I, k - upper (n, n) triangular matrix
- C k + 1 - (1, n) observation vector
- R - scalar
-
2. Berechnen:
-
3. Die Ergebnismatrix SR,k+1 und Kk+1 mit dem Algorithmus (1) berechnen:
-
- 4. SI,k+1= SI,k 4. S I, k + 1 = S I, k
Gemäß verschiedenen Ausführungsformen wird für ein Kalman-basiertes Filter oder ein ähnlich arbeitendes Filter ein schneller und stabiler Quadratwurzelalgorithmus zur Wiederherstellung des früheren Zustands bereitgestellt, wie oben beschrieben worden ist. Der schnelle und stabile Quadratwurzelalgorithmus zur Wiederherstellung des früheren Zustands kann einen oder mehrere der folgenden Aspekte enthalten:
- ■ die numerische Genauigkeit ist drastisch verbessert (~32 Stellen für doppelte Genauigkeit/die Konditionszahl von
PR ,PI ist auf ihre Quadratwurzel verringert), - ■ der Algorithmus kann viele Zustände handhaben,
- ■ die Gesamtrechenkomplexität ist proportional zu n2 (mit Ausnahme des Algorithmus (3), der maximal n-mal verwendet wird),
- ■ die Speicheranforderungen sind mit einem nicht modifizierten Kalman-Filter vergleichbar,
- ■ die
SI -Dreiecksmatrix verrät die Struktur der Mehrdeutigkeit (die Anzahl der von null verschiedenen Zeilen inSI = die Anzahl der Freiheitsgrade), - ■ die exakte Initialisierung der Fehlerkovarianzmatrix
P mit ∞ ist möglich, - ■ der Algorithmus ist der Modellmehrdeutigkeit und den Geräte-Dedikationen natürlich gewachsen.
- ■ The numerical accuracy is drastically improved (~ 32 digits for double precision / the condition number of
P R .P I is reduced to its square root), - ■ the algorithm can handle many states
- ■ the total computational complexity is proportional to n 2 (except algorithm (3), which is used a maximum of n times),
- ■ memory requirements are comparable to a non-modified Kalman filter,
- ■ the
S I Triangular matrix reveals the structure of ambiguity (the number of non-zero rows inS I = the number of degrees of freedom), - ■ the exact initialization of the error covariance matrix
P with ∞ is possible - ■ The algorithm naturally grows with model ambiguity and device dedications.
Gemäß verschiedenen Ausführungsformen kann der oben beschriebene schnelle und stabile Quadratwurzelalgorithmus zur Wiederherstellung des früheren Zustands in einer Komponente eines Durchlauf-zu-Durchlauf-Systems (z. B. bei der Halbleiterfertigung) verwendet werden, wie bereits beschrieben worden ist. Gemäß verschiedenen Ausführungsformen werden, wenn das Produktionsereignis die Zustandsschätzung (z. B. aufgrund eines Bearbeitungsereignisses, eines Wartungsereignisses usw.) verschlechtert, Daten durch die Gleichungen (8a) bis (8c) hinzugefügt, was außerdem als Prozessaktualisierung bezeichnet wird. Wenn das Produktionsereignis Daten erzeugt hat (z. B. im Fall eines Metrologieereignisses), die die Zustandsschätzung verbessern, werden die Daten durch die Gleichung (11a) bis (12d) hinzugefügt, was außerdem als eine Metrologieaktualisierung bezeichnet wird.According to various embodiments, the above-described fast and stable square root algorithm may be used to restore the past state in a run-to-run system component (eg, in semiconductor manufacturing), as previously described. According to various embodiments, when the production event degrades the state estimate (eg, due to a machining event, a maintenance event, etc.), data is added through equations (8a) through (8c), which is also referred to as a process update. When the production event has generated data (eg, in the case of a metrology event) that improves state estimation, the data is added by Equation (11a) through (12d), which is also referred to as a metrology update.
Gemäß verschiedenen Ausführungsformen können die Genauigkeitsinformationen, die z. B. durch die durch die Gleichung (5) gegebene Fehlerstandardabweichung repräsentiert werden, verwendet werden, wie oben beschrieben worden ist. Die ankommenden Messdaten yk+1 können durch das Berechnen der normierten Erneuerung des Verhältnisses z. B. gemäß Folgendem validiert werden:
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Wie oben z. B. bezüglich der
Wie oben bezüglich der
Wie oben erwähnt worden ist, steht der Bierman-Algorithmus eng mit dem Carlson-Algorithmus in Beziehung, wobei er die gleichen ausgezeichneten numerischen Eigenschaften aufweisen kann. Er verwendet eine verallgemeinernde Cholesky-Faktorisierung gemäß folgendem:
Gemäß verschiedenen Ausführungsformen können die Algorithmen 1, 2, 3, 4, 5, 6 außerdem hinsichtlich der Gleichung (29) umformuliert werden. Anstelle der Faktorisierung (15) oder (16) können die folgenden Faktorisierungen verwendet werden, um die oben beschriebenen Algorithmen 1, 2, 3, 4, 5, 6 entsprechend umzuformulieren:
Als eine Alternative zum Algorithmus (1) kann der sogenannte Potter-Algorithmus zur Wiederherstellung des früheren Zustands gemäß verschiedenen Ausführungsformen verwendet werden. Wie der Carlson-Algorithmus kann der Potter-Algorithmus für die Wiederherstellungen des früheren Zustands in der Form der Gleichung (17) verwendet werden. Ein Algorithmus (7) für die Potter-Wiederherstellung des früheren Zustands ist im Folgenden beispielhaft gezeigt:As an alternative to algorithm (1), the so-called Potter algorithm may be used to restore the previous state according to various embodiments. Like the Carlson algorithm, the Potter algorithm can be used for restoring the former state in the form of equation (17). An algorithm (7) for the previous state Potter restoration is shown by way of example below:
ALGORITHMUS 7:ALGORITHM 7:
-
1. Eingabe:
-
S - obere (n, n)-Dreiecksmatrix -
a - (n, 1)-Vektor -
R - Skalar
-
S - upper (n, n) triangular matrix -
a - (n, 1) vector -
R - Scalar
-
-
2. Berechnen:
-
3. Die Ergebnismatrix berechnen:
Der Algorithmus (7) kann weniger präzise als der Carlson-Algorithmus sein. Dies kann z. B. in
Gemäß verschiedenen Ausführungsformen kann ein Informationsfilter verwendet werden, um die Funktionen der Datenverschmelzungsschaltung
Wann bei dieser Herangehensweise auch immer eine Schätzung x̂kdes realen Zustands (oder die Schätzung linearer Zustandskombinationen âk =
Aufgrund der Modellmehrdeutigkeit kann die Fehlerkovarianzmatrix Pk singulär sein, was bedeutet, dass eine einfache Inversion nicht möglich sein kann. Dies entspricht der Tatsache, dass die einzelnen Zustände nicht durch die Daten im Gegensatz zu einigen Zustandskombinationen âk =
ALGORITHMUS 8:ALGORITHM 8:
-
1. Eingabe:
-
Z - (n, n)-Dreiecksmatrix; Quadratwurzel der Informationsmatix, d. h., P-1 = ZT Z - ẑ - umgesetzter (n, 1)-Zustandsvektor
-
C - (1, n)-Zustandsextraktorvektor
-
Z - (n, n) triangular matrix; Square root of the information matrix, ie, P -1 = Z T Z - ẑ - converted (n, 1) state vector
-
C - (1, n) state extractor vector
-
-
2. Den orthogonalen Spaltenkompressor TT (z. B. unter Verwendung einer Singulärwertzerlegung) berechnen
-
3. Berechnen
-
4. Der Schätzfehler der linearen Zustandskombination âk =
C x̂k ist nur endlich, falls C2 = 0 gilt. Die Zustandsschätzung nicht verwenden, falls diese Bedingung verletzt ist.4. The estimation error of the linear state combination â k =C x k is only finite if C 2 = 0. Do not use the state estimate if this condition is violated. -
5. Die Schätzung der Zustandskombination α̂ =
C x̂ und ihrer endlichen Fehlervarianz ist durch Folgendes gegeben:C x and its finite error variance are given by:
Gemäß verschiedenen Ausführungsformen kann die Fehlerkovarianzmatrix P in Folgendes zerlegt werden:
Während der Iteration werden die Dreiecksmatrix Lk und die Diagonalmatrizen DR,k und DI,k aktualisiert. In diesem alternativen Algorithmus können die Prozessaktualisierung und die Metrologieaktualisierung nicht voneinander getrennt werden. Ferner weist dieser alternative Algorithmus eine Rechenkomplexität von n3 auf, wobei dieser alternative Algorithmus ferner numerisch instabil ist.During the iteration, the triangular matrix L k and the diagonal matrices D R, k and D I, k are updated. In this alternative algorithm, the process update and the metrology update can not be separated. Furthermore, this alternative algorithm has a computational complexity of n 3 , which alternative algorithm is also numerically unstable.
Im Folgenden wird ein Algorithmus, der eine robuste Unterscheidung zwischen der endlichen und der unendlichen Varianz des Vorhersagefehlers bereitstellt, für ein Kalman-basiertes Filter oder irgendein anderes ähnliches Filter basierend z. B. auf den Gleichungen (8a) bis (12d) bereitgestellt, wie oben beschrieben worden ist. Die Gleichung (10) kann, wie oben beschrieben worden ist, ein zentraler Entscheidungspunkt des Algorithmus sein (siehe die Gleichungen (11a) bis (12d)), weil der erste Fall und der zweite Fall voneinander unterschieden (z. B. abgegrenzt) werden müssen, wie z. B. basierend auf einer Unterscheidungsbedingung, wie z. B.:
Aufgrund einer eingeschränkten numerischen Genauigkeit irgendeines digitalen Computers unterscheidet sich der berechnete Wert von FI normalerweise vom Idealwert. Deshalb kann eine modifizierte Unterscheidungsbedingung verwendet werden, wie z. B.:
Basierend auf einem Beispiel veranschaulichen
Gemäß verschiedenen Ausführungsformen kann der jeweilige Beobachtungsvektor (z. B. in der Gleichung (11c)) z. B. durch einen modifizierten Beobachtungsvektor ersetzt sein. Mit C: = Ck+1 und |C0| = 1 kann der modifizierte Beobachtungsvektor wie folgt formuliert werden:
In diesem Fall ist |C| die Länge des Beobachtungsvektors C. Das Einsetzen der Gleichung (30) in die Gleichung (11c) führt z. B. zu:
Im Ergebnis kann die Rekursion des unendlichen Teils der Fehlerkovarianzmatrix PI von der Länge des Beobachtungsvektors
Der Unterscheidungsparameter FI kann für jeden von null verschiedenen Beobachtungsvektor C null sein, wenn (und nur wenn) FI0 null ist. Deshalb kann der modifizierte Unterscheidungsparameter FI0 anstelle des Unterscheidungsparameters FI wie folgt verwendet werden, um den ersten und den zweiten Fall voneinander zu unterscheiden:
Der modifizierte Diskriminator FI0 kann für die Unterscheidung der Fälle geeigneter sein als der vorher beschriebene nicht modifizierte Diskriminator FI, weil der modifizierte Diskriminator FI0 von der Länge des Beobachtungsvektors C unabhängig ist. Dies ist z. B. in
Die Herangehensweise zum Modifizieren der Diskriminatoren FI kann außerdem auf die oben beschriebenen Quadratwurzelalgorithmen angewendet werden, bei denen die Fehlerkovarianzmatrix aktualisiert wird. Dies kann z. B. mit den folgenden Gleichungen formuliert werden:
Ferner kann gemäß verschiedenen Ausführungsformen die Fehlervarianz für die Vorhersage beliebiger Zustandskombinationen und Ausgaben berechnet werden. Die Zustandsvorhersage kann z. B. auf der folgenden Gleichung basieren:
In diesem Fall ist αk+1 die Zustandskombination von Interesse und ist
Der robuste, modifizierte Diskriminator
Ferner kann die Ausgabevorhersage z. B. auf der folgenden Gleichung basieren:
In diesem Fall ist ŷk+1|k die Schätzung von yk+1 basierend auf den Daten bis zum Zeitpunkt
Der robuste, modifizierte Diskriminator
Gemäß verschiedenen Ausführungsformen kann der schnelle und numerisch stabile Quadratwurzelalgorithmus zum Aktualisieren der Zustandsinformationen und/oder zum Wiederherstellen des früheren Zustands der Zustandsinformationen in einer Komponente eines Steuersystem und/oder zum Überwachen diskreter Prozesse verwendet werden, wie oben beschrieben worden ist. Zusätzlich kann ein normierter Beobachtungsvektor (z. B. ein normierter Zustandsextraktionsvektor) verwendet werden, um einen robusten, modifizierten Diskriminator (z. B. FI0) zu berechnen, um die unendliche Vorhersagevarianz des Kalman-basierten Filters zu detektieren. Gemäß verschiedenen Ausführungsformen kann der Diskriminator für jede Metrologieaktualisierung gespeichert werden, um die richtige Unterscheidung des ersten und des zweiten Falls zu verfolgen.According to various embodiments, the fast and numerically stable square root algorithm may be used to update the state information and / or restore the prior state of state information in a component of a control system and / or to monitor discrete processes, as described above. In addition, a normalized observation vector (eg, a normalized state extraction vector) may be used to compute a robust, modified discriminator (eg, F I0 ) to detect the infinite predictive variance of the Kalman-based filter. According to various embodiments, the discriminator may be stored for each metrology update to track the correct distinction of the first and second cases.
Gemäß verschiedenen Ausführungsformen wird ein schneller und stabiler Quadratwurzel-Aktualisierungsalgorithmus für ein Kalman-Filter bereitgestellt. Im Folgenden wird ein schneller und numerisch stabiler Quadratwurzelalgorithmus zum Aktualisieren eines Kalman-basierten Filters oder irgendeines anderen ähnlichen Filters basierend z. B. auf den Gleichungen (1), (1*), (2), (2*), (8) bis (12) bereitgestellt, wie oben beschrieben worden ist. Wie oben beschrieben worden ist, können einige typische Probleme einer Durchlauf-zu-Durchlauf-Steuerung durch das Zerlegen der Fehlerkovarianzmatrizen P in einen endlichen und in einen unendlichen Teil gelöst werden. Die im Folgenden als Beispiele beschriebenen Quadratwurzelalgorithmen, die auf den zerlegten Fehlerkovarianzmatrizen P basieren, können jedoch in der gleichen Weise auf die nicht zerlegten Fehlerkovarianzmatrizen P angewendet werden, wie hier ebenso beschrieben wird. Die numerische Genauigkeit kann beträchtlich verbessert werden, falls beide Teile in Quadratwurzeln faktorisiert werden. Dies transformiert die oben beschriebene Gleichung (8a) in Folgendes:
In einer Durchlauf-zu-Durchlauf-Anwendung kann keine Zustandsübergangsmatrix verwendet werden, d. h., (Ak+1 = In). Dies kann die Gleichungen (33), (34) zu Folgendem vereinfachen:
Die Gleichung (34a) kann trivial zu behandeln sein, während die Gleichung (33a) einer Quadratwurzelaktualisierung entsprechen kann. Die Rechenkomplexität der herkömmlichen Aktualisierungsalgorithmen ist jedoch zu n3 proportional. Die Anzahl n der bei einer Durchlauf-zu-Durchlauf-Steuerung verwendeten Zustände beträgt typischerweise einige hundert. Deshalb werden im Folgenden verschiedene Ausführungsformen beschrieben, die einen Aktualisierungsalgorithmus mit einer verringerten Rechenkomplexität bereitstellen.Equation (34a) may be trivial, while Equation (33a) may correspond to a square root update. However, the computational complexity of the conventional update algorithms is proportional to n 3 . The number n of states used in a pass-to-pass control is typically several hundred. Therefore, various embodiments will be described below that provide an update algorithm with reduced computational complexity.
Gemäß verschiedenen Ausführungsformen wurden die folgenden Beobachtungen an den oben beschriebenen Sätzen von Gleichungen (3) und (4) gemacht:
- • Falls die Prozessrauschmatrix
Q eine Diagonalmatrix ist, wird das Prozessrauschen nur in der Hauptdiagonale der FehlerkovarianzmatrixP angesammelt. - • Das Diagonalelement
P (i, i) beeinflusst die Kalman-Iteration solange nicht, wie der Zustandx (i) in keine Metrologieaktualisierung einbezogen ist. - • Die Anzahl der von null verschiedenen Elemente des Beobachtungsvektors C ist typischerweise viel kleiner als die Anzahl der Zustände (für eine Durchlauf-zu-Durchlauf-Steuerung: 2-4 gegen einige hundert).
- • If the process noise matrix
Q is a diagonal matrix, the process noise becomes only in the main diagonal of the error covariance matrixP accumulated. - • The diagonal element
P (i, i) does not affect the Kalman iteration as long as the conditionx (i) is not involved in any metrology update. - The number of non-zero elements of the observation vector C is typically much smaller than the number of states (for a pass-to-run control: 2-4 vs. a few hundred).
Diese Beobachtungen können ausgenutzt werden, um die Rechenkomplexität der Gleichung (33a) zu verringern. Eine Modifikation kann z. B. wie folgt sein, siehe
- • Das akkumulierten Prozessrauschen kann von der Fehlerkovarianzmatrix P getrennt werden, siehe z.
B. das Bezugszeichen 702 . - • Neues (z. B. ankommendes)
Prozessrauschen 706 wird zu einer separaten Diagonalmatrix P0 (z. B. für die Prozessaktualisierung) hinzugefügt, siehe z.B. das Bezugszeichen 704 . - • Wenn der Zustand x(i) in eine Metrologieaktualisierung einbezogen ist, wird das Prozessrauschen vor dem Aktualisieren der Fehlerkovarianzmatrix P von P0(i, i) zu P(i, i) übertragen 700t.
- The accumulated process noise can be separated from the error covariance matrix P, see e.g. B. the
reference number 702 , - • New (eg incoming)
process noise 706 is added to a separate diagonal matrix P 0 (eg for process update), see e.g. B. thereference number 704 , - If the state x (i) is involved in a metrology update, the process noise is transferred 700t before updating the error covariance matrix P from P 0 (i, i) to P (i, i).
Wie z. B. in
Diese Herangehensweise kann in zwei Algorithmen zusammengefasst werden, wie im Folgenden ausführlicher beschrieben wird. Im Allgemeinen wird die Fehlerkovarianzmatrix P z. B. in Folgendes zerlegt:
Gemäß verschiedenen Ausführungsformen können die hier beschriebenen Algorithmen (z. B. die Algorithmen (9), (10)) zum Trennen des Prozessrauschens von der Fehlerkovarianzmatrix
Mit
ALGORITHMUS 9: ALGORITHM 9:
-
1. Eingabe:
- Sk - obere (n, n)-Dreiecksmatrix
- P0,k - (n, n)-Diagonalmatrix
- Qk+1 - (n, n)-Diagonalmatrix
- S k - upper (n, n) triangular matrix
- P 0, k - (n, n) diagonal matrix
- Q k + 1 - (n, n) diagonal matrix
-
2. Berechnen:
ALGORITHMUS 10:ALGORITHM 10:
-
1. Eingabe:
- Sk - obere (n, n)-Dreiecksmatrix
- P0,k - (n, n)-Diagonalmatrix
- Ck+1 - (1, n)-Beobachtungsvektor
- S k - upper (n, n) triangular matrix
- P 0, k - (n, n) diagonal matrix
- C k + 1 - (1, n) observation vector
- 2. Alle Indizes i mit Ck+1(i) ≠ 0 und P0,k(i, i) ≠ 0 finden2. Find all indices i with C k + 1 (i) ≠ 0 and P 0, k (i, i) ≠ 0
-
3. Für alle im Schritt 2 gefundenen Indizes i die folgenden Schritte ausführen:
- a. Initialisieren: a = (0 0 ... 0)T
- b.
- c. Den Algorithmus (3) verwenden, um Sk: Sk := R1UD(Sk, a) zu modifizieren
- d. P0,k(i, i) = 0 setzen
- a. Initialize: a = (0 0 ... 0) T
- b.
- c. Use the algorithm (3) to modify S k : S k : = R 1UD (S k, a)
- d. P 0, k (i, i) = 0
- 4. Den Quadratwurzelalgorithmus zur Wiederherstellung des früheren Zustands anwenden, um die Matrix Sk+1 zu berechnen4. Apply the square root algorithm for restoring the previous state to calculate the matrix S k + 1
Gemäß verschiedenen Ausführungsformen mit z. B.
Gemäß verschiedenen Ausführungsformen wird ein schneller und numerisch stabiler Quadratwurzelalgorithmus für die Prozessaktualisierung bereitgestellt, wie oben beschrieben worden ist. In diesem Fall wird die Rechenkomplexität von der Ordnung n3 zur Ordnung n2 verringert, wenn die Anzahl der von null verschiedenen Elemente in dem Beobachtungsvektor C viel kleiner als die Anzahl der Zustände n ist. Ferner nehmen die Speicheranforderungen nicht signifikant zu, da nur n zusätzliche Werte gespeichert werden müssen.According to various embodiments, a fast and numerically stable square root algorithm is provided for the process update, as described above. In this case, the computational complexity is reduced from the order n 3 to the order n 2 when the number of non-zero elements in the observation vector C is much smaller than the number of states n. Furthermore, the memory requirements do not increase significantly because only n additional values need to be stored.
Gemäß verschiedenen Ausführungsformen kann der schnelle und numerisch stabile Quadratwurzelalgorithmus für die Prozessaktualisierung in einer Komponente eines Steuersystems und/oder zum Überwachen diskreter Prozesse verwendet werden, wie oben beschrieben worden ist. Gemäß verschiedenen Ausführungsformen kann die Fehlerkovarianzmatrix in STS + P0 oder in eine ähnliche Summe zerlegt werden. Neues Prozessrauschen kann zu der Diagonalmatrix P0 hinzugefügt werden. Das Prozessrauschen wird von P0(i, i) (z. B. nur) zu STS übertragen, wenn ein Zustand x(i) in die entsprechende Metrologieaktualisierung einbezogen ist.According to various embodiments, the fast and numerically stable square root algorithm may be used for process updating in a component of a control system and / or for monitoring discrete processes, as described above. According to various embodiments, the error covariance matrix may be decomposed into S T S + P 0 or a similar sum. New process noise can be added to the diagonal matrix P 0 . Process noise is transferred from P 0 (i, i) (eg, only) to S T S when a state x (i) is included in the corresponding metrology update.
Gemäß verschiedenen Ausführungsformen können in einer ähnlichen Weise eine oder mehrere alternative Faktorisierungen verwendet werden, wie oben beschrieben worden ist. Anstelle der Gleichung (35) kann eine der folgenden alternativen Faktorisierungen verwendet werden, um die Algorithmen (9) und/oder (10) umzuformulieren:
Gemäß verschiedenen Ausführungsformen kann die jeweilige Faktorisierungsmatrix S oder U für den Radizieralgorithmus eine (n, n)-Dreiecksmatrix sein, die eine Anzahl von n Zeilen und n Spalten aufweist, wobei n eine natürliche Zahl ist, wie oben veranschaulicht worden ist, siehe
Wenn die Fehlerkovarianzmatrix z. B. basierend auf P = ST S oder P = UT D U faktorisiert wird, wie oben beschrieben worden ist, ist die jeweilige Faktorisierungsmatrix S oder U (und deshalb außerdem die Fehlerkovarianzmatrix P) vom Rang R mit einer Anzahl von n Zeilen, wobei sie eine Anzahl von n minus R Zeilen, die exakt null sind, aufweist. Ferner ist in diesem Fall für jede der n Zeilen, die wenigstens ein von null verschiedenes Element enthält, das entsprechende Diagonalelement der jeweiligen Faktorisierungsmatrix S oder U nicht null. Wenn alternativ die Fehlerkovarianzmatrix z. B. basierend auf P = S ST oder P = U D UT faktorisiert wird, ist die jeweilige Faktorisierungsmatrix S oder U (und deshalb außerdem die Fehlerkovarianzmatrix P) vom Rang R mit einer Anzahl von n Spalten, wobei sie eine Anzahl von n minus R Spalten, die exakt null sind, aufweist. Ferner ist in diesem Fall für jede der n Spalten, die wenigstens ein von null verschiedenes Element enthält, das entsprechende Diagonalelement der jeweiligen Faktorisierungsmatrix S oder U nicht null. In beiden Fällen ist die jeweilige Faktorisierungsmatrix gemäß verschiedenen Ausführungsformen eine Dreiecksmatrix.If the error covariance matrix z. B. based on P = S T S or P = U T DU is factorized, as described above, the respective factorization matrix is S or U (and therefore also the error covariance matrix P) of rank R with a number of n rows, where they have a number of n minus R lines that are exactly zero. Further, in this case, for each of the n rows containing at least one element other than zero, the corresponding diagonal element of the respective factorization matrix S or U is not zero. Alternatively, if the error covariance matrix z. For example, based on P = SS T or P = UDU T , the respective factorization matrix is S or U (and therefore also the error covariance matrix P) of rank R with a number of n columns, where it is a number of n minus R columns which are exactly zero. Further, in this case, for each of the n columns containing at least one element other than zero, the corresponding diagonal element of the respective factorization matrix S or U is not zero. In both cases, according to various embodiments, the respective factorization matrix is a triangular matrix.
Gemäß verschiedenen Ausführungsformen erlauben die Zeilen, die exakt null sind, und/oder die Spalten, die exakt null sind, eine strukturelle Codierung einer Verringerung des Rangs. Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen wird hier ein schneller und numerisch stabiler Quadratwurzelalgorithmus basierend auf einer blockdiagonalen Zustandsübergangsmatrix bereitgestellt, wie im Folgenden ausführlicher beschrieben wird. Es werden verschiedene Algorithmen für ein Kalman-basiertes Filter oder irgendein anderes ähnliches Filter basierend auf den Gleichungen (1), (1*), (2), (2*) bereitgestellt, wie oben beschrieben worden ist. Ausführlicher können die Zustandsinformationen des Prozesses (
Ein schneller und stabiler Quadratwurzel-Aktualisierungsalgorithmus für ein Unendlichkeitsfilter ist oben für den Fall beschrieben worden, dass keine Zustandsübergangsmatrix, A, verwendet wird (z. B. für Ak+1 = I). Dies transformiert die Gleichungen (8a, 8b, 8c) in:
Gemäß verschiedenen Ausführungsformen kann der Prozessaktualisierungsalgorithmus konfiguriert sein, die Zeilen, die exakt null sind, zu bewahren, wobei er sicherstellt, dass alle von null verschiedenen Zeilen von null verschiedene Diagonalelemente aufweisen, weil die oben beschriebene entsprechende Quadratwurzel-Wiederherstellung des früheren Zustands gleichzeitig anwendbar sein sollte. Gemäß verschiedenen Ausführungsformen ist die Rechenkomplexität der hier beschriebenen Algorithmen kleiner als proportional zu n3.According to various embodiments, the process update algorithm may be configured to preserve the lines that are exactly zero, ensuring that all nonzero lines of zero have different diagonal elements, because the above-described corresponding square root reconstruction of the previous state may apply simultaneously should. According to various embodiments, the computational complexity of the algorithms described herein is less than proportional to n 3 .
Es wurde erkannt, dass in praktischen Anwendungen der Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen kann die Prozessaktualisierung das Folgende enthalten: Erstens kann die Zustandsübergangsmatrix gemäß verschiedenen Ausführungsformen als eine Blockdiagonalmatrix
Gemäß verschiedenen Ausführungsformen kann die Prozessaktualisierung in zwei Teile getrennt werden: erstens einen Zustandsübergang und zweitens eine Ergänzung von Prozessrauschen. Für den zweiten Teil, d. h., die Ergänzung von Prozessrauschen, kann das oben beschriebene Verfahren verwendet werden. Der erste Teil, d. h., der Zustandsübergang, kann basierend auf den folgenden Gleichungen umformuliert werden:
Durch das Konzentrieren auf eine einzige Unteraktualisierung kann die Gleichung (41) z. B. wie folgt als die Gleichung (43) formuliert werden:
Der entsprechende Nichteinheitsblock
Verschiedene im Folgenden beschriebene Ausführungsformen sind auf Algorithmen für eine Prozessaktualisierung, die den Zustandsübergang enthält, bezogen.Various embodiments described below are related to process update algorithms that include the state transition.
Mit den folgenden Gleichungen:
ALGORITHMUS 11:ALGORITHM 11:
-
Eingabe:
- SR - obere (n, n)-Dreiecksmatrix
- SI - obere (n, n)-Dreiecksmatrix
- P0 - (n, n)-Diagonalmatrix
-
A - blockdiagonale (n, n)-Zustandsübergangsmatrix
- S R - upper (n, n) triangular matrix
- S I - upper (n, n) triangular matrix
- P 0 - (n, n) diagonal matrix
-
A - block diagonal (n, n) state transition matrix
-
Für alle (Nichteinheits-) Blockmatrizen
A ∗ vonA das Folgende ausführen:- 1. Den Satz
I der Zeilen-/Spaltenindizes, die der aktuellen BlockmatrixA ∗ entsprechen, bestimmen. Den kleinsten Index inI mit i bezeichnen. - 2. Die Spalten
I von SR und SI von rechts mit - 3. Die obere Dreiecksform der Zeilen I von A durch orthogonale Zeilentransformationen unter Verwendung des Algorithmus (12) wiederherstellen. Falls A∗ regulär ist, kann die Transformation nur auf die Zeilen I eingeschränkt werden. Andernfalls muss die Transformation auf die Zeilen i, i + 1, ..., n ausgedehnt werden. In beiden Fällen werden die Spalten
1 ,2 , ..., i - 1 unverändert gelassen.- Fall 1 (A* ist regulär):
- Fall 2 (A* ist singulär):
- Fall 1 (A* ist regulär):
- 4. Alle Indizes in I mit P0(i, i) ≠ 0 finden
- 5. Für alle im Schritt
4 gefundenen Indizes i das Folgende ausführen:- a. Initialisieren: aR = aI = (0 0 ... 0)T
- b.
- c. Den Algorithmus (3) verwenden, um SR und SI zu modifizieren:
- d. P0(i, i) = 0 setzen
A * FromA do the following:- 1. The sentence
I the row / column indexes, that of the current block matrixA * Match, determine. The smallest index inI denote by i. - 2. The columns
I from S R and S I from the right with - 3. Restore the upper triangular shape of lines I of A by orthogonal row transformations using the algorithm (12). If A * is regular, the transformation can only be restricted to rows I. Otherwise, the transformation must be extended to lines i, i + 1, ..., n. In both cases, the columns become
1 .2 , ..., i - 1 left unchanged.- Case 1 (A * is regular):
- Case 2 (A * is singular):
- Case 1 (A * is regular):
- 4. Find all indices in I with P 0 (i, i) ≠ 0
- 5. For everyone in the step
4 found indexes i do the following:- a. Initialize: a R = a I = (0 0 ... 0) T
- b.
- c. Use the algorithm (3) to modify S R and S I :
- d. P 0 (i, i) = 0
- 1. Den Satz
Gemäß verschiedenen Ausführungsformen wird die (m, n)-Eingangsmatrix S in eine obere Dreiecksmatrix
ALGORITHMUS 12:ALGORITHM 12:
-
1. Eingabe:
S - (m, n)-Matrix1. Input:S - (m, n) matrix -
2. Die Zeilen von
S , die exakt null sind, detektieren und entfernen2. The lines ofS , which are exactly zero, detect and remove -
3. Orthogonale Zeilentransformationen (z. B. eine QR-Zerlegung, Givens-Rotationen usw.) verwenden, um
S in eine obere DreiecksmatrixM zu transformieren.3. Use orthogonal row transformations (eg, a QR decomposition, Givens rotations, etc.) toS into an upper triangular matrixM to transform. -
4. Die (m, n)-Ergebnismatrix
S mit Nullen initialisieren4. The (m, n) result matrixS initialize with zeros -
5. Für alle Zeilen r von
M die folgenden Schritte ausführen:- a. Das erste von null verschiedene Element von links finden und den Index des Elements mit
k bezeichnen - b. Falls die Zeile
k exakt null ist, die Schritte c-e überspringen. Andernfalls die Zeile r von M in die Zeilek vonS kopieren. - c. Falls die Zeile
k vonS belegt ist, orthogonale Zeilentransformationen (z. B. Givens-Rotationen) auf die Zeile r vonM und die Zeilek vonS anwenden, um das ElementM (r,k ) zu eliminieren. - d. Alle Elemente der Zeile r von
M auf null setzen, falls |M(r,i)| < ε gilt, wobei der Schwellenwert ε z. B. die maximale Norm vonM sein könnte. - e. Die Schritte a-e wiederholen.
M perform the following steps:- a. Find the first non-zero element from the left and use the index of the element
k describe - b. If the line
k is exactly zero, skip steps ce. Otherwise, the line r from M to the linek fromS copy. - c. If the line
k fromS is occupied, orthogonal row transformations (eg Givens rotations) to the row r ofM and the linek fromS apply to the elementM (R,k ) to eliminate. - d. All elements of the row r of
M set to zero if | M (r, i) | <ε holds, wherein the threshold value ε z. B. the maximum norm ofM could be. - e. Repeat steps ae.
- a. Das erste von null verschiedene Element von links finden und den Index des Elements mit
In diesem Fall kann der Algorithmus (4) für die Aktualisierung des Rangs
Gemäß verschiedenen Ausführungsformen ist die Gesamtrechenkomplexität der Algorithmen (4), (11) und (12) beträchtlich kleiner als jeweils die Ordnung n3, weil die Algorithmen (normalerweise) (anstelle der gesamten n Zeilen und/oder Spalten) nur die wenigen Zeilen und/oder Spalten verwenden, die dem aktuellen Nichteinheitsblock
Gemäß verschiedenen Ausführungsformen kann die Zustandsübergangsmatrix, A, als eine Blockdiagonalmatrix
Im Folgenden wird ein Algorithmus zur schnellen Berechnung des exakten Gradienten der logarithmischen Wahrscheinlichkeitsfunktion für ein Kalman-basiertes Filter oder irgendein anderes ähnliches Filter basierend auf z. B. den Gleichungen (1), (1*), (2), (2*) bereitgestellt, wie oben beschrieben worden ist. Wie bereits beschrieben worden ist, können die Zustandsinformationen des Prozesses (
Gemäß verschiedenen Ausführungsformen kann der unbekannte Zustand xk mit einem auf einem Kalman-Filter basierenden Algorithmus geschätzt werden. Der jeweilige auf einem Kalman-Filter basierende Algorithmus kann in der Datenverschmelzungsschaltung
Um den Initialisierungsproblemen und der Modellmehrdeutigkeit gewachsen zu sein, wie oben beschrieben worden ist, kann es vorteilhaft sein, die Fehlerkovarianzmatrix des Filters in einen endlichen und einen unendlichen Teil zu zerlegen. Nach jedem Prozess- oder Wartungsschritt kann eine Prozessaktualisierung ausgeführt werden. Unter Verwendung dieses Verfahrens werden der geschätzte Zustand x̂k und die zerlegten Kovarianzmatrizen PR,k und PI,k basierend auf den Gleichungen (8a), (8b) und (8c) aktualisiert, wie oben beschrieben worden ist. Ferner können die Metrologiedaten durch die Metrologieaktualisierung basierend auf den Gleichungen (9) bis (12d) zu dem Zustand hinzugefügt werden, wie oben beschrieben worden ist. Die Bestimmung der Prozessmodellparameter Qk, Rk, Bk, Dk kann jedoch ein praktischer Hauptaspekt beim Anwenden Kalman-basierter Filter auf echte Produktionsprozesse sein.In order to cope with the initialization problems and model ambiguity, as described above, it may be advantageous to decompose the error covariance matrix of the filter into a finite and an infinite portion. After each process or maintenance step, a process update can be performed. Using this method, the estimated state x k and the decomposed covariance matrices P R, k and P I, k are updated based on the equations (8a), (8b) and (8c) as described above. Further, the metrology data may be added to the state by the metrology update based on the equations (9) to (12d) as described above. However, the determination of the process model parameters Qk , Rk , Bk , Dk may be a practical major aspect when applying Kalman-based filters to real production processes.
Im Allgemeinen können die Produktionsdaten in praktischen Situationen eine verfügbare Informationsquelle sein. Ein leistungsfähiges datengesteuertes Verfahren, um die Kalman-Filter-Parameter abzustimmen, kann die Schätzung der maximalen Wahrscheinlichkeit sein. Die Wahrscheinlichkeit ist die Wahrscheinlichkeit, dass irgendein gegebener Datensatz zu dem Motel und seinen Parametern passt. Ungleich zu vielen anderen Fällen kann die Berechnung des (logarithmierten) Wahrscheinlichkeitswerts für auf Kalman-Filtern basierende Modelle verwendet werden, wie hier beschrieben wird. Gemäß verschiedenen Ausführungsformen kann die Schätzung der maximalen Wahrscheinlichkeit auf den folgenden Gleichungen basieren:
Das Ziel der Schätzung der maximalen Wahrscheinlichkeit kann sein, den logarithmischen Wahrscheinlichkeitswert
Es können mehrere Verfahren verwendet werden, um den Gradientenvektor des logarithmischen Wahrscheinlichkeitswerts L zu berechnen, wie z. B. endliche Differenzen, implizite endliche Differenzen und der Algorithmus der exakten Bewertung (ES-Algorithmus), wie im Folgenden veranschaulicht wird.Several methods may be used to calculate the gradient vector of the logarithmic probability value L, such as: Finite differences, implicit finite differences, and the algorithm of exact evaluation (ES algorithm), as illustrated below.
Um den Gradientenvektor des logarithmischen Wahrscheinlichkeitswerts
Um den vollen Gradientenvektor für alle p Prozessmodellparameter zu bestimmen, muss der logarithmische Wahrscheinlichkeitswert L für wenigstens p + 1 etwas modifizierte Sätze von Prozessmodellparametern berechnet werden. Die Berechnung eines einzigen logarithmischen Wahrscheinlichkeitswerts L, z. B. über die Gleichungen (46)-(49), erfordert es, die Kalman-Filter-Gleichungen (8a)-(12d) über den gesamten Datensatz (
Es können numerische Optimierungsalgorithmen verwendet werden, um die endlichen Differenzen der optimierten Funktion (z. B. über den Algorithmus der konjugierten Gradienten) implizit zu berechnen. Dies kann effizienter als das explizite Berechnen des vollen Gradienten für jeden Optimierungsschritt sein. Der Aufwand kann jedoch immer noch riesengroß sein.Numerical optimization algorithms can be used to implicitly compute the finite differences of the optimized function (eg, via the conjugate gradient algorithm). This can be more efficient than explicitly calculating the full gradient for each optimization step. However, the effort can still be huge.
Gemäß verschiedenen Ausführungsformen kann ein Algorithmus zum Berechnen des vollen Gradientenvektors der Wahrscheinlichkeitsfunktion mit einer einzigen Vorwärts- und Rückwärtsiteration des Kalman-Filters verwendet werden. Dieser Algorithmus kann z. B. für die Abstimmprozessmodellparameter, z. B. der Rauschskalierungsmatrizen Qk und Rk, gemäß einem Satz von Gleichungen (50a) wie folgt anwendbar sein:
Gemäß verschiedenen Ausführungsformen können die entsprechenden Vektoren rk, ek und Matrizen Nk, Ek mit dem Algorithmus (13) wie folgt berechnet werden:According to various embodiments, the corresponding vectors r k , e k and matrices N k , E k can be calculated with the algorithm (13) as follows:
ALGORITHMUS 13: ALGORITHM 13:
-
1. x̂k für
k = 1, 2, ..., N unter Verwendung der Gleichungen (8a)-(12d) berechnen. υk := yk - Ckx̂k-1 - Dk, FR,k, FI,k und Kk für jedesk speichern.1. x k fork = 1, 2, ..., N using Equations (8a) - (12d). υ k : = y k - C k x k-1 - D k , F R, k , F I, k and K k for eachk to save. - 2. Initialisierung: rN = 0; NN = 02. Initialization: r N = 0; N N = 0
-
3. für
k = N, N - 1, ..., 1k = N, N - 1, ..., 1
Veranschaulichend repräsentiert der Algorithmus (13) den Rückwärtsiterationsteil des ES-Algorithmus. Der Algorithmus zur exakten Bewertung ist nicht anwendbar, wenn die Messdaten für wenigstens einen Zeitpunkt
Gemäß verschiedenen Ausführungsformen wird hier ein modifizierter Algorithmus (13) bereitgestellt, um die Einschränkung des herkömmlichen Algorithmus zu überwinden, wobei der hier bereitgestellte modifizierte Algorithmus z. B. fehlenden Messwerten gewachsen ist. Gemäß verschiedenen Ausführungsformen kann der folgende Algorithmus (14) verwendet werden, um den Gradientenvektor des logarithmischen Wahrscheinlichkeitswerts L zu berechnen:According to various embodiments, here a modified algorithm (13) is provided to overcome the limitation of the conventional algorithm, wherein the modified algorithm provided herein, e.g. B. missing measurements has grown. According to various embodiments, the following algorithm (14) may be used to calculate the gradient vector of the logarithmic probability value L:
ALGORITHMUS 14:ALGORITHM 14:
Ferner kann die Gradientenberechnung gemäß dem Satz von Gleichungen (50a) gemäß verschiedenen Ausführungsformen auf singuläre Abstimmmatrizen Qk und Rk verallgemeinert werden. Deshalb kann der folgende Algorithmus (15) z. B. basierend auf einem modifizierten Satz von Gleichungen (51) verwendet werden.Further, according to the set of equations (50a), according to various embodiments, the gradient calculation may be generalized to singular tuning matrices Q k and R k . Therefore, the following algorithm (15) e.g. Based on a modified set of equations (51).
ALGORITHMUS 15:ALGORITHM 15:
Gemäß verschiedenen Ausführungsformen können die entsprechenden Vektoren rk, ek und Matrizen Nk, Ek mit dem Algorithmus (14) berechnet werden, wie oben beschrieben worden ist.
In diesem Fall bezeichnet pi den i-ten Abstimmparameter. Die Gewichtungsfaktoren wQ,r,i,k und wR,r,i,k können die Auswirkung von pi auf die r-te Zeile/Spalte von Qk bzw. Rk steuern. Die Gradientenberechnung kann durch das Ausnutzen der speziellen Struktur der Matrizen gemäß den Gleichungen (52), (53) drastisch vereinfacht werden. Das Ergebnis ist z. B. in dem auf der Gleichung (54) basierenden Algorithmus (16) wie folgt:In this case, p i denotes the ith tuning parameter. The weighting factors w Q, r, i, k and w R, r, i, k can control the effect of p i on the rth row / column of Q k and R k, respectively. The gradient calculation can be drastically simplified by taking advantage of the special structure of the matrices according to equations (52), (53). The result is z. In the algorithm (16) based on equation (54), as follows:
ALGORITHMUS 16:ALGORITHM 16:
Gemäß verschiedenen Ausführungsformen kann die Berechnung der exakten Gradienten für die Prozessmodellparameter, z. B. Bk und Dk, zur Berechnung der ersten partiellen Ableitung von lk in der Gleichung (46) äquivalent sein. Gemäß verschiedenen Ausführungsformen kann die folgende Gleichung (55) verwendet werden:
Der unbekannte Empfindlichkeitsvektor
ALGORITHMUS 17:ALGORITHM 17:
Gemäß verschiedenen Ausführungsformen kann die Anwendung der Algorithmen (14) bis (17), wie z. B. oben beschrieben worden ist, nicht auf ein Filter basierend auf den Gleichungen (8a)-(12d) eingeschränkt sein. Die Algorithmen können außerdem auf das nicht modifizierte Kalman-Filter angewendet werden, wie z. B. oben beschrieben worden ist. Das nicht modifizierte Kalman-Filter kann als ein Spezialfall des Unendlichkeitsfilters (das außerdem als ein verallgemeinertes Kalman-Filter bezeichnet wird) betrachtet werden, wobei der unendliche Teil der Fehlerkovarianzmatrix
Gemäß verschiedenen Ausführungsformen kann der exakte Gradientenvektor außerdem im Fall fehlender Messwerte, im Fall singulärer Rauschmatrizen Qk und Rk und für die Abstimmmatrizen Bk und Dk (z. B. für singuläre oder reguläre Abstimmmatrizen) durch die Algorithmen (14), (15), (16) und (17) berechnet werden. Ferner erlauben die hier bereitgestellten Algorithmen das Berechnen der exakten Gradienten der logarithmischen Wahrscheinlichkeitsfunktion im Fall fehlender Messwerte oder singulärer oder regulärer Abstimmmatrizen Qk, Rk, Bk und Dk.According to various embodiments, the exact gradient vector can also be used in the case of missing measured values, in the case of singular noise matrices Q k and R k and for the tuning matrices B k and D k (eg for singular or regular tuning matrices) by the algorithms (14), ( 15), (16) and (17). Further, the algorithms provided herein allow calculating the exact gradient of the log likelihood function in the case of absence of measured values or singular or regular Abstimmmatrizen Q k, R k, B k and D k.
Im Folgenden wird ein schneller und stabiler Quadratwurzelalgorithmus zur Berechnung des exakten Gradienten der logarithmischen Wahrscheinlichkeitsfunktion für ein Kalman-basiertes Filter oder irgendein anderes ähnliches Filter basierend z. B. auf den Gleichungen (1), (1*), (2), (2*) bereitgestellt, wie oben beschrieben worden ist. Wie bereits beschrieben worden ist, kann gemäß verschiedenen Ausführungsformen der Zustand des Prozesses (
Gemäß verschiedenen Ausführungsformen kann der unbekannte Zustand xk mit einem auf einem Kalman-Filter basierenden Algorithmus, der über die Datenverschmelzungsschaltung
Wie oben beschrieben worden ist, können historische Produktionsdaten in praktischen Situationen eine geeignete und verfügbare Informationsquelle sein. Verschiedene Algorithmen zur Verwendung eines datengesteuerten Verfahrens, um die Kalman-Filter-Parameter basierend auf der Schätzung der maximalen Wahrscheinlichkeit abzustimmen, sind bereits oben beschrieben worden. Gemäß verschiedenen Ausführungsformen kann die Schätzung der maximalen Wahrscheinlichkeit auf den oben beschriebenen Gleichungen basieren, vgl. die Gleichungen (46) bis (49). In diesem Fall sind PR,k und PI,k der endliche bzw. der unendliche Teil der Fehlerkovarianzmatrix
Ein Verfahren, um den exakten Gradientenvektor zu berechnen, das für reguläre Abstimmmatrizen Qk, Rk funktioniert, kann das Lösen einer rekursiven Matrixgleichung der folgenden Form erfordern:
- Fall 1: |FI,k+1| = 0 (in der Praxis ≤ LNUM)
- Fall 2: |FI,k+1| > 0 (in der Praxis > LNUM)
- Case 1: | F I, k + 1 | = 0 (in practice ≤ L NUM )
- Case 2: | F I, k + 1 | > 0 (in practice> L NUM )
Wie bereits oben beschrieben worden ist, kann das Verfahren modifiziert (verallgemeinert) werden, um singuläre Abstimmmatrizen Qk, Rk, Bk, Dk zu behandeln. Es ist bekannt, dass das numerische Lösen von Gleichungen wie die Gleichung (60) eine heikle Aufgabe sein kann. Insbesondere kann die Multiplikation mit (I - KC) und ihrer Transponierten („die Wiederherstellung des früheren Zustands“) fehleranfällig sein. Das Problem wird durch die Tatsache verschärft, dass ein typisches Durchlauf-zu-Durchlauf-Kalman-Modell aus mehreren hundert Zuständen bestehen kann. Gemäß verschiedenen Ausführungsformen wird die numerische Stabilität der Gleichungen (60), (61) signifikant verbessert, um den exakten Gradientenvektor für ein derartiges Modell effizienter (z. B. genauer oder zuverlässiger) zu berechnen, wie im Folgenden ausführlicher beschrieben wird.As has been described above, the method can be modified (generalized), to treat singular Abstimmmatrizen Q k, R k, B k D k. It is known that solving equations like equation (60) numerically can be a delicate task. In particular, the multiplication by (I-KC) and its transpose ("the restoration of the previous state") may be error prone. The problem is exacerbated by the fact that a typical run-to-run Kalman model may consist of several hundred states. According to various embodiments, the numerical stability of equations (60), (61) is significantly improved to more efficiently (eg, more accurately or more reliably) calculate the exact gradient vector for such a model, as described in more detail below.
Gemäß verschiedenen Ausführungsformen kann ein Quadratwurzelanalogon dieser Gleichungen verwendet werden, um die numerische Stabilität zum Lösen der Gleichungen (60), (61) zu verbessern. Deshalb wird die Matrix Nk durch die folgende Faktorisierung oder eine ähnliche Faktorisierung ersetzt:
In diesem Fall wird anstelle der Matrix Nk die Quadratwurzelmatrix Sk direkt ausgebreitet. Diese Strategie kann außerdem auf die Kalman-Filterung angewendet werden, wie oben beschrieben worden ist. Die Konditionszahl der Quadratwurzelmatrix Sk (wobei die Sk die Cholesky-Faktoren für den Zeitindex
- Fall 1: |FI| = 0 (in der Praxis ≤ LNUM)
- Fall 2: |FI| > 0 (in der Praxis > LNUM)
- Case 1: | F I | = 0 (in practice ≤ L NUM )
- Case 2: | F I | > 0 (in practice> L NUM )
In diesem Fall sind die Eingangsmatrix S und die Ausgangsmatrix
ALGORITHMUS 18:ALGORITHM 18:
-
Eingabe:
- S - obere (n, n)-Dreiecksmatix
-
S - obere (n, n)-Dreiecksmatix - A - blockdiagonale (n, n)-Zustandsübergangsmatrix
- C - (1, n)-Beobachtungsvektor
-
K - (n, 1)-Kalman-Verstärkungsvektor - FR - endlicher Teil der Varianz der Erneuerung
- FI - unendlicher Teil der Varianz der Erneuerung
- S - upper (n, n) triangle matrix
-
S - upper (n, n) triangle matrix - A - block diagonal (n, n) state transition matrix
- C - (1, n) observation vector
-
K - (n, 1) -Kalman gain vector - F R - finite part of the variance of renewal
- F I - infinite part of the variance of renewal
-
1. Für alle (Nichteinheits-) Blockmatrizen A∗ von A das Folgende ausführen:
- a. Den Satz I der Zeilen-/Spaltenindizes, die der aktuellen Blockmatrix A∗ entsprechen, bestimmen. Den kleinsten Index in I mit i bezeichnen.
- b. Die Spalten I von SR und SI von rechts mit A∗ multiplizieren. Dies zerstört die obere Dreiecksform von S.
- c. Die obere Dreiecksform der Zeilen I von A durch orthogonale Zeilentransformationen unter Verwendung (z. B. der QR-Zerlegung, Givens-Rotationen usw.) wiederherstellen.
1 ,2 , ..., i - 1 werden unverändert gelassen.- a. Determine the set I of row / column indices corresponding to the current block matrix A *. Denote the smallest index in I with i.
- b. Multiply the columns I of S R and S I from the right by A *. This destroys the upper triangular shape of S.
- c. Restore the upper triangular shape of lines I of A by orthogonal row transformations using (e.g., QR decomposition, Givens rotations, etc.).
columns 1 .2 , ..., i - 1 are left unchanged. -
2. Die Schritte
3 -7 überspringen, falls |FI| > 0 (Fall 2)2. The steps3 -7 skip if | F I | > 0 (case 2) -
3. Die Matrix S·K·C von der Matrix S subtrahieren. Dies zerstört die obere Dreiecksform von S für alle Spalten, was den von null verschiedenen Elementen des Vektors C entspricht.
- 4. Die Spalte ganz links der nC gestörten Spalten von S auswählen. Das untere Element verwenden, um alle anderen Spaltenelemente unter der Hauptdiagonalen mit orthogonalen Zeilentransformationen (z. B. Givens-Rotationen) zu eliminieren. Dies bevölkert die unter Zeile von S.4. Select the leftmost column of the n C faulty columns of S. Use the bottom element to eliminate all other column elements below the main diagonal with orthogonal row transformations (eg Givens rotations). This populates the below line of S.
- 5. Die entsprechenden Hauptdiagonalelemente verwenden, um den Artefakt in der unteren Zeile mit orthogonalen Zeilentransformationen zu eliminieren. Das Ergebnis ist eine obere Dreiecksmatrix mit nC - 1 gestörten Spalten. 5. Use the appropriate major diagonal elements to eliminate the artifact in the bottom row with orthogonal row transforms. The result is an upper triangular matrix with n C - 1 perturbed columns.
-
6. Die Schritte
4 und5 wiederholen, bis alle gestörten Spalten eliminiert sind.6. Thesteps 4 and5 Repeat until all disturbed columns are eliminated. - 7. Den Algorithmus (4) verwenden, um CT C·F-1 zu S zu addieren:7. Use the algorithm (4) to add C T C · F -1 to S:
Wie z. B. in
Gemäß verschiedenen Ausführungsformen kann der Algorithmus (4) für eine Aktualisierung des Rangs
Gemäß verschiedenen Ausführungsformen können ähnlich zu den oben beschriebenen Algorithmen der Algorithmus (18) und der Algorithmus (4) sowohl auf das modifizierte Kalman-Filter (das außerdem als ein Unendlichkeitsfilter bezeichnet wird) als auch auf das nicht modifizierte Kalman-Filter oder irgendein anderes ähnliches Filter angewendet werden. Weil das Kalman-Filter ein Spezialfall eines Unendlichkeitsfilters sein kann, können der Algorithmus (18) und der Algorithmus (4) auf das Kalman-Filter angewendet werden, indem der unendliche Teil der Fehlerkovarianzmatrix
Gemäß verschiedenen Ausführungsformen kann der schnelle und numerisch stabile Quadratwurzelalgorithmus zum Ausbreiten der Gleichungen (60), (61), wie hier beschrieben worden ist, in einer Komponente eines Steuersystems und/oder zum Überwachen diskreter Prozesse verwendet werden, wie oben beschrieben worden ist.According to various embodiments, the fast and numerically stable square root algorithm for propagating equations (60), (61) as described herein may be used in a component of a control system and / or for monitoring discrete processes, as described above.
Gemäß verschiedenen Ausführungsformen wird für die rekursiven Matrixgleichungen (60), (61) ein schneller und numerisch stabiler Quadratwurzelalgorithmus bereitgestellt.According to various embodiments, a fast and numerically stable square root algorithm is provided for the recursive matrix equations (60), (61).
Im Folgenden wird ein Algorithmus zur Validierung von Prozessmodellen, die auf echte Daten abgestimmt sind, für ein Kalman-basiertes Filter oder irgendein anderes ähnliches Filter basierend z. B. auf den Gleichungen (1), (1*), (2), (2*) bereitgestellt, wie oben beschrieben worden ist. Wie bereits beschrieben worden ist, kann gemäß verschiedenen Ausführungsformen der Zustand des Prozesses (
Der unbekannte Zustand xk kann mit einem auf einem Kalman-Filter basierenden Algorithmus geschätzt werden, der über die Datenverschmelzungsschaltung
Wie oben beschrieben worden ist, können im Allgemeinen historische Produktionsdaten in praktischen Situationen eine verfügbare Informationsquelle sein. Oben sind bereits verschiedene Algorithmen zum Verwenden eines datengesteuerten Verfahrens, um die Kalman-Filter-Parameter basierend auf der Schätzung der maximalen Wahrscheinlichkeit abzustimmen, beschrieben worden. Gemäß verschiedenen Ausführungsformen kann die Schätzung der maximalen Wahrscheinlichkeit auf den Gleichungen (46)-(49) basieren, wie oben beschrieben worden ist.As described above, in general, historical production data in practical situations may be an available source of information. Above, various algorithms have already been described for using a data driven method to tune the Kalman filter parameters based on the maximum likelihood estimation. According to various embodiments, the maximum likelihood estimation may be based on equations (46) - (49) as described above.
Wie z. B. in
Deshalb gibt es keine Garantie, dass ein Optimierungsalgorithmus gegen ein globales Maximum
Basierend auf dem Durchschnitt der quadrierten normierten Erneuerungen oder in einer ähnlichen Weise basierend auf irgendeinem geeigneten Durchschnittswert unter Berücksichtigung mehrerer symmetrisierter normierter Vorhersagefehler kann gemäß verschiedenen Ausführungsformen eine Fehlanpassung des Modells detektiert oder das Prozessmodell validiert werden. Die Gesamtwahrscheinlichkeit
Das Maximum
Gemäß verschiedenen Ausführungsformen kann das Verhältnis
Gemäß verschiedenen Ausführungsformen kann eine Fehlanpassung des Modells basierend auf einer Beobachtung der normierten Erneuerungen detektiert werden oder kann das Prozessmodell basierend auf einer Beobachtung der normierten Erneuerungen validiert werden, die normierten Erneuerungen oder ein Parameter, der die normierten Erneuerungen repräsentiert, können bzw. kann z. B. gegen den Zählerindex
Gemäß verschiedenen Ausführungsformen ermöglicht es die oben beschriebene Validierung, die Probleme des Prozessmodells an den Punkten, wo das Prozessmodell nicht gültig sein kann, spezifisch zu analysieren (z. B. bezüglich spezifischer Prozesse, die durch den Zählerindex
Gemäß verschiedenen Ausführungsformen kann eine Fehlanpassung des Modells basierend auf einer Beobachtung der Unterwahrscheinlichkeit detektiert werden oder kann das Prozessmodell basierend auf einer Beobachtung der Unterwahrscheinlichkeit validiert werden, die jeweiligen Wahrscheinlichkeitswerte oder ein Parameter, der die Unterwahrscheinlichkeit repräsentiert, können bzw. kann z. B. gegen den Zählerindex
Gemäß verschiedenen Ausführungsformen kann eine Fehlanpassung des Modells basierend auf einer Beobachtung des Gradientensignals detektiert werden oder kann das Prozessmodell basierend auf einer Beobachtung des Gradientensignals validiert werden, das Gradientensignal oder ein Parameter, der das Gradientensignal repräsentiert, kann z. B. gegen den Zählerindex
Jeder Untergradient ∂lk/∂pi entspricht einem speziellen Zeitpunkt
Unter Verwendung der oben beschriebenen Verfahren können die Untergradienten ∂lk/∂pi außerdem z. B. unter Verwendung der folgenden Gleichungen exakt berechnet werden:
Gemäß verschiedenen Ausführungsformen kann das Gradientensignal bei dem durch den numerischen Optimierer gefundenen maximalen Wahrscheinlichkeitswert analysiert werden. Der entsprechende Untergradient ∂lk/∂pi zeigt, wie der Abstimmparameter pi modifiziert werden sollte, um die Unterwahrscheinlichkeit lk für den Zeitpunkt
Gemäß verschiedenen Ausführungsformen kann eine Fehlanpassung des Modells basierend auf einer oder mehreren der hier beschriebenen Prozeduren identifiziert werden. Nachdem ein Optimierer an irgendeinem (möglicherweise lokalen) Maximum angehalten hat, können einer oder mehrerer der folgenden Prozesse ausgeführt werden:
- 1. Das Kalman-Filter über den vollen Satz der Trainingsdaten unter Verwendung der durch den Optimierer gefundenen Abstimmparameter laufen lassen. FR,k und Fl,k und die Folge υk der Erneuerungen speichern.
- 2. Die normierten Erneuerungen υ0,k für alle
k = 1, 2, ..., N mit der Gleichung (66) berechnen. - 3. V0 mit der Gleichung (9) berechnen. Das Modell ablehnen, falls |V0 - 1,0| irgendeinen Schwellenwert T1 mit z. B. 0,1 ≤ T1 ≤ 0,3 übersteigt.
- 4. Die Folge υ0,k gegen irgendeinen Schwellenwert T2 prüfen. Das Modell ablehnen, falls |υ0,k| T2 für irgendein
k mit z. B. 2 ≤ T2 ≤ 5 übersteigt. Versuchen, das Modell für die Zeitintervalle, in denen T2 überschritten wird, zu modifizieren. - 5. Die Folge der (Unter-) Wahrscheinlichkeiten lk mit der Gleichung (65) berechnen. Das Modell ablehnen, falls lk signifikante Abfälle zeigt. Versuchen, das Modell für die Zeitintervalle mit den Abfällen zu modifizieren.
- 6. Die Folge der (Unter-) Wahrscheinlichkeiten für ∂lk/∂pi für alle Abstimmparameter pi berechnen. Das Modell ablehnen, falls irgendeine Folge ∂lkl/∂pi signifikante Variationen zeigt. Versuchen, das Modell für die Zeitintervalle mit den Hauptvariationen zu modifizieren.
- 1. Run the Kalman filter over the full set of training data using the tuning parameter found by the optimizer. Store F R, k and F l, k and the sequence υ k of the renewals.
- 2. The normalized renewals υ 0, k for all
k = 1, 2, ..., N with the equation (66). - 3. Calculate V 0 with equation (9). Reject the model if | V 0 - 1,0 | any threshold T 1 with z. B. 0.1 ≤ T 1 ≤ 0.3 exceeds.
- 4. Check the sequence υ 0, k against any threshold T 2 . Reject the model if | υ 0, k | T 2 for any one
k with z. B. 2 ≤ T 2 ≤ 5 exceeds. Try to modify the model for the time intervals in which T 2 is exceeded. - 5. Calculate the sequence of (sub) probabilities l k using equation (65). Reject the model if l k shows significant waste. Try to modify the model for the time intervals with the waste.
- 6. Calculate the sequence of (sub) probabilities for ∂l k / ∂p i for all tuning parameters p i . Reject the model if any sequence ∂l k l / ∂p i shows significant variations. Try to modify the model for the time intervals with the main variations.
Gemäß verschiedenen Ausführungsformen kann, wie z. B. oben beschrieben worden ist, nicht nur eine Fehlanpassung des Modells enthüllt werden, sondern es können außerdem die Zeitpunkte, zu denen die Fehlanpassung auftritt, identifiziert werden. Dies können wertvolle Informationen zum Verbessern des Prozessmodells sein. Die Informationen des logistischen Kontexts (z. B. die Prozessereignisdaten) für diese Zeitpunkte können gemäß verschiedenen Ausführungsformen geprüft werden. Deshalb könnte ein gemeinsames Muster bestimmt werden, um die Hauptursache der Fehlanpassung des Modells zu finden.According to various embodiments, such. For example, as described above, not only a mismatch of the model can be revealed, but also the times at which the mismatch occurs can be identified. This can be valuable information for improving the process model. The information of the logistical context (eg the process event data) for these times may be tested according to various embodiments. Therefore, a common pattern could be determined to find the root cause of the mismatch of the model.
Ähnlich zu den oben beschriebenen Algorithmen kann die Validierung des Prozessmodells sowohl auf das modifizierte Kalman-Filter als auch auf das nicht modifizierte Kalman-Filter oder irgendein anderes ähnliches Filter angewendet werden.Similar to the algorithms described above, the validation of the process model can be applied to both the modified Kalman filter and the unmodified Kalman filter or any other similar filter.
Gemäß verschiedenen Ausführungsformen kann eine Fehlanpassung des Prozessmodells basierend auf wenigstens einem der folgenden Parameter detektiert werden: der Erneuerung, υ0,k, der normierten Erneuerung, dem (Unter-) Wahrscheinlichkeitssignal oder dem (Unter-) Gradientensignal. Ferner kann der Zeitpunkt oder ein Parameter, der den Zeitpunkt repräsentiert, verwendet werden, um die Fehlanpassung des Prozessmodells zu lokalisieren.According to various embodiments, a mismatch of the process model may be detected based on at least one of the following parameters: renewal, υ 0, k , normalized renewal, the (sub) probability signal, or the (sub) gradient signal. Further, the time or a parameter representing the time may be used to locate the mismatch of the process model.
Eine Anwenderschnittstelle kann gemäß verschiedenen Ausführungsformen z. B. in Kombination mit irgendeiner Rückkopplungsvorrichtung zum Annehmen oder Ablehnen der abgestimmten Prozessmodelle und/oder Messmodelle als Teil der Prozesssteuerschaltung
Wie oben beschrieben worden ist, kann die Datenverschmelzungsschaltung konfiguriert sein, das Prozessmodell und/oder das Messmodell basierend auf einem Durchschnittswert unter Berücksichtigung mehrerer symmetrisierter normierter Vorhersagefehler zu validieren. Eine Symmetrisierung kann nützlich sein, um zu verhindern, dass positive und negative Werte einander kompensieren. Die symmetrisierten normierten Vorhersagefehler können durch das Anwenden einer symmetrischen Funktion auf die normierten Vorhersagefehler bereitgestellt werden. Als ein Beispiel kann ein quadratischer Mittelwert (RMS-Wert) verwendet werden. Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung konfiguriert sein, das Prozessmodell und/oder das Messmodell an einem Satz von Trainingsdaten zu validieren. Der Satz von Trainingsdaten kann z. B. historische Daten einschließlich irgendwelcher verfügbarer Prozessdaten (z. B. Kontextdaten und/oder Logistikdaten der Bearbeitungsanordnung) und Messdaten enthalten. Die Messdaten können z. B. auf die Prozessdaten abgebildet sein oder können in den Prozessdaten enthalten sein.According to various embodiments, the data fusion circuit may be configured to validate the process model and / or the measurement model on a set of training data. The set of training data may e.g. For example, historical data including any available process data (eg, context data and / or logistics data of the processing device) and measurement data may be included. The measured data can be z. B. be mapped to the process data or may be included in the process data.
Veranschaulichend kann die Validierung des Prozessmodells und/oder des Messmodells das Prüfen enthalten, ob der verfügbare Datensatz, der durch die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen können Bezugs-Messereignisdaten über die Datenverschmelzungsschaltung
Im Folgenden wird ein Algorithmus zum Verfolgen, Überwachen und/oder Austesten eines Kalman-basierten Filters oder irgendeines anderen ähnlichen Filters basierend z. B. auf den Gleichungen (1), (1*), (2), (2*) bereitgestellt, wie oben beschrieben worden ist. Wie bereits beschrieben worden ist, kann gemäß verschiedenen Ausführungsformen der Zustand des Prozesses (
Gemäß verschiedenen Ausführungsformen kann der unbekannte Zustand xk mit einem auf einem Kalman-Filter basierenden Algorithmus geschätzt werden, der über die Datenverschmelzungsschaltung
Ein Grund für die Komplexität (und gleichzeitig für die Leistung) eines auf einem Kalman-Filter basierenden Steuersystems, wie hier beschrieben wird, ist die gleichzeitig Aktualisierung aller Zustände und aller möglichen Zustandskombinationen. Eine Prozessaktualisierung und eine Metrologieaktualisierung irgendeiner Zustandskombination können alle anderen Zustände beeinflussen. Gemäß verschiedenen Ausführungsformen wird ein Verfolgungs- und Austestwerkzeug bereitgestellt, das auf eine oder mehrere spezielle (anwenderdefinierte) Linearkombinationen von Zuständen konzentriert ist, wie im Folgenden ausführlicher beschrieben wird.One reason for the complexity (and performance) of a Kalman filter-based control system, as described herein, is the simultaneous updating of all states and all possible state combinations. A process update and a metrology update of any state combination may affect all other states. According to various embodiments, a tracking and debug tool is provided that is focused on one or more specific (user-defined) linear combinations of states, as described in more detail below.
Während des Betriebs der Datenverschmelzungsschaltung
Die Anzahl der Zustände und der potentiellen linearen Zustandskombinationen von Interesse kann typischerweise sehr hoch sein. Es kann nicht möglich sein, die Entwicklung aller interessieren der Zustände und Zustandskombinationen zur Laufzeit zu berechnen und zu speichern. Gemäß verschiedenen Ausführungsformen werden verschiedene Strategien bereitgestellt, um die vollständige Entwicklung des Filters in der Rückschau zu rekonstruieren. Eine erste Strategie kann sein, alle Zwischenzustände des Filters einschließlich der entsprechenden Fehlerkovarianzmatrizen zu speichern. Eine zweite Strategie kann sein, den Anfangszustand des Filters und alle Kalman-Matrizen zu speichern; und alle Zwischenzustände z. B. durch das erneute Ausführen der jeweiligen Gleichungen (z. B. der Gleichungen (8a)-(12d)) zu rekonstruieren. Eine dritte Strategie kann sein, die Zwischenzustände wiederkehrend (einschließlich der entsprechenden Fehlerkovarianzmatrizen) zu speichern und alle Kalman-Matrizen zu speichern. In diesem Fall kann irgendein Zwischenzustand, falls gewünscht, durch das erneute Ausführen der jeweiligen Gleichungen für das Zeitintervall von Interesse beginnend mit einem geeigneten (z. B. dem nächsten) gespeicherten Zustand rekonstruiert werden.The number of states and the potential linear state combinations of interest can typically be very high. It may not be possible to calculate and store the evolution of all states and state combinations of interest at runtime. According to various embodiments, various strategies are provided to reconstruct the complete development of the filter in retrospect. A first strategy may be to store all intermediate states of the filter, including the corresponding error covariance matrices. A second strategy may be to store the initial state of the filter and all Kalman matrices; and all intermediate states z. By reconstructing the respective equations (eg, equations (8a) - (12d)). A third strategy may be to store the intermediate states recurrently (including the corresponding error covariance matrices) and store all the Kalman matrices. In this case, any intermediate state may, if desired, be reconstructed by re-executing the respective equations for the time interval of interest beginning with a suitable (eg, the next) stored state.
Die Speicheranforderungen können für die erste Strategie riesig sein. Die zweite Strategie kann es erfordern, die jeweiligen Gleichungen für die gesamte Lebensdauer des Filters erneut auszuführen, was z. B. ein oder mehrere Jahre sein können, was zu einem riesigen Rechenaufwand führt. Gemäß verschiedenen Ausführungsformen kann die dritte Strategie zum Verfolgen, Überwachen und/oder Austesten des Betriebs des Filters, das in der Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen kann ein erster Verwendungsfall eine detaillierte Analyse der Entwicklung einer linearen Zustandskombination
In diesem Fall wählt der Extraktorvektor
Deshalb kann gemäß verschiedenen Ausführungsformen die Entwicklung der linearen Zustandskombination αk untersucht werden. In dieser Weise können ein oder mehrere Zeitpunkte
Gemäß verschiedenen Ausführungsformen kann ein zweiter Verwendungsfall eine Identifikation der vorherrschenden Messwerte für eine lineare Zustandskombination
Die Kalman-Verstärkung, Kk, kann z. B. durch die folgenden Gleichungen gegeben sein:
In diesem Fall sind υk und x̃k die Erneuerung bzw. der Zustandsschätzfehler. Das Multiplizieren der Gleichung (75) mit dem Zustandsextraktorvektor C führt z. B. zu der folgenden Gleichung:
Der Zähler der Gleichung (77) enthüllt z. B., dass die Kalman-Verstärkung, Kk, durch eine Kovarianz von υk und x̃k gesteuert ist. Die Kalman-Verstärkung Kk ist z. B. null, wenn die Erneuerung υk und der Zustandsschätzfehler x̃k unkorreliert sind, während der Absolutwert der Kalman-Verstärkung Kk 1,0 ist, wenn die Erneuerung υk und der Zustandsschätzfehler x̃k perfekt korreliert sind. Gemäß verschiedenen Ausführungsformen kann die Korrelation zwischen der Erneuerung υk und dem Zustandsschätzfehler x̃k verwendet werden, um ein normiertes Maß der Auswirkung, K0,k, z. B. gemäß den folgenden Gleichungen bereitzustellen:
Gemäß verschiedenen Ausführungsformen kann es eine oder mehrere alternative Definitionen des normierten Maßes der Auswirkung, K0,k, geben, die zur Gleichung (79) äquivalent sein können, wie z. B. die folgende Definition:
Der erwartete Wert
Gemäß verschiedenen Ausführungsformen kann der Algorithmus (19), wie im Folgenden ausführlicher beschrieben wird, verwendet werden, um das normierte Maß K0,k der Auswirkung in dem Fall zu berechnen, in dem eine zerlegte Fehlerkovarianzmatrix für die Zustandsschätzung verwendet wird, wie hier beschrieben wird. Falls ein herkömmliches Kalman-Filter verwendet wird, können FI und
ALGORITHMUS 19:ALGORITHM 19:
ALGORITHMUS 20:ALGORITHM 20:
Gemäß verschiedenen Ausführungsformen kann ein dritter Verwendungsfall eine Analyse eines vorhergesagten Wertes von Interesse enthalten. Die auf einem Kalman-Filter basierenden Algorithmen können, wie oben beschrieben worden ist, den Prozesszustand vorhersagen, um die optimalen Abstimmparameter für die nächsten Materialien (die nächste Charge, den nächsten Wafer oder das nächste Los) zu berechnen. Folglich kann der Ursprung des vorhergesagten Werts relevant sein, insbesondere wenn der Wert verdächtig ist. Gemäß verschiedenen Zuständen kann der aktuelle Zustand x̂k der auf einem Kalman-Filter basierenden Algorithmen in eine gewichtete Summe aus allen vorherigen Messwerten und einer Konstanten zerlegt werden. Dies kann z. B. wie folgt ausgedrückt werden:
In diesem Fall können die Gewichte wi der Summe mit dem Algorithmus (21) berechnet werden, wie im Folgenden ausführlicher beschrieben wird. Das Multiplizieren z. B. der Gleichung (82) von links mit irgendeinem Zustandsextraktionsvektor
In diesem Fall ist die linke Seite der Gleichung (83) der vorhergesagte Wert αk :=
Die Gewichte
Die skalaren Gewichte
ALGORITHMUS 21:ALGORITHM 21:
ALGORITHMUS 22:ALGORITHM 22:
Gemäß verschiedenen Ausführungsformen kann der Algorithmus zum Verfolgen, Überwachen und/oder Austesten eines Kalman-basierten Filters in einer Komponente eines Steuersystems und/oder zum Überwachen diskreter Prozesse verwendet werden, wie oben beschrieben worden ist. Gemäß verschiedenen Ausführungsformen können die Zwischenzustände und/oder die Kalman-Matrizen gespeichert werden. Basierend auf diesen gespeicherten Zwischenzuständen und/oder den gespeicherten Kalman-Matrizen können verschiedene Verfolgungs- und/oder Austestgrößen, z. B. die Schätzung αk, der Schätzfehler σERR,k, die Messwert-Auswirkung K0,k, das Messwertgewicht
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Gemäß verschiedenen Ausführungsformen wird ein Verfahren bereitgestellt, um die Größe der Datensätze der Kalman-Filter zu verringern. Deshalb wird im Folgenden ein Algorithmus für ein Kalman-basiertes Filter oder irgendein anderes ähnliches Filter basierend z. B. auf den Gleichungen (1), (1*), (2), (2*) bereitgestellt, wie oben beschrieben worden ist. Wie bereits beschrieben worden ist, kann gemäß verschiedenen Ausführungsformen der Zustand des Prozesses (
Gemäß verschiedenen Ausführungsformen kann der unbekannte Zustand xk mit einem auf einem Kalman-Filter basierenden Algorithmus geschätzt werden, der über die Datenverschmelzungsschaltung
Wie bereits beschrieben worden ist, können historische Produktionsdaten in praktischen Situationen eine verfügbare Informationsquelle sein. Das Berechnen der Kalman-Filter-Parameter aus historischen Produktionsdaten kann eine teure und zeitaufwendige Aufgabe sein. Der historische Datensatz kann mehrere hunderttausend einzelne Materialien, z. B. produzierte Wafer, und ihre entsprechenden Prozessereignisdaten und, falls verfügbar, ihre entsprechenden Messereignisdaten enthalten. Die Abstimmprozedur für das Prozessmodell kann auf einer numerischen Optimierung basieren, die das Ausführen des Kalman-Filters (und optional einer Gradientenberechnung) für jeden Optimierungsschritt über dem gesamten Datensatz erfordern kann. Deshalb kann der Modellentwurfsprozess beeinträchtigt sein, weil der hohe Aufwand die Anzahl der Modellvariationen, die getestet werden können, begrenzen.As already described, historical production data in practical situations may be an available source of information. Calculating the Kalman filter parameters from historical production data can be an expensive and time consuming task. The historical dataset may contain several hundred thousand individual materials, e.g. B. produced wafers, and their corresponding process event data and, if available, their corresponding measurement event data. The process model tuning procedure may be based on numerical optimization, which may require running the Kalman filter (and optionally a gradient calculation) for each optimization step over the entire data set. Therefore, the model design process may be compromised because the high overhead limits the number of model variations that can be tested.
Bei der Halbleiterfertigung wird z. B. nur ein Bruchteil der bearbeiteten Wafer gemessen (z. B. typischerweise 20 % oder weniger). Deshalb können gemäß verschiedenen Ausführungsformen die Prozessgleichungen (1), (1*) im Fall fehlender und/oder nicht validierter Messwerte vereinigt werden. Als ein Beispiel können Messwerte für die Zeitpunkte k0 und
Die Gleichung (100) kann in der Tat eine Prozessgleichung sein, die die Zustandsinformationen xk
Die vereinigten Gleichungen (100), (100*) sind zu den ursprünglichen
Gemäß verschiedenen Ausführungsformen können die vereinigten Kalman-Matrizen
ALGORITHMUS 23:ALGORITHM 23:
-
1.
- 2. M unter Verwendung z. B. des Cholesky-Algorithmus oder der Singularwertzerlegung in die Cholesky-Faktoren M= SST zerlegen2. M using z. As the Cholesky algorithm or the Singularwertzerlegung into the Cholesky factors M = SS T decompose
-
3. Die Ergebnismatrix
Q k ist durch den Cholesky-Faktor S gegeben3. The result matrixQ k is given by the Cholesky factor S.
Gemäß verschiedenen Ausführungsformen können alle Prozessrauschmatrizen Qk und alle Zustandsübergangsmatrizen Ak z. B. in praktischen Anwendungen Diagonalmatrizen sein. In diesem Fall ist die Berechnung signifikant vereinfacht, wie durch den Algorithmus (24) wie folgt veranschaulicht ist.According to various embodiments, all process noise matrices Q k and all state transition matrices A k z. B. be in practical applications diagonal matrices. In this case, the calculation is significantly simplified, as illustrated by the algorithm (24) as follows.
ALGORITHMUS 24:ALGORITHM 24:
-
1.
-
2. Das Element
Q k(i,i) der Ergebnis-DiagonalmatrixQ k ist durchQ k (i, i) of the result diagonal matrixQ k is through
Gemäß verschiedenen Ausführungsformen kann der Algorithmus zum Verringern der Größe eines Datensatzes eines hier bereitgestellten Kalman-basierten Filters in einer Komponente eines Steuersystems und/oder zum Überwachen diskreter Prozesse verwendet werden, wie oben beschrieben worden ist. Gemäß verschiedenen Ausführungsformen kann die Größe eines oder mehrerer Abstimmdatensätze durch das Vereinigen von Zwischenprozessgleichungen, die keine Messwerte berücksichtigen, geschrumpft werden. Mit anderen Worten, eine aufeinanderfolgende Folge von Prozessaktualisierungen kann in dem Fall vereinigt werden, dass keine der Prozessaktualisierungen der aufeinanderfolgenden Folge mit einem Messwert, der berücksichtigt werden muss, korreliert ist.According to various embodiments, the algorithm for reducing the size of a data set of a Kalman-based filter provided herein may be used in a component of a control system and / or for monitoring discrete processes, as described above. According to various embodiments, the size of one or more tuning data sets may be shrunk by merging intermediate process equations that do not take into account measured values. In other words, a consecutive sequence of process updates may be merged in the event that none of the process updates of the consecutive sequence is correlated with a measurement that needs to be taken into account.
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Im Folgenden wird ein Algorithmus zum Modellieren einer Unterbrechung oder irgendeiner anderen Störung in dem komplexen und dynamischen Prozess bereitgestellt. Wie bereits beschrieben worden ist, kann ein Kalman-basiertes Filter oder irgendein anderes ähnliches Filter basierend z. B. auf den Gleichungen (1), (1*), (2), (2*) zum Steuern eines Produktionsprozesses verwendet werden. Der Zustand des Prozesses (
Wie oben beschrieben worden ist, können die normierten Erneuerungen oder irgendein anderer geeigneter Parameter, der die Genauigkeit der Zustandsschätzung repräsentiert, überwacht werden. Falls das verwendete Prozessmodell (und/oder Messmodell) und der echte Prozess übereinstimmen, kann es sehr unwahrscheinlich sein, dass die normierten Erneuerungen erheblich von 3 abweichen, z. B. dass |v0| größer als 3 ist. Gemäß verschiedenen Ausführungsformen kann eine Fehlanpassung des Modells angenommen werden, falls |v0| irgendeinen vorgegebenen Schwellenwert Ly mit 2 ≤ Ly ≤ 4 übersteigt. Mit anderen Worten, das Prozessmodell und/oder das Messmodell können basierend auf den normierten Erneuerungen |v0| oder irgendeinem anderen geeigneten Parameter, der die Genauigkeit der Zustandsschätzung repräsentiert, validiert werden.As described above, the normalized updates or any other suitable parameter representing the accuracy of the state estimate may be monitored. If the used process model (and / or measurement model) and the real process match, it can be very unlikely that the normalized renewals will differ significantly from 3, eg. For example, that | v 0 | is greater than 3. According to various embodiments, a mismatch of the model can be assumed, if | v 0 | exceeds any given threshold value L y with 2 ≤ L y ≤ 4. In other words, the process model and / or the measurement model can be based on the normalized renewals | v 0 | or any other suitable parameter representing the accuracy of the state estimate.
Im Folgenden wird ein Verfahren bereitgestellt, um das Prozessmodell und/oder das Messmodell zu validieren. Gemäß verschiedenen Ausführungsformen kann eine Prüfung bezüglich einer Fehlanpassung des Modells ausgeführt werden, wenn neue Messdaten in den Schätzalgorithmus eingespeist werden. Eine Fehlanpassung des Modells kann z. B. nach einem Wartungsereignis für ein Bearbeitungswerkzeug der Bearbeitungsanordnung
In dem Fall, in dem eine Fehlanpassung des Modells detektiert wird, wird gemäß verschiedenen Ausführungsformen ein Satz alternativer Modelle
In dem Fall, dass die aktuellen Daten unzureichend sind, um die auszuwählenden Modelle abzugrenzen, kann die Auswahl verzögert werden, bis neue Messdaten ankommen. Die neuen Messdaten können in den Test einbezogen werden, der es dann erlauben kann, die Modelle abzugrenzen. Falls ausreichend Daten verfügbar sind, kann das beste Prozessmodell ausgewählt werden. Deshalb kann eine Messung oder irgendeine andere Weise, um zusätzliche Daten zu erhalten, eingeleitet werden, um die Auswahl eines geeigneten Prozessmodells zu verbessern.In the event that the current data is insufficient to demarcate the models to be selected, the selection may be delayed until new measurement data arrives. The new measurement data may be included in the test, which may then allow to demarcate the models. If enough data is available, the best process model can be selected. Therefore, a measurement or any other way to obtain additional data may be initiated to enhance the selection of a suitable process model.
Wie z. B. in
Gemäß verschiedenen Ausführungsformen kann das hier bereitgestellte Modellieren einer Unterbrechung oder irgendeiner anderen Störung in einem komplexen und dynamischen Prozess, z. B. in einem Halbleiterfertigungsprozess, in einer Komponente eines Steuersystems und/oder zum Überwachen diskreter Prozesse verwendet werden, wie oben beschrieben worden ist. Gemäß verschiedenen Ausführungsformen kann die Fehlanpassung zwischen dem Prozessmodell (und entsprechend dem Messmodell) und den echten Prozessdaten (und entsprechend den echten Messdaten) überwacht werden; wobei, wenn eine Fehlanpassung detektiert wird, zwei oder mehr alternative Modelle (die außerdem als Unterbrechungshypothesen bezeichnet werden) getestet werden können, wobei basierend auf dem Ergebnis des Testens ein Prozessmodell ausgewählt werden kann, das am besten mit den Daten übereinstimmt. Gemäß verschiedenen Ausführungsformen kann das Prozessmodell die entsprechenden Prozessgleichungen und die Messgleichungen enthalten.According to various embodiments, the modeling provided here of an interruption or any other disturbance in a complex and dynamic process, e.g. In a semiconductor manufacturing process, in a component of a control system and / or for monitoring discrete processes, as described above. According to various embodiments the mismatch between the process model (and according to the measurement model) and the real process data (and corresponding to the real measurement data) are monitored; wherein, when a mismatch is detected, two or more alternative models (also referred to as break hypotheses) may be tested, and based on the result of the testing, a process model that best matches the data may be selected. According to various embodiments, the process model may include the corresponding process equations and the measurement equations.
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung
Eine Fehlanpassung des Modells kann veranschaulichend verschiedene unterschiedliche Gründe haben. Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung konfiguriert sein, mehrere Bezugsmodelle gemäß verschiedenen Gründen für eine Fehlanpassung des Modells bereitzustellen und die Gründe für die Fehlanpassung des Modells durch das Testen, ob wenigstens eines der Bezugsmodelle die erfassten Messdaten geeigneten modellieren kann, zu bestimmen. Falls keine Bezugsmodelle gefunden werden können, die die erfassten Messdaten geeigneten modellieren, kann z. B. der Betrieb des Filters unterbrochen werden und kann eine Fehlernachricht gesendet werden. Alternativ kann ein Bezugsmodell ausgewählt werden, das am besten passt.A mismatch of the model can illustratively have several different reasons. According to various embodiments, the data fusion circuit may be configured to provide multiple reference models for mismatch of the model for various reasons, and to determine the reasons for mismatching the model by testing whether at least one of the reference models can properly model the acquired measurement data. If no reference models can be found that suitably model the acquired measurement data, e.g. B. the operation of the filter are interrupted and an error message can be sent. Alternatively, a reference model may be selected that fits best.
Gemäß verschiedenen Ausführungsformen kann die Datenverschmelzungsschaltung konfiguriert sein, ein erstes Bezugsmodell aus mehreren Bezugsmodellen auszuwählen und die Zustandsinformationen basierend auf dem ausgewählten ersten Bezugsmodell neu zu berechnen und einen ersten Modellübereinstimmungsparameter zu bestimmen und ein zweites Bezugsmodell aus mehreren Bezugsmodellen auszuwählen und die Zustandsinformationen basierend auf dem ausgewählten zweiten Bezugsmodell neu zu berechnen und einen zweiten Modellübereinstimmungsparameter zu bestimmen und den ersten Modellübereinstimmungsparameter mit dem zweiten Modellübereinstimmungsparameter zu vergleichen und basierend auf dem Vergleich das erste oder das zweite Modell für den weiteren Betrieb auszuwählen. Der Modellübereinstimmungsparameter kann gemäß verschiedenen Ausführungsformen statistische Fehlerinformationen, z. B. die normierte Erneuerung des Verhältnisses, sein.According to various embodiments, the data fusion circuit may be configured to select a first reference model from a plurality of reference models and recompute the state information based on the selected first reference model and determine a first model match parameter and select a second reference model from a plurality of reference models and the state information based on the selected second Recalculate the reference model and determine a second model match parameter and compare the first model match parameter with the second model match parameter and select the first or second model based on the comparison for further operation. The model match parameter may, according to various embodiments, include statistical error information, e.g. The normalized renewal of the relationship.
Gemäß verschiedenen Ausführungsformen kann ein Verfahren
Gemäß verschiedenen Ausführungsformen kann das Verfahren
- • um die Zustandsinformationen und die Genauigkeitsinformationen entsprechend bereitzustellen,
- • um die Zustandsinformationen entsprechend zu aktualisieren und entsprechend den früheren Zustand der Zusatzinformation wiederherzustellen und/oder
- • um die Bearbeitungsanordnung entsprechend zu steuern.
- To provide the condition information and the accuracy information accordingly,
- • to update the state information accordingly and restore and / or restore the previous state of the additional information accordingly
- • to control the processing arrangement accordingly.
Gemäß verschiedenen Ausführungsformen können ein oder mehrere Aspekte der Prozesssteuerschaltung
Gemäß verschiedenen Ausführungsformen kann ein Verfahren das Verwenden eines oder mehrerer der hier beschriebenen Algorithmen z. B. zum Berechnen eines oder mehrerer Parameter oder irgendeines anderen gewünschten Werts enthalten, wie hier beschrieben worden ist. According to various embodiments, a method may include using one or more of the algorithms described herein, e.g. To calculate one or more parameters or any other desired value, as described herein.
Gemäß verschiedenen Ausführungsformen können eine oder mehrere der oben bezüglich einer Prozesssteuerschaltung
Weil das Modellieren der Prozesse mit dem Modellieren der Messungen korreliert sein kann, können innerhalb der Beschreibung die Begriffe „Prozessmodell“ oder „Modell“ um der Kürze willen verwendet werden, so dass sie z. B. entsprechend das Prozessmodell und/oder das Messmodell bedeuten. In der gleichen Weise können die Begriffe „Prozessmodellparameter“ oder „Modellparameter“ um der Kürze willen verwendet werden, so dass sie z. B. entsprechend den Prozessmodellparameter und/oder den Messmodellparameter bedeuten. In der gleichen Weise kann der Begriff „Prozess“ um der Kürze willen verwendet werden, so dass er z. B. irgendeinen Aspekt bedeutet, der hinsichtlich des Betriebs der Bearbeitungsanordnung
Im Folgenden werden verschiedene Beispiele bezüglich der Prozesssteuerschaltung und des Verfahrens zum Betreibens der Prozesssteuerschaltung, wie oben beschrieben worden ist, und in einer ähnlichen Weise eines nichtflüchtigen computerlesbaren Mediums bereitgestellt.Hereinafter, various examples regarding the process control circuit and method for operating the process control circuit as described above and in a similar manner of a non-transitory computer-readable medium will be provided.
Verschiedene Beispiele sind auf das Modellieren und die Vorhersage von Produktionsprozessen (z. B. Losfertigungsprozessen) in einer komplexen und dynamischen Fertigungsumgebung bezogen.Several examples relate to the modeling and prediction of production processes (eg, batching processes) in a complex and dynamic manufacturing environment.
Das Beispiel 1 ist eine Prozesssteuerschaltung, die Folgendes enthält: eine Datenerfassungsschaltung, die konfiguriert ist, Prozessdaten und Messdaten einer Bearbeitungsanordnung zu erfassen, wobei die Prozessdaten mehrerer Prozessereignisdaten gemäß mehreren Prozessereignissen enthalten und die Messdaten mehrere Messereignisdaten gemäß mehreren Messereignissen enthalten; eine Datenverschmelzungsschaltung, die konfiguriert ist, Zustandsinformationen, wobei die Zustandsinformationen einen Status der Bearbeitungsanordnung repräsentieren, und Genauigkeitsinformationen (
Verschiedene Beispiele beziehen sich auf ein Prozessmodell zum Modellieren und zur Vorhersage von Produktionsprozessen (z. B. Losfertigungsprozessen) in einer komplexen und dynamischen Fertigungsumgebung.Several examples relate to a process model for modeling and predicting production processes (eg, batching processes) in a complex and dynamic manufacturing environment.
Im Beispiel 2 enthält die Prozesssteuerschaltung gemäß Beispiel 1 optional, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Zustandsinformationen basierend auf einem Prozessmodell, das die Prozessmodellparameter (z. B. einen zugänglichen Modellparameter,
Im Beispiel 3 kann die Prozesssteuerschaltung des Beispiels
Im Beispiel 4 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Steuerschaltung ferner konfiguriert ist, die Bearbeitungsanordnung basierend sowohl auf den Zustandsinformationen (
Im Beispiel 5 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Steuerschaltung ferner konfiguriert ist, Prozesssteuerdaten, um die Bearbeitungsanordnung zu steuern, basierend auf den Zustandsinformationen (
Im Beispiel 6 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Steuerschaltung ferner konfiguriert ist, basierend auf den Zustandsinformationen (
Im Beispiel 7 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, die Genauigkeitsinformationen (
Im Beispiel 8 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, die Prozessdaten und die Messdaten basierend auf einem Kalman-Filter zu verschmelzen, um die Zustandsinformationen (
Im Beispiel 9 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Zustandsinformationen für alle der erfassten Prozessereignisdaten und für alle der erfassten Prozessmessdaten in einer durch die Prozessereignisse definierten chronologischen Reihenfolge zu aktualisieren und ihren früheren Zustand wiederherzustellen, wobei die Messereignisse auf die Prozessereignisse abgebildet sind.In example 9, the process control circuit of one of the preceding examples may optionally include the data fusion circuit configured to update the state information for all of the acquired process event data and for all of the acquired process measurement data in a chronological order defined by the process events and restore their previous state, wherein the measurement events are mapped to the process events.
Im Beispiel 10 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, die Zustandsinformationen für jedes der mehreren Prozessereignisse beim Erfassen der entsprechenden Prozessereignisdaten und für jedes der mehreren Messereignisse beim Erfassen der entsprechenden Messereignisdaten zu aktualisieren.In Example 10, the process control circuit of one of the preceding examples may optionally include the data fusion circuit configured to update the state information for each of the plurality of process events in acquiring the corresponding process event data and for each of the plurality of measurement events in acquiring the corresponding measurement event data.
Im Beispiel 11 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, mehrere Prozessereignisdaten der entsprechenden Prozessereignisse zu sammeln und die Zustandsinformationen unter Berücksichtigung der gesammelten mehreren Prozessereignisdaten beim Erfassen der Messereignisdaten eines anschließenden Messeereignisses zu aktualisieren und den früheren Zustand der Zustandsinformationen basierend auf den erfassten Messereignisdaten wiederherzustellen. Veranschaulichend kann die Prozessaktualisierung spätestens ausgeführt werden, wenn die Messereignisdaten des zu betrachtenden Messereignisses verfügbar sind.In Example 11, the process control circuit of one of the preceding examples may optionally include the data fusion circuit configured to collect a plurality of process event data of the respective process events and to update the state information in consideration of the collected plurality of process event data upon acquiring the measurement event data of a subsequent trade event and the previous state Restore state information based on the acquired measurement event data. Illustratively, the process update may be executed at the latest when the measurement event data of the measurement event to be considered is available.
Verschiedene Beispiele beziehen sich auf die Anpassung rekursiver Schätz- und Vorhersagealgorithmen an Produktionsszenarios mit verzögerten und permutierten Messungen.Several examples relate to the adaptation of recursive estimation and prediction algorithms to production scenarios with delayed and permuted measurements.
Im Beispiel 12 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenerfassungsschaltung ferner konfiguriert ist, die Messereignisse mit den entsprechenden Prozessereignissen zu korrelieren (z. B. die Messereignisse auf die entsprechenden Prozessereignisse abzubilden). Deshalb kann basierend auf wenigstens einem Prozessereignis und wenigstens einem Messereignis, das dem Prozessereignis entspricht, ein Tupel bereitgestellt werden. Das Tupel kann einem Produkt, z. B. einen Wafer, einer elektronischen Vorrichtung und dergleichen, zugeordnet sein.In Example 12, the process control circuit of any of the preceding examples may optionally include the data acquisition circuit further configured to correlate the measurement events with the corresponding process events (eg, mapping the measurement events to the corresponding process events). Therefore, based on at least one process event and at least one measurement event corresponding to the process event, a tuple may be provided. The tuple may be a product, for. A wafer, an electronic device, and the like.
Im Beispiel 13 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, aktuelle Zustandsinformationen basierend auf den Prozessereignisdaten eines aktuellen Prozessereignisses und einer Folge vorhergehender Prozessereignisse und/oder Messereignisse zu berechnen. In example 13, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to calculate current state information based on the process event data of a current process event and a sequence of previous process events and / or measurement events.
Im Beispiel 14 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, aktuelle Zustandsinformationen basierend auf den Prozessereignisdaten eines aktuellen Prozessereignisses und einer Folge vorhergehender Prozessereignis (und z. B. vorhergehender Messereignisse) zu berechnen und beim Erfassen der Messereignisdaten, die wenigstens einem vorhergehenden Prozessereignisse der Folge vorhergehender Prozessereignisse entsprechen, die aktuellen Zustandsinformationen neu zu berechnen.In example 14, according to one of the preceding examples, the process control circuit may optionally include the data fusion circuit configured to calculate current state information based on the process event data of a current process event and a sequence of previous process events (and eg previous measurement events) and capturing the process information Measurement event data corresponding to at least one previous process event of the sequence of previous process events, to recalculate the current condition information.
Im Beispiel 15 kann die Prozesssteuerschaltung des Beispiels 14 optional enthalten, dass die Folge vorhergehender Prozessereignisse eine begrenzte Anzahl von Prozessereignissen beginnend von einem anfänglichen Prozessereignis, das die Basiszustandsinformationen definiert, und endend mit dem aktuellen Prozessereignis, das die aktuellen Zustandsinformationen definiert, enthält.In example 15, the process control circuit of example 14 may optionally include the sequence of previous process events including a limited number of process events, starting from an initial process event defining the base state information and ending with the current process event defining the current state information.
Im Beispiel 16 kann die Prozesssteuerschaltung des Beispiels 15 optional enthalten, dass das anfängliche Prozessereignis so gewählt ist, dass es ein erstes Element in der Folge der vorhergehenden Prozessereignisse ist, für die keine entsprechenden Messereignisdaten verfügbar sind und für die die entsprechenden Messereignisdaten ausstehend sind.In example 16, the process control circuit of example 15 may optionally include the initial process event being selected to be a first item in the sequence of the previous process events for which no corresponding measurement event data is available and for which the corresponding measurement event data is pending.
Verschiedene Beispiele beziehen sich auf ein Prozessmodell für einen rekursiven Schätz- und Vorhersagealgorithmus.Several examples relate to a process model for a recursive estimation and prediction algorithm.
Im Beispiel 17 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Prozessdaten basierend auf einem Prozessmodell, das einen oder mehrere Prozessmodellparameter zum Modellieren bekannter Einflüsse (A und/oder B) und/oder einen oder mehrere Prozessschätzparameter zum Modellieren unbekannter Einflüsse (N) enthält, zu modellieren.In example 17, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to process data based on a process model including one or more process model parameters for modeling known influences (A and / or B) and / or one or more Process estimation parameter for modeling unknown influences (N) contains, to model.
Im Beispiel 18 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Messdaten basierend auf einem oder mehreren Messmodellparametern zum Modellieren bekannter Einflüsse (C und/oder D) und/oder einem oder mehreren Messschätzparametern zum Modellieren unbekannter Einflüsse (M) zu modellieren.In example 18, the process control circuit of any one of the preceding examples may optionally include the data fusion circuit configured to configure the measurement data based on one or more measurement model parameters to model known influences (C and / or D) and / or one or more measurement estimation parameters to model unknown ones Influences (M) to model.
Gemäß verschiedenen Ausführungsformen sind die eine oder die mehreren Gleichungen oder der eine oder die mehreren Algorithmen zum Modellieren der Prozesse von der einen oder den mehreren Gleichungen oder dem einen oder den mehreren Algorithmen zum Modellieren der Messwerte unabhängig.According to various embodiments, the one or more equations or the one or more algorithms for modeling the processes are independent of the one or more equations or the one or more algorithms for modeling the measurements.
Im Beispiel 19 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Prozessdaten basierend auf einem Prozessmodell (z. B. eines linearen zeitvarianten Zustandsraums) zu modellieren, das wenigstens einen der folgenden Prozessmodellparameter enthält: einen Zustandsübergangsparameter (A), einen Prozessrauschparameter (N) und/oder einen Prozessdriftparameter (B).In example 19, the process control circuit of one of the preceding examples may optionally include the data fusion circuit configured to model the process data based on a process model (eg, a linear time-variant state space) that includes at least one of the following process model parameters: a state transition parameter (A), a process noise parameter (N) and / or a process drift parameter (B).
Im Beispiel 20 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Prozessdaten basierend auf der folgenden Gleichung und/oder einer ähnlichen Gleichung zu modellieren:
Im Beispiel 21 kann die Prozesssteuerschaltung des Beispiels 20 optional enthalten, dass Nk+1 = Qk + 1 ξk+1 gilt, wobei ξk+1 ein Zufallsvektor ist, der das Prozessrauschen (z. B. mit E[ξ] = 0; E[ξ2] = I) repräsentiert, und eine Qk+1 Rauschskalierungsmatrix ist.In Example 21, the process control circuit of Example 20 may optionally include N k + 1 = Q k + 1 ξ k + 1 , where ξ k + 1 is a random vector that reduces process noise (eg, with E [ξ] = 0, E [ξ 2 ] = I), and is a Q k + 1 noise scaling matrix.
Im Beispiel 22 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Messdaten basierend auf einem Messmodell zu modellieren, das wenigstens einen der folgenden Messmodellparameter enthält: einen Beobachtungsparameter (C), einen Messrauschparameter (M) und/oder einen Messversatzparameter (D). In example 22, the process control circuit of one of the preceding examples may optionally include the data fusion circuit configured to model the measurement data based on a measurement model including at least one of the following measurement model parameters: an observation parameter (C), a measurement noise parameter (M), and / or a measurement offset parameter (D).
Im Beispiel 23 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Messdaten basierend auf der folgenden Gleichung und/oder einer ähnlichen Gleichung zu modellieren:
Im Beispiel 24 kann die Prozesssteuerschaltung des Beispiels 23 optional enthalten, dass Mk+1 = Rk+1 ηk+1 gilt, wobei ηk+1 ein skalarer Zufallswert oder ein Zufallsvektor, der das Messrauschen repräsentiert, (z. B. mit E[η] = 0; E[η2] = I) ist und Rk+1 ein Rauschskalierungsskalar oder eine Rauschskalierungsmatrix ist.In Example 24, the process control circuit of Example 23 may optionally include M k + 1 = R k + 1 η k + 1 , where η k + 1 is a scalar random value or a random vector representing the measurement noise (e.g. with E [η] = 0, E [η 2 ] = I) and R k + 1 is a noise scaling scalar or a noise scaling matrix.
Im Beispiel 25 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Zustandsinformationen basierend auf einem ersten Satz von Gleichungen zu aktualisieren und den früheren Zustand der Zustandsinformationen basierend auf einem zweiten Satz von Gleichungen wiederherzustellen, wobei die Gleichungen des ersten Satzes von Gleichungen unabhängig von den Gleichungen des zweiten Satzes von Gleichungen ausgeführt werden.In example 25, the process control circuit of one of the preceding examples may optionally include the data fusion circuit configured to update the state information based on a first set of equations and to restore the previous state of the state information based on a second set of equations; of the first set of equations independently of the equations of the second set of equations.
Beispiel 26 kann die Prozesssteuerschaltung des Beispiels 25 optional enthalten, dass der erste Satz von Gleichungen auf den folgenden Gleichungen und/oder ähnlichen Gleichungen basiert:
Im Beispiel 27 kann die Prozesssteuerschaltung des Beispiels 25 oder 26 optional enthalten, dass der zweite Satz von Gleichungen auf den folgenden Gleichungen und/oder ähnlichen Gleichungen basiert:
Gemäß verschiedenen Ausführungsformen wird erkannt, dass andere äquivalente Formulierungen derselben Gleichungen erhalten werden können.According to various embodiments, it is recognized that other equivalent formulations of the same equations can be obtained.
Im Beispiel 28 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die statistischen Fehlerinformationen der geschätzten Zustandsinformationen eine Varianz des Schätzfehlers, σ2 ERR, basierend auf der folgenden Gleichung und/oder einer ähnlichen Gleichung enthalten:
Im Beispiel 29 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, vorhergesagte Messereignisdaten (yk+1) für ein nachfolgendes Messereignis mit entsprechenden (Messwert-) Vorhersagefehlerinformationen bereitzustellen.In example 29, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to provide predicted measurement event data (y k + 1 ) for a subsequent measurement event with corresponding (measurement) prediction error information.
Im Beispiel 30 kann die Prozesssteuerschaltung des Beispiels 29 optional enthalten, dass die (Messwert-) Vorhersagefehlerinformationen der vorhergesagten Messereignisdaten statistische Fehlerinformationen sind.In Example 30, the process control circuit of Example 29 may optionally include the (measurement) prediction error information of the predicted measurement event data being statistical error information.
Im Beispiel 31 kann die Prozesssteuerschaltung des Beispiels 29 oder 30 optional enthalten, dass die vorhergesagten Messereignisdaten auf einer Kombination aus einem oder mehreren Elementen des geschätzten Zustandsvektors basieren.In example 31, the process control circuit of example 29 or 30 may optionally include the predicted measurement event data being based on a combination of one or more elements of the estimated state vector.
Im Beispiel 32 kann die Prozesssteuerschaltung nach einem der Beispiele 29 bis 31 optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Zustandsinformationen und/oder ein Prozessmodell basierend auf den Genauigkeitsinformationen der vorhergesagten Messereignisdaten zu validieren.In example 32, the process control circuit of any of examples 29 to 31 may optionally include the data fusion circuit further configured to validate the state information and / or a process model based on the accuracy information of the predicted measurement event data.
Im Beispiel 33 kann die Prozesssteuerschaltung nach einem der Beispiele 29 bis 32 optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Zustandsinformationen und/oder das Prozessmodell basierend auf den statistischen Fehlerinformationen der vorhergesagten Messereignisdaten zu validieren.In example 33, the process control circuit of any of examples 29 to 32 may optionally include the data fusion circuit further configured to validate the state information and / or the process model based on the statistical error information of the predicted measurement event data.
Im Beispiel 34 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, die erfassten Messdaten basierend auf den Genauigkeitsinformationen der vorhergesagten Messereignisdaten zu validieren. Die Datenverschmelzungsschaltung kann konfiguriert sein, die erfassten Messdaten basierend auf den statistischen Fehlerinformationen der vorhergesagten Messereignisdaten zu validieren.In example 34, the process control circuit of one of the preceding examples may optionally include the data fusion circuit configured to validate the acquired measurement data based on the accuracy information of the predicted measurement event data. The data fusion circuit may be configured to validate the acquired measurement data based on the statistical error information of the predicted measurement event data.
Im Beispiel 35 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, die erfassten Messdaten durch das Berechnen eines Vorhersagefehlers (der außerdem als Erneuerung bezeichnet wird) zu validieren.In example 35, the process control circuit of any one of the preceding examples may optionally include the data fusion circuit configured to validate the acquired measurement data by calculating a prediction error (also referred to as renewal).
Im Beispiel 36 kann die Prozesssteuerschaltung des Beispiels 35 optional enthalten, dass der Vorhersagefehler, v, basierend auf der folgenden Gleichung und/oder einer ähnlichen Gleichung berechnet wird:
Im Beispiel 37 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, die erfassten Messdaten durch das Berechnen einer normierten Erneuerung des Verhältnisses und durch das Vergleichen der berechneten normierten Erneuerung des Verhältnisses mit einem Bezugswert zu validieren.In example 37, the process control circuit of any of the preceding examples may optionally include the data fusion circuit configured to validate the acquired measurement data by calculating a normalized renewal of the ratio and by comparing the calculated normalized renewal of the ratio to a reference value.
Im Beispiel 38 kann die Prozesssteuerschaltung des Beispiels 37 optional enthalten, dass die normierte Erneuerung des Verhältnisses, v0, basierend auf der folgenden Gleichung und/oder einer ähnlichen Gleichung berechnet wird:
Im Beispiel 39 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, geschätzte Messdaten unter Verwendung eines Prozessmodells und eines Messmodells bereitzustellen, um bezüglich einer Fehlanpassung zwischen den Messdaten und den geschätzten Messdaten zu prüfen.In example 39, the process control circuit according to any one of the preceding examples may optionally include the data fusion circuit configured to use estimated measurement data a process model and a measurement model to check for mismatch between the measurement data and the estimated measurement data.
Im Beispiel 40 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional ferner eine Kommunikationsschaltung enthalten, die konfiguriert ist, eine Alarmnachricht in dem Fall, dass eine Fehlanpassung gemäß Beispiel 39 detektiert wird, bereitzustellen (z. B. zu erzeugen und zu senden).In example 40, the process control circuit of one of the preceding examples may optionally further include a communication circuit configured to provide (eg, generate and send) an alarm message in the event that a mismatch is detected according to example 39.
Verschiedene Beispiele beziehen sich darauf, komplexen Mehrdeutigkeiten gewachsen zu sein.Several examples relate to coping with complex ambiguities.
Im Beispiel 41 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Genauigkeitsinformationen basierend auf einem Schätzfehler zu bestimmen, wobei der Schätzfehler in einen endlichen Teil und in einen unendlichen Teil zerlegt ist.In example 41, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to determine the accuracy information based on an estimation error, wherein the estimation error is decomposed into a finite part and an infinite part.
Im Beispiel 42 kann die Prozesssteuerschaltung des Beispiels 41 optional enthalten, dass der Schätzfehler über eine Fehlerkovarianzmatrix (P) oder eine invertierte Fehlerkovarianzmatrix (P-1, die außerdem als eine Informationsmatrix bezeichnet wird) bestimmt wird.In example 42, the process control circuit of example 41 may optionally include determining the estimation error via an error covariance matrix (P) or an inverted error covariance matrix (P -1 , also referred to as an information matrix).
Im Beispiel 43 kann die Prozesssteuerschaltung des Beispiels 42 optional enthalten, dass die Fehlerkovarianzmatrix oder die invertierte Fehlerkovarianzmatrix in einen endlichen Teil (PR) und in einen unendlichen Teil (PI) zerlegt ist.In Example 43, the process control circuit of Example 42 may optionally include the error covariance matrix or the inverted error covariance matrix decomposed into a finite part (P R ) and an infinite part (P I ).
Im Beispiel 44 kann die Prozesssteuerschaltung des Beispiels 42 oder 43 optional enthalten, dass die Fehlerkovarianzmatrix (oder die invertierte Fehlerkovarianzmatrix) gemäß der folgenden Gleichung und/oder einer ähnlichen Gleichung zerlegt ist:
Im Beispiel 45 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, in einem ersten Fall basierend auf einem ersten Satz von Gleichungen zur Wiederherstellung des früheren Zustands und in einem zweiten Fall auf einem zweiten Satz von Gleichungen zur Wiederherstellung des früheren Zustands den früheren Zustand der Zustandsinformationen wiederherzustellen, wobei der erste Fall und der zweite Fall über ein Unterscheidungskriterium voneinander unterschieden sind.In example 45, the process control circuit of any of the preceding examples may optionally include the data fusion circuit further configured, in a first case based on a first set of previous state recovery equations, and in a second case on a second set of recovery equations of the former state to restore the previous state of the state information, wherein the first case and the second case are distinguished from each other by a discrimination criterion.
Im Beispiel 46 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, den Vorhersagefehler für neue Messungen zu berechnen und zu prüfen, ob der Vorhersagefehler unendliche Teile enthält.In example 46, the process control circuit of any of the preceding examples may optionally include the data fusion circuit further configured to calculate the prediction error for new measurements and to check whether the prediction error includes infinite parts.
Im Beispiel 47 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, geschätzte Messdaten und einen entsprechenden Vorhersagefehler zu berechnen und zu prüfen, ob der Vorhersagefehler unendliche Teile enthält.In example 47, the process control circuit of any of the preceding examples may optionally include the data fusion circuit further configured to calculate estimated measurement data and a corresponding prediction error and to check whether the prediction error includes infinite parts.
Im Beispiel 48 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, den früheren Zustand der Zustandsinformationen für einen Messvektor über mehrere einzelne skalare Wiederherstellungen des früheren Zustands wiederherzustellen.In example 48, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to restore the previous state of the state information for a measurement vector over a plurality of individual prior art scalar recoveries.
Im Beispiel 49 kann die Prozesssteuerschaltung des Beispiels 48 optional enthalten, dass für jede der einzelnen skalaren Wiederherstellungen des früheren Zustands geprüft wird, ob der entsprechende Messwert-Vorhersagefehler unendliche Teile enthält.In example 49, the process control circuitry of example 48 may optionally include checking, for each of the individual scalar recoveries of the previous state, whether the corresponding measurement prediction error includes infinite parts.
Im Beispiel 50 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, basierend auf einem numerischen Bezugswert, LNUM, zu prüfen, ob der Messwert-Vorhersagefehler (oder mit anderen Worten der Vorhersagefehler für neue Messwerte) unendliche Teile enthält.In Example 50, the process control circuit of any of the preceding examples may optionally include the data fusion circuit configured to check based on a numeric reference, L NUM , whether the measurement prediction error (or in other words, the new measurement value prediction error) is infinite Contains parts.
Im Beispiel 51 kann die Prozesssteuerschaltung des Beispiels 50 optional enthalten, dass ein erster Satz von Gleichungen zur Wiederherstellung des früheren Zustands verwendet wird, um den früheren Zustand der Zustandsinformationen wiederherzustellen, wenn |FI,k+1| > LNUM gilt, und dass ein zweiter Satz von Gleichungen zur Wiederherstellung des früheren Zustands verwendet wird, um den früheren Zustand der Zustandsinformationen wiederherzustellen, wenn gilt |FI,k+1| ≤ LNUM, mit:
Veranschaulichend wählt der Beobachtungsparameter C im Beispiel 51 ein Produkt und ein Messwerkzeug aus.Illustratively, the observation parameter C in Example 51 selects a product and a measurement tool.
Verschiedene Beispiele beziehen sich auf eine robuste Unterscheidung zwischen einer endlichen und einer unendlichen Varianz der Messwertvorhersage.Several examples relate to a robust distinction between a finite and an infinite variance of the measured value prediction.
Im Beispiel 52 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, basierend auf einem Beobachtungsparameter C und einer Fehlerkovarianzmatrix P einen Unterscheidungswert bereitzustellen und den Unterscheidungswert mit einem Bezugswert, LNUM, zu vergleichen.In example 52, the process control circuit of any of the preceding examples may optionally include the data fusion circuit further configured to provide a discrimination value based on an observation parameter C and an error covariance matrix P and to compare the discrimination value with a reference value, L NUM .
Im Beispiel 53 kann die Prozesssteuerschaltung des Beispiels 52 optional enthalten, dass der Beobachtungsparameter C faktorisiert ist.In example 53, the process control circuit of example 52 may optionally include the observation parameter C being factored.
Im Beispiel 54 kann die Prozesssteuerschaltung des Beispiels 53 optional enthalten, dass der Beobachtungsparameter
Die Faktorisierung gemäß Beispiel 54 führt z. B. zu Folgendem
Verschiedene Beispiele beziehen sich auf das Anwenden einer Quadratwurzelfaktorisierung.Various examples relate to applying a square root factoring.
Im Beispiel 55 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Fehlerkovarianzmatrix oder die invertierte Fehlerkovarianzmatrix (die außerdem als die Informationsmatrix bezeichnet wird) faktorisiert ist.In example 55, the process control circuit according to any of the preceding examples may optionally include factoring the error covariance matrix or the inverted error covariance matrix (which is also referred to as the information matrix).
Im Beispiel 56 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Fehlerkovarianzmatrix oder die invertierte Fehlerkovarianzmatrix in Dreiecksmatrizen faktorisiert ist. Optional kann die Fehlerkovarianzmatrix oder die invertierte Fehlerkovarianzmatrix zusätzlich in eine oder mehrere Diagonalmatrizen (z. B. die Matrix D) faktorisiert sein.In example 56, according to one of the preceding examples, the process control circuit may optionally include the fact that the error covariance matrix or the inverted error covariance matrix is factored into triangular matrices. Optionally, the error covariance matrix or the inverted error covariance matrix may additionally be factored into one or more diagonal matrices (eg the matrix D).
Im Beispiel 57 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Fehlerkovarianzmatrix (z. B. P) (oder die invertierte Fehlerkovarianzmatrix) eine n × n-Matrix ist (die außerdem als eine (n, n)-Matrix bezeichnet wird, die z. B. n Zeilen und n Spalten besitzt) und dass die Dreiecksmatrix (z. B. S) eine n × n-Matrix ist, wobei n eine natürliche Zahl ist. Alle Faktorisierungsmatrizen der faktorisierten Fehlerkovarianzmatrix können quadratisch sein und die gleiche Größe (n × n) wie die Fehlerkovarianzmatrix aufweisen.In Example 57, the process control circuit of any of the preceding examples may optionally include the error covariance matrix (eg, P) (or the inverted error covariance matrix) being an n × n matrix (also referred to as an (n, n) matrix which has, for example, n rows and n columns) and that the triangular matrix (eg, S) is an n × n matrix, where n is a natural number. All factorization matrices of the factored error covariance matrix can be square and have the same size (n × n) as the error covariance matrix.
Im Beispiel 58 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Fehlerkovarianzmatrix (oder die invertierte Fehlerkovarianzmatrix) basierend auf der folgenden Gleichung und/oder einer ähnlichen Gleichung faktorisiert ist:
Im Beispiel 59 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Dreiecksmatrix (z. B. S oder U) eine Anzahl von n Zeilen aufweist und vom Rang r ist und eine Anzahl von n minus r Zeilen, die exakt null sind, enthält. Die Fehlerkovarianzmatrix P weist eine Anzahl von n Zeilen auf und ist vom Rang r.In example 59, the process control circuit of any one of the preceding examples may optionally include the triangular matrix (eg, S or U) having a number of n rows and a rank r, and a number of n minus r rows that are exactly zero , contains. The error covariance matrix P has a number of n lines and is of rank r.
Im Beispiel 60 kann die Prozesssteuerschaltung des Beispiels 59 optional enthalten, dass für jede der n Zeilen, die wenigstens ein von null verschiedenes Element enthält, das entsprechende Diagonalelemente der Dreiecksmatrix (z. B. S oder U) nicht null ist.In example 60, the process control circuitry of example 59 may optionally include that for each of the n rows containing at least one non-zero element, the corresponding diagonal elements of the triangular matrix (eg, S or U) is not zero.
Im Beispiel 61 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Fehlerkovarianzmatrix basierend auf der folgenden Gleichung und/oder einer ähnlichen Gleichung faktorisiert ist:
Gemäß verschiedenen Ausführungsformen kann die Dreiecksmatrix (z. B. S oder U) (z. B. gemäß den Beispielen 58 und 61) eine obere oder untere rechte Matrix oder eine obere oder untere linke Matrix sein.According to various embodiments, the triangular matrix (eg, S or U) (eg, according to examples 58 and 61) may be an upper or lower right matrix or an upper or lower left matrix.
Im Beispiel 62 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Dreiecksmatrix (z. B. S oder U) eine Anzahl von n Spalten aufweist und vom Rang r ist und eine Anzahl von n minus r Spalten, die exakt null sind, enthält. Die Fehlerkovarianzmatrix P weist eine Anzahl von n Zeilen auf und ist vom Rang r.In example 62, the process control circuit of any of the preceding examples may optionally include the triangular matrix (eg, S or U) having a number of n columns and rank r and a number of n minus r columns that are exactly zero , contains. The error covariance matrix P has a number of n lines and is of rank r.
Im Beispiel 63 kann die Prozesssteuerschaltung des Beispiels 62 optional enthalten, dass für jede der n Spalten, die wenigstens ein von null verschiedenes Element enthält, das entsprechende Diagonalelement der Dreiecksmatrix (z. B. S oder
Im Beispiel 64 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, eine Anzahl von g Zeilen oder Spalten, die exakt null sind, in der Dreiecksmatrix (z. B.
Im Beispiel 65 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, eine Anzahl g von Zeilen oder Spalten, die exakt null sind, in der Dreiecksmatrix (z. B. S oder U) zu erzeugen, falls der Rang der Fehlerkovarianzmatrix
Im Beispiel 66 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass der Algorithmus zum Wiederherstellen des früheren Zustands die Zeilen oder die Spalten der Dreiecksmatrix (z. B.
Im Beispiel 67 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass der endliche Teil (
Im Beispiel 68 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass der endliche Teil
Gemäß verschiedenen Ausführungsformen ist der Cholesky-Faktor eine Dreiecksmatrix.According to various embodiments, the Cholesky factor is a triangular matrix.
Verschiedene Beispiele beziehen sich auf eine Quadratwurzelaktualisierung.Various examples relate to a square root update.
Im Beispiel 69 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Fehlerkovarianzmatrix (oder in einer ähnlichen Weise die invertierte Fehlerkovarianzmatrix) zerlegt ist.In example 69, the process control circuit of any one of the preceding examples may optionally include the error covariance matrix (or, in a similar manner, the inverted error covariance matrix) decomposed.
Im Beispiel 70 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Fehlerkovarianzmatrix (oder in einer ähnlichen Weise die invertierte Fehlerkovarianzmatrix) faktorisiert und zerlegt ist.In example 70, the process control circuit of any of the preceding examples may optionally include the error covariance matrix (or, in a similar manner, the inverted error covariance matrix) being factorized and decomposed.
Im Beispiel 71 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass ein endlicher Teil der Fehlerkovarianzmatrix faktorisiert und zerlegt ist und dass ein unendlicher Teil der Fehlerkovarianzmatrix faktorisiert und zerlegt ist.In example 71, according to one of the preceding examples, the process control circuit may optionally include a finite part of the error covariance matrix being factored and decomposed, and an infinite part of the error covariance matrix being factored and decomposed.
Im Beispiel 72 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass der endliche Teil der Fehlerkovarianzmatrix basierend auf der folgenden Gleichung und/oder einer ähnlichen Gleichung faktorisiert und zerlegt ist:
Im Beispiel 73 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass der unendliche Teil der Fehlerkovarianzmatrix basierend auf der folgenden Gleichung und/oder einer ähnlichen Gleichung faktorisiert und zerlegt ist:
Die Matrizen PR,0 PI,0 des Beispiels 72 und 73 sind Diagonalmatrizen (der Größe n).The matrices P R, 0 P I, 0 of Example 72 and 73 are diagonal matrices (of size n).
Im Beispiel 74 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Fehlerkovarianzmatrix in eine Haupt-Fehlerkovarianzmatrix und in eine Prozessrauschmatrix zerlegt ist, um das angesammelte Prozessrauschen in der Prozessrauschmatrix separat zu behandeln.In example 74, the process control circuit of any of the preceding examples may optionally include decomposing the error covariance matrix into a main error covariance matrix and a process noise matrix to separately treat the accumulated process noise in the process noise matrix.
Im Beispiel 75 kann die Prozesssteuerschaltung des Beispiels 74 optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, neues Prozessrauschen nur zu der Prozessrauschmatrix hinzuzufügen (Prozessaktualisierung) und die (von null verschiedenen) Elemente der Prozessrauschmatrix vor irgendeiner späteren Wiederherstellung des früheren Zustands zu der Haupt-Kovarianzmatrix in dem Fall zu übertragen, in dem die Wiederherstellung des früheren Zustands die auf diese Matrixelemente bezogenen Zustandselemente einbezieht.In example 75, the process control circuit of example 74 may optionally include the data fusion circuit further configured to introduce new process noise only to the process noise matrix to add (process update) and to transfer the (non-zero) elements of the process noise matrix to the main covariance matrix prior to any later restoration of the previous state in the case where the restoration of the previous state involves the state elements related to those matrix elements.
Im Beispiel 76 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die invertierte Fehlerkovarianzmatrix (z. B. die Informationsmatrix) in eine Haupt-Informationsmatrix und in eine Messrauschmatrix zerlegt ist, um das angesammelte Messrauschen in der Messrauschmatrix separat zu behandeln.In example 76, the process control circuit of any one of the preceding examples may optionally include decomposing the inverted error covariance matrix (eg, the information matrix) into a main information matrix and a measurement noise matrix to separately treat the accumulated measurement noise in the measurement noise matrix.
Im Beispiel 77 kann die Prozesssteuerschaltung des Beispiels 76 optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, neues Messrauschen nur zu der Messrauschmatrix hinzuzufügen (Wiederherstellung des früheren Zustands) und die (von null verschiedenen Elemente) der Messrauschmatrix vor irgendeiner späteren Prozessaktualisierung zu der Haupt-Informationsmatrix zu übertragen, falls die Aktualisierung die auf diese Matrixelemente bezogenen Zustandselemente einbezieht.In example 77, the process control circuit of example 76 may optionally include the data fusion circuit further configured to add new measurement noise only to the measurement noise matrix (restoration of the previous state) and the non-zero elements of the measurement noise matrix prior to any later process update to the main process. Transfer information matrix, if the update includes the state elements related to these matrix elements.
Im Beispiel 78 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die Zustandsinformationen basierend auf einem ersten Satz von Aktualisierungsgleichungen, die den Übergang des Zustands (A-Aktualisierung) behandeln, und einem zweiten Satz von Aktualisierungsgleichungen zum Hinzufügen neuen Prozessrauschens zu dem Zustand (Q-Aktualisierung) zu aktualisieren.In example 78, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to update the state information based on a first set of update equations dealing with the state transition (A update) and a second set of update equations Add new process noise to update the state (Q update).
Im Beispiel 79 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass eine Zustandsübergangsmatrix (A) in Einheitsblöcke und Nichteinheitsblöcke getrennt ist, um die Zustandsinformationen zu aktualisieren.In Example 79, the process control circuit according to any one of the preceding examples may optionally include a state transition matrix (A) separated into unit blocks and non-unit blocks to update the state information.
Im Beispiel 80 kann die Prozesssteuerschaltung des Beispiels 78 oder 79 optional enthalten, dass die Zustandsübergangsmatrix (
Im Beispiel 81 kann die Prozesssteuerschaltung des Beispiels 79 oder 80 optional enthalten, dass die Gesamtprozessaktualisierung als eine Folge von Unterprozessaktualisierungen formuliert ist, wobei jede Unterprozessaktualisierung einen der mehreren Nichteinheitsblöcke berücksichtigt.In example 81, the process control circuit of example 79 or 80 may optionally include the overall process update being formulated as a sequence of sub-process updates, with each sub-process update taking into account one of the multiple non-entity blocks.
Verschiedene Beispiele beziehen sich auf die Validierung von Kalman-Filter-Modellen, die auf die wirklichen Daten abgestimmt sind.Several examples relate to the validation of Kalman filter models tuned to the actual data.
Im Beispiel 82 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, das Prozessmodell (z. B. die Prozessmodellparameter) und/oder das Messmodell (z. B. die Messmodellparameter) basierend auf einem Satz von Trainingsdaten zu validieren und/oder abzustimmen.In example 82, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to include the process model (eg, the process model parameters) and / or the measurement model (eg, the measurement model parameters) based on a set of training data to validate and / or vote.
Im Beispiel 83 kann die Prozesssteuerschaltung des Beispiels 82 optional enthalten, dass der Satz von Trainingsdaten die verfügbaren Prozessdaten (z. B. die Kontextdaten und/oder die Logistikdaten der Bearbeitungsanordnung und des Betriebs der Bearbeitungsanordnung) und/oder die verfügbaren Messdaten (die z. B. auf die Prozessdaten abgebildet sind) enthält.In example 83, the process control circuitry of example 82 may optionally include the set of training data containing the available process data (eg, the context data and / or the logistics data of the processing arrangement and operation) and / or the available measurement data (e.g. B. are mapped to the process data) contains.
Im Beispiel 84 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, ein abgestimmtes Prozessmodell und/oder ein abgestimmtes Messmodell zu validieren.In example 84, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to validate a tuned process model and / or a tuned measurement model.
Im Beispiel 85 kann die Prozesssteuerschaltung des Beispiels 84 optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, das (z. B. abgestimmte) Prozessmodell und/oder das (z. B. abgestimmte) Messmodell basierend auf einem normierten Vorhersagefehlersignal zum Vorhersagen von Bezugs-Messereignisdaten für mehrere Messereignisse zu validieren.In example 85, the process control circuit of example 84 may optionally include the data fusion circuit configured to further configure the (eg, tuned) process model and / or the (eg, tuned) measurement model based on a normalized prediction error signal to predict reference values. Validate measurement event data for multiple measurement events.
Im Beispiel 86 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, das Prozessmodell und/oder das Messmodell basierend auf einem Durchschnittswert zu validieren, der mehrere symmetrisierte normierte Vorhersagefehler berücksichtigt.In example 86, the process control circuit of any one of the preceding examples may optionally include the data fusion circuit further configured to depict the process model and / or the process model Validating a measurement model based on an average value that takes into account multiple symmetrized normalized prediction errors.
Im Beispiel 87 kann die Prozesssteuerschaltung des Beispiels 86 optional enthalten, dass die symmetrisierten normierten Vorhersagefehler durch das Anwenden einer symmetrischen Funktion auf die normierten Vorhersagefehler bereitgestellt werden.In example 87, the process control circuit of example 86 may optionally include providing the symmetrized normalized prediction errors by applying a symmetric function to the normalized prediction errors.
Im Beispiel 88 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, das Prozessmodell und/oder das Messmodell (z. B. alle Parameter) basierend auf einem Wahrscheinlichkeitssignal und/oder einem Wahrscheinlichkeitsgradientensignal für einen oder mehrere Modellparameter (z. B. für einen spezifischen Modellparameter) zu validieren. Das Signal kann eine Folge von Zahlen sein, wobei jede Zahl einem Messwert entspricht.In example 88, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to configure the process model and / or measurement model (eg, all parameters) based on a probability signal and / or a probability gradient signal for one or more model parameters (eg for a specific model parameter). The signal may be a sequence of numbers, each number corresponding to a reading.
Verschiedene Beispiele beziehen sich auf das Verfolgen, Überwachen und Austesten eines rekursiven Schätz- und Vorhersagealgorithmus.Various examples relate to tracking, monitoring, and debugging a recursive estimation and prediction algorithm.
Im Beispiel 89 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, mehrere Sicherungszustandsinformationen (um dadurch z. B. zusätzliche historische Daten zu erzeugen) und mehrere Sicherungsmodellparameter zu speichern, um wenigstens eine Zustandsinformation, die zu überwachen ist, zu rekonstruieren.In example 89, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to store a plurality of backup state information (to thereby generate, for example, additional historical data) and a plurality of backup model parameters to monitor at least one state information is to reconstruct.
Im Beispiel 90 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, wenigstens eine Zustandsinformation, die zu überwachen ist, während des Betreibens des Filters zu rekonstruieren.In example 90, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to reconstruct at least one state information to be monitored during operation of the filter.
Im Beispiel 91 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, die wenigstens eine Zustandsinformation, die zu überwachen ist, durch das erneute Berechnen der wenigstens eine Zustandsinformation, die zu überwachen ist, beginnend von einer der gespeicherten mehreren Sicherungszustandsinformationen und unter Berücksichtigung oder Einbeziehung eines oder mehrerer der gespeicherten mehreren Modellparameter zu rekonstruieren.In example 91, the process control circuit of any of the preceding examples may optionally include the data fusion circuit further configured to include the at least one state information to be monitored by recalculating the at least one state information to be monitored, starting from one of the stored ones to reconstruct multiple backup state information and considering or incorporating one or more of the stored multiple model parameters.
Im Beispiel 92 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional ferner eine Datenverarbeitungsschaltung enthalten, die konfiguriert ist, (z. B. eine anwenderdefinierte) Kombination aus einem oder mehreren Zustandsinformationselementen der wenigstens einen Zustandsinformation, die zu überwachen ist, zu rekonstruieren.In example 92, the process control circuit of one of the preceding examples may optionally further include a data processing circuit configured to reconstruct (eg, a user-defined) combination of one or more state information elements of the at least one state information to be monitored.
Im Beispiel 93 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, Zustandsinformationen oder eine Kombination aus Zustandsinformationselementen der Zustandsinformationen in eine gewichtete Summe unter Berücksichtigung mehrerer vorhergehender Messereignisdaten zu zerlegen.In example 93, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to decompose state information or a combination of state information elements of the state information into a weighted sum taking into account a plurality of previous measurement event data.
Im Beispiel 94 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, eine oder mehrere Verfolgungs- und/oder Austestgrößen unter Berücksichtigung wenigstens einer anwenderdefinierten (z. B. linearen) Kombination der Zustandsinformationselemente der Zustandsinformationen bereitzustellen.In example 94, the process control circuit of one of the preceding examples may optionally include the data fusion circuit further configured to provide one or more tracking and / or debug metrics considering at least one user-defined (eg, linear) combination of the state information elements of the state information.
Im Beispiel 95 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, einen exakten Wahrscheinlichkeitsgradienten des Prozessmodells (z. B. für die Prozessgleichungen und/oder die Messgleichungen) zu berechnen.In example 95, the process control circuit of any of the preceding examples may optionally include the data fusion circuit further configured to calculate an exact probability gradient of the process model (eg, for the process equations and / or the measurement equations).
Im Beispiel 96 kann die Prozesssteuerschaltung des Beispiels 95 optional enthalten, dass ein verallgemeinertes Inverses (Pseudoinverses) eines Produkts verwendet wird, um einen exakten Wahrscheinlichkeitsgradienten des Prozessmodells zu berechnen, wobei das Produkt eine Matrix eines Prozess- oder Messmodellparameters und die Transponierte der Matrix enthält.In example 96, the process control circuit of example 95 may optionally include using a generalized inverse (pseudo inverse) of a product to calculate an exact probability gradient of the process model, the product including a matrix of a process or measurement model parameter and the transpose of the matrix.
Im Beispiel 97 kann die Prozesssteuerschaltung des Beispiels 95 oder 96 optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, einen exakten Wahrscheinlichkeitsgradienten des Prozessmodells unter Berücksichtigung der folgenden Gleichung oder einer ähnlichen Gleichung zu berechnen:
Im Beispiel 98 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung
Im Beispiel 99 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, einen vereinigten Prozessmodellparameter jeweils für einen oder mehrere der Prozessmodellparameter bereitzustellen. Der vereinigte Prozessmodellparameter repräsentiert mehrerer Prozessmodellparameter der entsprechenden Prozessereignisse, für die keine Messereignisse berücksichtigt werden.In example 99, the process control circuit of one of the preceding examples may optionally include the data fusion circuit configured to provide a unified process model parameter for one or more of the process model parameters, respectively. The unified process model parameter represents multiple process model parameters of the corresponding process events for which no measurement events are considered.
Verschiedene Beispiele beziehen sich auf eine Unterbrechungsmodellierung für ein Prozessmodell und/oder ein Messmodell für einen rekursiven Schätz- und Vorhersagealgorithmus.Various examples relate to interrupt modeling for a process model and / or measurement model for a recursive estimation and prediction algorithm.
Im Beispiel 100 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, die erfassten Messdaten basierend auf statistischen Fehlerinformationen zu validieren, um eine Fehlanpassung des Modells zu bestimmen.In example 100, the process control circuit of any of the preceding examples may optionally include the data fusion circuit configured to validate the acquired measurement data based on statistical error information to determine a model mismatch.
Im Beispiel 101 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, z. B. in dem Fall, in dem eine Fehlanpassung bestimmt wird, wie im Beispiel 100 beschrieben ist, ein Bezugsmodell aus mehreren Bezugsmodellen auszuwählen und die Zustandsinformationen basierend auf dem ausgewählten Bezugsmodell neu zu berechnen.In example 101, the process control circuit according to any one of the preceding examples may optionally include the data fusion circuit configured, e.g. In the case where a mismatch is determined, as described in Example 100, select a reference model from a plurality of reference models and recompute the state information based on the selected reference model.
Im Beispiel 102 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung konfiguriert ist, ein erstes Bezugsmodell aus mehreren Bezugsmodellen auszuwählen und die Zustandsinformationen basierend auf dem ausgewählten ersten Bezugsmodell neu zu berechnen und einen ersten Modellübereinstimmungsparameter zu bestimmen und ein zweites Bezugsmodell aus mehreren Bezugsmodellen auszuwählen und die Zustandsinformationen basierend auf dem ausgewählten zweiten Bezugsmodell neu zu berechnen und einen zweiten Modellübereinstimmungsparameter zu bestimmen und den ersten Modellübereinstimmungsparameter mit dem zweiten Modellübereinstimmungsparameter zu vergleichen und basierend auf dem Vergleich das erste oder das zweite Modell für den weiteren Betrieb auszuwählen.In example 102, the process control circuit of one of the preceding examples may optionally include the data fusion circuit configured to select a first reference model from a plurality of reference models and recalculate the state information based on the selected first reference model and determine a first model match parameter and a second reference model select multiple reference models and recalculate the state information based on the selected second reference model and determine a second model match parameter and compare the first model match parameter with the second model match parameter and select the first or the second model for further operation based on the comparison.
Im Beispiel 103 kann die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele optional enthalten, dass die Datenverschmelzungsschaltung ferner konfiguriert ist, ein Modell, das zum Aktualisieren und/oder Wiederherstellen des früheren Zustands verwendet wird, (z. B. das Prozessmodell und/oder das Messmodell) zu validieren und/oder abzustimmen.In example 103, the process control circuit according to any one of the preceding examples may optionally include the data fusion circuit further configured to use a model used to update and / or restore the previous state (eg, the process model and / or the measurement model). to validate and / or vote.
Das Beispiel 104 ist ein Verfahren zum Steuern einer Bearbeitungsanordnung, wobei das Verfahren Folgendes enthält: Erfassen von Prozessdaten und Messdaten der Bearbeitungsanordnung, wobei die Prozessdaten mehrere Prozessereignisdaten gemäß mehreren Prozessereignissen enthalten und die Messdaten mehrere Messereignisdaten gemäß mehreren Messereignissen enthalten; Bereitstellen von Zustandsinformationen, die einen Status der Bearbeitungsanordnung repräsentieren, und von Genauigkeitsinformationen, die eine Genauigkeit der Zustandsinformationen repräsentieren; Aktualisieren der Zustandsinformationen basierend auf den erfassten Prozessereignisdaten, wodurch die Genauigkeit der Zustandsinformationen verringert wird, und unabhängig vom Aktualisieren der Zustandsinformationen Wiederherstellen des früheren Zustands der Zustandsinformationen basierend auf den erfassten Messereignisdaten, wodurch die Genauigkeit der Zustandsinformationen vergrößert wird, und Steuern der Bearbeitungsanordnung basierend auf den Zustandsinformationen und/oder den Genauigkeitsinformationen.Example 104 is a method of controlling a processing arrangement, the method including: acquiring process data and measurement data of the processing device, wherein the process data includes a plurality of process event data according to a plurality of process events and the measurement data includes a plurality of measurement event data according to a plurality of measurement events; Providing state information representing a status of the processing device and accuracy information representing accuracy of the state information; Updating the state information based on the acquired process event data, thereby reducing the accuracy of the state information, and independently of updating the state information, restoring the previous state of the state information based on the acquired measurement event data, thereby increasing the accuracy of the state information, and controlling the processing arrangement based on the Status information and / or the accuracy information.
Das Beispiel 105 ist ein nichtflüchtiges computerlesbares Medium mit Programmanweisungen, die, wenn sie ausgeführt werden, eine Vorrichtung veranlassen, eine Steuerung einer Bearbeitungsanordnung auszuführen, die Folgendes enthält: Erfassen von Prozessdaten und Messdaten der Bearbeitungsanordnung, wobei die Prozessdaten mehrere Prozessereignisdaten gemäß mehreren Prozessereignissen enthalten und die Messdaten mehrere Messereignisdaten gemäß mehreren Messereignissen enthalten; Bereitstellen von Zustandsinformationen, die einen Status der Bearbeitungsanordnung repräsentieren, und von Genauigkeitsinformationen, die eine Genauigkeit der Zustandsinformationen repräsentieren; Aktualisieren der Zustandsinformationen basierend auf den erfassten Prozessereignisdaten, wodurch die Genauigkeit der Zustandsinformationen verringert wird, und unabhängig vom Aktualisieren der Zustandsinformationen Wiederherstellen des früheren Zustands der Zustandsinformationen basierend auf den erfassten Messereignisdaten, wodurch die Genauigkeit der Zustandsinformationen vergrößert wird, und Steuern der Bearbeitungsanordnung basierend auf den Zustandsinformationen und/oder den Genauigkeitsinformationen.Example 105 is a non-transitory computer-readable medium having program instructions that, when executed, cause a device to perform control of a processing arrangement including: acquiring process data and measurement data of the processing device, wherein the process data includes a plurality of process event data according to a plurality of process events; the measurement data includes a plurality of measurement event data in accordance with a plurality of measurement events; Providing state information representing a status of the processing device and accuracy information representing accuracy of the state information; Updating the state information based on the acquired process event data, thereby reducing the accuracy of the state information, and independently of updating the state information, restoring the previous state of the state information based on the acquired measurement event data, thereby increasing the accuracy of the state information, and controlling the processing arrangement based on the Status information and / or the accuracy information.
Das Beispiel 106 ist eine Prozesssteuerschaltung, die Folgendes enthält: eine Datenerfassungsschaltung, die konfiguriert ist, die Prozessdaten und die Messdaten einer Bearbeitungsanordnung zu erfassen, wobei die Prozessdaten mehrere Prozessereignisdaten gemäß mehreren Prozessereignissen enthalten und die Messdaten mehrere Messereignisdaten gemäß mehreren Messereignissen enthalten; eine Datenverschmelzungsschaltung, die konfiguriert ist, geschätzte Zustandsinformationen, wobei die geschätzten Zustandsinformationen einen geschätzten Status der Bearbeitungsanordnung repräsentieren, und Fehlerinformationen, die einen Schätzfehler der geschätzten Zustandsinformationen repräsentieren, bereitzustellen; wobei die Datenverschmelzungsschaltung ferner konfiguriert ist, die geschätzten Zustandsinformationen durch das Aktualisieren und das Wiederherstellen des früheren Zustands vorhergehender Zustandsinformationen basierend auf den erfassten Prozessereignisdaten und Messereignisdaten bereitzustellen, wobei der Schätzfehler durch das Aktualisieren (z. B. das Berücksichtigen der Prozessdaten) vergrößert wird und wobei der Schätzfehler durch das Wiederherstellen des früheren Zustands (z. B. das Berücksichtigen der Messereignisdaten) verkleinert wird, und eine Steuerschaltung, die konfiguriert ist, die Bearbeitungsanordnung basierend auf den geschätzten Zustandsinformationen (
Das Beispiel 107 ist eine Prozesssteuerschaltung, die Folgendes enthält: eine Datenerfassungsschaltung, die konfiguriert ist, die Prozessdaten und die Messdaten einer Bearbeitungsanordnung zu erfassen, wobei die Prozessdaten mehrere Prozessereignisdaten gemäß mehreren Prozessereignissen enthalten und die Messdaten mehrere Messereignisdaten gemäß mehreren Messereignissen enthalten; eine Schaltung zur rekursiven Prozesssteuerung, die konfiguriert ist, aktuelle Zustandsinformationen basierend auf den Prozessereignisdaten eines aktuellen Prozessereignisses und einer Folge vorhergehender Prozess- (und z. B. Mess-) Ereignisse rekursiv zu berechnen und die aktuellen Zustandsinformationen beim Erfassen von Messereignisdaten, die wenigstens einem vorhergehenden Prozessereignis der Folge von vorhergehenden Prozessereignissen entsprechen, (und/oder beim Erfassen von Prozessereignisdaten) neu zu berechnen, und eine Steuerschaltung, die konfiguriert ist, die Bearbeitungsanordnung basierend auf den aktuellen Zustandsinformationen (
Im Beispiel 108 wird die Prozesssteuerschaltung nach einem der vorhergehenden Beispiele bei der Losfertigung zum Herstellen mehrerer Produkte verwendet, wobei jedes der mehreren Produkte über mehrere Prozesse hergestellt wird. Die Losfertigung kann zu einem riesigen Datenbestand führen, der behandelt werden muss, wobei der riesige Datenbestand durch die hier beschriebene Datenverschmelzungsschaltung
Während die Erfindung bezüglich spezifischer Ausführungsformen speziell gezeigt und beschrieben worden ist, sollte es für die Fachleute auf dem Gebiet selbstverständlich sein, dass verschiedene Änderungen an der Form und den Einzelheiten daran vorgenommen werden können, ohne vom Erfindungsgedanken und Schutzumfang der Erfindung, die durch die beigefügten Ansprüche definiert sind, abzuweichen. Der Schutzumfang der Erfindung ist folglich durch die beigefügten Ansprüche angegeben, wobei deshalb vorgesehen ist, dass alle Änderungen, die in die Bedeutung und den Äquivalenzbereich der Ansprüche kommen, einbezogen sind.While the invention has been particularly shown and described with respect to specific embodiments, it should be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention as set forth in the appended claims Claims are defined to deviate. The scope of the invention is, therefore, indicated by the appended claims, it is therefore intended that all changes coming within the meaning and range of equivalency of the claims be included.
Claims (29)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102017111926.4A DE102017111926A1 (en) | 2017-05-31 | 2017-05-31 | Process control circuit and method for controlling a processing arrangement |
US15/993,304 US10963449B2 (en) | 2017-05-31 | 2018-05-30 | Process control circuit and method for controlling a processing arrangement |
US17/153,404 US11640386B2 (en) | 2017-05-31 | 2021-01-20 | Process control circuit and method for controlling a processing arrangement |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102017111926.4A DE102017111926A1 (en) | 2017-05-31 | 2017-05-31 | Process control circuit and method for controlling a processing arrangement |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102017111926A1 true DE102017111926A1 (en) | 2018-12-06 |
Family
ID=64278772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102017111926.4A Pending DE102017111926A1 (en) | 2017-05-31 | 2017-05-31 | Process control circuit and method for controlling a processing arrangement |
Country Status (2)
Country | Link |
---|---|
US (2) | US10963449B2 (en) |
DE (1) | DE102017111926A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102022100379A1 (en) | 2022-01-10 | 2023-07-13 | Bayerische Motoren Werke Aktiengesellschaft | Method for monitoring a multi-stage manufacturing process of a component using a monitoring system, computer program product and monitoring system |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10811908B2 (en) | 2014-09-25 | 2020-10-20 | Supply, Inc. | System and method for wireless power reception |
US11178625B2 (en) | 2017-06-06 | 2021-11-16 | Supply, Inc. | Method and system for wireless power delivery |
US10778044B2 (en) * | 2018-11-30 | 2020-09-15 | Supply, Inc. | Methods and systems for multi-objective optimization and/or wireless power delivery |
WO2018226871A1 (en) | 2017-06-06 | 2018-12-13 | Supply, Inc. | Method and system for wireless power delivery |
US10430708B1 (en) * | 2018-08-17 | 2019-10-01 | Aivitae LLC | System and method for noise-based training of a prediction model |
CN109728795B (en) * | 2018-12-24 | 2022-11-18 | 哈尔滨理工大学 | Time-varying event trigger filtering method with data loss under unknown probability condition |
US11204758B1 (en) * | 2020-08-11 | 2021-12-21 | Oracle International Corporation | Computer cloud system with predictive patching |
TWI761975B (en) * | 2020-09-29 | 2022-04-21 | 新加坡商鴻運科股份有限公司 | Device and method for monitoring abnormal machine process parameters, and storage medium |
WO2022221435A1 (en) | 2021-04-14 | 2022-10-20 | Supply, Inc. | System and method for wireless power networking |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19902795A1 (en) * | 1999-01-15 | 2000-08-03 | Fraunhofer Ges Forschung | Quality monitoring in a production with a wide range of products |
DE60207588T2 (en) * | 2001-09-13 | 2006-11-30 | Advanced Micro Devices, Inc., Sunnyvale | STATUS ESTIMATION AND CLASSIFICATION FOR A MANUFACTURING SYSTEM |
DE112010000703T5 (en) * | 2009-01-23 | 2013-06-20 | Mks Instruments Inc. | Controlling a manufacturing process with a multivariate model |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6092033A (en) * | 1997-04-16 | 2000-07-18 | Uhlmann; Jeffrey K. | Method and apparatus for fusing mean and covariance estimates |
US7460130B2 (en) * | 2000-09-26 | 2008-12-02 | Advantage 3D Llc | Method and system for generation, storage and distribution of omni-directional object views |
US6757579B1 (en) * | 2001-09-13 | 2004-06-29 | Advanced Micro Devices, Inc. | Kalman filter state estimation for a manufacturing system |
US6651031B2 (en) * | 2001-12-12 | 2003-11-18 | Nokia Corporation | Method for providing time using a multiple-clock model and a clock system using such a model |
US9818136B1 (en) * | 2003-02-05 | 2017-11-14 | Steven M. Hoffberg | System and method for determining contingent relevance |
US7716535B2 (en) * | 2006-06-08 | 2010-05-11 | Oracle America, Inc. | Kalman filtering for grid computing telemetry and workload management |
JP4229141B2 (en) * | 2006-06-19 | 2009-02-25 | トヨタ自動車株式会社 | Vehicle state quantity estimation device and vehicle steering control device using the device |
US20080255911A1 (en) * | 2007-04-13 | 2008-10-16 | Raytheon Company | Method and system for adaptive closed loop resource management |
US8706424B2 (en) * | 2009-06-30 | 2014-04-22 | H2Scan Corporation | System for estimating a gas concentration in a mixed atmosphere |
US11195057B2 (en) * | 2014-03-18 | 2021-12-07 | Z Advanced Computing, Inc. | System and method for extremely efficient image and pattern recognition and artificial intelligence platform |
US9414239B2 (en) * | 2012-06-14 | 2016-08-09 | Digimarc Corporation | Space time calibration for networks using state model of node clock parameters |
EP2880260A4 (en) * | 2012-08-01 | 2015-08-12 | Services Petroliers Schlumberger | Assessment, monitoring and control of drilling operations and/or geological-characteristic assessment |
US20140214354A1 (en) * | 2013-01-28 | 2014-07-31 | Verayo, Inc. | System and method of detection and analysis for semiconductor condition prediction |
KR101698682B1 (en) * | 2015-08-26 | 2017-01-23 | 매그나칩 반도체 유한회사 | Method and Apparatus of correcting output value of terrestrial magnetism sensor |
CA3032812A1 (en) * | 2016-08-04 | 2018-02-08 | Reification Inc. | Methods for simultaneous localization and mapping (slam) and related apparatus and systems |
-
2017
- 2017-05-31 DE DE102017111926.4A patent/DE102017111926A1/en active Pending
-
2018
- 2018-05-30 US US15/993,304 patent/US10963449B2/en active Active
-
2021
- 2021-01-20 US US17/153,404 patent/US11640386B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19902795A1 (en) * | 1999-01-15 | 2000-08-03 | Fraunhofer Ges Forschung | Quality monitoring in a production with a wide range of products |
DE60207588T2 (en) * | 2001-09-13 | 2006-11-30 | Advanced Micro Devices, Inc., Sunnyvale | STATUS ESTIMATION AND CLASSIFICATION FOR A MANUFACTURING SYSTEM |
DE112010000703T5 (en) * | 2009-01-23 | 2013-06-20 | Mks Instruments Inc. | Controlling a manufacturing process with a multivariate model |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102022100379A1 (en) | 2022-01-10 | 2023-07-13 | Bayerische Motoren Werke Aktiengesellschaft | Method for monitoring a multi-stage manufacturing process of a component using a monitoring system, computer program product and monitoring system |
Also Published As
Publication number | Publication date |
---|---|
US10963449B2 (en) | 2021-03-30 |
US11640386B2 (en) | 2023-05-02 |
US20210149876A1 (en) | 2021-05-20 |
US20180349434A1 (en) | 2018-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102017111926A1 (en) | Process control circuit and method for controlling a processing arrangement | |
DE60307310T2 (en) | LIKELY-RESTRICTED OPTIMIZATION FOR CONTROLLING A PRODUCTION LINE | |
DE60207588T2 (en) | STATUS ESTIMATION AND CLASSIFICATION FOR A MANUFACTURING SYSTEM | |
DE102016109232B4 (en) | Sampling method with sampling rate decision scheme and computer program product thereof | |
DE102007017039B4 (en) | Robust process model identification with model-based control techniques | |
DE60104705T2 (en) | IMPROVED CONTROL WITH ADAPTIVE SCANNING METHOD FOR SEMICONDUCTOR MANUFACTURING | |
DE102008021558A1 (en) | Process and system for semiconductor process control and monitoring using PCA models of reduced size | |
DE102006004411B4 (en) | Method and system for measuring data evaluation in semiconductor processing by correlation-based data filtering | |
DE112007000868T5 (en) | Timed moving average filter | |
DE112006002918T5 (en) | Product-related feedback for process control | |
WO1994015268A2 (en) | Method and device for signal analysis, process identification and monitoring of a technical process | |
DE10311311A1 (en) | Calculation of price elasticity | |
DE112019000739T5 (en) | TIME SERIES ACQUISITION FOR ANALYZING AND CORRECTING A SYSTEM STATUS | |
DE10393394T5 (en) | Intelligent integrated lithography control system based on product construction and yield feedback system | |
DE102009038844A1 (en) | Method for estimating a leakage current in a semiconductor device | |
DE10213285A1 (en) | Method of controlling processing device, e.g. photolithographic process in semiconductor manufacture involves predicting current bias correction value from several of the most recent previous correction values | |
DE102005030586A1 (en) | Method and system for advanced process control using measurement uncertainty as control input | |
CN110826021A (en) | Robust identification and output estimation method for nonlinear industrial process | |
DE112021002866T5 (en) | MODEL FAITH MONITORING AND REBUILDING TO SUPPORT DECISIONS OF A MANUFACTURING PROCESS | |
DE102021127244A1 (en) | Artificial intelligence optimization platform | |
DE102009021781A1 (en) | Engine-operating method for calculating an engine-operating map for a vehicle's control device creates a map with a specified number of nodes while measuring data points to calculate a map value | |
DE112018008256B3 (en) | Method for determining a contribution of one of a plurality of devices to a parameter fingerprint, system and computer program product | |
DE102019214546B4 (en) | Computer-implemented method and apparatus for optimizing an artificial neural network architecture | |
DE102005004568A1 (en) | Calibrated sensor`s measured value observing method for Kalman filter, involves comparing associated and estimated matrixes and rejecting value when comparison does not result in improvement of quality of estimated value of system vector | |
DE102021200042A1 (en) | Device and method for the method of training the neural drift network and the neural diffusion network of a neural stochastic differential equation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication |