論文番号

２０１２－全体－４

平成２４年度全国情報技術教育研究会
第４１回全国大会（新潟大会）
研

究題

目

コミュニケーション能力の育成と言語活動の充実を目指した取組～全国高校生プログラミングコンテスト 3 連覇の取組を通して～

期
場

日所

平成２４年８月９日(木)～１０日(金)長岡市
シティホールプラザ「アオーレ長岡」
宮城県工業高等学校
情報技術科
平子 英樹

コミュニケーション能力の育成と言語活動の充実を目指した取組～全国高校生プログラミングコンテスト 3 連覇の取組を通して～
宮城県工業高等学校
情報技術科

平子英樹

１．はじめに昨年度，全国情報技術教育研究会（以下全情研）主催の全国高校生プログラミングコンテスト（以下高校プロコン）において，本校情報研究部が 3 年連続第 1 位を達成することができた。
本研究の発表においては，高校プロコン競技の内容や 3 年連続第 1 位へ向けての取組を紹介するとともに，その取組の中で重要視したコミュニケーション能力の育成や言語活動の充実を目指した活動について紹介し，今後の教育活動等の充実に資するものにしたいと考えている。
２．全国高校生プログラミングコンテスト（通称：高校プロコン）について
全情研主催の高校プロコンは，昨年度で第 32 回を迎えた歴史のあるプログラミングコンテストである。以前は生徒が自由にソフトウェアを制作する作品提出型のコンテストだったが，数年前からは課題に沿ったプログラムを制作し，対戦形式で勝敗を決定する競技コンテストとなった。
なお，昨年度の競技「CHaser （チェイサー）2011」は 2008 年度より開始され，競技仕様の一部が毎年変更されている。
１)

CHaser 競技の概要
CHaser 競 技 は ， サ ー バ ー か ら わ ず か に 与 え ら れ るフィールド内のハートのアイテムやブロックの情報をもとに，競技者 A である Cool(クール)と競技者 B である Hot(ホット)が，フィールド内にある妨害ブロックや相手からの攻撃をかわしながら，多くのアイテムを取得する競技である 。 競 技 仕 様 等 は 全 情 研 の ホ ー ム ペ ー ジ（http://www.zenjouken.com/）で公開されており，初心者でも参加できるように参考プログラムも配布されている。
２)

CHaser 競技において勝つためのポイント
この競技は一度始まると，与えられる情報をもとにプログラム自身が判断して動作する。そのため，いかに効率よくハートのアイテムを発見し，すみやかに移動してそのアイテムを取得するか，相手の動きを読みながらいかに移動するかというアルゴリズムの優秀さや，動作不良となるバグをどれだけ無くせるかが大きなポイントとなっている。
本研究部では，相手の攻撃を避けながら複数あるハートのアイテムを効率よく取得するにはどのような動きをすればよいかという大前提の課題へむけて，部員間でアィディアを共有しながらプログラム制作を進めている。また，目標に対して最小の移動経路で動作する最短経路アルゴリズムなどを部員全員の話し合いの中で考案していくこととしている。あわせて，動作不良の原因となるバグを極限まで減らすため，ある推論をたてて数千におよぶテスト作業を通して，プログラム動作効率の向上を目指してきた。
３．情報研究部について
本研究部は数年前まで「計算部」という名前で，部員がたった 1 名のみの実質休部状態であった。
そこで，入学したばかりの 1 年生 2 名を加えて活動を再開し，コンピュータプログラミングを中心に活動することにした。再開当時はコンピュータなどのハードウェア機器やソフトウェア環境が整わず，生徒と共に苦労しながら活動してきた。
その様な中，全情研が主催しているプログラミングコンテストがあることを聞き，2007 年に行われた Target Search 2007 競技に初めて参加した。この大会への出場をきっかけとして，他のプログラミングコンテスト等へも積極的に参加するようになり，生徒の頑張りの成果として昨年度は以下に示す戦績を残すことができた。
大会

名

成

全国高校生プログラミングコンテスト

第1位

U-20 プログラミングコンテスト（内閣府等主催）

経済産業大臣賞

第 9 回日本情報オリンピック（JOI 主催）

北海道・東北地区ブロック優秀賞[第 1 位]

パソコン甲子園 2011(会津大学主催)

プログラミング部門出場

A3 ｺﾝﾃｽﾄ 2011(ｱﾝﾄﾞﾛｲﾄﾞ学生奨励賞

WRO

Japan競技大会

ｱﾌﾟﾘｺﾝﾃｽﾄ)（ﾚｺﾞﾛﾎﾞｯﾄ競技大会）(2009,2010,2011績
3 年連続)(2010 商務情報政策局長賞)

東北地区第 1 位（3 年連続全国大会出場）

3 年前に部名を「情報研究部」と変更し，周囲から体育会系文化部と呼ばれるほど，連日フルに活動してきた。今年度は部員が 24 名に増え，さらに活動の幅を広げられるようになった。部活動と学業の両立はもとより，高校生として日常生活を大切にするという姿
勢が何より大切であり，成果へ密接に関係するという信念のもと，ていねいな挨拶をすることや時間をきちんと守ることなど，基本的生活習慣を徹底するように指導している。
４．高校プロコンへ向けての取組
高校プロコンへ向けての取組は，競技仕様が発表される 6～7 月頃から全国大会が行われる 11月までの約半年に渡る。高校プロコン競技の大まかな日程は右のとおりである。
他にも各種コンテストへ出場しているので，複◎「高校プロコン競技」の日程
６～７月 競技仕様発表
ス
テ【予選作品制作期間】
ージ ８月下旬大会参加申し込み
Ａ
予選作品提出数の作業を同時進行で，まさしくマルチタスクで取組んでいる。
本研究部では，競技仕様発表から予選作品を提出するまでの期間をステージＡ，予選結果発表後から全国大会までの期間をステージＢと区切って全国予選(事務局で実施)
ス 10 月初旬
テ【決勝作品制作期間】
ージ
Ｂ 11 月20 日 全国大会(予選を勝ち抜いた8 校)(埼玉県桶川市で実施)

活動している。
１)

ステージＡの取組
ステージＡのおもな取組は右のとおりである。まず，はじめに全員で競技仕様を徹底的に読み込み，どのように進めていくか計画を立てている。その際，ブレインマップを活用している。ブレインマップ作成後は部室内に掲示して，いつでも見られるようにしている。
なお，ブレインマップについては後述する。
活動方針や大会参加メンバーを決定するため◎高校プロコンへ向けての取組 【ステージＡ】
６～７月 競技仕様発表・ブレインマップ
競技参加準備作成
校内方針発表・ミーティング
プログラム制作期間
活動(作品制作)・先輩から後輩へ
７月下旬 第１回部内予選会の技術指導
８月中旬 第２回部内予選会◎コミュニケーシ
８月下旬 第３回部内予選会
予選エントリーメンバー
および提出作品決定

ョン能力の育成
ならびに言語活動の充実を目指した取組

の部内予選会の流れを顧問が発表した後，生徒たちはプログラム制作作業に入る。言語はおもにJAVA 言語や C#言語を用いている。
また，日々の取組の中で，「ミーティング活動」，「先輩から後輩への技術指導」を常に行い，互いを高めていく。これら日々の活動はコミュニケーション能力の育成ならびに言語活動の充実につながっていると考え，重要視している。
２)

メンバー決定のための部内予選会
部内予選会は 7 月下旬・8 月上旬・8 月中旬の 3 回に分けて実施している。順位の付け方は高校プロコンで行っている方式ではなく，独自に決めたポイント制度で行っている。
部内予選会を行うことについては，上級生と下級生の関係なく一生懸命努力して結果を出している生徒を選びたい，という意図がある。昨年度の選抜メンバーは 3 年生 2 名，2 年生 2 名，1 年生1 名の 5 名となった。その中で，ポイント上位 3 名の生徒の作品を予選作品として提出した。

対戦の様子
３)

動作解析の様子

結果一覧表

ステージＢの取組
予選は全情研事務局で実施され，インターネット上で結果が発表される。昨年度は初めて予選において 1 位となり，追われる側のプレッシャーを感じながら全国大会への準備を進めてきた。
全国大会へ向けては，予選時のプログラム完成度をさらに向上させるために再び部内予選会を実施し，大会１週間前までに3 作品へ絞り込む作業を行った。

◎高校プロコンへ向けての取組 【ステージＢ】
10 月初旬 全国大会へ向けてのコーディング開始
10 月中旬 全国予選実施（事務局において実施）
結果発表(参加55 チーム中8 チーム選抜)
10 月下旬 第４回部内予選会
11 月初旬 第５回部内予選会
11 月14 日
昨年度
テスト作業
初めての～・バグ修正
・アルゴリズム修正
取組！
17 日
11 月18 日 全国大会作品決定
11 月20 日 全国大会(埼玉県桶川市)

昨年度初めての試みとして，部員全員でプログラムエラーの排除やアルゴリズムの修正を行い，プログラムの質を高める取組を行った。
この作業は連日夜遅くまで続き疲労もピークに達したが，「全国大会において動作不良で負けるという悔しい思いを絶対にしない！」という強い意気込みで，様々なテストパターンを用意して実行し，部員一丸となってテスト作業を行った。 3 連覇を達成することができたのは，このテスト作業を限界まで続けられたことが大きなポイントだったと感じており，また互いに支え合っているという信頼関係も大きく影響していると考えている。

テスト作業の様子

対戦結果表（約 2000 対戦）

バグ摘出一覧表５．コミュニケーション能力の育成と言語活動の充実を目指した取組
本研究部では高校プロコンをはじめとする各種コンテストにおいて，目標とする成績を収めることができるよう様々な取組を行っている。その中での互いのコミュニケーションや，言語活動の充実が大きな役割を担っていると考えており，新しい目標に向かって邁進していくさなか，その能力を育むことが目標達成の最短であり，生徒が将来にわたり社会で活躍できる一助になると確信している。
以下に紹介する。
１)

ブレインマップ
ブレインマップとは，ブレインストーミングとマインドマップを参考にした独自の手法と名称である。ブレインストーミングとは，集団でアイデアを出し合うことによって互いの発想を豊かにしていく手法であり，マインドマップは表現したい概念の中心となるキーワードやイメージを図の中央に置き，そこから放射状にキーワードやイメージを繋げていくことで発想を延ばしていく図解表現技法である。
生徒たちにはルールに縛られることなく自由闊達に発想してほしいと考え，その両方の目的を兼ねた手法としてブレインマップと名付けた。
右図が，昨年度のプログラミングコンテストへ向けて作成したブレインマップである。大きさは模造紙を 2 枚つなげたものとなっている。昨年はプログラミングコンテスト 3 連覇を目指していたので，3 連覇するにはどうしたらよいか，生徒たちに自由ブレインマップに考えさせた。
ブレインマップは，まず中心に目標を書いて円で囲む。次に，目標を達成するためにはどうしたらよいかを自由に発想し記入していく。これを繰り返し，関連する事柄をつなげて放射状に広げていく。
作成のポイントは，制約を設けず自由に発想させることである。相手の意見を否定しないことが重要で，相手の意見をどんどん発展させられるように働きかける。一番のポイントは，顧問は参加していないことである。顧問が入らず，生徒の自由な発想展開に期待をしている。

ブレインマップ作成の様子

作成したブレインマップは掲示して，いつでも確認できるようにしている。掲示したマップを何度も見合い，そしてミーティングにおいて互いの考え方を深めながら新たな発想を見いだす中で，良い成果を出すためには個人力には限りがあること，そして他の考え方を十分に理解して進めていくためのコミュニケーションが大切な要素であることを理解する。これにより，「互いを尊重すること」，「相手をよく見て，良いところを見いだすこと」の重要さを自然に体得できたものと感じている。
２)

ミーティング活動
本研究部では部活動をより楽しく，そして有意義な高校生活をさらに充実したものにするため，互いのコミュニケーションと言語活動を育む直接的なものとしてのミーティング活動を重視している。下表が平日の活動時間であるが，大きな特徴が 2 つある。一つ目は，ミーティングに要する時間である。毎日 30 分から 40 分の時間をかけて行っている。それも活動の終わりではなく，前半活動と後半活動の間に行うようにしている。
ミーティングでは，一人ずつ「今日一日の活動内容」◎情報研究部の活動時間【平日】15:30～18:00 前半活動
18:00～18:30 ミーティング
18:30～
後半活動

や「これから取り組む内容」，「技術的に困っていること」を自由に話している。それに対して他の部員と顧問が自由にアドバイスを行う。アドバイスを受けた生徒はそれを後半の活動につなげ，自由に好きなだけ取り組む。活動の途中にミーティングを行う目的はここにある。
このミーティング活動を続けてきた結果，技術を高め合おうとする力と，自分の考えを適切に伝える力が育ってきた。さらに，当初の悩みであった，部活動としてのまとまりや先輩後輩という適切な上下関係が構築できていると考えている。
３)

ミーティングの様子

先輩から後輩への技術指導
これらの取組を行っていく中で，先輩が後輩を指導するという伝統ができあがってきた。新入生はまずＣ言語の基礎の指導を受け，その後先輩から毎日課題を与えられ，分からなければ丁寧にアドバイスを受けてクリアしていくという方法がとられている。
高校プロコンは 5 年目の参加であったため，それまでの間に取組方法やプログラム作成法についての積み重ねができていたと感じている。顧問は活動の状況を見て年度の取組方針だけを立て，あとは部員間で教え合いながら活動するというスタイルが定着した。これもブレインマップの作成やミーティング活動を通して，最短経路導出のアルゴリズムを指導している様子部員間のコミュニケーション・信頼関係が保たれている結果であり，その結果として「皆でしっかりとフォローし合うこと」もできていると感じている。
昨年度の高校プロコンのメインプログラムには 1 年生の作品を採用している。入学して間もない生徒が全国優勝するプログラムを作成できたのも，先輩から後輩への技術指導がスムーズに行われていたこと，そして新入生の新たな発想をつぶさず取り上げ，皆で練り上げてきた成果であると確信している。
６．第 32 回高校プロコン（CHaser 2011）全国大会について
昨年度の全国大会は 11 月 20 日（日）に埼玉県桶川市にある「さいたま文学館」で開催され，全国 55 チームの中から選ばれた 8（校）チーム（右表）が集結した。
大会では予選の順位に関係なく抽選を行い，トーナメン
ト式で勝敗を競った。本校は 1 回戦，２回戦と勝利することができた。各対戦の結果は以下のとおりとなっている。
いよいよ決勝戦。予想どおりの接戦となり，手に汗握る好ゲームとなった。
第 1 ゲームは本校がわずかに一手上回り，相手の動き

CHaser2011 決勝大会出場校(8 校)北海道小樽工業高校
北海道旭川工業高校
埼玉県熊谷工業高校
埼玉県三郷工業高校
埼玉県越谷総合技術高校
福岡県三池工業高校
長崎県長崎工業高校
宮城県工業高校

を封じ込めることができて 1 ポイント差で先制し，第 2 ゲームは逆にアイテムを取得され，1 ポイント差で敗れた。
相手高校は，第２ゲームまでかなり効率よくハートのアイテムを取得して，フィールド内を無駄なく移動するプログラムができており，バグも見つからなかった。この時点で 1 勝 1 敗であり，いよいよ優勝決定の第 3 ゲームとなり，緊迫した戦いが予想された。
スタート直後，両校ともアイテムの場所を見つけ出すことができなかったが，本校が相手高校よりも先にアイテムを見つけ出すことに成功し，その結果，相手高校にアイテムを 1 つも取られるこ

決勝大会トーナメント表となくすべて取得して，勝利を収めることができた。
勝因は，アイテムを効率よく見つけて移動するアルゴリズムが相手高校より少しだけ勝っていたことだと思われる。
７．まとめ
数年前の廃部寸前の状態から，ここまで活動を盛り上げることができたのは，高校プロコンのおかげといっても過言ではなく，生徒と共に学び合えたことは大変うれしく思っている。この取組を通して大きく得られた成果として感じている事が以下の 4 点である。
○プログラミングスキルの格段の向上○心・技・体の総合力の重要性○夢中になって取り組むことの素晴らしさの体得○自信と誇りを持つことの優位性
特に感じた 2 点を紹介する。
１)「プログラミングスキルの格段の向上」
高校プロコン参加当初は，私がプログラミングの方法を一つ一つ教えていた。また，共にプログラムを作成し対戦相手になるなど，マンツーマンの指導をしていたと記憶している。
しかし現在では，自分たちでどんどんプログラミングができるようになり，数千行にわたるプログラムも難なく作るようになった。また，効率よくプログラムを作成し動作チェックを行うためのツールも，オリジナルで作り上げるまでになっている。

マップ生成および自動実行ツール（生徒自作）

フリーソフトウェアサイト「ベクター」にて生徒が制作したソフトウェアを配布中

力をつけるにつれて，高校プロコン以外のプログラミングコンテストへも積極的に参加できるようになったが，今後もさらに活動の幅を広げていきたいと思う。
また，自分たちが身につけたプログラミングスキルを人々のために役立てようというプロジェク
トを行っている。まだ大きな成果は見られないが，生徒とともに積極的に取り組んでいきたい。
２)「自信と誇りを持つことの優位性」
高校プロコンで第 1 位になったことで，NPO 法人 IT ジュニア育成交流協会より IT ジュニア賞を 3 年連続でいただいている。この賞は，将来の日本を担う IT ジュニアを応援していこうという志から設けられ，BCN 社が主催する BCN AWARD という，優れた IT 機器を表彰する式の中で授与される。
当日は数百人が集まる盛大な授賞式の中で，生徒たちは日本の IT 業界の第一線で活躍している企業から賞状やトロフィーを授与され，お褒めや励ましの言葉をいただいた。この受賞によって，生徒たちはこれまで取り組んできたことに対して，大きな自信と誇りを持てるようになった。

平成 24 年 1 月 25 日に開催された IT ジュニア賞 2012 表彰式
８．おわりに
私は当初，高校プロコンで勝つためには「技術力」が大切であると考え，その向上を最重要視して取組んだ。しかし現在，「技術力」を身につけただけでは結果へ結びつかないと感じている。
勝つためには「技術力」はもちろんのこと，またそれ以外に何が必要なのかを考え，試行錯誤を重ねた。その結果，ブレインマップ作成や日々のミーティング活動などを通して，互いのコミュニケーションの確立・言語活動の充実を図ることが大切であるという考え方に至っている。
このような取組を継続した結果，本研究部全体のプログラミングスキル等の「技術力」も高まり，各種コンテストにおいて結果を残せるようになった。
しかし，「技術力」を高めるために行ってきた技術以外の様々な取組は全く補助的なものではなく，実は「技術力」を身につけるためのベースになるものであり，同等であると思えてならない。「技術力」を高める前に，また同時にそのベースをしっかりと作り上げることが大切であり，必ずや求める結果につながっていくものと強く思うようになっている。
今回は全く別な視点での発表とさせていただいた。今後もこれらを大切にしながら「技術力」の向上に努め，よりよい教育活動を目指していきたいと考えている。
最後に，高校プロコンを運営されている全情研事務局の先生方，そして日ごろの活動を支えていただいている多くの皆様に深く感謝申し上げると共に，高校プロコンがさらに発展することを祈念して結びとさせていただきます。ありがとうございました。