You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
AI끼리 게임을 붙여서 어떤 전략이 좋은 전략인지 알아낼 생각인데요. (GUI는 한국 가서 하고 그 전에 데이터 분석이나... ㅎㅎ) AI를 모듈화(?)하는 게 맞는 건지 잘 모르겠어서 여쭤봅니다.
일단 지금 계획은 이래요. 어떤 상황에서 어떤 행동을 할 건지를 함수들로 만들어 놓을 생각이예요. 예를 들어서 '조커의 값을 몇으로 할지'라는 상황이 있을 때, 1) 그 덱의 가장 큰 수와 같게와 2) 닥치고 13이라는 두 가지 행동이 있으면 (다른 건 다 똑같이 한 상태에서) AI1에는 1을 넣고 AI2에는 2를 넣어서 수천 번 시행을 반복하고, 그 게임들의 결과를 txt나 csv로 기록한 다음, 그걸 분석하는 별도의 파일을 만들어서 어떤 전략이 좋은 전략인지 알아내는 거예요.
모듈화라는 표현이 맞는지는 모르겠지만, 어쨌든 제가 의도한 건 이런 식으로 여러 상황으로 쪼개서 각 상황별로 여러 전략을 만들어 놓고, 어떤 AI에는 이걸 끼워넣고 다른 AI에는 저걸 끼워넣는다는 뜻이에요. 뭐 아직 딥러닝 같은 어려운 방법으로 AI를 만들 수준도 아니고, 그런 걸 하려고 해도 어차피 데이터가 많아야 하니, 간단한 수준의 AI만 만들려고 해요.
AI를 넣으려다 보니까 게속 사람인지 AI인지에 따라 if else가 들어가서 코드가 지저분해지던데, 이건 제가 AI 여부를 field로 넣어서 그런 거죠? Player를 상속하는 HumanPlayer와 ComputerPlayer로 바꾸면 코드가 깔끔해지겠죠?
커밋된 거 기준으로는 아직 엉망이지만 로컬의 코드는 비교적 깔끔해졌어요. 이번 주 평일에는 폰을 못 써서 시간이 없어서 커밋은 못했지만...
The text was updated successfully, but these errors were encountered:
AI-playable 하게 프로그램을 구성했다면 다음 단계에 수동 알고리듬을 적용하든 딥러닝을 돌리든 차근차근 진행이 가능하겠죠. 이 모든 것의 근간은 게임내 특정 시점(프레임, 시간, 턴수 등)의 모든 상태를 기술하고 그 다음 입력을 코드로 처리할 수 있는가에 달려있죠.
@gongdo
오랜만에 다시 질문 드립니다.
일단 지금 계획은 이래요. 어떤 상황에서 어떤 행동을 할 건지를 함수들로 만들어 놓을 생각이예요. 예를 들어서 '조커의 값을 몇으로 할지'라는 상황이 있을 때, 1) 그 덱의 가장 큰 수와 같게와 2) 닥치고 13이라는 두 가지 행동이 있으면 (다른 건 다 똑같이 한 상태에서)
AI1
에는 1을 넣고AI2
에는 2를 넣어서 수천 번 시행을 반복하고, 그 게임들의 결과를 txt나 csv로 기록한 다음, 그걸 분석하는 별도의 파일을 만들어서 어떤 전략이 좋은 전략인지 알아내는 거예요.모듈화라는 표현이 맞는지는 모르겠지만, 어쨌든 제가 의도한 건 이런 식으로 여러 상황으로 쪼개서 각 상황별로 여러 전략을 만들어 놓고, 어떤 AI에는 이걸 끼워넣고 다른 AI에는 저걸 끼워넣는다는 뜻이에요. 뭐 아직 딥러닝 같은 어려운 방법으로 AI를 만들 수준도 아니고, 그런 걸 하려고 해도 어차피 데이터가 많아야 하니, 간단한 수준의 AI만 만들려고 해요.
AI를 넣으려다 보니까 게속 사람인지 AI인지에 따라 if else가 들어가서 코드가 지저분해지던데, 이건 제가 AI 여부를 field로 넣어서 그런 거죠? Player를 상속하는 HumanPlayer와 ComputerPlayer로 바꾸면 코드가 깔끔해지겠죠?
커밋된 거 기준으로는 아직 엉망이지만 로컬의 코드는 비교적 깔끔해졌어요. 이번 주 평일에는 폰을 못 써서 시간이 없어서 커밋은 못했지만...
The text was updated successfully, but these errors were encountered: