Wednesday, January 18, 2012

We've moved!

This is no longer the current website for information on the Penn Dining Philosophers or the PClassic.

Please visit the new Dining Philosophers website

PClassic 2012 will be on February 18, 2012. Email pclassic@gmail.com if you are interested in participating.

Tuesday, February 16, 2010

PClassic 2010 Winners:

In first place, with 37 points, was Horace Mann's Fluffy Bunnies, consisting of:

Gabi Rivkin
Greg Heon
Brandon Sosa-Lederhouse
Robert Davies

In second place, with 15 points, was Horace Mann's Horace Mann A, consisting of:
Erika Whitestone
Zach Rivkin
Pam Mishkin
Aaron Orwasher

In third place, with 13 points, was Friends Select's Falcons, consisting of:
Haydn Dufrene
Min-hee Lee
Jenn Shen
Arman Dezfuli-Arjomandi

All of us here at Penn really loved hosting all teams this year, we had a great time, and we hope to see you all again next year!

Tuesday, December 8, 2009

Snakeathon Results


Bright and early at 2PM on a Saturday, teams of Snakeathoners descended upon the Moore 100 Lab. Instructions were given out, a short demonstration and algorithm walk-through was held, and the Snakeathon begun.

3 rounds, 8 and a half hours of coding, 6 pizzas and 20-some ounces of coffee later, the winners emerged - the few, the proud, the top Snake Bot in each category. The Dining Philosophers and WICS officially congratulate:

Alen Kubati and Preetam D'Souza for their AlenPreenamBot, which took First Place in both the Single Player and FFA Vector Snake rounds,
Robert Mead, whose SexyGameBot took First Place in the Multi-Player Round, and
Jim Grandpre, whose JBot took second place in both the Single Player and Multi-Player rounds.

How it Went:
Contestants (in teams of one or two) were given a Snake-Playing Framework and a simple API to plug their bot in, in Java. In the allotted 3 hours, contestants had to implement a Snake-Playing bot and submit it to the live leaderboard, in a netflix-on-steroids style AI hackathon. As contestants began hacking away at the problem, the provided SampleBot dominated the charts for the initial hour. As submissions began pouring in, contestants watched the leaderboard to see whether some new fix or tweak to their algorithm would give their bot the necessary edge. As the deadline approached and Pizza arrived, cries of "just give me a couple more minutes" were sympathized with but ultimately ignored, as AlenPreenamBot, in a come-from-behind spectacle, took a new high score and the lead just as time expired.

Round Two added a multi-player component; players' snakes no longer just ate candy but also needed to avoid other players and, if possible, attempt to trap them (earning additional points). As participants adjusted their algorithms for the appearance of others, the live leaderboard began taking a fairly large amount of time to refresh results, since every contestant now had to play every other contestant to get a fair ranking of 'top bot'. This was fixed in the third-round by changing to an FFA (Free-For-All) format.

As contestants struggled to add some rational expectation of others' moves to their Algorithms, a number of interesting situations began to emerge. In one, two snakes stubbornly attempted to eat the same candy repeatedly but were unable, since the interfered with one another's movements. In another, the famous Twitter 'Fail Whale' seemed to emerge spontaneously. SexyGameBot, who had been leading this round took first place with 29734 points, a comfortable 7,000 point margin ahead of its nearest competitor.

Round Three changed the multi-player format to a free-for-all and removed restrictions on directions players could move. The result was Chaos. Jim Grandpre's JBot appeared to lead up to the end, despite only moving in the four cardinal directions. Two last-minute submissions by Jim and the team of Alen & Preenham, however, tilted the scales decidedly towards the latter, giving them the second victory in a row. "If I hadn't gone with my new bot, I may have won," said Jim. Touche.

Full results of the final scores can be found here.

For more information contact alexeym[at]seas.upenn.edu

Monday, November 23, 2009

Upcoming Event: Snakeathon

It looks like we haven't used this blog in a little while.  Nevertheless, if you're wondering "whoa, I was subscribed to this via RSS?" we're still here.

And we're hosting a Snakeathon Game AI programming competition two weeks from now.  Details are available at git.to/snake.  Also, check out our flier:

Thursday, February 26, 2009

Winners of PClassic 2009

In first place, with 47 points, was Holy Ghost Prep's team, consisting of:
Michael Conway
Martin Mena
Stefan Bossbaly
Thomas Cleary

In second place, with 40 points and an earlier submission time, was The Dalton School #1:
Will Mayner
Sarah Meyohas
Juliana Cherston
Alex Gliedeman-Adler

In third place, also with 40 points, was Friends Select:
Miles Frain
Nick Halbert
Haydn Dufrene
Jennifer Shen

Everyone at Penn is very thankful for the attendance of all teams this year.

Pictures from PClassic 2009

Philadelphia Classic 2009

Tuesday, January 20, 2009

PClassic 2009!

High School Teachers and Administrators,

I'd like to personally invite you to register a team for this year's
Philadelphia Classic (PClassic) Programming Contest to be held at the
University of Pennsylvania, on Saturday, February 21st, 2008. The
contest is designed and run by Penn undergrads in the Dining
Philosophers Computer Science Club. The contest is open to any high
school that can transport students to the Penn campus. The event is
tentatively scheduled for schools to arrive between 9am and 10am, and
for the contest to be complete by 4:30 or 5pm. A more detailed
schedule will be available as the date approaches.

The contest consists of teams of 4 students from a high school. (If
you are interested in bringing more than one team, please let us know)
There will be 8 programming questions, to be answered in Java. Points
are awarded for correct responses and speed is used to break ties. To
encourage teamwork and critical thinking, only one computer is used
for each team – students are encouraged to work out solutions on paper
first. Examples of questions can be found on our website,
http://dp.seas.upenn.edu/ In addition to the contest, we provide a
simple breakfast, lunch, t-shirts, and a tour and talk about Penn's
Computer Science and Engineering departments. Prizes and trophies will
also be awarded to the winners.

To register for the contest, please fill in the form located at
http://spreadsheets.google.com/viewform?key=pEHkWRTDiXT0XJv-3FHJgGg&hl=en

(If the form does not work, contact us at pclassic@gmail.com)

Also, keep an eye on our website http://dp.seas.upenn.edu/ for updates
and more information about the contest. (This website now contains the
feed from our blog located at penndp.blogspot.com)

If you are not the relevant contact for this message at your school, I
ask that you please forward this message to the appropriate teacher or
department head. In addition to Computer Science/Programming teachers
and students, we have seen registrations from math teachers, business
teachers, and technology departments in the past. If you know any
personnel at other schools who may be interested, feel free to forward
along this invitation.

A registration fee of $50 per team of 4 students is required on the
day of the contest. If this fee prevents your school from attending
the contest, please let me know at pclassic@gmail.com and we
may be able to make arrangements.

Questions? Feel free to contact our contest email address at
pclassic@gmail.com.
I'd be glad to help you with any concerns.

Matt Evans
President, Penn Dining Philosophers

Friday, October 17, 2008

Microsoft Techfest

Come check out Microsoft's Techfest on Tuesday 10/21 from 7-8pm in Wu-Chen Auditorium. Microsoft employees will be here showing off the newest and most exciting work that is being done at Microsoft and also to just hang out, meet, and chill with students.

Wednesday, October 15, 2008

New Member Event

Are you new to computer science and the department here at Penn?

Come join us on Thursday, October 16th at 8pm in Levine 315. We'll have food, drinks, and a good time waiting for you. Members of the Dining Philosophers, the premier computer science major club here at Penn, will be on hand to chat, explain what our club does, and how you can get involved.

Thursday, October 9, 2008

Meeting Time

We will be meeting at 9pm in the Rodin mezzanine (usually sitting on the couches) every Wednesday for the Fall 2008 semester.

Thursday, April 10, 2008

Weekly Question - Week 1 Solutions

The solutions for Week 1's question are now posted. You can find the answer for Queues here and the one for removing duplicates here.

Tuesday, April 8, 2008

Weekly Question 3

The new week's question is available here

We'll extend the deadline out to April 18th, 2008, since it's a hectic weekend for us on campus. Also, the question should be #3.

Sunday, March 30, 2008

Pascal's Triangle

The question for this week is now available. Results from last week will be posted soon. Please submit all results to knichel@seas.upenn.edu

Monday, March 17, 2008

New Weekly Question

Starting this week, we're offering a weekly programming question. At the moment, no prizes are available, but we'll be collecting responses and publishing the best. We're looking for creativity and elegance in solutions - this gives us a chance to reward the parts of programming that don't come up in contests. Here's this week's question:


DP Weekly Question #1

Part a.)

In this part, we will be looking at data structures. This problem will use only two data structures, a stack and a queue. A stack is a Last-In-First-Out (LIFO) data structure, meaning that the first element that you can access out of the data structure is the last one you inserted. A stack supports two operations, push() and pop(). A push() pushes an element on to the top of the stack, and a pop() takes the top element off the stack and returns it. A queue (pronounced like the letter Q) is a First-In-First-Out (FIFO) data structure. The first element you insert will also be the first element you take out of the data structure. Queues support two operations: enqueue() and dequeue().
Enqueue() adds an element to the data structure, and dequeue removes an element from the data structure.

A queue is normally represented by using a list. However, it can also be implemented by only using Stacks in the internal representation. The problem is: Design a Queue data structure class by only using Stacks (java.util.Stack -
http://java.sun.com/j2se/1.4.2/docs/api/java/util/Stack.html) in the internal representation. Provide a constructor, and support the operations Enqueue(), Dequeue(), and Empty() which returns True if the Queue is empty, and false otherwise. Be careful to handle the case of underflow errors (when you try to remove an element from the queue when there are no elements in it).

Answers are required to be in Java or C#, but answers will be provided in Java.

Part b.)

In this part, we will ask a relatively simple question. You are given an array of arbitrary length filled with random integers. The elements are in no order. Also, there are duplicates of elements in the array.
Write a function that returns a new array with all the duplicates of any element removed, such that there is only one of each element in the new array.

In this problem, wee are looking for an efficient solution. Some aspects of efficiency are space used (number of variables and arrays
allocated) and the running time of the algorithm. First try to implement any solution that accomplishes the given task. Then look for ways to improve your solution.

Again, answers are required to be in Java or C#, but solutions will be provided in Java.

Please submit all answers to Knichel@seas.upenn.edu by March 28, 2008.

Sunday, February 17, 2008

2008 PClassic Results

This year's contest was a huge success. The competition was fierce, and the scores were close. Scores are out of 80 possible points.
Here's the results:

Horace Mann-2 77
Radnor 64
Horace Mann-1 60
Germantown 37
St. Joes Prep 20
Friends Select 17

This year's question set can be downloaded here.

Answers will be available soon.

Pictures from this year's contest are available here and on our Picasa album.
If you require publication-quality copies of the pictures, please email pclassic@gmail.com.
PClassic 2008 Programming Contest

Thursday, January 31, 2008

Last chance!

This is the last chance to register for PClassic 2008! Please send an email to pclassic@gmail.com with registration information or at least letting us know of your intent to participate. Please let us know by Friday 2/1 or Monday 2/4 at the latest.

Additionally, this year's contest plans to use the PC2 Programming Contest environment. Information is available from the project page.

Sunday, January 13, 2008

Directions to Penn Campus

Directions, provided by Penn are available here: http://www.admissionsug.upenn.edu/visiting/directions.php

The contest will be held in the Engineering buildings, in the middle of campus, at 34th and Walnut Sts.

Thursday, January 10, 2008

Philadelphia Classic 2008

The date for this year's contest has been set as Saturday, February 9th, 2008. The contest will be held at the School of Engineering and Applied Science at the University of Pennsylvania. All high schools that can provide transportation to Penn are invited; in years past the contest has drawn crowds from Philadelphia and as far as Washington DC and NYC.

Each school can bring a team of 4 high school students and one teacher/sponsor. The registration fee is $25 - this includes lunch and t-shirts for the participants. Trophies and prizes will be awarded to the winning teams. (If space/time permits, schools wishing to bring more than one team may be allowed to bring others).

The event is tentatively scheduled for schools to arrive between 9am and 10am, and for the contest to be complete by 4:30 or 5pm. A more detailed schedule will be available as the date approaches.

To register, please send an email to pclassic@gmail.com with the school's name, student names and t-shirt sizes, and teacher/sponsor contact information. Invitations will be sent to past attendees as well as Philadelphia-area high schools, but all schools are welcome to register and attend, and we ask that you share information about the contest with other possibly interested schools.

Questions? Please comment here or email pclassic@gmail.com

Thursday, November 29, 2007

2007 PClassic Questions Available for Download

While we’ve had some server trouble, I’ve uploaded the questions to last year’s contest to the web. They’re accessible here:

http://www.seas.upenn.edu/~evansmf/questions2007.pdf

Computer Science Curriculum and Experience Discussion

 

The Dining Philosophers and WICS, Penn’s clubs for undergrads in computer science, are proud to announce a roundtable discussion.

 

WHAT: Come talk about computer science at Penn, the department, the curriculum and what it means to you. Complain about the classes, or share ideas for the future. Give input of any kind.

We’ll turn the output of the evening into an official position paper to be published and shared. Undergrads only – no grad students, no faculty, no staff. Everyone is free to speak all they want – no ideas will be turned away.

 

WHEN: Wednesday, December 5, 2007. 6:30 to 8:30 PM

WHERE: Levine 307 (the big conference room)

FOOD (free, of course) will be served! Please RSVP if you can, so we know how much food to order

 

Topics to be discussed (just the beginning…): curriculum, advising, careers, social experience, teaching, anything!

 

Matt Evans

President, Dining Philosophers