1 KYOTO UNIVERSITY
KYOTO UNIVERSITY
DEPARTMENT OF INTELLIGENCE SCIENCE
AND TECHNOLOGY
ã¢ã«ãŽãªãºã ãšããŒã¿æ§é â ïœæŠèŠïœ
é¹¿å³¶ä¹ å£ïŒèšç®æ©ç§åŠã³ãŒã¹ïŒ
https://bit.ly/2mM5P9H
2 KYOTO UNIVERSITY
âªæ åœæå¡ïŒé¹¿å³¶ä¹ å£ïŒå·¥åŠéšæ å ±åŠç§èšç®æ©ç§åŠã³ãŒã¹ïŒ
âé£çµ¡å ïŒ [email protected]
âªãµããŒãããŒãžïŒhttps://bit.ly/2mM5P9H
âªè©äŸ¡æ¹æ³ïŒ2åã®ãã¹ãã®ç·åç¹
âäžéãã¹ãïŒ12/2(æ)
âææ«ãã¹ãïŒ1/27(æ)#æªç¢ºå®
âåºåžç¹ãªã
è¬çŸ©ã«ã€ããŠã®æ å ±:äžéãã¹ãæ¥çšã«æ³šæãã
3 KYOTO UNIVERSITY
âªåºæ¬ïŒ
æååå ãããŒã¿æ§é ãšã¢ã«ãŽãªãºã ãïŒå ±ç«åºçïŒ
âæ¬è¬çŸ©ã®å€ãã®å 容ã¯ãã®æ¬ã«äŸã
âãšãŠãèªã¿ããã
âªããé«åºŠãªå 容ïŒCormen, Leiserson, Rivest, & Stein ãIntroduction to Algorithmsã
â翻蚳ïŒãã¢ã«ãŽãªãºã ã€ã³ãããã¯ã·ã§ã³ãïŒè¿ä»£ç§åŠç€ŸïŒ
âè¬çŸ©å 容ã¯éšåçã«åç §
åèæž:æšæºçãªãã®ã§ããã°ãªãã§ããã
4 KYOTO UNIVERSITY
1. ç®æ³ãšã¯ã»ç®æ³ã®è¯ãã®æž¬ãæ¹ïŒã¢ã«ãŽãªãºã ãšããŒã¿æ§é ãèšç®ã®ã¢ãã«ãèšç®è€é床ãâŠ
2. åºæ¬ç®æ³ïŒæ¿å ¥ãåé€ãæŽåãæ€çŽ¢ãâŠ
3. åºæ¬ããŒã¿æ§é ïŒãªã¹ããã¹ã¿ãã¯ããã¥ãŒãããŒããâŠ
4. ç®æ³ã®åºæ¬èšèšæ³ïŒååž°ãåå²çµ±æ²»ãåçèšç»ãâŠ
5. æ¢çŽ¢ïŒäºåæ¢çŽ¢ãããã·ã¥ãâŠ
å 容ïŒååïŒ:ã¢ã«ãŽãªãºã ã®åºæ¬çãªæŠå¿µãè©äŸ¡æ³ãåºæ¬çãªéå ·
5 KYOTO UNIVERSITY
6. ã°ã©ãç®æ³ïŒæ·±ãã»å¹ åªå æ¢çŽ¢ãæçè·¯ãæ倧æµ
7. èšç®è€é床ïŒPãšNPãNPå®å šãNPå°é£
8. é£ããåé¡ã®è§£ãæ¹ïŒåæéå®æ³ã貪欲æ³
9. çºå±ç話é¡ïŒè¿äŒŒã¢ã«ãŽãªãºã ããªã³ã©ã€ã³ã¢ã«ãŽãªãºã
å 容ïŒåŸåïŒ:ã°ã©ãã»èšç®éã»é£ããåé¡ãžã®å¯ŸåŠæ³
â»å€æŽã»è¿œå ã®å¯èœæ§ãã
6 KYOTO UNIVERSITY
ã¢ã«ãŽãªãºã ãšããŒã¿æ§é ã¯
7 KYOTO UNIVERSITY
âªããã°ã©ã ã®è¯ãæªããšã¯ïŒ
âæ£ããåãïŒæ³å®ããããã«åã
âéãåãïŒããã°ã©ã ã¯éãã»ã©è¯ãïŒ
âçè³æºïŒã¡ã¢ãªãé»æ°ä»£
âäŸïŒãåºã®é¡§å®¢ç®¡ç
âªç¹å®ã®ããã°ã©ã èšèªãããŒããŠã§ã¢ãšã¯ãªãã¹ãç¬ç«ã«ïŒ
âããã°ã©ã ã®è¯ãæªãã枬ããã
âã²ããŠã¯è¯ãããã°ã©ã ãæžããã
åæ©:ãè¯ããããã°ã©ã ãæžããã
8 KYOTO UNIVERSITY
âªã¢ã«ãŽãªãºã ïŒalgorithmïŒãšã¯ïŒ
âããã°ã©ã èšèªïŒCãPythonãªã©ïŒãããŒããŠã§ã¢ïŒCPUãã¡ã¢ãªãªã©ïŒãšã¯å¥ã«ãã©ã®ãããªæç¶ããè¡šçŸããããšããããšãããåé¡ã®è§£ãæ¹ã®æé æžã
âãããããå³å¯ã«ãããšããäžããããåé¡ã解ãããã®æ©æ¢°çæäœãããªããæéã®æç¶ãã
â¢æ©æ¢°çæäœïŒååæŒç®ããžã£ã³ããªã©â¢ããªããæéã¹ãããã§çµããã¹ã
ââ¢æç¶ãïŒprocedureïŒïŒæéã¹ãããã§ã®çµäºãä¿èšŒãããªã
ã¢ã«ãŽãªãºã :äžããããåé¡ã解ãããã®æéã®æç¶ã
9 KYOTO UNIVERSITY
âªå€ãã®ããã°ã©ã ã¯ãããŒã¿ããæ±ã
âããŒã¿ã¯ç¹°ãè¿ã䜿çšãããã®
â䜿çšã®ä»æ¹ãäºã決ããããŠããããã§ã¯ãªã
âªã¢ã«ãŽãªãºã ãããŸãåãããã«ã¯ãããŒã¿ãã©ã®ããã«ãã£ãŠãããïŒïŒããŒã¿æ§é ïŒãéèŠ
âååããå ¥åé ã«æ ŒçŽïŒã¢ã€ãŠãšãªé ïŒ
âªããŒã¿æ§é ã¯ã¢ã«ãŽãªãºã ãšåãé¢ããªããã®
âãäºãã®è¯ãã«åœ±é¿ãäžãåã
ããŒã¿æ§é :ããŒã¿ã管çããã¢ã«ãŽãªãºã ãå¹çåãã
10 KYOTO UNIVERSITY
âªåé¡ïŒã¹ãä¹èšç®
âå ¥åïŒ 2ã€ã®æ£æŽæ° ð ãš ð
âåºåïŒðð
âä»®å®ïŒèš±ãããã®ã¯ååæŒç®ã®ã¿ãšãã
ïŒãããªãðä¹ããã®ã¯ãã¡ïŒ
âªååæŒç®ãäœåå¿ èŠãïŒ
ã¢ã«ãŽãªãºã ã®äŸ:ææ°æŒç®ã®ã¢ã«ãŽãªãºã
11 KYOTO UNIVERSITY
âªðð = ((⊠(((ð à ð) à ð) à â¯) à ð)ã§èšç®
âªð â 1åã®æãç®ã§ã§ãã
ææ°æŒç®ã®ã¢ã«ãŽãªãºã â :åçŽãªæãç®ã®ç¹°ãè¿ãã«ãã解æ³ã¯å¹çãæªã
12 KYOTO UNIVERSITY
âªð = log2ðåã®æãç®ã§ã§ãã
âä»®å®ïŒ ð = 2ð
âªãªãã ð â 2ðã®å Žåã3log2ðåã®æŒç®ã§å¯èœ
â ðã2é²è¡šçŸããïŒlog2ðåã®å²ãç®ïŒ
â¢äŸïŒ ð = 22 = 10110
â 1ãç«ã£ãŠããæ¡æ°ã«å¯Ÿã2ã®åªãæ±ããïŒlog2ðåã®æãç®ïŒ
âãã¹ãŠè¶³ãïŒlog2ðåã®è¶³ãç®ïŒ
ææ°æŒç®ã®ã¢ã«ãŽãªãºã â¡:ã¡ãã£ãšå·¥å€«ãããšãå段ã«é«éåã§ãã
13 KYOTO UNIVERSITY
âªð = 1024 = 210ã®ãšããæãç®ã®åæ°ã¯
ââ 1023åïŒå€§äœ ðåïŒ
ââ¡ 10åïŒå€§äœ log ðåïŒ
ã¢ã«ãŽãªãºã ã®éèŠæ§:ã¢ã«ãŽãªãºã ã®å·¥å€«ã§èšç®å¹çã«å€§ããªå·®ãçãã
14 KYOTO UNIVERSITY
âªåã®ã¢ã«ãŽãªãºã ã®äŸã§ã¯1åã®èšç®ã®ã¿ã察象ãšããŠãã
âªããŒã¿ã«å¯ŸããŠç¹°ãè¿ãèšç®ãè¡ãå Žåã«ã¯ãäºãããŒã¿ãåŠçããŠããŸãæ§é ïŒïŒããŒã¿æ§é ïŒãäœãããšã§ããã®åŸã®èšç®ãé«éã«è¡ããããã«ãªãïŒããšãããïŒ
âªäŸãã°ã ðåèšç®ãããšããŠïŒ
â 1ååã®èšç®æé à ðå
â¡ ããŒã¿æ§é ã®æ§ç¯ã«ãããèšç®æé +ããŒã¿æ§é ãå©çšãã1ååã®èšç®æé à ð
ã§â ïŒâ¡ ãšãªãå Žåã«ã¯ããŒã¿æ§é ãèããããšãæå¹
ããŒã¿æ§é ã®äŸ:ããŒã¿ã«å¯ŸããŠç¹°ãè¿ãæäœãè¡ãå Žåã«éèŠ
15 KYOTO UNIVERSITY
âªð人ã®é¡§å®¢æ å ± ðð , ðð ð=1,âŠ,ðãèŒã£ãåç°¿ãèãã
â ððïŒååã ððïŒæ å ±
âäŸïŒ (å ç°äžå°å€§, [email protected])
âªå®¢ãæ¥ããã³ã«ååãèããŠå ¥åãããšããã®äººã®æ å ±ãåŸãããã·ã¹ãã ãèãã
âð人åã®åãåããðð1 , ðð2 , ⊠, ðððãé ã«äžãããã
âããããã«å¯Ÿã㊠ððð ãè¿ã
å ·äœçãªåé¡äŸ:åºèã«ããã顧客æ å ±ç®¡çã·ã¹ãã
16 KYOTO UNIVERSITY
âªåç°¿ã®äžŠã³é ãç»é²é ïŒã§ãããïŒã®å Žåãèãã
âªã¢ã«ãŽãªãºã ãšããŠã¯ãåããé ã«æ¢ããŠãã
âªãã®å Žåãååãåããã§ãææªðåã®ãã§ãã¯ãå¿ èŠ
âåç°¿äžã®äœçœ®ïŒããŒãžïŒãæå®ããŠãã§ãã¯ããããšã¯åäœæéã§ã§ãããã®ãšãã
âªåèšçŽ ððåã®ãã§ãã¯ãïŒææªã±ãŒã¹ã§ïŒå¿ èŠãšãªã
åçŽãªã¢ã«ãŽãªãºã ïŒäžŠã³é ãã§ããããªå Žåã¯ææªã§çŽððåã®ãã§ãã¯ãå¿ èŠ
17 KYOTO UNIVERSITY
âªäºãåç°¿ãèŸæžé ã«äžŠã¹ãŠãããšãã
âªåãåããåãåç°¿ã®ãã»ãŒçãäžãã®äººã®ååãšæ¯èŒ
âåè ãèŸæžé ã§åãªãã°ãç®çã®äººã¯åç°¿ã®åååã«ããã¯ã
âä»åŸã¯åååã ãã調ã¹ãã°ãã
âããã©ã¯åååã®ãã»ãŒçãäžãã®äººãšæ¯èŒ
âã»ã»ã»
âæ倧ã§ããèšð log ðåã®ãã§ãã¯ã§å¯èœ
ã¡ãã£ãšé ã䜿ã£ãã¢ã«ãŽãªãºã ïŒèŸæžé ã«äžŠãã§ããå Žåã¯ð log ðåã®ãã§ãã¯ã§å¯èœ
18 KYOTO UNIVERSITY
âªèšð log ðåã®ãã§ãã¯ã§çºèŠå¯èœ
ã¡ãã£ãšé ã䜿ã£ãã¢ã«ãŽãªãºã ïŒèŸæžé ã«äžŠãã§ããå Žåã¯ð log ðåã®ãã§ãã¯ã§å¯èœ
19 KYOTO UNIVERSITY
âªãããŒã¿ãã©ã®ããã«ç®¡çããããïŒããŒã¿æ§é
âªè³¢ãã»ãã®ã¢ã«ãŽãªãºã ã®ã®æ©æµã«ããããã«ã¯ããŒã¿ãäºãæŽåïŒãœãŒãïŒãããŠããå¿ èŠããã
âäžè¬ã«æŽå㯠ð log ð åã«æ¯äŸããæŒç®åæ°ãå¿ èŠ
âªãã£ãŠâ ð ð ãšâ¡ ð log ð + ð log ðã®æ¯èŒ
â ð ã倧ãããªããšâ¡ã®æ¹ããåŸã«ãªã£ãŠãã
ããŒã¿æ§é ã®éèŠæ§:ããŒã¿ãæ£ããæã€ããšã§èšç®ã³ã¹ãã倧ããåæžããã
ð log ð
ðâlog ð
ð
20 KYOTO UNIVERSITY
âªã¢ã«ãŽãªãºã ã¯ãœããïŒããŒãã«ïŒããŸãïŒäŸåããªããèšç®æ©ã«ããåé¡è§£æ±ºã®æé æž
âªããŒã¿æ§é ã¯ãããŒã¿ã®ç®¡çãè¡ãã¢ã«ãŽãªãºã
âªããããè³¢ãèšèšãããšããããåŸããïŒè³¢ããããªããšããããæããïŒ
ãŸãšã:ã¢ã«ãŽãªãºã ãšããŒã¿æ§é ãåŠã¶æ矩