Simio Sync Registration is now open! Register for the May 14 -15, 2025 event!
Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

Skip to content
Simio background artwork

Simio-Datentabellen für die datengesteuerte Modellierung verwenden

Adam Sneath

September 19, 2024

Im vorangegangenen Beitrag dieser Serie haben wir erwähnt, dass sich die datengesteuerte Modellierung in Simio auf zwei wichtige Schritte reduzieren lässt: die Übertragung von Daten in Simio und die Verwendung der Daten zur Steuerung von Simio-Modellobjekten und -Prozessen. In diesem Beitrag konzentrieren wir uns darauf, wie Simio-Datentabellen verwendet werden können, um die datengesteuerte Modellierung und die Integration mit externen Anwendungen zu erleichtern.

Simio Datentabellen speichern tabellarische Daten in einer Standard-Zeilen/Spalten-Struktur, in der einzelne Datenelemente mit den Standardfunktionen Table[Row, Column] oder Table[Row].ColumnName dynamisch referenziert werden können. Die eigentliche Stärke liegt jedoch in der Verwendung von Row References, um bestimmte Tabellenzeilen auf Simio Objects oder Tokens abzubilden. Sobald eine Row Reference gesetzt ist, werden die Datenelemente über den Table.ColumnName referenziert und die spezifische Tabellenzeile wird aus der Row Reference abgeleitet. Dies erleichtert die datengesteuerte Modellierung, bei der ein großer Teil der Modelllogik und der Eigenschaften über Datentabellen festgelegt wird.

Erste Schritte

Betrachten Sie ein Systemmodell für den Kundenservice, bei dem Server-Objekte zur Darstellung einzelner Kundenservice-Prozesse verwendet werden, Entitäten zur Darstellung von Kunden und die Bearbeitungszeiten auf den Servern vom Kundentyp und dem Schritt in der Bearbeitungsfolge des Kunden abhängen. Indem bei der Erstellung einer Entität eine Zeilenreferenz gesetzt wird und der Kundentyp bekannt ist, verwendet die nachfolgende Verarbeitung im Modell die Zeilenreferenz, um direkt auf die kundenartspezifischen Daten zuzugreifen. Somit sind die Eigenschaften des Serverobjekts unabhängig vom Kundentyp, da die typspezifischen Daten in der Tabelle gespeichert sind! Dadurch entfällt die Notwendigkeit, mit bedingter Logik auf den Kundentyp bei jedem Server zu reagieren. Darüber hinaus ist es einfach, neue Kundentypen hinzuzufügen und mit verschiedenen Verarbeitungseigenschaften, Kundenankunftsraten und der Mischung von Kundentypen zu experimentieren, indem Sie die Datentabellen und nicht die Eigenschaften und Logik des Modellobjekts direkt bearbeiten.

Definieren der Tabellenstruktur

Das Erstellen von Datentabellen ist ein einfacher Prozess, bei dem Sie die Tabellenstruktur definieren, indem Sie den Datentyp für jede Spalte angeben. Simio unterstützt eine Vielzahl von Datentypen, darunter Standardtypen wie Integer, Real, String, DateTime und Boolean sowie Simio-spezifische Typen wie Expression, Object reference, Element reference und viele andere. In der Kundentyp-Tabelle unseres Kundendienstsystems könnten wir beispielsweise den Kundentyp über eine Object Reference-Spalte, die Bearbeitungszeit für diesen Kundentyp über eine Expression-Spalte und die Kundenpriorität über eine Integer-Spalte definieren. In diesem Fall wird bei der Erstellung einer Kundenentität der Objekttyp in der Tabelle angegeben und nicht fest im Quellobjekt kodiert. Wenn die Entität bei einem Server ankommt, werden die Priorität und die Bearbeitungszeit aus der Tabelle gelesen und nicht fest im Server-Objekt kodiert.

Daten in die Tabelle eingeben

Nachdem Sie die Struktur einer Tabelle definiert haben, gibt es drei grundlegende Möglichkeiten, Daten in die Tabelle einzugeben – manuell, wie bei einer Tabellenkalkulation; durch Kopieren und Einfügen aus der Windows-Zwischenablage (z.B. Kopieren aus einem Excel-Arbeitsblatt in die Zwischenablage und Einfügen aus der Zwischenablage direkt in eine Simio-Datentabelle); und durch Importieren/Exportieren von Daten mit Hilfe einer Datenbindung. Die manuelle Dateneingabe und das Kopieren und Einfügen von Daten sind einfach zu handhabende Methoden für das Hinzufügen/Bearbeiten relativ kleiner Datenmengen, können aber bei großen Mengen und/oder häufig wechselnden Daten mühsam werden. Hier kommt die Verwendung von Datenbindungen ins Spiel!

Datenbindungen verbinden Simio-Datentabellen mit externen Datenquellen wie CSV-Dateien, Excel-Arbeitsmappen, Datenbanken und Web-API-URLs zum einfachen Importieren und Exportieren. Ein Beispiel für einen Anwendungsfall mit unserem Modell für ein Kundenservicecenter könnte darin bestehen, eine Simio-Ankunftstabelle an eine Datenbank mit historischen Kundenankünften zu binden und das Simio-Modell zu verwenden, um mit alternativen Systemkonfigurationen unter Verwendung der tatsächlichen Kundenankunftsdaten zu experimentieren. Ein anderer Anwendungsfall könnte darin bestehen, eine Exportbindung zu verwenden, um Daten aus dem Modelllauf in eine Excel-Arbeitsmappe zu schreiben, um sie mit einem externen Datenanalysetool wie PowerBI oder Tableau detailliert zu analysieren. Die Verwendung von Data Bindings vereinfacht die Dateneingabe/-ausgabe erheblich und bietet einen Kanal zur Integration von Simio-Modellen in andere Desktop-, Unternehmens- und Cloud-basierte Anwendungen.

Schließlich implementieren Simio Data Tables das relationale Datenmodell mit Schlüsselspalten und Fremdschlüsseln. Dadurch können Sie verwandte Tabellen über gemeinsame Felder „verbinden“, so dass, wenn Sie eine Zeilenreferenz in einer Tabelle setzen, die Zeilenreferenzen für die verwandten Zeilen in den verbundenen Tabellen automatisch gesetzt werden. In unserem Beispiel für den Kundenservice könnte die Tabelle mit den Kundentypen mit der Tabelle mit den Kundenankünften nach Kundentyp verknüpft werden, so dass wir die Daten zu den Kundentypen in einer Tabelle und die Daten zu den Kundenankünften in einer anderen Tabelle speichern können, so dass wir keine Daten replizieren müssen, aber dennoch direkten Zugriff auf alle Daten haben, die wir für einen bestimmten Kunden oder Kundentyp benötigen.

Erfolg mit datengesteuerter Modellierung

Die datengesteuerte Modellierung ist ein sehr leistungsfähiges Paradigma, das bei allen Modellen, die wir bei Simio intern entwickeln, standardmäßig zum Einsatz kommt. Die Verwendung von datengesteuerter Modellierung und relationalen Daten bildet die Grundlage für die datengenerierte Modellierung mit benutzerdefinierten Objekten und Simio-Vorlagen – beides wird in späteren Beiträgen behandelt.

Um mehr über die datengestützte Technologie von Simio zu erfahren, klicken Sie hier.