Häromdagen fick jag en ide om att jag skulle göra mitt egna schackprogram, troligtvis i java eftersom jag kan det bäst, och det är enkelt att göra ett gui samt att det är portabelt

Frågan är hur man gör en smart AI som motståndare man kan möta. Första tanken som slog mig var att den jämförde alla möjliga tänkbara drag som denne kan göra, och för varje drag jämför den vad motståndaren kan göra för drag, och för att sedan ytterligare göra en jämförelse vilket drag som är bäst i det skedet.
Det är inte så svårt att räkna ut att det blir en ENORM trädstruktur av tänkbara drag ganska snabbt, och troligtvis kommer CPUn inte få en lugn stund att beräkna alla drag och försöka dra en slutsats av det bästa draget.
Man kanske skulle låta datorn räkna max 10 drag framåt och försöka hitta drag där datorn har så få svagheter som möjligt (minst lika många pjäser, inga ensamna bönder, en skyddad kung, inga instängda pjäser osv)
Någon som har nåt tips?
