System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及數據分析,特別涉及一種約束系統的約束沖突排除方法、設備和存儲介質。
技術介紹
1、約束系統是指由圖形(例如點、線、圓等)和添加在圖形之間的約束(例如平行、重合、距離等)組成的系統,其中,添加于圖形上的各種約束可能存在矛盾(例如,兩直線既平行又垂直)或者冗余(例如,點與直線重合且點到直線的距離為零),這種情況稱之為約束沖突。
2、目前,國內外的各種約束求解引擎均提供狀態分析功能,該功能可以給出一個包含所有沖突約束的過約束集。然而,若用戶想要排除這些沖突的約束,需要人工甄別沖突具體存在于哪些約束之間,當過約束集規模龐大時,該過程十分繁瑣且難度很大。
技術實現思路
1、本申請提供一種約束系統的約束沖突排除方法、設備和存儲介質,可以顯著提升排除約束沖突的效率和效果。
2、一方面,本申請提供了一種約束系統的約束沖突排除方法,所述方法包括:
3、判斷初始約束系統是否有解;
4、若所述初始約束系統有解,則通過分析第一雅各比矩陣確定所述
5、初始約束系統的過約束子集,所述第一雅各比矩陣為有解約束系統中的約束轉化所得方程組對應的雅各比矩陣;
6、若所述初始約束系統無解,則將所述初始約束系統中的尺寸轉化為可變尺寸;
7、若已轉化為可變尺寸的約束系統有解,則通過分析第二雅各比矩陣確定所述初始約束系統的過約束子集,所述第二雅各比矩陣為尺寸可變有解約束系統中的約束轉化所得方程組對應的雅各比矩陣;
8
9、對所述二部圖中的約束節點進行最大流匹配,并在迭代尋找擴充路徑的過程中確定所述初始約束系統的過約束子集;
10、從所述過約束子集中去掉任意一個約束。
11、另一方面,本申請提供了一種約束系統的約束沖突排除裝置,所述裝置包括:
12、判斷模塊,用于判斷初始約束系統是否有解;
13、第一確定模塊,用于若所述初始約束系統有解,則通過分析第一雅各比矩陣確定所述初始約束系統的過約束子集,所述第一雅各比矩陣為有解約束系統中的約束轉化所得方程組對應的雅各比矩陣;
14、第一轉化模塊,用于若所述初始約束系統無解,則將所述初始約束系統中的尺寸轉化為可變尺寸;
15、第二確定模塊,用于若已轉化為可變尺寸的約束系統有解,則通過分析第二雅各比矩陣確定所述初始約束系統的過約束子集,所述第二雅各比矩陣為尺寸可變有解約束系統中的約束轉化所得方程組對應的雅各比矩陣;
16、第二轉化模塊,用于若已轉化為可變尺寸的約束系統無解,則將所述初始約束系統轉化為二部圖,所述二部圖包括約束節點;
17、第三確定模塊,用于對所述二部圖中的約束節點進行最大流匹配,并在迭代尋找擴充路徑的過程中確定所述初始約束系統的過約束子集;
18、刪除模塊,用于從所述過約束子集中去掉任意一個約束。
19、第三方面,本申請提供了一種電子設備,所述設備包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現如上述約束系統的約束沖突排除方法的技術方案的步驟。
20、第四方面,本申請提供了一種存儲介質,所述存儲介質存儲有計算機程序,所述計算機程序被處理器執行時實現如上述約束系統的約束沖突排除方法的技術方案的步驟。
21、從上述本申請提供的技術方案可知,在判斷約束系統有解后,通過分析有解約束系統中的約束轉化所得方程組對應的雅各比矩陣確定約束系統的過約束子集,在判斷已轉化為可變尺寸的約束系統無解后,將初始約束系統轉化為二部圖,對二部圖中的約束節點進行最大流匹配,并在迭代尋找擴充路徑的過程中確定約束系統的過約束子集。由于上述過程可由計算機程序自動完成,通過在約束求解引擎中實現過約束子集的計算,利用過約束子集幫助用戶省去了人工甄別約束沖突存在于哪些約束之間的過程,不僅降低了排除約束沖突的難度,也極大提高用戶排除約束沖突的效率,對于復雜的約束系統,這種處理方式效率和效果更為顯著。
本文檔來自技高網...【技術保護點】
1.一種約束系統的約束沖突排除方法,其特征在于,所述方法包括:
2.如權利要求1所述約束系統的約束沖突排除方法,其特征在于,所述通過分析第一雅各比矩陣確定所述初始約束系統的過約束子集,包括:
3.如權利要求1所述約束系統的約束沖突排除方法,其特征在于,所述通過分析第二雅各比矩陣確定所述初始約束系統的過約束子集,包括:
4.如權利要求1所述約束系統的約束沖突排除方法,其特征在于,所述二部圖還包括圖形節點、源節點和匯節點,所述對所述二部圖中的約束節點進行最大流匹配,并在迭代尋找擴充路徑的過程中確定所述初始約束系統的過約束子集,包括:
5.如權利要求4所述約束系統的約束沖突排除方法,其特征在于,所述根據所述二部圖中的源節點與所述當前約束節點之間連接邊的容量和所述連接邊匹配完成后的流量之間的關系,確定所述初始約束系統的過約束子集,包括:
6.如權利要求1至5任意一項所述約束系統的約束沖突排除方法,其特征在于,所述方法還包括:
7.如權利要求1至5任意一項所述約束系統的約束沖突排除方法,其特征在于,所述方法還包括:
...【技術特征摘要】
1.一種約束系統的約束沖突排除方法,其特征在于,所述方法包括:
2.如權利要求1所述約束系統的約束沖突排除方法,其特征在于,所述通過分析第一雅各比矩陣確定所述初始約束系統的過約束子集,包括:
3.如權利要求1所述約束系統的約束沖突排除方法,其特征在于,所述通過分析第二雅各比矩陣確定所述初始約束系統的過約束子集,包括:
4.如權利要求1所述約束系統的約束沖突排除方法,其特征在于,所述二部圖還包括圖形節點、源節點和匯節點,所述對所述二部圖中的約束節點進行最大流匹配,并在迭代尋找擴充路徑的過程中確定所述初始約束系統的過約束子集,包括:
5.如權利要求4所述約束系統的約束沖突排除方法,其特征在于,所述根據所述二部圖中的源節點與所述當前約束節點之間連接邊的容量和...
【專利技術屬性】
技術研發人員:張圣彬,崔軍,袁波,唐智陵,
申請(專利權)人:深圳泊松軟件技術有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。