9 research outputs found

    A Fast Data Structure for Anagrams

    Get PDF
    In this paper, we are presenting a data structure, which stores the given dictionary data in a hash table called PRIME , by using fundamental theorem on Arithmetic to generate a key for each dictionary word, and stores the word in the hash table based on the key. As compared to tree-based techniques PRIME table generates anagram for the given random word in O(1) time, time to construct a PRIME table depends on the number of words in the dictionary. If dictionary has ‘n’ words then the time to develop the PRIME table is O(n). Categories and Subject descriptors: Problem solving, search and control methods

    CHEAT ENGINE SCRABLE GAME DENGAN ALGORITMA GADDAG

    Get PDF
    Scrabble is a word game that tests the player's vocabulary. The difficulty of this game depends on the player's vocabulary knowledge. The more vocabularies known by the players, the easier it is to play. This project aims to help players who only know a few vocabularies by building a cheat engine application which implements GADDAG Algorithm. All vocabularies stored in trie data structure as a dictionary. This dictionary will be processed using GADDAG Algorithm to find all vocabularies that can be formed. This application will help player to find the vocabulary with the highest value

    Heuri: a Scrabble© playing engine using a probability-based heuristic

    Get PDF
    The game of Scrabble has been successfully tackled by two engines: Quackle and Maven. They attain the state-of-the-art in Computer Scrabble. These engines use simulation techniques and precalculated values to achieve superhuman play. This paper presents a Scrabble-playing engine, Heuri, which achieves world championship standards when playing in Spanish, and a very high level when playing in English and French, without using brute-force approaches.One advantage of Heuri is that its calculations, as opposed to many in Quackle, are not precomputed and instead performed for every turn. Spanish match results of different versions of Heuri against humans and two versions of Quackle are presented in this paper. Results against Quackle, in English and French, are also given. The main goal of this paper is to enrich Computer Scrabble with the description of a Scrabble playing program, Heuri, which is differently designed from earlier ones such as Maven and Quackle. An additional goal is to give Scrabble players an excellent strategy for obtaining championship level in Spanish.Peer ReviewedPostprint (author's final draft

    A Scrabble Artificial Intelligence Game

    Get PDF
    Computer AI players have already surpassed human opponents in competitive Scrabble, however, defeating a Computer AI opponent is complex and demands efficient heuristics. The primary objective of this project is to build two intelligent AI players from scr atch for the Scrabble cross - board puzzle game having different move generation heuristics and endgame strategies to evaluate their performance based on various benchmarks like winning criteria, quality of moves, and time consumption. The first AI selected is the most popular Scrabble AI, Maven. It generates a three - ply look - ahead simulation to evaluate the most promising candidate move and uses four different heuristics for the fast move-generation. The second AI, Quackle, is the strongest alternative Scrabble AI to Maven. It generates its best candidate move by using a three-ply look-ahead simulation and win probability estimation. In this project, we primarily focus on the end - game heuristics because end-game sessions are complex, real-world situations where the move options are limited and require expert techniques and model strategies to maximize the reward. Moreover, the basic game heuristics used in the mid-game are not sufficient for an end-game. For this project, we created four variants of Maven AI. After conducting experiments, we observed that Maven Q - Sticking slow - end game AI performs better than other AI variants like Maven Q - Sticking AI, Maven slow - end game AI, No Q - Sticking AI and Quackle AI

    Scrabble

    Get PDF
    Tématem předkládané práce je studie deskové hry Scrabble a její převedení do elektronické podoby. Cílem práce je představení možných a používaných přístupů k implementaci systémů realizujících Scrabble a popsání a zhodnocení datových struktur a algoritmů v těchto systémech využívaných. Součástí práce je implementace zvolených řešení. Po stručném seznámení se s pravidly Scrabble a základní analýze problému jsou v jednotlivých kapitolách teoretické části představeny datové struktury používané k uložení slovníku, algoritmy pro vyhledávání tahů a možné přístupy k herním strategiím. Praktická část práce pojednává o zvolených přístupech a zdůvodněních jejich volby. V závěru práce jsou shrnuty možné přínosy vzniklého systému a jeho další případná rozšíření.The subject matter of the submitted thesis is a study of the board game Scrabble and its transfer to electronic form. The object of this thesis is to present possible and used approaches in implementation of Scrabble systems and to present and evaluate data structures and algorithms used in those systems. The implementation of the chosen approaches is a part of this thesis. After the brief introduction into the rules of Scrabble and initiatory problem's analyse there are presented data structures used for dictionary storage, move generating algorithms and possible approaches in game strategies. The practical part of this thesis deals with chosen approaches and reasons why they were chosen. At the end of this thesis there is a summary of possible contributions of developed system and its possible following expansions.Katedra aplikované matematikyDepartment of Applied MathematicsFaculty of Mathematics and PhysicsMatematicko-fyzikální fakult

    Disseny i implementació d'un sistema de gestió de partides i tornejos de mots encreuats en la modalitat duplicada

    Get PDF
    En els darrers anys s’ha popularitzat dins del món competitiu dels mots encreuats (Scrabble®) en castellà la modalitat de joc anomenada Duplicada, en la que diversos jugadors competeixen en proposar la jugada més valuosa donats una configuració de taulell, i set fitxes. La gestió dels resultats de cada ronda, que actualment es realitza de forma manual per part de l’àrbitre, és una tasca lenta, tediosa, i subjecta a errors, especialment com més elevat és el nombre de jugadors. En el present projecte es descriuen els elements que formen part del joc de mots encreuats i es compara el seu paper en les partides Duplicades (utilització, usuari, ...) respecte de la modalitat clàssica de joc. Posteriorment s’analitzen les tasques que han de ser realitzades per l’àrbitre en el transcurs d’una partida, i les eines a disposició per a realitzar-les. Es farà particular atenció en aquells punts on és més fàcil poder cometre errors. Es realitza un estudi de productes existents que facilitin o integrin les tasques a realitzar per l’àrbitre, resultant en la inexistència d’una aplicació d’aquestes característiques a nivell mundial, excepte en el món francòfon, de difícil adaptació als idiomes castellà i català, i en general, a qualsevol amb una distribució de fitxes diferent a la del joc original en anglès. Es presenta una aplicació informàtica, inicialment adaptada al joc en llengua castellana, que pràcticament automatitza totes les tasques a realitzar per l’àrbitre en una única aplicació. D’aquesta manera s’obtenen uns considerables guanys en temps i fiabilitat a l’hora d’arbitrar una partida de mots encreuats en modalitat Duplicada. Finalment es realitzarà un estudi per detectar els clients potencials que podrien beneficiarse d’una aplicació d’aquestes característiques

    Scrabble

    Get PDF
    Tato diplomová práce se zabývá stolní společenskou hrou SCRABBLE a její realizací v podobě počítačové hry. Postupně rozebírá všechny důležité aspekty, které mají vliv na výkonnost dané implementace. Především potom zvolení vhodných datových struktur pro uchování použité slovní zásoby, ovlivňujících efektivitu generování tahů a výběr vhodných algoritmů s ohledem na maximální rychlost. Zvláštní důraz je přitom kladen na inteligenci umělého protihráče a jeho schopnost konkurovat nejenom amatérům, ale i profesionálním hráčům SCRABBLU.This thesis describes the social table game Scrabble, and its realization in the form of computer games. Gradually examines all important aspects that affect the performance of the implementation. Especially after the election of the appropriate data structures retained for the vocabulary, affecting the efficiency of generating moves, and the selection of appropriate algorithms with regard to the maximum speed. There is particular emphasis on artificial intelligence opponent and its ability to compete not only amateurs, but professional SCRABBLE players.

    A novel computer Scrabble engine based on probability that performs at championship leve

    Get PDF
    The thesis starts by giving an introduction to the game of Scrabble, then mentions state-of-the-art computer Scrabble programs and presents some characteristics of our developed Scrabble engine Heuri. Some brief notions of Game Theory are given, along with history of some games in Artificial Intelligence; the fundamental algorithms for game playing, as well as state-of-the-art engines and the algorithms used by them, are presented. Basic elements of Scrabble, such as the Scrabble rules and the letter distribution, are given. Some history and state-of-the-art of Computer Scrabble are commented. For instance, the generation methods of valid moves based on the data structure DAWG (Directed Acyclic Word Graph) and also the variant GADDAG are recalled. These methods are used by the state-of-the-art Scrabble engines Quackle and Maven. Then, the contributions of this thesis are presented. A Spanish lexicon for playing Scrabble has been built that is used by Heuri engines. From this construction, a detailed study and classification of Spanish irregular verbs has been provided. A novel Scrabble move generator based on anagrams has been designed and implemented, which has been shown to be faster than the GADDAG-based generator used in Quackle engine. This method is similar to the way Scrabble players look for a move, searching for anagrams and a spot to play on the board. Next, we address the evaluation of moves when playing Scrabble; the quality of your game depends on deciding what move should be played given a certain board and a rack with tiles. This decision was made initially by Heuri trying several heuristics which ended up with the construction of several engines. We give the explanation of the heuristics used in these engines, all of them based on probabilities. All these initial heuristic evaluation functions (up to six) do not use forward looking, they are static evaluators. They have shown, after testing, an increasing playing performance, which allow Heuri to beat (top-level) expert human players in Spanish, without the need of using sampling and simulation techniques. These heuristics mainly consider the possibility of achieving a bingo on the actual board, whereas Quackle used pre-calculated values (superleaves) regardless of the latter. Then, in order to improve the quality of play of Heuri even more, some additional engines are presented in which look ahead is employed. The HeuriSamp engine, which evaluates a 2-ply search, permits to obtain a defense value. The HeuriSim engine uses a 3-ply adversarial search tree; it contemplates the best first moves (according to Heuri sixth engine heuristic) from Player 1, then some replies to these moves (Player 2 moves) and then some replies to these replies (Player 1 moves). Finally, to improve these engines, opponent modeling is used; this technique makes predictions on some of the opponents' tiles based on the last play made by the opponent. We present results obtained by playing thousands of Heuri vs Heuri games, collecting important information: general statistics of Scrabble game, like a 16 point handicap of the second player, and word statistics in Spanish, like a list of the most frequently played bingos (words that use all 7 tiles of a player's rack). In addition, we present results of matches played by Heuri against top-level humans in Spanish and results obtained by massive playing of different Heuri engines against the Quackle engine in Spanish, French and English. All these match results demonstrate the championship level performance of the Heuri engines in the three languages, especially of the last developed engine that includes simulation and opponent modeling techniques. From here, conclusions of the thesis are drawn and work for the future is envisaged.La tesi comença introduint el joc del Scrabble, esmentant els programes d’ordinador de l’estat de l’art que juguen Scrabble, i presentant algunes característiques del motor de joc de Scrabble que s’ha desenvolupat anomenat Heuri. Es donen breus nocions de la Teoria de Jocs, junt amb la història d’alguns jocs en Intel·ligència Artificial; es presenten els algorismes fonamentals per jugar, així com els motors de joc de l’estat de l’art en diferents jocs i els algorismes que usen. Es comenta també la història i estat de l’art del Computer Scrabble. Es recorden els mètodes de generació de moviments vàlids basats en l’estructura de dades DAWG (Directed Acyclic Word Graph) i en la variant GADDAG, que són usats pels motors de joc de Scrabble Quackle i Maven. A continuació es presenten les contribucions de la tesi. S’ha construït un diccionari per jugar Scrabble en espanyol, el qual és usat per les diferentes versions del motor de joc Heuri. S’ha fet un estudi detallat i una classificació dels verbs irregulars en espanyol. S’ha dissenyat i implementat un nou generador de moviments de Scrabble basat en anagrames, que ha demostrat ser més ràpid que el generador basat en GADDAG usat al motor Quackle. Aquest mètode és similar a la manera en la que els jugadors de Scrabble cerquen un moviment, buscant anagrames i un lloc del tauler on col·locar-los. Seguidament, es tracta l’evacuació dels moviments quan es juga Scrabble; la qualitat del joc depèn de decidir quin moviment cal jugar donat un cert tauler i un faristol amb fitxes. En Heuri, inicialment, aquesta decisió es va prendre provant diferents heurístiques que van dur a la construcció de diversos motors. Donem l’explicació de les heurístiques usades en aquests motors, totes elles basades en probabilitats. Totes aquestes funcions d’avaluació heurística inicials (fins a sis) no miren cap endavant, fan avaluacions estàtiques. Han mostrat, després de ser provades, un rendiment creixent de nivell de joc, el que ha permès Heuri derrotar a jugadors humans experts de màxim nivell en espanyol, sense necessitat d’usar tècniques de mostreig i de simulació. Aquestes heurístiques consideren principalment la possibilitat d’aconseguir un bingo en el tauler actual, mentre que Quackle usa uns valors pre-calculats (superleaves) que no tenen en compte l’anterior. Amb l’objectiu de millorar la qualitat de joc de Heuri encara més, es presenten uns motors de joc addicionals que sí miren cap endavant. El motor HeuriSamp, que realitza una cerca 2-ply, permet obtenir un valor de defensa. El motor HeuriSim usa un arbre de cerca 3-ply; contempla els millors primers moviments (d’acord al sisè motor heurístic d’Heuri) del Jugador 1, després algunes respostes a aquests moviments (moviments del Jugador 2) i llavors algunes rèpliques a aquestes respostes (moviments del Jugador 1). Finalment, per a millorar aquests motors, es proposa usar modelatge d’oponents; aquesta tècnica realitza prediccions d’algunes de les fitxes de l’oponent basant-se en l’últim moviment jugat per aquest. Es presenten resultats obtinguts de jugar milers de partides d’Heuri contra Heuri, que recullen important informació: estadístiques generals del joc del Scrabble, com un handicap de 16 punts del segon jugador, i estadístiques de paraules en espanyol, com una llista dels bingos (paraules que usen les 7 fitxes del faristol d’un jugador) que es juguen més freqüentment. A més, es presenten resultats de partides jugades per Heuri contra jugadors humans de màxim nivell en espanyol i resultats obtinguts d'un gran nombre d’enfrontaments entre els diferents motors de joc d’Heuri contra el motor Quackle en espanyol, francès i anglès. Tots aquests resultats de partides jugades demostren el rendiment de nivell de campió dels motors d’Heuri en les tres llengües, especialment el de l’últim motor desenvolupat que inclou tècniques de de simulació i modelatge d'oponents. A partir d'aquí s'extreuen les conclusions de la tesi i es preveu treballar de cara al futur.Postprint (published version
    corecore