Archive for the ‘Weekly Report’ Category

Weekly Report 46

Monday, November 16th, 2009

Previous Week:

Nailed down design for FLAIRS paper motivation and experiment.

Constructed Several Block World components.

Implemented C++ version of dynamic rebuilding of decomps (in progress eta today)

Expanding visualizer to show agent movement and discovery of block world components, also enhanced visualizer with better exception handling.

Finished some typed proofs for Dr. Barnes – still have a few chapters to type up.

Planned Work

Complete and Run FLAIRs paper experiment target Wednesday

Finalize dissertation committee and submit first set of paperwork – target Wednesday

Filled in Dissertation outline – target required for finalization of committee members.

More proofs for Dr. B

Draft of FLAIRS paper target Friday

Interface work on DEACCON – target as time permits

Week of Nov 9th

Monday, November 9th, 2009

ToDo:
DEACCON work – interface more granular loading of models features for FLAIRS papers
Committee and PhD proposal setup targeting week of December 7th

FLAIRS paper
Hyp: It is possible to discover a navigation mesh using information gained from one or more agents moving through the world.

Applications: Simulations of Search and rescue in unknown environments, more “fair” agents for games and simulations, others

Approach: Crib some of the D* working with unknown areas and combine that with dynamic rebuilding of decomps. Assume world is empty then rebuild when this assumption is invalidated.

Validation and Experimentation: Compare the error levels present in a agents generated decomposition (incorrectly classified space, missed gateways, average path lengths) to the “optimum decomposition” in a time lapsed manor. How quickly does agent discovery converge on optimum decomp?

Plan for Week of October 5th

Monday, October 5th, 2009

Finish for AIIDE:
Generate SSPS for Fritz
Finish VASFV
Create UI for PASFV/VASFV
Create AI poster Draft by wednesday lunch for approval / revision
Smooth out any rough edges in PASFV/VASFV

Report for previous week

Finished Gems chapter and submitted draft.

Presented Friday Seminar.

Week 18 Report

Monday, May 4th, 2009

Eng:

Heavy Engineering on implementation of behaviorshop1.0

View is completed or near final for every screen of BehaviorShop.

Model is also finished.

Control is done on screen 1, mostly done on screen 3, and I will be finishing it on screen 2 today.

Sci:

Some work on journal paper for metrics work

Started thinking about how to design, present, implement, and most importantly evaluate multilevel hierarchical ASFV 2D/3D.

Weekly Report 16

Monday, April 20th, 2009

Engineering:

Fixing remaining bugs outstanding in DEACCON 3D

Produced images of 3D decomposition.

Performed comparison between multiple decomposition techniques.

Got dynamic creation of controls in wxPython working

Science:

Produced AIIDE paper.  Trimmed AIIDE paper.

Started reading for second half of qualifying exam.

Other:

Demo’ed for the friday speaker.

Took Qualifying exam written component

Week 15 Report

Sunday, April 12th, 2009

Science:

DEACCON 3D algorithm work

DEACCON 3D paper work

Found study participants to hit 80% target

Regenerated all study statistics to accommodate new users.

Tried to get CGAL to work – the directions on it are sub-optimal.

Engineering

Improved DEACCON 3D.

Now testing and debugging with actual level data

Implemented gravity based seeding.

Succesfully seeding a stair case using gravity dropped seeds.

Filling negative space via drop seeding.


Other:

Demo

Qualifying Exam Paperwork and studying

To Do:

Iron out remaining bugs in DEACCON.

Survive Qualifying Exam



Week 14 Report

Monday, April 6th, 2009

Science:

DEACCON 3D algorithm work

Engineering

Implemented DEACCON 3D.  It still isn’t perfect but it works.

To Do:

Generate a paper draft by Wednesday.

Currently – seeding – should be in before meeting

Integrate Keith’s code for better seed dropping and to pull the building geometry once a level is created

Bring up python CGAL for the delauney triangulation library

Also the CGAL library will be needed for its fast convex3D checks to ensure edge growth doesn’t extend to far and render object concave as can currently happen

Clean up any lingering issues in DEACCON 3D – I am sure some more issues will become apparent while building a comparision between DEACCON and the other 3D algorithms.

Do metric based comparision.

Week 13 Report

Monday, March 30th, 2009

Eng :

Developed or found in the wxpython demo  of the custom controls required for Behavior Shop 1.0
Logging Windows
Custom Panels with drop down boxes and linked help buttons
Better GDI+ drawing and box moving systems
Tree Controls with a triangle graphic rather than the plus/minus graphic

Implemented 3D space filling volumes coding the adaptive part tonight and tomorrow night – I am amazed at how compact a python implementation of ASFV is turning out to be compared to a full C# or C++ implementation.

Gave Keith a hand on some math problems with the level editor

Sci :

Read an interesting paper on 3D motion planning located here

Polished my design of ASFV 3D and starting formulating my introduction for the AIIDE paper and gathering related work.

Thought up another advantage that using ASFV over more traditional triangle/vertex based decomposition metrics.  DEACCON and tools derived from it should be better able to adapt to future 3D simulation and game environments than  vertex based approaches.  This occurs because DEACCON run times are controlled by the sizes of the worlds to be decomposed which is somewhat constant, while Vertex based approaches are run time limited by how complex the geometry present in the world is, which is growing exponentailly more complex as graphics hardware advances.

Week 11 Report and Summary of Prior Weeks

Monday, March 16th, 2009

Science:
Ran 6 external people through the study for the guard scenario.
Begin compiling formal results for that study.
Did design work on Behavior Shop to better incorporate the feedback we received.
Cleaned up my scenario 1 report.

Engineering:

Worked on pyDEACCON – saturday & sunday

  • Negative spaces were able to grow into other negative or positive spaces if they had perfectly colinear edges  – fixed
  • Implemented better perfect quality seeding
  • Converted pyDEACCON to use MVC model, and the DEACCON portion is fully encapsulated into  “model”.
  • Changes the view in pyDEACCON to use FI3RST.
  • Loading and rendering of arbatrary geometry is now supported in FI3RST
  • Continually updating and redrawing of pyDEACCON is now supported in FI3RST
  • pyDEACCON is now threaded off from its rendering component – This allows the system to render faster than pyDEACCON can grow and allows detailed views of the growth procces
  • Implemented a “vertical spreading” of pyDEACCON regions so it possible to clearly see where one region stops and another stops
  • Implemented better growth control algorthim to ensure colinearity.
  • Completely fixed the problem where growing regions would “catch” on a neighboring region and incorrectly stop growing.

Challenges:

Getting panda to redraw the updated decomposition
Some minor thread safety issues caused by threading off the decomposition
Getting people in here to finish up my study participant quota
A panda error message when attempting to draw triangle fans that was exactly wrong (“# vertices supplied >= max_support_vertices”) when in fact I was passing in less than three vertices.

Plans:
Finish writing up Behavior Shop 1.0 and Start Implementation
Develop video for GRF
Summary / Long Term Update :
Science:

The DEACCON work was voted most influencial academic game AI paper of 2008 by AIGameDev.com

Developed and implemented an algorithm to dynamically repair invalidated spatial decompositions to allow for more dynamic game worlds

Developed a series of metrics for the evaluation of spatial decomposition

Developed theory for and have started implementing 3D spatial decomposition technique.  The critical part of a 3D spatial decomposition is that the decomposition be aware of the affordances provided by the environment.  Stairs for example require a decomposition such that the area above each stair is a tall enough column to fit an entire agent into.  A naive approach to 3D decomposition would result in regions seeding from the center of each plane and growing from there.  However, such an approach will result in major problems for our stair example many of the stairs will have small unusable regions on them while a few stairs will have enormous oversize regions that extend out over open space.  The fix for this is to use a gravaty based seeding that drops every new region to contact with the ground which ensures it initially begins growth by following the ground plane.

Engineering

Implemented the alpha version of BehaviorShop.  After initial internal trials it was decided a more natural language approach was needed and we decided to go with a sentance based behavior structure.  Users build behaviors layers by filling in the blanks of a sentance describing the behavior.  This approach was found more natural and enjoyable by our users.  During human trials using this method users were heard subconsciously reading off the sentances that described the behaviors they were constructing, which indicates they were quite comfortable with how behaviors were built. Human testing on behavior shop produced an interesting list of lessions learned (stored in GIG2008/Documents/BehaviorShopFirstHumanTrialInitialResults.doc) to be incorperated into BehaviorShop 1.0.  The demographics and fully compiled results from this study will be stored in GIG2008/Documents/BehaviorShopFirstHumanTrialFinalData.doc.

Implemented several lighting and rendering technology upgrades for use in FI3RST.

 

 

Weekly Report 10

Monday, March 9th, 2009

Science:

Ran 4 internal and 5 external people through the study.

Results were somewhat disappointing though not unexpected.

Read an article on the trunk packing problem and some new approaches to it

http://scitation.aip.org/getabs/servlet/GetabsServlet?prog=normal&id=PLEEE8000079000002021102000001&idtype=cvips&gifs=yes

Worked on compiling an updated Scenario 1 report

Also compiling a report on the feedback from the study

Engineering:

Made a few minor changes to BehaviorShop -

  • Fixed a minor crash bug
  • Expanded the information outputed by the program
  • added the string “click on map to set location” to the following behavior “go to point”, “patrol”, “guard” in response to users not actually clicking anywhere on those behaviors
  • Condensed request / confirm authorization back down into one behavior in the interface
  • Fixed a problem with conditionals not being correctly remembered when the user re-enters a previous behavior

Worked on DEACCON – Python saturday

  • Negative spaces were randomly growing into each other – fixed
  • Spaces near the edge of the area to decompose were not growing correctly – fixed
  • Seeding  intervals were not being applied correctly – fixed
  • Exactly parrallel negative space regions are not performing correct collision detection – tracked down and under repair
  • wx.Python GDI+ implementation can’t handle the # of redrawn calls DEACCON generates – solution 1 implemented double buffering problem grew worse due to overhead of double buffering (reverted) / solution 2 – Integrating DEACCON with a FI3RST engine to use the better framerate the panda3d engine can supply – status – Underway

Challenges:
wx.Python can’t render the DEACCON growth fast enough so I can’t see what is happening during the decomposition which makes debug hard.

Plans:

Fully functional DEACCON 2D with all the trimmings (adaptive repair, convex combining, ect) running in FI3RST by the end of the week

Aquire a total of 12 study participants by end of buisness today and write up observations and feedback by tommorrow morning for use in 1.0 of behave engine/behavior shop

Transfer all study required code to the laptop for remote testing in 3rd floor lab and lobby of building.

Design Behavior Shop 1.0