What I do right now...
Currently working as a Graphics Scientist at Rhythm & Hues Studios.
2006-2007 R & D at Industrial Light & Magic and LucasArts.

Ph.D. Computer Science, UCLA 2007
M.S. Computer Science, UCLA 2002

Animation Software
The DANCE software is used for physics-based animation research, including dynamic simulation of rigid bodies, motion capture and dynamic control.
 Update: 8/1/07 - New DANCE version that includes the Dynamic Controller Toolkit will be available 12/10/07(need to find the time...anyone want to help?) 1/31/07. This version includes tools for better controller development tools such as a scripting interface, better GUI and many bug fixes.
 Update: 7/25/06 - New DANCE version 072506 released. This version has a stable ODE simulator, better documentation and support for both Windows and Linux. A DANCE binary version is also available that does not require any compilation.
 Update: 3/6/06 - New DANCE version 030606 released. This version runs on Linux as well as Windows!
 Update: 1/30/06 - New DANCE version 013006 released
 11/9/05 The DANCE animation software has been released!


Research
You can browse my research in motion capture, physical simulation, animation and artificial intelligence.

Papers
 
 B. Allen, D. Chu, A. Shapiro, P. Faloutsos, On Beat! Timing and Tension for Dynamic Characters, ACM SIGGRAPH/Eurographics Symposium on Computer Animation (SCA), ACM Press, August, 2007 (pdf, video).
 
 A. Shapiro, D. Chu, B. Allen, P. Faloutsos, The Dynamic Controller Toolkit, The 2nd Annual ACM SIGGRAPH Sandbox Symposium on Videogames, San Diego, CA, August, 2007 (pdf, videos).
 
 A. Shapiro, M. Kallmann, P. Faloutsos, Interactive Motion Correction and Object Manipulation, Symposium on Interactive 3D Graphics and Games, Seattle, Washington, April, 2007 (pdf, videos)
 
 A. Shapiro, Y. Cao, P. Faloutsos, Style Components, Graphics Interface 2006, Quebec City, Quebec, Canada, June, 2006.
(pdf, videos), (bibtex)
 
 A. Shapiro, P. Faloutsos, V. Ng-Thow-Hing, Dynamic Animation and Control Environment, Graphics Interface 2005, p. 61-70, Victoria, British Columbia, Canada, May, 2005.
(pdf, software), (bibtex)
 
  A. Shapiro, F. Pighin, P. Faloutsos, Hybrid Control For Interactive Character Animation, The Eleventh Pacific Conference on Computer Graphics and Applications, p. 455-460, Canmore, Alberta, Canada, October, 2003.
(pdf, videos) (bibtex)
 
  A. Shapiro, G. Fuchs, R. Levinson, Learning a Game Strategy Using Pattern-Weights and Self-Play, Third International Conference on Computers and Games, p. 42-60, Edmonton, Canada, July, 2002.
(pdf, © Springer-Verlag, from LNCS) (bibtex)


Refereed Conference Presentations
 
  A. Shapiro, P. Faloutsos, Interactive and Reactive Control, SIGGRAPH 2005 Sketches, Los Angeles, CA, August 2005
(pdf, demo)
 
  A. Shapiro, Y. Cao, P. Faloutsos, Interactive Motion Decomposition, SIGGRAPH 2004 Sketches, Los Angeles, CA, August 2004
(pdf)
 
  A. Shapiro, P. Faloutsos, Complex Character Animation that Combines Kinematic and Dynamic Control, SIGGRAPH 2003 Sketches & Applications, San Diego, CA, July 2003.
(pdf)


Refereed Posters & Demos
 
  A. Shapiro, D. Chu, P. Faloutsos The Controller Toolkit, Symposium of Computer Animation 2006, Posters & Demos, Vienna, Austria, August 2006
 
  M. Kallmann, A. Shapiro, P. Faloutsos, Planning Motions in Motion, Symposium of Computer Animation 2006, Posters & Demos, Vienna, Austria, August 2006
 
  A. Shapiro, P. Faloutsos, Steps Toward Intelligent Interactive Control, Symposium of Computer Animation 2005, Posters & Demos, Los Angeles, CA, July 2005
 
  A. Shapiro, P. Faloutsos, Victor Ng-Thow-Hing, Dynamic Animation and Control Environment, Eurographics Symposium on Computer Animation, Posters & Demos, Grenoble, France, August 2004
 
  A. Shapiro, Y. Cao, P. Faloutsos, Stylistic Motion Decomposition, Eurographics Symposium on Computer Animation, Posters & Demos, Grenoble, France, August 2004


Media Coverage
 
 A Digital Media World magazine interview about my SIGGRAPH work in their December, 2003 edition.
 Cover graphics, UCLA Computer Science Department Handbook 2006 (pdf)


Advisor
 
 Professor Petros Faloutsos
 MAGIX (Modeling, Animation and GrafIX lab)
  
Projects...
FreeDip
 A web-based version of the game of Diplomacy. Originally developed by Guy Tsafnat and myself, this version is written in Java and plugs into a JSP-compliant webserver. This was used as a testbed for my automated player and can currently self-play approximately 1000 games/day.
  
Academic Past
San Jose State University 1999 - 2001
 M.S. program in Computer Science
 Graduation with Guy Tsafnat, wearing the Master's hood.
 
University of California, Santa Cruz 1994 - 1996
 B.A. in Computer Science
 
University of Massachusetts, Amherst 1989 - 1991
  
  
Some Fun Memories
Maui 2000
Whitewater Rafting
 Sacramento 2001 for my friend's bachelor party. This part of the trip was called Chunder. Not all of us made it through the falls. Here's the entire sequence if you'd like to see it.
 

Ari Shapiro

ashapiro (at) cs (dot) ucla (dot) edu
 

Before I attended UCLA, I had no idea how to distinguish one university from another, not withstanding their rank in US News & World Reports. I sifted through as many graduate student web pages I could in an attempt to gain insight into the university, the program and its students. I found those student web pages that introduce their readers to the university and Ph.D. lifestyle were the most helpful during my search and choice of Ph.D. programs. With that in mind, I will do my best to return the favor and assume that many of you reading my web page are interested in UCLA's graduate program and are not attending this university.

Please keep in mind that this document is written from the perspective of a first second third fourth fifth sixth year Ph.D. student recent Ph.D. graduate. My thoughts, opinions and conclusions (and this web page!) will change as I learn, experience and continue to reflect on my tenure in a computer science Ph.D. program.

The Location. UCLA is located in a nice part of Los Angeles - Westwood. Westwood has many coffee shops and movie theatres. Indeed, many movie premieres are held here, red carpet and all. Not entirely a college town, there is a large commercial area in Westwood along the 'Wilshire Corridor' - a stretch of road that holds many high-rises and commercial buildings. Westwood is only 5 miles inland and the beach is a short ride away. Westwood is also adjacent to some of the well-to-do areas of Los Angeles: Bel Air, Beverly Hills and Brentwood. UCLA's local college rival is USC (University of Southern California), a private university located in downtown Los Angeles. They have a better football team (they lost to Texas in the college football championship game in 2006) and we have a better basketball team (we lost to Florida in the basketball championship game in 2006, but we're back in the Final Four this year...). As a private university with a large endownment, they have more money than we do, but we have a much better campus and the tuition at UCLA is a fraction of that at USC.

Los Angeles, on the whole, is an amazing city. Culturally, there is more to do here than you can imagine. The city is ripe with comedy clubs, playhouses, museums, exhibits and sporting events. There is a stigma attached to Los Angeles by those who don't live here that LA is smoggy, crowded and that the people are superficial.

Well, it's mostly true.

However, the smog isn't bad in areas near the coast where UCLA resides, although it did take me about a year to get used to the change in air quality. The freeways and roads are frequently clogged, but after you live here for awhile you figure out faster ways to travel, usually on side roads. I have met some wonderful and interesting people in LA, including my beautiful wife.

Most people in the Greater Los Angeles live in high-density housing, such apartment buildings and condominiums. There are, however, many suburbs in Los Angeles that are not crowded and where parking is plentiful. Public transportation is fair and a student could arrange their living so that they take the bus everywhere they need to go. But since Los Angeles is so spread out, it is desirable to have access to a car. The advantage of high-density living is that you have restaurants, grocery stores and movie theatres all within walking distances of housing areas. Lastly, yes, Los Angeles is exceptionally image conscious. This is due in part because of the weather (it's nice and sunny, almost all the time) and partly due to the proximity to the television and movie industries.

However, because of the tremendous mix of different people, no one social group dominates the area. You meet a lot of people who do all sorts of different things for a living - doctors, lawyers, poets, journalists, actors and confused graduate students. LA is also a good place to go if you like to eat. There are thousands of restaurants from all different cultures (Chinese, Japanese, Vietnamese, Persian, Italian, French, Mexican, Thai - you name it). UCLA sits in an educated, urban area of Los Angeles. The congressional district that UCLA occupies even has the highest percentage of college graduates in California (at 44%). It also holds the second largest Jewish community in the United States (outside of New York).

There are many professional technology job opportunities available outside of the university. There are biotech, entertainment and financial companies that need help from computer scientists and engineers. Los Angeles is not, however, the hub of technology opportunities. The Silicon Valley is still a better place to find technology companies.

Teaching. UCLA is a public university and the undergraduate classes are large. This is an advantage for the graduate student who is interested in teaching. There are plenty of opportunities to become a teaching assistant (TA). Every UCLA Ph.D. student is required to become a TA for at least one quarter during their graduate tenure. However, being a TA is not as highly regarded as being a research assistant (RA). The primary motivation of a research university is research, not teaching. The right research position would allow you both to get paid and to further your research, which in turn will get you closer to finishing your Ph.D. A TA position will not do this for you. A TA position will require many hours of instruction, paper grading and preparation for the course you are assisting. It is not unusual to be a TA for a class that is not directly related to your research. Sometimes, however, your advisor will use the TA position as a way to indirectly fund their students. This is done by using the TA to lecture the classes while using graders (hired graduates, usually at about $10/hour or so) to perform test and homework grading. This means that the TA will need only to lecture once/week and hold office hours, thus reducing the workload significantly.

Some Statistics. In the latest US News & World Report Graduate School Rankings (2006), UCLA was ranked as the 15th best graduate program in Computer Science in the United States (down from 14th since last year, although how you distinguish between number 11 and number 19 is a mystery to me). I have found that the university that has an expertise in your field of interest is more important than any generalized ranking. For example, UCLA's specialty is in Networking and the graphics lab is starting to mature (Update: 1/31/06 - UCLA has just added one of the biggest names in the graphics field, Demetri Terzopoulus, to the faculty), and there are no faculty researching robotics. (Update: 7/10/03 - UCLA has hired 6 new professors, including 2 in programming languages).

Here is a list of where CS faculty at top-ranking universities received their degrees. I had started collecting this data last year, but apparently someone has beaten me to it. As a related data set, here is a list of ACM dissertation award winners.

If you're interested in admission statistics for UCLA, the following is data from 1998-2002 for the Computer Science department, although recent years have been much more selective due to the plunge in the economy (read: dot-com crash). I believe that UCLA received 50% more applications in 2002 than in previous years and accepted only 10% of the applicants. I have also heard that Berkeley only accepted 3% of its applicants in 2002, down from 5% the previous year. I don't have statistics for more recent years.

For undergaduates, UCLA was ranked as the third best public university in the nation (US News & World Report 2006). As an undergraduate institution, it is just as hard to get into than California's other top public university, Berkeley. See the stats (and I feel sorry for the high school students who wish to attend UCLA next year who must now have a 4.13 GPA to get in).

Faculty. The UCLA Computer Science department has some top-notch professors. The school itself has a reputation for being a top Networking school. That is to say that we have done some great research in the field and have a large number of prominent faculty dedicated to it (UCLA's Kleinrock sent the first packet on the Intenet). There are also some particularly good professors in the Artificial Intelligence group. I have found most professors to be available and welcoming to all inquiries. Also, UCLA is hiring new faculty every year, and its reputation attracts top talent.

Social Environment. Overall, the students here are very friendly. Most Ph.D. students seem to be in their mid- to upper- twenties, but there are some exceptions, both older (guess who?) and younger. Many of my classmates come from Ivy League schools and other top universities across the U.S. (Berkeley, Harvard, Stanford, Carnegie-Melon, Harvey Mudd, etc.). At UCLA, there is a graduate student get-together at one of the campus' coffee shops every month which gives you a chance to 1) leave Boelter Hall, and 2) meet other graduate students from all over the campus.


Why did I choose UCLA? Since I wasn't sure which area of research I was most interested in (as most entering students aren't), I wanted to attend a university that was large enough to provide several different research areas. Smaller departments seemed too limiting, since each research area in those universities had only one or two professors. This meant that if you didn't like/get along with/were interested in one of the faculty, then you were stuck either choosing an area that you aren't passionate about, or you spent time working in an area outside of the expertise of your university, which is difficult to do. This is not a problem that can be completed avoided when choosing to attend a large university. It is not unusual at all to begin work in one research area, then switch to another one that you find to be more interesting. However, transferring to another graduate school has its own cost; each graduate school has their own set of requirements that often do not overlap with your own school, so students that transfer end up taking many additional tests and classes. Transfers from other University of California schools have an advantage at UCLA: many of their classes taken as graduates are transferable to UCLA's program.

UCLA's location was another influencing factor. As a professional with many years of experience, I wanted to live in an area that could support a technology industry that I could either consult with or work for during the summers. If you attend a university in a remote area, you will need to leave that area during the summer if you don't have employment with the university itself. For example, I spoke with to a number of students at UCSB in 2001 (observation 8/11/05: wow, I need to update this web page - this info is 5 years old!) who all went to the Silicon Valley for their summer internships - a 5 hour drive away. In Los Angeles, there is the Jet Propulsion Laboratory (JPL) in Pasadena and the Hughes Research Center (HRC) in Malibu which employ students for internships and allow people to stay in the area. Also, since UCLA is a public university and I am a California resident, it might be possible to work outside of school and still afford it's meager tuition rates.

In addition, UCLA is close to many other research universities. The University of Southern California (USC) is only a 20 minute drive away and it is common for students to attend talks there. Caltech is less than an hour away, UCSD is three hours away and UCSB is two hours away. Plus, Northern California is less than an hour away by plane and holds other top-notch univerities such as Stanford and Berkeley.

Although reputation is an important consideration when choosing a school, you need to also consider where you are going to live for the next four or five years of your life. (The temperature during the winter in LA is about 60 degrees and you never have to shovel any snow!). I value urban areas that are culturally diverse.

Attrition It is difficult to collect statistics on graduate school attrition rates (how many people leave the program and never finish). I would estimate that approximately 1/3 to 1/2 of those who enter the Ph.D. program do not finish. Some leave with master's degrees, some get industry jobs and never return, others simply don't progress in their research and quietly drop out. I don't believe that the attrition rate at UCLA is any different than other top universities. I'm interested in hearing from other Ph.D. students at other universities about this issue.

Thoughts on pursuing graduate work in Computer Science
There is a ~tremendous~ difference between pursuing a Master's degree and pursuing a Ph.D. You can complete a Master's degree in 1 year, which typically raises your average starting income approximately $30k over a Bachelor's degree. UCLA Master's degree recipients were receiving an average salary of $70k to $90k per year after graduation. Ph.D. students, although receiving an even greater salary than Master's students ($80k - $120k) take 3 to 5 years more to complete. One could argue that a motivated person with a Master's degree could also earn the same amount as a Ph.D. after working for those 3 to 5 years, as well as have a higher standard of living during that time. The main problem with pursuing a Ph.D. is obtaining a realistic picture of the Ph.D. objective. Most people pursue Ph.D.s because they would like to become a professor. If you look at the 2005 Computer Science Annual Report on page 33 (and as a side note, the cover graphic is from my research work), you will see that only 11 out of 46 Ph.D.s took academic positions when they graduated. Granted, some took postdocs which might help them become a professor later, and some ended up in research positions that could also help them when applying for academic positions. However, considering the attrition rate that I mentioned earlier (at least 1/3 drop never even finish the Ph.D.), it is clear that the chances of obtaining such an academic position is slim (conservatively, only 15% of those entering the Ph.D. program ended up a professor). One reason for this is the lack of available academic positions, another is the higher pay offered by the commercial sector, and still another is the reputation of UCLA. UCLA doesn't have the reputation of Berkeley, Stanford or MIT, so a mediocre Ph.D. grad will be placed next to a mediocre Stanford/Berkeley/MIT grad, and it is much more likely that the Stanford/Berkeley/MIT grad will be hired than will the UCLA one (this is not to say that the reputation of UCLA is not good - it is. However, it is not one of the top 5 schools in this field). Ultimately, your research record will weigh more heavily than anything else. But if you're going to play the odds, I think it's important to have a clear picture before you start. If you ask them, most departments will either not have this information or will paint a rosy picture of your options. .

The secret to affording graduate school:Unlike business school, medical school or law school, graduate students in the sciences get paid to go to attend the university. They are paid through a number of different sources: teaching assistantships (teaching classes), research assistantships (work for a professor in their area of research) or fellowships (free money). Although universities do charge tuition, these funding sources include a tution waiver. The pay is nominal, often less than $25k/year, but is enough money to live on for a short period of time. Of course, $25k goes a lot further in some places than in others. It will go a lot further in a rural area than an urban one. Ph.D. students are typically given funding priority and not all Master's students will get tution waivers through academic employment. This is particularly true of out-of-state and foreign students, since the university must pay an additional fee for out-of-state-tuition for them. California public universities are constantly fighting budget cuts, and priority is given to in-state students.

Even though we scientists get paid to go to school, we aren't rewarded upon graduation as our colleagues who go to professional training schools do. Lawyers and MBA's graduating from the equivalent level of program in law and business as UCLA is in computer science will receive a six figure salary as a starting salary and will receive even higher salaries as their career progresses. I don't know of any academic position that starts it's assistant professors with a six figure salary. Computer positions in private industry do pay amounts that are almost on par with first year law graduates. However, this comparison is between a 30 year old PhD with a 25 year old J.D. holder. In ten years, the lawyer's salary will dwarf that if the researcher/academic/software engineer.


Papers, Symposiums, Invited Talks, Presentations and Journals Every academic has a publication list that tells you about the kind of research that they have done and the major areas of interest for that research. These publications are obtained by 1) doing research, 2) sending that work into a conference/journal where it is reviewed by others in the field who are very knowledgable about the particular topic of research. The reviewers typically rate the work, make specific comments about the content and express whether or not they feel the work is of publication quality for that particular conference/journal. Publications that are accepted typically have to be presented at the conference where there is an opportunity to present the idea as well as field questions about the work.

Each field has its own conferences and journals that are seen a more or less prestigious than others. Similarly, each conference/symposium/journal has a different acceptance rate, ranging from very high (almost everything sent is accepted) to very low (say, only 10% of submissions are accepted). Conferences often have a "best paper" award, which is judged as the best paper of those accepted at the conference.

The submission process for journal publications generally takes longer than the conference submission process. In addition, journal papers are not accompanied by a live presentation. Unlike conferences, journals do not have strict deadlines. The reviewing process is more involved, with many changes to the submission taking place in order to satisfy the reviewer's criticisms. As such, journals take longer to publish than do conferences, and the information can often be revealed at a conference much earlier than by the time the journal is published and distributed. Computer Science research advances fairly quickly, so new work typically comes out in conferences rather than journals. Journals are often used as a means of archiving the ideas contained in the conference papers, containing greater details of those works.

There is no strict requirement for publishing in order to finish your Ph.D., except for your dissertation. Student wishing to pursue an academic career should develop a good publication record so that they become known within their field for their work. In addition, conferences are great opportunities to meet your peers in the field, socialize, make friends and develop collaborative opportunities.

For more information... The site www.phds.org has some interesting articles about academia, both for graduate students and for professors.

There is an informative article from Carnegie-Mellon University that addresses many questions for prospective PhD's: http://www-2.cs.cmu.edu/%7Eharchol/gradschooltalk.pdf.

There is another interesting commentary on graduate school in Computer Science by another professor at the University of Wisconsin: http://www.cs.wisc.edu/~gleicher/HomePageFrames/grad-school.htm.

 
If you found this helpful or want to know something specific about the CS graduate program at UCLA that an enrolled student could answer, then send me an email at ashapiro@cs.ucla.edu. I like getting feedback and will do my best to answer any questions.