Yusuf's Photo
YP :: projects
Yusuf Pisan

 

Please refer to Creativity and Cognition Studios web page for additional research areas and PhD projects.

 

Please refer to FIT research on courses, supervision, applying, scholarship information and general queries on Masters and PhD programmes.

 

31460 Computer Graphics Project

The goal of "31460 Computer Graphics Project" is to allow students experience on working independently on a project. The subject does not have formal lectures, but would normally require you to submit weekly reports and meet regularly with me. Although projects can be completed in groups, the role of each person has to be carefully identified. You will need to have done well in your previous subjects and genuinely interested in the project. All projects require a final report. For good projects, the report could be modified to become a conference paper which would be an additional bonus.

As with all web pages, the list of projects listed here become "old" soon after they are entered. Contact me directly for the "latest and the greatest" projects as well as to "pitch" your own project. A good pitch should have a timeline, concrete deliverables and build on previous work, something more substantial than "I want to make a game".

Please refer to the subject page for official information on this subject.

Path Finding: Path-finding continues to be troublesome for most games. Good path-finding algorithms are necessary for NPCs to move around in a world. Hierarchical Path-Finding A* is the current state of the art for grid based maps. For this project, you will build a program that can read a map, use HPA* to create a plan to move from start to goal location, and evaluate the performance of the algorithm under different conditions. The maps can be actual game maps or generated randomly. For an outstanding project, the program should include an interface that allows the user to select start/goal locations and include visualisation of the states explored. The project can be completed in a language of your choice. Variations: dynamic environment with moving objects, importance on "starting to move quickly" rather than finding the perfect plan, path-smoothing algorithms for "natural" paths, ...

Finite State Machines:Design a GUI to help in creating FSMs. The article from Phil Carlisle in AI Wisdom would be a good starting point. For an outstanding project, the program should allow new "tests" to be incorporated easily, generate human-readable scripts and have a second program run a simulation based on the scripts.

Virtual Tour: Build an accurate model of Building 10 that can be browsed. You would preferrably have previous experience with designing levels. You will complete a short survey of available engines/environments for modeling it and document throughly your process for creating an accurate, realistics 3D model. Sending email by going to a person's office and other interactive components can also be added.

Physics Modeling: Accurate physics modeling can be very difficult. For this project you will accurately model how blocks fall and slide and build a visualisation component for it. The program should read a configuration of blocks and show how they would fall, hit and bounce from each other. More advanced components such as elasticity and modeling jumping can be incorporated for an outstanding project.

Flocking and Herding: Flocking and herding are some of the common group behaviours found in games. A basic implementation would provide a visualisation, an outstanding implementation would provide an interactive environment for testing these behaviours and adjusting their parameters.

Environment mapping: Accurately modeling reflection has always been one of the goals of computer graphics. For liquids, this can be harder as the image is both refracted and reflected. Build a model for visualising the reflection from different fluids. An outstanding project would incorporate complex, dynamic environments and ripple effects of the liquid.

Self-Shadows: Implementing self-shadowing where a dynamic object casts a shadow on itself is difficult because it has to be done in real-time with highly detailed characters. Implement a program to demonstrate self-shadows for a character. An outstanding program would incorporate multiple characters and multiple shadows.

Priority Based Scheduler: Game characters have to be updated as necessary. The priority and the frequency of the updates is determined by the importance of the object (monster NPC versus decorations) as well as the location of the player. Implement a system that is able to manage priority schedules with objects being added and removed dynamically. An outstanding project would analyse the performance of such system under heavy load. Depending on your approach, there may or may not be a visual component for this project.

Terrain Analysis: In complex terrains characters can get stuck. Develop a method to analyse a 3D terrain to identify locations where characters could get stuck. A complimentary system would also help users unstuck their characters.

more coming soon....

 

Honours/Masters Projects

FIT/UTS guidelines and scholarships for honours can be found at http://it.uts.edu.au/courses/mc10.html

Computer Games / Interactive Multimedia / Interactive Storytelling

The honours program gives you a chance to pursue an area of your interest in depth. It opens the possibilities for postgraduate research degrees and can provide you with a large project you can show to potential employers. But most importantly, your honours year should be fun, lots of hard work but fun!

The below projects are intended to give you an idea about the types of projects I supervise and to serve as a starting point for our discussion if you want to work with me. I am open to other project ideas, contact me by email with a project proposal if you think it falls under my research areas.

Scholarships: The Faculty provides a $3000 summer vacation scholarship for students who want to start their honours work over the summer and $5000 scholarship for all honours students. Please contact Robert Rist rist@it.uts.edu.au for general honours inquiries.

Facilities/Research Environment: As an honours student working with me, you will be part of the .Creativity and Cognition Studios. research group. You will have access to the CCS Studios, attend weekly meetings and regularly interact with other research students and staff.

Games

Path-finding: Good path-finding algorithms are necessary for NPCs to move around in a world. Current games use a number of .hacks. to get around this difficult problem, such as placing waypoints in the world, pre-calculating paths, distracting the user with animation while new paths are calculated. Hierarchical Path-Finding A* is the current state of the art for grid based maps. As a part of this project, you will implement and compare different path-finding algorithms, provide guidelines how game developers can choose an algorithm and suggest improvements on existing algorithms.

Plan based behaviour: The behaviour of most NPCs is scripted, rule-based or finite-state based. Plan generation can offer novel action sequences that were not anticipated at game design time. You will examine the .Mimesis. system developed at North Carolina University and either develop a similar system from scratch or build an extension for it. Extend an existing game engine: Build an extension to an existing game engine (FLY3D/OGRE/.) that implements some of the recent ideas from the literature.

Interactive Storytelling

Holodeck: Books and movies provide linear, static stories. We are now on the verge of a developing new story form, interactive stories, where the user is an active participant. The current experiments in this area have been in the form of branching storylines, similar to .choose your own adventure. books from 1970s, and hypertext experiments. Balancing the author.s control over a story and the freedom of the user is a fine balance. The ultimate goal would be to create the holodeck from Star Trek, where characters dynamically react to the user and the story unfolds in unexpected ways. As a part of this project, you can create a text-based virtual theatre where different agents interact with each other and the user, a 3D environment where the user interacts with different characters, create a interactive story generator, build a graphical interface for authoring branching storylines, create agents that can be directed in the same way actors and actresses can to easily create visual stories, or examine a specific technology that is critical for interactive storytelling such as limited natural language understanding, dynamic lighting of 3D scenes, etc.

Intelligent Agents

Emotional Agent: Emotions make characters real, but to date emotional state of an agent has been either ignored or if implemented has been separate from the agent.s decision process. Starting from a cognitive theory of emotions, you will build a model of agent emotions and how those emotions change over time and affect the agent.s goals and decisions. Time permitting, we will compare the believability of an agent with and without emotions under different circumstances.

Some More Project Ideas

  1. Heuristics for Imperfect Information Games: A Case Study on Scrabble
    Traditional games with well defined rules provide well-structured environments for undestanding how people think and learn. While a number of programs that play expert-level scrabble exist, the knowledge imbedded in them is often implicit and they often rely on extensive search to find the best moves. The goal of this project is to identify the heuristics that people use in playing scrabble and to create a scrabble program that can train novices.

  2. Single User Planning: The Case of Sokoban
    Sokoban, a block pushing game, is notoriously difficult for most planners as the solutions require very long plans. Learning dead-ends and understanding patterns is critical for solving the puzzles. The goal of this project is to explore the planning literature to find domain dependent heuristics that can be used for solving Sokoban games.

  3. Identifying and Squashing Programming Bugs
    As students learn to program, they often develop "bugs", misconceptions that cause small errors. Some of these bugs are due to teaching style, some inherent in the complexities of the language and others due to switching to a different style of thinking. The goal of this project is to categorise common bugs and develop sample programs to identify if a student has a particular bug. A further extension of the system would be to evaluate it in the context of a first-year programming class to improve student performance.

  4. Automated camera control
    Automated camera control is necessary for both virtual and real environments where there is a need to track one or more users to create cinematic effects. A number of algorithms exist for tracking users, but most of these algorithms do not incorporate higher-order planning that a director brings to the scene. The goal automated camera control should be to immitate a good director, constructing plans in a language that is already used by directors and that can be interactively modified.

  5. Negotiating Agents: The role of culture
    Negotiation is a process of cooperative decision-making between parties concerning the resolution of a common dispute. What should differentiate one agent from another? Should agents also exhibit 'cultural' tendencies or just algorithmic variations?

  6. Realistic Clouds in Real-Time
    Explore and extend methods for creating realistic clouds that can be used in games and/or virtual reality environments.

  7. Real-time collision detection
    Survey the literature on collision detection and extend models for real-time collision detection.

  8. Collaborative SPAM filtering
    SPAM, unwanted emails, is no longer s simple nuisance but a serious problem for ISPs and large businesses costing them millions of dollars a year. Some of the current methods for identifying spam are whitelist/blacklist, rule based systems, bayesian nets, domain key signing and collaborative appoaches relying on other users. As long as spamming is commercially profitable, spammers will look for methods to work around the existng methods. Althoughes changes in legislations will help, the distributed nature of the internet will mean that SPAM will continue to be a problem and a source of revenue loss for companies.

    Collaborative filtering offers a solution where an email is tagged as SPAM based on 'votes' from users. Each user can implicitly or explicitly define their network of trust in other users' judgement of tagging to filter their own SPAM. Users in this system do not necessarily have to be humans, but can be intelligent agents that use a variety of methods in classifying email.

    The goal of this project is to leverage of the existing efforts and expand them in the area of collaborative filtering by 1) providing an easy to use plugin to popular mail clients (such as outlook and Eudora) 2) building web services for clients to query and report suspected SPAM 3) extending mail clients to use PGP or other encryption technique to encrypt and sign emails automatically for the purpose of preventing spam rather than security 4) implement intelligent agents that can contribute to the collaborative filtering process.

  9. Augmented Artifacts
    The Augmented artifact is a proposal for the development of mixed-reality museum installations or artworks that combine both the physical and virtual experience in an augmented information space. The intention is to create a rich, over-laid information environment through the creation of enhanced objects - physical artifacts that control dynamic text, image and audio. Augmented artifacts can combine the cultural and social qualities we assign to physical objects with the potentials of digital content to facilitate an extended historical or contextual, narrative experience, beyond the confines of the user.s immediate space and time-frame.

    Research Question: "What are the potentials for augmented artifacts and user interaction in mixed-reality environments"? Augmented Typography.: (A possible starting point for investigation)

    Physical space: Questions and statements (quotes) pertaining to mixed reality issues are mapped in the physical installation environment. Either through the use of actual lettering applied to gallery surfaces (walls ceiling and floor), or through the creation of 3 dimensional artifacts with typographic surfaces.

    Virtual space: Through the use of wireless, augmented reality 3d stereoscopic glasses, additional content can be accessed. This extra information will relate to the physical typographical statements and take the form of short video sequences and expanded textural analysis. The virtual content will be triggered by the user looking at interactive nodes incorporated in the terrestrial texts and will be mapped into 3d dimensional space as dynamic audio and visual - animated type and video sequences.

    One page flyer about the project.

If you would like to work with me, you should check out my .Resources for Student. http://staff.it.uts.edu.au/~ypisan/research/studentresources/. It provides some general resources and has a list of do.s and don.ts that will help you.