Preview

A.I. in Board Games

Satisfactory Essays
Open Document
Open Document
53631 Words
Grammar
Grammar
Plagiarism
Plagiarism
Writing
Writing
Score
Score
A.I. in Board Games
Bachelor Thesis
A.I. in board games

Aron Lindberg, s042422

Technical University of Denmark
Informatics and Mathematical Modelling Thesis tutored by Thomas Bolander August 19, 2007

i

Abstract
In this thesis, a board game named Kolibrat is implemented in the Objective-C programming language and Apple Computers Cocoa API. Besides from documenting this work, the thesis focus on the development of artificial players.

ii

Resum´ e
I denne afhandling bliver et brætspil Kolibrat implementeret i programmerings sproget Objective-C og Apple Computers Cocoa API. Udover at dokumenterer dette arbejde fokuserer denne afhandling p˚ arbejdet med a udviklingen af kunstigt intelligente spillere.

iii

Contents
1 Preface 1.1 Preconditions . . . . 1.2 Aims and limitations 1.2.1 Limitations . 1.3 Structure of thesis . 1 2 3 3 4 5 5 6 6 6 6 6 7 8 9 11 16 16 18 19 20 20 20 23 25 27

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

2 Game Development 2.1 Concept design . . . . . . . . . 2.1.1 Graphical user interface 2.1.2 Game Controller . . . . 2.1.3 Game Engine . . . . . . 2.1.4 Players . . . . . . . . . 2.2 User Interface . . . . . . . . . . 2.2.1 Flow control . . . . . . 2.2.2 GUI implementation . . 2.3 Game Implementation . . . . . 2.3.1 Class details . . . . . . 2.3.2 Kolibrat flow diagrams . 2.3.3 C data structures . . . . 2.4 Testing . . . . . . . . . . . . . 2.4.1 Test summery . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . .



Bibliography: [1] Suhas Sreedhar. Checkers, solved!, 2007. URL http://spectrum. ieee.org/print/5379. [2] Claude E. Shannon. Programming a computer for playing chess. Philosophical Magazine, 41(314), March 1950. URL http: //archive.computerhistory.org/projects/chess/related_ materials/text/2-0%20and%202-1.Programming_a_computer_ for_playing_chess.shannon/2-0%20and%202-1.Programming_a_ computer_for_playing_chess.shannon.062303002.pdf. [3] Stuart J. Russell and Peter Norvig. Artificial Intelligence: A Modern Approach. Pearson Education, 2. edition, 2003. ISBN 0137903952. [4] Armand E. Prieditis. Machine discovery of effective admissible heuristics. Machine Learning, 12(1-3), August 1993. URL http: //dli.iiit.ac.in/ijcai/IJCAI-91-VOL2/PDF/017.pdf. 166

You May Also Find These Documents Helpful

  • Better Essays

    Unit 22 Asseement

    • 1496 Words
    • 6 Pages

    |Unit Title: |Unit Number: | |Developing computer games |22 | |Level of Award: 3 |Centre Number: 16405 | |Candidate Name: |Candidate Number: | |Learning Hours: 60 |Duration of Academic Year: 1 Term | |Unit Deadline: | |Assignment Brief Author: Mr Badhasha | |Tutor/Assessor | |Signed: |Date: | |Final Grade: |Date: | |Assignment Internal Verifier: | |Signed: |Date: | |Tutor/Assessor Comments: | |…

    • 1496 Words
    • 6 Pages
    Better Essays
  • Powerful Essays

    Chapter 1 Chapter 2 Chapter 3 Chapter 4 Chapter 5 Chapter 6 Chapter 7 Chapter 8 Chapter 9 Chapter 10 Chapter 11 Chapter 12 Chapter 13 Chapter 14 Chapter 15 Chapter 16 Chapter 17 Chapter 18 Chapter 19 Chapter 20 Chapter 21 Chapter 22 Chapter 23 Chapter 24 Chapter 25 Chapter 26 Chapter 27 An Introduction to Hardware, Software, and the Internet An Introduction to Software Development Objects and Classes Algorithms Java Syntax and Style Data Types, Variables, and Arithmetic Boolean Expressions and if-else Statements Iterative Statements: while, for, do–while Implementing Classes and Using Objects Strings Class Hierarchies and Interfaces Arrays…

    • 3908 Words
    • 16 Pages
    Powerful Essays
  • Satisfactory Essays

    Dbq on Slavery

    • 758 Words
    • 4 Pages

    DIRECTIONS: Compose a thesis controlled essay answering the following question based on YOUR analysis of the documents provided below. Take into account both the sources of the documents and the point of view of the authors. DO NOT SIMPLY WRITE A SUMMARY OF EACH INDIVIDUAL DOCUMENT.…

    • 758 Words
    • 4 Pages
    Satisfactory Essays
  • Good Essays

    In this part of the paper, the thesis is to be stated clearly and specifically. It should appear no later than the end of the introduction paragraph.…

    • 472 Words
    • 2 Pages
    Good Essays
  • Good Essays

    AC502 GradingRubric

    • 819 Words
    • 10 Pages

    Project is free of serious errors; grammar, punctuation, and spelling help to clarify the meaning by following accepted conventions. Units 1‐6 [AC502: Regulation] 80-89% Response answers the assignment question (s) with only minor digressions; sufficiently uses the text and other literature. Provides a good thesis statement, intro, and conclusion that require some…

    • 819 Words
    • 10 Pages
    Good Essays
  • Best Essays

    Adams, A. R. (2003). Andrew Rollings and Ernest Adams on Game Design (NRG). New Riders.…

    • 1199 Words
    • 5 Pages
    Best Essays
  • Good Essays

    It210 Syllabus

    • 2333 Words
    • 10 Pages

    Course Description This course provides students with a basic understanding of programming practices. Concepts covered include flowcharting, pseudocode methodologies, and an understanding of programming practices. Students will learn how these concepts, when properly applied, improve program design. Policies Faculty and students/learners will be held responsible for understanding and adhering to all policies contained within the following two documents: • • University policies: You must be logged into the student website to view this document. Instructor policies: This document is posted in the Course Materials forum.…

    • 2333 Words
    • 10 Pages
    Good Essays
  • Powerful Essays

    The final draft of this paper is worth 20% of your total course grade. Please remember that no secondary (library or internet) research is needed to write this paper, that plagiarism will result in failure, and that in order for a paper to be considered it must be at least five paragraphs and 500 words, contain fewer than three deviations from Edited Written Standard English, and must respond to the specific assignment.…

    • 1622 Words
    • 7 Pages
    Powerful Essays
  • Satisfactory Essays

    ■ Directions: The following question is based on the accompanying documents in Part A. As you analyze the documents, take into account both the source of each document and the author’s point of view. Be sure to do each of the following steps: 1 . Carefully read the document-based question. Consider what you already know about this topic. How would you answer the question if you had no documents to examine? 2 . Read each document carefully, underlining key phrases and words that address the document-based question. You may also wish to use the margin to make brief notes. Answer the questions that follow each document before moving on to the next document. 3 . Based on your own knowledge and on the information found in the documents, formulate a thesis that directly answers the document-based question. 4 . Organize supportive and relevant information into a brief outline. 5 . Write a well-organized essay proving your thesis. You should present your essay logically. Include information both from the documents and from your own knowledge beyond the documents.…

    • 1325 Words
    • 6 Pages
    Satisfactory Essays
  • Good Essays

    John Searle is an American philosopher, known for creating the Chinese Room thought experiment to challenge the notion of strong AI. Searle’s work, Minds, Brains and Programs, introduces the Chinese Room and provides answers to many of the replies that came from presenting the thought experiment to the public. According to Searle, AI is a rigorous tool used for solving problems that will be more precise than any human can be. Strong AI, however is not just a tool. Rather “the appropriately programmed computer really is a mind, in the sense that computers given the right programs can be literally said to understand and have other cognitive states,” (Jacobsen, 147). Searle’s Chinese Room is meant to refute the claim that the programs, which a…

    • 1625 Words
    • 7 Pages
    Good Essays
  • Satisfactory Essays

    General Essay Outline

    • 144 Words
    • 2 Pages

    I. INTRODUCTION (Include a lead statement, background information to topic, arguable and provable thesis statement and main points used to prove thesis statement.)…

    • 144 Words
    • 2 Pages
    Satisfactory Essays
  • Satisfactory Essays

    Grading sheet

    • 255 Words
    • 2 Pages

    Grading Sheet—Single Element Paper Name Score __xx__ Introduction (8 points) _2_Identification of author and title (2) Ok _2_Explanation of context (including summary) (2) Ok _2_Effectiveness of the introduction (2) Ok _2_Adequacy of thesis (2)…

    • 255 Words
    • 2 Pages
    Satisfactory Essays
  • Good Essays

    With the development of technology a very important technological advancement for entertainment that was developed and improved over time were video games. Video games have been a growing area and a highly developing area. With new games and consoles launched every year, video games have interested people around the globe and people of different ages. In today’s time, video games have become a way of teaching children, a way of learning through adventures games. Other genres include, action games or also known as violent games, drawing games, role-playing, simulation, strategy, racing (vehicle-stimulation) and also health games.…

    • 590 Words
    • 3 Pages
    Good Essays
  • Good Essays

    The field of video games is one of the most exciting because it is constantly developing and advancing so quickly. Unlike a lot of areas of ICT which have reached a level of stability, all parts of games, gaming and games development are still growing and will continue to grow. This means there is the potential for individuals to have completely new ideas and be the first to create something in the field.…

    • 4399 Words
    • 18 Pages
    Good Essays
  • Powerful Essays

    The following information will introduce general knowledge in basic programming concepts. It shall discuss basic types of computer programming languages as-well-as program development. There are three basic types of computer programming languages that will be discussed in a simple and easy to understand manner. We shall also describe the program development cycle and discuss why it is important to use a structured and organized process to create a computer programming language.…

    • 1318 Words
    • 6 Pages
    Powerful Essays