使用CPlex CP.ppt
文本预览下载声明
Searching for Solutions: Tools for Searching Search Goals Ranking Goals The search for a solution to any type of problem is aided by search goals. In practice, a good scheduling search goal depends on the structural properties of the problem and what the aim is: to find a solution, to improve a known solution, or to prove that some conditions are optimal. Scheduler provides several facilities, including predefined search goals, to facilitate the search for solutions. Examples presented here are solved using high-level search techniques of ILOG Solver. Introducing Scheduler House Construction Activities Satisfying Temporal Constraints (Example 1) windows, facade, garden, painting? 1? moving? roofing, plumbing? 1? garden? roofing, plumbing? 2? facade? roofing? 1? windows? ceiling? 2? painting? carpentry? 1? roofing? masonry? 3? ceiling? masonry? 8? plumbing? masonry? 3? carpentry? 7? masonry? Preceding Activities? Duration? Activity ? House Construction Activities Satisfying Temporal Constraints (Example 1) Define Activities Satisfying Temporal Constraints (Example 1) IloActivity masonry(env, 7, masonry ); IloActivity carpentry(env, 3, carpentry ); IloActivity plumbing(env, 8, plumbing ); IloActivity ceiling(env, 3, ceiling ); IloActivity roofing(env, 1, roofing ); IloActivity painting(env, 2, painting ); IloActivity windows(env, 1, windows ); IloActivity facade(env, 2, facade ); IloActivity garden(env, 1, garden ); IloActivity moving(env, 1, moving ); Add Temporal Constraints Satisfying Temporal Constraints (Example 1) model.add(carpentry.startsAfterEnd(masonry)); model.add(plumbing.startsAfterEnd(masonry)); model.add(ceiling.startsAfterEnd(masonry)); model.add(roofing.startsAfterEnd(carpentry)); model.add(painting.startsAfterEnd(ceiling)); model.add(windows.startsAfterEnd(roofing)); model.add(facade.startsAfterEnd(roofing)); model.add(facade.startsAfterEnd(plumbing)); …… De
显示全部