色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

求解布爾SAT的方法

玻色量子 ? 來源:玻色量子 ? 2023-06-27 09:56 ? 次閱讀

摘要:布爾可滿足性問題(Boolean Satisfiability Problem,簡稱SAT問題)是邏輯學和計算機科學中的一個問題,它的目的是確定是否存在一種解釋,使給定的布爾公式成立。換句話說,它詢問給定布爾公式的變量是否可以被一致地替換為真值或假值,使公式求值為真。如果是這樣,那么這個公式就是可滿足的。另一方面,如果不存在這樣的賦值,那么該公式所表示的函數對于所有可能的變量賦值都為假,該公式不可滿足1。

追根溯源,SAT是第一個已知的NP-Complete問題,多倫多大學的Stephen Cook在1971年,國家科學院的Leonid Levin在1973年均獨立證明了這一問題。在此之前,NP-Complete問題的概念甚至不存在。另外,證明顯示復雜性類NP中的每個決策問題都可以簡化為CNF公式的SAT問題,有時也稱為“CNFSAT”。

值得注意的是,SAT問題是計算機科學領域最基本的問題之一,有著重要的理論意義和實際應用。在理論研究中,SAT問題是一個經典的判定問題,同樣是第一個被證明為NP-Complete的問題。這個決策問題在包括理論計算機科學、復雜性理論、算法、密碼學和人工智能等計算機科學的各個領域都至關重要。

在現實場景應用中,SAT是很多工業場景里面的核心工具。尤其在一些包括芯片測試、電路等價性驗證、電路模型檢測、智慧園區及無線設備的布局、操作系統、航空等對精確度要求很高的核心領域,都需要SAT求解器的重磅參與。例如,芯片SAT分析是一種系統級應用測試分析方法,通過對芯片的性能和可靠性進行全面的測試和分析,以評估芯片在實際應用中的表現。 另外,在騰訊地圖中的語音序列調度中,采用SAT算法中的約束加權方法,播報失敗率從6.20%可降至2.85%,降幅54%,同時把地圖路網更新的內存消耗量降低一半,更新周期縮短一半。

5月,北京玻色量子科技有限公司(以下簡稱“玻色量子”)在新品發布會上推出的100量子比特相干光量子計算機真機——“天工量子大腦”,旨在快速、且高效地求解NP難的組合優化問題,尤其是Ising問題。而布爾可滿足性(SAT)和最大可滿足性(Max-SAT)是NP-Complete問題和NP難問題的一類,兩者同等重要且更切合實際的組合優化問題。

目前,求解布爾SAT的方法有很多,比如量子退火和經典的隨機局部搜索(SLS)求解器。然而,它們都需要巨量步驟來解決困難的SAT問題,這將耗費大量的時間和精力。隨著量子計算技術的發展,一個SAT問題可以轉化為一個Ising/QUBO問題,從而可由玻色量子的“天工量子大腦”快速高效地求出全局最優解。

那么,為了更清楚的理解SAT問題,下面首先介紹一些基本術語。

基本定義和術語

SAT問題,簡單地說就是確定是否存在滿足給定布爾公式解釋的問題,它需要判斷給定布爾公式的變量是否可以一致地替換為值TRUE或FALSE,以使公式的計算結果為TRUE。如果是這種情況,則公式稱為“滿足”。否則,若不存在這樣的賦值,則公式表示的函數對于所有可能的變量賦值都是FALSE,并且公式是不滿足的。例如,公式“a AND NOT b”是可以滿足的,因為可以找到值a = TRUE和b = FALSE,這使得(aANDNOT b)= TRUE。相反,“a AND NOT a”是無法被滿足的,因為找不到這樣的a的值。

命題邏輯公式,也稱為布爾表達式,由變量,運算符AND(連接,也用∧表示)、OR(分離,∨)、NOT(否定,?)和括號構成。如果通過為其變量分配適當的邏輯值(即TRUE,FALSE)可以使公式為TRUE,則稱該公式是可滿足的。給定公式,布爾可滿足性問題(SAT)是檢查它是否可滿足。

布爾可滿足性問題有幾種特殊情況,其中公式需要具有特定結構。文字是一個變量,稱為正文字,或變量的否定,稱為負文字。子句是文字(或單個文字)的分離。如果一個子句最多包含一個正文字,則該子句稱為Horn子句。如果公式是條款(或單個子句)的連接,則公式為合取范式(CNF)。

例如,x1是正文字,?x2是負文字,x1∨?x2是子句,(x1∨?x2)∧(?x1∨x2∨x3)∧x1是聯合范式的公式;它的第一和第三個條款是Horn條款,但它的第二個條款不是。

最大可滿足性問題(Max-SAT)是確定給定布爾公式(以合取范式表示)中最多有多少個子句可以通過對公式變量賦真值來使其成立。它是布爾可滿足性問題的推廣,后者詢問是否存在一種真值賦值使所有子句都成立。

問題描述

2-SAT和3-SAT問題是SAT問題的兩種形式,它們的區別在于每個子句中包含的變量數量不同。

具體來說,2-SAT問題中每個子句最多包含兩個變量,形如(a∨b)、(?a∨c)等,其中∨表示邏輯或,?表示邏輯非。而3-SAT問題中每個子句最多包含三個變量,形如(a∨?b∨c)、(?a∨b∨?c)等。

因為2-SAT問題中每個子句最多包含兩個變量,所以可以使用一些特殊的算法(如Kosaraju算法和Tarjan算法)在多項式時間內求解。而3-SAT問題則是NP-Complete問題,目前還沒有已知的多項式時間算法可以解決。由于二元變量存在(0/1或者-1/+1)表達形式的區別,常見模型有兩種建模思路,在這里分別進行說明。

建模思路一

我們以Max 2-SAT問題進行討論,將文字表示為0/1的變量,建立QUBO模型。每個子句由兩個文字組成,如果其中一個或兩個文字都為真,則滿足一個子句。對于這個問題有三種可能的子句類型,每一種都有一個傳統的約束,如果子句是真的,則必須滿足。

下面是三種常見的轉換情況:

① 無負文字

例如:(xi∨xj)

傳統約束:(xi+xj)≥1

QUBO懲罰項:(1-xi-xj+xixj)

② 一個負文字

例如:(xi∨?xj)

傳統約束:xi+?xj≥1

QUBO懲罰項:(xj-xixj)

③兩個負文字

例如:(?xi∨?xj)

傳統約束:?xi+?xj≥1

QUBO懲罰項:(xixj)

注:由于變量xj為1/0,所以?xj=1-xj

對于每個子句類型,如果滿足傳統約束,則對應的懲罰等于0;如果不滿足傳統約束,則二次懲罰等于1。給定這種一一對應的關系,我們可以通過等價地最小化不滿足的子句數量來逼近子句數量最大化問題。通過這種形式我們可以構建一個QUBO模型。

所以,對于給定的Max 2-SAT算例,我們可以添加與問題子句相關的二次懲罰項,得到一個我們想要最小化的復合懲罰函數。由于懲罰項均為二次型,因此該懲罰函數采用QUBO模型形式,min y=xTQx。如果在最小化QUBO模型時等于零,這意味著我們有一個滿足所有子句的解;如果等于5,這意味著我們有一個滿足除5以外的所有子句的解。

我們用以下4個變量和12個子句的例子來說明這個算例的建模和求解過程。

f29efa98-1486-11ee-962d-dac502259ad0.png

f2b1c196-1486-11ee-962d-dac502259ad0.png

將懲罰項加在一起給出了我們的QUBO模型表達式:

min y=3+x1-2x4-x2x3+x2x4+2x3x4 (1)

或QUBO模型的矩陣形式:

miny=3+xTQx (2)

則Q矩陣表達為

f2f6e0c8-1486-11ee-962d-dac502259ad0.png

求解這個QUBO模型可以得到y=3-2=1,其中x1=x2=x3=0,x4=1。意思是除一個子句外的所有子句都滿足。

注:上述QUBO方法已在Kochenberger等人的研究中得到成功應用[2],研究解決了含有數百個變量和數千個子句的Max 2-SAT問題。這種方法求解Max 2-SAT問題的一個有趣的特點是,得到的待求解QUBO模型的大小與問題中的子句數無關,僅由變量的個數決定。因此,一個含有200個變量和30000個子句的Max2-SAT問題可以建模為一個只含有200個變量的QUBO模型并求解。

建模思路二

為了更好地理解這個問題,我們將文字表示為-1/1的變量,繼續討論一個3-Sat問題。

f3064b8a-1486-11ee-962d-dac502259ad0.png

我們討論一個3-Sat子句:

x1∨x2∨x3

該子句通過引入-1/1輔助變量可以映射成二次函數:

f314fa7c-1486-11ee-962d-dac502259ad0.png

在x0,x1,x2的任意取值中,都有一個使得K最小的值a。如果我們假設a總是被設置為這個最優值,那么除了x0=x1=x2=-1時能量為+1外,其他取值的最低能量都是-7。下表總結了有關變量的取值,其中加粗的數字是給定x0,x1,x2變量的最低可能能量。

f3229b00-1486-11ee-962d-dac502259ad0.png

使用這種方法,如果xi在子句中被否定,我們可以通過將xi替換為-xi來編碼任意3-Sat子句。現在,如果我們對求和這些每個子句對應的二次函數,我們可以得到一個關于Nxi自旋變量和Maj輔助自旋的二次函數,從而得到一個大小為N+M的Ising/QUBO問題。如果該問題是可滿足的,那么最小的Ising能量將是-7M,如果該問題是不可滿足的問題,那么最小的Ising能量為-7Msat,其中Msat是可滿足子句的個數。

問題拓展

MAX-SAT是最大可滿足性問題,是SAT問題的推廣。它要求最大數量的條款,任何轉讓都可以滿足。它具有有效的近似算法,但是NP時間難以精確解決。

在量子計算領域,2023年6月,NTT最新的研究提出了一種相干SAT求解器(CSS)的新技術。使用圖形處理器(GPU)實現的Cyber-CSS與現有的SLS求解器(如probSAT)相比有一定的競爭力。未來通過量子計算實現SAT問題的快速求解將成為一種新的有效方法。

如今,玻色量子已基于自研的相干光量子計算機真機——“天工量子大腦”在SAT問題求解上具有顯著的算力優勢,代表了其在NP-Complete問題上的實用性,以進一步拓展更多可實用化量子計算應用場景。

玻色量子還將啟動“燎原計劃”開發者平臺,并持續對外開放“天工量子大腦”的真機測試,熱忱歡迎更多不同領域的研究伙伴前來了解相干量子計算的原理和能力,在此基礎上展開共同研發,用量子計算去解決更多真實場景中的問題,讓量子計算的超強算力能真正服務于各行各業,滿足未來時代對于計算的需求。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    455

    文章

    50714

    瀏覽量

    423155
  • 計算機
    +關注

    關注

    19

    文章

    7488

    瀏覽量

    87852
  • 建模
    +關注

    關注

    1

    文章

    304

    瀏覽量

    60765

原文標題:玻色量子“揭秘”之可滿足性問題(SAT)與QUBO建模

文章出處:【微信號:玻色量子,微信公眾號:玻色量子】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    一種用于隨機約束仿真的SAT增強的字級求解

    上取決于產生合法激勵的約束求解器的性能。 ? 本文我們首先討論了字級求解器在求解包含特定操作符(如IF-THEN-ELSE、IMPLIES和布爾OR)的約束時遇到的挑戰。為了克服這一挑
    發表于 06-06 10:28 ?591次閱讀
    一種用于隨機約束仿真的<b class='flag-5'>SAT</b>增強的字級<b class='flag-5'>求解</b>器

    GPS RTK轉換參數求解方法

    GPS RTK轉換參數求解方法摘要:GPS RTK 技術是目前測量中具有定位快速, 精度高的一種先進的測量方法. 主要介紹了RTK 在應用過程中求解轉換參數的
    發表于 04-26 11:33 ?71次下載

    采用布爾處理的鍵盤矩陣解讀方法分析

    采用布爾處理的鍵盤矩陣解讀方法分析 運用布爾處理技術對鍵盤矩陣進行掃描解讀: 運用“位”操作方式將整個鍵盤矩陣的掃描解讀
    發表于 03-29 15:13 ?1009次閱讀
    采用<b class='flag-5'>布爾</b>處理的鍵盤矩陣解讀<b class='flag-5'>方法</b>分析

    布爾代數,布爾代數是什么意思

    布爾代數,布爾代數是什么意思 布爾代數最初是作為對邏輯思維法則的研究出現的。英國哲學家George Boole于1847年的論文“邏輯之數學分析”及“思維法則之研究”中引
    發表于 03-08 11:04 ?8392次閱讀

    基于硬件模擬的SAT求解框架

    基于硬件模擬的SAT求解框架_何安平
    發表于 01-07 20:49 ?0次下載

    布爾矩陣乘的分布式異構并行優化

    布爾多項式求解是當今密碼代數分析中的關鍵步驟,F4算法是布爾多項式求解的高效算法。分析了Lachartre為F4矩陣專門設計的高斯消去算法,針對其中
    發表于 11-21 15:32 ?3次下載

    基于硬件可編程邏輯的SAT求解算法研究與進展

    布爾可滿足性SAT問題作為第一個被證明的NP完全問題,是計算機理論與應用的核心問題,有著重要的應用價值,因此近年來涌現了各種各樣SAT求解器。但是,
    發表于 12-01 17:05 ?0次下載
    基于硬件可編程邏輯的<b class='flag-5'>SAT</b><b class='flag-5'>求解</b>算法研究與進展

    基于SMT求解器的程序路徑驗證方法

    針對程序中因存在路徑條數過多或復雜循環路徑而導致路徑驗證時的路徑搜索空間過大,直接影響驗證的效率和準確率的問題,提出一種基于可滿足性模理論(SMT)求解器的程序路徑驗證方法。首先利用決策樹的方法
    發表于 12-11 13:49 ?1次下載
    基于SMT<b class='flag-5'>求解</b>器的程序路徑驗證<b class='flag-5'>方法</b>

    聚類和劃分的SAT分治判定

    滿足性來判定原公式的可滿足性,相當于用分治法將復雜問題分解為多個子問題來求解.這種分治判定方法一方面降低了原公式的可滿足性判定復雜度;另一方面,由于子句組的判定可以并行,因而判定速度能夠得到進一步的提高.對于不能直接產生布爾子句
    發表于 01-24 17:41 ?0次下載

    瞬態擴散方程求解方法研究

    中子時空動力學模型是一個剛性模型。求解中子時空動力學模型時,常常將其簡化為點堆模型。基于點堆模型提出了如下求解方法:吉爾算法、剛性限制方法(SCM)、線性多步法、四階隱式龍格庫塔法等。
    發表于 03-12 14:54 ?0次下載

    布爾代數定律的描述

    布爾代數是我們用來分析數字門和電路的數學。我們可以使用這些“布爾定律”來減少和簡化復雜的布爾表達式,以減少所需的邏輯門數。因此,布爾代數是一個基于邏輯的數學系統,它具有自己的一套規則或
    的頭像 發表于 06-22 09:36 ?7300次閱讀
    <b class='flag-5'>布爾</b>代數定律的描述

    數列極限的求解方法及案例分析

    數列極限的求解方法及案例分析
    發表于 03-24 10:25 ?0次下載
    數列極限的<b class='flag-5'>求解</b><b class='flag-5'>方法</b>及案例分析

    基于獎勵機制的SAT求解器分支策略綜述

    分支決策是CDCL( Conflict Driven Clause Learning)求解器一個十分關鍵的環節,一個妤的分支策略可以減少分支決策次數進而提高SAT求解器的效率。目前,先進的分支策略
    發表于 05-18 11:53 ?1次下載

    基于布爾函數導數的布爾置換構造

    布爾函數導數的性質在密碼構造中起著重要的作用。文中利用布爾函數導數的性質,構造了一個新的平衡布爾函數然后基于平衡布爾函數與布爾置換的關系,構
    發表于 06-17 10:58 ?15次下載

    節點電壓方程的列寫及求解方法

    電子發燒友網站提供《節點電壓方程的列寫及求解方法.ppt》資料免費下載
    發表于 12-25 09:08 ?0次下載
    主站蜘蛛池模板: 亚洲高清视频在线| 色AV色婷婷97人妻久久久| 99国产热视频在线观看| 97亚洲狠狠色综合久久位 | 啪啪后入内射日韩| 日本高清在线一区二区三区| 三级网址在线播放| 香蕉免费高清完整| 妖精视频一区二区免费| 国模孕妇模特季玥之粉红| 国产一区二区三区影院| 久久精品一区二区三区资源网| 啦啦啦视频在线观看WWW| 欧美日韩1区| 叔叔 电影完整版免费观看韩国| 亚洲AV蜜桃永久无码精品红樱桃| 亚洲欧美日韩高清中文在线| 259luxu高跟黑色丝袜系列| yellow2019在线观看视频| 国产精品97久久久久久AV色戒| 国产亚洲日韩欧美视频| 考好老师让你做一次H| 日本老人oldmantv乱| 亚洲 欧美 制服 校园 动漫| 这里只有精品在线视频| 成 人 色综合| 黑色丝袜在线观看| 国产午夜不卡| 国产午夜精品不卡视频| 久久精品国产亚洲AV热无遮挡| 欧美精品久久久久性色AV苍井| 忘忧草直播| 中文字幕福利视频在线一区| 成人AV精品视频| 激情午夜307| 让男人玩尿道的女人| 亚洲免费在线视频| 白白操在线视频| 狠狠人妻久久久久久综合九色| 女bbbbxxx孕妇| 亚洲高清无在码在线电影|