Taking into consideration Jorrit's latest email with regards to submitting proposals, I have submitted my first draft and included it here. If anyone has any further comments please let me know.
Also can anyone confirm wether it is ok for me to submit two proposals to CS? As I have currently leaned towards the Quest/BT proposal but would also be happy to work on the A*/Steering proposal. Thank you to everyone for their support in this application and I hope to start work of these topics soon. Regards, Sam. -------------------- About Me. My name is Sam Devlin, I am a fifth year computer scientist student about to be awarded a first class MEng in Computer Systems in Software Engineering and beginning a PhD in Reinforcement Learning in October. I have a fond interest in game AI and am looking for a project where I can exert a continuous effort in practical AI throughout my time researching theoretical AI. I have no current experience working on open-source projects but am keen to learn about this field hence my application to GSoC. I do however have over a years industry experience working on a range of projects for BAE System's. Development during this time was predominantly with C++ using MSVC++. I have also completed two internships during my undergraduate degree, one of which was within the challenging environment of a major investment bank. The most relevant of which, however, was within the computer science department at the University of York, UK. During this time I worked with a large commercial API to implement modifications, again in C++, to a military simulator. I also gained working experience with Python in the automation of a number of minor tasks. I am familiar with the OpenGL API having worked with it both during a computer graphics module of my course and in the development of a project for BAE Systems. My experience in AI, however, is more substantial, having focussed a large number of my module choices into this area. I have always excelled in these subjects and as a result was selected to perform my final year project within the AI group. This project involved the use of reinforcement learning under partial observability to make agents play the soccer subgame keepaway. The successful results of my research have been submitted to the IAT'09 conference and have helped me land a DTA scholarship for my PhD research. With regards to other summer plans, I have one module that overlaps with the first week of development time and so will be limited slightly by this but will be able to then commit full time to the project throughout the remainder of the project time. I currently have no intention to apply to other projects within the GSoC. Crystal Space Questions. I first heard about Crystal Space around February this year when I began researching projects I would like to be a part of for GSoC. Although I have not yet contributed to the project, I have gained an understanding of the project through lurking on the irc channel and questioning those with experience on the AI systems available within CEL. As previously mentioned, I am keen to begin a working relationship in the community through the GSoC programme. I see this as a great opportunity to become an established part of the active CS development community and begin to work on AI systems that I want to expand, not just during GSoC but, throughout my PhD studies. Over the past couple of months I have successfully set up a working environment for both CS and CEL in MSVC++. I have worked through the user manuals of both and believe I am forming a strong understanding of the CEL architecture within which the majority of my project work will be. Also as required I have checked out the source code from subversion and introduced myself on the CEL mailing list. My Project Proposal. Given the current complications and issues with the Quest system (Highlighted at Quest Improvement Proposals, Quest Editor-See Bottom Of Page and my recent discussions on the CEL mailing list.) A number of ideas have been discussed as beneficial to the project and a refactor suggested that removes triggers and rewards from the Quest system and makes them standard property classes available throughout CEL. In doing this future systems can be designed to take advantage of these powerful tools. An example of this that I propose to implement is behavior trees. Behavior Trees provide similar functionality to FSMs but are considered more intuitive, and make logic more reusable. (For a more detailed argument of Behavior Trees please see: A Behavior Tree Overview) It has also been argued repeatedly that FSMs are becoming obsolete in industry (For example: FSM Age is Over). If you agree or not, it is important that CS/CEL provide tools for all developers. For those wishing to stick with FSMs the refactored Quest system will be available, and for those who have moved on to behavior trees the new implementation will be available. By implementing Behavior Trees and providing detailed documentation and tutorials it is my hope that the CEL community will begin to explore and develop this technology that is rapidly becoming the industry standard. Therefore, taking into account my other commitments during the first week of development, I have listed below my estimated deadlines for the deliverables I propose. 1. Quest Refactor 1. Freeing the triggers & rewards from within Quest so that access to them is available throughout CEL. - June 7th 2. Standardise the Quest, Trigger and Reward properties so that they can access constraints, property values and message each other (Fixing the last three problems on https://b2cs.delcorp.org/dev/wiki/QuestEditorNG) - June 17th 3. Allow for nesting FSMs - June 28th 4. Example Program / Tutorial - July 1st 2. Behavior Tree Implementation 1. Implementation - August 1st 2. Documentation - August 5th 3. Example Program / Tutorial - August 10th ------------------------------------------------------------------------------ _______________________________________________ Cel-main mailing list Cel-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cel-main