FLEXSCHEバージョン24
FLEXSCHEバージョン24.0を2025年3月26日にリリースしました。多数の機能拡張が施されています。そのうちの主だったものをご紹介します。(バージョン23.0とバージョン24.0の差分)
FLEXSCHE ランチャー リニューアル
コンセプト
スタートアップ、旧ランチャー、GPサンプル集、設定ユーティリティを統合して使いやすくしました。 色付きの枠は対応する機能を示しています。
サンプルページを拡充
FLEXSCHE ランチャーのリニューアルに伴い、サンプルページを大幅に拡充しました。タグが追加され、絞り込みが可能になりました。 また、テキスト検索による絞り込み機能も搭載されています。さらに、★から★★★★★までの5段階の難易度が追加されました。 加えて、Readmeの確認やタグの切り替えも可能で、利便性が向上しています。
履歴、お気に入りページを追加
スタートアップにあった履歴とお気に入りをランチャーからも開けるようになりました。 ここでもテキスト検索による絞り込みが可能です。
その他の機能
画面の拡大縮小、履歴やお気に入りのプロジェクトの情報を再読み込みが可能です。 また、Windowsの設定のダークモードに対応しています。

FLEXSCHE AutoCalibrator
「自動パラメータ探索」機能
AutoCalibratorの学習では、モデルの精度や学習時間を左右するパラメータの調整が不可欠です。しかしながら、最適な設定を手動で探す作業は、専門知識や多くの試行錯誤を要し、手間がかかるものでした。この課題を解決するために導入されたのが「自動パラメータ探索」機能です。
「自動パラメータ探索」機能は、指定した学習データと特徴量をもとに、イテレーション数や学習率、葉の数量など主要パラメータの最適な組み合わせを自動で見つけ出します。これにより、ユーザーは深い機械学習の知識がなくても、専門家が調整したような高精度で安定したモデルを効率的に構築できるようになります。
パラメータ探索は非常に簡単で、学習データ定義から探索回数と交差検証分割数を設定して「自動パラメータ探索」を実行するだけです。新規のデータセットや特徴量の追加・変更時には特に効果的で、これをベースラインとして利用すれば、さらなる微調整も容易になります。煩雑な手作業から解放され、より質の高い計画業務に集中できるようになります。
学習テーブルの蓄積
これまでAutoCalibratorでは、実績データを削除したり学習対象の計算式を変更したりすると、せっかく蓄積した過去の貴重な学習データが失われてしまうという課題がありました。そのため、一定期間をあけて再学習を行う際に、以前のデータが活用できず、機械学習モデルの精度や安定性に影響が出ることがありました。
今回の改善により、特徴量(コード・計算式)に変更がなければ、実績データが削除されたり、 学習対象の計算式(例えば期間の変更)で学習対象外になった場合でも、 該当するデータは学習テーブルに保持されるようになりました。 これにより過去の貴重な学習データを最大限に活用し、 より安定的で精度の高い機械学習モデルを構築することが可能になります。 なお、特徴量に変更がある場合は従来通り学習テーブルは再構築され、 過去データは引き継がれないためご注意ください。
計算式関連
製造現場の実態に合わせて作業時間を精緻に推計するFLEXSCHE AutoCalibratorに、新たな計算式機能が追加されました。
これまで以上に柔軟かつ簡単に、学習データ定義を設定・管理できるようになります。
追加された関数
<BOR>.Trainer(TaskPart part)
資源表で利用される「作業時間推計」の学習データ定義を取得・設定できます。Trainer.FromCode(code)
コードを指定して学習データ定義を簡単に取得できます。<Trainer>.Code
学習データ定義のコードを手軽に確認できます。<Trainer>.ExactName
学習データ定義の表示名を取得・設定できます。<Trainer>.LearningTargetList
学習データ定義に紐づく学習対象作業リストを抽出し、一括設定を可能にします。
使用例
たとえば、「ある学習データ定義に紐づく全ての学習対象作業に対して、その作業の作業時間推計を一括して設定する」という作業を考えてみましょう。
以下のようにシンプルな計算式を用いるだけで、素早く正確に設定を反映できます。
$trainer := Trainer.FromCode("trainer_code"),
$trainer.LearningTargetList.ForEach([
.BOR.Trainer(TaskPart.Manufacture) := $trainer
])
これにより、面倒な個別設定作業が大幅に軽減され、より重要な計画作業に集中できます。
UI・UX系
学習データ定義の管理に関わる機能を中心に、操作性や運用性の向上につながる改善をいくつかご紹介します。
学習データ定義の複製でより簡単に管理を
既存の学習データ定義をもとに、新しい定義を素早く作成できるようになりました。新たな学習データ定義のコードを指定するだけで簡単に複製することができます。似た構成の定義を複数管理する必要がある場面で特に効果を発揮します。
学習データ定義を複数プロジェクト間で共有
プロジェクトをまたいだ学習データ定義の活用が、よりスムーズになりました。XML形式でエクスポート・インポートが可能になり、他のプロジェクトで活用している定義をそのまま持ち込んで再利用できます。
繰り返し使われる定義を一から作成し直す手間がなくなり、運用の自由度が高まります。複数拠点やチームでの協調運用にも柔軟に対応できるようになります。
具体的には、エクスポート時に対象の学習データ定義を選択してXMLファイルとして保存でき、インポート時にはそのファイルから定義を読み込んで現在のプロジェクトに追加できます。コードが重複する場合は自動で接尾辞がつくなど、運用上の混乱を避ける配慮もされています。
AutoCalibratorの訓練・検証をまとめて処理

複数のモデルを個別に操作する煩わしさから解放されます。一括で訓練・検証ができる機能により、多数の学習モデルを同時に処理可能となりました。モデル管理の効率化により、作業のスピードと正確性が向上します。
コマンド実行による自動化をさらに強化
学習テーブルの更新処理をコマンドラインやバッチから実行できるようになりました。定型作業を自動化することで、外部システムとの連携やより高度な運用フローの構築がしやすくなります。人手に頼らない運用体制を整える一助となります。

FLEXSCHE Optimizer
「Optimizer 納期遅れ最小化再割付けメソッド Mk-Ⅱ」
日々変化する製造現場において、納期遵守と生産効率向上を両立させることは重要な課題です。 従来の「納期遅れ最小化再割付けメソッド」は一定の成果を収めてきましたが、 対応可能な稼働パターンや最適化目標に制限があり、実際の生産環境に柔軟に対応しきれない面がありました。 この度、それらを解決し、大幅な進化を遂げた新機能「納期遅れ最小化再割付けメソッド Mk-Ⅱ」をご紹介いたします。
強化ポイント①:カレンダー対応の柔軟性向上
従来の機能では、24時間稼働または一定周期のカレンダー設定のみ対応していました。 そのため、例えば曜日ごとに異なる稼働時間や突発的な休日設定など、変則的な稼働パターンを持つ現場では十分な対応が困難でした。
新たに開発されたバージョンでは、周期性に依存しない「自由カレンダー」に対応しました。 これにより、特殊な稼働日程を持つ製造現場でも柔軟に運用できるようになりました。 例えば、設備メンテナンスで特定の日だけ稼働を停止する場合や、季節要因で稼働時間が不規則に変動する場合にも適切に対応可能です。
これによって、様々な現場のニーズにフィットする柔軟な計画立案が実現し、稼働効率の最大化を支援します。

強化ポイント②:副資源タスクのモデリング精度向上
従来では、副資源のタスクは製造工程(M)のみを対象としており、現実の作業とズレが生じるケースがありました。
今回の強化によって、副資源のタスクをより実際の作業内容に近づけてモデリングできるようになりました。製造(M)のほか、製造と段取りの組合せ(MT、SMT、SM)や段取りのみ(S、T)など、現実の作業に即した多様なパターンを設定可能です。
これにより、例えば段取りパートに人手が必要な場合でも実際の業務フローに沿ったかたちでモデル化できるようになります。副資源の稼働状況をより現実的に反映することで、計画の精度と実行可能性が一層向上します。

強化ポイント③:目的関数の拡張 - 段取り時間最適化
これまでの目的関数は「納期遅れ時間の最小化」のみを考慮していました。しかし、実際の製造現場では、段取り時間の短縮が生産性向上の鍵となることが多くあります。
そこでMk-Ⅱでは、納期遅れ時間だけでなく段取り時間(前段取り・後段取り)の合計値も最適化対象に加えました。これにより、「納期遵守」と「生産効率の向上」という二つの目標を同時に追求可能になりました。
例えば、納期順に単純なスケジュールを立てた場合、納期遅れが多数発生し、前段取り時間が124時間でしたが、Mk-Ⅱの多目的最適化を使うことで、納期遅れを解消しつつ前段取り時間を約37%削減(48時間)することができました。
- 初期計画(納期順):124時間
- 納期遅れ解消のみ:76時間
- 納期遅れ解消+段取り削減:48時間(約37%削減)

強化ポイント④:搬送時間表への対応
従来は工程間の制約時間を固定値で設定する必要があり、実際の搬送時間との差異によって生産計画の精度に課題がありました。
Mk-Ⅱでは、「搬送時間表」を活用して実績に基づいた搬送時間を設定できるようになりました。これにより、実際の物流状況や資源の組み合わせによって異なる搬送時間をリアルに反映できるようになります。
例えば、二工程の構成で、上流工程が資源A1/A2を利用し、下流工程が資源B1/B2を利用します。資源A1/A2から資源B1/B2に製品を搬送する場合、組合せごとに以下の異なる搬送時間がかかります。

利用資源の組合せによる搬送時間を正確に考慮し、最適な資源選択によって納期遅れを最小限に抑えることが可能です。

まとめ
納期遅れ最小化再割付けメソッド Mk-Ⅱ」では、以下の4つの重要な進化を実現しました。
- 柔軟性:自由なカレンダー設定で多様な稼働パターンに対応
- 正確性:副資源の複雑なタスクを実態に即してモデリング
- 最適化:納期遵守と段取り時間の短縮を同時に達成
- 現実性:搬送時間表による実際の工程間リードタイムを正確に反映
これにより、さらに精度の高い計画立案を可能にし、納期遅延リスクを抑えつつ生産効率向上にも貢献いたします。
FLEXSCHE Communicator
FLEXSCHE Communicatorプロジェクト間連携機能の強化
FLEXSCHE CommunicatorでEDIFを使用してプロジェクト間の連携を行う際に、リアルタイム性が向上し、データ管理の手間が軽減されるなど、より効率的に運用できるようになりました。

従来のプロジェクト間連携
製造拠点が複数あり、それぞれにFLEXSCHE Communicatorのプロジェクトデータが存在するとします。各拠点では製造工程を分担しているため、製造計画を連携する必要があります。従来からFLEXSCHE EDIFを使用して連携が可能でしたが、いくつかの課題がありました。 例えば、EDIFインポートを行う際には、プロジェクトデータのすべてがチェックインされている必要がありました。そのため、全員の編集が完了していると想定される夜間などにバッチ処理でインポートを実行する必要があり、リアルタイム性が損なわれる要因となっていました。 さらに、データの入出力先をFLEXSCHE Communicatorの外部に配置する必要があったため、別途置き場を作成して管理する必要がありました。

新しいプロジェクト間連携
バージョン24.0からはEDIFインポート時に、インポート対象となるデータがチェックアウトされていなければ問題なくインポートできるようになりました。 例えば、オーダーデータをインポートする場合、クライアント側でマスタの編集や、計画変更のために作業を編集していても影響を受けることがありません。 さらに、プロジェクト直下にデータ置き場(ストレージ)が新設されたことで、自前でデータの保管場所を用意して管理する必要がなくなりました。 これにより異なるCommunicatorサーバー間でも、置き場を意識することなく簡単に連携出来るようになりました。
スケジューリング
資源主導ディスパッチングメソッドで最小在庫量制約を守りやすく
消費側・製造側の工程がともに資源主導ディスパッチングメソッドの対象であるとき、 最小在庫量制約を守るためには従来は作業の割付け順を上手に制御する必要がありました。 先に消費側の作業を選んでしまうと在庫が足りないので未割付けになっていましたが、 バージョン24.0ではいったん保留してから状況が変わったときに再度割付けられるようになります。 これによって最小在庫量制約を満たした計画を立てやすくなりました。
資源主導ディスパッチングメソッドで除外する候補資源を指定できるように
資源主導ディスパッチングメソッドの対象以外のタスク資源について、 除外する候補資源を指定できるようになりました。 これによって、割付け中の状況を考慮しながら、 特定の資源には割り付かないように制御できるようになります。
補充オーダー生成メソッドのブレイクポイントの機能強化
主にプロジェクトの導入・開発時において、 「なぜこの補充オーダーが生成されたのか?」を調べたくなることもあると思います。 そのときに役立つ機能として、補充オーダー生成メソッドのブレイクポイント「在庫時系列要素に到達」で 定義済み変数 $_record を利用できるようにしました。 これによって、在庫量が増減するきっかけとなった対象が見えるため、調査しやすくなります。
作業主導ディスパッチングメソッドのブレイクポイントの機能強化
除外する候補資源の評価直後
作業主導ディスパッチングメソッドのブレイクポイントに「除外する候補資源の評価直後」を追加しました。 除外理由等、判定時の様子を確認することができます。
再探索基点の評価直後
作業主導ディスパッチングメソッドのブレイクポイントに「再探索基点の評価直後」を追加しました。 現在値や評価値、何度目の再探索か等を確認することができます。
割付けテスト失敗時
作業主導ディスパッチングメソッドのブレイクポイントの一つ「割付けテスト失敗時」を強化しました。 従来は、すべての候補資源で割付けテストが失敗した場合にのみ処理をブレイクできましたが、 今回の強化により、特定の候補資源で失敗した場合にも個別にブレイク処理を行えるようになりました。
トリガー処理
作業主導ディスパッチングメソッド実行中のいくつかのタイミングで計算式を実行できるようになりました。 これにより従来と同等のことが、よりシンプルな計算式で効率的に実現できるようになりました。 たとえば、品目ごとに1日にあたりの製造上限数が決まっている場合などに有効です。 従来であれば、作業を割付けるたびに当日の製造数をその都度再計算する必要がありました。 しかしトリガー処理を利用すれば、品目の製造数に変化があったタイミングで当日の製造数を更新・記録できるようになるため、作業を割付ける際の再計算が不要になり、より効率的な処理となります。
実績資源に基づくタスク自動生成
作業実績テーブルでは実績資源を指定できますが、従来は資源表に未登録のタスクキーは反映されませんでした。(ただし、資源表に存在しない資源であっても、作業実績として指定されていれば割付けは可能でした)。 新しいバージョンでは、資源表に未登録のタスクキーであっても、作業実績として指定されていれば自動的に生成されるようになり、実績の反映精度が向上しました。
モデリング
クラスター作業
複数の作業を束ねて1つの「クラスター作業」として元の作業の代わりに割付けることができるようになりました。
※上級オプション「クラスター作業」(2ユニット)が必要です。

元の作業の入出力リンクは、全てそのままクラスター作業に継承されます。また、タスク構成については、合成方法を指定することができます。 例えば、複数のワークを重ねた状態で行う「共加工」作業を単純資源上で実施するような場合、それらをクラスター作業として束ねることでスムーズにスケジューリングできます。 また、バッチ炉での1バッチの作業構成を明示的に指定したい場合にも、クラスター作業として定義すれば簡単です。
副資源上の先行・後続作業に依存する段取り替え
副資源上の先行作業や後続作業によって段取り時間を変えることができるようになりました。 例えば、機械に金型を取り付けて作業し、機械に金型を取り付ける際や取り外す際には段取りが発生するような場合に、機械上では金型が変わっていないように見えてもその間に別の機械上でその金型で作業する場合には金型の付け替えの段取りが必要です。これを簡単に表現できるようになりました。

【従来】

【今回】
代替品目
作業の割付け時に、在庫を使い切ったら自動的に別の品目に切り替えることができるようになりました。

候補品目を指定しておくと、1作業における各品目の消費数量を、各品目の在庫残量に応じて合計が必要数量となるように、自動的に決定します。
末端リンクの動的な数量計算
作業の末端リンク(その先に作業がつながらないリンク)に対しては、作業の割付け時にリンク数量を決定できるようになりました。
入荷オーダーや入荷在庫操作に個別の消費期限
従来は品目毎に製造されてから消費されるまでの有効期間の長さを指定できましたが、入荷オーダーや入荷在庫操作に対して個別に期間を指定できるようになりました。
期間付き仕様制約/数値仕様制約
通常の資源仕様制約や数値仕様制約に加えて、期間を指定した制約を設定できるようになりました。 資源仕様制約や数値仕様制約とは、資源の持つ制限条件と作業の持つ属性を比較し、条件が一致する場合にのみその資源を利用可能とする制約です。 たとえば、成型機ごとに製造可能な製品のサイズが異なる場合、オーダーで指定されたサイズに合わせて使用する資源を制限する際に利用します。 今回、新たに期間を加えた制約(期間付き仕様制約や数値仕様制約)が設定可能になりました。 たとえば、特定の期間に製造可能な製品のサイズを指定したい時に利用します。

同時積みで対象パートを限定

同時積みの対象となるパートを指定できるようになりました。 たとえば、製造は同時に作業が可能だが、段取りは同時に作業ができない時に便利です。
引当て間の分割作業連結・分割対応時間制約
別オーダーの分割作業がオーダー引当てによって接続されている場合にも、その引当てが分割基底作業に対して1:1であれば、その各分割作業の間にも分割作業連結や分割対応時間制約が適用されるようになりました。

分割作業に対する作業連結PP
従来は分割作業を「作業連結PP」を使って作業連結をすることができませんでした。 これが可能になる事により、分割した作業に対して時間制約を簡単に設定できるようになりました。
ユーザーインターフェース
セレクタ選択ダイアログのリストの機能拡充

セレクタ名や拡張子名でリストをソートできるようになりました。 あわせて、セレクタ名と拡張子名がそれぞれ別の列に分けて表示されるようになりました。
資源ガントチャートで複数の接続線を表示

資源ガントチャートにおいて複数の作業を選択した場合、それら全ての作業の接続線を描画するようになりました。
オーダーガントチャートで行をまたぐ接続線を表示
オーダーガントチャートにおいて、異なる行にまたがる接続線も表示可能になりました。 これにより、オーダーガントチャート上での引当て関係が、より簡単かつ明瞭に表現できるようになりました。

アクションメニューの表示順序変更
これまで固定順序でしか表示できなかったアクションメニューを、数値を指定することで任意の順序に表示できるようになりました。
計算式における選択行の一括コメントアウト
計算式編集画面で、選択行をボタンによりコメントアウトできるようになりました。 「Ctrl + /」のショートカットキーでも同様の操作が可能です。

FLEXSCHE WebViewer
負荷チャート
WebViewerでも負荷チャート行を利用できるようになりました(無集計資源量のみ)。 各資源の負荷を直感的に把握するのに便利です。負荷オーバーしている区間についてはアラートで表示されます。
計算式
ResultSubdivision.Create / .CreateResultSubdivisions
作業実績細分レコードを生成する関数を追加しました。 例えば班資源を使用する作業において、 現在の割り付き状況を反映した作業実績細分レコードを 一括で生成することができます。
計算式に資源表関連の関数を追加
takt式から資源表のタスク、利用可能区分、利用時間を生成出来るようになり、またタスクの必要資源量、利用可能区分の優先度、コンボキーへアクセスできるようになりました。 加えて一部関数が代入可能になり、自由度が向上しました。