Andrew C. Prock prock@cs.wisc.edu 333 Sierra Point Road Brisbane CA, 94005 (415) 330 0869 OBJECTIVE To learn and create EDUCATION U.W. Madison, 1995-2000 University of San Diego, 1995 - 1997, MS in CS 1990 - 1994 1997 - 2000, PhD Research BA in Mathematics, Physics and Computer Science Minors Magna Cum Laude AFS Exchange to Morocco 1989-1990 EXPERIENCE Parnter, MF Inc., 2004 - present - Partnership to deploy and actively use poker related software Software Developer, RPS Consulting, 2002 - present - Develop poker related software in C++ on UNIX and Win32 for individuals, small groups, and corporate clients . analysis tools and GUI development in MFC . simulation software . opponent profiling and analysis . online MySQL installation of over 4 million hands played . native (MFC) and online (LAMP) interface for database . external control of third party poker client software using Win32 . solutions to various game theory problems - Web site: http://www.pokerstove.com Instructor, CSU Hayward CS Department, 2002 - 2005 - Introductory CS courses, develop basic skills and knowledge of CS . Programming Methods . Data Structures and Algorithms . Programming Language Concepts . Intro to Systems Programming - Senior Level CS courses, develop project level skill in students . Object Oriented Programming, implement an OS simulator . Operating Systems, design and construct a GUI based game - Course web pages available at: http://www.mcs.csueastbay.edu/~prock/ Software Consultant, Madison WI, 2000 - 2001 - Developed custom Excel spreadsheets to handle accounting tasks for small business Research Assistant, U.W. Madison, 1999 - 2000 - Developed various motion editing tools on UNIX and Win32 using C++, OpenGL, python, FLTK, fluid, SWIG and Maya (with Michael Gleicher) . Developed a path based mechanism for editing motion . Developed a foot plant detection scheme . Recovery of missing markers in motion capture data Research Assistant, U.W. Madison, 1997 - 1999 - Researched, designed, and implemented novel computer vision and image based rendering algorithms (with Charles Dyer) on IRIX using C++, OpenGL and OpenInventor with an emphasis on threaded real time applications . Vision based mouse, user control of a mouse using optical flow . Developed visual interface to track a hands and head of a user in real time . Automatic scene generation using Voxel Coloring . Developed hierarchical methods of Voxel Coloring Partner, Choreometrics LLP, St. Paul, Minnesota, 1997 - 1998 - Lead Software Engineer for DARPA SBIR contract. Researched, designed and implemented computer vision system for full body motion capture. - Wrote funding proposals, cut through red tape. Instructor, University of Minnesota UNIX/C/C++ Training Program, Summer 1997 - Taught accelerated course in Unix software design and implementation. Tools that were covered: make, SCCS, debuggers, lint, and ar. Teaching Assistant, U.W. Madison, 1995 - 1997 - Instructor CS302: Algebraic Language Programming - Instructor CS367: Introduction to Data Structures - Lab Assistant CS132: Using Computers Software Engineer, Network Systems Corporation, 1995 - Member of the team responsible for alpha testing routers and switches - Designed and developed an automated test bed for benchmarking performance of routers for various protocols including TCP/IP, IPX, and PPP using tcl/expectk - Engineered prototype implementation for automated test bed and benchmarked performance PUBLICATIONS Prock, A.C. and Dyer, C.R., "Towards Real-Time Voxel Coloring", DARPA Image Understanding Workshop, 1998, pp315-321. Gleicher, M. and Prock A., "Path Transformations", submitted for publication (SIGGRAPH 2000) Prock, Andrew, "Introduction to Poker Software", Deal Magazine, Fall Quater 2005 GRADUATE Database Management Systems Linear Programming COURSES Advanced Topics in DBMS Nonlinear Programming Algorithms Information Retrieval Nonlinear Programming Theory Data Models and Languages Pattern Recognition Machine Learning Computational Geometry Computer Graphics Computer Vision Image Processing Visual-Motor Systems Numerical Differential Equations Computer Animation Ordinary Differential Equations RESEARCH AND PROJECTS Motion Capture: devising a new motion representation which allows for multiple characteristics and aspects of distinct motions to be stitched together in a seamless and (semi) automatic manner. Path based motion transformation: submitted for publication. By abstracting the path of a motion, various fundamental manipulations upon the path can be performed easily creating convincing animations of newly created paths. Scene reconstruction from segmented images: This project focused on using segmented images as the primary source for scene reconstruction instead of regular images. By first segmenting the images into regions based on color, topological information could be used to derive various visibility and occlusion constraints. Automatic recovery of missing markers in motion capture data. By interpolating the position of missing markers in the hierarchical space of the figure, more consistent motion could be recovered over longer periods. Automatic scene generation: We have explored efficiency issues in real-time scene generation from multiple cameras. We also investigated more general scene reconstruction techniques that are fully automatic and require no scene engineering. Desktop Visual Interface: This work utilized the desktop camera of an SGI O2 to track the hands and heads of the user seated in front of the desktop. The tracking was done at 15 hz in a reduced resolution mode. Tracking of the hands and head was robust and temporary occlusions were handled using linear prediction models. Real Time Unconstrained Motion Capture: This project was done to meet a DARPA SBIR contract with Choreometrics LLP. The final product was a developmental prototype for an unconstrained motion capture system. Such a system has applications in industries ranging from entertainment to security to human computer interaction. Vision Based Mouse: Designed and implemented a vision based mouse simulator. Mouse motion is controlled by the movements of the user's head. Optical flow techniques were used to measure the aggregate motion of head motion and control the mouse accordingly. Methods for user calibration were also designed. REFERENCES Edna Reiter, CSU Math/CS Chair eddie.reiter@csueastbay.edu Phil Roban, Partner MF Inc. roban@tc.umn.edu Jonas Znidarsic, Client jonas@jonas.si Patri Friedman, Google Employee patrissimo@gmail.com Charles Haynes, Google Employee haynes@edgeplay.org ------ last modified: Tue Oct 31 11:30:35 CST 2006