トレードオフとは?

TVで万太郎の祖母が言っていました。「何かを選ぶことは、何かを捨てることじゃ」と。
祖母は、トレードオフの関係を理解していたのでしょう。

両方を同時には、満足できない、二律背反の状態のことを指します。あっちを立てれば、こっちが立たずの関係です。

シフト勤務表をギリギリに攻めた状態でいじっていると、このような状態に出くわします。特に人的リソースがない場合に出現しやすいと思います。リソースに余裕がある状態では、そもそもソフトエラーは出にくいので、面倒なトレードオフを行う必要はありません。

「どうしても、ここの人が足りない、しかし、どうにかしたい」、という時のみ、必要な作業です。

トレードオフの状態の認識

事前にトレードオフ状態になるかは、誰にも予想できません。とにかくやってみるしかありません。
これが故に高速ソルバが必要だったのです。人が手作業でするなら、もう一度勤務表を作り直せ、と言われたようなものです。しかし、機械は、手元でちょっとパラメータを変えたら、文句も言わずに直ぐやってくれます。

良い按排を探す

求解パラメータの重みをカット&トライしながら、良いところを探って行きます。どうにも良い按排が見つからないので、禁断のスタッフの休み希望予定変更を行っています。(スタッフの予定も制約の一種です。)
スタッフの予定変更を最小にしつつ、良い按排を探すことが、手元で出来ることが理解できると思います。

よくある誤解

誤解して頂きたくないのですが、上の作業は、スケジュールナースの極めて高い探索能力の上での作業です。人が手作業で作っていたら、恐らくは「全く入らないよ」というお手上げ状態になっていた例、と推察します。

組織側に重きを置くのか?スタッフ側に重きを置くか? 悪意を持ったブラックな配置も可能になる

最適化ソルバの能力は、人と比べるべくもない、というお話しをしました。人では割り当て不能な組み合わせを見つける能力がある、ということはある意味、「人材不足を補える」、ということでもあります。しかし、リソース数は変わっていないのなら、しわ寄せはスタッフに行き、スタッフQOLを犠牲にしている可能性があります。
例えば、列制約をハード制約、スタッフQOLに関する制約をソフト制約とすれば、経営者の立場では、嬉しい人材不足も補うことになるかもしれません。現状のスタッフQOLを保ったまま人を雇わなくても済むかもしれません。
同じリソース下で、経営者側の視点優先、スタッフ側の視点優先とするかは、制約の重み次第です。ソルバは、言われたパラメータ重みで最適解を計算するだけで、 それに対して、倫理的な文句を言ったり抵抗することはありません。どこにバランスを置くかは、あくまで管理者が決定することです。言い換えれば、悪意を持った配置も可能となっています。

願わくば、人から現代最高ソルバへの探索能力向上による余裕分は、スタッフQOL向上に振り分けて欲しい、と切に願うものです。