ዝርዝር ሁኔታ:
ቪዲዮ: ቲክ ታክ ጣት በአርዱኖ ላይ ከአይአይ (ሚኒማክስ አልጎሪዝም) 3 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:33
በዚህ አስተማሪ ውስጥ አርዱዲኖን በመጠቀም ከአይአይ ጋር የቲክ ታክ ጣት ጨዋታ እንዴት እንደሚገነቡ አሳያችኋለሁ። ከ Arduino ጋር መጫወት ወይም አርዱዲኖ በእራሱ ላይ ሲጫወት ማየት ይችላሉ።
እኔ ለቲክ ታክ ጣት AI ን ለመገንባት ብቻ ሳይሆን ለሌሎች እንደ ሌሎች አራት ጨዋታዎች ረድፍ ፣ ቼኮች ወይም ቼዝ እንኳን ሊያገለግል የሚችል “minimax algorithm” የተባለ ስልተ -ቀመር እጠቀማለሁ። እንደ ቼዝ ያሉ ጨዋታዎች በጣም የተወሳሰቡ እና እጅግ በጣም የተጣራ የአልጎሪዝም ስሪቶችን ይፈልጋሉ። ለቲክ ታክ ጣት ጨዋታችን ፣ እጅግ በጣም አስደናቂ የሆነውን የአልጎሪዝም ቀላሉን ስሪት መጠቀም እንችላለን። በእውነቱ ፣ አይአይ በጣም ጥሩ ስለሆነ አርዱዲኖን ማሸነፍ አይቻልም!
ጨዋታው ለመገንባት ቀላል ነው። ጥቂት ክፍሎች እና የጻፍኩትን ንድፍ ብቻ ያስፈልግዎታል። እኔ እንዴት እንደሚሰራ ለመረዳት ከፈለጉ ስልተ ቀመሩን የበለጠ ዝርዝር ማብራሪያ አክዬ ነበር።
ደረጃ 1: ይገንቡ እና ይጫወቱ
የቲክ ታክ ጣት ጨዋታን ለመገንባት የሚከተሉትን አካላት ያስፈልግዎታል
- አንድ አርዱዲኖ ኡኖ
- 9 WS2812 RGB LEDs
- 9 የግፋ አዝራሮች
- አንዳንድ ሽቦ እና ዝላይ ገመዶች
በፍሪቲንግ ንድፍ ላይ እንደሚታየው ክፍሎቹን ያጣምሩ። ከዚያ ኮዱን ወደ አርዱinoኖ ይስቀሉ።
በነባሪ ፣ አርዱዲኖ የመጀመሪያውን ተራ ይወስዳል። ነገሮችን ትንሽ የበለጠ አስደሳች ለማድረግ ፣ የመጀመሪያው እርምጃ በዘፈቀደ የተመረጠ ነው። ከመጀመሪያው እንቅስቃሴ በኋላ አርዱinoኖ የሚቻለውን እንቅስቃሴ ለመወሰን አነስተኛውን የአልማዝ ስልተ ቀመር ይጠቀማል። አርዱዲኖን እንደገና በማስጀመር አዲስ ጨዋታ ይጀምራሉ።
ተከታታይ ሞኒተርን በመክፈት አርዱዲኖን “ያስቡ” ን መመልከት ይችላሉ። ለእያንዳንዱ እንቅስቃሴ ፣ ስልተ ቀመር ይህ እርምጃ ወደ አርዱዲኖ ወይም ወደ ዕጣ (የ 0 እሴት) ወደ ማሸነፍ (የ 10 እሴት) ወይም ኪሳራ (የ -10 እሴት) የሚያመራ መሆኑን የሚያመላክት ደረጃን ያሰላል።
እንዲሁም በስዕሉ መጀመሪያ ላይ “#ዲፊን ዲሞ_ሞዴ” የሚለውን መስመር ባለማሟላቱ አርዱዲኖን ከራሱ ጋር ሲጫወት መመልከት ይችላሉ። የተሻሻለውን ንድፍ ከሰቀሉ ፣ አርዱinoኖ የመጀመሪያውን እንቅስቃሴ በዘፈቀደ ያደርገዋል እና ከዚያ በእያንዳንዱ ተራ ለእያንዳንዱ ተጫዋች የተሻለውን እንቅስቃሴ ለመወሰን አነስተኛውን አልጎሪዝም ይጠቀማል።
በአርዱዲኖ ላይ ማሸነፍ እንደማይችሉ ልብ ይበሉ። ስህተት ከሰሩ እያንዳንዱ ጨዋታ ወይ በአቻ ውጤት ይጠናቀቃል ወይም ይሸነፋሉ። ይህ የሆነበት ምክንያት ስልተ ቀመር ሁል ጊዜ የተሻለውን እንቅስቃሴ ስለሚመርጥ ነው። እንደሚያውቁት ፣ ሁለቱም ተጫዋቾች ስህተት ካልሠሩ የቲክ ታክ ጣት ጨዋታ ሁል ጊዜ በአቻ ውጤት ይጠናቀቃል። በማሳያ ሞድ ውስጥ እያንዳንዱ ጨዋታ በአቻ ውጤት ያበቃል ምክንያቱም ሁላችንም እንደምናውቀው ኮምፒውተሮች በጭራሽ አይሳሳቱም ።-)
ደረጃ 2 - ሚኒማክስ አልጎሪዝም
አልጎሪዝም ሁለት ክፍሎችን ያቀፈ ነው -የግምገማ ተግባር እና የፍለጋ ስትራቴጂ። የግምገማው ተግባር የቦርድ ቦታዎችን የቁጥር እሴት የሚሰጥ ተግባር ነው። ቦታው የመጨረሻ ቦታ ከሆነ (ማለትም ፣ ሰማያዊው ተጫዋች ወይም ቀይ ተጫዋቹ ያሸነፉበት ወይም ሁለቱም ተጫዋቾች ያሸነፉበት ቦታ) ፣ የግምገማው ተግባር በጣም ቀላል ነው - አርዱኢኖ ሰማያዊ ይጫወታል እና የሰው ተጫዋች ቀይ ይጫወታል እንበል።. ቦታው ለሰማያዊ አሸናፊ ቦታ ከሆነ ተግባሩ ለዚያ ቦታ የ 10 እሴት ይመድባል ፤ ለቀይ አሸናፊ ቦታ ከሆነ ተግባሩ ለቦታው -10 እሴት ይመድባል ፣ እና ቦታው መሳል ከሆነ ተግባሩ የ 0 እሴት ይመድባል።
የአርዱዲኖ ተራ በሚሆንበት ጊዜ የግምገማውን ተግባር እሴት ከፍ የሚያደርግ እንቅስቃሴን መምረጥ ይፈልጋል ፣ ምክንያቱም እሴቱን ከፍ ማድረግ ማለት በእድል ላይ ማሸነፍን ይመርጣል (10 ከ 0 ይበልጣል) እና ከመሸነፍ ይልቅ ዕጣ ፈንታ () 0 ከ -10 ይበልጣል)። በተመሳሳዩ ክርክር ፣ ተቃዋሚው የግምገማ ተግባሩን ዋጋ ባነሰችበት መንገድ መጫወት ይፈልጋል።
ለመጨረሻው ቦታ አልጎሪዝም የግምገማ ተግባሩን ዋጋ በተደጋጋሚ የፍለጋ ስትራቴጂ ያሰላል። ከአሁኑ አቀማመጥ ጀምሮ ፣ ሰማያዊው ተጫዋች እና ቀይ አጫዋቹ ሊወስዷቸው የሚችሏቸውን እንቅስቃሴዎች ሁሉ በተለዋጭ ያስመስላል። ይህ በስዕላዊ መግለጫው ውስጥ እንደ ዛፍ ሆኖ ሊታይ ይችላል። የመጨረሻ ቦታ ላይ ሲደርስ የግምገማ ተግባሩን ዋጋ ከዝቅተኛ ተደጋጋሚነት ደረጃ ወደ ከፍተኛ የመልሶ ማግኛ ደረጃ ተሸክሞ ወደ ኋላ መመለስ ይጀምራል። የግምገማው ተግባር እሴቶችን ከዝቅተኛ ተደጋጋሚነት ደረጃ እስከ ቦታው ድረስ ከፍተኛውን (በተጓዳኙ የመደጋገሚያ ደረጃ ውስጥ ሰማያዊው ተጫዋች ተራ ከሆነ) ወይም ዝቅተኛው (በተዛማጅ ድግግሞሽ ደረጃ ቀይ ተጫዋች ከሆነ) ይመድባል። ከፍተኛ የመልሶ ማግኛ ደረጃ። በመጨረሻም ፣ ስልተ ቀመሮው ወደ ኋላ መመለሱን ሲጨርስ እና አሁን ባለው ቦታ ላይ ሲደርስ ፣ ከፍተኛውን የግምገማ ተግባር እሴት ያለው ያንን እንቅስቃሴ (ወይም ከእንቅስቃሴዎቹ አንዱን) ይወስዳል።
ይህ ትንሽ ረቂቅ ሊመስል ይችላል ፣ ግን በእውነቱ ያን ያህል ከባድ አይደለም። በስዕላዊ መግለጫው አናት ላይ የሚታየውን አቀማመጥ ግምት ውስጥ ያስገቡ። በመጀመሪያው የመራመጃ ደረጃ ፣ ሰማያዊ ሊወስዳቸው የሚችሉ ሦስት የተለያዩ እንቅስቃሴዎች አሉ። ሰማያዊ የግምገማ ተግባሩን ዋጋ ከፍ ለማድረግ ይሞክራል። ለእያንዳንዱ ሰማያዊ እንቅስቃሴዎች ሊወስድ ይችላል ፣ ሁለት ቀይ እንቅስቃሴዎች ሊወስዱ ይችላሉ። ቀይ የግምገማ ተግባሩን ዋጋ ለመቀነስ ይሞክራል። በላይኛው ቀኝ ጥግ ላይ ሰማያዊ የሚጫወትበትን እርምጃ ያስቡ። በመሃል ሳጥኑ ውስጥ ቀይ የሚጫወት ከሆነ ቀይ አሸን (ል (-10)። በሌላ በኩል ቀይ በመሃል በታችኛው ሳጥን ውስጥ ቢጫወት ፣ በሚቀጥለው እንቅስቃሴ (10) ሰማያዊ ያሸንፋል። ስለዚህ ፣ ሰማያዊው በላይኛው ቀኝ ጥግ ላይ የሚጫወት ከሆነ ፣ ይህ የግምገማ ተግባሩን ዋጋ ስለሚቀንስ በመሃል ሳጥኑ ውስጥ ይጫወታል። በማነጻጸር ፣ ሰማያዊ በመሃል በታችኛው ሳጥን ውስጥ የሚጫወት ከሆነ ፣ የግምገማ ተግባሩን ስለሚቀንስ ቀይ በማዕከላዊ ሳጥኑ ውስጥ እንደገና ይጫወታል። በሌላ በኩል ሰማያዊ በመሃል ሳጥኑ ውስጥ ቢጫወት ፣ ቀይ ማንቀሳቀሱ ምንም ለውጥ የለውም ፣ ሰማያዊ ሁል ጊዜ ያሸንፋል (10)። ሰማያዊው የግምገማውን ተግባር ከፍ ለማድረግ ስለሚፈልግ ፣ ያ ቦታ ከሌሎቹ ሁለት እንቅስቃሴዎች (-10) የላቀ የግምገማ ተግባር (10) እሴት ስለሚያስገኝ በማዕከላዊ ሳጥኑ ውስጥ ይጫወታል።
ደረጃ 3: መላ መፈለግ እና ተጨማሪ እርምጃዎች
ከአዝራሩ መብራቱ ጋር የሚዛመድ አንድ አዝራር እና የተለየ LED ከገፋፉ ምናልባት ሽቦዎቹ በ A0-A2 ወይም 4-6 ላይ ተደባልቀዋል ፣ ወይም ኤልዲዎቹን በተሳሳተ ቅደም ተከተል አገናኙት።
እንዲሁም አልጎሪዝም ሁል ጊዜ አርዱዲኖን በተቻለ ፍጥነት እንዲያሸንፍ የሚያስችለውን እንቅስቃሴ እንደማይመርጥ ልብ ይበሉ። እንደ እውነቱ ከሆነ ፣ አርዱዲኖ የአሸናፊነት እንቅስቃሴን ስለማይመርጥ ስልተ ቀመሩን ለማረም የተወሰነ ጊዜ አሳልፌያለሁ። ይልቁንም አንድ እርምጃን በኋላ እንደሚያሸንፍ የሚያረጋግጥ እንቅስቃሴን እንደመረጠ እስክገነዘብ ድረስ የተወሰነ ጊዜ ፈጅቶብኛል። ከፈለጉ ፣ ሁል ጊዜም ወደ አሸናፊነት የሚሸጋገር እንቅስቃሴን እንዲመርጥ ስልተ ቀመሩን ለማስተካከል መሞከር ይችላሉ።
የዚህ ፕሮጀክት ማራዘሚያ AI ለ 4x4 ወይም ለ 5x5 Tic Tac Toe ለመገንባት ስልተ ቀመሩን መጠቀም ነው። ሆኖም ፣ አልጎሪዝም መመርመር ያለበት የቦታዎች ብዛት በጣም በፍጥነት እንደሚያድግ ልብ ይበሉ። ቦታው ለተጠቀሰው ተጫዋች ጥሩ ወይም መጥፎ የመሆን እድልን መሠረት በማድረግ የመጨረሻ ላልሆኑ የሥራ መደቦች እሴቶችን በመገምገም የግምገማ ተግባሩን የበለጠ ብልህ ለማድረግ የሚረዱ መንገዶችን መፈለግ ያስፈልግዎታል። አንድ እንቅስቃሴ ከአማራጭ እንቅስቃሴዎች የበለጠ ለተጨማሪ አሰሳ ብቁ ካልሆነ ፍለጋውን ቀደም ብሎ በማቆም ፍለጋውን የበለጠ ብልህ ለማድረግ ሊሞክሩ ይችላሉ።
ውስን ማህደረ ትውስታ ስላለው አርዱዲኖ ለእንደዚህ ዓይነቶቹ ቅጥያዎች በጣም ጥሩው መድረክ ላይሆን ይችላል። መዘዋወር በፕሮግራሙ አፈፃፀም ወቅት ቁልል እንዲያድግ ያስችለዋል ፣ እና ቁልል በጣም ካደገ የፕሮግራሙን ማህደረ ትውስታ ሊያበላሽ ይችላል ፣ ይህም ወደ ብልሽቶች ወይም የተዛባ ባህሪ ያስከትላል። ለዚህ ፕሮጀክት አርዱዲኖን የመረጥኩት በዋናነት ሊሠራ የሚችል እና ለትምህርት ዓላማዎች ለማየት ስለፈለግኩ ነው ፣ ለዚህ ዓይነቱ ችግር ምርጥ ምርጫ ስለሆነ አይደለም።
የሚመከር:
ራስን ማመጣጠን ሮቦት - የፒአይዲ መቆጣጠሪያ አልጎሪዝም - 3 ደረጃዎች
ራስን ማመጣጠን ሮቦት - የፒአይዲ ቁጥጥር ስልተ ቀመር - ይህ ፕሮጀክት የተፀነሰው ስለ የቁጥጥር ስልተ ቀመሮች የበለጠ ለመማር እና ተግባራዊ የፒአይዲ ቀለበቶችን ውጤታማ በሆነ መንገድ ለመተግበር ፍላጎት ስለነበረኝ ነው። የብሉቱዝ ሞጁል ገና ስለማይጨመር ፕሮጀክቱ በእድገቱ ደረጃ ላይ ነው
VHDL ን በመጠቀም የኮርዲክ አልጎሪዝም 4 ደረጃዎች
VHDL ን በመጠቀም የኮርዲክ አልጎሪዝም - ## ይህ በሲን እና በኮሲን ማዕበል ለማመንጨት በ CHDIC ALGORITHM ለመተግበር በቪዲዮ ውስጥ በጣም ጠቅ የተደረገው ታዋቂ አገናኝ ነው ## በአሁኑ ጊዜ ብዙ የሃርድዌር ቀልጣፋ ስልተ ቀመሮች አሉ ፣ ግን እነዚህ በ የሶፍትዌር የበላይነት
የቦርድ ጨዋታ አርቲፊሻል ኢንተለጀንስ -ሚኒማክስ አልጎሪዝም 8 ደረጃዎች
የቦርድ ጨዋታ አርቲፊሻል ኢንተለጀንስ - ሚኒማክስ አልጎሪዝም - በቼዝ ወይም በቼኮች ውስጥ የሚጫወቷቸው ኮምፒተሮች እንዴት እንደሚሠሩ አስበው ያውቃሉ? ሚኒማክስ አልጎሪዝም በመጠቀም ቀላል ግን ውጤታማ የሆነ ሰው ሰራሽ የማሰብ ችሎታ (አይአይ) እንዴት እንደሚሠሩ ከዚህ ከዚህ የበለጠ አስተማሪ አይመልከቱ! በመጠቀም
Lightsaber ን በድምጽ ተፅእኖ ያድርጉ (በአርዱኖ 5 ደረጃዎች
Lightsaber ን በድምጽ ተፅእኖ ያድርጉ (በአርዲኖ - ነገሮችን ለመሥራት አርዱዲኖን እንዴት መጠቀም እንደሚቻል ስለማወቅ ሁል ጊዜ በድምፅ ተፅእኖ የመብራት መብራትን ለመሥራት እሱን መጠቀም እፈልጋለሁ ፣ እና አንዴ ካደረግሁ በኋላ ያን ያህል ከባድ አይደለም። ስለዚህ እንሂድ አንድ ለማድረግ አፈጠጠ
በአርዱኖ አይዲኢ ፈጣን የማስጀመሪያ መመሪያ በ NodeMCU ESP8266: 6 ደረጃዎች
የአርዱዲኖ አይዲ ፈጣን መመሪያ በ NodeMCU ESP8266: Arduino IDE ውቅር ለ NodeMCU ESP8266