[PYTHON] Kombinationsoptimierung - typisches Problem bei der Planung der Problemarbeit

Typisches Problem und Ausführungsmethode

Arbeitsplanungsproblem

Finden Sie anhand der Anzahl der Mitarbeiter, der Anzahl der geplanten Tage, der Anzahl der Schichttypen, der zu vermeidenden Schichtmuster und der erforderlichen Anzahl der Schichten pro Tag einen Zeitplan, der diese Anforderungen erfüllt. Es gibt viele Variationen objektiver Funktionen und Einschränkungen.

Ausführungsmethode

usage


Signature: shift_scheduling(ndy, nst, shift, proh, need)
Docstring:
Arbeitsplanungsproblem
Eingang
    ndy:Tage
    nst:Anzahl der Mitarbeiter
    shift:Verschiebung(Ein Charakter)Liste von
    proh:Verbotsmuster(String verschieben)Liste von
    need:Liste der erforderlichen Anzahl von Personen für jede Schicht(Jeden Tag)
Ausgabe
Eine Tabelle mit Schichtnummern nach Tag und Personal

python


from ortoolpy import shift_scheduling
ndy, nst = 8, 4
shift = 'Urlaubsnacht'
proh = ['Nacht für Nacht', 'Nachtsonne', 'Tag Tag Tag']
need = {'Tag':[2] * 8, 'Nacht':[1] * 8}
r = shift_scheduling(ndy, nst, shift, proh, need)
print(r)

import numpy as np, pandas as pd
a = pd.DataFrame(np.vectorize(lambda i: shift[i])(r),
    columns=[chr(65+i) for i in range(nst)],
    index=['%Tag d'%i for i in range(1,ndy+1)])
for sft,lst in need.items():
    a['%s erforderlich'%sft] = lst
    a['%s Plan'%sft] = (a.iloc[:,:4]==sft).sum(1)
print(a)

Ergebnis


[[0, 1, 2, 1],
 [1, 2, 0, 1],
 [1, 0, 1, 2],
 [2, 1, 1, 0],
 [0, 1, 2, 1],
 [1, 2, 0, 1],
 [1, 0, 1, 2],
 [2, 1, 1, 0]]

A B C D Tag erforderlich Tagesplan Nacht erforderlich Nachtplan
Tag 1 Feiertagsnacht Tag 2 2 1 1
Tag 2 Tag Nacht Urlaub 2 2 1 1
Tag 3 Tag Feiertagsnacht 2 2 1 1
Tag 4 Nacht Tag geschlossen 2 2 1 1
Tag 5 Feiertagsnacht Tag 2 2 1 1
Tag 6 Tag Nacht Urlaub 2 2 1 1
Tag 7 Tag Feiertag Nacht 2 2 1 1
Tag 8 Nacht Tag geschlossen 2 2 1 1

python


# pandas.DataFrame
from ortoolpy.optimization import ShiftScheduling
ShiftScheduling(8, 4, 'Urlaubsnacht', ['Nacht für Nacht','Nachtsonne','Tag Tag Tag'], {'Tag':[2]*8, 'Nacht':[1]*8})
A B C D Tag erforderlich Tagesplan Wird nachts benötigt Nachtplan
Tag 1 Geschlossen Tag Nacht Tag 2 2 1 1
Tag 2 Tag Nacht Geschlossen Tag 2 2 1 1
Tag 3 Tag Geschlossen Tag Nacht 2 2 1 1
Tag 4 Nacht Tag Tag Geschlossen 2 2 1 1
Tag 5 Geschlossen Tag Nacht Tag 2 2 1 1
Tag 6 Tag Nacht Geschlossen Tag 2 2 1 1
Tag 7 Tag Geschlossen Tag Nacht 2 2 1 1
Tag 8 Nacht Tag Tag Geschlossen 2 2 1 1

Recommended Posts

Kombinationsoptimierung - typisches Problem bei der Planung der Problemarbeit
Kombinationsoptimierung - typisches Problem-Rucksack-Problem
Kombinationsoptimierung - typisches Problem - n-dimensionales Packungsproblem
Kombinationsoptimierungstypisches Problem-Minimum-Vertex-Covering-Problem
Kombinationsoptimierung - typisches problemstabiles Matching-Problem
Kombinationsoptimierungstypisches Problem-verallgemeinertes Zuordnungsproblem
Kombinationsoptimierung - typisches Problem - Maximum-Matching-Problem
Kombinationsoptimierung - typisches Problem - sekundäres Zuordnungsproblem
Kombinationsoptimierung - typisches Problem - Problem mit dem kürzesten Weg
Kombinationsoptimierung - typisches Problem - Kombinationsauktionsproblem
Kombinationsoptimierung - typisches Problem - Maximum-Flow-Problem
Kombinationsoptimierungstypisches Problem-Aggregat-Abdeckungsproblem
Kombinationsoptimierung - typisches Problem-Gewichtsanpassungsproblem
Kombinationsoptimierung - typisches Problem bei der Platzierung von Problemeinrichtungen
Kombinationsoptimierung - typisches Problem-Job-Shop-Problem
Kombinationsoptimierung - typisches Problem - maximales Schnittproblem
Kombinationsoptimierung - typisches Problem - Minimum des Gesamtflächenbaumproblems
Kombinationsoptimierungstypisches Problem-Maximum-Stabil-Set-Problem
Kombinationsoptimierung - typisches Problem - Mindestkostenflussproblem
Kombinationsoptimierung - typisches Problem - Problem der chinesischen Postzustellung
Kombinationsoptimierung - Typisches Problem - Problem mit der Transportroute (Lieferoptimierung)
Kombinationsoptimierung - Minimum Cut Problem
Kombinationsoptimierung - Typisches Problem - Problem bei der Platzierung der Einrichtung ohne Kapazitätsbeschränkung
Kombinationsoptimierungstypische Probleme und wie es geht