学校の先生が教育現場で使えるChatGPTテクニック〜シーン1 席替え〜
ChatGPTの活用により、教師の皆さんの負担を軽減することが可能だと私たちは信じています。そのため、教育現場で役立つテクニックをいくつか紹介していきたいと思います。
第一弾は、どこの学校でも必ず行うであろうこのような「席替え」です。
「席替え」を単純にランダムに座席を割り当てるだけなら簡単ですが、特定のルールに基づいて席替えを行う場合、一筋縄ではいきません。
例えば、次のようなルールを考えてみましょう。
隣り合うと騒がしいメンバーがいるので座席を話したい
視力が低い生徒がいるので、座席を黒板の近くにしてあげたい
これらの制約を考慮すると、席替えは一筋縄ではいかなくなります。
「Code Interpreter」を利用した席替え
このような制約が入ると、正確にアルゴリズム通りにできることが重要です。アルゴリズムを処理するのが得意なのは、プログラミングです。そのため、ChatGPT-4のCode Interpreterを利用します。
参考までに、下記がCode Interpreterの記事です。どうやって使い始めるかどうか分からない方は見てみてください。
プロンプトには、生徒の特性や席替えに関するルールを記述します。
生徒ID(出席番号)と座席番号を割り当てることで、個人情報の保護にも配慮した、実際のプロンプトは下記の通りです。
あなたは学校の先生です。学校の席替えの座席レイアウトを作れるプログラムを作成して実行してください。
# 生徒の人数
24名
※生徒40名は生徒ID(1〜24)で管理
# 生徒の特徴
生徒IDが5と8と15の生徒は、目が悪いため黒板の近くが良い
生徒IDが12と15の生徒は一緒にいると騒がしくなるので座席は離したい
生徒IDが11と13と21の生徒は一緒にいると騒がしくなるので座席は離したい
# 座席番号とレイアウト
黒板
---------------------------
1 2 3 4 5 6 7 8
9 10 11 12 13 14 15 16
17 18 19 20 21 22 23 24
# ルール
座席番号1から8までが最も黒板に近い
目が悪い生徒は座席番号が1から8までにいる必要がある
一緒にいると騒がしい生徒は前後左右斜めで隣り合わないようにする
すると、ChatGPT-4(Code Interpreter)は制約条件の確認を行い、処理手順を説明してくれます。そして、Pythonで実装したプログラムを生成し、それを実行します。
続けてもらうと、下記のようにプログラムを実行し始めました。
結果として得られる座席レイアウトは、全ての制約を満たしています。
注意点としては、特定の制約を満たす解が存在しない場合もあることです。プログラムは可能な限り良い解を見つけるように試みますが、常に最適な解が得られるわけではありません。
作成されたPythonのプログラムをチェック
結論を見ると、全ての制約をクリアしています。完成したPythonのプログラムを確認します。下記のプログラムは一部抜粋しています。
ちなみにプログラムの処理上、インデックスが0からに変更されてます。
import numpy as np
# 生徒の数
total_students = 24
# 生徒IDのリストを作成
students = list(range(1, total_students + 1))
# 特別な注意が必要な生徒のリストを作成
poor_sighted_students = [5, 8, 15]
noisy_students_group1 = [12, 15]
noisy_students_group2 = [11, 13, 21]
# 座席のレイアウトを作成
seating_layout = np.zeros((3, 8))
# これらの位置に生徒が座ると、その生徒は他の生徒と隣接している
adjacent_seats = {
0: [1, 8, 9],
1: [0, 2, 8, 9, 10],
2: [1, 3, 9, 10, 11],
3: [2, 4, 10, 11, 12],
4: [3, 5, 11, 12, 13],
5: [4, 6, 12, 13, 14],
6: [5, 7, 13, 14, 15],
7: [6, 14, 15],
8: [0, 1, 9, 16, 17],
9: [0, 1, 2, 8, 10, 16, 17, 18],
10: [1, 2, 3, 9, 11, 17, 18, 19],
11: [2, 3, 4, 10, 12, 18, 19, 20],
12: [3, 4, 5, 11, 13, 19, 20, 21],
13: [4, 5, 6, 12, 14, 20, 21, 22],
14: [5, 6, 7, 13, 15, 21, 22, 23],
15: [6, 7, 14, 22, 23],
16: [8, 9, 17],
17: [8, 9, 10, 16, 18],
18: [9, 10, 11, 17, 19],
19: [10, 11, 12, 18, 20],
20: [11, 12, 13, 19, 21],
21: [12, 13, 14, 20, 22],
22: [13, 14, 15, 21, 23],
23: [14, 15, 22]
}
特別に注意が必要な生徒は、先に座席配置を決めるためにリストを生成したり、座席が隣ということを辞書型リストで保持したりするなど、アルゴリズムをプログラムで実装しています。
ChatGPT-3.5を利用した席替えは失敗
ちなみにChatGPT-3.5を使って、上記の問題に挑戦してみました。
以下のように指示を出します。生徒の人数、特性、座席レイアウト、ルールをプロンプトで指定します。
あなたは学校の先生です。学校の席替えの座席レイアウトを作成してください。
# 生徒の人数
24名
※生徒40名は生徒ID(1〜24)で管理
# 生徒の特徴
生徒IDが5と8と15の生徒は、目が悪いため黒板の近くが良い
生徒IDが12と15の生徒は一緒にいると騒がしくなるので座席は離したい
生徒IDが11と13と21の生徒は一緒にいると騒がしくなるので座席は離したい
# 座席番号とレイアウト
黒板
---------------------------
1 2 3 4 5 6 7 8
9 10 11 12 13 14 15 16
17 18 19 20 21 22 23 24
# ルール
座席番号1から8までが最も黒板に近い
目が悪い生徒は座席番号が1から8までにいる必要がある
一緒にいると騒がしい生徒は前後左右斜めで隣り合わないようにする
結果は下記の通りです。
ChatGPT-3.5はこれらの情報を基に席替えのレイアウトを作成します。しかし、結果を見ると、下記のルールが反映されていません。
生徒ID8の生徒が一番前の列にいない
生徒IDの11と13と21の生徒が隣り合っている
通常のLLMのように、言語のつながりから推測するモデルではやはりアルゴリズムを正確に実施するのは難しいです。
AIを活用した校務負担軽減へ
本記事では、ChatGPTとCode Interpreterを活用して学校の席替え問題を解決する方法を紹介しました。これは一例に過ぎませんが、AIの力を借りることで教育現場の様々な課題を効率的に解決することが可能です。
私たちはこれからも、教育現場で直面する様々な問題に対する解決策を提供するため、ChatGPTの活用方法を探求し続けます。教師の皆さんが日々の業務をよりスムーズに、そしてより効率的に進められるよう、最新のAI技術を駆使してサポートしていきたいと考えています。今後とも、どうぞお楽しみに!
その他の校務負担軽減に関する記事はこちら
この記事が気に入ったらサポートをしてみませんか?