Skip to content

sugawara-system/tutoring-work-schedule

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo1

English README is here

概要

有償ソフトウェア、スケジュールナース上で動く、塾講師のシフト作成問題を解くプロジェクトです。 オリジナル問題は、Qiitaでの記事、Google OR-Toolsによる最適化プロジェクト入門です。



スケジュールナースのインストール

スケジュールナースは、Windows10/11で動く、有償ソフトです。480円/月(2024 12月現在)

インストールサイトでインストールします。



使い方

  1. GithubViewerを開きます。
  1. 本サイトが出てくるまで Nextを押します。
  1. 本プロジェクトをダウンロードします。
  1. プロジェクトに名前を付けて保存します。
  1. 求解ボタンを押します。



モデル化

空きコマを出来るだけ少なくしたい

当該制約とは無関係な出勤ペナルティ発生部(行制約:3)をオフにします。(当該ソフト制約のチェックを外して求解します。) また、勤務シフト希望が変わらないように、予定の重みを重くします。

出勤日数を出来るだけ少なくしたい

題意より、ソフト出勤希望を全てオフにしています。また前述の空きコマのペナルティをオフにして求解します。



実装

シフト形態

シフト形態は、規定されていないのですが、4コマ、3コマ、2コマ連続の全てのパターンがあり得る、と想定しました。(1コマ単独は禁止を想定)

目的のペナルティを発生させている部分の制約は、以下です。

空きコマ時間

出勤(休みの否定)

予定入力

全セル、レベル1に制約しています。

塾講師人数

毎週、各曜日では、必要人数は変わるので、次の表で定義します。



アルゴリズム

下記アルゴリズムの選択が可能です。

各アルゴリズムの開発元と概要は以下です。



シフト解例

タスク解例

シフト・タスク解例

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published