Quantum Entangled Chess

Size: px
Start display at page:

Download "Quantum Entangled Chess"

Transcription

1 Carleton University Honours Project Quantum Entangled Chess Author: Alex Honeywell Supervisor: Dr. Tony White School of Computer Science April 12, 2011

2 Abstract In a quantum entanglement system containing two or more objects, one can- not describe the state of any single object without describing the entire system. The basics of these properties can be applied to games to provide a more unique experience. In particular, this project aims to apply quantum entanglement properties to the classical game of Chess in a mobile programming environment. The players will not be able to see their pieces, only the effect they have on the board. By effect, each piece will provide sight on only the squares that it would be able to move to. Sight from other pieces (including opponent pieces) will constructively interfere with each piece.

3 Acknowledgements Thanks to the authors of GNU Chess for creating the base chess engine used in this project, and to Dr. Tony White for supervising the project. i

4 Contents Acknowledgements List of Figures i iii 1 Introduction 1 2 Background Quantum Entanglement Developing for ios Objective-C Objectives 5 4 Application Design Putting the QE in QEC Code Structure Main View Flipside View The Chess Engine Results Gameplay Conclusions Contributions to Computer Science Future Work Bibliography 14 Appendix: Source Code A1 ii

5 List of Figures 2.1 Method Calling vs Messaging keyword The Board - Game Over AI Settings View QEC Class Diagram The Board - Starting View The Board - After a Few Moves iii

6 Chapter 1 Introduction When it comes to video games, the basic mechanics of the game can have a huge effect on its playability. Some simple games such as Klondike (aka Solitaire) pose as little more than timepassers. More complicated games such as Blizzard s World of Warcraft can easily take over a persons life. Those two examples outline common approaches to game mechanics, the former using simple card game strategies while the latter includes large computations to calculate the result of a single player performing a single action. As a result of its complexity, quantum mechanics are not usually seen in games outside of explaining the details of a system or plot device that exists only within the game setting. The goal of Quantum Entangled Chess (QEC) is to take a specific aspect of quantum mechanics, the entanglement property, and attempt to apply it to the classic game of Chess. It also looks to explore creating games on a mobile platform, specifically the Apple iphone and ios [1]. The game itself is played like real Chess with all the same rules, however there is one major difference: the player does not choose which piece to move, instead he chooses where a piece should move to. This provides the base upon which the quantum entanglement aspect of the game is built. In order to run this project, you must have access to Mac OS X with at least the latest version of Xcode 3 (Xcode 4 is preferred) and the ios 4.1 SDK. An iphone simulator is provided with Xcode. 1

7 Chapter 2 Background 2.1 Quantum Entanglement Quantum mechanics covers a large amount of subjects including particle states, wave functions, duality, and more. QEC looks only to take a relatively small sample of subject matter, the entanglement property, and to try and incorporate it into an old game in a new and novel way. In brief, the property of quantum entanglement is that of the state of a system containing two or more objects. If these objects are entangled, one cannot make any observations that describe one object without also describing the others. Instead of describing a system in the classical way of stating the properties of each object individually, quantum systems are better understood as a series of actions and their results. [2] 2.2 Developing for ios Announced January 2007 the Apple iphone is one of the most popular smart-phones in western society and helped revolutionize what people have come to expect from their mobile phone. ios (previously iphone OS) is the platform that runs on the iphone, ipod Touch, ipad, and the Apple TV. It shares its roots with Mac OS X and uses a multi-touch user interface provided by the Cocoa Touch framework. 2

8 The OS itself consists of four entities: Cocoa Touch: developed using Objective-C; supports the use of internal accelerometers (commonly used to orient the interface to always appear right-side-up by switching between landscape and portrait modes); gestures such as a swipe across the screen, tapping a specific point, pinching and reverse pinching Core Animation: OpenGL ES allows the use of smooth transitioning effects; professional-quality interface elements using the Quartz 2D API; resolution independence for switching between the iphone 4 s high resolution Retina display and the original smaller resolution Core Audio: access to a full-screen media player; live audio and video streaming over HTTP that optimizes for data networks or Wi-Fi connections; AV Foundation provides access to the devices camera and microphone, and support for media editing Core Data: data modelling using the well-known Model-View-Controller design pattern; translates source code into a graphical interface; built-in SQLite databases; provides access to the devices contacts, photos, calendar, other applications 2.3 Objective-C With Objective-C (ObjC) being a superset of C, Cocoa Touch also supports the use of C and C++ source code. While there are more differences between ObjC and C/C++, I will only outline the major ones that were observed during the development of this project. Instead of the well-known style of calling a method by its name which is linked to a direct section of code at compile time, ObjC uses the Smalltalk style of runtime-resolution message passing. An object receives a message at runtime and depending on its implementation, may or may not respond. Another difference is the use A class in ObjC has one of each and are comparable to the class declaration (.h) and definition (.cpp) of C++. ObjC uses 3

9 obj->method(arg[,...]); (1) [obj method:arg[ alabel:arg2[...]]]; (2) Figure 2.1: C-style method calling (1) vs. ObjC-style message sending (2) the plus- and minus-signs to differentiate between a class method or an instance method instead of using the static keyword to define the former. A very useful aspect of ObjC is keyword. It is used to define member fields for a class, and when used in conjunction it can automatically generate getter and setter methods for those (nonatomic, retain) NSString * name (nonatomic, readonly) NSInteger id (2) Figure 2.2: A string called name with both a get and set method (1) and a read-only unique identifier (2) 4

10 Chapter 3 Objectives As mobile devices become more and more popular it has become increasingly beneficial to any software developer to have some experience with mobile programming. Since Apple s smartphone market share continues to grow ios is a very viable platform for future development. Thus ios was chosen to be an introduction to mobile programming. 5

11 Chapter 4 Application Design 4.1 Putting the QE in QEC A concession had to be made when developing QEC. Given that the base of the game is in fact Chess, the entanglement property of the game cannot exactly be applied to the starting board. Chess has specific starting locations for each piece, so in the beginning one can describe each and every object in the system without having to involve the others, contradicting the very essence of entanglement. However since the player has no knowledge of which piece is being moved it becomes increasingly difficult to determine what the underlying board looks like. Thus the only observations that can be made are what the results of an action are across the entire game. 4.2 Code Structure The ios SDK encourages almost forces a developer to use the Model-View-Controller design pattern, and QEC was designed accordingly. Using the Utility Application provided by Xcode (Apple s IDE for both ios and Mac OS X) as a starting point, QEC is split up into the following parts (see Figure 4.3 for a class diagram) Main View The Main View consists of the introduction screen, main menu, and Chess board. 6

12 MainViewController Going along with the MVC pattern the central coordinator of the application is the MainViewController. It determines which screen to display, sets up links between the BoardView and the SettingsController, and handles creating, pausing, and resuming games. BoardView The other central part of the application is the BoardView. It is here that the majority of the game logic resides. When first initialized, BoardView creates an 8-by-8 array of GridButtons and sets the actions for handling touch events. It also creates all the necessary labels that are required for displaying information about the game state. After this initialization the game computes the list of what are called PieceSights; if a Chess piece can move to a particular square of the board, that piece has sight on that square. A PieceSight contains the Origin-Coordinates (where the piece currently is), Vision-Coordinates (what square the piece can move to), which colour the piece is, if it s an en passant, castling, or capture move, what type of piece it is, and the integer representation of the move (see Section 4.2.3). Once the board is set up, no other code is executed until the player makes a move. When the player selects a square with vision the game selects the best move available to that square and performs it, then switches to the other player. The game proceeds like this until either a player has no valid moves or is in checkmate, at which point the game is over. Figure 4.1: Game Over 7

13 4.2.2 Flipside View The Flipside View is used to display game settings, including debugging settings used in development and AI settings, and the About Screen. The main settings screen is primarily used for debugging purposes, allowing certain piece types to be turned on and off and showing the piece types. The AI Settings (Figure 4.2) allows player vs. player, player vs. computer, computer vs. computer, and which type of AI is used. The two types are Always use brightest (vision), and Always use dimmest. If there is more than one square with the same vision value, a random square is selected with that value. Figure 4.2: The AI Settings View. When enabled, the UI expands to show which strategy the AI is using. 8

14 4.2.3 The Chess Engine After doing a little research into programming a Chess engine, it was determined that doing so would consume more time and resources than were available and could be considered out-of-scope for this project. After consultation a compromise was created, in which the adaption of an open-source Chess engine would suffice. GNU Chess [3] was chosen and implemented into QEC. The GNU Chess engine is used to determine the best move to make when there are more than one moves that can be made to a selected square. The selection process follows these steps (for details regarding how GNU Chess runs, please refer to its website [3]): 1. A player selects square xy 2. The function GenMoves is called to generate the list of all available moves and their ratings 3. The list of generated moves is compared against the list of sights on square xy 4. Generated moves that do not result in a piece being moved to square xy are discarded 5. The remaining moves are sorted by their rating, with negative ratings being discarded as well. A best-move rating is also tracked, initialized to zero. If the move rating is zero, the move is added to the zeromoves list. If the move rating is non-zero and worse than the best-move, discard it If the move rating is non-zero and better than the best-move, discard any previous moves in the plusmoves list. add this move to the new (now empty) list, and set the best-move rating to this moves rating If the move rating is non-zero and equal to the best-move, add it to the current plusmoves list 6. After all the sights are sorted, the final choice is made: If the plusmoves list is not empty, choose a random move from it, otherwise If the zeromoves list is not empty, choose a random move from it, otherwise 9

15 Choose a random move from the original list of sights The generated moves include castling, en passant, and pawn promotion, and each move is assigned an integer representation calculated as mv = (((f x + f y 8) << 6) (t x + t y 8)) where f is the origin square and t is the destination square. If the move is a castling move, mv is OR d with the CASTLING flag, similarly with ENPASSANT and CAPTURE. If the move would result in a promotion, four move-integers are generated instead of the original one, each OR d with one of QUEENPRM, ROOKPRM, BISHOPPRM, or KNIGHTPRM. Figure 4.3: Outline of the classes in QEC 10

16 Chapter 5 Results 5.1 Gameplay The gameplay between regular chess and QEC is vastly different. It is almost impossible to make a strategy given the innate randomness of the game. As a result the game quickly becomes one of simply hoping a move ends in a desired effect rather than strategizing move after move. This makes QEC a rather difficult game to win, where checkmate occurs more by chance than anything else, and there are no guaranteed sets of moves that will end in a checkmate. From the start of the game it would seem that QEC might be an easy game to play (Figure 5.1). However, after just a few moves by either player it quickly descends into chaos (Figure 5.2) 5.2 Conclusions Quantum mechanics are hard. Applying even a small section of quantum mechanics to a game while remaining playable is even harder. There are many aspects of Chess that came into focus and conflicted with the entanglement theory. For instance the point of capturing a piece. If you show the player that a Rook has been captured you are effectively giving away information about a specific part of the system, which violates quantum entanglement. However, if you provide no information whatsoever about pieces being captured players will have no way of knowing if the game is progressing or not, and most likely become bored quite quickly. Pawn promotion is another 11

17 Figure 5.1: The sight-map of the starting board. important part of Chess that conflicts with entanglement. Giving the player the choice of which piece to promote to gives away information about the system. If a player is in check the only legal moves are those that remove the player from that state and the available moves in such a case are usually quite clear in showing this. In the end, compromises had to be made. The player is informed of how many pieces have been captured, but not which ones. The Chess engine makes the decision for the player on which piece to promote a pawn to. Since the check state is very restrictive in what can and cannot happen there was no feasible way of not violating entanglement. 5.3 Contributions to Computer Science Since the objective of this project was to become familiar with mobile programming there were no outstanding contributions to the field, and unless quantum mechanics in casual gaming becomes more popular there is little doubt that this project will remain in its niche. 12

18 Figure 5.2: The sight-map of the board after a few moves have been made. 5.4 Future Work There remains a vast amount of work that could be done to improve QEC which would both provide the basics that most games have and improve upon the game itself. Currently, the game state is reset upon closing the application. Property lists could be utilized to save game settings and user information (such as player names for player vs. player). A save game system could also be setup by making use of the SQLite engine provided within ios. Expanding on the game itself, a more robust computer AI would definitely be an improvement, and a online multiplayer version of player vs. player could widen the audience. 13

19 Bibliography [1] Apple Inc. ios [Version 4.1]. [2] Bub, J. (2010) Quantum entanglement and information In Edward N. Zalta, (ed.), The Stanford Encyclopedia of Philosophy, winter 2010 edition. [3] Waters, S., Kong-Sian, C., and Cracraft, S. GNU Chess chess/ [Version 5.08]. 14

20 Appendix: Source Code Included with this document are the source code files for the project. The following is the directory structure as viewed in Xcode gnuchess/ GNU Chess code with slight alterations in order to make it work with ObjC and the code written for this project. Main View/ All game action related code, including constants used throughout the project. Flipside View/ Game and AI settings, and the about screen. Application Delegate/ Main controller for the application. A1

21 Other Sources/ Common header file and main application entry point. Resources/ Game graphics, Cocoa Touch xib files, and application information property list. A2

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti Basic Information Project Name Supervisor Kung-fu Plants Jakub Gemrot Annotation Kung-fu plants is a game where you can create your characters, train them and fight against the other chemical plants which

More information

Capture the Flag Design Document Authors: Luke Colburn, Tyler Johnson, Chris LaBauve

Capture the Flag Design Document Authors: Luke Colburn, Tyler Johnson, Chris LaBauve Capture the Flag Design Document Authors: Luke Colburn, Tyler Johnson, Chris LaBauve Revision History Date Version Description Author(s) 2014-02-11 0.1 Initial draft Luke Colburn, et al. 2014-02-13 0.2

More information

INTRODUCTION TO GAME AI

INTRODUCTION TO GAME AI CS 387: GAME AI INTRODUCTION TO GAME AI 3/31/2016 Instructor: Santiago Ontañón santi@cs.drexel.edu Class website: https://www.cs.drexel.edu/~santi/teaching/2016/cs387/intro.html Outline Game Engines Perception

More information

Development of a Euchre Application for Android

Development of a Euchre Application for Android Development of a Euchre Application for Android Carleton University COMP4905 Julie Powers Supervised by Professor Dwight Deugo, School of Computer Science April 2014 1 Table of Contents Introduction...4

More information

Department of Computer Science and Engineering The Chinese University of Hong Kong. Year Final Year Project

Department of Computer Science and Engineering The Chinese University of Hong Kong. Year Final Year Project Digital Interactive Game Interface Table Apps for ipad Supervised by: Professor Michael R. Lyu Student: Ng Ka Hung (1009615714) Chan Hing Faat (1009618344) Year 2011 2012 Final Year Project Department

More information

(12) Patent Application Publication (10) Pub. No.: US 2013/ A1. Bond et al. (43) Pub. Date: Oct. 24, 2013

(12) Patent Application Publication (10) Pub. No.: US 2013/ A1. Bond et al. (43) Pub. Date: Oct. 24, 2013 (19) United States US 2013 0277913A1 (12) Patent Application Publication (10) Pub. No.: US 2013/0277913 A1 Bond et al. (43) Pub. Date: Oct. 24, 2013 (54) GAME COMBINING CHECKERS, CHESS (52) U.S. Cl. AND

More information

Movement of the pieces

Movement of the pieces Movement of the pieces Rook The rook moves in a straight line, horizontally or vertically. The rook may not jump over other pieces, that is: all squares between the square where the rook starts its move

More information

The game of Paco Ŝako

The game of Paco Ŝako The game of Paco Ŝako Created to be an expression of peace, friendship and collaboration, Paco Ŝako is a new and dynamic chess game, with a mindful touch, and a mind-blowing gameplay. Two players sitting

More information

Microchess 2.0 gives you a unique and exciting way to use your Apple II to enjoy the intellectually stimulating game of chess. The complete program lo

Microchess 2.0 gives you a unique and exciting way to use your Apple II to enjoy the intellectually stimulating game of chess. The complete program lo I Microchess 2.0 gives you a unique and exciting way to use your Apple II to enjoy the intellectually stimulating game of chess. The complete program logic to play a very skillful game of chess, as well

More information

Chapter 1:Object Interaction with Blueprints. Creating a project and the first level

Chapter 1:Object Interaction with Blueprints. Creating a project and the first level Chapter 1:Object Interaction with Blueprints Creating a project and the first level Setting a template for a new project Making sense of the project settings Creating the project 2 Adding objects to our

More information

Emerging Technology Design ACM2012

Emerging Technology Design ACM2012 Tim Stoll - Word Count: 1936 Emerging Technology Design ACM2012 Oct 16 2013 10 to 20 Pages 40% Tim Stoll - Assignment 2 : Game Design Document = Bible of the Game (Site [sic] your references in Harvard

More information

MyBridgeBPG User Manual. This user manual is also a Tutorial. Print it, if you can, so you can run the app alongside the Tutorial.

MyBridgeBPG User Manual. This user manual is also a Tutorial. Print it, if you can, so you can run the app alongside the Tutorial. This user manual is also a Tutorial. Print it, if you can, so you can run the app alongside the Tutorial. MyBridgeBPG User Manual This document is downloadable from ABSTRACT A Basic Tool for Bridge Partners,

More information

Sensible Chuckle SuperTuxKart Concrete Architecture Report

Sensible Chuckle SuperTuxKart Concrete Architecture Report Sensible Chuckle SuperTuxKart Concrete Architecture Report Sam Strike - 10152402 Ben Mitchell - 10151495 Alex Mersereau - 10152885 Will Gervais - 10056247 David Cho - 10056519 Michael Spiering Table of

More information

Lunarship Software. Phototheca Overview. November 2017

Lunarship Software. Phototheca Overview. November 2017 Lunarship Software Phototheca Overview November 2017 Table of Contents Product Overview... 2 Struggles of a photograph studio manager... 2 Phototheca provides solution... 2 Features... 3 1. Import Photos

More information

YourTurnMyTurn.com: chess rules. Jan Willem Schoonhoven Copyright 2018 YourTurnMyTurn.com

YourTurnMyTurn.com: chess rules. Jan Willem Schoonhoven Copyright 2018 YourTurnMyTurn.com YourTurnMyTurn.com: chess rules Jan Willem Schoonhoven Copyright 2018 YourTurnMyTurn.com Inhoud Chess rules...1 The object of chess...1 The board...1 Moves...1 Captures...1 Movement of the different pieces...2

More information

Assignment II: Set. Objective. Materials

Assignment II: Set. Objective. Materials Assignment II: Set Objective The goal of this assignment is to give you an opportunity to create your first app completely from scratch by yourself. It is similar enough to assignment 1 that you should

More information

CHESS SOLUTION PREP GUIDE.

CHESS SOLUTION PREP GUIDE. CHESS SOLUTION PREP GUIDE. Article 1 1minute 46 seconds 5minutes. 1. Can a player capture the opponents king?---------------------------------------------------[1] 2. When does a player have the move?

More information

Department of Computer Science and Engineering The Chinese University of Hong Kong. Year Final Year Project

Department of Computer Science and Engineering The Chinese University of Hong Kong. Year Final Year Project Digital Interactive Game Interface Table Apps for ipad Supervised by: Professor Michael R. Lyu Student: Ng Ka Hung (1009615714) Chan Hing Faat (1009618344) Year 2011 2012 Final Year Project Department

More information

Introduction to Mobile Gaming. Jon Schlegel Founder and CEO

Introduction to Mobile Gaming. Jon Schlegel Founder and CEO Introduction to Mobile Gaming Jon Schlegel Founder and CEO Introducing Optime Software Leading developer of classic casual games for smartphones Over 70M unique application downloads to date 13 games currently

More information

Beacons Proximity UUID, Major, Minor, Transmission Power, and Interval values made easy

Beacons Proximity UUID, Major, Minor, Transmission Power, and Interval values made easy Beacon Setup Guide 2 Beacons Proximity UUID, Major, Minor, Transmission Power, and Interval values made easy In this short guide, you ll learn which factors you need to take into account when planning

More information

a b c d e f g h i j k l m n

a b c d e f g h i j k l m n Shoebox, page 1 In his book Chess Variants & Games, A. V. Murali suggests playing chess on the exterior surface of a cube. This playing surface has intriguing properties: We can think of it as three interlocked

More information

If a pawn is still on its original square, it can move two squares or one square ahead. Pawn Movement

If a pawn is still on its original square, it can move two squares or one square ahead. Pawn Movement Chess Basics Pawn Review If a pawn is still on its original square, it can move two squares or one square ahead. Pawn Movement If any piece is in the square in front of the pawn, then it can t move forward

More information

Chess, a mathematical definition

Chess, a mathematical definition Chess, a mathematical definition Jeroen Warmerdam, j.h.a.warmerdam@planet.nl August 2011, Voorschoten, The Netherlands, Introduction We present a mathematical definition for the game of chess, based on

More information

CS61B, Fall 2014 Project #2: Jumping Cubes(version 3) P. N. Hilfinger

CS61B, Fall 2014 Project #2: Jumping Cubes(version 3) P. N. Hilfinger CSB, Fall 0 Project #: Jumping Cubes(version ) P. N. Hilfinger Due: Tuesday, 8 November 0 Background The KJumpingCube game is a simple two-person board game. It is a pure strategy game, involving no element

More information

Ingredients of Great Games

Ingredients of Great Games Graphics and Games #WWDC14 Ingredients of Great Games Session 602 Geoff Stahl Director, Games and Graphics Software 2014 Apple Inc. All rights reserved. Redistribution or public display not permitted without

More information

THROUGH THE LOOKING GLASS CHESS

THROUGH THE LOOKING GLASS CHESS THROUGH THE LOOKING GLASS CHESS Camille Arnett Granger, Indiana Through the Looking Glass Project Explanation For this project I wanted to do a variation on the traditional game of chess that reflects

More information

Bachelor Project Major League Wizardry: Game Engine. Phillip Morten Barth s113404

Bachelor Project Major League Wizardry: Game Engine. Phillip Morten Barth s113404 Bachelor Project Major League Wizardry: Game Engine Phillip Morten Barth s113404 February 28, 2014 Abstract The goal of this project is to design and implement a flexible game engine based on the rules

More information

Designing and programming an object-orientated chess program in C++

Designing and programming an object-orientated chess program in C++ Designing and programming an object-orientated chess program in C++ Rhydian Windsor Student No: 9437658 School of Physics and Astronomy The University of Manchester PHYS30762&63762 Project Report May 2017

More information

Interactive 1 Player Checkers. Harrison Okun December 9, 2015

Interactive 1 Player Checkers. Harrison Okun December 9, 2015 Interactive 1 Player Checkers Harrison Okun December 9, 2015 1 Introduction The goal of our project was to allow a human player to move physical checkers pieces on a board, and play against a computer's

More information

Assignment III: Graphical Set

Assignment III: Graphical Set Assignment III: Graphical Set Objective The goal of this assignment is to gain the experience of building your own custom view, including handling custom multitouch gestures. Start with your code in Assignment

More information

FIDE LAWS OF CHESS TAKING EFFECT FROM 1 JULY The table of changes

FIDE LAWS OF CHESS TAKING EFFECT FROM 1 JULY The table of changes FIDE LAWS OF CHESS TAKING EFFECT FROM 1 JULY 2017 The table of changes old rule new rule 4.2 Provided that he first expresses his intention (for example by saying j adoube or I adjust ), only the player

More information

ELE 408 Final Project

ELE 408 Final Project ELE 408 Final Project Chess AI game played over the Network Domenic Ferri Brandon Lian Project Goal: The project goal is to create a single player versus AI chess game using socket programming to establish

More information

Crapaud/Crapette. A competitive patience game for two players

Crapaud/Crapette. A competitive patience game for two players Version of 10.10.1 Crapaud/Crapette A competitive patience game for two players I describe a variant of the game in https://www.pagat.com/patience/crapette.html. It is a charming game which requires skill

More information

GICAA State Chess Tournament

GICAA State Chess Tournament GICAA State Chess Tournament v 1. 3, 1 1 / 2 8 / 2 0 1 7 Date: 1/30/2018 Location: Grace Fellowship of Greensboro 1971 S. Main St. Greensboro, GA Agenda 8:00 Registration Opens 8:30 Coach s meeting 8:45

More information

2016 Grade Level Tournament FAQ

2016 Grade Level Tournament FAQ 2016 Grade Level Tournament FAQ SHOULD MY CHILD PLAY? 1. How much chess should my child know before participating? Your child should know how the pieces move, including the details associated with castling,

More information

Aerospace Sensor Suite

Aerospace Sensor Suite Aerospace Sensor Suite ECE 1778 Creative Applications for Mobile Devices Final Report prepared for Dr. Jonathon Rose April 12 th 2011 Word count: 2351 + 490 (Apper Context) Jin Hyouk (Paul) Choi: 998495640

More information

Roadblocks for building mobile AR apps

Roadblocks for building mobile AR apps Roadblocks for building mobile AR apps Jens de Smit, Layar (jens@layar.com) Ronald van der Lingen, Layar (ronald@layar.com) Abstract At Layar we have been developing our reality browser since 2009. Our

More information

C SC 483 Chess and AI: Computation and Cognition. Lecture 3 September 10th

C SC 483 Chess and AI: Computation and Cognition. Lecture 3 September 10th C SC 483 Chess and AI: Computation and Cognition Lecture 3 September th Programming Project A series of tasks There are lots of resources and open source code available for chess Please don t simply copy

More information

Special Notice. Rules. Weiß Schwarz (English Edition) Comprehensive Rules ver. 2.01b Last updated: June 12, Outline of the Game

Special Notice. Rules. Weiß Schwarz (English Edition) Comprehensive Rules ver. 2.01b Last updated: June 12, Outline of the Game Weiß Schwarz (English Edition) Comprehensive Rules ver. 2.01b Last updated: June 12, 2018 Contents Page 1. Outline of the Game... 1 2. Characteristics of a Card... 2 3. Zones of the Game... 4 4. Basic

More information

Viking Chess Using MCTS. Design Document

Viking Chess Using MCTS. Design Document Declan Murphy C00106936 Supervisor: Joseph Kehoe 2016 Contents 1. Introduction... 2 1.1. About this Document... 2 1.2. Background... 2 1.3. Purpose... 2 1.4. Scope... 2 2. Architecture... 2 2.1. Introduction...

More information

Assignment V: Animation

Assignment V: Animation Assignment V: Animation Objective In this assignment, you will let your users play the game Breakout. Your application will not necessarily have all the scoring and other UI one might want, but it will

More information

Interior Design with Augmented Reality

Interior Design with Augmented Reality Interior Design with Augmented Reality Ananda Poudel and Omar Al-Azzam Department of Computer Science and Information Technology Saint Cloud State University Saint Cloud, MN, 56301 {apoudel, oalazzam}@stcloudstate.edu

More information

2. Review of Pawns p

2. Review of Pawns p Critical Thinking, version 2.2 page 2-1 2. Review of Pawns p Objectives: 1. State and apply rules of movement for pawns 2. Solve problems using pawns The main objective of this lesson is to reinforce the

More information

Interactive Tables. ~Avishek Anand Supervised by: Michael Kipp Chair: Vitaly Friedman

Interactive Tables. ~Avishek Anand Supervised by: Michael Kipp Chair: Vitaly Friedman Interactive Tables ~Avishek Anand Supervised by: Michael Kipp Chair: Vitaly Friedman Tables of Past Tables of Future metadesk Dialog Table Lazy Susan Luminous Table Drift Table Habitat Message Table Reactive

More information

LEARN TO PLAY CHESS CONTENTS 1 INTRODUCTION. Terry Marris December 2004

LEARN TO PLAY CHESS CONTENTS 1 INTRODUCTION. Terry Marris December 2004 LEARN TO PLAY CHESS Terry Marris December 2004 CONTENTS 1 Kings and Queens 2 The Rooks 3 The Bishops 4 The Pawns 5 The Knights 6 How to Play 1 INTRODUCTION Chess is a game of war. You have pieces that

More information

Overview... 3 Starting the Software... 3 Adding Your Profile... 3 Updating your Profile... 4

Overview... 3 Starting the Software... 3 Adding Your Profile... 3 Updating your Profile... 4 Page 1 Contents Overview... 3 Starting the Software... 3 Adding Your Profile... 3 Updating your Profile... 4 Tournament Overview... 5 Adding a Tournament... 5 Editing a Tournament... 6 Deleting a Tournament...

More information

#2: Challenge vs. Success

#2: Challenge vs. Success Balance II 2/29/16 #1: Fairness #2: Challenge vs. Success #3: Meaningful Choices #4: Skill vs. Chance A Bad Example By using the plus and minus keys next to each trait on the menu, you can take points

More information

CIDM 2315 Final Project: Hunt the Wumpus

CIDM 2315 Final Project: Hunt the Wumpus CIDM 2315 Final Project: Hunt the Wumpus Description You will implement the popular text adventure game Hunt the Wumpus. Hunt the Wumpus was originally written in BASIC in 1972 by Gregory Yob. You can

More information

Its topic is Chess for four players. The board for the version I will be discussing first

Its topic is Chess for four players. The board for the version I will be discussing first 1 Four-Player Chess The section of my site dealing with Chess is divided into several parts; the first two deal with the normal game of Chess itself; the first with the game as it is, and the second with

More information

Important USCF Rules - 5 th Edition USCF Rulebook

Important USCF Rules - 5 th Edition USCF Rulebook Important USCF Rules - 5 th Edition USCF Rulebook 5E and 5F: Standard timer for sudden death The standard timer for sudden death time controls are digital clocks with delay or addback capability. Other

More information

ARTICLE 1. THE CHESSBOARD

ARTICLE 1. THE CHESSBOARD Laws of Chess 1985 Preface The Laws of Chess cannot, and should not, regulate all possible situations that may arise during a game, nor can they regulate all questions of organization. In most cases not

More information

NOVAG AGATE INSTRUCTION

NOVAG AGATE INSTRUCTION NOVAG AGATE INSTRUCTION 1 TABLE OF CONTENTS GENERAL HINTS 1. Short Instructions 2. Impossible and Illegal Moves 3. Capturing a Piece 4. Game Features: a) Castling b) En Passant Captures c) Pawn Promotion

More information

Comprehensive Rules Document v1.1

Comprehensive Rules Document v1.1 Comprehensive Rules Document v1.1 Contents 1. Game Concepts 100. General 101. The Golden Rule 102. Players 103. Starting the Game 104. Ending The Game 105. Kairu 106. Cards 107. Characters 108. Abilities

More information

Team Chess Battle. Analog Games in a Digital Space

Team Chess Battle. Analog Games in a Digital Space Team Chess Battle Analog Games in a Digital Space Board games have largely missed out on the esports craze, and yet, their familiarity might hold a key to moving esports into the more mainstream market

More information

Software Requirements Specification

Software Requirements Specification War Room Systems Vito Salerno Jeff Segall Ian Yoder Josh Zenker March 19, 2009 Revision 1.1 Approval Sheet Chris DiJoseph Date Chris Dulsky Date Greta Evans Date Isaac Gerhart-Hines Date Oleg Pistolet

More information

E90 Project Proposal. 6 December 2006 Paul Azunre Thomas Murray David Wright

E90 Project Proposal. 6 December 2006 Paul Azunre Thomas Murray David Wright E90 Project Proposal 6 December 2006 Paul Azunre Thomas Murray David Wright Table of Contents Abstract 3 Introduction..4 Technical Discussion...4 Tracking Input..4 Haptic Feedack.6 Project Implementation....7

More information

Special Notice. Rules. Weiss Schwarz Comprehensive Rules ver Last updated: September 3, Outline of the Game

Special Notice. Rules. Weiss Schwarz Comprehensive Rules ver Last updated: September 3, Outline of the Game Weiss Schwarz Comprehensive Rules ver. 1.66 Last updated: September 3, 2015 Contents Page 1. Outline of the Game. 1 2. Characteristics of a Card. 2 3. Zones of the Game... 4 4. Basic Concept... 6 5. Setting

More information

Software Development of the Board Game Agricola

Software Development of the Board Game Agricola CARLETON UNIVERSITY Software Development of the Board Game Agricola COMP4905 Computer Science Honours Project Robert Souter Jean-Pierre Corriveau Ph.D., Associate Professor, School of Computer Science

More information

A.1.2 If a player's opponent is unable to cycle their deck (see E.2.2), that player wins the game.

A.1.2 If a player's opponent is unable to cycle their deck (see E.2.2), that player wins the game. UFS Living Game Rules Last Updated: January 25th, 2019 This document describes the complete rules for playing a game of the Universal Fighting System (UFS). It is not intended for players wishing to learn

More information

K I NG M A STER (911 ) T R AVEL KING M A STER II (16 9 ) USER MANUA L

K I NG M A STER (911 ) T R AVEL KING M A STER II (16 9 ) USER MANUA L K I NG M A STER (911 ) T R AVEL KING M A STER II (16 9 ) USER MANUA L User Ma n u a l Thank you for purchasing your Excalibur computer game. With proper care it should provide years of reliable entertainment

More information

In the game of Chess a queen can move any number of spaces in any linear direction: horizontally, vertically, or along a diagonal.

In the game of Chess a queen can move any number of spaces in any linear direction: horizontally, vertically, or along a diagonal. CMPS 12A Introduction to Programming Winter 2013 Programming Assignment 5 In this assignment you will write a java program finds all solutions to the n-queens problem, for 1 n 13. Begin by reading the

More information

ARUBA LOCATION SERVICES

ARUBA LOCATION SERVICES ARUBA LOCATION SERVICES Powered by Aruba Beacons The flagship product of the product line is Aruba Beacons. When Aruba Beacons are used in conjunction with the Meridian mobile app platform, they enable

More information

Intro to Java Programming Project

Intro to Java Programming Project Intro to Java Programming Project In this project, your task is to create an agent (a game player) that can play Connect 4. Connect 4 is a popular board game, similar to an extended version of Tic-Tac-Toe.

More information

A New Approach to Control a Robot using Android Phone and Colour Detection Technique

A New Approach to Control a Robot using Android Phone and Colour Detection Technique A New Approach to Control a Robot using Android Phone and Colour Detection Technique Saurav Biswas 1 Umaima Rahman 2 Asoke Nath 3 1,2,3 Department of Computer Science, St. Xavier s College, Kolkata-700016,

More information

Analyzing Games: Solutions

Analyzing Games: Solutions Writing Proofs Misha Lavrov Analyzing Games: olutions Western PA ARML Practice March 13, 2016 Here are some key ideas that show up in these problems. You may gain some understanding of them by reading

More information

BINGO MANIAC. Developed by AYGENT543. Copyright Vishnu M Aiea

BINGO MANIAC. Developed by AYGENT543. Copyright Vishnu M Aiea BINGO MANIAC Developed by AYGENT543 Copyright 2013-2017 Vishnu M Aiea Information Program Name : BINGO MANIAC Program Type : Game, Executable Platform : Windows 32bit & 64bit Source Language : C (ISO 99)

More information

CPS331 Lecture: Intelligent Agents last revised July 25, 2018

CPS331 Lecture: Intelligent Agents last revised July 25, 2018 CPS331 Lecture: Intelligent Agents last revised July 25, 2018 Objectives: 1. To introduce the basic notion of an agent 2. To discuss various types of agents Materials: 1. Projectable of Russell and Norvig

More information

Triple Challenge.txt

Triple Challenge.txt Triple Challenge 3 Complete Games in 1 Cartridge Chess Checkers Backgammon Playing Instructions For 1 or 2 Players TRIPLE CHALLENGE Triple Challenge.txt TRIPLE CHALLENGE is an exciting breakthrough in

More information

Camera & Photos Apps ios10

Camera & Photos Apps ios10 2017 Class Camera & Photos Apps ios10 iphone and ipad 1 Camera iphone also has filter options Live Photos, iphone 6s, 7 and ipad Pro Grid HDR - High Dynamic Range Timer Flash Switch Cameras Exposure Adjust

More information

Game-playing AIs: Games and Adversarial Search I AIMA

Game-playing AIs: Games and Adversarial Search I AIMA Game-playing AIs: Games and Adversarial Search I AIMA 5.1-5.2 Games: Outline of Unit Part I: Games as Search Motivation Game-playing AI successes Game Trees Evaluation Functions Part II: Adversarial Search

More information

Game Designers. Understanding Design Computing and Cognition (DECO1006)

Game Designers. Understanding Design Computing and Cognition (DECO1006) Game Designers Understanding Design Computing and Cognition (DECO1006) Rob Saunders web: http://www.arch.usyd.edu.au/~rob e-mail: rob@arch.usyd.edu.au office: Room 274, Wilkinson Building Who are these

More information

District Fourteen Chess Fest 2012 Information Sheet

District Fourteen Chess Fest 2012 Information Sheet District Fourteen Chess Fest 2012 Information Sheet District 14 will be holding the Ninth Annual Chess Fest 2012. Kindergarten to Grade 12 Chess Fest Saturday, March 17 2012 Centreville Community School

More information

A FRAMEWORK FOR GAME TUNING

A FRAMEWORK FOR GAME TUNING A FRAMEWORK FOR GAME TUNING Juan Haladjian, Frank Ziegler, Blagina Simeonova, Barbara Köhler, Paul Muntean, Damir Ismailović and Bernd Brügge Technische Universität München, Munich, Germany ABSTRACT The

More information

Savant Lighting TrueImage App Setup Guide

Savant Lighting TrueImage App Setup Guide ! Savant Lighting TrueImage App Setup Guide Document Number: 009-1575-00 Document Date: October 2017 Table of Contents To access the link to the topics in this document, select the topic page. Smartphone

More information

COMPARISON OF FIDE AND USCF RULES

COMPARISON OF FIDE AND USCF RULES COMPARISON OF FIDE AND USCF RULES This table identifies points where the FIDE and USCF rules differ, and indicates in the Rule Applied column the rules that will apply in the Open section of the Cincinnati

More information

The game of Reversi was invented around 1880 by two. Englishmen, Lewis Waterman and John W. Mollett. It later became

The game of Reversi was invented around 1880 by two. Englishmen, Lewis Waterman and John W. Mollett. It later became Reversi Meng Tran tranm@seas.upenn.edu Faculty Advisor: Dr. Barry Silverman Abstract: The game of Reversi was invented around 1880 by two Englishmen, Lewis Waterman and John W. Mollett. It later became

More information

3. Bishops b. The main objective of this lesson is to teach the rules of movement for the bishops.

3. Bishops b. The main objective of this lesson is to teach the rules of movement for the bishops. page 3-1 3. Bishops b Objectives: 1. State and apply rules of movement for bishops 2. Use movement rules to count moves and captures 3. Solve problems using bishops The main objective of this lesson is

More information

Pangolin: Concrete Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy

Pangolin: Concrete Architecture of SuperTuxKart. Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Pangolin: Concrete Architecture of SuperTuxKart Caleb Aikens Russell Dawes Mohammed Gasmallah Leonard Ha Vincent Hung Joseph Landy Abstract For this report we will be looking at the concrete architecture

More information

Oculus Rift Getting Started Guide

Oculus Rift Getting Started Guide Oculus Rift Getting Started Guide Version 1.23 2 Introduction Oculus Rift Copyrights and Trademarks 2017 Oculus VR, LLC. All Rights Reserved. OCULUS VR, OCULUS, and RIFT are trademarks of Oculus VR, LLC.

More information

4. GAMBIT MENU COMMANDS

4. GAMBIT MENU COMMANDS GAMBIT MENU COMMANDS 4. GAMBIT MENU COMMANDS The GAMBIT main menu bar includes the following menu commands. Menu Item File Edit Solver Help Purposes Create, open and save sessions Print graphics Edit and/or

More information

Chess For Beginners Game Full Version 3d Animated

Chess For Beginners Game Full Version 3d Animated Chess For Beginners Game Full Version 3d Animated Download 3D Chess Game and enjoy it on your iphone, ipad, and ipod touch. Powerful Chess engine that can also simulate absolute beginner opponents Realistic

More information

Unity 3.x. Game Development Essentials. Game development with C# and Javascript PUBLISHING

Unity 3.x. Game Development Essentials. Game development with C# and Javascript PUBLISHING Unity 3.x Game Development Essentials Game development with C# and Javascript Build fully functional, professional 3D games with realistic environments, sound, dynamic effects, and more! Will Goldstone

More information

Design Document for: Name of Game. One Liner, i.e. The Ultimate Racing Game. Something funny here! All work Copyright 1999 by Your Company Name

Design Document for: Name of Game. One Liner, i.e. The Ultimate Racing Game. Something funny here! All work Copyright 1999 by Your Company Name Design Document for: Name of Game One Liner, i.e. The Ultimate Racing Game Something funny here! All work Copyright 1999 by Your Company Name Written by Chris Taylor Version # 1.00 Thursday, September

More information

CS193p Spring 2010 Monday, May 10, 2010

CS193p Spring 2010 Monday, May 10, 2010 CS193p Spring 2010 Today s Topics Final Project Guidelines Guest Presentation: istanford A few Final Project ideas UIKit Control of the Week: UISegmentedControl Final Project Proposal due Friday; must

More information

PS4 Remote Play review: No Farewell to Arms, but a Moveable Feast

PS4 Remote Play review: No Farewell to Arms, but a Moveable Feast PS4 Remote Play review: No Farewell to Arms, but a Moveable Feast PlayStation 4 is the most fantastic console in the Universe! Why do we say so? Because PS4 is the most popular gaming console ever. Accordingly

More information

Final Year Project Report

Final Year Project Report Final Year Project Report ios Game Utilising an A* Path Finding Algorithm Project ID: R002 BSc Applied Computer Science University of Reading School of Systems Engineering SE3IP11 Individual Project Blair

More information

CMPS 12A Introduction to Programming Programming Assignment 5 In this assignment you will write a Java program that finds all solutions to the n-queens problem, for. Begin by reading the Wikipedia article

More information

Technical Information - NOVAG BERYL

Technical Information - NOVAG BERYL NOVAG INSTRUCTION Technical Information - NOVAG BERYL Program Size 4 KByte ROM, 768 Byte RAM CPU Clock Speed 8 Mhz Click membrane function keys 16 Power Consumption 9V d.c. 5maA Power supply 6 x 1.5V UM-3

More information

arxiv: v2 [cs.ai] 15 Jul 2016

arxiv: v2 [cs.ai] 15 Jul 2016 SIMPLIFIED BOARDGAMES JAKUB KOWALSKI, JAKUB SUTOWICZ, AND MAREK SZYKUŁA arxiv:1606.02645v2 [cs.ai] 15 Jul 2016 Abstract. We formalize Simplified Boardgames language, which describes a subclass of arbitrary

More information

CSE 231 Fall 2012 Programming Project 8

CSE 231 Fall 2012 Programming Project 8 CSE 231 Fall 2012 Programming Project 8 Assignment Overview This assignment will give you more experience on the use of classes. It is worth 50 points (5.0% of the course grade) and must be completed and

More information

Game Design Document 11/13/2015

Game Design Document 11/13/2015 2015 Game Design Document 11/13/2015 Contents Overview... 2 Genre... 2 Target Audience... 2 Gameplay... 2 Objective... 2 Mechanics... 2 Gameplay... 2 Revive... 3 Pay Slips... 3 Watch Video Add... 3 Level

More information

Bridge BG User Manual ABSTRACT. Sven Eriksen My Bridge Tools

Bridge BG User Manual ABSTRACT. Sven Eriksen My Bridge Tools This user manual doubles up as a Tutorial. Print it, if you can, so you can run Bridge BG alongside the Tutorial (for assistance with printing from ipad, see https://support.apple.com/en-au/ht201387) If

More information

WSCF Blitz Tournament

WSCF Blitz Tournament A Wisconsin Scholastic Chess Federation Event WSCF Blitz Tournament Chess Tournament Friday December 15 th, 2017 Location: Evangel Assembly of God 9920 W Good Hope Road, Milwaukee, WI 53224 Time: 4:30

More information

Distributed Gaming using XML

Distributed Gaming using XML Distributed Gaming using XML A Writing Project Presented to The Faculty of the Department of Computer Science San Jose State University In Partial Fulfillment of the Requirement for the Degree Master of

More information

The Implementation of Artificial Intelligence and Machine Learning in a Computerized Chess Program

The Implementation of Artificial Intelligence and Machine Learning in a Computerized Chess Program The Implementation of Artificial Intelligence and Machine Learning in a Computerized Chess Program by James The Godfather Mannion Computer Systems, 2008-2009 Period 3 Abstract Computers have developed

More information

Advancements in Gesture Recognition Technology

Advancements in Gesture Recognition Technology IOSR Journal of VLSI and Signal Processing (IOSR-JVSP) Volume 4, Issue 4, Ver. I (Jul-Aug. 2014), PP 01-07 e-issn: 2319 4200, p-issn No. : 2319 4197 Advancements in Gesture Recognition Technology 1 Poluka

More information

Mine Seeker. Software Requirements Document CMPT 276 Assignment 3 May Team I-M-Assignment by Dr. B. Fraser, Bill Nobody, Patty Noone.

Mine Seeker. Software Requirements Document CMPT 276 Assignment 3 May Team I-M-Assignment by Dr. B. Fraser, Bill Nobody, Patty Noone. Mine Seeker Software Requirements Document CMPT 276 Assignment 3 May 2018 Team I-M-Assignment by Dr. B. Fraser, Bill Nobody, Patty Noone bfraser@cs.sfu.ca, mnobody@sfu.ca, pnoone@sfu.ca, std# xxxx-xxxx

More information

12 Special Moves - Stalemate, Pawn Promotion, Castling, En Passant capture

12 Special Moves - Stalemate, Pawn Promotion, Castling, En Passant capture 12 Special Moves - Stalemate, Pawn Promotion, Castling, En Passant capture Stalemate is one of the strangest things in chess. It nearly always confuses beginners, but it has a confusing history. A definition:

More information

Absolute Backgammon for the ipad Manual Version 2.0 Table of Contents

Absolute Backgammon for the ipad Manual Version 2.0 Table of Contents Absolute Backgammon for the ipad Manual Version 2.0 Table of Contents Game Design Philosophy 2 Game Layout 2 How to Play a Game 3 How to get useful information 4 Preferences/Settings 5 Main menu 6 Actions

More information

Add items to an existing album. While viewing photo thumbnails, tap Select, select items, tap Add To, then select the album.

Add items to an existing album. While viewing photo thumbnails, tap Select, select items, tap Add To, then select the album. If you use icloud Photo Library, all your photos in icloud are in the All Photos album (see icloud Photo Library). Otherwise, you see the Camera Roll album, which includes photos and videos you took with

More information