Competing algorithms...

jam jam at
Fri Jun 4 16:56:31 CEST 1999

On Fri, Jun 04, 1999 at 02:44:13PM +0200, Magnus L. Hetland wrote:
> Yay!
> I have managed to get the course on algorithms here at the university
> to use Python as its language!

woowoo! ;)

> Now, I have to find some cool uses for it :) I am planning on setting
> up some programming competitions as a part of the course; i.e.
> students send their algorithms (in Python) to a (rexec-) server which
> benchmarks them and ranks them. So... Have you got any good ideas for
> fair benchmarking?

hmm.. well, not really. I didn't find computing big-oh an exciting part of
school. ;)

> The evaluation should preferrably be done automatically, so the only
> thing I can think of is straight benchmarking baset on clocking and
> test cases... But is this a good and fair measure of how good the
> algorithm is? (Of course, a O(n) algorithm would probably out-perform
> an O(n^2) algorithm...)
> It might also be possible to do manual evaluation of the best ones, or
> something - or to have a separate prize for beautiful programs...
> Anything is possible...
> eagerly-awaiting-several-exciting-suggestions-ly y'rs
>  -M

my idea would be to make a way to let the *students* rank themselves.. get
them to come up with a way to evaluate their peers.. this way the ones that
latch onto it quickly will end up teaching the ones that aren't as far along
yet.. and they will learn a lot more by seeing sometimes completely
different ways to solve the same problem. put the survey system up on the
web.. you can make a form that will allow them to post their code.. make
something that lets them authenticate to the system some how (simple
password will do), then after the assignments have been turned in they rank
the code of their peers based on some criteria (and have the students come
up with that, too).. say, a ranking system. you (as the organizer) get to
have the final call on what the grade is, so you can catch problems before
they become a problem.. the goal is to stir discussion in class about *why*
a certain algorithm is 'better'.. maybe one is way faster, but far less
beautiful, but no less correct than someones elses
beautiful-but-not-yet-fast-enough version-- they both deserve a passing
grade, but for different reasons.

setting-the-wheels-in-motion-ly y'rs,
J ;)
|| visit gfd <> 
|| psa member #293 <> 
|| New Image Systems & Services, Inc. <>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 210 bytes
Desc: not available
URL: <>

More information about the Python-list mailing list