Thuật toán trong đời sống

Ngô Quang Hưng | 27 tháng 11, 2007 | Bản để in Bản để in

Nhân đọc một entry về xếp thứ tự giấy tờ bên unfogged: trong cuộc sống hàng ngày có không ít các trường hợp ta có thể áp dụng một ý tưởng thuật toán nào đó. Vài ví dụ:

  • Nếu phải xếp thứ tự an-pha-bê khoảng trăm bài kiểm tra cuối kỳ nào đó, bạn dùng quick sort, merge sort, insertion sort, bubble sort, hay radix sort, v.v.? Tôi thường dùng chung insertion & merge sort.
  • Hàng tuần có nhiều việc phải làm. Làm gì trong ngày nào là một dạng bin-packing hoặc weighted scheduling with deadlines. Ta không muốn ngắt một việc làm nhiều ngày (nếu có thể) vì mất công re-boot. Tôi thường ghét các việc lắt nhắt, nên dồn chúng lại làm một lúc và để đến sau cùng, tương tự như thuật toán FFD cho bin-packing.
  • Mua quà Noel cho nhiều người với một túi tiền có hạn là bài toán Knapsack.
  • Mồng 2 Tết, đi lòng vòng chúc tết nhà bà con bạn bè là bài toán TSP.
  • Chọn thức ăn từng bữa cho đủ chất và giá rẻ nhất là bài toán qui hoạch tuyến tính (mixed với quy hoạch nguyên).

Chủ đề: Thuật Toán & Vui - Giải Trí |

2 lời bình cho bài “Thuật toán trong đời sống”

  1. 1
    nvhoang viết:

    Em thì thấy chúng ta thường dùng Earliest Deadline First (EDF) nhất và thường là non-preemptive EDF để tránh bị ngắt quãng bởi các việc lắt nhắt :D .

  2. 2
    wu viết:

    Cái xu hướng này em nghĩ người ta gọi là Computational Thinking, chủ yếu là áp dụng khoa học máy tính vào các lĩnh vực khác nhau của đời sống:

    http://www.inf.ed.ac.uk/research/programmes/comp-think/
    http://www.cs.cmu.edu/~wing/publications/Wing06.pdf

    Có thể đây là phương pháp suy nghĩ của các thế hệ tương lai không chừng :)

Ghi lời bình của bạn: