13.5. ビルトインのハード制約


ハード制約を実装する代わりに、ハード制約を組み込むこともできます。たとえば、学校の時間割の例では、Lecture A を Room X に割り当てるべきではないが、SolutionValueRangeProvider クラスを使用している場合、Solver はそれを Room X に割り当てようとして、ハード制約に違反していることが判明することがよくあります。計画エンティティーまたはフィルターされた選択で ValueRangeProvider を使用して、講義 A に X とは異なる Room のみを割り当てるように定義します。

これにより、スコア計算が高速になるだけでなく、ほとんどの最適化アルゴリズムが実行不可能なソリューションの評価に費やす時間が短縮されるため、一部のユースケースではパフォーマンスが大幅に向上します。ただし、通常、これは良い考えではありません。なぜなら、短期的な利益と長期的な害を引き換えにするという現実的なリスクがあるからです。

  • 多くの最適化アルゴリズムは、計画エンティティーを変更するときに、ローカルオプティマから抜け出すために、厳しい制約を打ち破る自由度に依存しています。
  • どちらの実装アプローチにも、機能の互換性や自動パフォーマンス最適化の無効化などの制限があります。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る