ヤマト運輸プログラミングコンテストに関して
AtCoder代表取締役社長のchokudaiです。ちょっと説明が届いてない+誤解も含まれている、と思う点があるので、Twitter発信だけでなくblogでも発信しておきます。
要約すると、
みたいな内容です。
今回の話の前提について
ヤマト運輸プログラミングコンテスト2019が、先日発表になりました。
公開当初は「ヤマト運輸すごい!」みたいな意見が多かったんですが、主にはてなブックマークや、競プロ界隈外のTwitterから、
- 著作権譲渡は良くないのではないか?
- コンテストの形をした、実質外注のやりがい搾取ではないのか?
と言った意見がそれなりに出てきている状態です。それについてコメントしていきたいと思います。
著作権の扱いは要議論、責任はAtCoderにあります
著作権譲渡に関しては、少なくともAtCoder内ではあまり議論が行われおらず、他コンテストなどの前例に合わせて設定していることが多いです。
ヤマト運輸さん側の思惑はAtCoder社では把握していないですし、していても書けないですが、過去に開催された直近のコンテストでも同様に「著作権譲渡」が設定されているものがありまして、その前例に従っただけ、だと考えています。
どちらにせよ、プログラミングコンテストの開催のプロフェッショナルであるAtCoderから、「今回のコンテストの趣旨が~~であるため、〇〇、〇〇、〇〇の利用を行うために、このような設定になっております。〇〇や〇〇については問題ありません。」と発信できないのは、脇が甘いとしか言いようがないです。申し訳ありません。
現在法務と相談中であり、著作権の扱いについて変更するにせよしないにせよ、このあたりを適切に発信できるようにしたいと考えています。
このあたりの対策不足で、スポンサー企業様に迷惑をかけてしまう形になったのは本当に申し訳ないと思ってますし、早急に対策したいと考えております。
ここに関しては、参加登録開始前に話題になって本当に良かったと思ってます。登録開始が延期されたようなので、この点を整理してから参加登録、という形になると思います。
賞金額については一般的な相場通りです
今回のコンテストは2週間のコンテストなのですが、「2週間のコンテストで賞金総額が100万円」というのは、主に海外のコンテストと比較しても、特に安いとは言えません。弊社からもヤマト運輸さんに、「2週間コンテストなら総額100万円が相場ですよ!」って伝えています。
昔の話となりますが、僕がNASA開催のコンテストで上位入賞し、スペースシャトルに詰め込む医療物資の選定のコードが実運用されたのですが、その時に支払われた賞金は$500とかだったりします。(ただし、スペースシャトル発射の無料観覧券はついてきました。交通費自腹ですが。)
比較対象を見つけるのは難しいんですが、実務寄りでこの形式に近いのはtopcoder marathonかなぁと思っていて、大体こんな感じです。
そんなに高くないですし、高めの金額を出しているのは気合が入ってるのか、そうじゃないと人が集まらないのか、そんな感じでしょう。
AtCoderでの前例でもほぼ同じ額です。
Weathernewsプログラミングコンテスト:賞金総額30万+成果 (合計54万くらいになりました)
気象衛星から送られる情報の中でもデータ量が特に多い、「衛星画像」を圧縮するコンテストです。bz2圧縮と比べて24%の改善が行われました。
北大・日立新概念コンピューティングコンテスト:賞金総額47万
新概念コンピューティングに関連するテーマを題材に出題を行っています。
2017のコンテストで考案されたアルゴリズムは、国際会議TPNC2018にて発表され、北大・日立で実運用に向けた検討を実施中となっております。
Asprovaプログラミングコンテスト:賞金総額36万円
生産スケジューラをテーマとしたコンテストです。
前述した権利関係については、著作権譲渡を記載しているものも記載していないものもありますが、賞金額についてはこんな感じでした。相場はこれくらいの感じです。
多分、賞金額の比較でイメージをしているのは、Netflix Prizeあたりなんじゃないでしょうか?
このように、本当に実運用に使うことを見越して、賞金額をガッツリ出す、というようなコンテストは、期間がとても長く設定されています。このコンテストでは3年間の期間があり、今回開催するコンテストとはスケールが違います。
Kaggleなんかもかなり実務に近いコンテストがありますが、「数か月の開催」「外部データの利用あり」「仕様書の提出義務」みたいなのがあるらしく、これは本当に実務っぽいなあ、というのは、確かに思います。
例えば、「今回提出されたコードを実運用に繋げるために必要な手続き」とかを優勝者が要求される、とかだったら、完全にお仕事だと思いますし、それはコンテストとは別で契約されるべきだと考えています。仕様書を書いたりとか、仕様に合わせて改善したりとか、コンテストに合わせて標準入出力ベースだったのを変更したりとか。(参加者さん、無償で受けちゃダメだよ!!!)
ただ基本的に、プログラミングコンテストって言うのは、「参加者が楽しいと思わない問題であれば誰も参加しない」というものであり、それを解決するために、「賞金を吊り上げる」か「出来るだけ楽しい部分だけを抽出する」という、どちらかを行うわけです。「AtCoderのシステムを提供して、競い合う楽しさを生み出す」というのも、後者の一部に含まれますが。
前者であれば「研究開発そのままだから高額を出すべき」と言えると思いますし、後者であれば、「研究開発ではなくコンテストなので、コンテストとして一般的な賞金額で良い」となるのは、まぁ普通かなぁ、と思ってます。
どちらも満たさなかった場合? これについては問題ありません。誰も参加しなくなるだけなので。「賞金」もなければ「やりがい」もないコンテストには、まぁそんなに参加者は集まらないと思います。AtCoderのコンテスト参加に義務はないですし、だからこそ楽しいコンテストを提供していかないといけないわけです。
そもそも成果物をそのまま使用するコンテストなの?
これについては、まだ問題が確定していないですし、したとしても問題内容のネタバレになってしまうため、言及することが出来ません。申し訳ありません。
(凄いストレートに思っている事を書くと、「テーマにした」って書いてあるだけなので、違うと思うんですが、アイデアの部分利用をしたい、とかはあるかもしれないので、色々断言はできない、くらいです。)
一般的な話を言えば、2週間のコンテストで研究開発レベルのものを提出出来る、というのはなかなか難しいですし、2週間という期間でそのようなコンテストを開催するとはあまり思えないです。ただ、Weathernewsプロコンや日立プロコンのように、1か月で十分な成果を出していることもありますので、これだけでは判断が付かない、という部分はあります。
(追記)コンテストの主な開催目的って?
例に挙げた、実務に近いコンテストは少数であり、大半のコンテストは、「優秀なエンジニアの採用目的」でコンテストを開催しています。ですので、「コンテストを開いているのだから実運用を考えていないわけがない」ということはありません。
コンテストの優秀作品を実務転用するのは悪い事?
正直、僕としては、「これまで賞金も何もなかったコンテストが、実務と上手い事繋げる事によって賞金アリに出来たよ!わーい!」って感じだったんですが、賞金額から、「やりがい搾取」と感じている競プロ界隈外からの人が多く、なかなか難しいなぁ、と思ってます。
コンテストを用いてアルゴリズムを募集し、実運用する、という試みは、10年以上前から行われています。NSAなども頻繁にコンテストを開いており、NASAなんかは、コンテストの結果を受けて、コンテストを継続開催するためのNASA Tournament Labを立ち上げたりもしています。
もちろんこれらの賞金額は相場通りであり、そんなに高くありません。賞金総額25000ドルくらいまでは見かけた気はしますが。
このように、海外でも多くのコンテストが開かれていますし、NASA Tournament Labが出来た時などは、ネガティブな声は全く聞こえなかったと思います。
ただ、はてなブックマークなどのコメントを見ると、これらの行為が、「コンテストを用いたやりがい搾取である」という意見がそこそこ出ているようです。
やりがい搾取についてはコメントが難しい
正直、コンテスト側の立場から見ると、
- コンテスト参加者は、競い合える問題が増え、なおかつ名誉や賞金が増えて嬉しい
- AtCoderは、実務に関係がある題材であるため、お仕事が取れやすくて嬉しい
- スポンサー企業は、ブランド向上や採用目的だけでなく、成果物も活用出来て嬉しい
と三方が得している状況、と考えていて、とても良いものだと考えていました。
ですが、AtCoderを悪く見ようとすると、例えばこんなロジックが考えられます。
- AtCoderは、オンライン上に無償の労働力を生み出すために、コンテストを開催し、「AtCoderのコンテストはネットゲーム」という感覚を生み出している。
- その感覚のまま、実務直結のコンテストを混ぜ込み、コンテスト参加者に無償労働をさせている
確かにこんな構図、と考えられると、「やりがい搾取」と言われるのかなあ、という感じはしています。もちろんこんなことを言われても困るんですが……。
特に、やりがい搾取を用いた無償労働については、はてな界隈では話題になってますから、「新しい手口だ!」と盛り上がるのはまぁ仕方ないかもしれません。例えばこれとか。
さて、こう言われるとどうしたらいいのか、正直僕にはわかりません。もちろん、AtCoderが「ネットゲーム」だと主張してきたのはそんな意図ではなく、僕自身がそのネットゲームの重度の廃人で、そのゲームを共有したかったからです。実務でのコンテストに繋がるようになってきたのはとても良い事だと思ってたいたのですが、これに対する反論をどうしたら良いのかよく分からないです。
当人同士が全員得しているから良い、と主張したいのですが、多分やりがい搾取系の話って、当人同士で満足してれば良い、という話でもないんですよね。どうすれば良いんだろう……。
ちょっとこれについてはもう少し考えたいと思います。悪い事をしているつもりは全くないんですが、悪い事なんですかね……? 純粋に意見が聞きたいです。
賞金額が大きいコンテストももちろん募集中です
AtCoderとしても、「これが改善出来れば莫大な成果が生み出せるので、莫大な賞金を懸けてコンテストをやります!」みたいなコンセプトのコンテストは開きたいと思ってます。今回は残念ながら、そういった目的のコンテストではありません。
そういったコンテストももちろん募集しているので、何かありましたらAtCoderにぜひご連絡ください!
まとめ
今回の件は、「著作権譲渡」の記述についての反対意見が多くあり、それに合わせて、やりがい搾取等の意見が出ていると思うので、著作権についての扱いを修正すれば、色々考えるべきことはあるものの、恐らく問題視されるものではない、と考えています。
著作権の件については、前述の通り、真っ先に検討をするべき事項であり、現在確認を行っています。出来るだけ早く良い報告を出来ればと思っています。
この度は、お騒がせしてしまい申し訳ありません。今後ともAtCoderをよろしくお願いします。