From b9daa75a077f05f88ad9d949b53cad904e80ddfb Mon Sep 17 00:00:00 2001 From: github-nakasho Date: Tue, 21 Jul 2020 11:52:03 +0900 Subject: [PATCH] Modify 4-Parameters_customize.md --- build/.DS_Store | Bin 0 -> 6148 bytes build/doctrees/1-Introduction.doctree | Bin 5458 -> 5438 bytes build/doctrees/2-Install.doctree | Bin 8750 -> 8730 bytes build/doctrees/3-Minimum_sample.doctree | Bin 4460 -> 4440 bytes build/doctrees/4-Parameters_customize.doctree | Bin 3778 -> 30363 bytes build/doctrees/5-benchmark.doctree | Bin 6882 -> 6862 bytes build/doctrees/6-HigherOrderModel.doctree | Bin 6061 -> 6041 bytes build/doctrees/7-hogehoge.doctree | Bin 0 -> 6017 bytes build/doctrees/apis/modules.doctree | Bin 2910 -> 2890 bytes build/doctrees/apis/openjij.doctree | Bin 6776 -> 6706 bytes build/doctrees/apis/openjij.model.doctree | Bin 76989 -> 76589 bytes .../apis/openjij.sampler.chimera_gpu.doctree | Bin 84613 -> 84303 bytes build/doctrees/apis/openjij.sampler.doctree | Bin 252753 -> 251733 bytes build/doctrees/apis/openjij.utils.doctree | Bin 77264 -> 76904 bytes build/doctrees/environment.pickle | Bin 187256 -> 195207 bytes build/doctrees/index.doctree | Bin 5496 -> 5476 bytes build/html/.DS_Store | Bin 0 -> 6148 bytes build/html/.buildinfo | 2 +- build/html/4-Parameters_customize.html | 166 +++++++++++++++++- build/html/_images/schedule.png | Bin 0 -> 7618 bytes build/html/_images/schedule_sqa.png | Bin 0 -> 6693 bytes build/html/_images/schedule_sqa_2.png | Bin 0 -> 10151 bytes build/html/_sources/.DS_Store | Bin 0 -> 6148 bytes .../_sources/4-Parameters_customize.md.txt | 160 ++++++++++++++++- build/html/_sources/7-hogehoge.md.txt | 34 ++++ build/html/searchindex.js | 2 +- source/4-Parameters_customize.md | 160 ++++++++++++++++- source/images/.DS_Store | Bin 0 -> 6148 bytes source/images/4/schedule.png | Bin 0 -> 7618 bytes source/images/4/schedule_sqa.png | Bin 0 -> 6693 bytes source/images/4/schedule_sqa_2.png | Bin 0 -> 10151 bytes 31 files changed, 498 insertions(+), 26 deletions(-) create mode 100644 build/.DS_Store create mode 100644 build/doctrees/7-hogehoge.doctree create mode 100644 build/html/.DS_Store create mode 100644 build/html/_images/schedule.png create mode 100644 build/html/_images/schedule_sqa.png create mode 100644 build/html/_images/schedule_sqa_2.png create mode 100644 build/html/_sources/.DS_Store create mode 100644 build/html/_sources/7-hogehoge.md.txt create mode 100644 source/images/.DS_Store create mode 100644 source/images/4/schedule.png create mode 100644 source/images/4/schedule_sqa.png create mode 100644 source/images/4/schedule_sqa_2.png diff --git a/build/.DS_Store b/build/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..7dd6f56f3b45852fd37972288b768f539803c629 GIT binary patch literal 6148 zcmeHK!Ab)$5KY>uX+`WoP;a?-tI(Dfya>x$58i|oJ*c$1wAh91ZfUm`U03!y^pE@j zf5(|5EtV>H60tKdd6UUZLf$T!gfYhLNw>yWnK33n5pzXoz7QNoU6P#fAab0;n~sNG z5P8slTZ$&fUt|EkU4ivk%mys@{QbOP;E&^K^_}PPg|+n!AxfgORl0Th(bS3Ecrv!# z(KYtY-MH@=`yz^hx$SzFes9_?@0>(o?D}DEq>}w^4?=FP{IDBM?PwBq$7&u&4+v2d z#ddi=N$SmNqaqKR&9owuqv}ybHX8LbEsEWP+VNRu@bH*CrOz*#Rt|rll5K-Ccm-p= z!+U2G22pqizFGV%j*u8228e;xVZfY#Vsmx2Ogkk8h=Ct6faik*MYIfN8r9JO4PGB{ zynu)THohegr9sPJrV&O!xK0JssoXpVZ2_@xSG z+|o!bF+dC~GLYBZGS>go@8AE6Nz@|-h=G5_057zhmJM4nwRLH8SZgI{2NVV4GL7>T jFjOgqSS-bRpi00m(EzjzW*Wf*LKgu=12x3JuQKofEap(} literal 0 HcmV?d00001 diff --git a/build/doctrees/1-Introduction.doctree b/build/doctrees/1-Introduction.doctree index 6a923491e85b145fe048c20f57cb8fd892c53029..607d5ef941340d4bbeac6abf92e46986745899d1 100644 GIT binary patch delta 108 zcmcblwNHzsfn}=kMiz5MQCI!Y;?$yI{bIem#O%b}(xOEDtoY4QjL&&_LqptjEvEFy vq!tzB7flxAm)M-f|Aa*)#Idv_Ke(i*G`S=*ty>c5?KKN=>sMs delta 114 zcmdm|bxDh*fpx0;Miz5Md4K(k{M=Oitjz3u{qp>x?BasNj(h qd6`Q~(l%T1v$5*MIhK~>2bUC;CYNNURaz{WGK%7 diff --git a/build/doctrees/2-Install.doctree b/build/doctrees/2-Install.doctree index 295a5be16cacbf6c9550edc2e1e680868a12f4d6..20f3812854d724f481cbdf31120066dbc8e19253 100644 GIT binary patch delta 90 zcmZ4IGRuXffn_THMivc5Q3w6d;?$yI{bIem#O%b}(xOEDtoY5|j6WrqLqps)yGuP| cQ}K5!Ey)iqDJo4a$xN%XQoyEVax?BasNcq^LBxBr~njN&$zqI{*YSAyohX delta 114 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 diff --git a/build/doctrees/6-HigherOrderModel.doctree b/build/doctrees/6-HigherOrderModel.doctree index a3db5f801364e1c5b78c63b77ff987ebd14b413a..566d742c34aaa98d8325c9d27a729ba1091a6bdf 100644 GIT binary patch delta 94 zcmZ3hKU1Hjfn{pnMix&-QBVEQ;?$yI{bIem#O%b}(xOEDtoX_2#mqJ@V!X`H92(-b dxk6BrRVBi)v?M>cq^LBxBr~njN&$zqdjK16A~OI0 delta 114 zcmbQKzgC~6fpzMljVzvw^1=EU`MIh3S((}S`sMjW*~JBk$*KBYnOXYz1*v&ilXr`m oZJxn+nSZjbAp7PbK~+}0B*)T{{NR$J(&UoNv`Q-lf(G0J04BpJ`Tzg` diff --git a/build/doctrees/7-hogehoge.doctree b/build/doctrees/7-hogehoge.doctree new file mode 100644 index 0000000000000000000000000000000000000000..821df95d641f5fda50db2b12cb3c9731210c0ae9 GIT binary patch literal 6017 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 literal 0 HcmV?d00001 diff --git a/build/doctrees/apis/modules.doctree b/build/doctrees/apis/modules.doctree index 60bf20a738905e33c4e3880c64f0917ab92f97f0..3aa080e8d464463dda1626db19e8635266d6d6ef 100644 GIT binary patch delta 94 zcmca7c1nz;fn}=wMiwnbQ5XHt;?$yI{bIem#O%b}(xOEDtoX@&T!x$L7;iE&hlaRq dj$&nFRS9-1Ey)iqDJo4a$xN%XQoy0@0s!2xAjbdz delta 114 zcmX>lc2A6@fpu!|Miwnbc|ZM({M=Oitjz3u{qp>x?BasN&HsdnH#Ede*J4VKOlnb4e$ixmA&JdXgrrzR z3vlSt1R88SSyMa%ySbY;i0@-m33ex?BasNPmKoRPdUG8jRr=ZNWD%W<)65UqLX!_TdjrG3YV#Y%5=Q(=Hy?05 z!;W7G*fevWQ-oD*UgNu-QFIvrr+G}S^5fpj7r@USKgq2PHkjb?s3h8o&FsyE^Ku!nOHD4ESFyQt!B;NPer!5{(uI>Y@@{5dlgWZx#iorRETTDB z^$Q-1m>j>IeewZ)pIx*OhY2NNqbOJ8ZwgXMu%Zghb zWSiP{FG)sM7ST+sh8(Qc-+ot?QJR@KG{kNDZv{qRc-P=k2`qaor@vNZtij=Ipkb3C z`P*>%4>iVq(J~w+B~9nhU~I)5FTki{ozAJrcnpuLWwjV5Fsej4mX_oPmlTyImt>|@ NS}EYL5L`B&1OVPLIJp1- delta 1867 zcmbW1-%C?r7{`4&?`di!3@^%Ndqb?mtqztjT2g6|WK@PFCQ;a7va_*{%&j&Sw!*|s z!oiCj?cx+6NE3fP$EbZHZexK+62LBvc zC3J?Hn88b}OCSVJpBQ$Cfb8v=4d{x$WCuC$EZrLC64WWa@rS{*TSeaUINm4x4Z_QB92p!?i z{CoDj#)Epe&0EqAi5j^*Fiz6~W_Rk4@o+EP7rFz+=stKavZP@z>9JlnKmZP?t?`)N Y6^q8znAV^4@8*`OVF_>>_ZngLFJ6kY0{{R3 diff --git a/build/doctrees/apis/openjij.sampler.chimera_gpu.doctree b/build/doctrees/apis/openjij.sampler.chimera_gpu.doctree index d018899117b06fac13f405fe2234ef17ba1bfe05..4ec8385476e4741bc2b161496a651e925025290b 100644 GIT binary patch delta 1233 zcmZpj%6fhhD@y~*RLPAj9gLz8`k}?CMaBBXdU=W2iMgdkiTYXb(-mD9B{v^o{KO=> z1($r+o_puvjeQ=t+SYt=x&_u0IG?d{6CF% z^7|J`n_s7;FcPPhZL-~KzRjAMa~(xD;xn6d@`YE?lS^4`H}7A)oskH&n~m1l3lgJF z_ka{L5$Y!E9^lx_eMDMCbRQvi=1o4ICbL=aWgH^`wVN-zvKF1ZcCPT`x;+9@%^5#% zPF3<`0E6x7jEv8$L|bv%HT}FhqviHRHjF&X%%LG}+c(-X2C|6G!=`>auoMtr6rF`l z4pc(e0^`ne`ZZU^YSB6P)PUl^ZTb&4pgP>{+75KrY(|xI$I_Dg;F6-!GmHjX)5ek=1F5){$jJnNV`S&r(AII-Jpv?;=9}wf& zTq49stYX2<)*=^(QoQ+q*f|!WoM0!*wb@sOnJ7~y0~Jr^mpe(U!9ca_o9D?_v&f$$ zA~4RY@@&4P!pTUq;w5V9nB{j6G}(62TGq)MQX@7qYJX=WMg4MJLqQVMPquUBSln+< zl9TM5rIqB566J->8&Y305~&vG-R#Y=8LJ)TcN1fF^5(s(J~9%ccGKGVg2bqsv^IIN z!eQ3Uk^6<1iB!K?;jn^={0U;*n=o1OIsasbS1gmI(_}U)zKCNaLEmPFR~JP%rxtoK zfWcgk$3*O{?RehEQ^&~)lD zeV+?swfr(-)O%0A<_c6xgu|x;9d5b(jvHeVqh6t7X-R%?Nl|HXNoHE5l>z~q7Bad{ JU+%%U0s!@wEpz|? diff --git a/build/doctrees/apis/openjij.sampler.doctree b/build/doctrees/apis/openjij.sampler.doctree index 92ff50aaea714bba760075f6a30602ba05b289e0..71b912398357e107e047f5ae4641039c796b5bb5 100644 GIT binary patch delta 3647 zcmai%ZBSHI7{`6i*}byM!Xj`SDa3M|n28YvXR^#Jw6ZeFe1V~HM3C|g);AUh7Gzmp zST!B6D;&p|h*7~Bfz}&5Vidkjp^k<&Ws{XMez9>>94zxg*17nhKAdy!{rdks|K~i< zz2`aSUhMY%(BXB|I2s%g#~fhU89AlzuP@CgOSLQu=XV2p9cSLBu>#=7#LIy%hnbQ7oXQQ&1;W_#6YH`}KuBVg2rD?Dmh zuMc~T$ew#+6`xj1UzL${cvga3Hd^|^z#62vTly;W<0rndRK3QeQ)fL)ml}jLpAi^1 zJDTlK$WwS+6uhE)Z#s?Ne%c2%oDp-SF2;rtUQx!h-)Gu-d2c>U)DxZ=)0GP2!PPKo z6pS(-J(QN9ubrBPn*gRc7`Iw@9=|r7K8`^RvOrCuC^03MwJDr3`Px-59|!V*5*vsM zD1k>e(^zaQgdI_89EE4Qmvvg@%;VcCARaFVU~vrFZ$-}Mj|?1mf_|qmVqBZISVqc^qPiT;oD3#fv9lZ;To!<9`ppZ3`WP zmtY`;)ycB+FB5JntVkt_N$ihE%fF z0!9J9`M)v33%8Q7SVu_F47OXA0!2MHK(3j!ZsEax;>Oll0|bMIroLg1nzF8 zUfjExybx`NVnrS4O=N!Al6d3_Dd21Rsgw5{Am7F#bH6Apc0+(g7L}wWSpv7Lfe2B9*~8azIgE2 zuBB9?u7eI$lOi9kLRb;5Lf_Q011zF{lgj5SD;8HN?FOT9;D+?Tm-T; z3kn6bJdXKfOA@~$nY{NLos6ft={-Vo7S6_FJ+w)&T?Jl(gJ07e%BmH1BUicSc;87{ zskpeCDaE~H9=~#m)>&K;_|4O_odslh%$c_g$A3e=2b=NK&Z?vaqJ1lH{~3A))Qv&W jn9Z@17R@a4uUX(V)3rEY_AZj35OOB#_W@m}N>O z>MuGfh(Kf{gyAoFbQ&6yRho*rLbKs$np6wJw=Eaixor0K$34&O{{8tr-{*PG`90^H z`%SC&XuH=|Zm(i(wlomw@pB9Ev*UB;ZR5&LqJ3eh*ZhS#u_JUlw@LN8~ zs)0Q=A^nr);Pf)8Z4}rN>Fb;X`^9ET<`9t!HGAeXQd#TftkH&OAe5Dy@0NSc z!~Lc^_cNj(+{(*)1SqhToL>?`0nKrxF7xr1f2XomUs)P?T`}85QCQt3zm@PA$ zgrMDrBCU!e?GEv-7M>ux4VY?r`|VbD&qg3Ctji}W-E`X9uU0&OY=W&{e!3FrsA547 z6cl9MG&aJzaP4+5&tILgBONB$L_MvtXE4qV&jJNU)re8)qRoF`**6!K%e3bp9M@;S zAkcaFN;UW5!Gg_T`czh7Mi~^i#mD|p>{|gJ8lv1kCEK>b^YZ#T@Fkga z;Iv8*HnB<{IS0xJ7= z!JXLO4&xnSwT7?10EM`r18RYW?%4;`ZW1cLKdcsu;_oAaadtNx8YMR9^IhsYWiM06 z<(N7M>U`A%Mb(6(PO(vMy->zXVGeoy4>;(og5hx(6eJG}!J@#_p?KmNq=0ml!!0`! zSyr;BCYYl#S9dlF>dP|%?@3`ZQgjyqsj7cbe)l$uk*`*B4~|*J9tb6gP>D`Oilv&= z6ZZ3L8Q;K;P{<;=vj!$%$NMY-M1?+brd(s^Zu82?FwFXZ9kbCjh+A1y03JBAg}tet z6RO%w`CAJcA#++;zjmzrjTgpo1Ao}Y;`C$dhR7qGpE8%+yq%pR8+lM^lJ)cUhKF0$ z^)Leux3dF=cJ%&76w|?u8M4vi^_LREhsh_N$!4ffgh#A~0kGyTiRQ^JMnaBNxmf8W$fp?Nxbeq4d0=dgQ=bT zIOt9-RP)OXVue27@HcuN?(X7W0j1TbTD{y8m;F#lalx$OqLQrQc{yd1V>CwUU#c^I E0-Etm5dZ)H diff --git a/build/doctrees/apis/openjij.utils.doctree b/build/doctrees/apis/openjij.utils.doctree index b0db5f0b1985a393c095eee425a269f6b7ee2109..1983094f43496ffab231fe5d0cd9090e75112b93 100644 GIT binary patch delta 1291 zcmca`o8`p~7M2E>B;(rLX-9RSU3AxG_i?x<1%IP98a;y`{wg)F0)_EiCfv`Ii72{usaj% zmeV0>g1Dt8pAO;K+>o}2O|%u8J2pG!J{89ZkvWuF?P!vF+Ze=#0p7Hz}kMzH1E?N}KXu;NiL9jHKXdl5II0-IDm8-z&vLgA81_odf`I Cy3G&( delta 1644 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 diff --git a/build/doctrees/index.doctree b/build/doctrees/index.doctree index c850185211302cef71f3098c7b298d268f97b8eb..e1f2e5f16502d7ad9237a2a7cb2ad0586429f4b9 100644 GIT binary patch delta 94 zcmeyN^+b!Mfn{psMwUfPqPF^>#i>Qb`o(&AiP?#{rA3MQS@DyXiD+$p&s4(092(-b dIgMY4RmI1#v?M>cq^LBxBr~njN&$zqO8`7vA|C(% delta 114 zcmaE&^+SuLfpu!`MwUfP^6vT>`MIh3S((}S`sMjW*~JBk$*KBYnOXYz1*v&in|CwK r<6$l>N!uL5FT|=B=2%*iA6!yYnp~2ZR%xYxU-RVMOj?uoh^znrZn-LV diff --git a/build/html/.DS_Store b/build/html/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..56d62f37747577ae01340088591e2cb54e4de58f GIT binary patch literal 6148 zcmeHK!Ab)$5S`Rjw<}@~f_lrvTMuomRu95b>%p6_q6d|_Yl~f|o6_A{v{v>z^pE@j zf5(|57Hbs*L5gNz@+O%~mU)oO4gj!fuTccZ0f3E4XgN51BIGBXkc?ij5Scuq3zyJ@ zIOxZniQQ(wFkl#%HU{YK+E9lW1oYtD{SDe8K;LuFX@_xAD7>)Dj5RwqZ`+RJEIQ|2 zOZ2_OPkM3H@1D}^&`(-{wvU8pk8D3U4x9aYZh22ci62JIt_%(vP26&J5=ITtuZmvO zh~+t+a@ck@o2}>827}UOv6APd?ZPn62bD@8&&wNI!(rB5SugG$TwLGY4eo~zkBVA` zFOifbjc@RT#zdw!UN>rs=n8!lXMqnL2-OQVRScBM$iU9_j~N(c_#yK*mJI$M2J}s_ z7yeJmCR4+JVc?q#(EGqq30;k;Liu#yAX@-L`i+o+HuVw|!!^1ZQ-$b3VJZ|+g)-e@ zFcpsLT<>!=rV3R!Fx`AG{bi;*6ehop=X1Fon5)o?h5^ICI0G|knxp!^|8@UA9%N>Q z0mHzbVt`pSuU5sBbZwnTj%qDOy+9?QeW^kjf`cx{(x6hjiYf(toD4))W2z8WP|S~j Mq`?e^fnR0d6`b3a9{>OV literal 0 HcmV?d00001 diff --git a/build/html/.buildinfo b/build/html/.buildinfo index 213a911..7f20e27 100644 --- a/build/html/.buildinfo +++ b/build/html/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 1b6f940f8d9e59c2bc24c23404cb4d10 +config: b5f240d1de9c371a4bcfd8495307cfd4 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/build/html/4-Parameters_customize.html b/build/html/4-Parameters_customize.html index 341f32e..a42d4ab 100644 --- a/build/html/4-Parameters_customize.html +++ b/build/html/4-Parameters_customize.html @@ -91,7 +91,31 @@
  • Install
  • Minimum sample code
  • Parameters customize
  • Benchmark
  • @@ -163,6 +187,37 @@

    Parameters customize

    Customize annealing schedule

    +

    In this page, let us show you how to set the parameters for annealing.

    +
    +

    SASampler

    +

    SASampler has arguments as follows.

    +
    +

    beta_min (float)

    +

    The minimum value of inverse temperature. Default to None. This corresponds to the starting temperature for annealing.
    If you do not specify anything, OpenJij will set the appropriate temperature automatically.

    +
    +
    +

    beta_max (float)

    +

    The maximum value of inverse temperature. Default to None. This corresponds to the ending temperature for annealing.
    If you do not specify anything, OpenJij will set the appropriate temperature automatically.

    +
    +
    +

    num_reads (int)

    +

    The number of iteration of annealing. Default to 1. If num_reads is specified, response has numerical results for the number of num_reads.

    +
    +
    +

    num_sweeps (int)

    +

    The number of Monte-Carlo steps (hereafter we called MCsteps) during annealing. Default to 1000.

    +
    +

    -note- MCsteps means the number of times to flip all the spins in the system. e.g., the case of N spin system, during 1 MCstep, you will have to flip these spins N times.

    +
    +
    +
    +

    schedule (list)

    +

    You can set the annealing schedule as you like. Default to None. If you want to calculate “alpha” MCsteps for a given inverse temperature “beta”, you can set it as [beta, alpha].

    +
    +
    + +
    +

    Sample script 2

    +

    Here, let me show you an example how to specify an annealing schedule for user. The following figure shows an image of annealing schedule.

    +

    An example of SA schedule

    +

    At first, calculate 3 MCsteps with beta=0.5. Next, compute 5 MCsteps with beta=5. Finally, execute 6 MCsteps with beta=10.

    +

    A example of script that does this is following.

    +
    schedule = [[0.5, 3], [5, 5], [10, 6]]
     
     sampler = SASampler()
     response = sampler.sample_ising(h, J, schedule=schedule)
     
    +
    +

    SQASampler

    +

    SQASampler considers the total Hamiltonian with the following quantum terms when the Hamiltonian of the problem you want to solve is $\hat{H}_p$,

    +

    $ +\hat{H} = s\hat{H}p + (1-s) \Gamma \sum{i} \hat{\sigma}^x_i +$

    +

    and annealing is performed under the following statistical distribution,

    +

    $ +P(\hat{H}) \propto e^{-\beta \hat{H}} +$

    +

    SQASampler has arguments as follows.

    +
    +

    beta (float)

    +

    The inverse temperature. Default to 5.0.

    +
    +
    +

    Gamma (float)

    +

    The magnitude of the quantum term. Default to 1.0.

    +
    +
    +

    trotter (int)

    +

    The system Trotter decomposition number. Default to 4.

    +
    +
    +

    num_sweeps (int)

    +

    The number of MCsteps required between changing the annealing schedule parameter s from 0 to 1. Default to 1000.

    +
    +
    +

    num_reads (int)

    +

    The number of annealing iteration. Default to 1.

    +
    +
    +

    shcedule (list)

    +

    Set an annealing shcedule as you like. Default to None. For a given inverse temperature if you want to compute “alpha” MCsteps with the annealing schedule parameter “s”, you can set it as [s, alpha].
    If you want to specify the inverse temperature “beta” and compute “alpha” MCsteps with the annealing schedule parameter “s”, you can specify it as [s, beta, alpha].

    +
    +
    +
    +

    Sample script 1

    +

    The following example shows an annealing computation with beta=10, gamma=5, trotter=16, num_reads=1000, num_sweeps=100

    +
    import openjij as oj
    +
    +n = 10
    +h, J = {}, {}
    +for i in range(n-1):
    +    for j in range(i+1, n):
    +        J[i, j] = -1
    +
    +# set parameters 
    +beta = 10
    +gamma = 5
    +trotter = 16
    +nreads = 1000
    +nsweeps = 100
    +
    +sampler = SQASampler()
    +response = sampler.sample_ising(h, J, beta=beta, gamma=gamma, trotter=trotter, num_reads=nreads, num_sweeps=nsweeps)
    +
    +
    +
    +
    +

    Sample script 2

    +

    Here we introduce an example of a user-specified annealing schedule. The following figure shows an image of annealing schedule.

    +

    An example of SQA schedule with constant beta

    +

    First, 5 MCsteps with s=0.0. Next, 10 MCsteps with s=0.5. Finally, 5 MCsteps with s=1.

    +
    schedule = [[0, 5], [0.5, 10], [1, 5]]
    +
    +sampler = SQASampler()
    +response = sampler.sample_ising(h, J, schedule=schedule)
    +
    +
    +
    +
    +

    Sample script 3

    +

    In this section, we show you an example of a user-defined annealing shcedule in more detail.

    +

    An example of SQA schedule including beta

    +

    First, 5 MCsteps with s=0.0, beta=0.5. Next, 10 MCsteps with s=0.5, beta=1.0. Finally, 5 MCsteps with s=1, beta=10.

    +
    schedule = [[0, 0.5, 5], [0.5, 1.0, 10], [1, 10, 5]]
    +
    +sampler = SQASampler()
    +response = sampler.sample_ising(h, J, schedule=schedule)
    +
    +
    +
    +
    diff --git a/build/html/_images/schedule.png b/build/html/_images/schedule.png new file mode 100644 index 0000000000000000000000000000000000000000..6022bdd7ed3fb99a6b603cd3b0f6c40c8e9dcbe6 GIT binary patch literal 7618 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 Zie$zEVw+Rg0iL`A6l7IoN~KNS{TCW-$+rLi literal 0 HcmV?d00001 diff --git a/build/html/_sources/.DS_Store b/build/html/_sources/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..bb77b08de1f60bedb2b7de2576e426ac7aa030c0 GIT binary patch literal 6148 zcmeHK%}T>S5Z-O8CKa&qWidZnA`9g3UbxsP}gUE3XZyXQ2 ze&j*_Z7!M|e~|(Fb|vPr0Sj3C`TKc;eh??M+B+{4OH0cuhEXn;*UC3eFB&_En~Y-H z9bRGY%uRZpw$G!eKeb)&BIu6Wm5t*lOxz&s4rOxScOm5ZG6?->Y)7NekL5g$8ZZpg zG~1Q!G;QqHn^n;`tYuY^Hk-Ao*xNnGGSk@HsUMwo?j9b~r|kJf(aPZul(MdI0KF;@s9AY7#as#LC@7+j@;U+6eXW3Eu8GcH$#dGyL$zfibb9sELu zGj1uQmKY!gW*I1|ZUyWA$@lO7*(B-_1H{0;Vt|)gPRoWZ>DoHCIjpq;v;&HQak;{2 k3K+5!LoAl!El?@o7ia)l8gqr<0ilb4q=6b@;8z*=0KiF5>Hq)$ literal 0 HcmV?d00001 diff --git a/build/html/_sources/4-Parameters_customize.md.txt b/build/html/_sources/4-Parameters_customize.md.txt index aa9851a..5dba05e 100644 --- a/build/html/_sources/4-Parameters_customize.md.txt +++ b/build/html/_sources/4-Parameters_customize.md.txt @@ -2,6 +2,40 @@ ## Customize annealing schedule +In this page, let us show you how to set the parameters for annealing. + +### SASampler + +`SASampler` has arguments as follows. + +#### beta_min (float) + +The minimum value of inverse temperature. Default to None. This corresponds to the starting temperature for annealing. +If you do not specify anything, OpenJij will set the appropriate temperature automatically. + +#### beta_max (float) + +The maximum value of inverse temperature. Default to None. This corresponds to the ending temperature for annealing. +If you do not specify anything, OpenJij will set the appropriate temperature automatically. + +#### num_reads (int) + +The number of iteration of annealing. Default to 1. If num_reads is specified, response has numerical results for the number of num_reads. + +#### num_sweeps (int) + +The number of Monte-Carlo steps (hereafter we called MCsteps) during annealing. Default to 1000. + +> -note- MCsteps means the number of times to flip all the spins in the system. e.g., the case of N spin system, during 1 MCstep, you will have to flip these spins N times. + +#### schedule (list) + +You can set the annealing schedule as you like. Default to None. If you want to calculate "alpha" MCsteps for a given inverse temperature "beta", you can set it as [beta, alpha]. + + +### Sample script 1 + +The following is an example of annealing with parameters `beta_min=0.1, beta_max=100, num_reads=1000, num_sweeps=100`. ```python import openjij as oj @@ -12,14 +46,124 @@ for i in range(n-1): for j in range(i+1, n): J[i, j] = -1 -# customized annealing schedule -# list of [beta, monte carlo steps in beta] -schedule = [ - [10, 3], - [ 5, 5], - [0.5, 10] -] +# set parameters +bmin = 0.1 +bmax = 100 +nreads = 1000 +nsweeps = 100 + +sampler = SASampler() +response = sampler.sample_ising(h, J, beta_min=bmin, beta_max=bmax, num_reads=nreads, num_sweeps=nsweeps) +``` + +### Sample script 2 + +Here, let me show you an example how to specify an annealing schedule for user. The following figure shows an image of annealing schedule. + +![An example of SA schedule](/images/4/schedule.png) + +At first, calculate 3 MCsteps with `beta=0.5`. Next, compute 5 MCsteps with `beta=5`. Finally, execute 6 MCsteps with `beta=10`. + +A example of script that does this is following. + +```python +schedule = [[0.5, 3], [5, 5], [10, 6]] sampler = SASampler() response = sampler.sample_ising(h, J, schedule=schedule) -``` \ No newline at end of file +``` + +### SQASampler + +SQASampler considers the total Hamiltonian with the following quantum terms when the Hamiltonian of the problem you want to solve is $\hat{H}_p$, + +$ +\hat{H} = s\hat{H}_p + (1-s) \Gamma \sum_{i} \hat{\sigma}^x_i +$ + +and annealing is performed under the following statistical distribution, + +$ +P(\hat{H}) \propto e^{-\beta \hat{H}} +$ + +`SQASampler` has arguments as follows. + +#### beta (float) + +The inverse temperature. Default to 5.0. + +#### Gamma (float) + +The magnitude of the quantum term. Default to 1.0. + +#### trotter (int) + +The system Trotter decomposition number. Default to 4. + +#### num_sweeps (int) + +The number of MCsteps required between changing the annealing schedule parameter `s` from 0 to 1. Default to 1000. + +#### num_reads (int) + +The number of annealing iteration. Default to 1. + +#### shcedule (list) + +Set an annealing shcedule as you like. Default to None. For a given inverse temperature if you want to compute "alpha" MCsteps with the annealing schedule parameter "s", you can set it as [s, alpha]. +If you want to specify the inverse temperature "beta" and compute "alpha" MCsteps with the annealing schedule parameter "s", you can specify it as [s, beta, alpha]. + +### Sample script 1 + +The following example shows an annealing computation with `beta=10, gamma=5, trotter=16, num_reads=1000, num_sweeps=100` + +```python +import openjij as oj + +n = 10 +h, J = {}, {} +for i in range(n-1): + for j in range(i+1, n): + J[i, j] = -1 + +# set parameters +beta = 10 +gamma = 5 +trotter = 16 +nreads = 1000 +nsweeps = 100 + +sampler = SQASampler() +response = sampler.sample_ising(h, J, beta=beta, gamma=gamma, trotter=trotter, num_reads=nreads, num_sweeps=nsweeps) +``` + +### Sample script 2 + +Here we introduce an example of a user-specified annealing schedule. The following figure shows an image of annealing schedule. + +![An example of SQA schedule with constant beta](/images/4/schedule_sqa.png) + +First, 5 MCsteps with `s=0.0`. Next, 10 MCsteps with `s=0.5`. Finally, 5 MCsteps with `s=1`. + +```python +schedule = [[0, 5], [0.5, 10], [1, 5]] + +sampler = SQASampler() +response = sampler.sample_ising(h, J, schedule=schedule) +``` + +### Sample script 3 + +In this section, we show you an example of a user-defined annealing shcedule in more detail. + +![An example of SQA schedule including beta](/images/4/schedule_sqa_2.png) + +First, 5 MCsteps with `s=0.0, beta=0.5`. Next, 10 MCsteps with `s=0.5, beta=1.0`. Finally, 5 MCsteps with `s=1, beta=10`. + +```python +schedule = [[0, 0.5, 5], [0.5, 1.0, 10], [1, 10, 5]] + +sampler = SQASampler() +response = sampler.sample_ising(h, J, schedule=schedule) +``` diff --git a/build/html/_sources/7-hogehoge.md.txt b/build/html/_sources/7-hogehoge.md.txt new file mode 100644 index 0000000..efda55f --- /dev/null +++ b/build/html/_sources/7-hogehoge.md.txt @@ -0,0 +1,34 @@ +# Higher order model + +If you want to handle higher order model as follows: + + ```math + H = \sum_{i}h_i\sigma_i + \sum_{i < j} J_{ij} \sigma_i \sigma_j + \sum_{i, j, k} K_{i,j,k} \sigma_i\sigma_j \sigma_k \cdots + ``` + +use ``.sample_hubo`` + +> HUBO: Higher order unconstraint binary optimization + +## Sample code +```python +import openjij as oj + +# Only SASampler can handle HUBO. +sampler = oj.SASampler() + +# make HUBO +h = {0: -1} +J = {(0, 1): -1} +K = {(0, 1, 2): 1} + +response = sampler.sample_hubo([h, J, K], var_type="SPIN") +response.states[0] +> [1, 1, -1] +``` + +## Note + +``.sample_hubo`` +- The first argument (``interactions``) must be in ascending order. +- Need ``var_type`` diff --git a/build/html/searchindex.js b/build/html/searchindex.js index 6547bd5..4ad3a7b 100644 --- a/build/html/searchindex.js +++ b/build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["1-Introduction","2-Install","3-Minimum_sample","4-Parameters_customize","5-benchmark","6-HigherOrderModel","apis/modules","apis/openjij","apis/openjij.model","apis/openjij.sampler","apis/openjij.sampler.chimera_gpu","apis/openjij.utils","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":2,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["1-Introduction.md","2-Install.md","3-Minimum_sample.md","4-Parameters_customize.md","5-benchmark.md","6-HigherOrderModel.md","apis/modules.rst","apis/openjij.rst","apis/openjij.model.rst","apis/openjij.sampler.rst","apis/openjij.sampler.chimera_gpu.rst","apis/openjij.utils.rst","index.rst"],objects:{"":{openjij:[7,0,0,"-"]},"openjij.model":{chimera_model:[8,0,0,"-"],higher_order_model:[8,0,0,"-"],king_graph:[8,0,0,"-"],model:[8,0,0,"-"]},"openjij.model.chimera_model":{ChimeraModel:[8,1,1,""],make_ChimeraModel:[8,1,1,""],make_ChimeraModel_from_JSON:[8,1,1,""]},"openjij.model.higher_order_model":{BinaryHigherOrderModel:[8,2,1,""]},"openjij.model.higher_order_model.BinaryHigherOrderModel":{adj_dict:[8,3,1,""],calc_energy:[8,3,1,""],energy:[8,3,1,""]},"openjij.model.king_graph":{KingGraph:[8,1,1,""],make_KingGraph:[8,1,1,""],make_KingGraph_from_JSON:[8,1,1,""]},"openjij.model.model":{BinaryQuadraticModel:[8,1,1,""],adj:[8,4,1,""],indices:[8,4,1,""],linear:[8,4,1,""],make_BinaryQuadraticModel:[8,1,1,""],make_BinaryQuadraticModel_from_JSON:[8,1,1,""],offset:[8,4,1,""],quadratic:[8,4,1,""],var_type:[8,4,1,""]},"openjij.sampler":{chimera_gpu:[10,0,0,"-"],cmos_annealer:[9,0,0,"-"],csqa_sampler:[9,0,0,"-"],hubo_simulated_annealing:[9,0,0,"-"],response:[9,0,0,"-"],sa_sampler:[9,0,0,"-"],sampler:[9,0,0,"-"],sqa_sampler:[9,0,0,"-"]},"openjij.sampler.chimera_gpu":{base_gpu_chimera:[10,0,0,"-"],gpu_sa_sampler:[10,0,0,"-"],gpu_sqa_sampler:[10,0,0,"-"]},"openjij.sampler.chimera_gpu.base_gpu_chimera":{BaseGPUChimeraSampler:[10,2,1,""]},"openjij.sampler.chimera_gpu.base_gpu_chimera.BaseGPUChimeraSampler":{edgelist:[10,3,1,""],nodelist:[10,3,1,""],parameters:[10,3,1,""]},"openjij.sampler.chimera_gpu.gpu_sa_sampler":{GPUChimeraSASampler:[10,2,1,""]},"openjij.sampler.chimera_gpu.gpu_sa_sampler.GPUChimeraSASampler":{sample_ising:[10,3,1,""]},"openjij.sampler.chimera_gpu.gpu_sqa_sampler":{GPUChimeraSQASampler:[10,2,1,""]},"openjij.sampler.chimera_gpu.gpu_sqa_sampler.GPUChimeraSQASampler":{sample_ising:[10,3,1,""]},"openjij.sampler.cmos_annealer":{CMOSAnnealer:[9,2,1,""],NumpyEncoder:[9,2,1,""],defalut_beta_range:[9,1,1,""]},"openjij.sampler.cmos_annealer.CMOSAnnealer":{cmos_parameters:[9,4,1,""],edgelist:[9,3,1,""],make_json_request:[9,3,1,""],nodelist:[9,3,1,""],parameters:[9,3,1,""],properties:[9,3,1,""],sample_ising:[9,3,1,""]},"openjij.sampler.cmos_annealer.NumpyEncoder":{"default":[9,3,1,""]},"openjij.sampler.csqa_sampler":{CSQASampler:[9,2,1,""]},"openjij.sampler.csqa_sampler.CSQASampler":{sample_ising:[9,3,1,""]},"openjij.sampler.hubo_simulated_annealing":{default_schedule:[9,1,1,""],hubo_sa_sampling:[9,1,1,""],hubo_simulated_annealing:[9,1,1,""],measure_time:[9,1,1,""]},"openjij.sampler.response":{Response:[9,2,1,""]},"openjij.sampler.response.Response":{energies:[9,3,1,""],indices:[9,3,1,""],min_sampels:[9,3,1,""],states:[9,3,1,""],update_ising_states_energies:[9,3,1,""],update_trotter_ising_states_energies:[9,3,1,""]},"openjij.sampler.sa_sampler":{SASampler:[9,2,1,""],geometric_ising_beta_schedule:[9,1,1,""]},"openjij.sampler.sa_sampler.SASampler":{parameters:[9,3,1,""],sample_hubo:[9,3,1,""],sample_ising:[9,3,1,""]},"openjij.sampler.sampler":{BaseSampler:[9,2,1,""],measure_time:[9,1,1,""]},"openjij.sampler.sampler.BaseSampler":{parameters:[9,4,1,""],properties:[9,4,1,""],sample:[9,3,1,""],sample_ising:[9,3,1,""],sample_qubo:[9,3,1,""]},"openjij.sampler.sqa_sampler":{SQASampler:[9,2,1,""],linear_ising_schedule:[9,1,1,""]},"openjij.sampler.sqa_sampler.SQASampler":{parameters:[9,3,1,""],sample_ising:[9,3,1,""]},"openjij.utils":{benchmark:[11,0,0,"-"],decorator:[11,0,0,"-"],graph_utils:[11,0,0,"-"],res_convertor:[11,0,0,"-"],time_measure:[11,0,0,"-"]},"openjij.utils.benchmark":{residual_energy:[11,1,1,""],se_lower_tts:[11,1,1,""],se_residual_energy:[11,1,1,""],se_success_probability:[11,1,1,""],se_upper_tts:[11,1,1,""],solver_benchmark:[11,1,1,""],success_probability:[11,1,1,""],time_to_solution:[11,1,1,""]},"openjij.utils.decorator":{deprecated_alias:[11,1,1,""],disabled:[11,1,1,""],rename_kwargs:[11,1,1,""]},"openjij.utils.graph_utils":{chimera_to_ind:[11,1,1,""],qubo_to_ising:[11,1,1,""]},"openjij.utils.res_convertor":{convert_response:[11,1,1,""]},"openjij.variable_type":{cast_var_type:[7,1,1,""]},openjij:{model:[8,0,0,"-"],sampler:[9,0,0,"-"],utils:[11,0,0,"-"],variable_type:[7,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","method","Python method"],"4":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:method","4":"py:attribute"},terms:{"abstract":[9,10],"case":9,"class":[8,9,10],"default":[9,10],"final":9,"float":[8,9,10,11],"function":9,"import":[2,3,4,5],"int":[8,9,10,11],"new":9,"return":[8,9,10,11],"true":[8,9,10,11],"try":9,For:9,Ising:[0,8,9,10],TTS:[4,11],The:[5,8,9,11],Then:0,about:[9,10],access:9,addit:9,adj:8,adj_dict:8,adjac:8,adjgenc:[],algorithm:[9,10],alia:8,alias:11,allow:10,allow_nan:9,almost:9,also:8,although:0,amplitud:[9,10],anneal:[9,10,12],anti:12,api:[9,12],apt:1,arbitrari:9,arg:[4,11],argument:[5,9,10,11],arrai:[2,9],arrang:10,ascend:5,asic:[8,9],ask:0,attributeerror:10,automat:1,averag:[4,11],base:[8,9,10],base_gpu_chimera:9,basegpuchimerasampl:10,basesampl:[9,10],basic:8,been:1,below:[9,10,11],benchmark:[7,12],beta:[3,9,10],beta_max:[9,10],beta_min:[9,10],bhom:9,bia:[],bias:[8,9,10],binari:[5,8,9],binaryhigherordermodel:[8,9],binaryquadraticmodel:[8,9],bool:[8,9,10,11],bootstrap:1,bqm:[8,9],brew:1,calc_energi:8,calcul:[4,8,9,11],call:[4,9],callabl:11,can:[0,4,5,8,9],carlo:[3,9,10],cast_var_typ:7,cdot:5,cell:10,check_circular:9,chimera:[8,10,11],chimera_gpu:9,chimera_model:7,chimera_self:8,chimera_to_ind:11,chimeramodel:8,choos:8,classicalschedul:9,clone:1,cloud:9,cmake:12,cmo:9,cmos_anneal:7,cmos_model:9,cmos_paramet:9,cmosanneal:9,code:[8,12],coeffici:9,column:11,com:[1,9],commun:0,compil:1,compuat:11,comput:11,computation_tim:11,connect:8,constant:8,constructor:10,content:[6,12],continu:9,convert:[4,8,11],convert_respons:[4,11],cool:9,core:[0,9,10],corrdin:8,correct_st:4,correspond:[8,11],could:9,csqa:9,csqa_sampl:7,csqasampl:9,custom:12,cxxjij:[8,9],deal:8,decid:8,decor:[7,9],def:9,defalut_beta_rang:9,default_schedul:9,defin:[8,9,11],definit:9,degener:11,degre:9,deprecated_alia:11,descript:[9,11],detail:9,dict:[8,9,10,11],dictionari:[9,11],dimension:10,dimod:[4,8,9,10],disabl:11,doesn:10,dure:[1,9],dwavesampl:4,e_0:11,each:[8,9,10,11],easili:0,edg:10,edgelist:[9,10],element:8,els:9,empti:9,encod:9,energi:[2,4,8,9,11],energy_bia:[],ensure_ascii:9,error:[4,9,11],exampl:[8,9,10,12],except:9,execut:2,execution_tim:11,factori:8,fail:1,fals:[8,9,11],featur:4,ferromagnet:12,field:[9,10],file:1,first:5,flip:[9,10],fluctuat:[9,10],follow:[5,8,11],form:[8,10],found:1,fpga:[8,9],from:[4,8,9,10,11],frozenset:8,func:[9,11],func_nam:11,gamma:[9,10],gener:[8,9],geometr:9,geometric_ising_beta_schedul:9,get:[1,2,9,11],git:1,github:0,given:[8,10],going:0,gpu:[8,10],gpu_sa_sampl:9,gpu_sqa_sampl:9,gpuchimera:10,gpuchimerasasampl:10,gpuchimerasqasampl:10,graph:[8,9,10],graph_util:7,ground:11,h_i:5,h_p:9,hamiltonian:[8,9],handl:5,has:[0,1,9,11],have:9,height:11,help:0,heurist:0,higher:[8,9,12],higher_order_model:[7,9],how:8,html:9,http:[1,9],hubo:5,hubo_sa_sampl:9,hubo_simulated_ann:7,implement:[0,1,9],incompat:10,indent:9,index:[9,11,12],indic:[2,8,9],info:[9,11],inform:[9,10,11],inherit:[9,10],init_st:9,initi:[8,9,10],initial_st:[9,10],initil:[9,10],inplac:11,input:[9,10],instal:[0,12],instanc:4,integ:[8,9],interact:[5,8,9,10],interfac:0,intial:8,introduct:12,invers:[9,10],ising:[8,9,11],issu:1,iter:[4,9,10],join:0,json:[8,9],jsonencod:9,kei:[8,9,11],keyword:9,king:9,king_graph:7,king_interact:8,kinggraph:8,kinggraphmodel:8,kwarg:[8,9,10,11],label:[2,8],lambda:4,langl:11,lattic:[9,10],length:[9,10],less:9,let:[0,9],librari:0,like:9,linear:[8,9,10],linear_ising_schedul:9,list:[3,4,8,9,10,11],log:11,lower:11,machine_typ:[8,9],mai:1,make:[1,4,5,8,9],make_binaryquadraticmodel:8,make_binaryquadraticmodel_from_json:8,make_chimeramodel:8,make_chimeramodel_from_json:8,make_json_request:9,make_kinggraph:8,make_kinggraph_from_json:8,map:9,mat:11,match:8,matplotlib:4,matrix:11,max:9,maximum:[9,10],mean:[],measur:[9,11],measure_tim:9,measure_with_energi:11,method:[8,9,10],min:9,min_sampel:9,min_sampl:2,minim:[9,10],minimum:[9,10,12],minmum:9,model:[0,7,9,10,12],modul:[6,12],mont:[3,9,10],montecarlo:9,more:9,must:[5,9,11],name:9,ndarrai:11,necessari:9,need:[1,5],neq:8,newest:1,node:[9,10],nodelist:[9,10],none:[8,9,10],note:12,num_read:[2,4,9,10],num_sweep:[4,9,10],number:[4,9,10,11],numpi:[4,9,11],numpyencod:9,obj:[8,9],object:[8,9],odd:10,offset:8,old:1,one:[9,10],onli:[5,9],openjij:[1,2,3,4,5],optim:[0,5,9],option:[1,9,10],order:[8,9,12],org:1,overwrit:9,p_r:[4,11],packag:[6,12],page:12,pair:9,param:[8,9,11],paramet:[8,9,10,11,12],part:0,particip:0,pass:9,plan:1,pleas:[0,1,9],plt:4,probabl:[4,11],problem:[9,10],project:0,properti:[9,10],provid:[4,8],purg:1,pyplot:4,python:[0,1,9],q_energi:9,quadrat:[8,9,10],quantum:[9,10],quantumis:[],qubo:[0,8,9,11],qubo_to_is:11,qudrat:9,question:0,rais:[9,10,11],random:4,rang:[2,3,4,9],rangl:11,read:[9,10],recommend:1,record:9,redisu:11,ref_energi:11,refer:[9,11,12],reiniti:[9,10],reinitialize_st:[9,10],rename_kwarg:11,repositori:0,repres:[8,9,11],request:9,res:[9,10],res_convertor:7,residu:[4,11],residual_energi:11,respons:[2,3,4,5,7,10,11],result:[4,8,9,10],returen:11,row:11,run:[9,10],sa_sampl:[7,10],same:[8,9,11],sampl:[9,10,12],sample_:9,sample_hubo:[5,9],sample_is:[2,3,4,9,10],sample_qubo:9,sampler:[2,3,5,7,8,11,12],sampleset:[4,9],sasampl:[2,3,4,5,9,10],satisfi:8,schedul:[9,10,12],schedule_info:[9,10],se_lower_tt:11,se_residual_energi:11,se_success_prob:11,se_upper_tt:11,search:12,see:9,seed:[9,10],self:[8,9],separ:9,serializ:9,setup:12,show:[8,9],side:10,sigma_i:[5,8,9],sigma_j:[5,8],sigma_k:5,simul:[9,10,12],singl:[9,10],size:9,skipkei:9,slack:0,solus:11,solut:[4,11],solv:9,solver:[4,11],solver_benchmark:[4,11],sort:8,sort_kei:9,sourc:[7,8,9,10,11],specif:[8,9],specifi:9,spin:[2,5,8,9,10,11],sqa:[9,10],sqa_kwarg:[],sqa_sampl:[7,10],sqasampl:[9,10],standard:[4,11],state:[2,5,8,9,10,11],steop:9,step:[3,4,9,10],step_length:9,step_num:9,step_num_list:4,still:0,str:[8,9,10],strangth:[9,10],strength:9,string:8,structur:[9,10],subclass:9,submodul:6,subpackag:6,success:[4,11],success_prob:11,sudo:1,sum_:[5,8],sum_i:9,summari:11,support:9,sweep:[9,10],swendsenwang:9,system:[],system_class:[],take:4,tar:1,target:[9,10],tau:11,temparetur:[9,10],temperatur:[9,10],term:[8,9,10],than:9,therefor:0,thereshold:11,thi:[0,8,9,10],through:1,time:[2,4,9,11],time_list:[4,11],time_measur:7,time_nam:11,time_to_solut:11,token:9,topolog:8,total:[9,11],transvers:[9,10],trotter:[9,10],trotter_st:9,tts:11,tupl:[8,9],two:[9,10],type:[8,9,10,11],typeerror:9,unconstrain:9,unconstraint:[5,9],unit:[10,11],unit_num_l:[8,10],updat:[9,10],update_ising_states_energi:9,update_trotter_ising_states_energi:9,upper:11,usag:[8,9],use:[5,8,11],used:8,using:[1,9],usual:11,util:[7,9],valid:9,validate_chimera:8,valu:[8,9,10],valueerror:[9,10,11],var_typ:[5,7,8,9],variabl:[8,9,10],variable_typ:[6,8],vartyp:[8,9],verifi:8,version:1,vertic:9,via:9,violat:[9,10],want:[4,5,9],wave:12,web:9,wget:1,what:12,when:[8,11],where:9,whether:8,which:[9,10,11],width:11,work:10,wrapper:9,written:0,wsl:1,x_i:8,x_j:8,xvf:1,yet:1,you:[0,1,4,5,8,9],zero:9},titles:["Introduction","Install","Minimum sample code","Parameters customize","Benchmark","Higher order model","openjij","openjij package","openjij.model package","openjij.sampler package","openjij.sampler.chimera_gpu package","openjij.utils package","Welcome to OpenJij\u2019s documentation!"],titleterms:{Ising:2,anneal:[2,3],anti:4,base_gpu_chimera:10,benchmark:[4,11],chimera_gpu:10,chimera_model:8,cmake:1,cmos_anneal:9,code:[2,5],content:[7,8,9,10,11],csqa_sampl:9,cuda:1,custom:3,decor:11,document:12,enviro:1,exampl:4,ferromagnet:4,from:1,github:1,gpu:1,gpu_sa_sampl:10,gpu_sqa_sampl:10,graph_util:11,higher:5,higher_order_model:8,hubo_simulated_ann:9,indic:12,instal:1,introduct:0,king_graph:8,linux:1,maco:1,minimum:2,model:[2,4,5,8],modul:[7,8,9,10,11],note:[1,5],openjij:[0,6,7,8,9,10,11,12],order:5,packag:[7,8,9,10,11],paramet:3,pip:1,problem:1,report:1,res_convertor:11,respons:9,sa_sampl:9,sampl:[2,5],sampler:[4,9,10],schedul:3,setup:1,simul:2,sqa_sampl:9,submodul:[7,8,9,10,11],subpackag:[7,9],tabl:12,time_measur:11,ubuntu:1,util:11,variable_typ:7,wave:4,welcom:12,what:0,window:1}}) \ No newline at end of file +Search.setIndex({docnames:["1-Introduction","2-Install","3-Minimum_sample","4-Parameters_customize","5-benchmark","6-HigherOrderModel","apis/modules","apis/openjij","apis/openjij.model","apis/openjij.sampler","apis/openjij.sampler.chimera_gpu","apis/openjij.utils","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":2,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":2,"sphinx.domains.rst":2,"sphinx.domains.std":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["1-Introduction.md","2-Install.md","3-Minimum_sample.md","4-Parameters_customize.md","5-benchmark.md","6-HigherOrderModel.md","apis/modules.rst","apis/openjij.rst","apis/openjij.model.rst","apis/openjij.sampler.rst","apis/openjij.sampler.chimera_gpu.rst","apis/openjij.utils.rst","index.rst"],objects:{"":{openjij:[7,0,0,"-"]},"openjij.model":{chimera_model:[8,0,0,"-"],higher_order_model:[8,0,0,"-"],king_graph:[8,0,0,"-"],model:[8,0,0,"-"]},"openjij.model.chimera_model":{ChimeraModel:[8,1,1,""],make_ChimeraModel:[8,1,1,""],make_ChimeraModel_from_JSON:[8,1,1,""]},"openjij.model.higher_order_model":{BinaryHigherOrderModel:[8,2,1,""]},"openjij.model.higher_order_model.BinaryHigherOrderModel":{adj_dict:[8,3,1,""],calc_energy:[8,3,1,""],energy:[8,3,1,""]},"openjij.model.king_graph":{KingGraph:[8,1,1,""],make_KingGraph:[8,1,1,""],make_KingGraph_from_JSON:[8,1,1,""]},"openjij.model.model":{BinaryQuadraticModel:[8,1,1,""],adj:[8,4,1,""],indices:[8,4,1,""],linear:[8,4,1,""],make_BinaryQuadraticModel:[8,1,1,""],make_BinaryQuadraticModel_from_JSON:[8,1,1,""],offset:[8,4,1,""],quadratic:[8,4,1,""],var_type:[8,4,1,""]},"openjij.sampler":{chimera_gpu:[10,0,0,"-"],cmos_annealer:[9,0,0,"-"],csqa_sampler:[9,0,0,"-"],hubo_simulated_annealing:[9,0,0,"-"],response:[9,0,0,"-"],sa_sampler:[9,0,0,"-"],sampler:[9,0,0,"-"],sqa_sampler:[9,0,0,"-"]},"openjij.sampler.chimera_gpu":{base_gpu_chimera:[10,0,0,"-"],gpu_sa_sampler:[10,0,0,"-"],gpu_sqa_sampler:[10,0,0,"-"]},"openjij.sampler.chimera_gpu.base_gpu_chimera":{BaseGPUChimeraSampler:[10,2,1,""]},"openjij.sampler.chimera_gpu.base_gpu_chimera.BaseGPUChimeraSampler":{edgelist:[10,3,1,""],nodelist:[10,3,1,""],parameters:[10,3,1,""]},"openjij.sampler.chimera_gpu.gpu_sa_sampler":{GPUChimeraSASampler:[10,2,1,""]},"openjij.sampler.chimera_gpu.gpu_sa_sampler.GPUChimeraSASampler":{sample_ising:[10,3,1,""]},"openjij.sampler.chimera_gpu.gpu_sqa_sampler":{GPUChimeraSQASampler:[10,2,1,""]},"openjij.sampler.chimera_gpu.gpu_sqa_sampler.GPUChimeraSQASampler":{sample_ising:[10,3,1,""]},"openjij.sampler.cmos_annealer":{CMOSAnnealer:[9,2,1,""],NumpyEncoder:[9,2,1,""],defalut_beta_range:[9,1,1,""]},"openjij.sampler.cmos_annealer.CMOSAnnealer":{cmos_parameters:[9,4,1,""],edgelist:[9,3,1,""],make_json_request:[9,3,1,""],nodelist:[9,3,1,""],parameters:[9,3,1,""],properties:[9,3,1,""],sample_ising:[9,3,1,""]},"openjij.sampler.cmos_annealer.NumpyEncoder":{"default":[9,3,1,""]},"openjij.sampler.csqa_sampler":{CSQASampler:[9,2,1,""]},"openjij.sampler.csqa_sampler.CSQASampler":{sample_ising:[9,3,1,""]},"openjij.sampler.hubo_simulated_annealing":{default_schedule:[9,1,1,""],hubo_sa_sampling:[9,1,1,""],hubo_simulated_annealing:[9,1,1,""],measure_time:[9,1,1,""]},"openjij.sampler.response":{Response:[9,2,1,""]},"openjij.sampler.response.Response":{energies:[9,3,1,""],indices:[9,3,1,""],min_sampels:[9,3,1,""],states:[9,3,1,""],update_ising_states_energies:[9,3,1,""],update_trotter_ising_states_energies:[9,3,1,""]},"openjij.sampler.sa_sampler":{SASampler:[9,2,1,""],geometric_ising_beta_schedule:[9,1,1,""]},"openjij.sampler.sa_sampler.SASampler":{parameters:[9,3,1,""],sample_hubo:[9,3,1,""],sample_ising:[9,3,1,""]},"openjij.sampler.sampler":{BaseSampler:[9,2,1,""],measure_time:[9,1,1,""]},"openjij.sampler.sampler.BaseSampler":{parameters:[9,4,1,""],properties:[9,4,1,""],sample:[9,3,1,""],sample_ising:[9,3,1,""],sample_qubo:[9,3,1,""]},"openjij.sampler.sqa_sampler":{SQASampler:[9,2,1,""],linear_ising_schedule:[9,1,1,""]},"openjij.sampler.sqa_sampler.SQASampler":{parameters:[9,3,1,""],sample_ising:[9,3,1,""]},"openjij.utils":{benchmark:[11,0,0,"-"],decorator:[11,0,0,"-"],graph_utils:[11,0,0,"-"],res_convertor:[11,0,0,"-"],time_measure:[11,0,0,"-"]},"openjij.utils.benchmark":{residual_energy:[11,1,1,""],se_lower_tts:[11,1,1,""],se_residual_energy:[11,1,1,""],se_success_probability:[11,1,1,""],se_upper_tts:[11,1,1,""],solver_benchmark:[11,1,1,""],success_probability:[11,1,1,""],time_to_solution:[11,1,1,""]},"openjij.utils.decorator":{deprecated_alias:[11,1,1,""],disabled:[11,1,1,""],rename_kwargs:[11,1,1,""]},"openjij.utils.graph_utils":{chimera_to_ind:[11,1,1,""],qubo_to_ising:[11,1,1,""]},"openjij.utils.res_convertor":{convert_response:[11,1,1,""]},"openjij.variable_type":{cast_var_type:[7,1,1,""]},openjij:{model:[8,0,0,"-"],sampler:[9,0,0,"-"],utils:[11,0,0,"-"],variable_type:[7,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","method","Python method"],"4":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:method","4":"py:attribute"},terms:{"abstract":[9,10],"case":[3,9],"class":[8,9,10],"default":[3,9,10],"final":[3,9],"float":[8,9,10,11],"function":9,"import":[2,3,4,5],"int":[8,9,10,11],"new":9,"return":[8,9,10,11],"true":[8,9,10,11],"try":9,For:[3,9],Ising:[0,8,9,10],TTS:[4,11],The:[3,5,8,9,11],Then:0,about:[9,10],access:9,addit:9,adj:8,adj_dict:8,adjac:8,adjgenc:[],algorithm:[9,10],alia:8,alias:11,all:3,allow:10,allow_nan:9,almost:9,alpha:3,also:8,although:0,amplitud:[9,10],anneal:[9,10,12],anti:12,anyth:3,api:[9,12],appropri:3,apt:1,arbitrari:9,arg:[4,11],argument:[3,5,9,10,11],arrai:[2,9],arrang:10,ascend:5,asic:[8,9],ask:0,attributeerror:10,automat:[1,3],averag:[4,11],base:[8,9,10],base_gpu_chimera:9,basegpuchimerasampl:10,basesampl:[9,10],basic:8,been:1,below:[9,10,11],benchmark:[7,12],beta:[9,10],beta_max:[9,10],beta_min:[9,10],between:3,bhom:9,bia:[],bias:[8,9,10],binari:[5,8,9],binaryhigherordermodel:[8,9],binaryquadraticmodel:[8,9],bmax:3,bmin:3,bool:[8,9,10,11],bootstrap:1,bqm:[8,9],brew:1,calc_energi:8,calcul:[3,4,8,9,11],call:[3,4,9],callabl:11,can:[0,3,4,5,8,9],carlo:[3,9,10],cast_var_typ:7,cdot:5,cell:10,chang:3,check_circular:9,chimera:[8,10,11],chimera_gpu:9,chimera_model:7,chimera_self:8,chimera_to_ind:11,chimeramodel:8,choos:8,classicalschedul:9,clone:1,cloud:9,cmake:12,cmo:9,cmos_anneal:7,cmos_model:9,cmos_paramet:9,cmosanneal:9,code:[8,12],coeffici:9,column:11,com:[1,9],commun:0,compil:1,compuat:11,comput:[3,11],computation_tim:11,connect:8,consid:3,constant:8,constructor:10,content:[6,12],continu:9,convert:[4,8,11],convert_respons:[4,11],cool:9,core:[0,9,10],corrdin:8,correct_st:4,correspond:[3,8,11],could:9,csqa:9,csqa_sampl:7,csqasampl:9,custom:12,cxxjij:[8,9],deal:8,decid:8,decomposit:3,decor:[7,9],def:9,defalut_beta_rang:9,default_schedul:9,defin:[3,8,9,11],definit:9,degener:11,degre:9,deprecated_alia:11,descript:[9,11],detail:[3,9],dict:[8,9,10,11],dictionari:[9,11],dimension:10,dimod:[4,8,9,10],disabl:11,distribut:3,doe:3,doesn:10,dure:[1,3,9],dwavesampl:4,e_0:11,each:[8,9,10,11],easili:0,edg:10,edgelist:[9,10],element:8,els:9,empti:9,encod:9,end:3,energi:[2,4,8,9,11],energy_bia:[],ensure_ascii:9,error:[4,9,11],exampl:[3,8,9,10,12],except:9,execut:[2,3],execution_tim:11,factori:8,fail:1,fals:[8,9,11],featur:4,ferromagnet:12,field:[9,10],figur:3,file:1,first:[3,5],flip:[3,9,10],fluctuat:[9,10],follow:[3,5,8,11],form:[8,10],found:1,fpga:[8,9],from:[3,4,8,9,10,11],frozenset:8,func:[9,11],func_nam:11,gamma:[9,10],gener:[8,9],geometr:9,geometric_ising_beta_schedul:9,get:[1,2,9,11],git:1,github:0,given:[3,8,10],going:0,gpu:[8,10],gpu_sa_sampl:9,gpu_sqa_sampl:9,gpuchimera:10,gpuchimerasasampl:10,gpuchimerasqasampl:10,graph:[8,9,10],graph_util:7,ground:11,h_i:5,h_p:9,hamiltonian:[3,8,9],handl:5,has:[0,1,3,9,11],hat:3,have:[3,9],height:11,help:0,here:3,hereaft:3,heurist:0,higher:[8,9,12],higher_order_model:[7,9],how:[3,8],html:9,http:[1,9],hubo:5,hubo_sa_sampl:9,hubo_simulated_ann:7,imag:3,implement:[0,1,9],incompat:10,indent:9,index:[9,11,12],indic:[2,8,9],info:[9,11],inform:[9,10,11],inherit:[9,10],init_st:9,initi:[8,9,10],initial_st:[9,10],initil:[9,10],inplac:11,input:[9,10],instal:[0,12],instanc:4,integ:[8,9],interact:[5,8,9,10],interfac:0,intial:8,introduc:3,introduct:12,invers:[3,9,10],ising:[8,9,11],issu:1,iter:[3,4,9,10],join:0,json:[8,9],jsonencod:9,kei:[8,9,11],keyword:9,king:9,king_graph:7,king_interact:8,kinggraph:8,kinggraphmodel:8,kwarg:[8,9,10,11],label:[2,8],lambda:4,langl:11,lattic:[9,10],length:[9,10],less:9,let:[0,3,9],librari:0,like:[3,9],linear:[8,9,10],linear_ising_schedul:9,list:[4,8,9,10,11],log:11,lower:11,machine_typ:[8,9],magnitud:3,mai:1,make:[1,4,5,8,9],make_binaryquadraticmodel:8,make_binaryquadraticmodel_from_json:8,make_chimeramodel:8,make_chimeramodel_from_json:8,make_json_request:9,make_kinggraph:8,make_kinggraph_from_json:8,map:9,mat:11,match:8,matplotlib:4,matrix:11,max:[3,9],maximum:[3,9,10],mcstep:3,mean:3,measur:[9,11],measure_tim:9,measure_with_energi:11,method:[8,9,10],min:[3,9],min_sampel:9,min_sampl:2,minim:[9,10],minimum:[3,9,10,12],minmum:9,model:[0,7,9,10,12],modul:[6,12],mont:[3,9,10],montecarlo:9,more:[3,9],must:[5,9,11],name:9,ndarrai:11,necessari:9,need:[1,5],neq:8,newest:1,next:3,node:[9,10],nodelist:[9,10],none:[3,8,9,10],note:[3,12],nread:3,nsweep:3,num:3,num_read:[2,4,9,10],num_sweep:[4,9,10],number:[3,4,9,10,11],numer:3,numpi:[4,9,11],numpyencod:9,obj:[8,9],object:[8,9],odd:10,offset:8,old:1,one:[9,10],onli:[5,9],openjij:[1,2,3,4,5],optim:[0,5,9],option:[1,9,10],order:[8,9,12],org:1,overwrit:9,p_r:[4,11],packag:[6,12],page:[3,12],pair:9,param:[8,9,11],paramet:[8,9,10,11,12],part:0,particip:0,pass:9,perform:3,plan:1,pleas:[0,1,9],plt:4,probabl:[4,11],problem:[3,9,10],project:0,properti:[9,10],propto:3,provid:[4,8],purg:1,pyplot:4,python:[0,1,9],q_energi:9,quadrat:[8,9,10],quantum:[3,9,10],quantumis:[],qubo:[0,8,9,11],qubo_to_is:11,qudrat:9,question:0,rais:[9,10,11],random:4,rang:[2,3,4,9],rangl:11,read:[3,9,10],recommend:1,record:9,redisu:11,ref_energi:11,refer:[9,11,12],reiniti:[9,10],reinitialize_st:[9,10],rename_kwarg:11,repositori:0,repres:[8,9,11],request:9,requir:3,res:[9,10],res_convertor:7,residu:[4,11],residual_energi:11,respons:[2,3,4,5,7,10,11],result:[3,4,8,9,10],returen:11,row:11,run:[9,10],sa_sampl:[7,10],same:[8,9,11],sampl:[9,10,12],sample_:9,sample_hubo:[5,9],sample_is:[2,3,4,9,10],sample_qubo:9,sampler:[2,3,5,7,8,11,12],sampleset:[4,9],sasampl:[2,4,5,9,10],satisfi:8,schedul:[9,10,12],schedule_info:[9,10],se_lower_tt:11,se_residual_energi:11,se_success_prob:11,se_upper_tt:11,search:12,section:3,see:9,seed:[9,10],self:[8,9],separ:9,serializ:9,set:3,setup:12,show:[3,8,9],side:10,sigma:3,sigma_i:[5,8,9],sigma_j:[5,8],sigma_k:5,simul:[9,10,12],singl:[9,10],size:9,skipkei:9,slack:0,solus:11,solut:[4,11],solv:[3,9],solver:[4,11],solver_benchmark:[4,11],sort:8,sort_kei:9,sourc:[7,8,9,10,11],specif:[8,9],specifi:[3,9],spin:[2,3,5,8,9,10,11],sqa:[9,10],sqa_kwarg:[],sqa_sampl:[7,10],sqasampl:[9,10],standard:[4,11],start:3,state:[2,5,8,9,10,11],statist:3,steop:9,step:[3,4,9,10],step_length:9,step_num:9,step_num_list:4,still:0,str:[8,9,10],strangth:[9,10],strength:9,string:8,structur:[9,10],subclass:9,submodul:6,subpackag:6,success:[4,11],success_prob:11,sudo:1,sum:3,sum_:[5,8],sum_i:9,summari:11,support:9,sweep:[3,9,10],swendsenwang:9,system:3,system_class:[],take:4,tar:1,target:[9,10],tau:11,temparetur:[9,10],temperatur:[3,9,10],term:[3,8,9,10],than:9,therefor:0,thereshold:11,thi:[0,3,8,9,10],through:1,time:[2,3,4,9,11],time_list:[4,11],time_measur:7,time_nam:11,time_to_solut:11,token:9,topolog:8,total:[3,9,11],transvers:[9,10],trotter:[9,10],trotter_st:9,tts:11,tupl:[8,9],two:[9,10],type:[8,9,10,11],typeerror:9,unconstrain:9,unconstraint:[5,9],under:3,unit:[10,11],unit_num_l:[8,10],updat:[9,10],update_ising_states_energi:9,update_trotter_ising_states_energi:9,upper:11,usag:[8,9],use:[5,8,11],used:8,user:3,using:[1,9],usual:11,util:[7,9],valid:9,validate_chimera:8,valu:[3,8,9,10],valueerror:[9,10,11],var_typ:[5,7,8,9],variabl:[8,9,10],variable_typ:[6,8],vartyp:[8,9],verifi:8,version:1,vertic:9,via:9,violat:[9,10],want:[3,4,5,9],wave:12,web:9,wget:1,what:12,when:[3,8,11],where:9,whether:8,which:[9,10,11],width:11,work:10,wrapper:9,written:0,wsl:1,x_i:8,x_j:8,xvf:1,yet:1,you:[0,1,3,4,5,8,9],zero:9},titles:["Introduction","Install","Minimum sample code","Parameters customize","Benchmark","Higher order model","openjij","openjij package","openjij.model package","openjij.sampler package","openjij.sampler.chimera_gpu package","openjij.utils package","Welcome to OpenJij\u2019s documentation!"],titleterms:{"float":3,"int":3,Ising:2,anneal:[2,3],anti:4,base_gpu_chimera:10,benchmark:[4,11],beta:3,beta_max:3,beta_min:3,chimera_gpu:10,chimera_model:8,cmake:1,cmos_anneal:9,code:[2,5],content:[7,8,9,10,11],csqa_sampl:9,cuda:1,custom:3,decor:11,document:12,enviro:1,exampl:4,ferromagnet:4,from:1,gamma:3,github:1,gpu:1,gpu_sa_sampl:10,gpu_sqa_sampl:10,graph_util:11,higher:5,higher_order_model:8,hubo_simulated_ann:9,indic:12,instal:1,introduct:0,king_graph:8,linux:1,list:3,maco:1,minimum:2,model:[2,4,5,8],modul:[7,8,9,10,11],note:[1,5],num_read:3,num_sweep:3,openjij:[0,6,7,8,9,10,11,12],order:5,packag:[7,8,9,10,11],paramet:3,pip:1,problem:1,report:1,res_convertor:11,respons:9,sa_sampl:9,sampl:[2,3,5],sampler:[4,9,10],sasampl:3,schedul:3,script:3,setup:1,shcedul:3,simul:2,sqa_sampl:9,sqasampl:3,submodul:[7,8,9,10,11],subpackag:[7,9],tabl:12,time_measur:11,trotter:3,ubuntu:1,util:11,variable_typ:7,wave:4,welcom:12,what:0,window:1}}) \ No newline at end of file diff --git a/source/4-Parameters_customize.md b/source/4-Parameters_customize.md index aa9851a..5dba05e 100644 --- a/source/4-Parameters_customize.md +++ b/source/4-Parameters_customize.md @@ -2,6 +2,40 @@ ## Customize annealing schedule +In this page, let us show you how to set the parameters for annealing. + +### SASampler + +`SASampler` has arguments as follows. + +#### beta_min (float) + +The minimum value of inverse temperature. Default to None. This corresponds to the starting temperature for annealing. +If you do not specify anything, OpenJij will set the appropriate temperature automatically. + +#### beta_max (float) + +The maximum value of inverse temperature. Default to None. This corresponds to the ending temperature for annealing. +If you do not specify anything, OpenJij will set the appropriate temperature automatically. + +#### num_reads (int) + +The number of iteration of annealing. Default to 1. If num_reads is specified, response has numerical results for the number of num_reads. + +#### num_sweeps (int) + +The number of Monte-Carlo steps (hereafter we called MCsteps) during annealing. Default to 1000. + +> -note- MCsteps means the number of times to flip all the spins in the system. e.g., the case of N spin system, during 1 MCstep, you will have to flip these spins N times. + +#### schedule (list) + +You can set the annealing schedule as you like. Default to None. If you want to calculate "alpha" MCsteps for a given inverse temperature "beta", you can set it as [beta, alpha]. + + +### Sample script 1 + +The following is an example of annealing with parameters `beta_min=0.1, beta_max=100, num_reads=1000, num_sweeps=100`. ```python import openjij as oj @@ -12,14 +46,124 @@ for i in range(n-1): for j in range(i+1, n): J[i, j] = -1 -# customized annealing schedule -# list of [beta, monte carlo steps in beta] -schedule = [ - [10, 3], - [ 5, 5], - [0.5, 10] -] +# set parameters +bmin = 0.1 +bmax = 100 +nreads = 1000 +nsweeps = 100 + +sampler = SASampler() +response = sampler.sample_ising(h, J, beta_min=bmin, beta_max=bmax, num_reads=nreads, num_sweeps=nsweeps) +``` + +### Sample script 2 + +Here, let me show you an example how to specify an annealing schedule for user. The following figure shows an image of annealing schedule. + +![An example of SA schedule](/images/4/schedule.png) + +At first, calculate 3 MCsteps with `beta=0.5`. Next, compute 5 MCsteps with `beta=5`. Finally, execute 6 MCsteps with `beta=10`. + +A example of script that does this is following. + +```python +schedule = [[0.5, 3], [5, 5], [10, 6]] sampler = SASampler() response = sampler.sample_ising(h, J, schedule=schedule) -``` \ No newline at end of file +``` + +### SQASampler + +SQASampler considers the total Hamiltonian with the following quantum terms when the Hamiltonian of the problem you want to solve is $\hat{H}_p$, + +$ +\hat{H} = s\hat{H}_p + (1-s) \Gamma \sum_{i} \hat{\sigma}^x_i +$ + +and annealing is performed under the following statistical distribution, + +$ +P(\hat{H}) \propto e^{-\beta \hat{H}} +$ + +`SQASampler` has arguments as follows. + +#### beta (float) + +The inverse temperature. Default to 5.0. + +#### Gamma (float) + +The magnitude of the quantum term. Default to 1.0. + +#### trotter (int) + +The system Trotter decomposition number. Default to 4. + +#### num_sweeps (int) + +The number of MCsteps required between changing the annealing schedule parameter `s` from 0 to 1. Default to 1000. + +#### num_reads (int) + +The number of annealing iteration. Default to 1. + +#### shcedule (list) + +Set an annealing shcedule as you like. Default to None. For a given inverse temperature if you want to compute "alpha" MCsteps with the annealing schedule parameter "s", you can set it as [s, alpha]. +If you want to specify the inverse temperature "beta" and compute "alpha" MCsteps with the annealing schedule parameter "s", you can specify it as [s, beta, alpha]. + +### Sample script 1 + +The following example shows an annealing computation with `beta=10, gamma=5, trotter=16, num_reads=1000, num_sweeps=100` + +```python +import openjij as oj + +n = 10 +h, J = {}, {} +for i in range(n-1): + for j in range(i+1, n): + J[i, j] = -1 + +# set parameters +beta = 10 +gamma = 5 +trotter = 16 +nreads = 1000 +nsweeps = 100 + +sampler = SQASampler() +response = sampler.sample_ising(h, J, beta=beta, gamma=gamma, trotter=trotter, num_reads=nreads, num_sweeps=nsweeps) +``` + +### Sample script 2 + +Here we introduce an example of a user-specified annealing schedule. The following figure shows an image of annealing schedule. + +![An example of SQA schedule with constant beta](/images/4/schedule_sqa.png) + +First, 5 MCsteps with `s=0.0`. Next, 10 MCsteps with `s=0.5`. Finally, 5 MCsteps with `s=1`. + +```python +schedule = [[0, 5], [0.5, 10], [1, 5]] + +sampler = SQASampler() +response = sampler.sample_ising(h, J, schedule=schedule) +``` + +### Sample script 3 + +In this section, we show you an example of a user-defined annealing shcedule in more detail. + +![An example of SQA schedule including beta](/images/4/schedule_sqa_2.png) + +First, 5 MCsteps with `s=0.0, beta=0.5`. Next, 10 MCsteps with `s=0.5, beta=1.0`. Finally, 5 MCsteps with `s=1, beta=10`. + +```python +schedule = [[0, 0.5, 5], [0.5, 1.0, 10], [1, 10, 5]] + +sampler = SQASampler() +response = sampler.sample_ising(h, J, schedule=schedule) +``` diff --git a/source/images/.DS_Store b/source/images/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..732f16682d384cb2f09fda638be27cb960a7c7d1 GIT binary patch literal 6148 zcmeHK%}T>S5ZY^U&3yN5JD?`zeq@q5W+wurZUicBXV5ogrtmT4v@+@ zga_8E*9n7OJQ0nKX=FgZJIfpNI$rqs{S^vtG&Pf+ottMY%d(5vOQ$6UPVC10Ud8R6 z%iggYw>)E?2oZkRu6G(V23NV|eG$cO5H-3gIq(}0a&ZO&ElEE=NfkBBC zHj7SOv^!(B_O?Z}YIe+)A2yy3>o0rb5&wsgPV2jwuAOcaim0iwKP`eLGJp&q15?X@ zIXBtD)IK3T7&3qi{1pT8eBhuGZG(wMb#y?ZN&vt#xRrn{YYCad4cZ11jW7a2bt<4v zrKZH7IvxDn#MuTDjXIrBQ+!afGBp(nRjb4NT!j;AYs3~AKnA`tFr&LUdH)~$T>pPf z!X7e!4E!qwXu9fDE3hSVw@z$M-nAUG1}a6yB^p0cz))8)#LBC96;uiMxikQ6gNa7) QfZ&gSq5&IZ;8z)V2P|u0SpWb4 literal 0 HcmV?d00001 diff --git a/source/images/4/schedule.png b/source/images/4/schedule.png new file mode 100644 index 0000000000000000000000000000000000000000..6022bdd7ed3fb99a6b603cd3b0f6c40c8e9dcbe6 GIT binary patch literal 7618 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 Zie$zEVw+Rg0iL`A6l7IoN~KNS{TCW-$+rLi literal 0 HcmV?d00001