-
Gebiet der
Erfindung
-
Die
Erfindung betrifft eine Vorrichtung und ein Verfahren zum Verteilen
gleichzeitig auf einer Vielzahl von Leitungen ankommender Anrufe
auf eine Vielzahl von Ressourcen.
-
Hintergrund
der Erfindung
-
Bei
vielen Kundendiensten müssen
ankommende Telefongespräche
auf eine begrenzte Anzahl von Ressourcen verteilt werden und daraus
sind Schwierigkeiten bei der Priorisierung der Anrufe zur Verbindung
mit den Ressourcen entstanden. Zum Beispiel müssen in einem Telefonnummernansagedienst
ankommende Anrufe mit einer festen Anzahl von Ressourcen, in der
Form von Telefonisten im Handbetrieb, verbunden werden. Eine Anzahl
von Lösungsansätzen zur
Optimierung der Verbindung von ankommenden Anrufen wurde bereits
herangezogen, um die Bildung einer Warteschlange zu minimieren.
Es wird Bezug genommen auf „The
Edgeley Electronic Queuing Equipment", D. R. Donnelly und R. J. Hirst, British
Telecommunications Engineering, Vol. 1, Teil 3, Oktober 1982, S.
155. Es wurden weiterentwickeltere Systeme vorgeschlagen, um mehrere
Warteschlangen, Prioritätsleitungen,
alternative Routings und Kalender-Tageszeit-Routingpläne aufzunehmen. Die früheren Ansätze verwendeten
alle auf Regeln basierende Algorithmen, um Anforderungen der Kunden
zu erfüllen.
Wenn jedoch die Anzahl der ankommenden Leitungen und Ressourcen
erhöht
wird, werden die für
den Algorithmus erforderlichen Regeln selbst sehr komplex und schwierig,
zu optimieren. Ein Beispiel eines auf Regeln basierenden Verfahrens
ist in 1 gezeigt und weist eine Reihe von WENN-Aussagen
WENN1, WENN2, usw. auf. Jede WENN-Aussage ist ausgebildet, einen
bestimmten Test für
ankommende Anrufe vorzusehen. Die Klammern < > bezeichnen
kundenspezifische Tests oder Werte, damit einzelne Kunden abhängig von
ihrer Priorität
oder ihren bestimmten Erfordernissen verbunden werden können. Verschiedene
Prioritäten
können
beispielsweise an verschiedene Telefonnummern ausgegeben werden.
-
Während ein
Anruf wartet, werden die WENN-Aussagen wiederholt von oben nach
unten gelesen, bis eine der WENN-Aussagen wahr wird, und dann wird
der in der Aussage spezifizierte Vorgang durchgeführt.
-
Es
wird jedoch offensichtlich werden, dass diese Konfiguration unhandlich
und übermäßig kompliziert
wird, wenn eine hohe Anzahl ankommender Anrufe verarbeitet und mit
einer hohen Anzahl von Ressourcen verbunden werden muss. Das in 1 gezeigte
auf Regeln basierende System ermöglicht, dass
Anrufe unterschiedlichen Warteschlangen zugewiesen werden. Die die
Anrufe beantwortenden Ressourcen können mehr als eine Warteschlange unterstützen, d.
h. sie können
mit Anfragen mehr als eines Typs umgehen, so dass ein gleichmäßiges Verteilen
der Last der ankommenden Anrufe auf die einzelnen Ressourcen ein
komplexes Problem wird, das normalerweise ein manuelles Eingreifen
durch eine Netzwerkaufsicht erfordert. Die vorliegende Erfindung
sieht einen alternativen Lösungsansatz
vor, der die mit den auf Regeln basierenden Systemen gemäß dem Stand
der Technik verbundenen Beschränkungen
zu überwinden
versucht.
-
Zusammenfassung der Erfindung
-
Gemäß der vorliegenden
Erfindung ist ein Verfahren zum Verteilen gleichzeitig auf einer
Vielzahl von Leitungen ankommender Anrufe auf eine Vielzahl von
Ressourcen vorgesehen, das aufweist:
Verknüpfen eines jeweiligen Wertes
eines Betriebsparameters mit jeder Kombination einer Vielzahl von verschiedenen
individuellen Kombinationen der Leitungen und Ressourcen in Abhängigkeit
von einer Erwünschtheit
gemäß vorgegebenen
Kriterien zum Zusammenschalten der Leitung und der Ressource der Kombination,
wiederholtes Überprüfen der
Werte des den Kombinationen entsprechenden Betriebsparameters, und
Auswählen zumindest
einer der Kombinationen zur Zusammenschaltung als Ergebnis der Überprüfungen.
-
Somit
werden gemäß der Erfindung
verschiedene individuelle Kombinationen der Leitungen und Ressourcen
betrachtet und ihnen wird ein zugehöriger Wert eines Betriebsparameters
zugewiesen, der die Erwünschtheit
eines Zusammenschaltens der Leitung und der Ressource anzeigt. In
dem im Folgenden beschriebenen Beispiel weist der Betriebsparameter
einen „Gefälligkeitswert" auf und das Verfahren
beinhaltet ein Auswählen
von zumindest einer Kombination der Leitungs-/Ressourcen-Kombinationen,
welche die höchste „Gefälligkeit", d. h. den höchsten „Gefälligkeitswert", aufweist.
-
Der
zu einer bestimmten Leitungs- und Ressourcenkombination gehörende Betriebsparameter kann
eine Funktion der Zeit sein, die ein ankommender Anruf in der Leitung
gewartet hat, um mit einer der Ressourcen verbunden zu werden. Der
Parameter kann auch der Zeit zugeordnet sein, welche die Ressource
frei war. Die ankommenden Anrufe können aus unterschiedlichen
Klassen bestehen, z. B. von unterschiedlichen Telefonnummern, Diensten oder
Kundenkontotypen, und der Wert des zu einer bestimmten Leitungs-
und Ressourcenkombination gehörenden
Betriebsparameters kann eine Funktion eines Vorrangs sein, der zu
der Klasse des ankommenden Anrufes gehört. Durch ein aktives Erfassen der
Anrufsklasse können
unterschiedliche Dienste oder Anrufe von bestimmten Kunden vor Anrufen
von anderen Kunden verarbeitet werden.
-
Auch
können
die Ressourcen in Klassen angeordnet werden, z. B. Ressourcen, die
verschiedene Typen ankommender Anrufe handhaben können. Zum
Beispiel können
die Ressourcen Telefon-Operatoren
mit unterschiedlichen Trainingsgraden aufweisen, um verschiedene
Typen von Anfragen zu bearbeiten. Den Ressource-Klassen kann ein Vorrang auf ähnliche
Weise wie den Klassen des ankommenden Anrufs zugewiesen werden.
Der Wert des Betriebsparameters, der zu den bestimmten Leitungs-
und Ressourcenkombinationen gehört,
kann eine Funktion der Klasse der Ressource für diese Kombination sein. Darüber hinaus
kann bestimmten Anrufen ein Prioritätswert abhängig von den bestimmten Werten der
Anrufsklasse und der Ressourcen-Klasse für die Leitungs- und Ressourcenkombination
zugewiesen werden. Der Betriebsparameter für die Kombination kann als
eine Funktion des Prioritätswertes,
der zu der Kombination gehört,
gesetzt werden.
-
Das
Verfahren der Erfindung ist auch zugänglich für einen manuellen Eingriff
und der Betriebsparameter kann als eine Funktion von Expertendaten
gesetzt werden, die zum Beispiel von einem Diensteanbieter definiert
werden. Insbesondere die Vorränge
und die Prioritätswerte
für bestimmte
Leitungs- und Ressourcenkombinationen können gemäß benutzerbestimmten Expertendaten
gesetzt werden.
-
Das
Verfahren kann verwendet werden, eine zuerst wünschenswerte und eine nächst-wünschenswerte
Leitungs- und Ressourcenkombi nation auf Grundlage der Werte der
Betriebsparameter während
jeder der periodischen Überprüfungen auszuwählen.
-
Die
Erfindung umfasst auch eine Vorrichtung zum Verteilen einer Vielzahl
gleichzeitig ankommender Anrufe auf eine Vielzahl von Ressourcen,
die aufweist:
eine Vielzahl ankommender Leitungen für die Anrufe,
eine
Vielzahl abgehender Leitungen als Verbindung zu den Ressourcen,
Mittel
zum Verknüpfen
eines jeweiligen Wertes eines Betriebsparameters mit jeder Kombination
einer Vielzahl von verschiedenen individuellen Kombinationen der
ankommenden und abgehenden Leitungen als eine Funktion einer Erwünschtheit
gemäß vorgegebenen
Kriterien zum Zusammenschalten eines Anrufs auf der ankommenden
Leitung mit der Ressource für
die abgehende Leitung entsprechend der Kombination, und
Mittel
zum wiederholten Überprüfen der
Werte der den Kombinationen entsprechenden Parameter und zum Auswählen zumindest
einer der Kombinationen abhängig
von der Überprüfung.
-
Die
Vorrichtung kann Anzeigemittel umfassen zum Anzeigen einer zweidimensionalen
Matrix von Anrufklassen und Ressource-Klassen und zum Bereitstellen
einer visuellen Anzeige auf der Matrix des aktuell zu jeder Ressource-Klasse-/Anrufklasse-Kombination
gehörenden
Prioritätswerts.
Die Anzeigemittel können
auch eine Anzeige der aktuellen, zu unterschiedlichen Anrufklassen
gehörenden
Vorrangswerte bereitstellen.
-
Die
Vorrichtung kann Verbindungs-Mittel umfassen, die betriebsfähig sind,
die gewählte
Kombination aus ankommenden und abgehenden Leitungen miteinander
zu verbinden.
-
Die
Vorrichtung kann zum Betrieb in einem öffentlichen Telefonnetz konfiguriert
werden, wobei die ankommenden und abgehenden Leitungen ausgebildet
sind, ankommende Anrufe von entfernten Standorten mit den Ressourcen
zu verbinden, die zumindest zum Teil an von der Vorrichtung entfernten Standorten
eingerichtet sind. Auf diese Weise kann der Netzbetreiber einen
Dienst zur Verfügung
stellen, durch den die Kunden des Netzes selbst einen Dienst mit
einer Vielzahl von Ressourcen, zum Beispiel Telefonisten oder Voice-Mail-Geräte oder
andere Geräte
für aufgezeichnete
Meldungen, zur Verfügung
stellen können,
durch die die Anrufer mit den Ressourcen auf eine Weise verbunden
werden können,
welche die Bildung von Warteschlangen minimiert, wobei die Vorrichtung
zum Verteilen von Anrufen in dem Netzwerk statt in den Räumlichkeiten
des Kunden ausgebildet ist. Die Vorrichtung kann sich in einer Vermittlungsstelle
des öffentlichen
Telefonnetzes befinden. Im Folgenden wird die Bereitstellung eines derartigen
Dienstes als Call-Center-Dienst bezeichnet. Die Vorrichtung gemäß der Erfindung
hat den Vorteil, dass der Call-Center-Dienst
Ressourcen benutzen kann, wie Telefonverkaufspersonal, das sich nicht
in den Räumlichkeiten
des Kunden befindet, aber von einer Anzahl verschiedener Standorte,
z. B. von zu Hause aus, arbeiten kann. Somit ist es für den Netzkunden
nicht notwendig, dass sich das ganze Telefonverkaufspersonal in
einem Büro
befindet, sondern es kann sich an unterschiedlichen Orten aufhalten.
-
Alternativ
kann die Vorrichtung zum Betrieb in einer privaten Telekommunikationsanlage
ausgebildet sein, wobei die ankommenden und abgehenden Leitungen
ausgebildet sind, ankommende Anrufe von entfernten Standorten mit
den zumindest teilweise an Standorten in der Nähe der Vermittlungsstelle eingerichteten
Ressourcen zu verbinden. Somit kann die Vorrichtung zur Steuerung
einer Anrufverteilung verwendet werden, wenn eine Anzahl von Ressourcen
sich in den Büros
eines Kunden des Netzbetreibers befindet, wobei ankom mende Anrufe durch
das Netz zu der privaten Nebenstellenanlage geführt werden.
-
Vorzugsweise
umfasst das Auswahlmittel Durchsuchungsmittel, die betriebsfähig sind,
die aktuellen Betriebsparameterwerte für alle der ankommenden und
abgehenden Leitungs-Kombinationen zu durchsuchen, und Parameterwert-Auswahlmittel, die
betriebsfähig
sind, die Kombination auszuwählen, die
einen zugehörigen
durchsuchten Wert des Betriebsparameters aufweist, der dem höchsten der durchsuchten
Werte hinsichtlich der Erwünschtheit der
Verbindung entspricht, d. h. der höchste „Gefälligkeitswert".
-
Erste
und zweite Durchsuchungsmittel und Parameter-Auswahlmittel können zusammen
mit Mitteln zum Wählen
der zu verbindenden Kombination als eine Funktion der entweder von
dem ersten und/oder zweiten Parameterwert-Auswahlmittel gemachten
Auswahl vorgesehen werden. Die ersten und zweiten Durchsuchungsmittel
können
asynchron arbeiten.
-
Die
Durchsuchungsmittel können
alternativ Kachel-Durchsuchungsmittel umfassen, die betriebsfähig sind,
Gruppen der aktuellen Betriebsparameterwerte der Reihe nach zu durchsuchen,
um aus jeder der Gruppen die Kombination auszuwählen, die einen zugehörigen durchsuchten
Wert des Parameters aufweist, der dem höchsten der durchsuchten Werte hinsichtlich
der Erwünschtheit
der Verbindung entspricht, d. h. der höchste „Gefälligkeitswert", und um die für jede jeweilige
Gruppe ausgewählten
höchsten Parameterwerte
zu vergleichen, um den höchsten Wert
aus allen durchsuchten Gruppen auszuwählen.
-
In
einer anderen Konfiguration umfasst das Auswahlmittel Parallel-Durchsuchungsmittel,
die betriebsfähig
sind, Gruppen der aktuellen Betriebsparameterwerte gleichzeitig
zu durchsuchen.
-
Eine
Vielzahl von Vorrichtungen gemäß der Erfindung
können
mit Steuer-Verwaltungs-Mitteln vorgesehen werden, um ausgewählte Gruppen
von ankommenden und abgehenden Leitungen jeweiligen Vorrichtung
zuzuweisen, um so ein System mit verteilter Datenverarbeitungsumgebung
zur Verfügung
zu stellen. Das verteilte System kann zur Bereitstellung einer Vielzahl
von unterschiedlichen Call-Center-Diensten
verwendet werden.
-
Um
die Berechnung des Betriebsparameters zu vereinfachen, kann die
Vorrichtung umfassen Mittel zum Definieren von angemeldeten Objekten,
die jeweils den Ressourcen entsprechen, als eine Funktion von statischen
Daten hinsichtlich der Ressource und von dynamischen Daten abhängig davon,
ob die Ressource frei ist oder sich in einem aktiven Zustand befindet,
und Mittel zum Definieren von Anrufobjekten, die statische Daten
für bestimmte
Anruftypen und/oder Anrufklassen und dynamische Daten aufweisen,
die das Auftreten von Anrufen auf den ankommenden Leitungen betreffen.
In der Praxis gibt es weit weniger aktive angemeldete Anrufobjektpaare
als Leitungs-Ressource-Kombinationen, so dass die Verarbeitungslast
beträchtlich
verringert ist.
-
In
einer alternativen Konfiguration umfasst die Vorrichtung Mittel
zum Definieren einer Vielzahl von Software-„Ameisen", die betriebsfähig sind, anfangs im Wesentlichen
zufällig
durch eine Matrix der Werte des zu der Kombination gehörigen Betriebsparameters
zu wandern, um einen Wert daraus zu finden, welcher der wünschenswertesten
Kombination aus ankommender Leitung und damit zu ver bindender Ressource
entspricht, wobei die „Ameisen" betriebsfähig sind,
untereinander zu kommunizieren, so dass sie sich gemeinsam zu einem
Bereich der Matrix hinbewegen, in dem zumindest ein Wert des Betriebsparameters
eine größere Erwünschtheit
einer Zusammenschaltung der dazugehörigen Kombination aus Ressource
und ankommendem Anruf im Vergleich zu einer Mehrheit der Parameterwerte
in der Matrix anzeigt.
-
Alternativ
kann die Vorrichtung umfassen eine Vielzahl von Software-Elementen für künstliche Lebensformen,
um die Werte des Betriebsparameters in der Matrix zu berechnen,
und Mittel zum selektiven Zuweisen von Rechenleistung an die Lebensformen
abhängig
vom Erfolg der Lebensform beim Berechnen eines Wertes des Betriebsparameters, der
eine Erwünschtheit
der Zusammenschaltung anzeigt.
-
In
einem weiteren Ausführungsbeispiel
wird ein neuronales Netz verwendet, um die wünschenswerteste Kombination
aus Ressource und ankommender Leitung zu wählen.
-
Kurze Beschreibung
der Zeichnungen
-
Zur
besseren Verständlichkeit
der Erfindung werden nun Ausführungsbeispiele
davon beispielhaft unter Bezugnahme auf die begleitenden Zeichnungen
beschrieben, von denen:
-
1 eine
Darstellung eines auf Regeln basierenden Algorithmus nach dem Stand
der Technik ist;
-
2 ein
schematisches Diagramm einer in einer Vorrichtung gemäß der Erfindung
verwendeten Gefälligkeitswert-Matrix
ist;
-
3 ein
schematisches Diagramm von Gefälligkeitswerten
der Gefälligkeits-Matrix
von 2 ist;
-
4 ein
schematisches Blockdiagramm einer Vorrichtung zum Verteilen von
Anrufen gemäß der Erfindung
ist;
-
5 ein
Ablaufdiagramm des Betriebs der in 4 gezeigten
Vorrichtung ist;
-
6 ein
Ablaufdiagramm des Verfahrens ist, nach dem Gewinner und Zweitbeste
der Gefälligkeitswert-Matrix
vorgeschlagen werden;
-
7 ein
Ablaufdiagramm der Berechnung der Gefälligkeitswerte für die Matrix
ist;
-
8 ein
Verfahren zur Durchsuchung von Werten der Gefälligkeitswert-Matrix M darstellt;
-
9 ein
Durchsuchungsverfahren darstellt, in welchem zwei Matrizen der Gefälligkeitswerte
parallel berechnet werden;
-
10 ein
Durchsuchungsverfahren darstellt, in welchem die Gefälligkeitswert-Matrix
in Zeilen angeordnet ist;
-
11 ein
Durchsuchungsverfahren darstellt, in welchem die Matrix in Kachelform
angeordnet ist;
-
12 ein
Beispiel der Vorrichtung gemäß der Erfindung
darstellt, das eine verteilte Berechnungsumgebung verwendet;
-
13 die
Organisation von bei der Berechnung von Gefälligkeitswerten verwendeten
statischen Daten darstellt;
-
14 die
Organisation von bei der Berechnung von Gefälligkeitswerten verwendeten
dynamischen Daten darstellt;
-
15 ein
alternatives objektorientiertes Berechnungsverfahren darstellt;
-
16 eine
Datenorganisation für
das unter Bezugnahme auf 15 beschriebene
Verfahren darstellt;
-
17 ein
Verfahren zum Ermitteln von hohen Werten in der Gefälligkeitswert-Matrix
mit Software-„Ameisen" darstellt;
-
18 die
Verwendung eines neuronalen Netzes zur Ermittlung hoher Werte in
der Gefälligkeitswert-Matrix
darstellt;
-
19 bis 22 alternative
Hybrid-Konfigurationen einer Gefälligkeitswert-Matrix
für mehrere Call-Center
mit unterschiedlichen Größen darstellen;
-
23 ein
Blockdiagramm eines verteilten Systems ist, das die verschiedenen
unter Bezugnahme auf die 19 bis 22 beschriebenen
Hybrid-Lösungen
verwendet;
-
24 eine schematische Darstellung einer von
der Vorrichtung von 4 vorgesehenen Anzeige ihrer
Call-Center-Konfiguration ist; und
-
25 eine
von der Vorrichtung von 4 vorgesehene Anzeige der Routing-Prioritäten für das Call-Center
ist.
-
Detaillierte Beschreibung
-
Unter
Bezugnahme auf 2 werden die Anrufe C1–Cn auf den ankommenden Leitungen Li1–Lin mit den Ressourcen R1–Rm über
die abgehenden Leitungen Lo1–Lom verbunden. Gemäß der Erfindung wird, anstatt
einen komplexen, auf Regeln basierenden Algorithmus zur Ermittlung
der Zusammenschaltungen zu verwenden, der Wert eines Betriebsparameters
jeder möglichen
Zusammenschaltung zwischen den ankommenden Leitungen und den abgehenden
Leitungen, die mit den Ressourcen verbunden sind, zugeschrieben.
Dies wird schematisch als Matrix M in 2 gezeigt.
Der Wert des Betriebsparameters wird hier als „Gefälligkeitswert" bezeichnet und ihm
wird ein Wert abhängig
von der Erwünschtheit
der Zusammenschaltung einer bestimmten Leitungs- und Ressourcen-Kombination
zugewiesen. Wie in 2 gezeigt, wird einem Zusammenschaltungspunkt
l, r in der Gefälligkeitswert-Matrix ein
Gefälligkeitswert
Pl,r, zugeschrieben.
-
Der
Gefälligkeitswert
Pl,r an dem Zusammenschaltungspunkt l, r
wird gemäß vorgegebener
Kriterien festgesetzt, wie im Folgenden erläutert wird. Zwei der in Betracht
gezogenen Kriterien sind die Zeit, die ein Anruf auf der Leitung
Li gewartet hat, und die Zeit, die die Ressource
R und die abgehende Leitung Lo frei waren.
Dies wird in 3 schematisch gezeigt. Eine
Reihe von Leitungs-Zeitmessern LT1–LTn sind mit den ankommenden Leitungen Li1–Lin verbunden, um eine Anzeige der Zeitdauer
zu liefern, die der Anruf gewartet hat. Ähnlich sind die Ressourcen-Zeitmesser
RT1–RTm mit den Ressourcen R1–Rm verbunden. In dem in 3 gezeigten
Beispiel werden die Leitungs-Zeitmesser
und die Ressourcen-Zeitmesser an den relevanten Punkten summiert,
um die Gefälligkeitswerte
P für die
Punkte l, r in der Gefälligkeitswert-Matrix
zu liefern. Der höchste Wert
für P und
der zweithöchste
Wert zeigen den Gewinner und den Zweitbesten der Kombinationen aus ankommenden
Leitungen und Ressourcen an. Die Gefälligkeitswert-Matrix wird wiederholt
berechnet und der Ge winner und der Zweitbeste werden für jeden
Rechenschritt durch die Matrix wiederholt berechnet. In 3 zeigt
der Leitungs-Zeitmesser LT1 den Wert 30
Sekunden an und der Ressourcen-Zeitmesser RT1 zeigt
eine Zeit von 10 Sekunden an, so dass die Zusammenschaltung der
Leitung Li1 mit der Ressource R1 den
höchsten
Gefälligkeitswert
P hat, wobei P = 30 + 10 = 40, und den Gewinner darstellt. Der Zweitbeste
wird von der Zusammenschaltung der Leitung Ii2 mit
der Ressource R4 dargestellt, wobei P =
35.
-
Die
den Punkten in der Matrix zugeschriebenen Gefälligkeitswerte sind auch eine
Funktion von Klassifikationen der ankommenden Anrufe und Ressourcen,
wie im Folgenden detaillierter beschrieben wird.
-
Unter
Bezugnahme nun auf 4 wird ein schematisches Blockdiagramm
einer Vorrichtung gemäß der Erfindung
gezeigt. Die ankommenden Leitungen Ii1–Lin und die abgehenden Leitungen Lo1–Lom sind mit einer Querverbindungseinrichtung 10 verbunden,
die von einem Prozessor 11 gesteuert wird, um physikalische
Zusammenschaltungen/Leitungsverbindungen XXX zwischen den ankommenden
und abgehenden Leitungen zu liefern, so dass unter der Steuerung
des Prozessors jede ankommende Leitung mit jeder abgehenden Leitung
verbunden werden kann. Die Leitungs-Zeitmesser LT werden kollektiv
als Block 12 gezeigt und ermitteln die Zeitdauer, die Anrufe
auf einzelnen ankommenden Leitungen gewartet haben. Die Wartezeiten
betreffende Daten werden auf der Leitung 13 dem Prozessor 11 zugeführt. Ähnlich werden
die Ressourcen-Zeitmesser RT als Block 14 gezeigt und liefern
Informationen hinsichtlich der Zeitdauer, während der die einzelnen Ressourcen
R1–Rm frei waren, wobei die Information auf der
Leitung 15 dem Prozessor 11 zugeführt wird.
-
Der
Prozessor 11 berechnet die einzelnen Gefälligkeitswerte
für die
in 2 gezeigte Gefälligkeitswert-Matrix
und steuert die Querverbindungseinrichtung 10 dementsprechend,
um so eine Zusammenschaltung der ankommenden und abgehenden Leitungen
zu versuchen, die dem höchsten
Gefälligkeitswert
entsprechen. Die Gefälligkeitswert-Matrix wird
wiederholt von dem Prozessor durchsucht und in dem Fall, dass der
höchste
Wert bereits verbunden ist, weist der Prozessor die Querverbindung
an, eine Zusammenschaltung zu bilden, die dem zweithöchsten Wert
der Gefälligkeitswert-Matrix
entspricht.
-
Wie
bereits erwähnt,
werden die Gefälligkeitswerte
abhängig
von einer Anzahl von Faktoren zusätzlich zu den Ausgaben der
Leitungs-Zeitmesser 12, 14 ermittelt.
Diese zusätzlichen
Faktoren hängen von
anderen Charakteristiken der ankommenden Anrufe und der Ressourcen
ab. Die Art und Weise, wie das System Daten über die Ressourcen und ankommenden
Leitung erlangt und in der Berechnung der Gefälligkeitswerte verwendet, wird
nun detaillierter beschrieben. Eine Anzahl von Faktoren werden wie folgt überwacht:
-
Leitungszustand (Dynamische
Daten)
-
Jede
ankommende Leitung Li1–Lin kann
als ein verwaltetes Objekt dargestellt werden, das von einer endlichen
Zustandsvariablen, als Leitungszustand bezeichnet, gesteuert wird.
Der Leitungszustand bewegt sich durch eine Anzahl unterschiedlicher
Bedingungen: Initialisieren, Frei, Alarm, Verbinden, Beantwortet, Übertragungs-Alarm, Übertragungs-Verbinden, Übertragung-Beantwortet,
Archivieren, und zurück
zu Frei. Die Übertragungs-Zustände können übersprungen
werden oder so oft wie notwendig wiederholt werden. Der Prozessor 11 befasst sich
bei der Berechnung der Gefälligkeitswerte
nur mit den Alarm- und Übertragungs-Alarm-Zuständen, da
dann eine Entscheidung hinsichtlich der Querverbindung erforderlich
ist. Der Leitungszustand für
jede ankommende Leitung Li wird mittels
eines Lei tungs-Prozessors 16 festgestellt, der Daten auf
der Leitung 17 an den Prozessor 11 leitet.
-
Leitungs-Zeitmesser (Dynamische
Daten)
-
Jedes
Leitungs-Objekt enthält
Daten, die die Zeit betreffen, während
der sich die Leitung Li in einem Alarm-Zustand
befand, wobei die Daten von dem Leitungs-Zeitmesser 12 erhalten
werden. In der Praxis können
der Leitungs-Zeitmesser 12 und der Leitungs-Prozessors 16 eine
einzige Einheit sein.
-
Telefonnummer (Dynamische
Daten)
-
Die
Nummer des Telefons, von dem aus der Anruf auf der Leitung Li getätigt
wird, im Folgenden als die anrufende Telefonnummer (CTN – calling
telephone number) bezeichnet, und die gewählte Nummer, im Folgenden als
die gewählte
Telefonnummer (DTN – dialled
telephone number) bezeichnet, sind als digitale Daten für jeden
ankommenden Anruf verfügbar.
Die CTN und DTN werden von dem Leitungs-Prozessor 16 erfasst und entsprechende
Daten werden auf der Leitung 17 an den Prozessor 11 geleitet.
-
Anrufklassifizierung (Statische
und Dynamische Daten)
-
Die
ankommenden Anrufe werden gemäß vorgegebener
Anrufklassen als eine Funktion der CTN und DTN und jeder anderer über das
digitale Telfonnetz verfügbarer
Information klassifiziert. Die die Anrufklassen betreffenden Daten
können
in einer Datenbank gespeichert sein, was von dem Speicher 18 in 4 schematisch
gezeigt wird. Die Datenbank kann durch die Verwendung von „computer
telephony integration" (CTI)
erweitert werden, z. B. durch Zugriff auf spezifische entfernte
Firmendatenbanken. Auf diese Weise können Kundenkonto-Details oder vor
kurzem getätigte
Anfragen oder vor kurzem getätigte
Einkäufe
oder Verkaufsgelegenheiten oder der letzte menschliche Anrufempfänger oder
ein bestimmter Kontoverwalter in Betracht gezogen werden. Auch können bestimmte
ankommende Leitungen Li mit bestimmten privaten
Leitungssystemen verknüpft
werden. Darüber
hinaus kann es möglich sein,
dass der von dem Leitungs-Prozessor 16 durchgeführte Vorgang
der Anrufklassifizierung keine geeignete Übereinstimung in dem Speicher 18 findet. Um
dies zu berücksichtigen,
wird jede Leitung Li mit einer Standard-Anrufklasse vorgesehen.
-
Ressourcen-Zustand (Dynamische
Daten)
-
Jede
Ressource R ist dargestellt als ein verwaltetes Objekt, das von
einer endlichen Zustandsvariablen, als Ressourcen-Zustand bezeichnet,
gesteuert wird. Jeder Ressourcen-Zustand bewegt sich durch Initialisieren,
Abgemeldet, Frei, Verbinden, Alarm, Beantwortet und zurück zu Frei.
Der Frei-Zustand wird von den in 4 gezeigten
Ressourcen-Zeitmessern erfasst.
-
Ressource-Klassifikation
(Statische und Dynamische Daten)
-
Gruppen
von dieselben Dienste anbietende Ressourcen werden als zu einer
einzigen Ressourcen-Klasse gehörig
betrachtet. Zum Beispiel kann eine Gruppe von Telefonisten bis zu
einem bestimmten Grad trainiert sein, um mit einem bestimmten Anfragetyp
umzugehen, während
andere Telefonisten mit manchen Anfragetypen und nicht anderen umgehen
können.
Darüber
hinaus können
die Ressourcen Voicemail-Vorrichtungen mit vorgegebenen Meldungen
oder sprachgesteuerte Computer-Datenbanken aufweisen. Alle der unterschiedlichen
Typen von Ressourcen und Funktionalitäten können in unterschiedliche Ressource-Klassen
klassifiziert werden.
-
Die
abgehenden Leitungen Lo1–Lom sind
jeweils mit einer zugehörigen
Standard-Ressource-Klasse vorgesehen.
-
Der
Zustand der verschiedenen Ressourcen und die Leitungen Lo und deren
Ressource-Klassen werden von einem Ressourcen-Prozessor 19 überwacht,
der in der Praxis die Ressourcen-Zeitmesser 14 enthalten
kann.
-
Ressourcen-Zeitmesser
(Dynamische Daten)
-
Jedes
Ressource-Objekt umfasst Daten von einem geeigneten Ressourcen-Zeitmesser 14,
die auf der Leitung 15 dem Prozessor zugeführt werden.
-
Vorrang (Statische Daten)
-
Gewisse
Anrufklassen können
wichtiger als andere sein. Jeder Anrufklasse wird daher ein Vorrangwert
zugewiesen. Dies kann als ein Vorsprung von mehreren Sekunden betrachtet
werden, der einem Anruf einer bestimmten Klasse gegeben wird. Wenn
zum Beispiel ein Anruf mit einem Vorrang 60 klassifiziert
ist, wird er angesehen, als hätte
er 60 Sekunden zu der Zeit gewartet, zu der der Anruf eingeleitet
wurde, mit dem Ergebnis, dass er schneller behandelt wird als es
sonst der Fall wäre.
-
Priorität (Statische
Daten)
-
Wenn
ein Anruf zuerst ankommt, wird er normalerweise einer Ressourcen-Klasse über den
als Primärweg
bezeichneten Weg angeboten. Verstreicht die Zeit und noch immer
sind keine der Ressourcen verfügbar,
wird ein sekundäres
Routing zu anderen Klassen in Betracht gezogen, und so weiter, bis
zu einer Anzahl von alternativen Routings. Dieser Ansatz unterscheidet
sich von herkömmlichen,
auf Regeln basierenden Algorithmen derart, dass der Anruf nicht
von einer Warteschlange zu einer anderen übergeht. Stattdessen wird der
Umfang der ihm zur Verfügung
stehenden Ressourcen in einem Versuch erweitert, Anrufwartezeiten
zu minimieren. Dies wird erreicht, indem jede zulässige Kombination
von Anrufklasse und Ressourcen-Klasse mit einem Prioritätswert versehen
ist, der in einer, in 4 in dem Speicher 18 gespeicherten,
Konfigurations-Matrix gespeichert ist. Primärwegen wird ein Prioritätswert von
1 zugewiesen, wodurch der Prozessor 11 den Anruf sofort
zu verbinden versucht. Andere Wege, denen ein Prioritätswert von
beispielsweise 30 zugewiesen wird, werden erst nach 29 Sekunden
berücksichtigt.
Allen von dem Prozessor 11 für eine Verbindung in Betracht
gezogenen Ressourcen wird ein Vorsprung von (Prioritätswertmax – Prioritätswert)
Sekunden gegenüber
jedem zu der Anrufklasse gehörenden
Vorrangwert zugewiesen. Auf diese Weise haben Primärwege einen
Vorsprung von Prioritätswertmax – 1
Sekunden.
-
Konfigurations-Matrix
(Statische Daten)
-
Die
Konfiguration der oben beschriebenen, zur Berechnung der Gefälligkeitswerte
erforderlichen statischen Daten wird im Folgenden als eine Konfigurations-Matrix
bezeichnet. Die statischen Daten, die die Matrix aufweist, werden
in erster Linie in dem in 4 gezeigten
Speicher 18 gespeichert und bestehen tatsächlich aus
mehreren unterschiedlichen Arrays:
- (i) ein
relativ kleines Array, das den Vorrang jeder Anrufklasse beinhaltet;
- (ii) ein relativ großes
Array, das die Klasse jedes Anrufs auf jeder Leitung beinhaltet;
- (iii) ein relativ großes
Array, das die Klasse jeder Ressource beinhaltet; und
- (iv) ein relativ sehr großes
Array, das eine Karte der zulässigen
Verbindungen zwischen Anrufklassen und Ressourcen-Klassen beinhaltet,
um so die Prioritätswerte
bereitzustellen. In der Praxis kann dieses Array eine sehr große Anzahl
von Null-Werten aufgrund der Tatsache umfassen, dass nur einer relativ
kleinen Anzahl von zulässigen
Kombinationen Prioritätswerte
zugewiesen werden. Folglich kann das Array ein virtuelles Array
sein, um die erforderliche Datenspeicherkapazität zu minimieren.
-
Algorithmus – Gefälligkeitswerte
-
Der
Prozessor 11 lässt
einen Algorithmus laufen, um die individuellen Gefälligkeitswerte
Pl,r zu berechnen, aus denen die in 2 gezeigte
Gefälligkeitswert-Matrix
besteht. Die Werte werden wiederholt berechnet auf der Grundlage
der statischen Daten der Konfigurations-Matrix des Speichers 18 und auch
der dynamischen Daten, die den Zustand der von den Leitungs-Prozessoren 16, 19 abgeleiteten Leitungen
L betreffen.
-
Der
Prozessor 11 berücksichtigt
somit jede Kombination der ankommenden Leitungen Li in
dem Alarm-Zustand mit den Ressourcen R in dem Frei-Zustand, wobei
die Gefälligkeitswerte
wie folgt berechnet werden:
REM: IF Statement (1)
IF (Priority(Call_Class,
Resource_Class) = 0)OR
(Timer_Value(Line Li) < (Priority_Value(Call_Class, Resource_Class) – 1))
THEN
Pleasure_Value
(Pl,r) = 0 {d. h. berücksichtige diese Verbindung
nicht}.
ELSE
REM: Routine (2)
Pleasure_Value (Pl,r) = Timer_Value(line) + Timer_Value(Resource)
+ Precedence(Call_Class) + Priority_ValuemaxPriority_Value(Call_Class, Resource_Class)
ENDIF
-
Somit
wird der Gefälligkeitswert
Pl,r für
jeden Punkt der Matrix M ermittelt als eine Funktion der Zeit, die
ein Anruf in einer ankommenden Leitung Li gewartet
hat, der Zeit, in der die Ressource für die ankommende Anruf-/Ressource-Kombination
frei war, des Vorrangs der Anrufklasse und des Prioritätswerts,
der in Abhängigkeit
von der Kombination aus Anrufklasse und Ressource-Klasse ermittelt
wurde. Der durch den Prozessor 11 ablaufende Algorithmus liefert
zwei Ausgaben, nämlich
wie folgt einen Gewinner und einen Zweitbesten:
Gewinner: Leitungsnummer
(Lc), Ressourcenummer (R), Leitungszustand, Ressourcen-Zustand
Zweitbester:
Leitungsnummer (Li), Ressourcenummer (R), Leitungszustand, Ressourcen-Zustand
-
Diese
Vorschläge
werden dann auf der Leitung 20 an die Querverbindungseinrichtung 10 geleitet,
die ein Querverbindungs-Programm ablaufen lässt, um die physikalische Querverbindung
zwischen den ausgewählten
Kombinationen aus ankommender Leitung und abgehender Leitung durchzuführen. Das
Querverbindungs-Programm versucht in erster Linie, die von dem Gefälligkeitswert-Matrix-Algorithmus bestimmte
Gewinner-Kombination zu verbinden, aber unter gewissen Umständen kann
dies nicht möglich
sein, beispielsweise da der ankommende Anruf beendet wurde oder
wegen eines anderen Grundes. In dieser Situation kommt das Querverbindungs-Programm auf den
Zweitbesten zurück.
Der Zweitbeste kann auch benutzt werden, wenn Li (Gewinner) ≠ Li (Zweitbester) UND Ri (Gewinner) ≠ Ri (Zweitbester).
-
Der
Gefälligkeitswert-Matrix-Algorithmus läuft wiederholt
ab, um so kontinuierlich neue Vorschläge zu machen. Die Leitungs-
und Ressourcen-Prozessoren 16, 19 aktualisieren
die die Leitungs-Zustände
und Ressourcen-Zustände
betreffenden dynamischen Daten asynchron zu dem Ablaufen des Gefälligkeitswert-Matrix-Algorithmus.
Wie im Folgenden detaillierter erläutert wird, können die von
der Querverbindungseinrichtung benutzten Leitungen und Ressourcen
in der Gefälligkeits-Matrix gelöscht werden
(d. h. auf Null zurückgesetzt)
in Voraussicht auf die Zustandsänderung
der Leitung und Ressource, die aus der Querverbindung entstehen wird.
Dies minimiert die Anzahl der doppelten Querverbindungsvorschläge, die
während
Verzögerungen beim
Erwerben von aktualisierter Leitungs- und Ressourcen-Zustandsinformation
auftreten kann.
-
Somit
können
durch das beschriebene System mehrere ankommende Anrufen auf einer
großen Anzahl
von ankommenden Leitungen Li mit den Ressourcen
R auf eine Weise verbunden werden, die eine Anrufwartezeit minimiert.
Das in 4 gezeigte System kann in einem öffentlichen
Telefonnetz angeordnet werden, wobei die ankommenden Leitungen ausgebildet
sind, ankommende Anrufe von entfernten Standorten, z. B. auf Verbindungsleitungen,
mit Ressourcen zu verbinden, die an von der Vorrichtung entfernten
Standorten eingerichtet sind. Zum Beispiel kann die Ressource Telefonisten
aufweisen, die von zu Hause aus arbeiten. Auf diese Weise kann der Netzbetreiber
ein Call-Center zur Verfügung
stellen, so dass ein Kunde des Netzes Dienste an Konsumenten unter
Verwendung von Telefonisten anbieten kann, die von zu Hause aus
oder an von den Räumlichkeiten
des Kunden entfernten Standorten arbeiten. Zum Beispiel kann für einen
Produktionsbetrieb ein Kundendienst über das Telefon zur Verfügung gestellt
werden, wobei die Telefonisten von zu Hause aus arbeiten. Die Telefonisten
können
bis zu unterschiedlichen Graden trainiert sein, z. B. um mit unterschiedlichen
Produkten und den dazugehörigen
Problemen vertraut zu sein, und können in entsprechende Ressource-Klassen
konfiguriert sein, so dass Anrufe selektiv an sie geleitet werden.
Darüber
hinaus können
Daten, die die Telefonnummern von Verbrauchern betreffen, in die
Konfigurations-Matrix aufgenommen werden, so dass Anrufe von bestimmten Verbrauchern
bevorzugt an bestimmte Ressourcen geleitet werden können.
-
Der
Netzbetreiber kann eine Vielzahl von Call-Center innerhalb des Telefonnetzes
zur Verfügung
stellen, ein detaillierteres Beispiel des bei der Berechnung der
Gefälligkeitswert-Matrix
verwendeten Algorithmus wird nun unter Bezugnahme auf die 5, 6 und 7 für eine Konfiguration
erläutert,
die eine Vielzahl von Call-Centern vorsieht.
-
5 stellt
den Gesamtbetrieb dar. Das Verfahren beginnt bei Schritt SO und
bei Schritt S1 werden die vorher beschriebenen statischen Daten
aus der Konfigurations-Matrix geholt. Die statischen Daten umfassen
die Anrufklassen und Ressourcen-Klassen und deren zugehörige Prioritätswerte.
-
In
Schritt S2 werden die vorher beschriebenen dynamischen Daten geholt.
Die dynamischen Daten umfassen die Leitungs-Zeitmesser-Werte und die Ressourcen-Zeitmesser-Werte,
die auf die in 4 gezeigten Leitungs- und Ressourcen-Zeitmesser
zurückzuführen sind,
und Information, welche die Leitungs-Zustände und die von dem Leitungs-Prozessor 16 gelieferten,
auf den ankommenden Leitungen Li gewählten Nummern
betreffen.
-
In
Schritt S3 läuft
der Gefälligkeitswert-Matrix-Algorithmus
derart ab, dass in Schritt S4 ein Gewinner und ein Zweitbester für die Kombinationen aus
ankommender Leitung und Ressource auf der Grundlage der Werte der
Gefälligkeitswert-Matrix empfohlen
werden. Die Routine kehrt dann zu Schritt S2 zurück und der Prozess wird nacheinander
wiederholt.
-
Das
Verfahren der Empfehlung von Querverbindungen, wie in Schritt S4
gezeigt, wird nun detaillierter unter Bezugnahme auf 6 beschrieben.
Die Gewinner und Zweitbeste der Gefälligkeitswerte für einzelne
Call-Center werden in eine in 6 gezeigte
Tabelle aufgenommen, wobei der Gewinner und der Zweitbeste für jedes
Call- Center sich
in einer einzelnen Zeile der Tabelle befinden. Die in 6 gezeigte
Routine ist für
einzelne Call-Center aufgeteilt, um sicherzustellen, dass die Kapazität des Systems nicht überraschenderweise
von nur einem Call-Center benutzt wird. Die Teil-Routine beginnt
in Schritt S4.1 und in Schritt S4.2 werden der Gewinner und der
Zweitbeste der verschiedenen Gefälligkeitswerte der
Gefälligkeitswert-Matrix M in eine
geeignete Zeile der Tabelle aufgenommen, wobei der Gewinner und der
Zweitbeste aus den berechneten Werten für die Matrix durch ein Verfahren
ausgewählt
werden, das später
unter Bezugnahme auf 7 erläutert wird. Bevor die Werte
in die Tabelle aufgenommen werden, werden die Zeilen der Tabelle
auf Null zurückgesetzt,
wie später
unter Bezugnahme auf 7 erläutert wird. In Schritt S4.3
wird die Routine für
alle Call-Center nacheinander wiederholt.
-
Der
Ablauf des Gefälligkeitswert-Matrix-Algorithmus
(Schritt S3 von 5) wird nun detaillierter unter
Bezugnahme auf 7 beschrieben. In der 7 läuft die
Routine einzeln für
alle Call-Center nacheinander ab, wie in Schritt S3.1 gezeigt. In Schritt
S3.2 werden die vorher in die Tabelle (6) aufgenommenen
Gewinner und Zweitbeste in Erwartung neuer berechneter Gefälligkeitswertdaten
auf Null gesetzt. Dann werden, wie in Schritt S3.3 gezeigt, alle
ankommenden Leitungen Li einzeln betrachtet
und in Schritt S3.4 wird festgestellt, ob sich die Leitung Li in einem Alarm-Zustand befindet. Wenn nicht,
wird die nächste
Leitung überprüft, wie
bei Schritt S3.5 gezeigt. Befindet sich die Leitung in dem Alarm-Zustand,
fährt die
Routine fort, um die Gefälligkeitswerte
für die
Matrix M zu betrachten.
-
In
Schritt S3.7 werden die Ressourcen R nacheinander für das Call-Center betrachtet
und in Schritt S3.8 wird die oben besprochene WENN-Aussage (1) überprüft, um zu
sehen, ob sie wahr ist. Wenn dem so ist, wird der Gefälligkeitswert
für die
zugehörige
Position l, r (in der Gefälligkeitswert-Matrix M)
in Schritt S3.9 auf Null gesetzt. Ansonsten geht die Routine zu
Schritt S3.10 weiter und der Gefälligkeitswert
Pl,r wird gemäß der Routine (2) berechnet, die
oben in Zusammenhang mit dem Gefälligkeitswert-Algorithmus
erläutert
wurde. Wie in Schritt S3.11 gezeigt, wird die Routine für alle Ressourcen
R wiederholt, so dass alle Gefälligkeitswerte
in der Matrix M berechnet werden.
-
Unter
Bezugnahme zurück
auf 6 werden die Werte für die Matrix M in Schritt S4.2 überprüft und der
Gewinner und der Zweitbeste werden in die Tabelle aufgenommen.
-
Somit
wird für
jedes Call-Center ein Gewinner und ein Zweitbester nacheinander
an das Querverbindungs-Programm geleitet, das die in 4 gezeigte
Querverbindungseinrichtung 10 betreibt. Das Querverbindungs-Programm
versucht, so viele der Gewinner und Zweitbeste zu verbinden, wie
möglich. Wenn
jedoch der Gewinner bereits verbunden ist, verwendet die Querverbindung
den Zweitbesten. Alternativ, wenn der Anruf in der ankommenden Gewinner-Leitung
aus welchem Grund auch immer in einen Frei-Zustand übergegangen
ist, verwendet das System den Zweitbesten. Sobald sie verbunden
ist, bleibt die Kombination aus ankommender Leitung und Ressource
verbunden, bis der Anruf beendet ist. Somit stellt die Querverbindungseinrichtung
neue Verbindungen auf der Grundlage des aktuellen Gewinners her,
wie von der Gefälligkeitswert-Matrix
angegeben wird (oder des Zweitbesten).
-
Wichtige Anrufe
-
Wichtige
Anrufe werden dort definiert, wo mit einer bestimmten Anrufklasse
dringend von einer bestimmten Ressource verfahren werden muss. Wichtigen
Anrufen kann automatisch ein bestimmter relativ großer Vorrangwert
zugewiesen werden, so dass sie umgehend mit einem hohen Gefälligkeitswert
versehen werden. Wichtige Anrufe haben einen weiteren zugehörigen Parameter,
der hier als Rückkehrzeit bezeichnet
wird. Die Rückkehrzeit
kann benutzerspezifisch sein und zeigt an, wie lange ein Anruf als ein
wichtiger Anruf betrachtet werden soll, und zeigt somit an, wie
lange eine bestimmte Ressource berücksichtigt werden soll, bevor
die anderen zu der Anrufklasse gehörenden Ressourcen ebenso in
Betracht gezogen werden. Wenn die bestimmte Ressource jedoch „nicht
angemeldet" ist,
kehrt der wichtige Anruf sofort zurück, um die anderen zu der Anrufklasse
gehörenden
Ressourcen in Betracht zu ziehen.
-
Wichtige
Anrufe können
statisch oder dynamisch definiert werden. Als ein Beispiel eines
statischen wichtigen Anrufs dient eine Situation, in der ein Anruf
von einem bestimmten Geschäftskunden
immer mit einem bestimmten Kontenverwalter (Ressource) verbunden
werden soll. Details statischer wichtiger Anrufe können in
die Konfigurations-Matrix eingegeben werden. Jedoch kann es wünschenswert sein,
die Information über
wichtige Anrufe als eine Ausnahme der in der Konfigurations-Matrix
gespeicherten Daten zu speichern, in ein davon getrenntes Verzeichnis.
Ein Beispiel eines dynamischen wichtigen Anrufs ist, wenn ein aus
der anrufenden Telefonnummer identifizierter bestimmter Anrufer
später
an demselben Tag für
eine Verbindung mit einer bestimmten Ressource für eine spätere Anfrage gekennzeichnet
wird, um sicherzustellen, dass der Anrufer eines späteren Anrufs
mit derselben Ressource verbunden wird. Dem Verzeichnis dynamischer
wichtiger Anrufe wird ein endlicher periodischer Speicherplatz,
oder ein „Lebenszeit-Merkmal,
zugewiesen, damit die Größe des Ausnahmeverzeichnisses
nicht unbeschränkt
wächst.
-
Der
Gefälligkeitswert-Matrix-Algorithmus kann
auf mehrere unterschiedliche Arten ablaufen, wie nun erläutert wird. 8 zeigt
die Gefälligkeitswert-Matrix
M mit den Ressourcen R als die Ordinate und die ankommenden Leitungen
L als die Abszisse. Der Algorithmus führt wiederholt eine Rastertyp-Abtastung
durch die Punkte l, r der Matrix durch, wobei er die Werte Pl,r für
jede Matrixposition nacheinander berechnet. Somit wird der Schritt
S3.10 für
jede Matrixposition nacheinander entlang der Rasterabtastung durchgeführt. In
einem Versuch wurde dieser Vorgang unter Verwendung eines auf 120
MHz PentiumTM basierenden Mikroprozessors
durchgeführt. Die
Matrix M besteht aus 240 Leitungen Li und
240 Ressourcen R mit 128 Leitungs-Klassen und 128 Ressource-Klassen.
Die Matrix war für
acht Call-Center, jedes mit 30 Leitungen und 30 Ressourcen, eingerichtet.
Die erhaltenen Ergebnisse zeigen, dass pro Call-Center zwei Querverbindungs-Empfehlungen
alle 128 ms vorgesehen werden könnten.
-
Eine
in 9 gezeigte alternative Verarbeitungstechnik verwendet
zwei parallel arbeitende Prozessoren, die zwei parallele Gefälligkeitsmatrizen M1,
M2 berechnen. Die Betriebsgeschwindigkeit ist dieselbe wie bei der
in 8 gezeigten Konfiguration, aber mit dem Vorteil,
dass das daraus resultierende System fehlertolerant ist, da jede
der von den parallelen Prozessoren erzeugten Empfehlungen verwendet
werden kann.
-
Ein
weiteres alternatives Verarbeitungsverfahren wird in 10 gezeigt,
wobei die Li × R-Matrix M in n Zeilen S1,
S2, Sn mit jeweils Lmax/n Leitungen angeordnet ist. Jede Zeile hat
Zugriff auf alle Ressourcen R1–Rn. Die Gefälligkeitswerte für jede Zeile werden
parallel von n parallelen Prozessoren berechnet. Somit werden, unter
Bezugnahme auf 10, der Gewinner und der Zweitbeste
für die
Zeile S1 mit dem Prozessor für
S1 berechnet. Der Gewinner und der Zweitbeste für die Zeile S2 werden von dem
Prozessor S2 berechnet, und ähnliche
parallele Berechnungen werden für
die anderen Zeilen ausge führt,
und der Gesamt-Gewinner und Gesamt-Zweitbeste wird für die Matrix
M ausgewählt.
-
In 11 ist
die Gefälligkeits-Matrix
M in Kacheln Tn aufgeteilt, von denen jede
Zugriff auf die Konfigurationsdaten für das gesamte System hat. Die
Gefälligkeitswert-Matrix-Berechnungen
werden parallel für
jede Kachel ausgeführt,
so dass für
die Kacheln jeweils individuelle Prozessoren vorgesehen sind. Die
einzelnen Gewinner und Zweitbeste für jede der Kacheln werden miteinander
verglichen, um so eine Gesamtausgabe-Empfehlung zu liefern. In der 11 sind
die Kacheln als zusammenhängend
gezeigt, aber als Alternative können
sich die Kacheln überlappen
oder von unterschiedlicher Größe sein. Größere Kacheln
können
für Bereiche
der Matrix verwendet werden, wo wenig Verkehr erwartet wird.
-
In 12 verwendet
die Konfiguration eine verteilte Datenverarbeitungsumgebung (distributed computing
environment – DCE),
in der mehrere parallele Algorithmus-Prozessoren vorgesehen sind,
die bestimmten Call-Centern, Kacheln oder Zeilen zugeordnet sind.
Die Zuweisung der Prozessoren kann dynamisch variiert werden, um
Veränderungen
der Ausnutzung der verschiedenen Call-Center zu berücksichtigen.
Somit ist, wie in 12 gezeigt ist, eine Vielzahl
von Gefälligkeitswert-Matrix-Algorithmus-Prozessoren
P1 – Pn
+ 1 mit einer DCE 21 verbunden, um einen dynamischen Pool
von Rechenmaschinen bereitzustellen. Ein Datenerfassungs-Server 22 beliefert
die DCE 21 mit aktueller Information hinsichtlich der Leitungen
und Ressourcen Li, R. Die Querverbindungseinrichtung
(Bezugszeichen 10 in 4) wird
als Antwort auf Daten von den Algorithmus-Prozessoren P von einem
Server 23 gesteuert. Ein Unterstützungssystem-Server 24 ist
für den
entfernten Zugriff durch Kontrollpersonal der Dienstverwaltung und
Netzverwaltung vorgesehen, zum Beispiel, zur Fehlerbehandlung und
zum Einrichten neuer Kunden. Die Wahl der von den einzelnen Algorithmus-Prozessoren
P verarbeiteten Call-Center, Kacheln oder Zeilen wird von einem
Verwalter/Anrufverteiler 25 gesteuert, und den aktuellen Status
dieses Systems betreffende Daten sind in dem Server 26 gespeichert.
Das in 12 gezeigte System kann über ein
großes
geographisches Gebiet verteilt sein, z. B. über ein ganzes Land oder einen ganzen
Staat. Darüber
hinaus ermöglicht
die Architektur, dass zusätzliche
Prozessoren einfach hinzugefügt
werden können,
um, wenn erforderlich, zusätzliche
Call-Center zur Verfügung
zu stellen. Der Verwalter/Anrufverteiler 25 überprüft regelmäßig die jedem
Call-Center zugeordnete Verarbeitungskapazität und kann Algorithmus-Prozessoren
neu zuordnen, um sicherzustellen, dass die Rechnungsleistung dort
zugewiesen wird, wo sie notwendig ist, um zufriedenstellende Antwortzeiten
zu erreichen. Die Algorithmus-Prozessoren können über das Land verteilt sein
und wie erforderlich zugewiesen werden.
-
13 zeigt
die Konfiguration der statischen Daten, die von dem Gefälligkeitswert-Matrix-Algorithmus
verarbeitet werden. Es wird zu sehen sein, dass die statischen Daten
auf der Grundlage von Call-Centern 28,
abgehenden Leitungen (Verbindungsleitungen) Lo,
ankommenden Leitungen Li, Ressource-Klassen 29,
Anmeldungs-IDs 30, Anrufklassen 31, Ausstattungstypen 32,
wichtigen Anrufen 33, Plänen 34, Planelementen 35 und
Plan-Scheduler 36 angeordnet sind.
-
Es
wird zu sehen sein, dass durch diese Konfiguration Call-Center zur
Verwendung mit bestimmten Sätzen
von Ressourcen, Anrufklassen und wichtigen Anrufen eingerichtet
werden können.
Darüber
hinaus ermöglichen
die Pläne 34,
Planelemente 35 und Plan-Scheduler 36, dass bestimmte
wichtige Anrufe zu unterschiedlichen Tageszeiten und bestimmte Prioritätswerte
zu unterschiedlichen Zeiten implementiert werden.
-
In
den bisher beschriebenen Ausführungsbeispielen
können
die dynamischen Daten wie in 14 gezeigt
konfiguriert sein, wobei die dynamischen Leitungs-Daten, Ressource-Daten
und Daten wichtiger Anrufe konfiguriert sind, wie jeweils in den Tabellen
1.1, 1.2 und 1.3 gezeigt wird. Jeder Gefälligkeitswert-Matrix-Algorithmus-Prozessor
fragt somit Daten aus den verschiedenen statischen und dynamischen
Tabellen ab, um die Gefälligkeitswerte
zu berechnen.
-
Eine
alternative Konfiguration der Tabellen, welche die von den Gefälligkeitswert-Algorithmus-Prozessoren
durchgeführte
Verarbeitung beschleunigt, wird nun erläutert. Bei dieser Modifizierung
sind die statischen und dynamischen Daten in Form von mit den einzelnen
ankommenden Leitungen verbundenen Anrufobjekten und mit den Ressourcen
verbundenen angemeldeten Objekten angeordnet. Der Gefälligkeitswert-Matrix-Algorithmus
ist derart konfiguriert, dass die Anrufobjekte ständig nach
den am meisten gefälligen
angemeldeten Objekten suchen. In 15 gibt
es mehrere mit ankommenden Leitungen verbundene angemeldete Objekte
CO1–COn,
die sich in dem Alarm-Zustand befinden. Ähnlich werden jedes Mal angemeldete
Objekte LO1–LOn
erzeugt, wenn eine Ressource R in einen freien Zustand eintritt.
Die Anrufobjekte werden vernichtet, wenn die relevante Leitung frei
wird oder von dem Querverbindungs-Programm für eine Querverbindung akzeptiert
wird. Die angemeldeten Objekte werden vernichtet, wann immer eine
Ressource abgemeldet ist oder von dem Querverbindungs-Programm für eine Querverbindung
akzeptiert wird. Beispiele von Tabellen, welche die Anrufobjekt-Daten und
die „angemeldetes
Objekt"-Daten aufweisen, werden
in den Tabellen 1.4 und 1.5 in der 16 gezeigt.
Während
der Initialisierung werden alle wichtigen statischen Konfigurations-Daten
zusammen mit den wichtigen dynamischen Daten in die Tabelle für das Objekt
eingegeben. Dies hat den Vorteil, dass die Konfigurations-Daten
nur einmal nachgeschlagen werden, unabhängig davon, wie viele Berechnungsschritte
später
durchgeführt
werden. Da die Gefälligkeitswert-Matrix
viele Werte von Null-Daten aufgrund der Tatsache aufweist, dass
sich viele der ankommenden Leitungen nicht in dem Alarm-Zustand
befinden und die Wahrscheinlichkeit relativ gering ist, dass sich
die Ressourcen in einem freien Zustand befinden, wird die Anzahl
von anrufenden und angemeldeten Objekten darüber hinaus im Vergleich zu der
Anzahl der ankommenden Leitungen und Ressourcen signifikant reduziert.
-
Eine
andere Weise zur Identifizierung der Positionen von höchster Gefälligkeit
in der Gefälligkeitswert-Matrix
M wird nun unter Bezugnahme auf 17 erläutert. Bei
dieser Anordnung ist der Gefälligkeitswert-Algorithmus
derart konfiguriert, die Aktivität
eines „Schwarms
von Ameisen" nachzuahmen, die
sich in dem L-R-Raum der Matrix M bewegen. Eine Anzahl von „Ameisen"-Objekten mit jeweils
X- und Y-Koordinaten-Eigenschaften sind derart konfiguriert, sich
auf der Suche nach „Futter" zufällig in
der Matrix M zu bewegen, wobei das „Futter" als die Matrix-Positionen mit von Null
verschiedenem Gefälligkeitswert
definiert ist. Sobald eine der „Ameisen" Futter erhalten hat, ruft sie einen
Freund, d. h. eine der anderen „Ameisen" in dem Schwarm, in dieses Gebiet herbei.
Auf diese Weise wird die Rechenleistung an Positionen konzentriert,
an denen die Querverbindungen am vielversprechendsten erscheinen.
In 18 bewegen sich somit die Software-„Ameisen" entlang der Wege 38, 39,
bis sie den Ort 40 erreichen, an dem sie „Futter" finden, d. h. einen
von Null verschiedenem Gefälligkeitswert
in der Matrix.
-
In
einer Abänderung
können
die Ameisen ersetzt werden durch Software für halbautonome künstliche
Lebensformen. Jede Lebensform wird von einem kleinen Segment interpretierten
Codes dargestellt, der um Ausführungszeit
und Speicher konkurriert, während
er sich in dem L × R-Raum
in der Matrix M bewegt. Wenn ein von Null verschiedener Gefälligkeitswert
gefunden ist, wird der glücklichen
Lebensform auf Kosten der anderen Lebensformen mehr Ausführungszeit
und Speicher zugewiesen. Darüber
hinaus wird es den erfolgreichen Lebensformen ermöglicht,
sich selbst zu reproduzieren, d. h. sich zu kopieren, und gelegentlich
durch Einführen einer
Fehler-, einer Lösch-
oder einer neuen Zeile in den interpretierten Software-Code zu mutieren.
Einige der Kinder werden besser als die Eltern arbeiten. Andere
finden in einer zumutbaren Zeit keine „Belohnung" und verschwinden, d. h. Überleben
der Tüchtigsten.
Dieser Ansatz basiert auf Ideen, die von J. F. Martin in British
Telecommunications Engineering, Vol. 13, Teil 4, Januar 1995, S.
319 dargestellt werden.
-
Eine
weitere Alternative besteht darin, ein neuronales Netz zu verwenden,
wie in 18 gezeigt ist. Das Netzwerk
weist eine Eingabeebene 41 auf, die in diesem Beispiel
1002000 Neuronen 42 umfasst, von denen jedes Daten von
den Leitungs-Zeitmessern 12, den Ressourcen-Zeitmessern 14 und
anderen Eingaben erhält,
die Prioritätsdaten abhängig von
den Anrufklassen und der Ressourcen-Klasse erhalten. Jeder Eingang
kann Mehrbitwerte erhalten, z. B. 16-bit-Werte. Die Neuronen 42 sind
mit Neuronen 43 einer verdeckten Ebene verbunden, die mit
Neuronen 44 in einer Ausgabeebene verbunden sind. Die Ausgabeebene
umfasst eine Konfiguration 45, um den höchsten Gefälligkeitswert zur Verbreitung
als erste Empfehlung für
das Querverbindungs-Programm auszuwählen. Ein Beispiel der Baueinheiten,
die zur Bildung des neuronalen Netzes verwendet werden können, ist
der „Hannibal"-Chip, der von Myers,
Vincent und Orrey, Neural Computing 5, 1993, S. 25–37 beschrieben
wird. Ebenfalls wird Bezug genommen auf „A High Performance Digital
Processor for Implementing Large Artificial Neural Networks", Myers, Vincent,
Cox, Harbridge, Orrey, Williamson und Naylor, BT Technology Journal
Vol. 10, Nr. 3, Juli 1992, S. 134. Hannibal ermöglicht 16-bit-Wichtungen für jeden
Neuronen-Eingang.
-
Eine
weitere Art der Berechnung der Gefälligkeitswerte in der Matrix
M liegt in der Verwendung einer hybriden Lösung, basierend auf einer Kombination
der oben beschriebenen Techniken.
-
In 19 wird
die Gefälligkeitswert-Matrix gezeigt,
in der die unter Bezugnahme auf 15 beschriebene
Objektorientierung für
Call-Center Cc verschiedener
Größe angenommen
wird. Ein typisches Call-Center Cc1, schattiert gezeigt, benötigt 40 Leitungen
und Ressourcen, wohingegen einige größer sind, z. B. Cc2, die Call-Center
der Größe 300 Leitungen × 300 Ressourcen
benötigen
würden.
Die Call-Center können
wie in der in 19 gezeigten L × R-Matrix
angeordnet sein.
-
In
einer in 20 gezeigten Alternative werden
parallele Prozessoren zur Einrichtung paralleler Matrizen M verwendet,
um eine zusätzliche
Elastizität
vorzusehen. Jede Matrix umfasst die in 20 gezeigte
Call-Center-Konfiguration.
-
In 21 ist
die Matrix auf die Art in Streifen S angeordnet, wie oben unter
Bezugnahme auf 11 beschrieben wurde. Jedoch
haben die gezeigten einzelnen Call-Center jeweils unterschiedliche
Größen mit
einer unterschiedlichen Anzahl von Leitungen und Ressourcen.
-
In 22 wird
eine Konfiguration mit Kacheln gezeigt, die auf die oben unter Bezugnahme auf 12 beschriebene
Art verarbeitet wird. Diese Anordnung ist insbesondere geeignet
für sehr
große Call-Center und in dem
gezeigten Beispiel wird eine Call-Center-Matrix von 1530 Leitungen × 1530 Ressourcen
gezeigt, welche die einzelnen Kacheln umspannt. Zusätzlich sind
mehrere kleinere Call-Center gezeigt.
-
23 zeigt,
wie die verschiedenen Rechentechniken in eine einzige DCE kombiniert
werden können, ähnlich der
oben unter Bezugnahme auf 12 beschriebenen.
-
Nochmals
unter Bezugnahme auf 4 wird eine mit dem Prozessor 11 verbundene
Anzeige 45 gezeigt, die zur Anzeige der Konfiguration für jedes Call-Center
verwendet wird. Die Anzeige 45 weist typischerweise einen
Video-Monitor zusammen mit einem Personal Computer auf, aber andere
geeignete Anzeigevorrichtungen sind für Fachleute leicht ersichtlich.
Ein Beispiel der bereitgestellten Anzeige ist in 24 gezeigt.
Die Anzeige zeigt, dass drei ankommende Verbindungsleitungen, die
den ankommenden Leitungen Li entsprechen,
zusammen mit drei abgehenden Leitungen Lo mit
dem Call-Center verbunden sind. Drei Ressourcen R, die die Telefonisten
David Donnelly und Phill Hunter und eine Voice-Mail-Vorrichtung
VM1 umfassen, sind mit den abgehenden Leitungen verbunden. Das Call-Center ist
konfiguriert, drei Pläne
P durchzuführen.
Es werden drei Anrufklassen gezeigt, zusammen mit drei Ressource-Klassen.
Es wird zu sehen sein, dass die Ressource David Donnelly (OP1) in
die Ressource-Klasse eines Telefonisten fällt, wohingegen Phill Hunter
in die Ressource-Klasse eines Vorgesetzten fällt. Diese beiden Ressource-Klassen sind dazu
imstande, mit unterschiedlichen Anrufklassen umzugehen.
-
Die
Kombinationen aus Anrufklasse und Ressource-Klasse, die unterschiedliche
Prioritäten verursachen,
können
unter Verwendung eines Mapping-Tools programmiert werden, wie in 25 gezeigt
wird. Die Anzeige des Mapping-Tools erscheint, wenn eine bestimmte
Plannummer auf der Anzeige 45 (24)
ausgewählt
wird. Die in 24 gezeigte Anzeige
kann über
eine manuelle Steuerung 46 (4) bedient
werden, die typischerweise eine Maus oder eine herkömmliche
Tastatur aufweist.
-
Die
in 25 gezeigte Anzeige besteht aus einem zentralen
zweidimensionalen Gitter 47 aus Anrufklasse und Ressource-Klasse.
Der zu bestimmten Kombinationen aus Anrufklasse und Ressource-Klasse gehörende Prioritätswert wird
auf dem Gitter dargestellt in Form einer Farbe, welche die Dringlichkeit
des Prioritätswert
anzeigt. Auf der rechten Seite der Anzeige zeigt eine Farbenskala 48 die
Verzögerung
in Sekunden an, die zu den angezeigten Prioritätswerten gehört.
-
Auf
der linken Seite der Anzeige zeigt eine Farbenskala den zu der Anrufklasse
gehörenden Vorrang
an. Der Vorrang der Anrufklassen wird in der Anzeige 50 gezeigt,
entsprechend der für
die Anzeige 47 gezeigten Zeile der Anrufklassen. Der zu
einem bestimmten Vorrangwert gehörende
Vorsprung in Sekunden, die in Form von Farben gekennzeichnet sind,
wird in der Anzeige 49 gezeigt. Die Anzeige gibt den Plan
1 – Montagmorgen
an, der in der 24 in der Plananzeige
P gezeigt ist. Entsprechende Anzeigen für die anderen Pläne, z. B.
Montagnachmittag, sind als davon getrennte Anzeigen erhältlich.
Somit kann ein Betreiber geeignete Pläne mit unterschiedlichen Prioritäten und
Vorrängen
aufstellen, um verfügbare
Ressourcen zu optimieren. Darüber
hinaus kann der Manager des Call-Centers die Pläne individuell gestalten, um
täglich Änderungen
zu berücksichtigen,
zum Beispiel landesweite Feiertage, kranke Telefonisten oder entstandene
Ausrüstungsprobleme.
Darüber
hinaus können
die Pläne
online auf der Grundlage von Fachinformation, die dem Manager des
Call-Centers zur Verfügung
steht, modifiziert werden.
-
Viele
Modifizierungen an der beschriebenen Vorrichtung fallen in den Bereich
der beanspruchten Erfindung. Während
die Vorrichtung zum Beispiel beschrieben wurde als Teil eines öffentlichen
Telefonnetzes, kann sie sich auch in einer Hauszentrale in den Räumlichkeiten
des Kunden befinden, wobei sich die Ressourcen zumindest zum Teil
in den Räumlichkeiten
des Kunden befinden. Aufgrund der der Vorrichtung gemäß der Erfindung
eigenen Flexibilität
können
viele unterschiedliche Konfigurationen verwendet werden.
-
Die
Erfindung kann auch in einer Internet-Umgebung verwendet werden,
zum Beispiel in Beziehung zu einem lokalen Netzwerk (LAN) oder einem
Weitverbundnetz (WAN), um Anrufe (d. h. Echtzeit-Protokoll-Verbindungen) an bestimmte
Orte in dem LAN zu leiten, wobei offensichtlich ist, dass auf die
herkömmliche
Weise Pakete, welche die Verbindung oder den Anruf darstellen, durch
das Netz entlang verschiedener Wege zu einem gemeinsamen Ziel gehen
können.
Es ist offensichtlich, dass eine Paketdaten-Speichervermittlung über das
Internet zur Übertragung
von Meldungen verwendet werden kann, die Sprache, Video oder andere
Formen von Meldungsdaten aufweisen können, und dass die ankommenden
Meldungen z. B. an einem Server an mit dem LAN verbundene unterschiedliche
Ressourcen geleitet werden können.
Die Erfindung kann auch eine Anwendung auf Servern für Anbieter
von Domains für
das Internet oder das World Wide Web finden.
-
Während in
den beschriebenen Beispielen der Erfindung ein Gewinner und ein
Zweitbester aus jedem Durchgang durch die Gefälligkeits-Matrix M gewählt wird,
ist es möglich,
einen weniger prozessorintensiven Ansatz durchzuführen, der ähnliche
Ergebnisse liefert wie „simulated
annealing" in einem iterativen
Prozess. Bisher wurde vorgeschlagen, Störungen in ein iteratives System
einzubringen, um zu verhindern, dass das System in lokalisierten
Maxima und Minima festsitzt und dadurch ein nicht optimales Ergebnis
erreicht. In der vorliegenden Erfindung kann ein ähnliches
Ergebnis durch schnelles mehrmaliges Durchsuchen der Gefälligkeits-Matrix
erreicht werden, unter der Vorraussetzung, dass sich die ankommenden
und abgehenden Daten in den Leitungen Li und
Lo während
der Dauer der aufeinander folgenden Durchsuchungen nicht wesentlich ändern. Für jede Durchsuchung
wird der Gewinner und der Verlierer berechnet, aber der Gewinner
wird bewusst zurückgewiesen.
Am Ende einer Vielzahl von Durchsuchungen werden der Gewinner und
der Zweitbeste ausgewählt,
indem die Optionen gewählt werden,
die zu den niedrigsten Gefälligkeitswerten insgesamt
für die
Folge von Durchsuchungen der Matrix führen.