「同じ条件」なのに、なぜバラつく── 揃えているつもりの”条件”、その正体を疑ってみる話 Tech#11
■ 現場でいちばん多い、素朴な問い
SFIをお客様に紹介していると、必ずと言っていいほど同じ質問にぶつかります。
うちは条件をきっちり揃えているのに、なぜ品質がバラつくんですか?
不思議な話です。温度も圧力も速度も、レシピ通りに設定している。作業者も同じ、設備も同じ、材料も同じロット。それなのにロット間で歩留まりが数%ぶれる。ひどい時には、同じ日の午前と午後で結果が違う。
これ、実は不思議なことではありません。「揃えている」と思っている条件そのものが、実は揃っていないからです。
なぜ揃っていないのか。理由は、大きく5つあります。順に見ていきます。難しい話は一切しません。全部、現場で毎日起きている話です。
理由① 工程の”前”から、すでにバラついたものが入ってきている
まず、一言で言うと
あなたの工程は、真っさらな材料を受け取っているわけではありません。 前工程が既に”個性”をつけて渡してきています。
具体的にどういうことか
たとえば、樹脂の射出成形を考えてみてください。あなたの工程で管理できるのは、成形機の設定です。しかし、成形機に入ってくる樹脂ペレットには、こんな”個体差”があります。
- 含水率が微妙に違う(乾燥工程の乾燥時間や外気湿度で変動する)
- 分子量分布がロットで違う(重合工程の反応温度・時間で決まっている)
- 添加剤の分散状態にムラがある(コンパウンド工程のスクリュー条件で決まっている)
打錠工程なら、造粒物の粒度分布・かさ密度・水分。これらは造粒工程で確定してしまっている。溶接工程なら、母材の表面酸化・板厚公差・熱処理履歴。これらは前工程が渡してきた”入力”です。
なぜバラつくのか
同じ成形条件で回しても、含水率が0.05%違うペレットが来れば、成形後の寸法は変わります。同じ打錠圧で押しても、造粒物の水分が0.3%違えば、錠剤硬度は変わります。装置の設定を完璧に揃えても、入ってくる材料が毎回少しずつ違えば、出てくる製品も毎回少しずつ違う。物理的に当然です。
では、どうすればいいのか
打ち手は3つあります。順に強力になります。
打ち手①-A:後工程で”追従”する(下流での対応)
「今日入ってきた材料はこういう状態だから、今日の最適条件はこれ」と、後工程の条件をリアルタイムに変えていく。材料特性の実測値または推定値を説明変数に組み込み、Backcast™で条件を逆算する。固定レシピを捨てて、”材料に合わせて動くレシピ”に切り替えるという発想です。
打ち手①-B:前工程で”材料特性そのもの”を揃える(上流での対応)
実はこちらの方が本質的です。前工程の条件を最適化することで、そもそも後工程に渡す材料の特性ばらつきを縮める。たとえば、乾燥工程の温度・時間・風量を最適化して含水率のばらつきを±0.02%以内に抑える。造粒工程のスプレー速度・バインダー量を最適化して粒度分布のD50・D90を安定させる。
これは従来「装置の限界」と諦められていた領域ですが、SFIなら前工程それ自体を目的変数(材料特性)と説明変数(前工程条件)の関係として解析可能です。前工程の”出力の安定性”を目的関数に置いてBackcastで逆算すれば、材料特性のばらつき幅そのものを縮められます。
打ち手①-C:前後工程の同時最適化(統合的な対応)
究極的には、前工程と後工程を1つの多段最適化問題として扱う。前工程の条件が生む材料特性を経由して、後工程の品質にどう効くかを一気通貫で解く。これは変数の組み合わせが爆発するため、後述の理由③と同じ構造の問題になります。従来手法では手が出せなかった領域です。
つまり、こういうことです
“揃える”は下流だけの仕事ではありません。下流で追従することもできるし、上流で入力そのものを揃えることもできる。SFIは、どちらの発想でも回せます。
理由② 品質を決めている犯人が、そもそも管理表の”外”にいる
まず、一言で言うと
管理帳票に載っている項目=管理すべき項目、と思い込んでいませんか? 実は、帳票に載っていない何かが、品質を大きく揺らしていることがよくあります。
具体的にどういうことか
現場でよく聞く話です。
- 「なぜか午後になると不良が増える」→ 実は昼休み後の空調再稼働で、クリーンルームの気流方向が変わっていた
- 「金型を替えて数日は調子がいい」→ 実は累積ショット数と離型剤の残存量が効いていた
- 「洗浄した直後は良いけど、時間が経つと悪くなる」→ 洗浄からの経過時間で装置内壁の汚染が進行していた
- 「特定の作業者のシフトで歩留まりが変わる」→ その人の段取り替え手順の微妙な違い(工具の締付順序など)が効いていた
これらの変数は、管理帳票のどこにも書かれていません。だから誰も見ていない。でも、品質を確実に揺らしている。
なぜバラつくのか
「見ていない変数は、存在しないことになっている」。これが現場の落とし穴です。管理項目は過去の経験で作られたリストであって、“品質を決めるすべての要因を網羅したリスト”ではありません。にもかかわらず、多くの現場で「管理項目=品質決定因子のすべて」と暗黙に扱われてしまう。
では、どうすればいいのか
ここでいきなり「新しい変数をたくさん足しましょう」と言うのは、順序が違います。打ち手は3段階です。
打ち手②-A:現状の”説明力”を数字で知る
まず、今の管理項目だけで組んだ予測モデルの説明力(R²)が0.3だったとします。これは、「品質のバラつきの30%しか、今の管理項目では説明できていない」という意味です。残りの70%は、管理表の外にいる。この数字を出すこと自体が第一歩です。
打ち手②-B:候補変数を1つずつ足して、説明力の階段を上る
「空調吹き出し方向を足したらR²が0.35に上がった」「金型ショット数を足したら0.42になった」──こうやって説明力が階段状に上がっていくのを追跡する。上がらなければその変数は関係ない、と判定する。勘で変数を増やすのではなく、貢献度で選別するわけです。
打ち手②-C:残差から”未知変数”の存在を推定する
既知の全変数で説明しきれない残差にパターンがあれば、そこに未知変数が潜んでいます。残差が時間帯で偏る→時刻に紐づく何か(空調・気温・シフト)。残差が特定ロットで偏る→材料側の未計測項目。残差の構造を読むことで、”次に測るべき変数の候補”が見えてきます。これは経験のあるエンジニアが直感でやっていた作業を、定量的に置き換えるアプローチです。
つまり、こういうことです
「変数を増やす」前に「今どこまで説明できているか」を測る。そして、増やした変数が本当に効いたかを数字で確認する。この順序を守るだけで、経営会議で堂々と説明できる改善計画になります。
理由③ 揃えているのは”設定値”ですか、それとも”実際にかかった物理量”ですか
これが今日いちばん伝えたい話です。少し丁寧に説明します。
まず、一言で言うと
装置に入力する”設定値”と、実際に材料にかかった”物理量”は、しばしば一致していません。
具体的にどういうことか
射出成形の現場で、こういう経験はないでしょうか。
- 設定温度:200℃ → 金型内部の実測温度は、キャビティ部位によって195〜208℃
- 設定射出圧力:50MPa → 実際の圧力波形の立ち上がり勾配は毎ショット微妙に違う
- 設定射出速度:100mm/s → 加減速の遷移区間の挙動は、機械の油温や経年で変わる
つまり、「同じレシピで動かしている」と言った瞬間、実は**”現実の条件”は既に揃っていない**わけです。設定値を揃えても、実測値は揃わない。
なぜこれが起きるのか
装置は、設定値を”目標”にして動きます。でも、目標に到達するまでの経路や、到達後の維持精度は、装置の状態や周囲の環境で変わります。ヒーターの応答特性、油圧の温度、電源電圧の揺らぎ、周囲温度──これら全部が、“設定した値”と”実際に到達した値”の間に隙間を生みます。
多くの現場では、この2つを区別していません。「設定値=実際にかかった値」と暗黙に思い込んでいる。ここに、バラつきの正体が隠れています。
では、どうすればいいのか
打ち手は2段構えになります。
打ち手③-A:実測値をレシピ通りに追い込む制御を入れる(第1段)
できるなら、実測センサをフィードバックにかけて、実測値を自動的にレシピに追従させる。これは狭義の自動制御の話です。ただし、既存設備への後付けは物理的・コスト的にハードルが高い場合が多い。
打ち手③-B:欲しい”実測値”から、必要な”設定値”を逆算する(第2段)
これがBackcast™の本領です。発想を変えます。
- ❌ 従来:「設定温度は何℃にすべきか」(設定値を目的変数にする)
- ✅ Backcast:「金型内部の実測温度を200℃±2℃に収めるためには、この材料状態のとき設定温度を何℃にすればいいか」(実測値を目的変数にして、設定値を説明変数として逆算する)
さらにもう一段深くすると、こうなります。
- 究極系:「品質指標Yを目標値に収めるためには、実測温度をいくつにする必要があるか。そのためには、設定温度をいくつにする必要があるか」(多段の目的変数-説明変数関係を、一気に解く)
なぜ、従来のツールでは無理なのか
正直に言います。Excel+Python+scikit-learnで、この規模の多段最適化を回すのは現実的に不可能です。
- 変数の組み合わせが数千〜数万パターンになる
- どのアルゴリズムが最適かは、データを見るまで分からない(15〜19種類のモデルを試す必要がある)
- 予測モデルを作った”後”に、そこから”逆算”する仕組みを自作する必要がある
- 一つひとつコードを書いていたら、1テーマで数ヶ月かかる
AutoML(自動機械学習)ツールでも、”予測”までは行けます。でも、「じゃあ、明日から何を設定すればいいのか」を逆算する機能は、汎用ツールには載っていません。
SFIが「予測で止まらず、目標から逆算する」設計にしているのは、まさにこの第2段を、現場のエンジニアが1人で回せる粒度に落とすためです。
つまり、こういうことです
“設定値”を揃えても、”実際にかかった物理量”は揃わない。だから、”欲しい物理量”から逆算して”必要な設定値”を求める仕組みが要る。それがBackcast™分析法(特許出願中)です。
理由④ ”時間”という、見えない変数を忘れていませんか
まず、一言で言うと
昨日の”設定200℃”と、今日の”設定200℃”は、同じ数値でも同じ物理量ではありません。
具体的にどういうことか
設備は少しずつ変化していきます。
- ヒーター断線予兆で立ち上がりが遅くなる
- 金型は累積ショットで摩耗して寸法が数μm変わる
- 熱電対や圧力センサは長期使用でドリフト(校正ズレ)する
- 油圧系はシール劣化で応答性が変わる
- サーボモーターはブラシ摩耗でトルク応答が変わる
つまり、1年前の「設定200℃」と今の「設定200℃」は、同じ数字が並んでいるだけで、実際の熱履歴は違うわけです。
なぜ気づきにくいのか
厄介なことに、これらの変化は日次では検出できないほど遅く進行します。1日単位で見ると気づかない。でも、四半期で振り返って初めて「あれ、去年と歩留まりが違うぞ」と分かる。気づいた頃には、原因の特定が難しくなっている。
さらに、“設備が変化したから予測モデルもズレる”というのは、AI予測モデルを運用する上で最大の落とし穴です。学習時点の設備状態と、運用時点の設備状態が違えば、モデルの精度は静かに落ちていきます。
では、どうすればいいのか
打ち手は3つあります。
打ち手④-A:予測値と実績値の乖離を継続監視する
予測モデルは、「今の条件なら、品質はこうなるはず」と言い続けます。実績がそれと合っている間は、モデルの世界と現実がずれていない。しかし、乖離がじわじわ広がってきたら、それは「設備側の何かがズレ始めた」というサインです。SFIでは、Backcast提案の採用後に実績品質値と予測値の差を継続監視します(特許請求項3の領域)。
打ち手④-B:乖離検知時の”リカバリ手順”を仕組み化する
乖離が閾値を超えたら、SFIは**「再提案しますか?」または「採用前の条件に戻しますか?」**という選択肢を現場に返します。異常を検知するだけで止まらず、次のアクションまで用意するのがポイントです。多くの監視システムはアラートを出すだけで、その後の判断を人任せにする。これでは現場は動けません。
打ち手④-C:ドリフトが読めた変数を、逆に”設備状態指標”として組み込む
たとえば「金型累積ショット数が10万を超えると精度が落ちる」と分かれば、次からその変数を説明変数に加えて、“劣化を織り込んだ最適条件”を提案できるようになる。ドリフトを敵にせず、モデルの一部として取り込む発想です。
つまり、こういうことです
条件管理に”時間軸”を持ち込まない限り、バラつきの正体は掴めない。「今の予測モデルは、今の設備で通用しているか」を毎日問い続ける仕組みが必要です。
理由⑤ そもそも”揃える単位”が粗すぎる
まず、一言で言うと
「温度を200℃で揃えました」と言うとき、あなたが揃えているのは”平均値”や”設定値”だけかもしれません。品質を決めているのは、そこに至るまでの”波形”のほうです。
具体的にどういうことか
射出成形の温度プロファイルを想像してください。同じピーク温度200℃でも、そこに至るまでの経路は毎回違います。
- 立ち上がりの勾配(急激か、なだらかか)
- ピークを維持している時間の長さ
- 保圧から冷却への切り替えタイミング
- 冷却カーブの形(一気に冷えるか、じわじわか)
- 途中に微小な変動があるか(ハンチング)
同じピーク温度でも、この経路が違えば、材料が受けた熱履歴は全く別物です。樹脂の結晶化度も、内部応力の残り方も、寸法安定性も変わります。
溶接なら電流波形の立ち上がり、打錠なら圧力プロファイルの形状、塗工ならコーターギャップの微小振動──どれも「代表値では捉えきれない波形の情報」に品質決定要因が隠れています。
なぜバラつくのか
代表値(平均、最大、設定値)は、波形を1つの数字に押しつぶした情報です。押しつぶした瞬間、波形が持っていた”形の情報”は失われます。その失われた情報の中に、品質を決める要因が隠れている。
では、どうすればいいのか
打ち手は2つあります。
打ち手⑤-A:波形から特徴量を切り出す
「揃える単位」を上げます。代表値から、波形の形そのものを表す特徴量へ。SFIは、波形から5カテゴリ・33種類の特徴量を自動的に切り出す機能を最初のブロックに置いています。立ち上がり勾配、ピーク保持時間、面積、歪度、尖度、周波数成分──こういった”波形の形を数字にした指標”を、コードを書かずに現場が扱える形にしています。
打ち手⑤-B:品質工学のふるいで特徴量を絞る
特徴量を33種類切り出しても、全部が効くわけではありません。SFIは品質工学のSN比・歪度・尖度に基づいて**”効かない特徴量を自動的にふるい落とす”機能を持っています。33種類から効く18種類程度に絞ることで、モデルの精度も解釈性も上がる。「増やして、絞る」の2段構え**です。
つまり、こういうことです
“揃える粒度”を、代表値から波形特徴量へ上げる。そして品質工学で絞る。ここまで来て、ようやく「条件を揃える」という言葉が本当の意味を持ちます。
■ 全体まとめ ── 5つの理由と打ち手を、1枚の表で
「同じ条件なのにバラつく」の正体と対策を整理すると、こうなります。
| 理由 | 実は”揃っていない”もの | 主な打ち手 |
|---|---|---|
| ① | 前工程から来る 材料の特性 | ①-A 下流で追従/①-B 上流で材料特性を揃える /①-C 前後同時最適化 |
| ② | 管理項目に載って いない変数 | ②-A 説明力の定量化/②-B 階段状の変数追加 /②-C 残差から未知変数を推定 |
| ③ | 設定値と実際の 物理量 | ③-A 実測フィードバック制御 /③-B 実測値からの逆算(Backcast™) |
| ④ | 時間による設備の ドリフト | ④-A 予測-実績乖離監視/④-B リカバリ手順の仕組み化/④-C 劣化を変数化 |
| ⑤ | 揃える粒度 (代表値 vs 波形) | ⑤-A 波形特徴量の切り出し /⑤-B 品質工学によるふるい分け |
打ち手を並べると、多くが従来のExcelや汎用AutoMLでは実装が困難な領域です。ここに、SFIというツールが存在する意味があります。
■ 結論
「条件を揃える」という言葉を、もう一段解像度を上げて使い直す。
これだけで、多くの現場のバラつき議論は前に進みます。SFIは、この5層×複数の打ち手を1つの画面(キャンバス)の上で扱えるように設計しました。特別な数学の知識も、Pythonのコードも要りません。現場のエンジニアが、現場の言葉で、この5層に向き合えるようにする。それがSFIの役割です。
同じ条件で品質がバラつくとき、揃えているのは条件ではありません。“条件の代理指標”を揃えているだけです。
今日から、「うちは条件を揃えている」と言う前に、**「何を、どの粒度で、どこまで揃えているのか。そして、揃っていないものをどう追いかけるのか」**を一度言葉にしてみてください。そこに、改善の入口があります。
※本記事で言及した「Backcast™分析法」は特許出願中です(特願2026-116053/プロセス条件提案方法/株式会社Vertys)。
この記事へのコメントはありません。