Search-based software engineering とは

検索ベースのソフトウェアエンジニアリング(SBSE)は、遺伝的アルゴリズム、シミュレートアニーリング、タブー検索などのメタヒューリスティックな検索技術をソフトウェアエンジニアリングの問題に適用します。最適化の問題として、ソフトウェアエンジニアリングにおける多くの活動を挙げることができます。線形計画法や動的計画法などのオペレーションズリサーチの最適化技術は、計算量が複雑で大規模なソフトウェア工学の問題ではしばしば実用的ではありません。研究者や実践者は、メタヒューリスティックな検索手法を使用して、最適に近い、または「十分に良い」ソリューションを見つけます。
SBSEの問題は2つのタイプに分けることができます。
 ブラックボックス最適化の問題、例えば、人々をタスクに割り当てる(典型的な組合せ最適化問題)。ソースコードの操作を考慮する必要のあるホワイトボックスの問題。