Kết quả 1 đến 10 của 32
Hybrid View
-
29-12-2014, 09:56 PM #1
Bài viết của bác huybaichay rất hay, đúng là dân IT chuyên nghiệp có khác(tường minh, rõ ràng mọi người ai đọc cùng hiểu), em cũng đã từng làm việc trong ngành IT nên cũng biết sơ qua chút ít. Nói đơn giản càng có số lượng nhiều kỳ thủ tham gia giải thì việc "N"( số cách chọn các cặp đấu giữa các kỳ thủ) sẽ tăng dần nên việc "sai số" của phần mềm là luôn luôn tồn tại -> việc kỳ thủ có 3 ván đấu liên tiếp là sẽ có(mà hình như các phần mềm bốc thăm bây giờ vẫn chưa có ràng buộc 1 VĐV không được phép có 3 ván tiên(hậu) liên tiếp).
-
30-12-2014, 08:28 AM #2
Mình ko biết gì về IT. Cũng ko tham gia ý kiến vào vấn đề giải đấu này. Mình chỉ bàn luận chút về vấn đề phần mềm bốc thăm.
Mình nghĩ phần mềm máy tính dùng cho các giải đấu toàn thế giới thì chắc là ko có sai số đâu. Máy tính chứ ko phải người. Mình suy luận theo khía cạnh toán học. Nếu có sai thì các chuyên gia IT bỏ qua và góp ý cho mình.
Mình nghĩ trường hợp 3 ván đi tiên hoặc 3 ván đi hậu xảy ra ko phải là sai số của phần mềm mà là do nó ko có lời giải cho tất cả các điều kiện đầu vào.
Mình chưa từng biết phần mềm S-W đó như nào nhưng mình ví dụ tượng trưng thôi nhé.
Ví dụ các đầu vào sau ván 1 lần lượt là:
-Gặp nhau theo nhóm điểm. Nếu lẻ sẽ gặp nhóm điểm dưới.
-Các kỳ thủ ko gặp nhau quá 1 lần
-Sau ván n(6 hay 8 hay 10 tùy giải) 2 kỳ thủ cùng đội ko gặp nhau.
...
-Kỳ thủ ko đi tiên hoặc hậu 3 ván liên tục
-Kỳ thủ ko đi tiên hoặc hậu 2 ván liên tục
Điều kiện nhập sau thì càng ít ưu tiên. Khi máy tính giải các điều kiện trên thì sau 2 3 ván đầu mình nghĩ đều đạt hết. Những vòng đầu các kỳ thủ rất hiếm khi đi tiên hoặc hậu quá 2 ván. Càng về sau các điều kiện như mình nêu sau vòng 6,8,10 ko gặp cùng đội, ko gặp nhau quá 1 lần thì nhiều khi các điều kiện sau cũng sẽ ko đạt.
Do đó sẽ có kỳ thủ đi tiên hoặc hậu 2 ván liên tục. Còn 3 ván liên tục thì rất khó nếu điều kiện đầu vào ko nhiều.
Còn trong giải Ninh Bình xảy ra trường hợp 3 ván liên tục có lẽ do BTC tự xử lý tay sẽ dẫn đến sai sót thôi.Sao gặp nhau lại cứ phải chia tay
Con tàu đến rồi đi nhanh quá đỗi
Sân ga cô đơn tự mình ko hiểu nổi
Tháng năm vơi đầy nỗi nhớ niềm thương !!!
-
30-12-2014, 09:10 AM #3
Cái từ sai số ở đây mình đã để trong dấu ngoặc kép cho nó dễ hiểu thôi mà bạn,chứ bài toán kinh điển lập lịch đấy chỉ đáp ứng tối đa 70-80% trong ứng dụng thực tế
-
30-12-2014, 09:48 AM #4
Để làm rõ hơn về sai số trong các phần mềm, mình xin viết tiếp.
Bạn NhimBong đã có những câu hỏi rất hay, mình xin viết thêm để mọi người có thể hiểu thêm về nghề IT nói chung, cũng như các software dùng trong cờ nói riêng, và từ đó có quan điểm riêng của mỗi người.
Máy tính là vật vô tri vô giác, nó không hiểu những định nghĩa mà chỉ con người hiểu được, muốn tính toán, muốn chạy, máy phải có các tập lệnh cơ bản, định nghĩa cơ bản do con người nhập vào, ví dụ, con người định nghĩa 1+1=2, thì máy dựa vào đó, nó làm phép tính rất nhanh, nhưng cách tính, phương pháp tính, thì lại do con người định nghĩa. Nếu định nghĩa 1+1=3, máy vẫn tính rất nhanh, nhưng lúc này rõ ràng máy tính sai, vì đầu vào, input do con người đưa vào.
Trở lại bài toán lập lịch, vì sao thế giới đã chứng minh nó không có lời giải tối ưu, mà chỉ có lời giải gần đúng(heuristic), chúng ta hãy đi vào ví dụ bài toán cụ thể sau:
Một trường trung học cs có lịch sử dụng phòng máy vi tính như sau(chỉ có 1 phòng duy nhất tên là C1)
Điều kiện 1) Cô Nga dạy các học sinh lớp 6 vào sáng thứ 2,4,6 tại phòng C1
Điều kiện 2) Cô Bình dạy các học sinh lớp 6 khác vào sáng thứ 3,5,7 tại phòng C1
Với N=2, có 2 điều kiện đầu vào, rõ ràng, máy giải quyết êm ru, lúc này, bài toán có lời giải, lập trình viên định nghĩa cho máy các khái niệm C1, thứ 2,3,4....cô Nga, cô Bình, lớp 6, máy dựa vào đó giải lần lượt các yêu cầu cho cô Nga trước, cô Bình sau, đáp án ra chính xác 100%.
Bây giờ ta thêm điều kiện 3, N=3
Điều kiện 3) Cô Linh muốn dùng phòng C1 vào các buổi sáng cho các lớp 9 vào các ngày trong tuần.
Lúc này, chắc chúng ta dễ hình dung được, rõ ràng khi N tăng, điều kiện 3 sẽ xung đột với điều kiện 2, đáp ứng điều kiện 1,2 thì chắc chắn điều kiện 3 không thể xảy ra được, còn đáp ứng điều kiện 3 thì điều kiện 1,2 không thể sắp xếp, Lúc này bài toán không có lời giải tối ưu, mà chỉ có lời giải gần đúng.
Lời giải gần đúng, tùy từng phần mềm, tùy từng lập trình viên, và tùy từng điều kiện thực tế cuộc sống, mà người ta ưu tiên các điều kiện, ví dụ lớp 9 cuối cấp, 3 năm các em chưa được dùng phòng máy, thì ưu tiên các em trước chẳng hạn, lúc này lập trình viên phải thiết kế phần mềm, thiết kế phương pháp tính, đưa điều kiện 3 lên trước để ưu tiên, hoặc có trường lại yêu cầu lập trình viên phải ưu tiên khối 6 trước, hoặc có trường lại yêu cầu làm ngẫu nhiên, một nửa trong tuần ưu tiên khối 6, một nửa sau ưu tiên khối 9. Rồi lại ngẫu nhiên các lớp trong các khối.
Ví dụ trên cho thấy, khi N càng lớn, xác suất mâu thuẫn và xung đột giữa các điều kiện càng lớn, phần mềm chỉ giải quyết được tỷ lê % nào đó, còn lại, phần mềm buộc phải không thỏa mãn, và tồn tại sai số, bởi bản chất của nó là không có lời giải tối ưu.
Quay trở lại bài toán lập lịch thi đấu cho cờ tướng, N có các điều kiện sau
1) Không ai gặp nhau quá 1 lần
2) Gặp nhau theo nhóm điểm, nếu lẻ sẽ gặp nhóm điểm dưới
3) Các kỳ thủ trong đội, cùng địa phương, hoặc anh em họ hàng không gặp nhau
4) Không ai đi tiên quá 2 ván
5) Không ai đi hậu quá 2 ván
6) ......
Rõ ràng lúc này, sẽ là tuyệt vời, nếu 6 điều kiện trên không mâu thuẫn nhau, tức nó không phụ thuộc nhau, nhưng rõ ràng, do chúng ta không tính hết được các khả năng tổ hợp các xác suất mâu thuẫn nhau, lúc này, ví dụ do để đảm bảo điều kiện 1,2,3 xảy ra, thì phải hi sinh điều kiện 4,5, bài toán lúc này là cách giải gần đúng, và máy tính phần mềm buộc phải dùng cách giải gần đúng mà chuyên ngành bọn em gọi là giải thuật heuristic. Tức là chọn cách giải sao cho thỏa mãn nhiều điều kiện nhất, và chấp nhận không thỏa mãn các điều kiện còn lại.
Như ví dụ NhimBong đưa ra, phần mềm, vốn do con người định nghĩa, chấp nhận có sai sót, vì bài toán không có lời giải tối ưu.
Em ví dụ thêm về giải thuật gần đúng áp dụng trong cuộc sống đời thường, các bác vẫn hay áp dụng mà không biết tên gọi của nó, ví dụ các bác cần đi từ điểm A đến điểm B, thường các bác ước lượng và chọn đường gần nhất, có thể nó không chính xác, vì chẳng ai đo, nhưng nó gần đúng nhất, hoặc trong việc chọn đối tác làm ăn, chọn bạn đời, chọn người yêu, chọn nghề, chọn nước đi chính xác trong cờ, không thể tính hết được các biến, chúng ta chọn cách gần đúng với những bài toán khá phức tạp, và chấp nhận sai sót các điều kiện còn lại. Ví dụ đường gần nhất thì lại kẹt xe, cô người yêu xinh nhưng lại lười, công việc tốt nhưng gặp ông sếp dở hơi
Em xin hết.
-
30-12-2014, 11:32 AM #5
Bài này ko phải mình tham gia ko liên quan đến giải Ninh Bình mà chỉ muốn bàn luận để hiểu rõ về vấn đề bốc thăm.
Mình ko biết tí gì về IT nhưng mình có thể suy luận theo toán học. Lập trình bốc thăm chắc cũng phải theo phương pháp xác suất thống kê. Bạn huybaichay và emxinhoi nói mỗi bạn đều có ý đúng riêng.
Bạn huybaichay muốn nói về phương pháp sai số có thể gặp và giải thích xung đột rất dễ hiểu. Nhưng nếu áp dụng vào phần mềm bốc thăm có thương hiệu thì có lẽ ko đúng lắm. Bởi các điều kiện đầu vào của giải cờ vua và cơ tướng chưa đủ để tạo nên xung đột dẫn đến 3 ván đi tiên. Nó có lẽ tao ra xung đột 2 ván đi tiên thì được. Giả dụ xảy ra xung đột thì người lập trình ra phần mềm cũng phải chọn điều kiện ưu tiên theo thứ tự. Điều kiện nào ít quan trọng thì có thể loại trước nhất. Như thứ tự mình vd ở bài trên. Mình nghĩ có lẽ điều kiện ko đi tiên hoặc hậu 2 ván liên tục sẽ là điều kiện ít ưu tiên nhất. Thế nên nó chỉ đúng ở những vòng đầu.
@emxinhoi: Như bài trên mình có nói:
Mình nghĩ phần mềm máy tính dùng cho các giải đấu toàn thế giới thì chắc là ko có sai số đâu.Sao gặp nhau lại cứ phải chia tay
Con tàu đến rồi đi nhanh quá đỗi
Sân ga cô đơn tự mình ko hiểu nổi
Tháng năm vơi đầy nỗi nhớ niềm thương !!!
Liên quan đến anh Trung_CaDan và bạn Ngọc trong giải Ninh Bình
Đánh dấu