Một lời giải cho bài toỏn đúng thựng sẽ là một cỏch xếp bất kỳ đồ vật vào cỏc thựng thỏa món điều kiện của bài toỏn là tất cả cỏc đồ vật đều được xếp vào một thựng nào đú và tổng kớch thước cỏc đồ vật khụng vượt quỏ dung lượng của thựng.
Do cú đặc điểm chuỗi, lời giải cho đúng thựng cú thể được mó húa bằng phương phỏp mó húa hoỏn vị khỏ dễ dàng ([16]). Tức là lời giải của bài toỏn (nhiễm sắc thể) được biểu diễn dưới dạng một hoỏn vị của cỏc đồ vật. Hoỏn vị này sẽ xỏc định thứ tự được xột duyệt của cỏc đồ vật. Bờn cạnh đú ta cũng cần một thủ tục bổ sung như Next Fit, First Fit hoặc Best Fit… để xếp cỏc đồ vật theo trật tự đó cho vào cỏc thựng chứa.
Vớ dụ cho dóy gồm 7 đồ ậ v t a1 a 2 a 3 a 4 a 5 a 6 a 7 cú kớch thước và hoỏn v tương ng ị ứ là
Kớch thước 2 3 3 2 6 4 2 Hoỏn v ị 1 4 5 6 3 2 7
Giả ử kớch thướ s c thựng ch a là 10 ta và sử ụứ d ng Next Fit làm th thủ ục xếp cỏc đồ ậ v vào t thựng chứa. Khi đú ta sẽ cú k t qu ế ả đúng thựng như sau:
Chương 4 THUẬT TOÁN DI T RUYỀN GIẢI BÀI TOÁN ĐểNG THÙNG
2 4 3 6 2 2 3
Trong thuật toỏn di truyền ta đang xõy dựng, phương phỏp được dựng để xếp cỏc đồ vật sẽ là First Fit (First Fit cú hiệu quả như Best Fit nhưng cài đặt đơn giản hơn và xử lớ nhanh hơn).
Ở đõy cũn mộ ấn đề ầt v c n gi i quy t là cỏch bi u di n trờn cú bao ph khụng gian l i ả ế ể ễ ủ đủ ờ gi i hay khụng? Cõu tr lả ả ời là khụng bởi vỡ do ta s d ng nhử ụ ững kĩ thuật xếp đồ ật là First v Fit nờn s khụng t n tẽ ồ ại những cỏch xếp đồ ật lóng phớ như mỗi đồ ậ v v t đư c xếợ p vào một thựng riờng. Tuy nhiờn trong s nh ng lố ữ ời giải của bài toỏn được bi u di n bể ễ ằng phương phỏp mó húa hoỏn v này thỡ chị ắc chắ cú chứa lờn i giải tối ưu. Ta xột bổ đề nh ỏ sau B 4.1. ổ đề
Nếu tồn tại cỏch sắp xếp cỏc đồ vật sử dụng hết m thựng chứa thỡ cũng sẽ tồn tại ớt nhất một hoỏn vị của cỏc đồ vật sao cho khi ỏp dụng phương phỏp xếp đồ vật First Fit lờn những đồ vật (đó được xếp theo thứ tự quy định trong hoỏn vị), ta sẽ thu được cỏch xếp cỏc đồ vật sử dụng khụng quỏ m thựng.
Chứng minh:
Theo gi ả thiết ta đó cú cỏch sắp xếp đồ vật sử ụ d ng hết m thựng. Ta hóy đặt cỏc đồ v t vào ậ cỏc thựng chứa theo cỏch sắp xếp đú. Sau đú dựng kớ hiệ au ij để đỏnh dấu cỏc đồ ật sao v cho đồ ậ v t được đỏnh dấu aijlà đồ ật thứ i ế v x p trong thựng th . Bõy gi ứ j ờ ta chỉ việc tạo ra m t hoỏn v ộ ị cỏc đồ ật sao cho chỳng đượ v c xột duyệt theo thứ t ự sau:
<a11 a21 … aE1 1> <a12 a22 … aE2 2> …. <a1m a2m … aEm m> Với Ei là chỉ ố ủa đồ ật cuối cựng được xế s c v p trong thựng . i
Giờ đõy ỏp dụng First Fit để xếp cỏc đồ vật này vào thựng chứa.
D ễ thấy khi ỏp dụng First Fit thỡ E1 vđồ ật đầu tiờn s phẽ ải được xếp trong thựng th ứ nhất vỡ cú đủ ch x p t t c cỏc đ vỗ ế ấ ả ồ ật đú.
Tiếp theo s ẽ xột đến đồ ậ v t a21, n u thựng th nhế ứ ất khụng đủ chỗ cho a21 thỡ E2 vđồ ật tiếp theo s ẽ được xếp vào thựng th 2. Cũn nứ ếu đủ chỗ cho a21 trong thựng th nhứ ất thỡ xếp a21
vào đú rồi chuy n sang xột aể 22. Và ta để ý rằng dự trong trường hợp nào đ ữa thỡ đồ ậi n v t aE2 2 hoặc là được xếp trong thựng th nh t, hoứ ấ ặc đư c xếợ p trong thựng th 2, chứ ắc chắn khụng phải dựng đến thựng th ứ 3 để ếp đồ ật này. x v
L p luậ ận theo cỏch tương tự ta cú để ếp đồ ật a x v Ej jta sẽ khụng c n phầ ải dựng đến thựng thứ +1, vj à như vậy để ếp đồ ậ x v t cuối cựng là aEm mta sẽ khụng cần dựng đến thựng th ứ m+1, tức là ta chỉ ph i dựng tả ối đa thựng chứa là cú thể ếm x p h t cỏc đ vế ồ ật được x p theo ế hoỏn v ị mụ tả ở trờn bằng First Fit. Vậy ta cú điề u phải chứng minh.
Từ bổ đề này ta cú thể suy ra được là nếu tồn tại cỏch đúng thựng tối ưu (và tất nhiờn là luụn tồn tại cỏch như vậy) dựng hết Opt thựng để xếp cỏc đồ vật thỡ cũng sẽ tồn tại hoỏn vị cho phộp ta xếp cỏc đồ vật chỉ dựng hết Opt thựng bằng First Fit. Điều đú cú nghĩa là khụng gian lời giải của phương phỏp mó húa hoỏn vị cú chứa lời giải tối ưu.