The ICPC Challenge Series presents:
The ICPC Parallel Challenge 2.0.0.5! ICPC パラレルチャレンジ2005
powered by IBM Parallel Power Technology
 by IBMパラレルパワーテクノロジー

Get ready for some fun!  The ICPC Challenge is a series of fun, competitive events created especially for the ACM-ICPC World Finals Teams.  This year's Parallel Challenge is the first to feature parallel programming tools and technology.  It will take place on Tuesday, April 5th, 2005 in conjunction with the 2005 ACM-ICPC World Finals.

さあ、準備はいいかい?ICPCチャレンジには、ACM-ICPCの世界代表チームの君たちだけのために用意された、楽しく、やりがいのあるイベントが目白押しだ。今年のパラレルチャレンジは史上初めて、パラレルプログラミングツールおよび技術を審査の対象にする。パラレルチャレンジ200545日、火曜日に、ACM-ICPC世界大会の一環として行われる。

What is the Parallel Challenge? パラレルチャレンジとは?

Each year, the ICPC Challenge explores the future of ACM-ICPC while introducing new programming technologies and problem-solving techniques in a fun and competitive way.  It is a separate event that plays no role in ACM-ICPC World Finals scoring.

毎年、ICPCチャレンジは、新しいプログラミング技術や問題解決技術を楽しい競技として取り入れることで、ACM-ICPCの将来像を模索してきた。ICPCチャレンジはACM-ICPC世界大会とは切り離されたイベントで、スコアには影響がない。

This year's Parallel Challenge builds on the tournament model introduced in the Java™ Challenge.  Using advanced parallel C/C++ programming tools, Parallel Challenge teams will program objects to vie with each other in direct real-time competition on a POWER-based IBM multi-processor machine called IBM eServer Blue Gene!

今年のパラレルチャレンジはいままでのJava™ チャレンジを参考に考案されたものだ。パラレルチャレンジに参加するチームは、最新のパラレルC/C++プログラミングツールを用いて、POWER-based IBM multi-processor machine called IBM eServer Blue Gene上で動く直接、実時間でほかのプログラムと対決するプログラムを書くのだ!

They will use the IBM POWER-based parallel supercomputer technology which is used to solve some of the most difficult problems in physics, engineering, biology, geology and the environment.

チームは、物理学、工学、生物学、地学、環境科学の最も難しい問題を解くのに使われている、IBM POWER-basedの並列スーパーコンピュータ技術を使う。

You mean my program will interact directly with other Team's programs? つまり、他のチームのプログラムと直接干渉するってこと?

Yes, that's right!   Parallel Challenge submissions will not be "judged" by a panel of Judges; they will be put directly into a Multi-Processor Environment where they will compete directly with the programs submitted by other teams.

そのとおり!パラレルチャレンジsubmissionはジャッジが審判するのではなく、直接マルチプロセッサ環境へ送り込まれ、他のプログラムと直接対決することになる。

What’s the “Parallel” part?  Do I have to know anything about parallel processing to participate?  パラレルって何?並列計算の知識が必要なの?

No, everything you need to know about this year’s Parallel Challenge will be covered on-site.  IBM will provide teams with access to an IBM Power-Architecture “Blue Gene” supercomputer¸ one of the world’s most powerful parallel processing machines.   You can find out more about Blue Gene here, although you won’t need to know anything about it ahead of time.

いいえ。パラレルチャレンジに必要なすべての知識はサイトで提供される。IBMは各チームにIBM Power-Architecture “Blue Gene” supercomputer(世界で最も強力な並列計算機のひとつ)へのアクセスを提供する。ここからBlue Geneについての詳細な知識が得られるが、前提知識がなくても不利にはならない。

How is all this going to work? 仕組みは?
The details are super-secret; they will be revealed the day of the Parallel Challenge.  Here's the general idea:

詳細は最高機密であって、パラレルチャレンジの日にすべてが明かされるだろう。概略は次のとおり:

Teams will be given specifications for a C++ class.  These specifications will include a set of interfaces to be implemented and an overall goal to be achieved while in competition with other teams’ code.  Each team will be given the ability to create multiple instances of their class, each running in parallel on a separate Blue Gene processor node and each with an ability to communicate with the other objects of that team.  Capabilities will also include observation of the progress of other teams’ objects and measures that can be taken to block that progress.

チームは、あるC++のクラスの仕様を与えられる。この仕様は、実装すべきインタフェースや、他のチームのコードとの競技の結果達成すべき目標などを含むだろう。各チームは自分のクラスのインスタンスを複数作成することができる。おのおののインスタンスは別々のBlue Geneプロセッサノードで走ることになり、味方のクラスとコミュニケーションすることができる。他のチームのオブジェクトの作業状況を測定することもでき、その作業を妨害する手段が与えられるであろう。

The winning team will be determined in a game environment while competing with others.   To compete, your team must succeed at building the specified object.  But to win, your team's strategy – i.e. the cooperation between your objects – must be superior to that of your opponents.  The technical part is easy.  But, your opponents will make sure that the real challenge will be in inventing a winning strategy!

チームの勝ち負けは、競技と平行して、あるゲーム環境で決定されるだろう。ゲームに勝つためには、あなたは指定されたオブジェクトをつくらなくてはならない。しかし、他のチームに勝つためには、君のチームの戦略---味方オブジェクト間の協力とか---が他のチームより優れていなくてはならない。技術的には簡単だが、他のチームの存在が、優勝する戦略の開発を非常にやりがいのあるものにするだろう!

How will the winners be determined? 勝者の判定は?

The Parallel Challenge takes place in two parts.  The first part is the coding portion.  As you code, you can test your objects live against other team's objects.  At the conclusion of the coding portion, you will submit your object to compete in the second part, a tournament to determine the winners.  You and your teammates can watch the final rounds of the tournament during the IBM Activities/Dinner later that evening.

パラレルチャレンジは2つのパートからなる。第一部はコーディングの時間。コーディングの間中、他のチームのオブジェクトと実際に対戦してみることもできる。コーディング部門が終わると、君たちは第二部であるトーナメントに出場するコードをsubmitする。トーナメントの行方は、IBM Activities/Dinnerの時間に観戦できるだろう。

What development environment will be used during the Challenge?  コンテストでの開発環境は?

The Parallel Challenge will run on the Eclipse Platform.  Eclipse was originally developed by IBM as a common, easy-to-use interface that provides a consistent "look and feel", regardless of which vendor's tool you prefer.   IBM donated this open source code to a new community of software tool vendors and eclipse.org was born.   Eclipse runs on a variety of platforms, including Linux and Windows. The Parallel Challenge will use the C/C++ Development Tool (CDT), a plugin which adds C/C++  program development capability to the Eclipse Platform. 

パラレルチャレンジはEclipseプラットフォームで行われる。Eclipseはすごい、超すごい。パラレルチャレンジではCDTをつかう。

Learn more about Eclipse

Download a free copy of Eclipse

Learn more about the CDT

Download the free CDT plugin for Eclipse

What do I need to know ahead of time to compete?  前もって何を知っておけば戦える?

You do not need to know how to write parallel programs!  All that you will need to know will be covered as part of the event. You do need to have some knowledge of object-oriented programming.  Some familiarity with the Eclipse development environment (see links above) would help.  IBM will be demonstrating Eclipse in the IBM CyberCafe on Sunday and Monday evenings, and it would be a good idea to attend one of these demonstrations.

並列計算プログラムの書き方を知っている必要はない!イベントの一環として必要なことは教えられる。オブジェクト指向の知識も必要ない。Eclipse開発環境に慣れていると有利かもしれない。IBMは日曜日、月曜日にCyberCafeEclipse環境を展示するので、これらの展示に参加するのはよいアイデアだ。

How do I participate? 参加するには?

All World Finals Teams are automatically eligible to participate. The specifications for the environment and problem will be distributed Tuesday morning at the start of the Parallel Challenge. Following the problem distribution, teams will have time to study the problem and will then be given access to the competition floor to begin code development. Submissions will be accepted until the end of the coding phase, and the tournament will take place during the IBM Dinner that evening.

世界大会参加チームは自動的に全員参加資格を持ちます。問題と開発環境についての詳細は火曜日朝、パラレルチャレンジの開始時点で配布されます。問題が配布された時点から、チームは問題を考える時間と、コードを開発できる競技エリアへのアクセスを得ます。コーディング部門の終了時刻までsubmitは受け付けられ、トーナメントはその日の夕食の間に行われます。

What's the payoff, anyway?  賞品は?

You have to ask that question? First, and most important, the Parallel Challenge will be fun – it’s going to let your team put its programming skills into head-to-head competition with other teams. But that's not all. IBM is coming up with nifty goodies for the winning teams. You'll have to wait until the Challenge itself to see exactly what they will be!

聞かずと知れたこと。パラレルチャレンジは面白い!チームのプログラミング能力を他のチームと対決させることができるんだから。でもそれだけではない。IBMはよい成績を上げたチームに素敵な賞品を提供します。賞品の詳細は当日まで秘密。

Where can I see some information about the ICPC Challenge in previous years? 去年までのICPCチャレンジの過去問は?

This is the first year of the Parallel Challenge, so it’s a brand new and unique experience.  However, the overall format (except for the “parallel” part and, of course, the actual problem) will be similar to prior years’ Challenge events.  Here are some links for those events:

パラレルチャレンジをやるのは今年で初めての、新鮮な体験です。それでも(parallelを除けば)だいたいの形式は去年までのと同じなんで、過去のコンテストは参考になるかもしれませんね。

q       In 2004, teams developed programs simulating Knights and Peasants capturing other team’s Castles while at the same time defending their own turf in an event known as CodeRuler!

View the 2004 Challenge Problem Set!

View the 2004 Winners!

q       In 2003, teams wrote programs to drive a race car around a track while trying to avoid crashes with other teams’ cars as well as other hazards on the track; the event was known as CodeRally!

View the 2003 Challenge

q       In 2002, teams were required to build Wizards that competed against each other in live matches – casting spells and throwing fireballs at each other!

View the 2002 Challenge Screen Shots

View the 2002 Wizard Guide manual (pdf)

 Any of the above information may change at anytime without any notice, so please check back for updates.