2016-08-11 53 views
2

我剛開始使用Sat4j庫。你能指導我如何計算解析和簡化給定的CNF輸入所花費的時間。解析和簡化CNF文件的時間

我已經使用

ISolver solver = SolverFactory.newDefault(); 
Reader reader = new DimacsReader(solver); 
IProblem problem = reader.parseInstance(filename.cnf); 
boolean check=problem.isSatisfiable(); 

我要計算由閱讀器解析和isSatisfiable所花費的時間。 如果可能請親切指示我在圖像中查找處理的每個cnf文件的信息 screenshot of the details i look to collect using sat4j lib 謝謝您的提前。

回答

0

我嘗試以舊方式嵌入您的源代碼以獲得執行時間。

Date startDate = Calendar.getInstance().getTime(); 
long d_StartTime = new Date().getTime(); 

    ISolver solver = SolverFactory.newDefault(); 
    Reader reader = new DimacsReader(solver); 
    IProblem problem = reader.parseInstance(filename.cnf); 

Date endDate = Calendar.getInstance().getTime(); 
long d_endTime = new Date().getTime(); 

System.out.format("Milli = %s, (D_Start : %s, D_End : %s) \n", (d_endTime - d_StartTime),d_StartTime, d_endTime); 

boolean check=problem.isSatisfiable(); 

這樣,解析實例的時間將以毫秒爲單位顯示:)。 我希望這有幫助!