/** * @file src/tableau/enhanced-branch-and-cut.ts * @description Advanced branch-and-cut with configurable strategies * * Extends the basic branch-and-cut with: * - Node selection: best-first, depth-first, or hybrid * - Variable selection: most-fractional, pseudocost, or strong branching * - Diving heuristic for faster feasible solution discovery * * These advanced strategies can significantly improve performance on * large MIP instances compared to the basic implementation. */ import type Tableau from "./tableau"; import type { BranchCut } from "./types"; export interface EnhancedBranchAndCutService { applyCuts(tableau: Tableau, branchingCuts: BranchCut[]): void; branchAndCut(tableau: Tableau): void; } export interface BranchAndCutOptions { nodeSelection?: "best-first" | "depth-first" | "hybrid"; branching?: "most-fractional" | "pseudocost" | "strong"; useDiving?: boolean; strongBranchingCandidates?: number; } /** * Enhanced branch-and-cut with: * - Pseudocost branching * - Hybrid node selection (depth-first early, best-first later) * - Diving heuristic for quick feasible solutions */ export declare function createEnhancedBranchAndCutService(options?: BranchAndCutOptions): EnhancedBranchAndCutService;