0 / 0
Zurück zur englischen Version der Dokumentation
Hinzufügen von Multi-Konzept-Beschränkungen und benutzerdefinierten Entscheidungen: Decision Optimization Schichtzuweisung
Letzte Aktualisierung: 21. Nov. 2024
Bedingungen und angepasste Entscheidungen mit Decision Optimization Modeling Assistant erstellen

Dieses Beispiel Decision Optimization Modeling Assistant zeigt Ihnen, wie Sie Iterationen mit mehreren Konzepten verwenden, das Schlüsselwort associated in Bedingungen verwenden, wie Sie Ihre eigenen angepassten Entscheidungen definieren und logische Einschränkungen definieren. Zur Veranschaulichung wird ein Ressourcenzuordnungsproblem ( ShiftAssignment) verwendet und das vollständige Modell mit Daten wird in den DO-Beispielebereitgestellt.

Vorbereitende Schritte

Anforderungen
Zum Bearbeiten und Ausführen von Decision Optimization -Modellen müssen die folgenden Voraussetzungen erfüllt sein:
Administrator -oder Editor -Rollen
Sie müssen über die Rolle Admin oder Editor im Projekt verfügen. Viewer von gemeinsam genutzten Projekten können nur Experimente anzeigen, aber nicht ändern oder ausführen.
watsonx.ai Laufzeitdienst
Sie müssen einen watsonx.ai Runtime-Dienst haben, der mit Ihrem Projekt verbunden ist. Sie können eine hinzufügen, wenn Sie ein Decision Optimization Experimenterstellen.
Bereitstellungsbereich
Sie benötigen einen Bereitstellungsbereich, der Ihrem Decision Optimization Experimentzugeordnet ist. Sie können einen Bereitstellungsbereich auswählen, wenn Sie ein Decision Optimization Experimenterstellen.

Informationen zu dieser Task

In diesem Beispiel geht es um die Zuordnung von Mitarbeitern zu verschiedenen Schichten, und jeder Tag erfordert, dass eine erforderliche Anzahl von Mitarbeitern auf Abruf sein muss. Die in diesem Beispiel verwendeten Dateien sind in DO-samplesverfügbar.

Dieses Video enthält eine visuelle Methode zum Erlernen der Konzepte und Tasks in dieser Dokumentation. Nachdem Sie das Beispiel in Ihrem Decision Optimization Experimentgeladen haben, können Sie dem Video folgen.

Video-Haftungsausschluss: Einige kleinere Schritte und grafische Schritte in diesem Video können von Ihrer Plattform abweichen. Auch die Benutzerschnittstelle wird häufig verbessert.

Vorgehensweise

So laden Sie das Beispiel herunter und öffnen es:

  1. Laden Sie die Datei ShiftAssignment.zip aus dem Unterordner Model_Builder unter DO-samplesherunter. Wählen Sie den entsprechenden Produkt- und Versionsunterordner aus.
  2. Öffnen Sie Ihr Projekt oder erstellen Sie ein leeres Projekt.
  3. Wählen Sie die Registerkarte Assets aus
  4. Wählen Sie Neues Asset > Optimierungsprobleme lösen im Bereich Mit Modellen arbeiten aus.
  5. Klicken Sie auf Lokale Datei im Fenster Optimierungsprobleme lösen , das geöffnet wird.
  6. Suchen Sie lokal nach dem heruntergeladenen ShiftAssignment.zip -Archiv und wählen Sie es aus. Klicken Sie auf Öffnen. Alternativ können Sie Drag and Drop verwenden.
  7. Wenn Sie noch keinen watsonx.ai Runtime-Dienst mit Ihrem Projekt verknüpft haben, müssen Sie zunächst einen Dienst für Machine Learning hinzufügen auswählen oder erstellen, bevor Sie einen Bereitstellungsbereich für Ihr Experiment auswählen.
  8. Klicken Sie auf Create.
    Es wird ein Decision Optimization -Modell mit demselben Namen wie das Beispiel erstellt.
  9. Öffnen Sie das Szenariofenster und wählen Sie das Szenario AssignmentWithOnCallDuties aus.

Ergebnisse

In der Ansicht Daten vorbereiten des AssignmentWithOnCallDuties Szenarioswerden die importierten Datenassets angezeigt. Diese Tabellen umfassen die Schichten und die Mitarbeiter, die diesen Schichten zugewiesen werden müssen, sowie die Tage mit ihren erforderlichen Bereitschaftsaufgaben.

Datenansicht mit den Personalzuordnungsdaten vorbereiten

Mehrkonzeptiterationen verwenden

Informationen zu dieser Task

Angenommen, Sie möchten, dass Ihre Modellformulierung die Regel zum Ausdruck bringt, dass jeder Mitarbeiter nicht mehr als eine Schicht pro Tag arbeiten darf. Zum Beispiel darf ein Mitarbeiter nicht zwei Schichten am selben Tag zugeordnet werden. Sie können, wie in dieser Modellformulierung gezeigt, eine Einschränkung für jeden Tag der Woche verwenden.

Mehrere Einschränkungen, eine für jeden Tag, nur eine Schicht pro Mitarbeiter pro Tag zu formulieren

Das Auflisten von Einschränkungen für jeden Tag der Woche ist jedoch umständlich: Wenn Ihr Modell auf Tagen im Jahr basiert, müssen Sie Hunderte dieser Arten von Einschränkungen auflisten. Die folgende Prozedur zeigt, wie Sie Iteration mit mehreren Konzepten und das Schlüsselwort associated verwenden, um Iteration über mehrere Konzepte auszudrücken. So können Sie eine solche Regel mit nur einem Ausdruck ausdrücken.

Vorgehensweise

Führen Sie die folgenden Schritte aus, um eine Iteration mit mehreren Konzepten zu verwenden.

  1. Klicken Sie in der Seitenleiste auf Modell erstellen , um Ihre Modellformulierung anzuzeigen.
    Die Modellformulierung zeigt die Absicht, Mitarbeiter Schichten zuzuweisen, samt ihren Zielen und Bedingungen.
  2. Erweitern Sie die Bedingung For each Employee-Day combination , number of associated Employee-Shift assignments is less than or equal to 1.

Ergebnisse

Einschränkung für Mitarbeiter-Tag-Kombination erweitert

Diese Einschränkung kombiniert Mitarbeiter und Tage mit dem Schlüsselwort associated, sodass der Ausdruck sowohl über den Mitarbeiter als auch über den Tag iteriert. Wie Sie sehen, entspricht der Mitarbeiter in der Mitarbeiter-Tag-Kombination dem Mitarbeiter in der Mitarbeiter-Schicht-Zuweisung. Auch der Tag in der Mitarbeiter-Tag-Kombination entspricht der Eigenschaft „Tag" in der zugewiesenen Schicht. So werden die Kombinationen richtig und automatisch für Sie bearbeitet.

Mit dieser Iteration mit mehreren Konzepten können Sie neue Gruppen von Regeln angeben, die verschiedene Konzepte kombinieren.

Angepasste Entscheidungen definieren

Informationen zu dieser Task

Angenommen, Sie möchten auch Bereitschaftsaufgaben zuweisen. Sie könnten ein weiteres Modell mit der Absicht erstellen, Mitarbeiter Aufgaben auf Abruf zuzuordnen, aber dann wären Sie nicht in der Lage, Abhängigkeitsregeln zwischen den zwei Modellen anzugeben. Durch Hinzufügen angepasster Entscheidungen zu Ihrem vorhandenen Modell, wie in diesem Beispiel gezeigt, können Sie Abhängigkeiten zwischen Schichtzuweisungen und Bereitschaftsaufgaben definieren. Hier heißt die angepasste Entscheidung OnCallDuties.

Vorgehensweise

Führen Sie die folgenden Schritte aus, um angepasste Entscheidungen zu definieren:

  1. Klicken Sie auf Modell erstellen , um die Modellformulierung des AssignmentWithOnCallDuties -Szenariosanzuzeigen.
    Modellansicht mit Schichtzuordnungsformulierung erstellen

    Die angepasste Entscheidung OnCallDuties wird im zweiten Ziel verwendet. Mit diesem Ziel wird sichergestellt, dass die Anzahl der Bereitschaftsaufgaben gleichmäßig auf die Mitarbeiter verteilt wird.

    Die Einschränkung Vorgabe für Rufdienst stellt sicher, dass die Anforderungen für den Bereitschaftsdienst, die in der Tagestabelle aufgelistet sind, erfüllt werden.

    Die folgenden Schritte zeigen, wie diese angepasste Entscheidung OnCallDuties definiert wurde.

  2. Öffnen Sie das Fenster Einstellungen und stellen Sie fest, dass die Option Entscheidungen darstellen und bearbeiten auf true gesetzt ist (oder auf "true" gesetzt ist, wenn der Standardwert "false" ist).

    Diese Einstellung fügt Ihrem Fenster Zum Modell hinzufügen eine Registerkarte Entscheidungen hinzu.

    Registerkarte 'Entscheidungen' im Teilfenster 'Zu Modell hinzufügen' mit zwei Absichten

    Hier sehen Sie, dass OnCallDuty als Zuweisungsentscheidung angegeben ist (um Mitarbeitern Bereitschaftsaufgaben zuzuweisen). Seine beiden Dimensionen werden mit Verweis auf die Datentabellen Day und Employee definiert. Das bedeutet, dass Ihr Modell Mitarbeitern auch Bereitschaftsaufgaben zuweisen wird. Die Mitarbeiter-Schicht-Entscheidung steht in Zusammenhang mit der ursprünglichen Absicht.

  3. Optional: Geben Sie im Feld [zur Dokumentation] einen eigenen Text zur Beschreibung der OnCallDuty ein.
  4. Optional: Um Ihre eigene Entscheidung auf der Registerkarte Entscheidungen zu erstellen, klicken Sie auf Namen eingeben, geben Sie einen Namen ein und drücken Sie die Eingabetaste.
    Es wird eine neue Entscheidung (Absicht) mit diesem Namen mit einigen hervorgehobenen Feldern erstellt, die über die Dropdown-Menüs ausgefüllt werden müssen. Wenn Sie beispielsweise Zuweisung als Entscheidungstypauswählen, werden zwei Dimensionen erstellt. Da bei einer Zuweisung mindestens eine Sache einer anderen zugeordnet werden muss, müssen mindestens zwei Dimensionen definiert werden. Verwenden Sie die Felder Tabelle auswählen, um die Dimensionen zu definieren.

Ergebnisse

Sie sind nicht mehr darauf beschränkt, nur Entscheidungen zu verwenden, die aus Ihrer Absicht abgeleitet wurden. Sie können jetzt eigene angepasste Entscheidungen definieren, indem Sie die erweiterten Einstellungen und Entscheidungsregisterkarten verwenden, auf denen Sie Ihren Entscheidungstyp und seine Dimensionen (Datentabelle oder Spalte) auswählen. Anschließend können Sie neue Regeln und Zielsetzungen konfigurieren, die Ihre neu definierte Entscheidung verwenden.

Logische Bedingungen verwenden

Informationen zu dieser Task

Angenommen, Sie möchten sicherstellen, dass keine Bereitschaftsaufgaben zugewiesen werden, wenn ein Mitarbeiter sich im Urlaub befindet. Sie können dies erreichen, indem Sie logische Bedingungen wie folgt verwenden.

Vorgehensweise

So verwenden Sie logische Integritätsbedingungen:

  1. Bedingung betrachten Vorschlag für logische Integritätsbedingung
    Diese Einschränkung stellt sicher, dass für jede Kombination aus Mitarbeiter und Tag, wenn keine zugeordneten Zuordnungen vorhanden sind (z. B. wenn der Mitarbeiter an diesem Tag im Urlaub ist), diesem Mitarbeiter an diesem Tag keine Bereitschaftsaufgaben zugewiesen werden. Beachten Sie die Verwendung der Schlüsselwörter if...then zum Definieren dieser logischen Integritätsbedingung.
  2. Optional: Fügen Sie weitere logische Einschränkungen zu Ihrem Modell hinzu, indem Sie in den Vorschlägen suchen.

Ergebnisse

Diese Bedingung verknüpft die Zuweisung von Mitarbeitern zu Schichten mit Bereitschaftsaufgaben. Bei separaten Modellen, einem für die ursprüngliche Schichtzuweisung und einem anderen für die Bereitschaftsaufgaben, können Sie diese Verknüpfung nicht erreichen.

Durch die Verwendung logischer Integritätsbedingungen zusammen mit dem Schlüsselwort associated können Sie angeben, dass, wenn eine Integritätsbedingung gilt, auch eine andere Integritätsbedingung gilt. Die erforderliche logische Verbindung zwischen den Konzepten, auf die Sie sich beziehen, wird automatisch hergestellt, ohne dass Sie komplizierte Join-Ausdrücke verwenden müssen.

Generative KI-Suche und -Antwort
Diese Antworten werden von einem großen Sprachmodell in watsonx.ai basierend auf dem Inhalt der Produktdokumentation generiert. Weitere Informationen