[JAVA] Planen Sie die Optimierung mit AI, die den Grund für das Ergebnis versteht

Verfasser: Takashi Takahisa, Hitachi, Ltd.

Einführung

In diesem Artikel werde ich die Planungsoptimierung durch AI vorstellen, die den Grund für das Ergebnis versteht.

Übersicht über die Planoptimierung

Bei der Planoptimierung wird der beste Plan (Kombinationsplan) mit begrenzten Ressourcen unter Berücksichtigung der zu beachtenden Einschränkungen und Effizienz formuliert. Zu den Zielaufgaben gehören Personalschichtplanung, Planung der Geräteinspektion, Lieferplanung, Semina-Fahrpläne, Bestandsverwaltung, Frachtzuteilung und Optimierung des Finanzportfolios.

Vorteile der Planungsoptimierung mit AI

Es gibt verschiedene Bereiche bei der Planoptimierung, aber es ist schwierig, aus einer großen Anzahl von Kombinationen mit begrenzten Ressourcen und individuellen Einschränkungen die optimale Lösung abzuleiten, und die manuelle Realisierung ist begrenzt. Die Planoptimierung mit AI kann die folgenden Punkte lösen. ・ Die Arbeitszeit für die Planung kann erheblich reduziert werden. ・ Ein qualitativ hochwertiger Plan kann unter Berücksichtigung vieler Einschränkungen realisiert werden. ・ Sie können Personalisierung und Ungerechtigkeit beseitigen

Herausforderungen der Planungsoptimierung durch KI

Wenn AI die Planungsarbeiten automatisiert, für deren Ausführung ein erfahrener Planer Zeit benötigt, treten die folgenden Probleme auf. -Es braucht Zeit, um Spezifikationen für viele Einschränkungsbedingungen / Bewertungsindizes zu organisieren und zu implementieren. ・ Es ist schwierig, die Ergebnisse in der Black Box zu bestätigen und zu erklären. ・ Es ist schwierig zu bestätigen, ob der Plan besser ist als bei der Umsetzung durch einen erfahrenen Planer.

Planungsoptimierung mit Red Hat Decision Manager

Der Red Hat Decision Manager (https://www.redhat.com/de/technologies/jboss-middleware/decision-manager) kann Ihnen bei der Lösung dieser Herausforderungen helfen. Als bekanntes Produkt für die BRMS / Rules Engine bietet es auch Funktionen zur Planungsoptimierung. Die Funktionen der Planungsoptimierung mit diesem Produkt sind nachstehend aufgeführt.

Feature 1 Einfache Implementierung basierend auf Regeln

Da verschiedene Einschränkungsbedingungen / Bewertungsindizes, die Spezifikationen für die Planoptimierung sind, unabhängig voneinander einzeln als Regeln definiert werden können, können sie einfach implementiert werden. Es ist schwierig, alle Einschränkungsbedingungen / Bewertungsindizes von Anfang an genau zu definieren, aber die Spezifikationen werden geklärt, indem aus den Einschränkungsbedingungen / Bewertungsindizes, deren Spezifikationen geklärt wurden, implementiert und der Rest mit TRY & ERROR hinzugefügt / angepasst wird. Und die Implementierung kann in kurzer Zeit parallel entwickelt werden. Die Montagemethode und die Funktionen sind unten aufgeführt.

-Die Einschränkungsbedingungen / Bewertungsindizes für die Planoptimierung werden in Excel als unabhängige Regeln implementiert. Die Spezifikationen der Planoptimierung können definiert werden, indem sie in absolute Einschränkungen, Betrachtungsbeschränkungen und Bewertungsindizes klassifiziert werden. Sie können optimiert werden, um den Grad der Übereinstimmung mit den Betrachtungsbeschränkungen und den Bewertungsindizes zu verbessern, wobei immer die absoluten Einschränkungen beachtet werden. Absolute Einschränkung: Eine Einschränkung, die Sie unbedingt beibehalten möchten. Zu berücksichtigende Einschränkungen: Einschränkungen, die Sie so weit wie möglich beibehalten möchten. Bewertungsindex: Ein Index zur Berechnung einer besseren Kombination.

** Beispiel für eine Excel-Regel **

Regelname Niveau Gewichtskoeffizient
Absolute Einschränkung#1_Weisen Sie denselben Mitarbeiter nicht mehreren Schichtplätzen während derselben Arbeitszeit zu. Hard 1
Überlegungen Einschränkungen#1_Weisen Sie Mitarbeiter Aufgaben zu, für die sie arbeiten können. Soft 1000
Überlegungen Einschränkungen#2_Auszubildende und Ausbilder sind demselben Schichtschlitz zugeordnet. Soft 500
Überlegungen Einschränkungen#3_Mitglieder, die von der gleichzeitigen Arbeit ausgeschlossen sind, sind nicht demselben Schichtschlitz zugeordnet. Soft 50
Bewertungsindex#1_Schließen Sie den Arbeitsplatz während der Arbeitszeit vorher und nachher. Soft 10
Bewertungsindex#2_Nivellierung der Arbeit_Bringen Sie die Anzahl der Verantwortlichen nahe an den Durchschnitt. Soft 1

-Priorität zwischen Regeln wird durch Stufe + Gewichtskoeffizient definiert, und das Ergebnis wird als Bewertungswert für jede Stufe bewertet. Es wird in der Reihenfolge des Bewertungswerts der höchsten Ebene bewertet (im obigen Beispiel schwer). Wenn der Bewertungswert der höchsten Ebene gleich ist, wird es anhand des Bewertungswerts der nächsten Ebene bewertet, und die Kombination mit dem besten Bewertungswert ist die optimale Lösung. Ich werde.

-Regeln können in einer herausgenommenen Excel-Datei definiert und jederzeit geändert werden.

-Die Operation jeder Regel wird in der Excel-Datei der Regel mit dem Code der dedizierten Sprache DRL definiert. Blenden Sie nach der Definition den DRL-Teil aus, damit Geschäftsbenutzer problemlos nur auf den erforderlichen Teil verweisen / ihn bearbeiten können (die obige Tabelle ist ein Beispiel nach dem Ausblenden). DRL kann sofort von jedem gelernt werden, der Java versteht.

Überlegungen Einschränkungen#Codebeispiel für eine Excel-Regel


ShiftAssignment(employee != null, shift.skill != employee.skill)

-Komplexe Verarbeitung wird auf der Java-Seite beschrieben, und Java-Methoden werden aus dem Code in Excel aufgerufen.

Absolute Einschränkung#Codebeispiel für eine Excel-Regel


ShiftAssignment(employee != null, $name : shift.name, $employee : employee, $shiftDateTime : shift.shiftDateTime)
ShiftAssignment(shift.name > $name, employee == $employee, shift.shiftDateTime.overlaps($shiftDateTime))

Feature 2 Die Ausgabe der Score-Informationen zeigt den Grund für das Ergebnis

-Der Grad der Übereinstimmung mit den Einschränkungsbedingungen / Bewertungsindikatoren, die das Optimierungsergebnis darstellen, kann als Bewertungsinformation ausgegeben werden.

** Beispiel für die Ausgabe von Score-Informationen ** score_example.png

· Gesamtpunktzahl Wie gut erfüllen Sie die Einschränkungen / Metriken insgesamt (ob Sie den Zielwert erreicht haben)? ・ Punktzahl pro Regel Welche Regel (Einschränkungsbedingung / Bewertungsindex) verletzt wird. Wie gut halten Sie sich an jede Regel? ・ Detaillierte Bewertung jeder Regel Ist der Detailwert korrekt (funktioniert er wie erwartet)? Welche Daten verletzen? Punktzahl = - (Durchschnittliche Anzahl der Verantwortlichen - Anzahl der Verantwortlichen) ^ 2 A001 :-( 7-6) ^ 2 = -1 ⇒ Richtig A002 :-( 7-9) ^ 2 = -4 ⇒ Richtig

Feature 3 Die Ergebnisse früherer Pläne können ebenfalls ausgegeben und verglichen werden.

-Die Score-Informationen der geplanten Daten können einfach ausgegeben werden, indem die Geschäftsanwendung und Excel-Regeln verwendet werden, die für die normale Optimierungsberechnung fast unverändert erstellt wurden.

** Normale Optimierungsberechnung ** normal_flow.png ** Informationen zur Ausgabewertung der geplanten Daten ** planned_data_flow.png

abschließend

In diesem Artikel haben wir die Planoptimierung mit AI eingeführt, die den Grund für die Ergebnisse zeigt. Wenn Sie KI immer noch als schwierig oder unzuverlässig empfinden, warum sollten Sie sie nicht verwenden?

Recommended Posts

Planen Sie die Optimierung mit AI, die den Grund für das Ergebnis versteht
Planen Sie das Optimierungs- "Nutzungsbild" mit einer KI, die den Grund für das Ergebnis versteht
Generieren Sie die Datei colours.xml für dunkle Themen mit der Technologie, die Force Dark unterstützt
[Erstes Java] Machen Sie etwas, das vorerst mit Intellij funktioniert