éåã³ã³ãã¥ãŒã¿ãåãå·»ãçŸç¶
æ±èã¯ãç¬èªã®éåã€ã³ã¹ãã€ã¢ãæè¡(ç䌌éåã³ã³ãã¥ãŒã¿)ãçšãããã·ãã¥ã¬ãŒãããåå²ãã·ã³(SBM=Simulated Bifurcation Machine)ãã®éçºææã«ã€ããŠèª¬æäŒãè¡ã£ãããŸããæ°ãã«éåã€ã³ã¹ãã€ã¢ãæé©åãœãªã¥ãŒã·ã§ã³ãSQBMïŒãã®æäŸã2022幎3æããéå§ããéèãåµè¬ãéºäŒåå·¥åŠãç©æµãAIãªã©ã®é åã§è€éåãã瀟äŒèª²é¡ã®è§£æ±ºã«ä¹ãåºãããšã«ãè§Šããã
ã·ãã¥ã¬ãŒãããåå²ãã·ã³ã¯ãèšå€§ãªæ°ã®éžæè¢ããæé©ãªãã®ãèŠã€ãåºããå€§èŠæš¡çµã¿åããæé©ååé¡ãè§£ãããã«çšããããæè¡ã§ã補é ãææéçºã亀éãç©æµãéèã管çãåµè¬ãªã©ã®æ§ã ãªåéã§ã®èª²é¡è§£æ±ºã«è²¢ç®ããããšãæåŸ ãããŠãããã³ããçŠã«ãããŠããæ²»çè¬ã«æé©ãªåè£ç©è³ªã®éžå®ãå»çåŸäºè ã®æé©ãªå€åã·ããã®äœæãæ£è ã®æé©ãªæ¬éå ã®éžå®ãªã©ãçµã¿åããæé©ååé¡ã®è§£æ±ºã«å¯Ÿããå¿ èŠæ§ãé«ãŸã£ãŠãããšããã
æ±è ç ç©¶éçºã»ã³ã¿ãŒ ããææã»ããã³ãã£ã¢ç ç©¶æããã³ãã£ã¢ãªãµãŒãã©ãã©ããªãŒ ç 究䞻幹ã®åŸè€éŒäººæ°ã¯ããæå 端ãšãããéåã³ã³ãã¥ãŒã¿ã§ã¯ãéåååŠèšç®ãæ©æ¢°åŠç¿ãªã©ã®äžèœéåèšç®ã«é©ããã²ãŒãåŒã泚ç®ãéããŠããããèŠæš¡ãå°ããã圹ã«ç«ã€ã¬ãã«ã«å°éããã«ã¯ãŸã æéãããããããã«å¯ŸããŠã¢ããŒãªã³ã°æ¹åŒã¯ãçµã¿åããæé©åã«ç¹åããŠãããD-Waveã§ã¯5000éåãããã®è¶ äŒå°ããããæèŒããŠãããã ãããããã®æè¡ãçµã¿åããæé©åã®ãªãã§æãé£ããåé¡ã®éåã§ãããNPå®å šåé¡ããè§£ãã®ã¯é£ãããšèšãããŠããããšå眮ãããªããããéåã³ã³ãã¥ãŒã¿ä»¥å€ã«ããã¬ãŒã¶ãŒã掻çšããã³ããŒã¬ã³ãã€ãžã³ã°ãã·ã³(CIM)ã空éå åŠã€ãžã³ã°ãã·ã³ãšãã£ãç¹æ®ããŒããŠã§ã¢ã«ããèšç®ããåŸæ¥ã®ããžã¿ã«èšç®æ©ã®æè¡ã掻çšããååŠç³»ã·ãã¥ã¬ãŒã·ã§ã³ã§ããã·ãã¥ã¬ãŒãããåå²ãã·ã³ãã·ãã¥ã¬ãŒãããCIMãHopfield-Tankãããã«ã¯ã·ãã¥ã¬ãŒãããã¢ããŒãªã³ã°(SA)ã§ããããžã¿ã«ã¢ããŒãªã³ã°ãã·ã³ãSTATICAãå¶éãã«ããã³ãã·ã³ã§ãçµã¿åãããæé©ååé¡ã«å¯Ÿå¿ããããšãã§ããããšãçŸåšã®ã³ã³ãã¥ãŒãã£ã³ã°ç°å¢ã説æããã®äžã§ãããNPå®å šåé¡ããè§£ãããã·ã³ãååšããããããã¯ãéåã³ã³ãã¥ãŒã¿ããã匷åãªèšç®æ©ã«ãªããšä¿¡ããããŠãããæ¢åã®ããžã¿ã«èšç®æ©ã®æå 端æè¡ã掻çšããã°ããããã®å šçµåã容æã§ãããšããã¡ãªããã«å ããŠãåçšåãããŠããå®çžŸãå€ãããã瀟äŒå®è£ ããããããšããã¡ãªããããããçŸç¶ã§ã¯ãã€ãžã³ã°ãã·ã³ã§ã¯éåã³ã³ãã¥ãŒã¿ããããç䌌éåã³ã³ãã¥ãŒã¿æè¡ãªã©ãçšããæ¢åã®èšç®æ©ã®æå 端æè¡ã掻çšããæ¹ããèšç®ãéãããšææããã
-

æ±è ç ç©¶éçºã»ã³ã¿ãŒ ããææã»ããã³ãã£ã¢ç ç©¶æããã³ãã£ã¢ãªãµãŒãã©ãã©ããªãŒ ç 究䞻幹ã®åŸè€éŒäººæ°
ã·ãã¥ã¬ãŒãããã¢ããŒãªã³ã°ã§1幎以äžãããèšç®ã30åã§è§£ãããšã«æå
æ±èã®ã·ãã¥ã¬ãŒãããåå²ãã·ã³ã¯ã2016å¹Žã«æ±èãææ¡ããéååå²ãã·ã³ãåç¹ãšãªã£ãŠããã2019幎ã«ã¯æ±èãã·ãã¥ã¬ãŒãããåå²ã¢ã«ãŽãªãºã ãææ¡ããããããšã«ããæå 端éåã€ã³ã¹ãã€ã¢ãæè¡ã«ãªããšäœçœ®ã¥ããŠããã
ã2016幎ã«ãKPOãããã¯ãŒã¯ãææ¡ãããããéåååŠã«ãã£ãŠè§£ããšéååå²ãã·ã³ãšããŠæŽ»çšã§ããããçŸåšã®èšç®æ©ã§ã¯ã·ãã¥ã¬ãŒããé£ãããè¶ äŒå°åè·¯å®è£ ãå¿ èŠã§ãããã¹ã±ãŒã«ãå®çŸããã«ãæéãããããšãã課é¡ãããããã®äžæ¹ã§ãKPOãããã¯ãŒã¯ãããã«ãã³ã®éåæ¹çšåŒã«ãããå€å žååŠã«åŸããå€å žåå²ãã³ã·ãšããŠæŽ»çšããã°ãçŸåšã®ããžã¿ã«èšç®æ©ã§ãã·ãã¥ã¬ãŒããå¯èœã«ãªããå€§èŠæš¡åãå®çŸã§ããããšãããã£ãããããããšã«ãæ±èã§ã¯ã2019幎ã«ãæå 端ã®å€å žæè¡ã掻çšããŠãåªããã€ãžã³ã°ãã·ã³(çµã¿åããæé©åå°çšãã·ã³)ãéçºã§ããããšãçºèŠãããã§ã¯ãå€å žåæãã·ã³ã®éåæ¹çšåŒãé«éã·ãã¥ã¬ãŒã·ã§ã³ã«é©ããåœ¢ã«æ¹å€ãããããã·ãã¥ã¬ãŒãããåå²ãã·ã³ã®åºæ¬æ¹çšåŒã«ãªã£ãŠãããããã«ãéœçã·ã³ãã¬ã¯ãã£ãã¯ã»ãªã€ã©ãŒæ³ãé©çšããé«éã¢ã«ãŽãªãºã ãã·ãã¥ã¬ãŒãããåå²ã¢ã«ãŽãªãºã (SB)ãšããŠç¢ºç«ãSBã¯åŸ®åæ¹çšåŒã§è§£ããããäžŠåæŽæ°ãå¯èœã§ãããPCã¯ã©ã¹ã¿ãGPUãFPGAãšãã£ãæ¢åã®äžŠåèšç®æ©ã«ããé«éåã容æã§ããã䞊åèšç®ãšããã³ã³ãã¥ãŒãã£ã³ã°ã®æè¡ãã¬ã³ããšã®èŠªåæ§ãé«ãã¢ã«ãŽãªãºã ãšããããããããæŽ»çšããŠé«éã§çµã¿åããæé©ååé¡ãè§£ãã®ããã·ãã¥ã¬ãŒãããåå²ãã·ã³ã«ãªãããšããã
ã ãããæ°åŠçã«ã¯ãŸã 蚌æãããŠããªãå€å žååŠã®æç±éçšãå©çšããŠè§£ãæ¢çŽ¢ããããšã«ãªããçè«çãªç ç©¶ã¯ãä»åŸãç¶ç¶çã«è¡ãããšã«ãªãããšãè¿°ã¹ãŠããã
2019幎ã®çºè¡šæç¹ã§ã¯ãFPGAãå®è£ ããã·ãã¥ã¬ãŒãããåå²ãã·ã³ã¯ãã³ããŒã¬ã³ãã€ãžã³ã°ãã·ã³(CIM)ã®çŽ10åã®é«éåãéæã8åã®GPUãæŽ»çšããGPUã¯ã©ã¹ã¿å®è£ ã·ãã¥ã¬ãŒãããåå²ãã·ã³ã§ã¯ãCPUã§å®è¡ããŠããã·ãã¥ã¬ãŒãããã¢ããŒãªã³ã°ã®çŽ1000åã®é«éåãå®çŸãããšããã
ãã ããåæã®ã·ãã¥ã¬ãŒãããåå²ãã·ã³ã§ã¯ãã¢ããã°ãšã©ãŒãšããã³ã·ã£ã«éå£ã«ãããæé©è§£ãåŸãããªãå Žåããã£ããããã§ã2021幎2æã«éçºãã第2äžä»£ã·ãã¥ã¬ãŒãããåå²ã¢ã«ãŽãªãºã ã§ã¯ãå£ã®å°å ¥ãšéç·åœ¢é ã®åé€ã«ãããã¢ããã°ãšã©ãŒãäœæžãããšãšãã«ãé«éã«ãè¯è§£ã«åæããããšãã§ããã匟éçã·ãã¥ã¬ãŒãããåå²ã¢ã«ãŽãªãºã (bSB=ballistics Simulated Bifurcation)ããšã颿£åãšç䌌éåãã³ãã«å¹æã«ãã£ãŠããããªãé«ç²ŸåºŠåãå®çŸããã颿£åã·ãã¥ã¬ãŒãããåå²ã¢ã«ãŽãªãºã (dSB=discrete Simulated Bifurcation)ãã«ãã£ãŠããããã®èª²é¡ã解決ãããå€å žååŠã®éçãæç ŽããŠãããé«ç²ŸåºŠãªè§£ãç²åŸã§ããããšããã
ãã®é²åã«ãããFPGAãå®è£ ããbSBãã·ã³ã§ã¯ã2016幎ã®CIMã«æ¯ã¹ãŠçŽ120åã®é«éåãå®çŸãSTATICAã«æ¯ã¹ãŠã3ïœ4åã®é«éåãå®çŸãããšããããŸããFPGAãå®è£ ããdSBãã·ã³ã§ã¯ã2000ã¹ãã³ä»¥äžã®å€æ§ãªåé¡ã®æé©è§£ãæéã§åŸããããšãããããã«GPUã¯ã©ã¹ã¿ãå®è£ ããdSBãã·ã³ã§ã¯ã10äžã¹ãã³åé¡ã®æé©è§£ãçŽ2åã§åŸãããã»ãã100äžã¹ãã³ã®åé¡ã§ã¯çŽ30åã§æé©è§£ã«å°éãããšãããã10äžã¹ãã³ã®åé¡ãSAã§ãããšã1幎2ãæãããããã®èšç®ã30åéã§è§£ãããšãã§ããããšããã®å®çžŸã«èªä¿¡ãã¿ããã
ãŸãããæçµçã«ã¯ãGPUãçšãããããã倿°ã®FPGAãã€ãªããæ¹ããããé«éåã§ãããããããã«å¯Ÿå¿ããæè¡ãæ°ãã«çºè¡šããŠããã倿°ã®FPGAãèªåŸçã«åæãããŠãé«éã§ãå€§èŠæš¡ãªãã·ã³ãå®çŸããããšãã§ããããšè¿°ã¹ãã
FPGAãæŽ»çšãããªã³ãã¬ãã¹çãµãŒãã¹ãæäŸ
æ±èã§ã¯ãFPGAå®è£ ã·ãã¥ã¬ãŒãããåå²ãã·ã³ã掻çšãããªã³ãã¬ãã¹çã®ãµãŒãã¹ãæäŸããŠããã
æ±è ç ç©¶éçºã»ã³ã¿ãŒ æ å ±éä¿¡ãã©ãããã©ãŒã ç ç©¶æã³ã³ãã¥ãŒã¿ïŒãããã¯ãŒã¯ã·ã¹ãã ã©ãã©ããªãŒ äžåžç ç©¶å¡ã®æ¿±å·æŽå¹³æ°ã¯ããFPGAå®è£ ã·ãã¥ã¬ãŒãããåå²ãã·ã³ã¯ãéèååŒã®æé©åãåç»åŠçãè€æ°ã®ãããããå調ããŠåäœãã矀ããããã®å¶åŸ¡ãªã©ããªã¢ã«ã¿ã€ã ã·ã¹ãã ã§ã®æŽ»çšãæ³å®ããŠãããå¶çŽãããæéã®ãªãã§ç¬æã«å€æããå Žåã«ã¯ããããŸã§ã¯çµéšåã«åºã¥ãç°¡çŽ ãªæ¡ä»¶å€å¥åŒã«ãã倿ãšãªã£ãŠããããã€ãžã³ã°ãã·ã³ãå©çšããããšã§ããã¹ãŠã®è§£ç©ºéã®ãªãããæé©è§£ãæ¢çŽ¢ããåççãªå€æãã§ããããã«ãªããã€ã³ããªãžã§ã³ããªã·ã¹ãã æ§ç¯ãå¯èœã«ãªãããããç¬æå¿çæé©åã·ã¹ãã ãšããŠæäŸããããšãã§ããããšããã
-

æ±è ç ç©¶éçºã»ã³ã¿ãŒ æ å ±éä¿¡ãã©ãããã©ãŒã ç ç©¶æã³ã³ãã¥ãŒã¿ïŒãããã¯ãŒã¯ã·ã¹ãã ã©ãã©ããªãŒ äžåžç ç©¶å¡ã®æ¿±å·æŽå¹³æ°
FPGAå®è£ ã·ãã¥ã¬ãŒãããåå²ãã·ã³ã¯ãFPGAã®ãªãã«ã·ãã¥ã¬ãŒãããåå²ã¢ã«ãŽãªãºã ãæžã蟌ãããšã§ãè¶ é«éãè¶ äœé å»¶ã®ã€ãžã³ã°ãã·ã³ãå®çŸããŠãããšããã
FPGAå®è£ ã·ãã¥ã¬ãŒãããåå²ãã·ã³ã«ããç¬æå¿çæé©åã·ã¹ãã ã¯ã2019幎10æã«è¶ é«éè£å®ååŒãã·ã³ã®PoCãè¡ã£ãã®ã«ç¶ãã2021幎5æã«ã¯ãHFTçã®æè³æŠç¥æå¹æ§ã«ã€ããŠãã«ãã»ãã£ãã¿ã«ãšå ±åæ€èšŒãéå§ãå®çšåã®å¯èœæ§ãæ¢ã£ãŠããã
ãã®äžæ¹ã§å€ãã®äººãç¬æå¿çæé©åã·ã¹ãã ã®ã³ã³ã»ãããæ€èšŒã§ããããã«ã2021幎3æãããæ±çšã€ãžã³ã°ãœã«ããšããŠãããªã³ãã¬ãã¹çSBM(ã·ãã¥ã¬ãŒãããåå²ãã·ã³)ãã®æäŸãéå§ããŠããã
ãªã³ãã¬ãã¹çSBMã¯ãã€ã³ãã«ã®FPGA PAC D5005ã䜿çšããSBMãµãŒãã¹ã§ããŠãŒã¶ãŒã¯ããµãŒããŒããã¹ã¯ãããã«ãåžè²©ã®FPGAããŒããè£ çãæ±èãæäŸããSBå°çšé«éåŠçåè·¯ã€ã¡ãŒãžãAPIããªãã¡ã¬ã³ã¹ãã¶ã€ã³ãšãã£ããœãããŠã§ã¢ãã€ã³ã¹ããŒã«ããŠå©çšããããšãã§ããã
ãSBå°çšé«éåŠçåè·¯ã¯ããªç§çŽã®äœã¬ã€ãã³ã·ãŒãå®çŸããC/C++ãPythonãšãã£ãäžè¬çãªãœãããŠã§ã¢æè¡è ã䜿çšå¯èœãªã€ã³ã¿ãã§ãŒã¹ãæäŸããŠããã3è¡ã®ããã°ã©ã ãæžãã ãã§SBMãåããããšãã§ããã·ã³ãã«ãªç¹ãç¹åŸŽã ããŸãããªãã¡ã¬ã³ã¹ãã¶ã€ã³ã§ã¯ãåç»äžã®è€æ°ãªããžã§ã¯ãããªã¢ã«ã¿ã€ã ã«è¿œè·¡ãããã«ããªããžã§ã¯ããã©ããã³ã°ããŠãŒã¶ãŒãæå®ãã蚪åå°ç¹ã«å¯ŸããŠãå³åº§ã«æé©ãªå·¡åçµè·¯ãæç€ºããã€ã³ã¿ã©ã¯ãã£ãæçå·¡åçµè·¯æ¢çŽ¢ãæ ªåŒã®ããŒããã©ãªãªæé©åãªã©ã«å©çšã§ããã¹ããªãŒã ããŒã¿åŠçåæå€§ç¬ç«é忀åºãæäŸãUIãå«ããŠè¿ éã«ããã¿ã€ãã³ã°ãå¯èœã§ããããªã¢ã«ã¿ã€ã æ§ãã€ã³ã¿ã©ã¯ãã£ãæ§ãã¹ããªãŒã ããŒã¿åŠçãå®çŸã§ããããšããã
ãè¶ã®æ°Žå¥³å倧åŠã®å·¥è€ç 究宀ã§ã¯ããªã³ãã¬ãã¹çSBMãæŽ»çšããŠãã€ãžã³ã°ãã·ã³ã«ããã¯ã©ã¹ã¿ãªã³ã°ã¢ã«ãŽãªãºã ã®ç ç©¶ãè¡ã£ãŠãããç¹å®ã®å°åã®é éå ã«ãç¹å®ã®å°æ°ã®ãã©ãã¯ã䜿ã£ãŠå¹ççã«é éããã«ã¯ã©ããããããããšãã£ãçµæãå°ãåºãããšãã§ãããšãããããã§ã¯ãã€ãžã³ã°ãã·ã³ãšå€å žèšç®æ©ã®ç¹°ãè¿ãèšç®ã«ãããã€ãããªãã¢ã«ãŽãªãºã ãéçºãäœã¬ã€ãã³ã·ãŒãªã€ãžã³ã°ãã·ã³ã䜿ãããšã§ãæ±è§£ã®ã¢ã¯ã»ã©ã¬ãŒã·ã§ã³ãå®èšŒãããšããã
éåã€ã³ã¹ãã€ã¢ãæé©åãœãªã¥ãŒã·ã§ã³ãSQBMïŒãã®æäŸãéå§
ããã«ãæ±èããžã¿ã«ãœãªã¥ãŒã·ã§ã³ãºã§ã¯ãSBã¢ã«ãŽãªãºã ãããŒã¹ã«ããéåã€ã³ã¹ãã€ã¢ãæé©åãœãªã¥ãŒã·ã§ã³ãSQBMïŒããã2022幎3æ2æ¥ããæäŸãéå§ããŠããã
æ±èããžã¿ã«ãœãªã¥ãŒã·ã§ã³ãº ICTãœãªã¥ãŒã·ã§ã³äºæ¥éš ããŒããšãã³ãžã§ãªã¹ãã®å²©åŽå äžæ°ã¯ããæ¬æ Œçéåã³ã³ãã¥ãŒã¿ã®äžçãå®çŸããåã«ãéåãšå€å žã®ãã€ããªããã«ãã£ãŠãããŸããã«äœ¿ããç°å¢ãå®çŸãããŠããããã®äžè§ãæ ãã®ãSQBMïŒãšãªããé«éãå€§èŠæš¡ãããŸãã䜿ãããšãã£ãç¹åŸŽãæã€æ±èç¬èªã®ã€ãžã³ã°ãã·ã³ã§ãããã·ãã¥ã¬ãŒã·ã§ã³å¿çšãæ©æ¢°åŠç¿å¿çšãæé©åå¿çšã§å©çšããããšãå¯èœã«ãªãããšããã
-

æ±èããžã¿ã«ãœãªã¥ãŒã·ã§ã³ãº ICTãœãªã¥ãŒã·ã§ã³äºæ¥éš ããŒããšãã³ãžã§ãªã¹ãã®å²©åŽå äžæ°
éåã³ã³ãã¥ãŒã¿ã®ç ç©¶ããçãŸãããçµã¿åããæé©åãœã«ããŒã§ããã·ãã¥ã¬ãŒãããåå²ãã·ã³ã«ãé床ã粟床ãèŠæš¡ãå€§å¹ ã«åäžãããæ°ããªã¢ã«ãŽãªãºã ãæ¡çšãéåã€ã³ã¹ãã€ã¢ããªãã§ã¯ã®æ¡åŒµæ§ãšããœãããŠã§ã¢ãªãã§ã¯ã®æè»æ§ãæã€ãšããã
ãã€ãžã³ã°ãã·ã³ãæ±ãããšã§ãã圢åŒã§ããQUBO(Quadratic Unconstrained Binary Optimization)ãèªç¶ã«æ¡åŒµã§ããã»ããæ§ã ãªããŒããŠã§ã¢ã«é©ãã圢ã§ãœãããŠã§ã¢ãå®è£ ã§ããæè»æ§ãç¹åŸŽã«ãªãããšããã
ãããæŽ»çšããããšã§ãéèååŒã®æé©åãç£æ¥çšããããã®åäœã®æé©åãç§»åçµè·¯ãéé»çµè·¯ã®æé©åãåµè¬ã®ããã®ååèšèšãªã©ã«å¿çšã§ãããšããã
ããŒãããŒãšããŠãã°ã«ãŒãŽããŒããã«ããã®CogniFrameãªã©6瀟ãšé£æºãAWS Marketplaceã§ã®å®è¡ã¢ãžã¥ãŒã«ã®æäŸã«å ããŠãä»åŸã¯ããã€ã¯ããœãããå ¬éããŠããéåãœãªã¥ãŒã·ã§ã³åããã«ã¹ã¿ãã¯ãããªãã¯ã¯ã©ãŠããšã³ã·ã¹ãã ãAzure Quantumãã§ã®ã¯ã©ãŠããµãŒãã¹ã®æäŸãã¯ã©ãŠãç°å¢ã«ã¯åããªãç§å¿æ§ã®é«ãã¢ããªã±ãŒã·ã§ã³ãè¶ äœé å»¶ãå¿ èŠãšããã¢ããªã±ãŒã·ã§ã³åãã«ãªã³ãã¬ãã¹çã®æäŸãããŒãããŒã®ã¢ããªã±ãŒã·ã§ã³ãžã®çµã¿èŸŒã¿ãOEMæäŸãããã«ã¯ãå®åŒåãµããŒããæè²ãªã©ã®ãããã§ãã·ã§ãã«ãµãŒãã¹ã®æäŸãäºå®ããŠããã
ãæéããããŠãå€§èŠæš¡ãªèšç®ããããããããã¯å Žæãåããªããšããå Žåã«ã¯ãGPUãªãœãŒã¹ã最沢ãªã¯ã©ãŠããæŽ»çšããããŒã¿ãå€ã«åºããªãå Žåããè¶ äœé å»¶ç°å¢ã§èšç®ãããå Žåã«ã¯ããªã³ãã¬ãã¹çã§æäŸããã顧客ã®èŠæ±ã«é©ããæ§ã ãªãµãŒãã¹åœ¢æ ãçšæããŠããããšããã»ãããæ±èãæäŸããã®ã¯ãšã³ãžã³ã®éšåã§ãããæ¥çš®å¥ããŒãããŒãæ±çšããŒãããŒããããããœãªã¥ãŒã·ã§ã³åããŠã顧客ã«å±ããããšã«ãªãããŸãã¯ãæåäºäŸãç©ã¿éããŠããããšã倧åã§ããããªã©ãšããã










