Phát triển tư duy thuật toán cho học sinh

Từ Thư viện Khoa học VLOS
Bước tới: chuyển hướng, tìm kiếm

Trong phần lớn các trường hợp, kết quả hoạt động của con người phụ thuộc vào mức độ chuẩn xác do nhận thức được bản chất thuật toán của các hoạt động của mình. Nhờ kinh nghiệm có được, khi giải quyết một loại công việc người ta biết cần phải có những hoạt động gì? Mỗi hoạt động có những thao tác gì? Thứ tự các thao tác đó như thế nào? Việc tìm ra một dãy các hoạt động, các thao tác, theo đó giải quyết được vấn đề, có thể xem như đã xây dựng được một quy trình thuật toán, mà việc tuân theo quy trình đó sẽ dẫn đến kết quả.[1]

Thuật toán, tư duy thuật toán

Thuật toán được hiểu như một quy trình mô tả những chỉ dẫn rõ ràng và chính xác để người (hay máy) thực hiện một loạt thao tác nhằm đạt được mục đích đặt ra hay giải một lớp bài toán nhất định.[2]

Ví dụ: Thuật toán giải phương trình bậc hai, thuật toán dựng tam giác biết c-c-c, g-c-g, c-g-c,...

Thuật toán có các đặc điểm[1]:

  • Đó là một dãy hữu hạn các bước sắp xếp theo một trình tự nhất định
  • Mỗi bước là một thao tác sơ cấp, trường hợp đặc biệt cũng có thể là một thuật toán đã biết. Các bước rõ ràng, thao tác chính xác (trong cùng một điều kiện, hai bộ xử lí cùng thực hiện một thuật toán thì phải cho ra cùng một kết quả).
  • Có tính kết thúc (sau một số hữu hạn bước thực hiện) và tính phổ dụng (giải quyết được các bài toán cùng loại)
Tu-duy-thuat-toan.jpg

Tư duy thuật toán là cách suy nghĩ để nhận thức, để giải quyết vấn đề một cách có trình tự (sắp xếp lần lượt, thứ tự trước sau).[1]

Thông qua việc dạy học các quy trình, phương pháp có tính chất thuật toán giáo viên cần rèn luyện cho học sinh tư duy thuật toán. Tư duy thuật toán được đặc trưng bởi các khả năng:[3]

  1. thực hiện những thao tác theo một trình tự xác định phù hợp với một thuật toán cho trước
  2. phân tích một hoạt động thành những thao tác thành phần được thực hiện theo một trình tự xác định
  3. mô tả chính xác quá trình tiến hành một hoạt động
  4. khái quát hóa một hoạt động trên những đối tượng riêng lẻ thành một hoạt động trên một lớp đối tượng
  5. so sánh những thuật toán khác nhau cùng thực hiện một công việc và phát triển thuật toán tối ưu

Khả năng đầu thể hiện khả năng thực hiện thuật toán, bốn khả năng sau thể hiện khả năng xây dựng thuật toán, đặc biệt khả năng thứ hai thể hiện con mắt phát hiện thuật toán.

Quy trình, quy trình tựa thuật toán

Quy trình là một trình tự phải tuân theo để tiến hành một công việc nào đó.

Ví dụ: Quy trình bốn bước của Polia để giải một bài toán, quy trình giải bài toán bằng cách lập phương trình,...

Mỗi quy trình có thể chia thành các bước. Mỗi bước là một hoạt động nhằm một mục đích nhất định. Mỗi hoạt động có thể có nhiều thao tác.

Ví dụ: Hoạt động "Tìm hiểu nội dung bài toán" có các thao tác: Vẽ hình, chọn kí hiệu, phân tích giả thiết, kết luận của bài toán,...

Quy trình tựa thuật toán hay quy trình có tính thuật toán là quy trình gồm một số hữu hạn các hoạt động có mục đích rõ ràng, cụ thể, được sắp xếp theo một trình tự nhất định, nhằm đi đến kết quả là giải được một loại công việc nào đó theo đúng yêu cầu đã định.

Một quy trình có tính thuật toán phải có các đặc điểm sau:

  • Đó là một dãy hữu hạn các bước sắp xếp theo một trình tự nhất định
  • Mỗi bước là một hoạt động nhằm một mục đích cụ thể, có bước là một thao tác sơ cấp, có bước chỉ là gợi ý định hướng suy nghĩ hoặc là hướng dẫn thực hiện thao tác được lựa chọn trong một số hữu hạn trường hợp.
  • Trong đa số trường hợp[4], sau khi thực hiện xong tất cả các bước thì đi đến kết quả

Trong chương trình hình học không gian ở Trung học phổ thông ta có thể hướng dẫn học sinh giải một số dạng bài toán theo một quy trình nhất định.

Quy trình tìm các điểm chung sẵn có của hai mặt phẳng

  • Bước 1: Tìm điểm chung sẵn có trong các điểm đã cho của hai mặt phẳng đã cho
  • Bước 2: Tìm điểm đã cho của mp này thuộc đường thẳng của mp kia
  • Bước 3: Tìm điểm đã cho của mp này thuộc mp kia.

Quy trình này không phải là một thuật toán nhưng có một số điểm giống với thuật toán. Trong quy trình này các thao tác được chỉ ra một cách khá rõ ràng, khôngg quá khái quát như trong quy trình bốn bước của Polya để giải bài toán, song cũng không cụ thể như ở một thuật toán. Ở bước 1, người thực hiện chỉ thực hiện thao tác so sánh từng điểm đã cho của mặt phẳng này với từng điểm đã cho của mặt phẳng kia. Ở bước 2, bước 3 người thực hiện đối chiếu từng điểm đã cho của mặt phẳng này với từng đường thẳng của một mặt phăng kia hay với mặt phẳng kia. Vận dụng quy trình này học sinh tìm được các điểm chung sẵn có của hai mặt phẳng đã cho trong các bài toán ở SGK hình học không gian.

Quy trình xác định đường vuông góc chung của hai đường thẳng chéo nhau d và d'

Bước 1: Xác định hai mặt phẳng vuông góc

  • mp(P) chứa d và song song với d'
  • mp(Q) vuông góc với một đường thẳng của mp(P) (nên chọn giao tuyến của mp(P) với mặt đáy của hình). Ta được hai mặt phẳng vuông góc với nhau.

Bước 2: Xác định đường vuông góc với mặt phẳng mp(P)

  • Xác định giao điểm G của d và mp(Q), giao tuyến (t) của mp(P) và mp(Q)
  • Trong mp(Q) xác định GI vuông góc với (t). Ta được GI vuông góc với mp(P).

Bước 3: Xác định hai chân đường vuông góc chung

  • Trong mp(P) xác định đường thẳng (a) qua I, song song với d, cắt d' tại K.
  • Trong mp(a, GI) xác định đường thẳng qua K, song song với IG, cắt d tại H.
  • Ta có HK là đường vuông góc chung của d và d'.

Nhận xét rằng, nếu các bước trong quy trình của ví dụ trên là các thao tác sơ cấp thì các bước trong quy trình của ví dụ này chỉ là các gợi ý định hướng suy nghĩ.

Quy trình xác định góc giữa hai mặt phẳng

  • Bước 1: Xác định giao tuyến của hai mặt phẳng
  • Bước 2: Tìm hai đường thẳng thuộc hai mặt phẳng và cùng vuông góc với giao tuyến tại một điểm
  • Bước 3: Xác định góc giữa hai đường thẳng này, đó chính là góc cần tìm.

Cần chú ý rằng, tùy theo dữ kiện của bài toán cụ thể mà bước này hoặc bước kia đã quá rõ ràng, nhưng việc tập luyện cho học sinh ý thức được việc xác định góc theo trình tự trên là cần thiết và sẽ luôn luôn đạt được kết quả.

Phát triển tư duy thuật toán

Việc phát triển tư duy thuật toán cho học sinh có thể được thực hiện bằng cách rèn luyện cho họ những khả năng đã liệt kê ở trên như những thành tố của phương thức tư duy thuật toán.[3]

Thực hiện thuật toán

Để tập luyện cho học sinh khả năng thực hiện những thao tác theo một trình tự xác định phù hợp với một thuật toán cho trước, có thể phát biểu một số quy trình toán học như cộng, trừ, nhân, chia hai phân số, hai số hữu tỉ,... thành những thuật toán dưới dạng ngôn ngữ tự nhiên hoặc sơ đồ khối hoặc ngôn ngữ phỏng trình rồi yêu cầu học sinh thực hiện các quy trình ấy, thông qua đó nhấn mạnh các bước và trình tự tiến hành các bước trong mỗi quy trình. Ví dụ thuật toán giải phương trình bậc hai.

Phân tích hoạt động

Để tập luyện cho học sinh biết phân tích một hoạt động thành những thao tác thành phần theo một trình tự xác định, giáo viên hứong dẫn học sinh tập luyện như với khả năng 1 với lưu ý áp dụng cho cả những quy trình thể hiện phần nào nhưng không hoàn toàn đầy đủ các yêu cầu chặt chẽ của một thuật toán.

Chẳng hạn quy trình xác định góc giữa một đường thẳng và một mặt phẳng

  • Bước 1: Xác định hình chiếu của đường thẳng trên mặt phẳng
  • Bước 2: Xác định góc giữa đường thẳng và hình chiếu của nó

Quy trình này tỏ ra có hiệu quả, ví dụ như đối với bài toán: "Một hình chóp SABC có hai mặt bên SAB và SAC vuông góc với đáy. Đáy ABC là tam giác cân đỉnh A, trung tuyến AD = a. Cạnh SB tạo với đáy một góc ∝ và tạo với mặt phẳng SAD góc β. Hãy xác định góc ∝, β ...". Theo các bước trên thì việc xác định góc ∝ không có gì khó khăn, còn với góc β, chắc chắn xác dịnh được hình chiếu của SB trên mp(SAD) chính là SD, do đó ∠SBD = β

Tường minh hóa thuật toán

Để rèn luyện cho học sinh khả năng tường minh hóa thuật toán, tức là khả năng diễn đạt ngôn ngữ để mô tả chính xác một quá trình, cần yêu cầu học sinh phát biểu những quy trình đã học hoặc đã biết bằng lời lẽ của mình. Giáo viên theo dõi phân tích tính chính xác, xác định của những phát biểu như vậy. Chẳng hạn, có thể sử dụng những bài tập kiểu như: "Hãy nêu một loạt chỉ dẫn sao cho bạn của em có thể căn cứ vào đó và thực hiện từng bước để dựng được một tam giác đều."

Khái quát hóa hoạt động

Để tập luyện cho học sinh hoạt động khái quát hóa một quá trình diễn ra trên những đối tượng riêng lẻ thành những hoạt động trên một lớp đối tượng, có thể hướng dẫn họ đi từ việc giải những phương trình bậc hai cụ thể tới giải phương trình bậc hai tổng quát hay giải những phương trình cụ thể sau: 3x - 6 = 0, -x + 5 = 0, 0x + 7 = 0, 0x = 0 sang giải phương trình bậc nhất dạng tổng quát.

Chọn thuật toán tối ưu

Việc rèn luyện khả năng so sánh những thuật toán khác nhau thực hiện cùng một công việc và phát hiện thuật toán tối ưu có thể bắt đầu từ việc rèn luyện cho học sinh ý thức tiết kiệm thao tác[5]. Chẳng hạn, nếu so sánh các phân số 9/5, 9/4 và 9/7 thì không nên quy đồng mẫu số mà so sánh ngay các mẫu số vì ở đây tử số của các phân số đã bằng nhau.

Chú thích

  1. 1,0 1,1 1,2 Tài liệu bồi dưỡng thường xuyên giáo viên trung học phổ thông chu kì III (2004-2007) Toán học, Bùi Văn Nghị - Vương Dương Minh - Nguyễn Anh Tuấn, NXB Đại học sư phạm, 2005, trang 119
  2. Đây chưa phải là một định nghĩa chính xác mà chỉ là một cách phát biểu giúp ta hình dung khái niệm thuật toán một cách trực giác.
  3. 3,0 3,1 Phương pháp dạy học môn Toán, Nguyễn Bá Kim, Vũ Dương Thụy, NXBGD 2000, trang 87, 201-202
  4. Mỗi người có cách vận dụng một quy trình theo cách riêng của mình, theo kinh nghiệm của bản thân và đạt được ở các mức độ khác nhau. Do đó không phải quy trình nào cũng bảo đảm chắc chắn dẫn tới thành công, phải nói cho học sinh hiểu về điều này trước khi họ vận dụng và làm việc với các quy trình.
  5. Đó là một yếu tố của tư duy thuật toán, một nét đặc trưng của sự làm việc với máy tính điện tử.

Xem thêm