Các phƣơng pháp tiếp cận giải bài toán trình tự xe

Một phần của tài liệu Phương pháp tối ưu đàn kiến giải bài toán trình tự xe (Trang 25)

Quy hoạch ràng buộc (CP) là một công cụ chung để giải quyết bài toán thỏa mãn ràng buộc (CSP), tức là, các bài toán mô hình bằng cách xác định các ràng buộc về các giải pháp chấp nhận đƣợc, trong đó một ràng buộc là một mối quan hệ giữa nhiều n số hoặc các biến, mỗi biến lấy một giá trị từ một tên miền nhất định [Tsa93]. Để giải quyết một CSP với một ngôn ngữ CP, ngƣời duy nhất có xác định nó bằng các phƣơng tiện của các biến và các ràng buộc, quá trình giải quyết đƣợc xử lý bởi các thuật toán chung đƣợc tích hợp trong các ngôn ngữ CP. Các thuật toán này, đƣợc gọi là những bộ giải ràng buộc, thƣờng đƣợc dựa trên một hệ thống thăm dò không gian tìm kiếm, cho đến khi một trong hai giải pháp đƣợc tìm thấy, hoặc các bài toán đƣợc chứng minh là không có giải pháp. Để giảm bớt không gian tìm kiếm, phƣơng pháp này đƣợc kết hợp với các kỹ thuật lọc mà thu hẹp lĩnh vực biến đối với một số phần nhất quán.

Bài toán trình tự xe là một chu n mực cổ điển cho các ngôn ngữ CP, và đó là bài toán đầu tiên của CSP ib, thƣ viện của các bài toán thử nghiệm cho bộ giải ràng buộc.

Việc xây dựng CSP của bài toán trình tự xe thƣờng giới thiệu có hai loại

biến và ba loại ràng buộc khác nhau:

• Một khe cắm biến Xi đƣợc kết hợp với mỗi vị trí thứ i trong trình tự xe ô tô. Biến này tƣơng ứng với thứ tự của chiếc xe thứ i trong trình tự và phạm vi của nó là tập hợp của tất cả các lớp xe.

• Một lựa chọn biến Oji đƣợc kết hợp với mỗi vị trí thứ i trong trình tự và mỗi lựa chọn j. Biến này đƣợc gán cho 1 nếu lựa chọn j đã đƣợc cài đặt trên xe thứ i của trình tự , và 0 nếu ngƣợc lại, vì vậy mà phạm vi của nó là {0, 1}.

• Ràng buộc về liên kết xác định mối liên hệ giữa khe và lựa chọn các biến, ví dụ, O ji = 1 khi và chỉ khi lựa chọn j phải đƣợc cài đặt trên Xi. Những ràng buộc này đƣợc thể hiện nhờ vào yếu tố các ràng buộc toàn cầu.

• Ràng buộc về khả năng xác định rằng dung lƣợng trạm không đƣợc vƣợt mức, tức là, cho mỗi lựa chọn j và mỗi dãy xe ô tô, một sự bất bình đẳng tuyến tính xác định rằng tổng của các biến lựa chọn tƣơng ứng phải nhỏ hơn hoặc bằng pi.

• Ràng buộc nhu cầu cụ thể, đối với từng loại xe, số lƣợng xe của lớp này phải đƣợc giải trình tự . Những ràng buộc này đƣợc thể hiện nhờ hầu hết các ràng buộc toàn cầu [VSD91]. Tức là thao tác thực hiện trên các xe phải có thứ tự, thao tác nào thực hiện trƣớc và thao tác nào thực hiện sau

Hầu hết các công trình giải quyết bài toán trình tự xe với CP xem xét các bài toán quyết định, và đầu ra là một trong hai lời giải đáp ứng đủ khả năng ràng buộc, hoặc một thất bại chỉ ra rằng có lời giải nhƣ vậy không tồn tại. Tuy nhiên, Bergen và cộng sự. [ v C01] đã đề xuất một phƣơng pháp tiếp cận ràng buộc cơ bản cho một bài toàn giải trình tự xe cụ thể có chứa cả hai các ràng buộc cứng, mà phải đƣợc thỏa mãn, và những ràng buộc mềm, có thể vi phạm với chi phí.

Quy hoạch ràng buộc đã đƣợc chứng minh là có hiệu quả để giải quyết các bài toán trình tự xe có kích thƣớc nhỏ hoặc dễ, nhƣng nó không cạnh tranh đƣợc với các phƣơng pháp chuyên dụng trên các trường hợp khó khăn hơn hoặc lớn hơn. Để cải thiện quá trình giải pháp của chƣơng trình ràng buộc, Smith đã đề xuất thêm 4 ch n đoán giá trị đặt hàng [Smi96]. Ý tƣởng là để trình tự các ràng buộc "cứng" của xe càng sớm càng tốt, trong đó những ràng buộc của một chiếc xe đƣợc xác định liên quan đến tỷ lệ sử dụng các lựa chọn của nó.

Ngoài ra, R'egin và Puget đã giới thiệu trong [RP97] một ràng buộc trình tự toàn cầu áp đặt giới hạn tối thiểu và tối đa về số lần xuất hiện của giá trị trong thời gian các đơn vị thời gian liên tiếp. Họ đã đề xuất một thuật toán lọc đƣợc

dành riêng để ràng buộc trình tự này và khai thác ngữ nghĩa toàn cầu của nó để thu hẹp hiệu quả hơn các lĩnh vực khác nhau.

Thuật toán lọc này đã đƣợc tích hợp trong bộ giải I OG, thƣ viện CP thƣơng mại, và minh họa về bài toán trình tự xe. Nó cho phép bộ giải ILOG sẽ giải quyết một số trƣờng hợp khả thi hầu nhƣ không ràng buộc, hoặc để chứng minh tính bất khả thi của một số trƣờng hợp vƣợt ràng buộc. Tuy nhiên, một số trƣờng hợp khác, nó vẫn có thể làm giảm các lĩnh vực đủ để làm cho CP dễ xử lý. Gần đây nhất, van Hoeve và cộng sự. [vPRS06] đã đề xuất ba thuật toán lọc mới cho ràng buộc trình tự toàn cầu. Kết quả thực nghiệm về các trƣờng hợp của các bộ thử nghiệm đƣợc cung cấp bởi Lee [LLW98] chỉ ra rằng kết hợp các thuật toán để các thuật toán lọc [RP97] cải thiện đáng kể quá trình giải pháp, dù cho một số trƣờng hợp vẫn không đƣợc giải quyết trong một khoảng thời gian hợp lý.

1.5.2 Quy hoạch số nguyên

Drexl và Kimms [DK01] đã đề xuất một mô hình quy hoạch số nguyên cho phiên bản ra quyết định về bài toán trình tự xe. Mô hình này dựa trên biến Cij (là 0 hoặc 1) kết hợp với mỗi lớp xe i và từng vị trí j-để quyết định xem xe tại vị trí j là của lớp i. Ràng buộc tuyến tính đảm bảo rằng (i) chính xác một lớp xe đƣợc gán cho mỗi vị trí, (ii) tất cả các xe của từng loại đƣợc giao cho một vị trí, và (iii) các tất cả ràng buộc dung lƣợng pk / qkthỏa mãn cho mỗi lựa chọn k. Bài toán trình tự xe đƣợc trộn với một bài toán lập lịch, trong đó xem xét các mục tiêu giảm thiểu tổng độ lệch của thời gian xe dự kiến từ những ý tƣởng. Do đó bài toán đƣợc coi là bài toán trình tự xe với khả năng ràng buộc cứng và mục tiêu là cấp độ lập lịch. Một mô hình quy hoạch số nguyên thứ hai đƣợc đề xuất, dựa trên một số mũ của biến 0-1 yk trong đó yk = 1 nếu chuỗi k đƣợc chọn, trong đó một trình tự có liên quan đến một lớp xe, cho vị trí của các xe thuộc lớp này. Giới hạn trên và dƣới đƣợc tính toán thông qua một phƣơng pháp thế hệ cột. Kết quả tính toán đƣợc trình bày trên một tập hợp các trƣờng hợp tạo ra.

Gravel và cộng sự. [GGP05] đã đề xuất một mô hình quy hoạch số nguyên cho bài toán trình tự xe với khả năng ràng buộc mềm. Mô hình này liên kết biến Cij đã đƣợc sử dụng trong [DK01] và biến Ykj 0-1 cho mỗi lựa chọn k và mỗi vị trí j-để quyết định xem trình tự con có độ dài qk bắt đầu từ vị trí k đáp ứng các ràng buộc dung lƣợng là pk / qk. Ràng buộc tuyến tính đƣợc xác định để đảm bảo rằng các biến Ykj đƣợc gán là một nếu và chỉ nếu trình tự con tƣơng ứng vi phạm các ràng buộc. Mục tiêu là để giảm thiểu tổng của tất cả các biến Ykj. Xây dựng chƣơng trình nguyên này cho phép tác giả tìm giải pháp khả thi cho tất cả các trƣờng hợp của các bộ thử nghiệm đƣợc cung cấp bởi Lee [ W98] trong CSP ib, và 4 trƣờng hợp của các bộ thử nghiệm đƣợc cung cấp bởi Smith. Tuy nhiên, nó không thể chứng minh tối ƣu cho 5 trƣờng hợp khác.

1.5.3 Phƣơng pháp tiếp cận ăn tham ngẫu nhiên

Với một bài toán trình tự xe, ngƣời ta có thể xây dựng một trình tự bằng phƣơng pháp ăn tham, bắt đầu từ một chuỗi rỗng, việc lặp đi lặp lại để thêm một chiếc xe mới vào cuối của trình tự bằng một số hàm heuristic tham lam. Một phƣơng pháp tiếp cận tham lam đầu tiên đƣợc đề xuất bởi Hindi và Ploszaski vào năm 1994 [HP94]. Năm 2003, Gottlieb và cộng sự [GPS03] đã đề xuất và so sánh sáu heuristics tham lam khác nhau cho bài toán trình tự xe. Heuristic thực hiện tốt nhất, trong số sáu heuristics xem xét, dựa trên "tổng tỷ lệ sử dụng động", ví dụ ở mỗi bƣớc khi thêm một xe nhằm tối đa hóa tổng các tỷ lệ sử dụng lựa chọn cần thiết, tỷ lệ sử dụng đƣợc cập nhật tự động mỗi lần khi có một chiếc xe mới đƣợc thêm vào ở cuối trình tự.

Gottlieb và cộng sự. đã chỉ ra rằng cấu trúc tham lam kiểu này, khi kết hợp một cách ngẫu nhiên với nhiều lần khởi tạo, có thể giải quyết rất nhanh chóng tất cả các trƣờng hợp của các bộ thử nghiệm đƣợc cung cấp bởi ee [ W98] trong CSPLib.

1.5.4 Tìm kiếm địa phƣơng

Ý tƣởng về tìm kiếm địa phƣơng là để cải thiện một trình tự của địa phƣơng khám phá "khu phố" của mình, nghĩa là tập hợp các trình tự có thể thu đƣợc từ các trình tự hiện tại bằng cách thực hiện một sự chuyển đổi cơ bản, đƣợc gọi là một "di chuyển". Từ một trình tự ban đầu đƣợc đƣa ra, không gian tìm kiếm là khám phá từ lân cận này đến lân cận khác cho đến khi một trình tự xe sắp xếp tối ƣu đƣợc tìm thấy hoặc cho đến khi một số lƣợng tối đa di chuyển đã đƣợc thực hiện. Nhiều phƣơng pháp tìm kiếm địa phƣơng khác nhau đã đƣợc đề xuất để giải quyết các bài toán trình tự xe. Tuy nhiên, một số phƣơng pháp tìm kiếm địa phƣơng đã đƣợc dành riêng đặc biệt cho bài toán này [PG02, GPS03, PS04].

Biểu diễn những phƣơng pháp tìm kiếm địa phƣơng khác nhau đã đƣợc minh chứng trên trƣờng hợp chu n của CSPLib [GW99].

Cách tiếp cận tìm kiếm địa phƣơng để giải quyết bài toán trình tự sắp xếp xe khác nhau chủ yếu là liên quan đến (i) cách sắp xếp ban đầu đƣợc xây dựng, (ii) các khu vực lân cận xem xét tại mỗi di chuyển, và (iii) (meta) phỏng đoán xem xét để lựa chọn một động thái trong với các khu vực lân cận.

Xây dựng các trình tự sắp xếp ban đầu. Trong hầu hết các trƣờng hợp, trình tự xe sắp xếp ban đầu, là một hoán vị ngẫu nhiên của các loại xe để sản xuất. Tuy nhiên, Gottlieb và cộng sự. [GPS03] đã đề xuất để xây dựng trình tự ban đầu này theo một thuật toán ăn tham, và họ đã chứng minh rằng điều này cải thiện đáng kể quá trình giải quyết.

CHƢƠNG 2. PHƢƠNG PHÁP TỐI ƢU ĐÀN KIẾN

Ở chƣơng 1 luận văn đã đƣợc tìm hiểu về bài toán trình tự xe và một số cách tiếp cận để giải bài toán, chƣơng này luận văn sẽ tìm hiểu phƣơng pháp tối ƣu đàn kiến để giải bài toán trên.

2.1 Từ kiến tự nhiên đến kiến nhân tạo

Những hình ảnh nhận thức đặc biệt của đàn kiến chỉ đơn giản là sự phát triển và hoàn toàn mò mẫm. Trong thực tế, một điều quan trọng trong nghiên cứu về loài kiến là hành vi liên lạc giữa các con kiến hoặc giữa các cá nhân với môi trƣờng, đƣợc dựa trên việc sử dụng các sản ph m hóa chất của các loài kiến. Các hóa chất đó đƣợc gọi là mùi (vết mùi).

2.1.1 Kiến tự nhiên

Khi tìm đƣờng đi, đàn kiến trao đổi thông tin gián tiếp và hoạt động theo phƣơng thức tự tổ chức. Phƣơng thức này tuy đơn giản nhƣng đã giúp cho đàn kiến có thể thực hiện đƣợc những công việc phức tạp vƣợt xa khả năng của từng con kiến, đặc biệt là khả năng tìm đƣờng đi ngắn nhất từ tổ đến nguồn thức ăn [3, tr.16] (xem hình 2.1) (mặc dù, kiến không có khả năng đo độ dài đƣờng đi). Kiến chịu ảnh hƣởng của các vết mùi của các con kiến khác chính là ý tƣởng thiết kế thuật toán ACO.

Để làm đƣợc điều đó, trên đƣờng đi, mỗi con kiến để lại vết mùi dùng để đánh dấu đƣờng đi. Bằng cách cảm nhận vết mùi, con kiến có thể lần theo đƣờng đi đến nguồn thức ăn đƣợc các con kiến khác khám phá theo phƣơng thức chọn ngẫu nhiên, có định hƣớng theo nồng độ vết mùi.

Con kiến chịu ảnh hƣởng của các vết mùi của các con kiến khác, đây là ý tƣởng chính để thiết kế thuật toán ACO.

Thí nghiệm trên cây cầu đôi

Có nhiều thực nghiệm nghiên cứu về hành vi để lại vết mùi và đi theo vết mùi của loài kiến. Thực nghiệm, đƣợc thiết kế bởi Deneubourg và các đồng nghiệp [3, tr.17-19], dùng một chiếc cầu đôi nối từ tổ kiến tới nguồn thức ăn, nhƣ minh họa trong hình 2.2. Họ đã thực nghiệm với tỉ lệ độ dài đƣờng

giữa hai nhánh khác nhau của chiếc cầu đôi, trong đó là độ dài của nhánh dài còn là độ dài của nhánh ngắn.

Trong thực nghiệm thứ nhất, chiếc cầu đôi có hai nhánh bằng nhau (

hình 2.2.a). an đầu, kiến lựa chọn đƣờng đi một cách tự do đi từ tổ đến nguồn thức ăn, cả hai nhánh đều có kiến đi, nhƣng sau một thời gian các con kiến này tập trung đi theo cùng một nhánh. Kết quả có thể đƣợc giải thích nhƣ sau: an đầu không có vết mùi nào trên cả hai nhánh, do đó kiến lựa chọn nhánh bất kỳ với xác suất nhƣ nhau. Một cách ngẫu nhiên, sẽ có một nhánh có số lƣợng kiến lựa chọn nhiều hơn nhánh kia. Do kiến để lại vết mùi trong quá trình di chuyển, nhánh có nhiều kiến lựa chọn sẽ có nồng độ mùi lớn hơn nồng độ mùi của nhánhcòn lại. Nồng độ mùi trên cạnh lớn hơn sẽ ngày càng lớn hơn vì ngày càng có nhiều kiến lựa chọn. Cuối cùng, hầu nhƣ tất cả các kiến sẽ tập trung trên cùng một nhánh.Thực nghiệm này cho thấylà sự tƣơng tác cục bộ giữa các con kiến với thông tin gián tiếp là vết mùi để lại cho phép điều chỉnh hoạt động vĩ mô của đàn kiến.

Hình 2.2: Thực nghiệm cây cầu đôi

(a) Hai nhánh có độ dài bằng nhau. (b) Hai nhánh có độ dài khác nhau.

Trong thực nghiệm thứ hai (xem hình 2.2 b), độ dài của nhánh dài gấp đôi độ dài nhánh ngắn (tỉ lệ ). Trong trƣờng hợp này, sau một thời gian tất cả các con kiến đều chọn đoạn đƣờng ngắn hơn. Cũng nhƣ trong thực nghiệm thứ nhất, ban đầu đàn kiến lựa chọn hai nhánh đi nhƣ nhau, một nửa số kiến đi theo nhánh ngắn và một nửa đi theo nhánh dài (mặc dù trên thực tế, do tính ngẫu nhiên có thể một nhánh nào đó đƣợc nhiều kiến lựa chọn hơn nhánh kia). Nhƣng thực nghiệm này có điểm khác biệt quan trọng với thực nghiệm thứ nhất: Những kiến lựa chọn đi theo nhánh ngắn sẽ nhanh chóng quay trở lại tổ và khi phải lựa chọn giữa nhánh ngắn và nhánh dài, kiến sẽ thấy nồng độ mùi trên nhánh ngắn cao hơn nồng độ mùi trên nhánh dài, do đó sẽ ƣu tiên lựa chọn đi theo nhánh ngắn hơn. Tuy nhiên, trong thời gian đầu không phải tất cả các kiến đều đi theo nhánh ngắn hơn.Phải mất một khoảng thời gian tiếp theo nữa bầy kiến mới lựa chọn đi theo nhánh ngắn. Điều này minh chứng bầy kiến đã sử dụng phƣơng thức thăm dò, tìm đƣờng mới.

Một điểm thú vị nữa là quan sát xem sẽ xảy ra điều gì khi quá trình tìm kiếm đang hội tụ, lại xuất hiện một đƣờng mới từ tổ đến nguồn thức ăn. Việc này đƣợc thực nghiệm nhƣ sau: an đầu từ tổ đến nguồn thức ăn chỉ có một nhánh dài và sau 30 phút, thêm một nhánh ngắn (xem hình 2.3). Trong trƣờng hợp này, nhánh ngắn thƣờng không đƣợc kiến chọn mà chúng tập trung đi trên nhánh dài. Điều này có thể giải thích nhƣ sau: nồng độ vết mùi trên cạnh dài cao

và sự bay hơi của vết mùi diễn ra chậm nên đại đa số các con kiến vẫn lựa chọn nhánh dài (có nồng độ vết mùi cao).Hành vi này tiếp tục đƣợc củng cố kiến chọn đi theo nhánh dài, ngay cả khi có một nhánh ngắn xuất hiện. Việc bay hơi vết mùi là cơ chế tiện lợi cho việc tìm đƣờng mới, nghĩa là việc bay hơi có thể giúp kiến quên đi đƣờng đi tối ƣu địa phƣơng đã đƣợc tìm thấy trƣớc đây để tìm

Một phần của tài liệu Phương pháp tối ưu đàn kiến giải bài toán trình tự xe (Trang 25)