Thảo luận Thành viên:Ilen.khtn

Nội dung trang không được hỗ trợ ở ngôn ngữ khác.
Bách khoa toàn thư mở Wikipedia

Hoan nghênh[sửa mã nguồn]

Xin chào bạn !
Wikipedia tiếng Việt đến nay đã có 1.292.758 bài, đó là kết quả đóng góp quý báu của rất nhiều thành viên trong Wikipedia, mà mọi người đều bắt đầu như bạn. Bạn đã biết đến Wikipedia Tiếng Việt, mong rằng bạn sẽ mang đến những đóng góp có giá trị cho bách khoa toàn thư mở này.
Để xem và sửa bài trong Wikipedia, bạn không cần đăng nhập. Tuy vậy, tạo một tài khoản rất nhanh, miễn phí, đảm bảo bí mật riêng tư, và mang lại nhiều lợi điểm cho bạn, cụ thể xem thêm tại Wikipedia:Đăng nhập.
Khi thảo luận, bạn nhớ ký tên bằng cách dùng 4 dấu ngã ~~~~. Nhưng khi viết bài, bạn đừng ký hoặc ghi tên vào bài!
Bạn hãy nhớ các nguyên tắc
không viết những gì không bách khoa,
không truyền lên hình ảnh thiếu nguồn gốc,
không vi phạm quyền tác giả.
Đầu tiên bạn nên mạnh dạn
thử mọi liên kết mà bạn muốn,
thử sửa bài thoải mái tại đây,
đề nghị giúp đỡ của bất cứ ai.
Những chỉ dẫn có ích: các câu thường hỏi, cách viết bài mới, soạn thảo bài, trình bày bài, sách hướng dẫn.
Welcome to the Vietnamese Wikipedia ! If you do not speak Vietnamese, feel free to use our guestbook for non-Vietnamese speakers.

Hãy luôn nhớ rằng: Wikipedia không phải là diễn đàn nên bạn đừng tạo các bài mới chỉ để đặt câu hỏi, hoặc nêu các biểu cảm, ý kiến cá nhân của mình.
Lời khuyên cuối cùng: Bạn hãy làm lần lượt: thử, đọc, hỏi rồi hẵng viết. Chúc bạn thành công !.

  Tuấn ÚtThảo luận-Đóng góp 17:44, ngày 8 tháng 5 năm 2013 (UTC)[trả lời]

Những hình ảnh trong bài Thuật toán song song có thể được tìm thấy tại đây, bạn hãy giải thích rõ về vấn đề này?-- Tuấn ÚtThảo luận-Đóng góp 05:34, ngày 13 tháng 5 năm 2013 (UTC)[trả lời]

Bài viết này được tổng hợp từ các nguồn như đã dẫn(có chỉnh sửa/bổ sung cho đồng nhất). Bản quyền thuộc về tác giả bài viết đã dẫn nguồn. Các bài viết đưa lên Wiki phục vụ cho nghiên cứu học tập, bài viết không thuộc bản quyền người biên soạn.--I Len (thảo luận) 06:48, ngày 13 tháng 5 năm 2013 (UTC)[trả lời]
Tôi đang nói những hình ảnh mà bạn thêm vào giống hệt với các hình ảnh tôi tìm thấy từ các nguồn bạn đưa lên trong khi bạn miêu tả là hình đó tác giả là do chính bạn. Yêu cầu bạn cho một lời giải thích-- Tuấn ÚtThảo luận-Đóng góp 06:30, ngày 13 tháng 5 năm 2013 (UTC)[trả lời]

Như đã nói rõ ở trên, tôi là người biên soạn và đưa lên wiki. Bản quyền thuộc về tác giả nghiên cứu đề tài(bao gồm, hình ảnh, giải thuật, mã giả, lưu đồ,...) Một số hình ảnh trong tài liệu gốc khó nhìn, tôi đã biên tập lại cho dễ theo dõi, nhờ anh sửa sửa lại miêu tả các hình ảnh trên, nếu anh cho rằng không hợp lệ và có thể gây nhầm lẫn về bản quyền. Cảm ơn.--I Len (thảo luận) 06:48, ngày 13 tháng 5 năm 2013 (UTC)[trả lời]

  1. Như vậy tôi chỉ cần mô tả lại chính xác nguồn các hình trên là hợp lệ đúng không ạ? I Len (thảo luận) 08:40, ngày 15 tháng 5 năm 2013 (UTC)[trả lời]
  2. Tôi đã sửa lại mô tả hình ảnh như yêu cầu. Anh vui lòng kiểm tra lại giúp. Cảm ơn I Len (thảo luận) 08:47, ngày 15 tháng 5 năm 2013 (UTC)[trả lời]

Mã gốc bài Thuật toán song song[sửa mã nguồn]

Bối cảnh thực tế[1][2][sửa mã nguồn]

Bài toán tìm đường đi ngắn nhất giữa hai đỉnh của đồ thị liên thông có nhiều ứng dụng thực tế như:

  • Bài toán chọn hành trình tiết kiệm nhất(theo tiêu chuẩn khoảng cách, thời gian hoặc chi phí) trên mạng giao thông.
  • Bài toán chọn phương pháp tiết kiệm nhất để đưa một hệ thống động lực từ trạng thái xuất phát đến trạng thái đích
  • Bài toán lập lịch thi công các công đoạn trong một công trình thi công lớn
  • Bài toán lựa chọn đường truyền tin chi phí nhỏ nhất trong mạng thông tin.

...

Bài toán trở nên phức tạp khi số lượng đối tượng cần xét duyệt tăng lên hàng triệu lần, đòi hỏi khối lượng tính toán lớn, độ chính xác cao trong thời gian thực như dự báo thời tiết, xử lý thông tin gen, điều khiển tàu vũ trụ, điều khiển lò phản ứng hạt nhân,...

Với những bài toán dạng này, việc tính toán xử lý chỉ trên một bộ vi xử lý hoặc trên một máy tính không thể đáp ứng được yêu cầu đặt ra. Vì vậy, nhu cầu thực hiện tính toán song song để có thể tính toán, giải quết một vấn đề nào đó cùng lúc tại nhiều máy tính khác nhau trở nên cấp thiết. Do đó, việc ứng dụng công nghệ tính toán song song để tăng tốc thời gian xử lý đã được nhiều nhà khoa học nghiên cứu.

Thuật toán khảo sát[1][sửa mã nguồn]

Bài toán tìm đường đi ngắn nhất từ một đỉnh đến tất cả các đỉnh là một trong số các bài toán tối ưu trên đồ thị từ bài toán thực tế trên. Được nhà khoa học máy tính Hà Lan Edsger Dijkstra đề xuất và giải quyết, gọi là thuật toán Dijkstra.

Thuật toán có độ phức tạp là O(n2). Do độ phức tạp tính toán cao, việc giải bài toán này với tính chất tuần tự gặp phải bất lợi lớn về thời gian thực hiện chương trình, tốc độ xử lý, khả năng lưu trữ,... đặt biệt là trên đồ thị có hàng ngàn đỉnh mà thời gian chạy phải được rút gọn thì thuật toán tuần tự không thực hiện được.

Điều này đặt ra yêu cầu phải chia đồ thị cho nhiều bộ xử lý tham gia tính toán đồng thời, điều đó có nghĩa là phải cải tiến thuật toán từ tuần tự nghiên cứu tìm ra các tiến trình cần sử lý song song trên đa bộ xử lý để tăng tốc độ và hiệu quả của giải thuật.

Nội dung thuật toán[1][sửa mã nguồn]

Phát biểu bài toán[sửa mã nguồn]

Cho một đồ thị có hướng G=(V,E), với V là tập đỉnh, E là tập cạnh và một cặp đỉnh (i,j) với (i,j) thuộc E. Tìm đường đi ngắn nhất từ đỉnh i đến đỉnh j.

Thuật toán tìm đường đi ngắn nhất từ đỉnh i đến đỉnh j[sửa mã nguồn]

Xét đồ thị G(V,E) với các cạnh có trọng số không âm.

  • Dữ liệu nhập: Cho thuật toán là ma trận trọng số L với quy ước Lvk = +∞ nếu không có cạnh nối từ đỉnh v đến đỉnh k và hai đỉnh i, j cho trước.
  • Dữ liệu xuất: Đường đi ngắn nhất từ i đến j.

Xây dựng thuật toán tuần tự[sửa mã nguồn]

Thuật toán được xây đựng trên cơ sở gán cho các đỉnh các nhãn tạm thời. Nhãn của mỗi đỉnh cho biết cận trên của độ dài đường đi ngắn nhất từ đỉnh nguồn đến nó. Các nhãn này sẽ được biến đổi theo một thủ tục lặp, mà ở mỗi bước lặp, có một nhãn tạm thời trở thành nhãn cố định. Nếu nhãn của một đỉnh nào đó trở thành đỉnh cố định thì nó không phải là cận trên mà trở thành đường đi ngắn nhất từ đỉnh nguồn đến nó.

Mã giả[3][sửa mã nguồn]

1. Bước 1: Gán T:=V
2.         Khởi động: 
3.         Length[i]=0
4.         Length[k]=+∞, ∀k∈V\{i}
5.         Last[k]=-1, ∀k∈V
6. Bước 2: Chọn đỉnh v∈T, Length[v]=min
7.         loại v khỏi T: T:=T\{v}
8. Bước 3:
9.             Nếu v=j
10.                 min=Length[j]
11.                 Path=Last[j]
12.             Nếu Length[j]=∞
13.                 không tồn tại đường đi
14.             Cuối nếu
15.         Nếu Length[v]=∞
16.             không tồn tại đường đi
17.         Cuối với mọi
18. Bước 4: Duyệt, ∀k∈T và Lvk≠0:
19.             Nếu Length[k] > Length[v] + Lvk thì
20.                 Length[k] = Length[v] + Lvk
21.                 Last[k] = v;
22.             Cuối nếu
23.         Cuối với mọi
24. Bước 5: Trở về bước 2

Lưu đồ thuật toán[1][sửa mã nguồn]

Lưu đồ thuật toán Dijkstra tuần tự

Thực nghiệm thuật toán[2][sửa mã nguồn]

Cho đồ thị được biểu diễn như sau, sau khi thuật toán thực hiện xong thì kết quả được ghi nhớ lên các nhãn đỉnh tương ứng.

Ghi nhớ kết quả tính được trên đồ thị với thuật toán Dijkstra tuần tự.

Chạy từng bước thuật toán[2][sửa mã nguồn]

1. Last[k]=0 1 1 2 3 3 6 4 8 11 7 11 (Last[k] dùng để tìm đường đi, với Last[1]=0)
2. Length[i] = 0 7 5 13 15 15 17 18 38 39 24 29 
3. Vậy kết quả từ đỉnh 1 đến tất cả các đỉnh là: 
4.     đến 2=7 (1→2)
5.     đến 3=5 (1→3)
6.     đến 4=13 (1→2→4)
7.     đến 5=15 (1→3→5)
8.     đến 6=15 (1→3→6)
9.     đến 7=17 (1→3→6→7)
10.    đến 8=18 (1→2→4→8)
11.    đến 9=38 (1→2→4→8)
12.    đến 10=39 (1→3→6→7→11→10)
13.    đến 11= 24 (1→3→6→7→11)
14.    đến 12=29 (1→3→6→7→11→12)

Cài đặt thuật toán[sửa mã nguồn]

Xem thuật toán Dijkstra

Song song hóa thuật toán[1][sửa mã nguồn]

Lúc này, việc thực thì thuật toán không chỉ trên một Bộ Xử Lý(BXL) mà phân phối công việc cho các bộ xử lý, mỗi BXL sẽ đảm nhận 1 số đỉnh của đồ thị thông qua ma trận mô tả quan hệ của các đỉnh đó với các đỉnh còn lại. Ta sẽ song song hoá thuật toán Dijkstra tuần tự tại bước 3bước 4.

Thuật toán[1][sửa mã nguồn]

Giả sử ta có m BXL P, n là số đỉnh của đồ thị, thì mỗi BXL sẽ quản lý n/m số đỉnh, nếu n/m dư, thì P0, P1,…Pm-2 sẽ quản lý n/m đỉnh, và Pm-1 sẽ quản lý các đỉnh còn lại. Mỗi Pi sẽ lưu lại một ma trận LPi với số cột là số đỉnh do Pi quản lý, và số hàng là số đỉnh của đồ thị.

Chia mảng L thành m mảng con

Mã giả[1][sửa mã nguồn]

1. Bước 1: Khởi tạo tập đỉnh V = {i}, Length[k] = ∞ với k, Length[i] = 0.
   Phân chia dữ liệu trong ma trận trọng số A đến các bộ xử lý. 
   Với mỗi bộ xữ lý ta có một ma trận con tương đương với một ma trận con của A nhận dữ liệu.
   Mỗi Pi khác P0 sẽ lưu một mảng đỉnh riêng Vi cho riêng mình.
2. Bước 2: Từ BXL chính P0, gửi đỉnh iLength[i] đến các BXL còn lại
3. Bước 3: Gọi đỉnh được truyền đi là s, và nhãn của đỉnh đó là w. 
   Mỗi Pi sẽ cập nhật mảng Length[] 
   với Length[k] = Min(Length[k], w + A[s][k]) với  mọi k thuộc về Vi. 
    Mỗi Pi sẽ tính toán Min Li và gửi về đỉnh và nhãn nhỏ nhất cho BXL chính.
4. Bước 4: BXL chính sẽ chọn đỉnh có Min Length nhỏ nhất và nhãn của nó, gán cho s,  và w. 
   Loại s ra khỏi T. 
   Nếu s là đỉnh đích hoặc w = ∞ thì ngừng truyền, kết thúc. 
   Nếu w tồn  tại thì w là độ dài đường đi ngắn nhất.
5. Bước 5: Lặp lại bước 3.

Lưu đồ thuật toán[1][sửa mã nguồn]

Thực nghiệm thuật toán[2][sửa mã nguồn]

Tìm đường đi ngắn nhất từ đỉnh nguồn i=1 đến tất cả các đỉnh theo thuật toán song song trên đồ thị (n=12 đỉnh) dưới đây cho m=2 bộ xử lý (P0, P1), trong đó: P0 là bộ xử lý chính và P1 là bộ xử lý phụ.

Kết quả trên BXL P0[sửa mã nguồn]
Tập tin:Vd-Dijkstra-songsong.jpg
Đồ thị ghi nhớ trên bộ xử lý chính (P0)
Kết quả trên BXL P1[sửa mã nguồn]
Đồ thị ghi nhớ trên bộ xử lý chính (P1)
Kết quả cuối cùng[sửa mã nguồn]

Chạy từng bước[2][sửa mã nguồn]

Mảng đánh dấu đường đi
  Bộ xử lý chính P0 ghi nhớ các đỉnh để tìm đường đi
    Last[1]=0
    Last[2]=1
    Last[3]=1
    Last[4]=3
    Last[5]=3
    Last[6]=3
    Last[4]=2
  Bộ xử lý chính P1 ghi nhớ các đỉnh để tìm đường đi
    Last[8]=4
    Last[7]=5
    Last[7]=6
    Last[11]=6
    Last[11]=7
    Last[9]=8
    Last[10]=11
    Last[12]=11
Khoảng cách ngắn nhất từ đỉnh 1 đến tất cả các đỉnh
  Bộ xử lý (P0) tìm chiều dài từ đỉnh 1 đến các đỉnh 1, 2, 3, 4, 5, 6
    1 0
    2 7
    3 5
    4 13
    5 15
  Bộ xử lý (P1) tìm chiều dài từ đỉnh 1 đến các đỉnh 7, 8, 9, 10, 11, 12
    6 15
    7 17
    8 18
    9 38
    10 39
    11 24
    12 29

Cài đặt thuật toán[4][sửa mã nguồn]

1 procedure DIJKSTRA_SP(V, E, w, s)
2 {
3     VT = {s}; // tập hợp các đỉnh của đường đi ngắn nhất
4     for all v ∈(V - VT)
5         if (cạnh(s, v) tồn tại) l[v] = w(s, v);
7         else l[v] = ∞; // chi phi đi từ v đến s
8     while VT ≠ V do 
9     {
10         tìm đỉnh u sao cho l[u]= min{l[v]|v ∈(V - VT)};
11         VT = VT ∪ {u};
12         for all v ∈(V - VT)
13             l[v] = min{l[v], l[u] + w(u, v)};
14     }
15 }

So sánh kết quả[1][sửa mã nguồn]

Thuật toán đã được thử nghiệm trên máy Acer 4920 chíp lõi kép 2,2GHz, mỗi kết quả được tính trung bình sau 5 lần chạy ngẫu nhiên. Do thời gian dùng cho việc truyền thông chiếm dụng nhiều gây lãng phí cho thời gian thực hiện chương trình. Do đó kết quả khi thực hiện có phần không tốt.

Bảng so sánh thuật toán tuần tự và song song
Bảng so sánh thuật toán tuần tự và song song

Kết luận[2][sửa mã nguồn]

Với việc song song hóa thuật toán tuần tự thuật toán Dijkstra tìm đường đi ngắn nhất từ một đỉnh đến tất cả các đỉnh sẽ giúp ta giải quyết được các vấn đề bế tắc mà thuật toán tuần tự gặp phải như thời gian, dữ liệu đầu vào. Kết quả thực nghiệm dùng cụm máy tính song song của trường Đại học Sư phạm Hà Nội chạy Demo. Thuật toán cho kết quả với thời gian xử lý nhanh hơn thuật toán tuần tự khi dữ liệu đầu vào lớn (chẳng hạn với số đỉnh của đồ thị từ 1000 trở đi).

Tài liệu tham khảo[sửa mã nguồn]

  1. ^ a b c d e f g h i Tuyển tập báo cáo Hội nghị sinh viên nghiên cứu khoa học, lần 8 Đại Học Đà Nẵng, 2012
  2. ^ a b c d e f Tạp chí khoa học, ĐH Huế, tập 74B, Số 5, (2012), 81-92
  3. ^ Trần Đan Thư - Dương Anh Đức, Lý thuyết đồ thị, thuật toán Dijkstra, ĐH Khoa Học Tự Nhiên
  4. ^ Ngô Văn Thanh, Tính toán song song trên đồ thị, chương 4, Viên Vật Lý Việt Nam


Trời ạ, tên bài Thuật toán song song là 1 bài riêng, còn bài bạn viết thì là 1 bài riêng sao bạn lại đổi sang bài mới làm gì?  TemplateExpert  Thảo luận 13:55, ngày 15 tháng 5 năm 2013 (UTC)[trả lời]

Đó là tùy bạn nhưng tôi vẫn phải nhắc trước là nếu ai đó lại có ý kiến nguồn của bài mới dạng như Song song hóa thuật toán ABC gì đó, ... thì bạn cũng chuẩn bị tinh thần nhé, viết Wiki đôi khi giống như làm khoa học và sẽ có rất nhiều thành viên bắt bẻ và phản biện. Chúc bạn vui!  TemplateExpert  Thảo luận 17:10, ngày 15 tháng 5 năm 2013 (UTC)[trả lời]

Chào Ilen.khtn, bài viết Song song hóa thuật toán Dijkstra trên đồ thị do bạn tạo ra đã bị đánh dấu là không bách khoa, vì bài này có nội dung hướng dẫn, giảng giải; tuy nhiên quy định của Wikipedia tại đây, điều 4 có nói: Wikipedia là một bách khoa toàn thư, không phải là sách giáo khoa. Mục đích của Wikipedia là để mô tả sự vật, chứ không phải dạy về sự vật đó. Việc tạo hoặc sửa đổi bài viết để đọc giống như một sách giáo khoa, có câu hỏi vào đề và một hệ thống bài toán đáp số để làm ví dụ là không thích hợp. Bài viết sẽ bị xoá sau 7 ngày; tuy nhiên bài viết này phù hợp với Wikibooks, một dự án sách giáo khoa mở, và bạn có thể chuyển bài sang đó. Trao đổi nếu bạn có thắc mắc. – Prenn + 08:33, ngày 16 tháng 5 năm 2013 (UTC)[trả lời]

Điều 4 của Wiki có ít nhất 2 ý:
  1. Mục đích của Wikipedia là để mô tả sự vật, chứ không phải dạy về sự vật đó.
  2. Việc tạo hoặc sửa đổi bài viết để đọc giống như một sách giáo khoa, có câu hỏi vào đề và một hệ thống bài toán đáp số để làm ví dụ là không thích hợp.
  • Thứ nhất, bài viết Song song hóa thuật toán Dijkstra trên đồ thị mô tả một cách chi tiết thuật toán Dijkstra sau khi được cải tiến bằng cách song song hóa(description parallelization Dijkstra algorithm) đồng thời chỉ ra nguyên nhân vì sao cần làm việc này, sau đó đánh giá cách làm này có tốt hơn cách cũ hay không thông bằng cách so sánh các kết quả với nhau. Thông qua lưu đồ, mã giả và các giai đoạn chạy từng bước sẽ giúp người đọc nắm bắt vấn đề trên dễ dàng.

Bài viết không mang tính huấn luyện, đào tạo(education) hay dạy(training) một ai đó, vì không đề cập đối tượng được dạy(training apply for...), cũng như các cấp độ(level) huấn luyện(beginer --> advance) mà tài liệu này áp dụng.

vd:

  1. Tiếng anh cho hướng dẫn viên du lịch trình độ sơ cấp(đối tượng được dạy là hướng dẫn viên du lịch, và trình độ áp dụng là sơ cấp)
  2. Toán lớp một, tập 2(đối tượng được dạy là học sinh tiểu học, và trình độ áp dụng là tập 2)
  • Thứ 2, bài viết không có câu hỏi vào đề(a question) cũng như một hệ thống bài toán đáp số để làm ví dụ(answer sheets) mà chỉ có đặt tả các trường hợp phát sinh từ thực tế(study case) từ đó nêu bật lý do tại sao cần cải tiến thuật toán(why do we do it).

Từ (1)(2) suy ra không có bằng chứng hay căn cứ nào kết luận bài viết song song hóa thuật toán Dijkstra trên đồ thị vi phạm điều 4(Sách giáo khoa và nội dung giảng giải) nên không được xóa hay chuyển vào Wikibooks.
I Len (thảo luận) 10:21, ngày 16 tháng 5 năm 2013 (UTC)[trả lời]

Nếu nói như bạn thì Wikipedia sẽ trở thành kho lưu giữ các thuật toán hay các bài toán hết hay sao?. Các bài toán như giải phương trình hay tìm sin, cos... cũng sẽ được cho vào wikipedia ư?. Ở đây chúng ta chỉ đang nói về thuật toán mà chưa hề nói về nhóm các bạn Upload hàng loạt các hình thiếu thông tin nguồn gốc hay giấy phép để rồi bị xóa hình bị xóa là bài toán, hay thuật toán mất sự logic-- Tuấn Út(talk) 11:41, ngày 16 tháng 5 năm 2013 (UTC)[trả lời]
Vậy thì anh hãy vào mục Các thuật toán quan trọng của bài Lý thuyết đồ thị. Mục này liệt kê rất nhiều thuật toán chuyên sâu thuộc về Lý thuyết đồ thị hoặc có liên quan, có thể liệt ở đây vài thuật toán:

...
Tất cả các thuật toán và giải thuật trên đều có format giống hoặc tương tự với thuật toán tôi trình bày(giới thiệu giải pháp X cho vấn đề Y thuộc lĩnh vực Lý thuyết đồ thị). Như đã nói đi nói lại nhiều lần, việc tôi đưa thuật toán này lên Wiki là để tìm kiếm sự hoàn thiện và chuẩn hóa thuật toán từ những người có hiểu biết chuyên sâu hơn về vấn đề này.

Xét ở một góc độ khác các thuật toán dạng này làm cho chủ đề lý thuyết đồ thị càng thêm rõ ràng, phong phú và hoàn thiện với mức độ sâu rộng hơn. Tuy nhiên, cho đến hiện tại cái tôi nhận được lại là những nỗ lực của các anh trong việc buộc tội bằng cách chứng minh tôi hoặc bài viết này phạm quy.

Khách quan mà nói, việc làm của các anh là cần thiết giúp nâng cao chất lượng các bài viết, nhưng nó chỉ thực sự có ý nghĩa với những người thiếu nghiêm túc hoặc có động cơ không tốt. Trong khi đó những nỗ lực của các anh cũng thực sự làm nản lòng những người có mong muốn đóng góp bài vở cho Wiki.

Cuối cùng là nội dung trong bài quy định của Wikipedia dẫn ở trên cũng nói đến viêc Wikipedia không quan liêu, tôi nghĩ các anh nên đọc và cân nhắc thêm.
I Len (thảo luận) 13:35, ngày 16 tháng 5 năm 2013 (UTC)[trả lời]

p/s: @Tuấn Út: những nhóm nào Upload hàng loạt các hình thiếu thông tin nguồn gốc hay giấy phép anh nên làm việc trực tiếp với họ, vì các nhóm này cũng không liên quan đến chúng tôi.

Bạn đưa bài lên là 1 chuyện nhưng bài đó phải có nguồn xác định, nguồn đa số là bạn lấy trong 1 báo cáo khoa học sinh viên, tôi e rằng chất lượng kèm theo sẽ không cao (xin lỗi nói thẳng nếu bạn phật ý). Thậm chí có người cho rằng nguồn báo cáo là yếu, chưa đủ độ tin cậy. Xin chỉ ra 1 số điểm như sau với kinh nghiệm phản biện của tôi không những trong Wiki mà cả trong khoa học:

  • Theo bạn ai là người đầu tiên chỉ ra thuật toán song song trên đồ thị Dijkstra, gốc gác nó nằm đâu, mời bạn thêm vào bài với nguồn mạnh đầy đủ. Với kiến thức chuyên ngành, tôi không nghĩ gốc nó từ các giáo sư, tiến sĩ người Việt hay bất cứ hội thảo nào của Việt Nam.
  • Mời bạn viết 1 phần mở đầu như các bài toán Wiki đã có Bài toán người bán hàng để cho thấy tổng quát bài toán như thế nào để làm gì. Ví dụ: Thuật toán song song trên đồ thị Dijkstra là một thuật toán song song được áp dụng cho đồ thị Dijkstra nhằm giải quyết vấn đề ... Tất cả bài viết của Wiki đoạn mở đầu đều đi thẳng đề không vòng vo hoặc viết thiếu.
  • Hình ảnh, lưu đồ, .. kết quả so sánh bài viết hoàn toàn bạn lấy nguồn ở đâu? Hoặc lưu đồ đó dựa trên kiến thức ở đâu, chắc chắn nó phải có gốc.

Tạm thời thế đã.  TemplateExpert  Thảo luận 15:06, ngày 16 tháng 5 năm 2013 (UTC)[trả lời]

Bài viết của bạn không mô tả chi tiết thuật toán Dijkstra được song song hoá trên đồ thị, mà mô tả quá chi tiết cách giải bài toán tìm đường đi ngắn nhất bằng phương pháp song song hoá thuật toán Dijkstra trên đồ thị. Những bài viết mà bạn dẫn ra, nếu không được thêm thuật toán và cách giải chi tiết vào trong thời gian 1-2 tuần trở lại đây, thì đều có mục "Lịch sử" nói về sự hình thành và những vấn đề liên quan đến sự phát triển bài toán, có mục "Cách giải" mang tính khái quát, không chi tiết quá đáng, và có nguồn đáng tin cậy; ví dụ Bài toán người bán hàng, Bài toán người đưa thư Trung Hoa. Bài viết của bạn quá chi tiết vào cách giải bài toán thay vì chỉ nói sơ và chú trọng hơn về lịch sử và sự hình thành, vì vậy không thể coi là bài bách khoa. Những hình ảnh trong bài cũng không rõ nguồn gốc, tác giả và thẻ quyền. – Prenn + 15:54, ngày 16 tháng 5 năm 2013 (UTC)[trả lời]
Tóm lại, theo yêu cầu của các anh tôi cần bổ xung thêm 2 nội dung như liệt kê đúng không ạ?:
  1. Viết thêm phần mở đầu giới thiệu lịch sử hình thành thuật toán. ==> Lấy phần Bối cảnh thực tế là phần mở đầu giới thiệu thuật toán, nếu giới thiệu sâu hơn về kiến trúc máy tính để giải thích tại sao nó không giải quyết bài toán trên được thì nó lấn xâu vào lĩnh vực kiến trúc máy tính.I Len (thảo luận) 06:26, ngày 17 tháng 5 năm 2013 (UTC)[trả lời]
  2. Chứng minh những nội dung trong bài viết bằng nguồn mạnh(có thể hiểu là các tài liệu, nghiên cứu có nguồn gốc từ nước ngoài).I Len (thảo luận) 06:00, ngày 17 tháng 5 năm 2013 (UTC)[trả lời]
Tôi đã bổ xung các nguồn mạnh vào nội dung bài viết, các anh vui lòng kiểm tra lại.
Cảm ơn.I Len (thảo luận) 06:00, ngày 17 tháng 5 năm 2013 (UTC)[trả lời]
Tôi vẫn thấy phần cách giải quá dài, quá chi tiết. Đó là lý do chủ yếu để tôi đánh giá bài này là không bách khoa. Còn vấn đề hình ảnh không có nguồn gốc nữa. – Prenn + 11:27, ngày 17 tháng 5 năm 2013 (UTC)[trả lời]

Về nhận xét phần cách giải quá dài, quá chi tiết Tôi giải thích như sau:
Đây là nội dung chuyên sâu có phần mở rộng về Thuật toán Dijkstra. Như vậy, cái tôi cần làm là chứng minh một cách thuyết phục cho người đọc tại sao cần phải cải tiến thuật toán và nó hoạt động như thế nào, mà lưu đồ và mã giả là 2 công cụ chính(khoa học) để thực hiện việc đó.

Nhờ vào lưu đồ và mã giả sẽ giúp người đọc so sánh giải thuật khi chạy tuần tự và chạy song song. Đây là 2 nội dung chính, căn bản tạo cơ sở lý luận phản biện và chứng minh tính đúng đắn của giải thuật. Đồng thời chỉ ra giai đoạn nào máy tính sẽ xử lý song song(bước 3,4 trong giải thuật) vì máy tính không xử lý song song từ đầu đến cuối giải thuật và đây là điểm khác nhau căn bản để so sánh giải thuật song song và tuần tự. Sau cùng, giải thuật phải trải qua bước thực nghiệm để đảm bảo tính đúng đắn của nó.

Nếu không có các yếu tố này thì giải thuật song song hóa chẳng còn ý nghĩa gì nữa và hoàn toàn phá sản vì không đủ cơ sở lý thuyết cũng như thực nghiệm để đứng vững trước giải thuật tuần tự trong thuật toán Dijkstra nguyên mẫu.

Như vậy những nội dung nêu trên là cơ sở lý thuyết và thực nghiệm, hai yếu tố chính để giới thiệu thuật toán, chứ không phải là cách giải như anh nhận xét. Bên cạnh đó mã giả cũng không phải là mã lệnh của ngôn ngữ lập trình(bài giải của thuật toán) mà là phương tiện sẽ cùng với lưu đồ góp phần làm rõ giải thuật. Nhờ vào lưu đồ hoặc(và) mã giả lập trình viên có thể xây dựng ứng dụng(chương trình) dựa trên thuật toán bằng bất kỳ ngôn ngữ lập trình nào.I Len (thảo luận) 13:15, ngày 17 tháng 5 năm 2013 (UTC)[trả lời]

Còn vấn đề hình ảnh không có nguồn gốc nữa Anh vui lòng chỉ rõ hình nào không có nguồn gốc? Tất cả hình ảnh dùng trong bài viết đều đã được ghi rõ nguồn gốc xuất sứ.I Len (thảo luận) 13:15, ngày 17 tháng 5 năm 2013 (UTC)[trả lời]

Đã 24 giờ qua kể từ lần giải trình cuối cùng của tôi về bài viết Song song hóa thuật toán Dijkstra trên đồ thị. Đồng thời cũng đã chấp hành nghiêm túc các quy định của Wiki về nội dung cước chú(dẫn nguồn mạnh) cũng như ghi rõ nguồn gốc xuất sứ hình ảnh sử dụng trong bài viết. Nếu không còn vấn đề gì nữa, các anh vui lòng gỡ giúp cảnh báo nội dung văn phong không phù hợp trên bài viết. Trân trọng cảm ơn!.I Len (thảo luận) 07:10, ngày 18 tháng 5 năm 2013 (UTC)[trả lời]
Do không còn vấn đề gì chấp vấn nữa, tôi gỡ nội dung cảnh báo đi nhé. Và để khỏi làm phiền bạn đọc khi có vấn đề phát sinh, các anh vui lòng chấp vấn trong phần thảo luận này trước khi đăng nội dung cảnh báo nhé, tôi sẽ giải trình ngay. Trân trọng cảm ơn.I Len (thảo luận) 13:54, ngày 18 tháng 5 năm 2013 (UTC)[trả lời]

Không một lời phản hồi, thành viên Prenn vào sửa bài và xóa hình tạo ra một bài viết bị cắt xén nham nhở. Trước đây tôi có nghe than phiền rất nhiều về Wiki tiếng việt. Lúc đầu tôi không tin, nhưng giờ tôi phải bắt đầu tin và cân nhắc xem có nên tiếp tục đầu tư thời gian công sức vào đây nữa không.I Len (thảo luận) 04:44, ngày 23 tháng 5 năm 2013 (UTC)[trả lời]

Re: Wikipedia:Bàn giúp đỡ - Làm thế nào canh chỉnh mục lục trong bài viết[sửa mã nguồn]

Mục lục được gọi là TOC theo ngôn ngữ của Wiki. Nếu bạn muốn TOC nằm ở đâu thì bạn thêm __TOC__ ở khúc đó (chú ý 1 trang chỉ có tối đa 1 TOC). Muốn TOC nằm bên phải thì bạn thêm {{TOC right}} vào chỗ mà bạn muốn đặt TOC.115.78.10.132 (thảo luận) 07:23, ngày 18 tháng 5 năm 2013 (UTC)[trả lời]
Cảm ơn bạn nhiều.I Len (thảo luận) 07:32, ngày 18 tháng 5 năm 2013 (UTC)[trả lời]