[發明專利]一種聯鎖布爾邏輯的優化方法在審
| 申請號: | 201711147269.2 | 申請日: | 2017-11-17 |
| 公開(公告)號: | CN107977493A | 公開(公告)日: | 2018-05-01 |
| 發明(設計)人: | 王玲群;張程;陳吉余;高武;徐澤駿;馬銳;莫運前;成鵬 | 申請(專利權)人: | 卡斯柯信號有限公司 |
| 主分類號: | G06F17/50 | 分類號: | G06F17/50 |
| 代理公司: | 上海科盛知識產權代理有限公司31225 | 代理人: | 應小波 |
| 地址: | 200070 上海市靜安區*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 聯鎖 布爾 邏輯 優化 方法 | ||
技術領域
本發明涉及一種信號優化方法,尤其是涉及一種聯鎖布爾邏輯的優化方法。
背景技術
在軌道交通鐵路信號設計過程中,布爾代數被應用于計算機聯鎖系統,用來表示聯鎖邏輯關系,基于專利申請號200910049341.7的現有已有輔助工具自動生成的布爾代數,有以下缺陷:
1.數據量大。對一個有40組道岔的中等車站的布爾代數有近1萬條布爾表達式,一條表達式中包含的布爾變量有可能達到上百個,這對聯鎖下位機軟件的處理速度有極大的影響。
2.有冗余變量。每一條布爾表達式中可能會出現多余的支路或者無效變量。
3.邏輯復雜。每一條布爾表達式中可能包含多個變量相加再連乘的復雜四則混合運算,變量個數多,增加聯鎖下位機的運算負荷。
發明內容
本發明的目的就是為了克服上述現有技術存在的缺陷而提供一種聯鎖布爾邏輯的優化方法。
本發明的目的可以通過以下技術方案來實現:
一種聯鎖布爾邏輯的優化方法,包括:在生成布爾表達式后,對生成的結果通過優化聯鎖布爾邏輯算法進行優化,得到新的表達式進行輸出。
優選地,該方法具體包括以下步驟:
步驟S1、讀取所有布爾表達式,遍歷每一條布爾表達式,記錄值為常零的布爾變量到可優化布爾變量鏈表一,記錄值為常1的布爾變量到可優化布爾變量鏈表二,進入步驟S2;
步驟S2、遍歷每一條布爾表達式,若表達式中包含小括號,則進行拆除括號操作,得到只有加法和乘法運算的布爾表達式,進入步驟S3;
步驟S3、循環遍歷每一條布爾表達式,將每一條布爾表達式以加號分割每一組布爾變量:若存在相同的項,則只保留一項,其余項刪除,進入步驟S4;
步驟S4、若存在某一項加上某一項乘以另一項的情況,則刪除某一項乘以另一項,僅保留某一項,進入步驟S5;
步驟S5、若存在某一項加上某一項取反的情況,則整個表達式的值置為1,且記錄到鏈表二中,進入步驟S6;
步驟S6、若存在某一項乘以另一項加上某一項的取反乘以另一相同項的情況,則僅保留另一項,進入步驟S7;
步驟S7、將優化后的布爾表達式刪除多余運算符之后保存,進入S3,若步驟S3、S4、S5、S6都沒有進行優化操作,則進入步驟S8;
步驟S8、遍歷每一條優化后的布爾表達式,若表達式中包含可優化布爾變量鏈表一中的布爾變量,且為該布爾變量與其它布爾變量相加的方式,則刪除該布爾變量,進入步驟S9;
步驟S9、若表達式中包含可優化布爾變量鏈表一中的布爾變量,且為該布爾變量與其它布爾變量相乘的方式,則刪除該布爾變量以及與它相乘的所有布爾變量,進入步驟S10;
步驟S10、若最后得到的布爾變量值為零,則添加該布爾變量到鏈表一中,即P=0,則記錄P到可優化布爾變量鏈表一中,進入步驟S11;
步驟S11、將優化后的布爾表達式刪除多余運算符之后保存,進入S8,若步驟S8、S9、S10都沒有進行優化操作,則進入步驟S12;
步驟S12、循環遍歷每一條優化后的布爾表達式,若表達式中包含可優化布爾變量鏈表二中的布爾變量,則刪除該布爾變量,進入步驟S13;
步驟S13、若最后得到的布爾變量為1,則添加該布爾變量到可優化布爾變量鏈表二中,即P=1,則記錄P到可優化布爾變量鏈表二中,進入步驟S14;
步驟S14、將優化后的布爾表達式刪除多余運算符之后保存,進入S12,若步驟S12、S13都沒有進行優化操作,則進入步驟S1;
步驟S15、遍歷每一條優化后的布爾表達式,輸出每一條表達式,算法結束。
優選地,所述的步驟S2中的操作具體為:P=(A+B)*(C+D)+E,則P=A*C+A*D+B*C+B*D+E。
優選地,所述的步驟S3中的操作具體為:P=A+A+B,則P=A+B。
優選地,所述的步驟S4中的操作具體為:P=A+A*B+C,則P=A+C。
優選地,所述的步驟S5中的操作具體為:P=A+~A,則P=1,并記錄P到鏈表二中。
優選地,所述的步驟S6中的操作具體為:P=A*B+~A*B,則P=B。
優選地,所述的步驟S8中的操作具體為:A=0,P=A+B,則P=B。
優選地,所述的步驟S9中的操作具體為:A=0,P=A*B+C,則P=C。
優選地,所述的步驟S12中的操作具體為:A=1,P=A*B+C,則P=B+C。
與現有技術相比,本發明具有以下優點:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于卡斯柯信號有限公司,未經卡斯柯信號有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711147269.2/2.html,轉載請聲明來源鉆瓜專利網。





