DE3689049T2 - Selbstanpassender Prozessor. - Google Patents
Selbstanpassender Prozessor.Info
- Publication number
- DE3689049T2 DE3689049T2 DE86301652T DE3689049T DE3689049T2 DE 3689049 T2 DE3689049 T2 DE 3689049T2 DE 86301652 T DE86301652 T DE 86301652T DE 3689049 T DE3689049 T DE 3689049T DE 3689049 T2 DE3689049 T2 DE 3689049T2
- Authority
- DE
- Germany
- Prior art keywords
- value
- array
- cell
- cells
- oneu
- 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.)
- Expired - Fee Related
Links
- 230000008602 contraction Effects 0.000 claims description 30
- 238000000926 separation method Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 11
- 238000000034 method Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 11
- 229920006395 saturated elastomer Polymers 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 4
- 239000011159 matrix material Substances 0.000 claims description 4
- 230000002401 inhibitory effect Effects 0.000 claims 2
- 230000006399 behavior Effects 0.000 description 8
- 238000003491 array Methods 0.000 description 6
- 238000002474 experimental method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000010494 dissociation reaction Methods 0.000 description 1
- 230000005593 dissociations Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000000053 physical method Methods 0.000 description 1
- 230000011514 reflex Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/10—Interfaces, programming languages or software development kits, e.g. for simulating neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
- Complex Calculations (AREA)
- Multi Processors (AREA)
Description
- Diese Erfindung betrifft digitale Parallelprozessoren oder Prozessoranordnungen von der Art, die eine zweidimensionale Matrix von im wesentlichen identischen, miteinander verbundenen Zellen aufweist, die Signale von anderen Zellen in der Matrix empfangen können, um Transformationsoperationen sequentiell bei einer Mehrzahl von Eingangssignalen durchzuführen, um einen Ausgang auf der Grundlage solcher Operationen zu erzeugen.
- Es gibt viele unterschiedliche Beispiele von Prozessoranordnungen nach dem Stand der Technik. Eines der grundsätzlichsten Beispiele einer Prozessoranordnung, auf die Bezug genommen wird, ist die US-A-3 106 698, die eine zweidimensionale Matrix identischer Verarbeitungselemente oder Zellen offenbart, die eine Logik- und Speicherfähigkeit haben. Jede Zelle ist mit einer Mehrzahl Nachbarzellen verbunden, und Eingangsdaten oder Signal können unmittelbar in jede Zelle von einer äquivalenten Zelle über eine Eingangsanordnung eingegeben werden. Das Verarbeiten in jeder Zelle wird unter Steuerung einer Hauptsteuerung durchgeführt, die allgemeine Befehle an alle Zellen ausgibt, um eine gleichzeitige Datenverarbeitung in jeder Zelle und eine Informationsübertragung zwischen Zellen durch Multiplexer-Verbindungen zu erlauben. Eine Reihe von Transformationen wird an den Eingangsdaten durch die Zellen durchgeführt, um an einer Ausgangsmatrix anzukommen.
- Aus dem obengenannten Stand der Technik stammt ein ganzes Gebiet paralleler Prozessor-Reihenstrukturen, von denen viele als Hauptfunktion das Erkennen, die Analyse, die Digitalisierung oder Klassifizierung von Mustern oder Bildern hat. Jedoch zielen diese Reihenanordnungen auf präzise und genaue Ergebnisse, das heißt, daß es für gegebene Eingänge definierte Ausgänge gibt, das heißt einen Ausgang für jeden Eingang, so daß unterschiedliche Ausgänge ein besonderes Muster- oder Bildereignis darstellen, beispielsweise einen Rand. Andererseits besitzt die Prozessorreihenanordnung dieser Erfindung eine Anpassungsverhalten, das heißt, sie ist fähig, in einer nichtlinearen Weise zu arbeiten, so daß verschiedene Arten von Eingängen dazu führen, gewisse erwünschte Ausgänge zu bedeuten, obgleich die Eingänge nicht notwendigerweise dieselben sein müssen.
- Eine Reihenanordnung mit Anpassungsverhalten ist von den gegenwärtigen Erfindern geoffenbart in Physical Review Letters Vol. 52, Nr. 12, März 1984 S., 1048-51, "Adaption and self-repair in computing structures". Der Artikel beschreibt eine Klasse von Computerarchitekturen, die in einer selbstreparierenden Weise rechnen, indem das Vorhandensein von Attraktoren in ihren Phasenräumen ausgenützt wird. Ein solcher Mechanismus führt zu Rechenstrukturen, die fähig sind, verschiedene Eingänge zuverlässig zu lernen und selbst dann zu erkennen, wenn sie etwas verzerrt sind. Bei einer Ausführung einer Reihenanordnung von Prozessoren mit m-Zeilen und n-Spalten hat jeder Prozessor zwei ganze Eingänge und einen ganzen Ausgang. Die örtlichen Rechenregeln heben Unterschiede bei den Datenwerten mit einem Sättigungsvorgang hervor, der die Werte innerhalb eines festgelegten Intervalls hält. Diagonale Linien tragen die Daten durch die Reihenordnung nach unten und horizontale Verbindungen gestatten jedem Prozessor, seinen internen Zustand auf der Grundlage der Ausgänge seiner Nachbarn zu berechnen. Zum Berechnen eines neuen Ausgangs werden die Unterschiede der Eingänge mit einem Wert multipliziert, der in einem internen Speicher von jedem Prozessor gespeichert ist. Ein Anpassungsverhalten wird erhalten, wenn die Speicherwerte abgeändert werden, indem der Ausgang, der vorhergehend berechnet worden war, mit den Ausgängen der angrenzenden Nachbarprozessoren verglichen wird.
- Die selbstanpassende Prozessorreihenanordnung dieser Erfindung ist fähig, gewisse flexible oder veränderbare Verknüpfungen zu lernen, wobei die erlernten Verknüpfungen beim Erkennen von Eingangsklassen nützlich sind, das heißt sie ist fähig, gewisse Arten von Eingängen als in dieselbe Ausgangsklasse oder dasselbe Ausgangsfeld fallend zu verknüpfen.
- Die selbstanpassende Prozessorreihenanordnung dieser Erfindung umfaßt eine Mehrzahl identischer Verarbeitungszellen, die in parallelen, orthogonalen Spalten und Zeilen angeordnet sind, um eine zweidimensionale Matrix zu bilden. Jede Zelle in der Reihenanordnung schließt eine logische Einrichtung und einen Speicher zum Speichern eines Speicherzustandes ein. Die erste Zellenzeile in der Reihenanordnung bildet einen parallelen Eingang zu der Reihenanordnung und die letzte Zellenzeile in der Reihenanordnung bildet einen parallelen Ausgang von der Reihenanordnung. Die Zellen in der Reihenanordnung zwischen ihrer ersten und letzten Zeile sind einzeln mit zwei Zellen in einer vorhergehenden Zeile gekoppelt, die diagonal relativ zu jeder solchen Zeilenzelle positioniert sind und auch einzeln mit zwei Zellen in einer darauf folgenden Zeile gekoppelt, die diagonal relativ zu jeder solchen Zeilenzelle positioniert sind. Eine Logikeinrichtung in jeder Zelle berechnet einen neuen Wert auf der Grundlage der zwei Eingänge zu der Zelle, wobei der Wert auf der Grundlage davon, ob die Zelle programmiert ist, einer Attraktionsregel oder einer Trennungsregel zu folgen, verwendet wird, den zwischengespeicherten Wert der Zelle in Richtung von einem von zwei Zuständen zu bewegen, wobei ein Zustand ein Zustand der Verschiedenheit und der andere Zustand ein Zustand der Gleichheit ist. Der Verschiedenheitszustand kann hier als ein Zustand der Dissoziation, der Trennung oder der Ausdehnung benannt werden. Der Gleichheitszustand kann hier als ein Zustand des Verschmelzens oder des Zusammenziehens oder des Anziehens benannt werden.
- Der neue Wert, in Richtung dessen die Zelle bewegt wird, wird als ein Ausgang dargestellt, der als ein Eingang zu zwei Zellen in einer anschließenden Zeile gekoppelt wird, die diagonal relativ zu der Ausgangszelle positioniert sind. Der endgültige, parallele Ausgang von der letzten Zeile der Reihenanordnung stellt einen Zustand dar, ob der/die dargebotene(n) Eingang oder Eingängen in eine oder mehrere Klassen fällt/fallen, die für ein Anziehungsbecken oder ein Feld von Eingänge repräsentativ ist/sind. Die Erkennung von Eingängen, die in besondere Eingangsklassen oder Eingangsfelder klassifiziert sind, wird durch erlernte Verknüpfung der Eingänge erreicht, die anfänglich der Reihenanordnung dargeboten waren, wobei die erlernte Verknüpfung auf der Verwendung von zwei Algorithmen basiert, die eine Regel des Zusammenziehens bzw. eine Regel der Ausdehnung liefern, die zum Programmieren der Zellen verwendet werden.
- Die vorliegende Erfindung wird nun in beispielhafter Weise unter Bezugnahme auf die beigefügten Zeichnungen beschrieben, in denen
- Fig. 1 eine Darstellung der selbstanpassenden Prozessorreihenanordnung gemäß dieser Erfindung ist;
- Fig. 2 eine Darstellung einer einzelnen Zelle in der Reihenanordnung ist, die die von der Zelle in Übereinstimmung mit den beim Betrieb der Reihenanordnung verwendeten Regeln durchzuführende Funktionen zeigt;
- Fig. 3 ein Diagramm ist, das eine besondere Verwendung der Reihenanordnung darstellt, wobei mehr als eine selbstanpassende Prozessorreihenanordnung verwendet wird;
- Fig. 4 eine Darstellung von drei Becken oder Feldern von Eingängen A, B und C vor der Verarbeitung durch die selbstanpassende Prozessorreihenanordnung ist;
- Fig. 5 eine Darstellung von drei Becken oder Feldern von Eingänge nach der Verarbeitung durch die selbstanpassende Prozessorreihenanordnung ist, wobei ein neues Anziehungsbecken N wegen des Verschmelzens der Felder A und B gebildet worden ist;
- Fig. 6 eine graphische Darstellung ist, die den Bruchteil von drei Probeneingängen in jedem Anziehungsfeld als eine Funktion des Abstandes zwischen den Probeneingängen und den erlernten Eingängen zu der Reihenanordnung vor der Verarbeitung durch die Reihenanordnung darstellt;
- Fig. 7 eine graphische Darstellung ist, die den Bruchteil von drei Probeneingängen in jedem Anziehungsfeld als eine Funktion des Abstandes zwischen den Probeneingängen und den erlernten Eingängen zu der Reihenanordnung nach der Verarbeitung durch die Reihenanordnung darstellt, und
- Fig. 8 eine Schaltkreisdarstellung ist, die für die Reihenanordnungszellen verwendet wird.
- Es wird auf die Fig. 1 bezug genommen, die ein repräsentatives Beispiel der selbstanpassenden Prozessorreihenanordnung 10 dieser Erfindung darstellt. Die Reihenanordnung 10 umfaßt eine Mehrzahl miteinander verbundener, identischer Verarbeitungszellen, die in in parallelen Zeilen und n parallelen Spalten angeordnet sind. Bei der gezeigten Darstellung sind die Zellen 12 in einer gegebenen Zeile zwischen der ersten und der letzten Zeile 14 bzw. 16 (beispielsweise die Zwischenzeilen 15, 19, 17 oder 21) mit diagonal angeordneten Zellen in der vorhergehenden Zeile und mit diagonal positionierten Zellen in der anschließenden Zeile gekoppelt. Die Anzahl der Spalten n in der Reihenanordnung ist durch die Anzahl der Felder begrenzt, die der Prozessor behandeln muß, so daß, wenn es M Felder oder Klassen zu erkennen gibt und es nur zwei mögliche Ausgänge gibt, das heißt, ob der Ausgang der gleiche wie ein oder unterschiedlich von einem Feld ist, dann ist die obere Grenze Zn, wobei n die Anzahl der Zellen in der letzten Zeile ist. Die Begrenzung der Anzahl von Zeilen in basiert auf der Anzahl von Rechnungen, die notwendig sind, eine endgültige Bestimmung zu machen, ob ein gegebener Eingang der gleiche wie ein gegebenes oder unterschiedlich von einem gegebenen Feld ist.
- Fig. 1 stellt nur zum Zwecke der Erläuterung und Vereinfachung einen Teil der Reihenanordnung 10 dar. Die unterbrochenen Liniendarstellungen zeigen das mögliche Vorhandensein zusätzlicher Zeilen mit Zellen nach der Eingangszeile 14 von Zellen und vor der Ausgangszeile 16 von Zellen sowie als zusätzliche Spalten von Zellen an, die bei 18 und 20 bezeichnet sind.
- Anders als die Zellen in der Eingangszeile 14 besitzt jede Zelle zwei Eingänge von zwei unterschiedlichen Zellen in der vorhergehenden Zeile, wobei ein Eingang als der primäre Eingang 22 zum Zwecke der Erläuterung bezeichnet wird und der andere Eingang als der sekundäre Eingang 24 bezeichnet wird. Die Bedeutung dieser Eingangsbezeichnungen wird klarer, wenn die Beschreibung des Prozessors fortschreitet. Die Zellen 12 in der Eingangszeile 14 besitzen einen Eingang 26, der ein paralleler Eingang zu der Reihenanordnung 10 ist, der beispielsweise für eine numerische, physikalische Messung repräsentativ ist.
- Anders als die Zellen in der Ausgangszeile 16 hat jede Zelle zwei Ausgänge, die aus Gründen der Einfachheit ebenfalls als Ausgänge 22 und 24 bezeichnet werden, wobei die gleichen Bezugszeichen die zwei Eingänge von zwei unterschiedlichen Zellen in einer vorhergehenden Zellenzeile bezeichnen. Jedoch sind die Ausgänge 22 und 24 von einer einzelnen Zelle 12 immer dieselben oder identisch, wohingegen die zwei Eingänge 22 und 24 zu einer Zelle 12 nicht notwendigerweise die gleichen (und werden sehr wahrscheinlich nicht die gleichen sein) sind, da diese Eingänge von zwei unterschiedlichen Zellenausgängen getrennter Zellen in der vorhergehenden Zellenzeile sind.
- Es ist hilfreich, die Reihenanordnung 10 vom Standpunkt eines Strömungsweges durch die Zellenmatrix von dem Standpunkt des primären Eingangs 22 anzusehen. Betrachtet man Fig. 1, so ist jeder der primären Eingänge 22 mit dickerer Linie verglichen mit dem sekundären Eingang 24 gezeigt. Mit "primär" ist gemeint, daß das numerische Vorzeichen bei diesem Eingang über das numerische Vorzeichen des sekundären Eingangs dominant ist. Deshalb wird, wenn das Vorzeichen bei dem numerischen Wert bei dem primären Eingang 22 negativ und das Vorzeichen bei dem numerischen Wert bei dem sekundären Eingang 24 positiv ist, der akzeptierte Vorzeichenwert bei der eingegebenen Zelle negativ sein. Es gibt jedoch eine Ausnahme. Wenn der numerische Wert des primären Eingangs 22 null ist, dann wird das Vorzeichen des sekundären Eingangs 24 der akzeptierte Wert, der bei dem gerade gegebenen Beispiel positiv wäre.
- Hiervon ausgehend kann man die primären Eingänge 22 durch die Reihenanordnung 10 nach unten verfolgen und bestimmen, daß die primären Eingänge ebenso wie die sekundären Eingänge einen Zick-Zack-Weg durch die Reihenanordnung hindurch nehmen, den beispielsweise ein linker Eingang IL zu allen Zellen in einer gegebenen Zeile darstellt und dann ein rechter Eingang IR zu allen Zellen in der nächsten Zeile usf. Als Ergebnis schreitet ein gegebener Eingangswert durch die Zellenanordnung hindurch fort und endet an einem entsprechenden Ausgang, der zu einem ursprünglichen Eingang ausgerichtet ist, aber längs des Weges im bezug auf verarbeitete Eingänge verarbeitet worden ist, die von unmittelbar anschließenden Eingangszellen in einer vorhergehenden Zellenzeile erhalten wurden.
- Es wird nun auf die Fig. 1 und 2 bezug genommen. In Fig. 2 ist eine Zelle 12 aus der Reihenanordnung 10 dargestellt. Die Zelle 12 arbeitet auf ganzzahlige Daten, die von den zwei diagonal positionierten Nachbarzellen einer vorhergehenden Zeile von Zellen über den primären Eingang 22 oder rechten Eingang IR und den sekundären Eingang 24 oder linken Eingang IL erhalten worden sind. Jede Zelle besitzt einen internen Speicherzustand, der durch die ganze Zahl B dargestellt wird. Der Speicherzustand kann nur einen kleinen Wertesatz annehmen. Der Ausgang ONEU von der Zelle 12 basiert auf dem Eingangswerten IL und IR und dem Wert B ihres internen Zustandes, sowie dem Vorzeichen des ganzzahligen Wertes des primären Eingangs 22. Der Ausgang ONEU wird auch verwendet, um den neuen, internen Speicherwert für B zu bestimmen.
- Der Zelle 12 werden auch vier Einstellbedingungen zugeführt, wobei, wenn irgendeine der Bedingungen wahr ist, eine gewisse Funktion durchgeführt wird. Diese Bedingungseingänge werden über Eingangsleitungen 30 allen Zellen 12 in der Reihenanordnung 10 zugeführt. Die Leitung 30A verlangt, wenn ihre Bedingung wahr ist, daß der Wert B einer Zelle unverändert bleibt. Die Leitung 30B verlangt, wenn ihre Bedingung wahr ist, daß der Wert B einer Zelle auf null gesetzt wird. Die Leitung 30C verlangt, wenn ihre Bedingung wahr ist, daß eine Zelle der Zusammenziehregel folgt, die unten erläutert wird. Die Leitung 30D verlangt, wenn ihre Bedingung wahr ist, daß eine Zelle der Ausdehnungsregel folgt, die auch unten erläutert wird.
- Zu jedem Zeitschritt K erhält jede Zelle Datenwerte von ihren diagonalen Nachbarn als ganzzahlige Eingänge IL und IR und berechnet einen Ausgang O in der folgenden Weise:
- 0 = max(Smin, min(Smax, s(IL, IR) · ( IR + IL ) + D)) (1)
- In Gleichung (1) stellen die ganzzahligen Werte Smin und Smax die ganzzahlige Sättigungsgrenzzahl dar, das heißt die maximale und minimale Grenze, wobei alle durch die Reihenanordnung verarbeiteten Datenwerte beschränkt werden, damit sie zwischen diesen Grenzen oder in einem besonderen Intervall sind, wodurch eine nichtlineare Berechnung geschaffen wird. Diese Grenzen schaffen einen Grad von Zuverlässigkeit für die Reihenanordnung und entfernen unnötiges weiteres Verarbeiten. Smin kann gleich -Smax gesetzt werden, und der interne Zustand B jeder Zelle wird durch eine ganze Zahl innerhalb gegebener Grenzen dargestellt. Der Wert s ist der zu nehmende Vorzeichenwert. In der Gleichung (1) stellt s(IL, IR) die Vorzeichenfunktion dar, so daß ein Satz abwechselnder Zeilen, wie die Zeilen 15 und 17 in Fig. 1, das Vorzeichen des Eingangs IR annehmen, wohingegen der andere Satz abwechselnder Zeilen, wie die Zeilen 19 und 21, das Vorzeichen des Eingangs IL annehmen. In jedem Fall wird das Vorzeichen des primären Eingangs 22 der Zelle genommen, es sei denn, der ganzzahlige Wert ist null, in welchem Fall das Vorzeichen des sekundären Eingangs 24 genommen wird.
- Die absoluten Werte der Eingänge IR und IL werden zusammenaddiert und mit dem ausgewählten Vorzeichen s multipliziert und dieser Wert wird addiert, um den Speicherzustand B darzustellen. Im wesentlichen bezieht sich die Gleichung (1) auf das Abtasten der Größen der Eingänge IL und IR zu einer gegebenen Zelle, das Auswählen des geeigneten Vorzeichens s, das Addieren des ganzzahligen Wertes B und das Begrenzen des Ergebnisses auf das festgelegte Intervall Smin bis Smax Irgendwelche Ausgangswerte, die gleich den Intervallgrenzen sind, werden "gesättigt" genannt.
- Die vorstehende Beschreibung in bezug auf die Gleichung (1) beinhaltet, daß der Zustand der ganzen Zahl B der gleiche bleibt, das heißt der Wert B ist eingefroren. Die folgende Erklärung behandelt Regeln zum anderen Verändern von B als B auf null zu setzen. Es gibt zwei Regeln, eine Zusammenziehregel und eine Trennungsregel. Die Zusammenziehregel wird auch als Regel der Anziehung oder Verschmelzung und die Trennungsregel wird als Regel der Ausdehnung oder Unterbrechung bezeichnet.
- Auf jeden Fall ist die Dynamik der Regeln zum Verschmelzen und Trennen möglicher Punkte oder Attraktoren in einem Anziehungsbecken oder Antwortfeld, an dem gegenwärtigen Ausgang ONEU einer Zelle und dem vorhergehenden Ausgang OVOR einer Zelle zu wirken und den Wert von B abzuändern. Wenn eine örtliche Zelle zum Rechnen gemäß der Zusammenziehregel eingestellt ist, wird der folgende Algorithmus benutzt:
- Wenn wenigstens ONEU oder OVOR nicht gesättigt ist und ONEU mal OVOR kleiner als null ist, dann ändere B um den Wert eins, wobei das Vorzeichen der Änderung durch das Vorzeichen von ONEU oder von OVOR gegeben wird, welcher Ausgang auch immer die größere Größe hat; sonst bleibt der Wert von B unverändert.
- Man beachte, daß diese Regel zwei Eingänge dahin treibt, daß sie denselben Ausgang haben, indem der selbstanpassende Vorgang in örtlichen Zellen eingestellt wird, dieser Zusammenziehregel zu folgen. Eine einzelne Anwendung dieser Regel ändert den internen Zustand B der Zelle um ± 1.
- Wenn eine örtliche Zelle zum Rechnen gemäß der Trennregel eingestellt wird, wird der folgende Algorithmus benutzt:
- Wenn wenigstens ONEU oder OVOR nicht gesättigt ist und ONEU mal OVOR größer als null ist, dann ändere B um eins, wobei dem Vorzeichen der Änderung das Vorzeichen gegeben wird, das zu dem Ausgang von ONEU oder von OVOR entgegengesetzt ist; sonst soll der Wert von B unverändert bleiben.
- Man beachte, daß diese Regel zwei Eingänge dahin treibt, daß sie getrennte Ausgänge haben, indem der selbstanpassende Vorgang in örtlichen Zelle eingestellt wird, dieser Trennregel zu folgen. Eine einzelne Anwendung dieser Regel ändert den internen Zustand B der Zelle um +1.
- Die folgenden Beispiele werden beim Verständnis der Arbeitsweise dieser zwei Regeln der örtlichen Zelle helfen, wobei die Reihenanordnung 10 Verknüpfungen in bezug auf den Zustand der Gleichheit oder Verschiedenheit lernen soll. Im Falle der Zusammenziehregel sei angenommen, daß OVOR gleich 8 ist und ONEU gleich -9 ist. Es sei auch angenommen, daß Smax gleich Smin nämlich 15 ist. Mit der Zusammenziehregel sollen die Werte am Ausgang die gleichen sein. Wenn sie die gleichen sein sollen, dann wird der Wert von B in Intervallen von einem Schritt geändert, bis der null nähere Ausgang null erreicht. Die sich ergebende Wirkung besteht darin, daß beide Werte für ONEU und OVOR nicht länger entgegengesetzte Vorzeichen haben. Bei dem vorliegenden Beispiel würde der Wert von B abnehmen, wobei er versucht, in eine Position zu folgen, wo OVOR und ONEU keine positiven Werte wären, an welchem Punkt B gleich -8 wäre.
- Im Falle der Trennregel sei angenommen, daß ONEU gleich 3 und OVOR gleich 5 ist. Wiederum sei Smax = -Smin = 15. Unter der Trennregel sollen die Werte an dem Reihenanordnungsausgang nicht die gleichen sein. Wenn sie nicht die gleichen sein sollen, das heißt, wenn sie unterschiedlich sein sollen, dann wird der Wert von B in Intervallen von einem Schritt geändert, bis die Ausgänge nicht länger das gleiche Vorzeichen haben.
- Eine Überprüfung der Zusammenziehregel führt zu der interessanten Erscheinung, daß ihr Zusammenziehmechanismus erlaubt, daß viele unterschiedliche Eingänge zu der Reihenanordnung 10 auf denselben Ausgang abgebildet werden können. In der Sprache dynamischer Systeme entspricht dies dem Auftreten eines festen Punktes in den Phasenraum des Systems. Das Zusammenziehen von Volumina in dem Phasenraum macht diese festen Punkte anziehend in dem Sinn, daß sich Störungen schnell zu den ursprünglichen Werten zurückentspannen.
- Wie es in Fig. 4 gezeigt ist, sind Eingänge 42 in der Ebene 40 durch eine Mehrzahl von Punkten dargestellt. Sätze dieser Eingänge können in gewissen Anziehungsfeldern oder Anziehungsbecken gefunden oder klassifiziert werden. In Fig. 4 sind die Felder A, B und C gezeigt. Die Sätze von Eingängen in jedem dieser Felder legen das Anziehungsbecken für einen gegebenen Ausgang fest, das heißt, die Eingänge werden auf einen besonderen Ausgang abgebildet, den das Anziehungsbecken festlegt. Somit wird der Satz von Eingängen 42A in dem Feld A auf den Ausgang X abgebildet, der Satz von Eingängen 42B in dem Feld B wird auf den Ausgang Y abgebildet und der Satz von Eingängen 42C in dem Feld C wird auf den Ausgang Z abgebildet. Die Zusammenziehregel wird beispielsweise die Eingänge 42A in dem Becken A alle zu einem Ausgang X zwingen. Mögliche Eingänge außerhalb des Feldes A werden der Trennregel unterworfen.
- Das Anziehungsbecken kann dynamisch abgeändert werden, indem die örtlichen Zellenregeln verwendet werden, um einen besonderen Satz von Eingängen 42 einzuschließen oder auszuschließen. Die Vorgänge des Verschmelzens und der Trennung werden erreicht, indem der interne Zustand jeder Rechenzelle unter Verwendung der selbstanpassenden örtlichen Zellenregeln geändert wird, die den Gesamtausdehnungs- oder Gesamtzusammenziehprozeß nachahmen, von dem erwünscht ist, daß er erreicht wird. Daß eine solche örtliche Berechnung zu einem Gesamtverhalten dieser Art führt, ist in Anbetracht der Nichtlinearität des Systems überraschend.
- In Fig. 5 ist das Gesamtausdehnungsverhalten für die Felder A und B in Fig. 4 beispielhaft gezeigt. Wenn der Zusammenziehungs- oder Verschmelzungszustand als wahr eingestellt wird, bilden die Eingangssätze, die der Reihenanordnung für die Felder A und B zugeführt werden, ein neues Anziehungsbecken oder Anziehungsfeld N, das auf einen einzigen Ausgang N abgebildet wird.
- Die unteren Tabellen I und II zeigen die Ergebnisse eines Versuches, der bei einer Prozessorreihenanordnung 10 mit zehn Zeilen mal sechs Spalten durchgeführt worden ist, die den vorhergehend erläuterten örtlichen Zellenregeln der Verschmelzung und Trennung gehorchte. Diese Tabellen stellen die Lernfähigkeit der Reihenanordnung 10 dar, die unter den örtlichen Zellenregeln betrieben wird, um in geeigneter Weise den B-Wert der Zellen einzustellen. Dies ist die Lernphase des Betriebs der Reihenanordnung. Die Ergebnisse in Tabelle I wurden erhalten, indem die Eingänge durch die Reihenanordnung 10 geschickt wurden, bis ein Zusammenfallen zwischen den Ausgängen erhalten worden war. Die Tabelle II zeigt die erhaltenen Ergebnisse, wobei Eingänge, die anfangs in demselben Becken oder Feld waren, nachfolgend getrennt wurden. Verschmelzung der Eingänge Eingang Ursprünglicher Ausgang Endgültiger Ausgang Tabelle I Trennung der Eingänge Eingang Ursprünglicher Ausgang Endgültiger Ausgang
- Bezugnehmend auf die Tabelle I stellen die drei Eingänge drei unterschiedliche Proben dar. Beispielsweise können sie physikalische Parameter darstellen, wie drei Proben eines Sprachmusters. Sie sind alle nicht nur mit dem numerischen Wert sondern auch mit dem Vorzeichen ganz unterschiedlich. Die ganze Zahl B in den Reihenanordnungszellen wird auf null gesetzt und die Zusammenziehregel wird auf wahr eingestellt. Der ursprüngliche Ausgang in Tabelle I zeigt, daß das Zeichen der Eingänge nach einem Schritt durch die Reihenanordnung das gleiche blieb. Es waren vier Schritte durch die Reihenanordnung erforderlich, um den endgültigen gezeigten Ausgang zu erzeugen, der ein vollständige Verschmelzen darstellt, das heißt alle parallelen positiven Ausgänge.
- In Tabelle II stellen die drei gezeigten Eingänge drei unterschiedliche Proben dar. Hier besitzen die Proben alle das gleiche Vorzeichen, haben aber einen unterschiedlichen numerischen Wert. Die ganze Zahl B in den Reihenanordnungszellen wird auf null gesetzt und die Ausdehnungsregel wird als wahr eingestellt. Der ursprüngliche Ausgang in Tabelle II zeigt, daß das Zeichen der Eingänge das gleiche nach einem Schritt durch die Reihenanordnung blieb. Es waren drei Schritte erforderlich, um die Trennung bei dem endgültigen Ausgang zu liefern, worin jeder Eingang als ein unterschiedlicher Ausgang klassifiziert wurde, einer mit nur negativen Vorzeichen, ein anderer mit drei negativen und drei positiven Vorzeichen hintereinander und der dritte mit drei positiven und drei negativen Vorzeichen hintereinander.
- Bei den Beispielen dieser Tabellen wurden die numerischen Werte aus Gründen der Darstellung nicht gezeigt.
- Als eine Fortsetzung des Versuchs wurde das Vorgehen bei den obigen Proben der Tabellen I und II umgekehrt. Die endgültigen Ausgänge der Tabelle I wurden der Ausdehnungsregel unterworfen und es waren 13 Schritte erforderlich, diese Verschmelzungseingänge wieder auszudehnen. Im Falle der endgültigen Ausgänge der Tabelle II wurden 5 Schritte benötigt, um diese getrennten Eingänge wieder zusammenzuziehen.
- Nachdem das selbstanpassende Verhalten der örtlichen Regeln des Zusammenziehens und Ausdehnens dargestellt worden ist, kann eine Untersuchung des Verhaltens der Eingänge nahe einem Satz von Eingängen in einem Feld während des Verschmelzens und des Trennens der dieser Reihenanordnung dargebotenen Eingänge durchgeführt werden. Dies läuft darauf hinaus, zu bestimmen, wie sich die Größe und Form der Anziehungsbecken oder Eingangsfelder ändern, wenn konditionierte Reflexe in einer anpassenden Umgebung erhalten werden. Dies ist von Bedeutung, um festzustellen, in welchem Ausmaß dieser Reihenanordnung von eingangs Verallgemeinerungen und dem Komplementären, der Trennung, fähig ist.
- Um mit dieser Analyse fortzufahren, wurden die folgenden zwei Techniken vor und nach dem Verknüpfen gegebener Eingängen verwendet: 1) Bestimmen der Verteilung der Größen der Anziehungsbecken, indem Zufallseingänge durch die Reihenanordnung hindurchgeschickt wurde und gezählt wurden, wieviele jeden beobachteten Ausgang erzeugten, und 2) Bestimmen der Größe der Anziehungsbecken, indem jeder Eingang genommen wird und der Bruchteil von nahe beigelegenen Eingängen, die sich in demselben Anziehungsbecken befinden, als eine Funktion des Abstandes von dem ursprünglichen Eingang gemessen wurde. Da der Satz von Eingängen ein ganzzahliges Gitter bildet, wurden Abstände zwischen Eingängen gemessen, wobei eine Straßenkartenmetrik verwendet wurde, bei der der Abstand zwischen zwei Punkten gleich der Summe der Größen der Unterschiede bei jeder Komponente gesetzt wird.
- Fig. 6 zeigt den Bruchteil von drei Probeneingängen, die sich in jedem Anziehungsbecken befinden, als eine Funktion des Abstandes zwischen dem Probeneingang und dem gelernten Eingang in der ursprünglichen Zellenreihenanordnung, wobei die ganze Zahl B der Zelle anfangs auf null gesetzt wurde. Fig. 7 zeigt den Bruchteil derselben drei Probeneingänge, die sich in jedem Anziehungsbecken befinden, als eine Funktion des Abstandes zwischen dem Probeneingang und dem gelernten Eingang nach dem Verschmelzen. Wie es in den Fig. 6 und 7 dargestellt ist, erzeugt der Verknüpfungsvorgang eine breite Ansammlung von Wolken von Eingängen, die die ursprünglichen Eingänge umgehen. Dies beinhaltet, daß, wenn zwei besondere Verhaltensantworten verknüpft werden, derselbe Ausgang hervorgelockt werden kann, indem mit Eingängen gearbeitet wird, die nahe den ursprünglichen sind. Ähnliche Ergebnisse wurden auch bei der entgegengesetzten Grenze des Versuches beobachtet, Eingänge zu trennen, die ursprünglich dieselben Ausgänge erzeugten.
- Obgleich die Anziehungsbecken anfangs von die gleicher Größe sind, wuchsen nach der Anpassung die Felder für die gelernten Eingänge auf Kosten von anderen. Insbesondere gibt es im Falle einer Reihenanordnung mit 6 Spalten und 10 Zeilen 26 Felder, und jedes besitzt 1/64 oder 1,6% der Eingänge in seinem Becken. Nach dem Verschmelzungsversuch, der oben in bezug auf die Fig. 7 beschrieben wurde, schloß das Feld, das drei zusammengezogene Eingänge enthielt, nahezu 4% der Eingänge in seinem Anziehungsbecken ein. In ähnlicher Weise enthielt bei dem anderen Versuch, bei dem die drei Eingänge getrennt oder geschieden wurden, die endgültigen Anziehungsbecken 4%, 2% bzw. 2% der Eingänge.
- Eine interessante Folge dieser Untersuchung ist die Korrelation zwischen der Fähigkeit, schnell einen Satz von gegebenen Eingängen zu verknüpfen, und dem anfänglichen Zustand der Reihenanordnung. Allgemein war es beim Verschmelzen von zwei Anziehungsbecken, wie es in Fig. 5 dargestellt ist, wenn mit Zellen begonnen wurde, die alle den gleichen Zustand hatten, das heißt einem gleichförmigen Zustand, viel einfacher, indem es weniger Schritte durch die Reihenanordnung als beim Beginnen mit einer Reihenanordnung nahm, die bereits an einen besonderen Satz von Eingängen angepaßt worden war. Dies wurde besonders augenfällig bei Versuchen, wo die anfängliche Einstellung zwei getrennte Eingänge und eine gleichförmige Reihenanordnung, bei der B auf null gesetzt war, umfaßte, wobei die Anwendung der Zusammenziehregel, um sie zusammen zu verknüpfen, folgte und dann die Ausdehnungsregel folgte, um sie zu trennen. Die benötigte Zeit, sie zu trennen, war viel länger als die Zeit, die es brauchte sie, in dasselbe Anziehungsbecken einzutauchen. In diesem Zusammenhang betrachte man die ähnlichen Ergebnisse für die Eingänge der Tabelle I.
- Fig. 3 zeigt eine Anwendung der Reihenanordnung 10. In Fig. 3 umfaßt das System 50 zwei getrennte Zellenreihenanordnungen 10A und 10B dieser Erfindung. Diese Architektur schafft eine Mustererkennung breiter Kategorien und schmaler Kategorien in bezug auf zu untersuchende Eingangsdaten 26. Indem die Parameter in den zwei Reihenanordnungen 10A und 10B auf unterschiedliche Werte eingestellt werden, können die Größen der Anziehungsbecken in jeder Reihenanordnung gesteuert werden, daß sie unterschiedlich sind. Beispielsweise könnte die Reihenanordnung 10A so eingestellt sein, daß sie große Becken mit vielen Eingängen aufweist, die denselben Ausgang erzeugen. Wenn die andere Reihenanordnung 10B eingestellt wird, um schmale Anziehungsbecken für die genau gleichen Eingänge zu erzeugen, würde die Reihenanordnung 10B zwischen Eingängen unterscheiden, die die Reihenanordnung 10A als die gleichen klassifizieren würde. Somit kann, indem der Ausgang 52 der Reihenanordnung 10A zuerst und dann als nächstes der Ausgang 54 der Reihenanordnung 10B gelesen wird, ein Ausgangsvergleich 56 eine Auswahl einer breiten Kategorie oder Klassifizierung (beispielsweise Tier) gegenüber einem Ausgang 52 liefern, der dann genauer analysiert werden kann, um einen besonderen Gesichtspunkt der breiten Klassifizierung (beispielsweise Katze) gegen den Ausgang 54 zu beschreiben. Das System 50 ermöglicht wirkungsvolles Suchen in auf Daten basierenden Strukturen oder Umfeldern.
- Fig. 8 ist eine schematische Darstellung des Schaltkreises für eine Reihenanordnungszelle 12. Bedingungswerte zum Zellenbetrieb werden über den Multiplexer 60 erhalten. Diese vier Bedingungen wurden vorhergehend erklärt und umfassen die Bedingung: Zurücksetzen von B auf null auf der Leitung 62, - die Bedingung: Einstellen der Zelle auf wahr zum Betrieb unter der Ausdehnungsregel auf Leitung 64, - die Bedingung: Einstellen der Zelle auf wahr für den Betrieb unter der Zusammenziehregel auf Leitung 66, und - die Bedingung: Einfrieren des Wertes B. Die Leitung 62 ist mit dem Register 70 verbunden, das den Zellenwert für die ganze Zahl B aufrecht erhält. Der Ausgang des Registers B ist über die Leitung 72 mit dem nichtlinearen Prozessor 74 verbunden, der die Logik enthält, um auf der Leitung 76 den Ausgang ONEU zu liefern und den Wert B über die Leitung 78 in dem Register 70 einzufrieren. Der Schaltkreis 74 besitzt vier Eingänge: Eingang IL, Eingang IR, der Wert B und der Eingang 80, der der ODER-verknüpfte Eingangswert des wahren Zustandes für die Leitungen 64, 66 der örtlichen Regel ist und des Zustandswertes des EINFRIEREN von B. Der Prozessor 74 führt die Gleichung (1) aus und umfaßt deshalb beispielsweise einen Summierer für die Eingänge IL und IR, dessem Additionsergebnis das richtige Vorzeichen s(IL, IR), wie es bezeichnet ist, über den Eingang 75 gegeben wird. Der Eingang 75 hängt von der besonderen Zeile der betroffenen Zellen ab, die bestimmt sind, daß sie das numerische Vorzeichen als einen primären Eingang von entweder IL oder IR haben. Der auf addierte Wert mit dem geeigneten Vorzeichen wird dann über einen zweiten Summierer zu dem gegenwärtigen, internen Zustand B addiert.
- Der Ausgang 76 (der mit den Ausgängen 22 und 24 gleichlautend ist) wird auch zu dem Register 86 über die Leitung 84 zurückgeführt, das den Wert des vorhergehenden Ausgangs OVOR zurückhält. Für jeden neuen Ausgang ONEU wird der Wert OVOR in dem Register 86 auf diesen neuen Wert gesetzt. Der Ausgang OVOR des Registers 86 ist jeweils über eine Leitung 88 als ein Eingang mit der Zusammenziehregel-Logik 90 und der Ausdehnungsregel-Logik 92 verbunden. Auch wird die Leitung 84, die den neuen Ausgangswert ONEU führt, als ein Eingang der Zusammenziehregel-Logik 90 und der Ausdehnungsregel- Logik 92 zugeführt. Der letzte von drei Eingängen zur Logik 90 bzw. 92 sind die wahr-Leitungen 66 und 64, um diese Kreise zu befähigen, gemäß ihrer jeweiligen örtlichen Regel zu funktionieren, aber nicht gleichzeitig zu arbeiten. Die logischen Kreise 90 und 92 können abwechselnd oder in serieller Folge oder in Folge betrieben werden.
- Der Ausgang der Logikkreise 90 und 92 auf der Leitung 94 ist ein dritter Eingang zu dem Register 70 und wird ein neuer Wert für die ganze Zahl B sein, der in dem Register 70 gespeichert werden soll, es sei denn die Leitung 78 ist wahr, in weichem Fall der Wert B unverändert bleiben wird und der Wert auf der Leitung 94 nicht berücksichtigt wird.
- Wenn beispielsweise Smax = -Smin = 15 ist, können die binären Eingangswerte für die Eingänge IL und IR sowie die Register 70 und 85 mit fünf Bit dargestellt werden, vier Bit zum Darstellen des numerischen Wertes und ein Bit, um das Vorzeichen des Wertes darzustellen.
- Es sei angenommen, daß beim Betrieb die Zusammenziehregel auf die Zelle 12 angewendet wird, die Leitung 66 wird wahr sein, wodurch die Zusammenziehregel-Logik 90 freigegeben wird. Die Leitung 64 wird nicht wahr sein, wodurch die Ausdehnungsregel-Logik 92 unwirksam gemacht wird. Die Eingänge IL und IR, die auf den Leitungen 22 und 24 zugeführt werden, sind zum Zwecke der Lernverknüpfung für dasselbe Anziehungsbecken. Somit wird der Wert von B in dem Register 70 über die Leitung 62 auf null gesetzt. Der vorhergehende Ausgang OVOR wird über die Leitung 88 auf die Zusammenziehregel-Logik 90 eingestellt. Der Ausgang ONEU, der gemäß der Gleichung (1) erzeugt wird, wird in dem Prozessor 74 berechnet und auf der Ausgangsleitung 76 zuverbundenen Zellen geschickt. Auch wird ONEU als ein Eingang über die Leitung 84 zu der Zusammenziehregel-Logik 90 geführt. Die Zusammenziehregel-Logik 90 wird einen neuen Wert von B gemäß der Zusammenziehregel berechnen und über die Leitung 94 BNEU zum Speichern in dem Register 70 bereitstellen. Bei dem nächsten sequentiellen Durchgang der Eingänge IL und IR wird die Berechnung des Ausgangs ONEU erneut beim Kreis 74 unter Verwendung des neuen Wertes für B auftreten.
- Beim Berechnen von ONEU bestimmt der Eingang 75 an dem Prozessor 74, ob das Vorzeichen von ONEU das von IL oder von IR in Abhängigkeit davon sein sollte, welches der beiden der primäre Eingang ist. Wenn jedoch der Wert von B auf der Leitung 72 null ist, wird das von dem Prozessor 74 genommene Vorzeichen dasjenige des sekundären Eingangs sein.
- Wenn verschiedene Probeneingänge entlang des obenbeschriebenen Verfahrens iteriert worden sind, wird jede Zelle 12 in der Reihenanordnung 10 einen besonderen ganzzahligen Wert B in ihrem Register 70 erreicht haben. Zu diesem Zeitpunkt wird, wenn die Berechnung anderer Eingänge erwünscht ist, um zu bestimmen, ob sie innerhalb oder außerhalb des betrachteten Feldes von Eingängen oder des Anziehungsbeckens fallen, das obenbeschriebene Verfahren mit der Ausnahme wiederholt, daß der ganzzahlige Wert von B eingefroren wird und die Leitungen 68, 80 und die Leitung 78 über den Prozessor 74 wahr sind. Die Funktionen des Zusammenziehens und Ausdehnens werden beendet und der Prozessor 74 einer jeden Zelle wird Iterationen an parallelen Eingängen durchführen und bestimmen, ob jeder gegebene Eingang innerhalb oder außerhalb eines "erlernten" Anziehungsbeckens fällt. Dies wird ohne weiteres durchgeführt, indem die endgültigen, parallelen Ausgänge, die von der Lernerfahrung der Reihenanordnung bekannt sind, verglichen werden und sie mit den endgültigen, parallelen Ausgängen für die in Frage stehenden Eingänge verglichen werden, um zu bestimmen, ob sie die gleichen sind und deshalb innerhalb des vorhergehend gebildeten Anziehungsbeckens fallen.
- Das Verfahren für das anfängliche Lernen der Reihenanordnung zur Ausführung der Ausdehnungsregel über die Logik 92 ist das gleiche, wie das das für die Zusammenziehregel oben erläutert wurde, mit der Ausnahme, daß die Leitung 62 wahr ist, wodurch die Ausdehnungsregel-Logik 92 freigegeben wird, und die Leitung 66 nicht wahr ist, wodurch die Zusammenziehregel-Logik 90 unwirksam gemacht wird.
Claims (5)
1. Eine selbstanpassende
Prozessor-Computer-Reihenanordnung umfassend eine Mehrzahl identischer Zellen (12),
die in Zeilen und Spalten angeordnet sind, um eine
zweidimensionale Matrix zu bilden, wobei jede Zelle
eine logische Einrichtung zum Berechnen von Datenwerten
und ein erstes Register (70) zum Speichern eines
Speicherzustandes B hat, wobei die erste Zeile (14) von
Zellen einen parallelen Eingang zu der Reihenanordnung
bildet, jede Zelle (mit Ausnahme der Endzellen) in den
Zeilen zwischen der ersten und der letzten Zeile
Eingänge hat, von denen jeder einen Datenwert darstellt,
der von den zwei Zellen in der vorhergehenden Zeile
gekoppelt ist, die diagonal in bezug auf die gegebene
Zelle positioniert sind, die Logikeinrichtung in jeder
Zelle befähigt ist, einen neuen Datenwert ONEU auf der
Grundlage der Eingangswerte IL, IR und seines
gegenwärtigen Speicherzustandes B zu berechnen, indem die Regel
beobachtet wird:
ONEU = max(Smin, min(Smax, s( IR , IR )·( IR + IL )+B)),
worin Smin und Smax die Daten einschränken, daß sie in
einem besonderen Intervall liegen, wodurch eine
nichtlineare Berechnung geschaffen wird, und jeder
Ausgangswert gleich diesen Enden als "gesättigt" bezeichnet
wird;
s der zu nehmende Vorzeichenwert ist und s(IL, IR) die
Vorzeichenfunktion darstellt, so daß für die Zellen in
geradzahligen Zeilen der Reihenanordnung:
s(IL, IR) = s(IR) wenn IL = 0 und = s(IL) sonst ist, und
für die Zellen in den ungeradzahligen Zeilen der
Reihenanordnung:
s(IL, IR) = s(IL) wenn IR = 0, und = s(IR) sonst,
wodurch unter der Steuerung von Steuersignalen (ZURÜCK-
SETZEN, AUSDEHNEN, ZUSAMMENZIEHEN) mittels der ZUSAM-
MENZIEH-Logik 90, der AUSDEHN-Logik 92 und eines
zweiten Registers (86) für den vorhergehenden Ausgang OVOR
und den Ausgang ONEU des Prozessors (74), des
Speicherzustandes B in jedem Register (70) ist entweder:
a) auf 0 zurückgesetzt; oder
b) durch den Einheitswert geändert, wenn wenigstens ONEU
oder OVOR nicht gesättigt ist und ONEU mal OVOR kleiner
als null ist, wobei das Vorzeichen der Änderung durch
das Vorzeichen von ONEU oder von OVOR gegeben wird,
welcher Ausgang auch immer die größere Größe aufweist,
wobei sonst der Wert von B unverändert bleiben soll,
die Zusammenziehregel, durch die viele unterschiedliche
Eingänge zu der Reihenanordnung auf denselben Ausgang
abgebildet werden, oder
c) um den Einheitswert geändert wird, wenn wenigstens
ONEU oder OVOR nicht gesättigt ist und ONEU mal OVOR
größer als null ist, wobei das Vorzeichen der Änderung dem
von ONEU oder von OVOR entgegengesetzt ist, wobei sonst
der Wert B unverändert bleiben soll, die
Trennungsregel.
2. Die selbstanpassende Prozessorreihenanordnung des
Anspruches 1, die eine Einrichtung zum Unterbinden einer
weiteren Änderung der Zellenspeicherzustände
einschließt, wodurch das Einführen eines nachfolgenden,
parallelen Eingangs in die Reihenanordnung von dieser
einen parallelen Ausgang liefert, der anzeigt, ob er
innerhalb oder außerhalb einer Klasse von Eingängen auf
der Grundlage der eingestellten Speicherzustände der
Zellen fällt.
3. Die selbstanpassende Prozessorreihenanordnung des
Anspruches
1 oder 2, bei der jede Zelle ferner eine
Einrichtung zum Unterbinden einer Änderung bei dem Wert
des Speicherzustandes der Zelle einschließt, wenn ihr
Wert einen vorbestimmten Wert erreicht hat.
4. Die selbstanpassende Prozessorreihenanordnung nach
einem beliebigen vorhergehenden Anspruch, bei der die
Zustände ein Zustand der Verschiedenheit und ein Zustand
der Gleichheit sind.
5. Ein Verfahren zum parallelen Verarbeiten einer Mehrzahl
von Eingangssignalen in einer selbstanpassenden
Prozessor-Computer-Reihenanordnung umfassend eine Mehrzahl
identischer Zellen (12), die in Zeilen und Spalten
angeordnet sind, um eine zweidimensionale Matrix zu
bilden, wobei jede Zelle eine logische Einrichtung zum
Berechnen von Datenwerten und ein erstes Register (70)
zum Speichern eines Speicherzustandes B hat, wobei die
erste Zeile (14) von Zellen einen parallelen Eingang zu
der Reihenanordnung bildet, jede Zelle (mit Ausnahme
der Endzellen) in den Zeilen zwischen der ersten und
der letzten Zeile Eingänge hat, von denen jeder einen
Datenwert darstellt, der von den zwei Zellen in der
vorhergehenden Zeile gekoppelt ist, die diagonal in
bezug auf die gegebene Zelle positioniert sind, wobei
das Verfahren den Schritt des Berechnens eines neuen
Datenwertes ONEU in der Logikeinrichtung in jeder Zelle
auf der Grundlage der Eingangswerte IL, IR und seines
gegenwärtigen Speicherzustandes B zu berechnen, indem
die Regel beobachtet wird:
ONEU = max(Smin, min(Smax, s(IL, IR)·( IR + IL )+B)),
worin Smin und Smax die Daten einschränken, daß sie in
einem besonderen Intervall liegen, wodurch eine
nichtlineare Berechnung geschaffen wird, und jeder
Ausgangswert gleich diesen Enden als "gesättigt" bezeichnet
wird;
und den Schritt umfaßt, den Vorzeichenwert s zu wählen,
wenn s(IL, IR) die Vorzeichenfunktion darstellt, so daß
für die Zellen in geradzahligen Zeilen der
Reihenanordnung:
s(IL, IR) = s(IR) wenn IL = 0 und = s(IL) sonst ist, und
für die Zellen in den ungeradzahligen Zeilen der
Reihenanordnung:
s(IL, IR) = s(IL) wenn IR = 0, und = s(IR) sonst ist, und
den Schritt umfaßt, den Speicherzustand B in das erste
Register (70) unter der Steuerung von Steuersignalen
(ZURÜCKSETZEN, AUSDEHNEN, ZUSAMMENZIEHEN) mittels der
ZUSAMMENZIEH-Logik 90, der AUSDEHN-Logik 92 und eines
zweiten Registers (86) für den vorhergehenden Ausgang
OVOR und den Ausgang ONEU des Prozessors (74) zu laden,
so daß der Speicherzustand ist entweder:
a) auf 0 zurücksetzt; oder
b) durch den Einheitswert geändert, wenn wenigstens ONEU
oder OVOR nicht gesättigt ist und ONEU mal OVOR kleiner
als null ist, wobei das Vorzeichen der Änderung durch
das Vorzeichen von ONEU oder von OVOR gegeben wird,
welcher Ausgang auch immer die größere Größe aufweist,
wobei sonst der Wert von B unverändert bleiben soll, vgl.
die Zusammenziehregel, durch die viele unterschiedliche
Eingänge zu der Reihenanordnung auf denselben Ausgang
abgebildet werden, oder
c) um den Einheitswert geändert wird, wenn wenigstens
ONEU oder OVOR nicht gesättigt ist und ONEU mal OVOR
größer als null ist, wobei das Vorzeichen der Änderung dem
von ONEU oder von OVOR entgegengesetzt ist, wobei sonst
der Wert B unverändert bleiben soll, vgl. die
Trennungsregel.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/711,930 US4835680A (en) | 1985-03-15 | 1985-03-15 | Adaptive processor array capable of learning variable associations useful in recognizing classes of inputs |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3689049D1 DE3689049D1 (de) | 1993-10-28 |
DE3689049T2 true DE3689049T2 (de) | 1994-05-05 |
Family
ID=24860089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE86301652T Expired - Fee Related DE3689049T2 (de) | 1985-03-15 | 1986-03-07 | Selbstanpassender Prozessor. |
Country Status (4)
Country | Link |
---|---|
US (1) | US4835680A (de) |
EP (1) | EP0195569B1 (de) |
JP (1) | JPS61213964A (de) |
DE (1) | DE3689049T2 (de) |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5067107A (en) * | 1988-08-05 | 1991-11-19 | Hewlett-Packard Company | Continuous computer performance measurement tool that reduces operating system produced performance data for logging into global, process, and workload files |
US5179714A (en) * | 1988-10-07 | 1993-01-12 | Martin Marietta Corporation | Parallel bit serial data processor |
IT1233215B (it) * | 1989-04-21 | 1992-03-20 | Ist Trentino Di Cultura | Rete elaborativa a nodi, procedimento e macchine per la configurazionedella stessa e relativi impieghi |
GB2247328A (en) * | 1990-08-08 | 1992-02-26 | Philips Electronic Associated | Data processing system |
US5683608A (en) * | 1991-04-05 | 1997-11-04 | The Boeing Company | Ceramic die for induction heating work cells |
GB2273191B (en) * | 1992-10-23 | 1996-01-03 | Port Of Singapore Authority | A container code verification apparatus |
EP0612035B1 (de) * | 1993-02-19 | 2002-01-30 | International Business Machines Corporation | Neuronales Netz zum Vergleich von Merkmalen von Bildmustern |
FR2711436B1 (fr) * | 1993-10-18 | 1996-01-05 | France Telecom | Procédé perfectionné de fonctionnement en parallèle de plusieurs unités de calcul, notamment en traitement d'images, et architecture correspondante. |
EP2500842A1 (de) * | 2001-03-09 | 2012-09-19 | Shraga Rottem | Verfahren und System zur Verbesserung der Qualität von medizinischen Bildern |
US7707575B2 (en) * | 2004-09-20 | 2010-04-27 | Hewlett-Packard Development Company, L.P. | System and method for selecting a portfolio of resources in a heterogeneous data center |
US8930400B2 (en) * | 2004-11-22 | 2015-01-06 | Hewlett-Packard Development Company, L. P. | System and method for discovering knowledge communities |
US7634430B2 (en) * | 2004-12-06 | 2009-12-15 | Hewlett-Packard Development Company, L.P. | System and method for allocating resources in a distributed computational system using proportional share auctions |
US8781977B1 (en) | 2005-03-29 | 2014-07-15 | Hewlett-Packard Development Company, L.P. | System and method of pricing resources |
US8019637B2 (en) * | 2005-07-07 | 2011-09-13 | Sermo, Inc. | Method and apparatus for conducting an information brokering service |
US8327115B2 (en) | 2006-04-12 | 2012-12-04 | Soft Machines, Inc. | Plural matrices of execution units for processing matrices of row dependent instructions in single clock cycle in super or separate mode |
CN107368285B (zh) | 2006-11-14 | 2020-10-09 | 英特尔公司 | 多线程架构 |
US10083420B2 (en) | 2007-11-21 | 2018-09-25 | Sermo, Inc | Community moderated information |
WO2012037491A2 (en) | 2010-09-17 | 2012-03-22 | Soft Machines, Inc. | Single cycle multi-branch prediction including shadow cache for early far branch prediction |
WO2012135031A2 (en) | 2011-03-25 | 2012-10-04 | Soft Machines, Inc. | Executing instruction sequence code blocks by using virtual cores instantiated by partitionable engines |
KR101636602B1 (ko) | 2011-03-25 | 2016-07-05 | 소프트 머신즈, 인크. | 분할가능한 엔진에 의해 인스턴스화된 가상 코어를 이용한 코드 블록의 실행을 지원하는 메모리 프래그먼트 |
EP2689330B1 (de) | 2011-03-25 | 2022-12-21 | Intel Corporation | Registerspeichersegmente zur unterstützung einer codeblockausführung mittels durch partitionierbare engines realisierter virtueller kerne |
CN103649932B (zh) | 2011-05-20 | 2017-09-26 | 英特尔公司 | 资源的分散分配以及用于支持由多个引擎执行指令序列的互连结构 |
CN103649931B (zh) | 2011-05-20 | 2016-10-12 | 索夫特机械公司 | 用于支持由多个引擎执行指令序列的互连结构 |
KR101842550B1 (ko) | 2011-11-22 | 2018-03-28 | 소프트 머신즈, 인크. | 다중 엔진 마이크로프로세서용 가속 코드 최적화기 |
CN104040491B (zh) | 2011-11-22 | 2018-06-12 | 英特尔公司 | 微处理器加速的代码优化器 |
US9811342B2 (en) | 2013-03-15 | 2017-11-07 | Intel Corporation | Method for performing dual dispatch of blocks and half blocks |
WO2014150971A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for dependency broadcasting through a block organized source view data structure |
WO2014150991A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for implementing a reduced size register view data structure in a microprocessor |
WO2014150806A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for populating register view data structure by using register template snapshots |
EP2972845B1 (de) | 2013-03-15 | 2021-07-07 | Intel Corporation | Verfahren zur ausführung von in blöcken gruppierten befehlen aus mehreren threads |
US9569216B2 (en) | 2013-03-15 | 2017-02-14 | Soft Machines, Inc. | Method for populating a source view data structure by using register template snapshots |
US10140138B2 (en) | 2013-03-15 | 2018-11-27 | Intel Corporation | Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation |
US10275255B2 (en) | 2013-03-15 | 2019-04-30 | Intel Corporation | Method for dependency broadcasting through a source organized source view data structure |
US9904625B2 (en) | 2013-03-15 | 2018-02-27 | Intel Corporation | Methods, systems and apparatus for predicting the way of a set associative cache |
CN105247484B (zh) | 2013-03-15 | 2021-02-23 | 英特尔公司 | 利用本地分布式标志体系架构来仿真访客集中式标志体系架构的方法 |
US9891924B2 (en) | 2013-03-15 | 2018-02-13 | Intel Corporation | Method for implementing a reduced size register view data structure in a microprocessor |
US9886279B2 (en) | 2013-03-15 | 2018-02-06 | Intel Corporation | Method for populating and instruction view data structure by using register template snapshots |
JP6051991B2 (ja) * | 2013-03-21 | 2016-12-27 | 富士通株式会社 | 信号処理装置、信号処理方法、及び信号処理プログラム |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL134125C (de) * | 1958-04-25 | |||
NL269964A (de) * | 1961-08-22 | |||
US3496387A (en) * | 1966-10-05 | 1970-02-17 | Yokogawa Electric Works Ltd | Current-to-pulse conversion device |
US3496382A (en) * | 1967-05-12 | 1970-02-17 | Aerojet General Co | Learning computer element |
US3566359A (en) * | 1968-04-17 | 1971-02-23 | Melpar Inc | Trainable computer module |
US3678461A (en) * | 1970-06-01 | 1972-07-18 | Texas Instruments Inc | Expanded search for tree allocated processors |
US4060713A (en) * | 1971-06-23 | 1977-11-29 | The Perkin-Elmer Corporation | Analysis of images |
US4065808A (en) * | 1975-01-25 | 1977-12-27 | U.S. Philips Corporation | Network computer system |
US4193115A (en) * | 1977-12-15 | 1980-03-11 | The United States Of America As Represented By The Secretary Of Commerce | Method and apparatus for implementation of the CMAC mapping algorithm |
US4270169A (en) * | 1978-05-03 | 1981-05-26 | International Computers Limited | Array processor |
US4215401A (en) * | 1978-09-28 | 1980-07-29 | Environmental Research Institute Of Michigan | Cellular digital array processor |
US4254474A (en) * | 1979-08-02 | 1981-03-03 | Nestor Associates | Information processing system using threshold passive modification |
US4395699A (en) * | 1979-09-10 | 1983-07-26 | Environmental Research Institute Of Michigan | Method and apparatus for pattern recognition and detection |
US4384273A (en) * | 1981-03-20 | 1983-05-17 | Bell Telephone Laboratories, Incorporated | Time warp signal recognition processor for matching signal patterns |
US4533993A (en) * | 1981-08-18 | 1985-08-06 | National Research Development Corp. | Multiple processing cell digital data processor |
JPS58129684A (ja) * | 1982-01-29 | 1983-08-02 | Toshiba Corp | パタ−ン認識装置 |
US4493048A (en) * | 1982-02-26 | 1985-01-08 | Carnegie-Mellon University | Systolic array apparatuses for matrix computations |
US4599692A (en) * | 1984-01-16 | 1986-07-08 | Itt Corporation | Probabilistic learning element employing context drive searching |
US4599693A (en) * | 1984-01-16 | 1986-07-08 | Itt Corporation | Probabilistic learning system |
US4591980A (en) * | 1984-02-16 | 1986-05-27 | Xerox Corporation | Adaptive self-repairing processor array |
-
1985
- 1985-03-15 US US06/711,930 patent/US4835680A/en not_active Expired - Fee Related
-
1986
- 1986-03-07 EP EP86301652A patent/EP0195569B1/de not_active Expired - Lifetime
- 1986-03-07 DE DE86301652T patent/DE3689049T2/de not_active Expired - Fee Related
- 1986-03-13 JP JP61056048A patent/JPS61213964A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
EP0195569B1 (de) | 1993-09-22 |
US4835680A (en) | 1989-05-30 |
EP0195569A3 (en) | 1989-02-22 |
DE3689049D1 (de) | 1993-10-28 |
JPS61213964A (ja) | 1986-09-22 |
EP0195569A2 (de) | 1986-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3689049T2 (de) | Selbstanpassender Prozessor. | |
DE69031774T2 (de) | Adaptiver Gruppierer | |
DE69014613T2 (de) | Genetische synthese von neuronalen netzwerken. | |
DE69222707T2 (de) | Zeichenverdünnung mit Verwendung des Auftrittsverhaltens von lokal unabhängigen kompetitiven Prozessen | |
DE3689926T2 (de) | Einrichtung zur sequenziellen Bildtransformation. | |
DE3501272A1 (de) | Adaptives, selbstausbesserndes prozessorfeld | |
DE2909153A1 (de) | Einrichtung zur elektronischen verarbeitung von bild- und/oder zeichenmustern | |
DE3587061T2 (de) | Bildverarbeitungseinrichtung und verfahren zu deren steuerung. | |
DE69330021T2 (de) | Verbessertes System zur Mustererkennung für Sonar und andere Anwendungen | |
DE3938645C1 (de) | ||
DE4217832A1 (de) | Mustererkennungs- und musterlerngeraet | |
DE69314293T2 (de) | Neuronalanlage und -Bauverfahren | |
DE69815390T2 (de) | Neuronale netzwerke | |
DE69131020T2 (de) | Gerät geeignet zur objekt-hintergrund-abtrennung | |
DE3508400A1 (de) | Vorrichtung und verfahren zur mustererkennung | |
DE102006044595B4 (de) | Bildverarbeitungsvorrichtung zur Segmentierung anhand von Konturpunkten | |
DE2133638B2 (de) | Verfahren zum Betrieb eines lernfähigen Systems aus in Kaskade geschalteten, zur nicht linearen Datenverarbeitung geeigneten lernfähigen Datenverarbeitungseinheiten | |
DE69802372T4 (de) | Klassifizierungssystem und -verfahren mit N-Tuple- oder RAM-basiertem neuronalem Netzwerk | |
DE4417932B4 (de) | Verfahren und ein System zum Erhalten von Zieleinstellbeträgen für Ausführungsparameter durch Lernen einer Mehrzahl von Sätzen von Muster-Eingabedaten und Muster-Ausgabedaten | |
DE112019001959T5 (de) | Segmentieren unregelmässiger formen in bildern unter verwendung von tiefem bereichswachstum | |
DE69028676T2 (de) | System und Verfahren zur Bestimmung des Verdrahtungsmusters | |
DE3853137T2 (de) | Abfragevorrichtung. | |
DE69204064T2 (de) | Filter zur erweiterung und erosionsumwandlung von bildern. | |
DE69120854T2 (de) | Lernverfahren fÜr Datenverarbeitungssystem | |
DE69410733T2 (de) | Neuronaler Zellularautomat und darauf basierter Optimierer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |