Cắt tuyến tính trong Excel. Các chương trình để tối ưu hóa việc cắt vật liệu

  • 07.03.2022

Cắt tuyến tính tiết kiệm vật liệu (cắt khuôn) phù hợp với nhiều ngành công nghiệp và trong xây dựng. Đây là việc cưa các khúc gỗ và ván trong chế biến gỗ, cắt thanh, thanh cốt thép, góc, kênh, ống, dầm chữ I thành các khoảng trống ...

Trong sản xuất kết cấu kim loại và kỹ thuật cơ khí, cắt ngang các cuộn bằng giấy và vải trong công nghiệp bột giấy và công nghiệp nhẹ.

Mặc dù rõ ràng là đơn giản, nhưng giải pháp của các bài toán cắt tuyến tính không phải là rất dễ dàng, nhưng đáng giá. Sự ra đời của phương pháp tiếp cận khoa học để cắt vật liệu đúc cho phép bạn giảm chi phí của chúng, đôi khi hơn 10%! Đọc bài báo đến cuối và chắc chắn rằng những từ này là đúng.

Chủ đề đang được xem xét liên quan đến các bài toán lập trình tuyến tính. Để giải quyết những vấn đề như vậy, các nhà khoa học trong 70 năm qua đã đưa ra một số phương pháp khác nhau.

Phương pháp chỉ số L.V. Kantorovich và V.A. Zalgallera, với một kỹ năng nhất định, cho phép bạn thực hiện hiệu quả việc cắt tuyến tính một cách “thủ công” mà không cần sử dụng công nghệ máy tính. Tôi khuyên những độc giả tò mò nên tự làm quen với phương pháp này bằng cách đọc cuốn sách “Cắt hợp lý vật liệu công nghiệp” của các tác giả có tên tuổi ở trên.

Phương pháp simplex dựa trên ý tưởng của L.V. Kantorovich, đã được mô tả và phát triển chi tiết bởi một số nhà khoa học từ Hoa Kỳ vào giữa thế kỷ 20. Add-in MS Excel "Tìm kiếm giải pháp" (Solver) sử dụng thuật toán này. Đó là với phương pháp này màvượt trộichúng ta sẽ giải quyết vấn đề cắt tuyến tính trong bài viết này.

Sau đó, các thuật toán di truyền, tham lam và đàn kiến ​​xuất hiện và được phát triển. Tuy nhiên, chúng tôi sẽ giới hạn bản thân trong việc liệt kê chúng và bắt tay vào công việc kinh doanh, mà không leo vào rừng lý thuyết (mặc dù ở đó, “trong tự nhiên”, điều đó rất thú vị).

Hãy bật Excel và sử dụng một ví dụ đơn giản về việc cắt thanh kim loại thành các bộ phận, chúng ta sẽ làm quen với một trong những cách giải quyết các vấn đề thực tế về cắt tuyến tính. Các nhà toán học thường gọi bài toán này là "bài toán cắt".

Tôi không phát minh ra dữ liệu ban đầu cho ví dụ, nhưng lấy nó từ bài báo của Pokrovsky M.A. “Giảm thiểu tổn thất không thể tránh khỏi của nguyên vật liệu trong sản xuất công nghiệp khi cắt thành từng miếng trống” đăng trên tạp chí khoa học kỹ thuật điện tử “Engineering Bulletin” do FGBOU VPO xuất bản “MSTU im. N.E. Bauman (liên kết:engbul. bmstu. en/ doc/775784. html).

Mục tiêu mà tôi theo đuổi là so sánh kết quả của việc giải quyết vấn đề.

Một ví dụ về giải bài toán cắt tuyến tính trong MS Excel.

Hãy đồng ý rằng:

1. Phôi là vật liệu thô ở dạng thanh, dải, que, v.v. cùng chiều dài.

2. Chi tiết là yếu tố cần có được bằng cách cắt các khoảng trống ban đầu thành nhiều mảnh.

3. Chiều rộng của cưa, cắt, chà được lấy bằng không.

Nhiệm vụ:

Để hoàn thành một trong các đơn đặt hàng, bộ phận mua sắm phải cắt ba kích thước tiêu chuẩn của các bộ phận trên kéo cắt kết hợp từ các thanh-phôi giống hệt nhau với chiều dài 1500 mm:

151 miếng dài 330 mm

206 mảnh dài 270 mm

163 mảnh dài 190 mm

Yêu cầu phải tìm ra phương án cắt tối ưu sử dụng lượng vật liệu tối thiểu và theo đó, đưa ra lượng chất thải tối thiểu.

Dữ liệu ban đầu:

1. Chiều dài của ô trống ban đầu Lh tính bằng milimét, chúng tôi viết trong ô kết hợp

D3E3F3: 1500

2. Chúng tôi chỉ định số tôi tất cả các kích thước tiêu chuẩn của các bộ phận, bắt đầu từ kích thước dài nhất và kết thúc bằng kích thước ngắn nhất trong các ô

D4; E 4; F4: 1; 2; 3

3. Chiều dài phần Ldtôi chúng tôi viết trong milimét

D5; Xăng E5; F5: 330; 270; 190

4. Số lượng chi tiết ndtôi từng mảnh được đưa vào

D6; E6; F6: 151; 206; 163

5. Chúng tôi tiến hành một giai đoạn rất quan trọng - điền vào các tùy chọn cắt.

Phải nhớ và hiểu 2 nguyên tắc để thực hiện công việc này.

1. Chiều dài chất thải phải nhỏ hơn phần nhỏ nhất ( 0< lo j < Ldmin ).

2. Chúng tôi bắt đầu "đặt" các bộ phận vào phôi với các bộ phận lớn nhất và với số lượng lớn nhất, luôn chuyển động theo hướng giảm dần.

Nếu không có kích thước bộ phận trong tùy chọn cắt, thì chúng ta để trống ô, chúng ta sẽ không viết số 0 để thuận tiện cho việc nhận biết trực quan của bảng.

Tùy chọn cắt số 1:

Cố gắng cắt bỏ 5 phần số 1 từ một ô trống là không thể, vì vậy chúng tôi viết vào ô

Thêm phần số 2 hoặc phần số 3 vào tổ cũng không được nên ta để trống các ô.

Tùy chọn cắt số 2:

Chúng tôi giảm số lượng phần số 1 xuống 1 so với phiên bản trước và viết nó vào

Chúng tôi đang cố gắng thêm 2 phần số 2 - phần này không hoạt động, vì vậy chúng tôi thêm vào

Vẫn có thể bổ sung vết cắt bằng chi tiết số 3. Chúng tôi tham gia vào

Tuân thủ các nguyên tắc đã nêu, chúng tôi điền vào bằng cách loại suy tất cả 18 phương án cắt có thể có trong trường hợp này.

Sau khi tự lập một vài bảng các phương án cắt, bạn sẽ hiểu logic của các hành động và sẽ dành một vài phút cho công việc này.

Nếu nguyên tắc đầu tiên không được thực hiện trong quá trình cắt, thì ô có chiều dài của điểm xuất phát sẽ tự động được sơn màu đỏ. Định dạng có điều kiện được áp dụng cho các ô G7… G24 rõ ràng sẽ giúp bạn trong công việc này.

Trong các ô H7 ... H24 không viết gì cả! Chúng được sử dụng để hiển thị kết quả của giải pháp!

Chuẩn bị cho giải pháp:

* Trong các ô G7 ... G24, độ dài của chất thải (vết cắt) còn lại do quá trình cắt được tính theo công thức

lo j = L h -Σ (Ldtôi * ndij )

6. Số lượng các bộ phận của mỗi kích thước tiêu chuẩn, được thực hiện theo tất cả các tùy chọn lồng nhau được áp dụng, sẽ được tính trong các ô D26, E26 và F26 theo công thức

ndtôicalc = Σ (ndij * nhj )

Số bộ phận trong kế hoạch cắt được tìm thấy ở cuối giải pháp phải hoàn toàn tương ứng với số bộ phận đã chỉ định!

7. Số lượng phôi cần thiết để hoàn thành kế hoạch cắt tối ưu sẽ được xác định trong ô kết hợp D27E27F27 bằng cách sử dụng công thức

n calc =ΣN hj

8. Tổng chiều dài của tất cả các ô trống cần thiết để thực hiện lồng tuyến tính của tất cả các phần sẽ được tính trong ô kết hợp D28E28F28 bằng công thức

Lh Σ = L h *ntừ tính toán

9. Tổng chiều dài của tất cả các chất thải do thực hiện kế hoạch cắt đã tìm thấy sẽ được tính trong ô kết hợp D29E29F29 bằng cách sử dụng công thức

Lxung quanh Σ = Σ (Lxung quanhj * nhj )

10. Tỷ lệ chất thải được tạo ra bởi kế hoạch cắt tuyến tính tối ưu từ tổng lượng vật liệu được sử dụng sẽ được tính toán trong ô hợp nhất D30E30F30 bằng công thức

Ωo = Lo Σ / Lз Σ

Giải pháp:

Quá trình chuẩn bị đã hoàn tất, 18 tùy chọn để cắt tối ưu nhất một phôi thành các bộ phận được xác định và tất cả các công thức cần thiết được nhập. Bây giờ chúng ta phải giải quyết vấn đề chính: xác định kế hoạch cắt tối ưu - bao nhiêu khoảng trống và theo những phương án cắt nào để cắtđể cuối cùng có được tất cả các bộ phận cần thiết với số lượng phù hợp với mức lãng phí tối thiểu.

1. Chọn trong menu chính "Dịch vụ" - "Tìm kiếm giải pháp ...".

2. Trong cửa sổ cùng tên "Tìm kiếm giải pháp" hiện ra, chúng ta thực hiện cài đặt.

2.1. Chúng tôi gán tổng chiều dài của chất thải cho hàm mục tiêu Lo Σ và nhập liên kết vào cửa sổ ô đích.

2.2. Đặt công tắc "Bằng:" sang vị trí "giá trị nhỏ nhất".

2.3. Chỉ định các ô với các biến Nz j trong cửa sổ Thay đổi Ô.

2.4. Chúng tôi nhập các hạn chế trong cửa sổ cùng tên. Theo điều kiện, chúng tôi chỉ ra sự cần thiết phải có sự bình đẳng của Nd tôi và giải quyết Nd icalc số lượng các bộ phận, cũng như các biến Nz j- số lượng ô trống ước tính theo các tùy chọn cắt - chúng tôi áp đặt một hạn chế: chúng phải là số nguyên.

3. Chúng tôi nhấn nút "Tham số" và trong cửa sổ "Tham số tìm kiếm giải pháp" bật lên, chúng tôi thực hiện cài đặt như được hiển thị trong ảnh chụp màn hình sau. Đóng cửa sổ bằng nút OK.

4. Trong cửa sổ "Tìm kiếm giải pháp", hãy nhấp vào nút "Chạy" và đợi Excel tìm giải pháp. Việc này có thể sẽ mất vài phút.

5. Sau khi lưu giải pháp tìm được bằng nút OK, kết quả sẽ được hiển thị trong các ô H7 ... H24 trên trang tính Excel.

Hình ảnh sau đây cho thấy phương án cắt tuyến tính tối ưu được tìm thấy.

Kết quả là gì?

Cắt tuyến tính trong khoảng trống Excel cho các tác vụ như được thảo luận trong bài viết này được thực hiện theo phương pháp được mô tả ở trên trong 10-15 phút! “Theo cách thủ công”, nếu không biết phương pháp của các chỉ số Kantorovich, bạn sẽ không tìm ra giải pháp trong thời gian như vậy.

Bằng cách chạy "Tìm kiếm giải pháp" nhiều lần với các thông số tìm kiếm khác nhau, chúng tôi đã tìm ra 5 phương án khác nhau cho việc chặt bỏ khoảng trống. Cả 5 kế hoạch đều yêu cầu số ô trống như nhau - 93 và chỉ có 2,21% lãng phí !!! Các kế hoạch này gần như tốt hơn 6% so với kế hoạch do Pokrovsky tính toán và tiết kiệm hơn 10% so với kế hoạch "Truyền thống" (xem liên kết đến nguồn gốc trong phần đầu của bài viết). Một kết quả rất xứng đáng đã đạt được một cách nhanh chóng và không cần sử dụng các chương trình đắt tiền.

Cần lưu ý rằng bổ trợ Excel Solver ("Tìm kiếm giải pháp"), sử dụng phương pháp simplex khi giải các bài toán lập trình tuyến tính, có thể hoạt động với không quá 200 biến. Như đã áp dụng cho bài toán cắt tuyến tính mà chúng ta đã xem xét, điều này có nghĩa là số lượng cành giâm không được vượt quá 200 phương án. Đối với các nhiệm vụ đơn giản, điều này là đủ. Đối với các nhiệm vụ phức tạp hơn, bạn nên cố gắng áp dụng “hỗn hợp” của thuật toán “tham lam” và phương pháp Bộ giải đơn giản, chọn không quá 200 công việc kinh tế nhất từ ​​danh sách đầy đủ các cành giâm. Sau đó, chúng tôi tích lũy sự kiên nhẫn và đạt được kết quả. Bạn có thể cố gắng chia một vấn đề phức tạp thành nhiều vấn đề đơn giản, nhưng “mức độ tối ưu” của giải pháp tìm được rất có thể sẽ thấp hơn.

Có lẽ lựa chọn được cân nhắc để giải quyết các vấn đề về cắt tuyến tính không phải là “nhào lộn trên không”, nhưng nó chắc chắn là một bước tiến so với cách tiếp cận “truyền thống” trong nhiều ngành công nghiệp.

Việc sử dụng phần bổ trợ MS Excel "Tìm kiếm Giải pháp" (Solver) đã được thảo luận trên blog một lần trong một bài báo. Tôi nghĩ rằng công cụ tuyệt vời này đáng được chú ý và sẽ giúp bạn nhiều lần giải quyết một cách duyên dáng và nhanh chóng một số vấn đề mới không hề nhỏ.

P.S. Liên kết đến phần mềm cắt tuyến tính miễn phí tốt nhất mà tôi tìm thấy trên web:

http://stroymaterial-buy.ru/raschet/70-raskroy-lineynih-izdeliy.html

http://forum-okna.ru/index.php?app=core&module=attach§ion=attach & attachment_id = 7508

http://forum.dwg.ru/attachment.php?attachmentid=114501&d=13823277 74

http://www.planetcalc.ru/917/

Các chương trình trên hai liên kết cuối cùng thực hiện heuristics tham lam và thực hiện lồng tuyến tính trong tác vụ từ bài viết, sử dụng tới 103 ô trống. Việc sử dụng các thuật toán tham lam là hợp lý trong các trường hợp cần giảm tổng thời gian của nguyên công cắt với quá nhiều phương án cắt trong các phương án tối ưu hơn.

Bên dưới bài viết trong khối "Nhận xét", bạn có thể viết ý kiến ​​của bạn, bạn đọc thân mến.

Xem Mô hình lập trình tuyến tính cho các vấn đề lồng ghép.

Ví dụ 1. Các sản phẩm của công ty giấy được sản xuất dưới dạng cuộn giấy có chiều rộng tiêu chuẩn - mỗi cuộn 2 mét. Theo đơn đặt hàng đặc biệt của người tiêu dùng, công ty cung cấp các cuộn có kích thước khác, trong đó các cuộn tiêu chuẩn được cắt. Đơn đặt hàng điển hình cho các cuộn có kích thước không tiêu chuẩn được đưa ra trong bảng.


Cần phải tìm ra sự kết hợp của các tùy chọn khác nhau để cắt các cuộn tiêu chuẩn để đáp ứng đầy đủ các đơn đặt hàng đã nhận với tổn thất tối thiểu (lãng phí).
Hãy xem xét tất cả các tùy chọn có thể có để cắt một cuộn tiêu chuẩn, chúng tôi sẽ đưa ra dữ liệu tương ứng trong Bảng.
Chiều rộng cuộn (m)Tùy chọn cắt cuộnSố lượng cuộn tối thiểu
1 2 3 4 5 6
0,5 0 2 2 4 1 0 150
0,7 1 1 0 0 2 0 200
0,9 1 0 1 0 0 2 300
Chất thải trong m 0,4 0,3 0,1 0 0,1 0,2 -

Hãy xác định các biến:
X j - số lượng cuộn tiêu chuẩn được cắt theo tùy chọn j, j = 1, 2, 3,4,5, 6.
Các hạn chế liên quan trực tiếp đến yêu cầu đảm bảo sản xuất số lượng cuộn không tiêu chuẩn theo yêu cầu. Sử dụng dữ liệu trong bảng, chúng tôi nhận được:
2X 2 + 2 X 3 + 4 X 4 + X 5 \ u003d 150 - số lượng cuộn rộng 0,5 m,
X 1 + X 2 + 2 X 5 \ u003d 200 - số cuộn chiều rộng 0,7 m,
X 1 + X 3 + 2 X 6 \ u003d 300 - số cuộn chiều rộng 0,9 m.

Biểu thức cho tổng lượng giấy bị hao hụt (lãng phí) (tính bằng m) là
0,4X 1 + 0,3 X 2 + 0,1 X 3 + 0,1 X 5 + 0,2 X 6.

Như vậy, mô hình toán tổng quát có dạng
min f (x) \ u003d 0,4 X 1 + 0,3X 2 + 0,1X 3 + 0,1X 5 + 0,2X 6.
với các hạn chế:
2X 2 + 2 X 3 + 4 X 4 + X 5 = 150
X 2 + X 2 + 2 X 5 = 200
X 2 + X 3 + 2 X 6 = 300

Vấn đề cắt vật liệu

Nhiệm vụ này là phát triển một kế hoạch cung cấp bộ sản phẩm cần thiết với mức lãng phí tối thiểu (về chiều dài, diện tích, trọng lượng, chi phí, v.v.) khi cắt vật liệu hoặc cung cấp số lượng bộ sản phẩm tối đa. Ví dụ # 2. Cần phải xây dựng một kế hoạch tối ưu để cắt các loại thép lá tiêu chuẩn, đảm bảo sản lượng theo kế hoạch của các loại phôi thép với tổng lượng phế thải tối thiểu, nếu biết rằng bốn loại phôi thép khác nhau phải được cắt từ một lô thép tấm. với số lượng bi (i = 1, 2, ..., 4) mảnh. Một tấm thép có kích thước tiêu chuẩn có thể được cắt theo bốn cách. Mỗi phương pháp cắt có thể tương ứng với một biểu đồ cắt. Từ biểu đồ cắt, sản lượng của phôi ở các loại khác nhau a ij (i = 1, 2,… 4; j = 1,2,…, 4), cũng như vùng thải cj (j = 1, 2 ,…, N) lúc cắt một tấm thép theo phương pháp cắt thứ j. Bao nhiêu tấm thép phải được cắt bằng cách này hay cách khác để lãng phí là nhỏ nhất?

bàn số 3

Các loại
khoảng trống

Kế hoạch nhiệm vụ cho số ô trống (b 1)

Sản lượng khoảng trống (chiếc) các loại khác nhau
từ các biểu đồ lồng nhau (a ij)

1 2 3 4
1 240 1 4 0 1
2 200 1 0 4 0
3 120 1 0 0 3
4 140 1 1 0 3
Khu vực chất thải, m 2
(cj)
1,4 0,1 2,1 0,1

Hãy lập một mô hình kinh tế-toán học của bài toán. Gọi x j - lượng vật liệu nguồn (thép lá) phải cắt theo một trong các phương pháp j. Các ràng buộc trong nhiệm vụ phải tương ứng với sản lượng theo kế hoạch của các khoảng trống thuộc nhiều loại khác nhau. Hàm mục tiêu là tìm ra lượng lãng phí tối thiểu khi cắt

F = 1,4 x 1 +0,1 x 2 +2,1 x 3 +0,1 x 4 → (tối thiểu) ..
Hạn chế đối với sản lượng phôi của loại thứ i đối với tất cả các phương pháp cắt thứ j:

Ví dụ # 3. Để cắt (cưa, gia công), vật liệu của một mẫu được cung cấp với số lượng là một đơn vị. Yêu cầu phải tạo ra từ nó l các thành phần khác nhau với số lượng tỷ lệ với các số b 1, b 2,…, b l (điều kiện đầy đủ). Mỗi đơn vị vật liệu có thể được cắt theo n cách khác nhau và sử dụng phương pháp thứ i (i = 1, 2,…, n) cho ra đơn vị thứ i của sản phẩm thứ k (k = 1, 2,…, l ). Cần phải tìm một phương án cắt cung cấp số lượng bộ tối đa.
Hãy lập một mô hình kinh tế-toán học của bài toán.
Gọi x i là số đơn vị vật liệu được cắt theo phương pháp thứ i và x là số bộ sản phẩm được sản xuất. Sau đó, hàm mục tiêu được giảm xuống để tìm

F = x → (tối đa),
với các hạn chế: bằng tổng lượng vật liệu bằng tổng các đơn vị của nó, được cắt theo nhiều cách khác nhau; theo yêu cầu về tính đầy đủ và không phủ định của các biến.

Ví dụ # 4. Công ty có khúc gỗ dài L m, phải cắt thành những khúc gỗ có chiều dài l 1, l 2, l 3 m với số lượng lần lượt là p 1, p 2, p 3.
Cần thiết lập một kế hoạch tối ưu để cắt vật liệu, đảm bảo tối thiểu lãng phí, tùy thuộc vào kế hoạch sản lượng phôi. Dữ liệu ban đầu được đưa ra trong bảng.

Một nhiệm vụChiều dàiKích thước khoảng trống, mSố lượng ô trống, chiếc.
l 1l 2l 3p1p2p 3
68 6,5 2,1 2,3 1,4 600 720 900

Giải pháp: Đầu tiên, chúng ta hãy tạo một mô hình toán học cho vấn đề của chúng ta. Các phương án cắt giảm có thể xảy ra và mức lãng phí cho mỗi phương án sẽ được viết dưới dạng bảng.
Chiều dài phôiTùy chọn cắtSố ô trống
1 2 3 4 5 6 7
2,1 3 2 2 1 1 0 0 600
2,3 0 1 0 1 0 2 1 720
1,4 0 0 1 1 3 1 3 900
Còn lại, m0,2 0 0,9 0,7 0,2 0,5 0

Ký hiệu x i số lượng bản ghi được cắt theo tùy chọn thứ i (i = 1..7). Khi đó, tổng lượng chất thải còn lại sẽ được viết dưới dạng hàm tuyến tính:
Z = 0,2x1 + 0x2 + 0,9x3 + 0,7x4 + 0,2x5 + 0,5x6 + 0x7
Đồng thời, phải đáp ứng các điều kiện để hoàn thành kế hoạch về số lượng ô trống, tức là
3x1 + 2x2 + 2x3 + x4 + x5 = 600
x2 + x4 + 2x6 + x7 = 720
x 3 + x 4 + 3x 5 + x 6 + 3x 7 = 900

Do đó, để giải quyết vấn đề đã nêu, cần phải tìm minZ dưới các hạn chế. Vì minZ = -max (-Z (x)) nên thay vì bài toán cực tiểu hàm, chúng ta sẽ giải bài toán cực đại hàm:
Z = - (0,2x 1 + 0x 2 + 0,9x 3 + 0,7x 4 + 0,2x 5 + 0,5x 6 + 0x 7)

Ví dụ số 5. Để may một sản phẩm, bạn cần cắt ra 6 phần từ vải. Tại xưởng may, người ta đưa ra hai phương án cắt vải. Bảng (nằm bên dưới) cho thấy các đặc điểm của các tùy chọn cắt cho 10 m 2 vải, độ hoàn chỉnh, tức là số bộ phận của một loại nhất định cần thiết để may một sản phẩm. Lượng vải cung cấp hàng tháng cho các sản phẩm may loại này là 405 m 2. Dự định trong tối mai sẽ may 90 món.
Xây dựng một mô hình toán học của bài toán cho phép bạn hoàn thành kế hoạch cắt may với lượng chất thải tối thiểu trong tháng tới.

Bảng - Đặc điểm của các phương án cắt các mảnh vải 10m 2

Tùy chọn cắt Số bộ phận, mảnh / cắt Chất thải, m 2 / lần cắt
1 2 3 4 5 6
1 60 0 90 40 70 90 0,5
2 80 35 20 78 15 0 0,35
Tính hoàn chỉnh, mảnh / sản phẩm 1 2 2 2 2 2

Tuyên bố toán học của vấn đề

Biến nhiệm vụ
Trong bài toán này, các giá trị yêu cầu không được chỉ ra rõ ràng, nhưng người ta nói rằng kế hoạch hàng tháng để may 90 sản phẩm phải được hoàn thành. Đối với việc may đo 90 sản phẩm mỗi tháng, yêu cầu phải cắt một số lượng bộ phận được xác định nghiêm ngặt. Hình cắt được làm từ các mảnh vải có kích thước 10 m 2 theo hai cách khác nhau, cho phép bạn có được một số chi tiết khác nhau. Vì không biết trước sẽ cắt bao nhiêu vải theo cách thứ nhất và bao nhiêu vải theo cách thứ hai, nên theo các giá trị mong muốn, bạn có thể đặt số đoạn vải có kích thước 10 m 2 được cắt theo từng phương pháp:
x 1 - số mảnh vải 10m 2 cắt theo phương pháp thứ nhất trong tháng, [cắt / tháng];
x 2 - số lượng mảnh vải, mỗi mảnh 10m 2, cắt theo phương pháp đầu tiên trong tháng, [cắt / tháng];

hàm mục tiêu
Mục tiêu của việc giải quyết vấn đề là hoàn thành kế hoạch với một lượng chất thải tối thiểu. Vì số lượng sản phẩm được lên kế hoạch nghiêm ngặt (90 sản phẩm / tháng), thông số này không mô tả CF, nhưng đề cập đến một hạn chế, sự thất bại có nghĩa là vấn đề chưa được giải quyết. Và tiêu chí đánh giá hiệu quả của việc thực hiện quy hoạch là thông số “lượng chất thải”, phải giảm thiểu. Vì khi cắt một mảnh (10 m 2) vải theo phương án 1, lượng phế liệu thu được là 0,5 m 2 và theo phương án 2 - 0,35 m 2 (xem bảng 1), tổng lượng phế liệu khi cắt ( CF) có lượt xem
L (x) = 0,5x1 + 0,35x2 = tối thiểu,

Những hạn chế
Số lần cắt vải theo nhiều cách khác nhau được giới hạn bởi các điều kiện sau:

  • Kế hoạch may đo sản phẩm phải được hoàn thành, nói cách khác, tổng số bộ phận cắt được phải đủ để có thể may 90 sản phẩm mỗi tháng từ nó, cụ thể là: phải có ít nhất 90 bộ phận thuộc loại 1 và các bộ phận thuộc các loại khác - ít nhất 180 (xem mức độ đầy đủ trong bảng).
  • Lượng vải tiêu thụ không được vượt quá hàng tháng trong kho;
  • Số mảnh vải đã cắt không được âm.
Hạn chế về kế hoạch may áo khoác có hình thức dự thi có ý nghĩa như sau.
(Tổng số phần cắt số 1 cho tất cả các phương án) ≥ (90 miếng);
(Tổng số bộ phận số 2 được cắt cho tất cả các phương án) ≥ (180 cái);
(Tổng số bộ phận cắt số 6 cho tất cả các phương án) ≥ (180 cái);

Về mặt toán học, những hạn chế này được viết là :
60x1 + 80x2 ≥90;
35x2 ≥180;
90x1 + 20x2 ≥180;
40x1 + 78x2 ≥180;
70x1 + 15x2 ≥180;
90x1 ≥180;

Giới hạn tiêu thụ mô có các hình thức ghi sau:
có ý nghĩa
(tổng số vải cắt mỗi tháng) ≤ (405m2)
toán học
x 1 + x 2 ≤405/10

Tính không âm của số đoạn bị cắt được cho ở dạng
x 1 ≥ 0, x 2 ≥ 0

Như vậy, mô hình toán học của bài toán có dạng
L (x) \ u003d 0,5x 1 + 0,35x 2 \ u003d min [m 2 chất thải / tháng],
60x1 + 80x2 ≥90;
35x2 ≥180;
90x1 + 20x2 ≥180;
40x1 + 78x2 ≥180;
70x1 + 15x2 ≥180;
90x1 ≥180;
x 1 + x 2 ≤40,5
x 1 ≥ 0, x 2 ≥ 0

Ví dụ số 6. Có 69 đường ống cho mạng lưới sưởi ấm, mỗi đường 1070 cm. Chúng phải được cắt thành các đường ống 130, 150 và 310 cm. Hãy tìm một phương án như vậy để cắt các đường ống vào, trong đó chất thải sẽ là ít nhất.

Giai đoạn 1. Chúng tôi xác định các phương án để cắt ống tối ưu.

Tùy chọn cắt 1 2 3 4 5 6 7 8 9 10 11 12 13
310 3 2 2 2 2 1 1 1 1 0 0 0 0
150 0 3 2 1 0 3 2 1 0 3 2 1 0
130 1 0 1 2 3 2 3 4 5 4 5 7 8
Còn lại 10 0 20 40 60 50 70 90 110 100 120 10 30

Giai đoạn 2.
Hãy lập một mô hình kinh tế-toán học của bài toán. Hãy ký hiệu là x j - số lượng ống cần phải cắt theo một trong các cách j. Hàm mục tiêu là tìm ra lượng lãng phí tối thiểu khi cắt:
10x 1 + 20x 3 + 40x 4 + 60x 5 + 50x 6 + 70x 7 + 90x 8 + 110x 9 + 100x 10 + 120x 11 + 10x 12 + 30x 13 → tối thiểu

x 1 + x 3 + x 4 + x 5 + x 6 + x 7 + x 8 + x 9 + x 10 + x 11 + x 12 + x 13 = 69

Trả lời: chỉ nên sử dụng tùy chọn cắt thứ hai (không lãng phí)

Chương trình được thiết kế để tối ưu hóa việc cắt các biên dạng và các vật liệu dài khác (thanh, khúc gỗ, đường ống, bệ cửa sổ).
Thuật toán "xếp chồng dày đặc" được sử dụng, nghĩa là sản phẩm đã lấy được đặt trên phần còn lại ngắn nhất của phôi mà nó được đặt trên đó. Nếu nó không phù hợp với bất kỳ đâu, một ô trống mới sẽ được lấy. Nhiệm vụ của tối ưu hóa là tìm ra một chuỗi các sản phẩm trong đó sẽ sử dụng ít khoảng trống hơn và thời gian của các mặt hàng vụn kinh doanh sẽ dài hơn. Ở biện pháp đầu tiên, các vật phẩm được đặt trên roi theo thứ tự ngẫu nhiên. Có một "dân số ban đầu". Trong quá trình giải quyết, quần thể đột biến và nhân lên, những mẫu vật không đạt yêu cầu sẽ chết, còn những mẫu tốt nhất tiếp tục phát triển. Mọi thứ, như trong thế giới động thực vật + chọn lọc nhân tạo.

Bản demo trực tiếp trên trang web


Bắt đầu

Thuận lợi

  • Windowsoft: cắt cung cấp bản đồ cắt chất lượng cao. Nhiều triển khai xác nhận hệ số cắt thực tế không quá 1% khi tối ưu hóa các lô từ 30 đường viền (~ 120 lần cắt)
  • Để đọc dữ liệu ban đầu và ghi lại kết quả cắt, chương trình sử dụng các định dạng tệp văn bản đơn giản, giúp đơn giản hóa việc tích hợp với các hệ thống kế toán do khách hàng thực hiện.
  • Nếu cần, có thể thực hiện lồng trong Linux hoặc OS X trong trình duyệt hoặc Node.js chuyển các tham số thông qua các đối tượng url, web socket hoặc javascript

Các thuật toán của trình tối ưu hóa tuyến tính

Windowsoft: Việc cắt sử dụng một thuật toán di truyền. Bản chất của nó là:
Hãy gọi mỗi lần phân phối sản phẩm bằng roi vọt là một giải pháp. Hãy để chúng tôi xác định một hàm mục tiêu cho phép chúng tôi so sánh chất lượng của các giải pháp. Hãy để chúng tôi hình thành một số giải pháp tùy ý, gọi chúng là một thế hệ. Hãy xác định các quy tắc để có được thế hệ tiếp theo. Các trường hợp có chức năng mục tiêu tốt nhất chuyển phần lớn "vốn gen" của chúng, đây là "chọn lọc nhân tạo" của chúng tôi. Bây giờ nó vẫn để lại hệ thống cho chính nó, để nó thay đổi và tối ưu hóa kết quả cắt
Trong quá trình phát triển, phương pháp "Monte Carlo" đã được thử nghiệm, khi các "thể hiện" của chúng ta là ngẫu nhiên và không phụ thuộc vào nhau, và "thuật toán Ant" (ACO-ant colony Optimization). Tất cả các phương pháp được chứng minh là khá hiệu quả, nhưng thuật toán di truyền hóa ra lại hiệu quả hơn một chút.

Tùy chọn giao hàng

Có hai tùy chọn phân phối cho Windowsoft: mô-đun cắt cắt - như một phần của giải pháp tích hợp cho Quản lý Sản xuất Tùy chỉnh và dưới dạng một tệp thực thi riêng biệt. Tương tác với chương trình cắt trong kịch bản đầu tiên hoàn toàn bị ẩn với người dùng. Người vận hành làm việc với các tài liệu tiêu chuẩn 1C:

  • Dựa trên đơn đặt hàng của khách hàng, một kế hoạch sản xuất được hình thành
  • Căn cứ vào kế hoạch - nhiệm vụ ca với danh sách các sản phẩm và nguyên vật liệu cần thiết
  • Việc làm tổ được tối ưu hóa bên trong đơn đặt hàng sản xuất
  • Trong quá trình tối ưu hóa, chương trình loại bỏ phần kinh doanh khỏi công việc đang tiến hành và đặt phần kinh doanh mới được hình thành vào kho di động
  • Một công việc thay đổi có thể in các mẫu cắt để sản xuất thủ công hoặc tạo các tệp cho máy CNC
  • Ngoài ra, nhãn cho các sản phẩm cắt và sơ đồ bố trí cho xe đẩy và kim tự tháp được in từ một công việc thay đổi.
  • Trên cơ sở nhiệm vụ sản xuất, các yêu cầu được hình thành - hóa đơn chuyển nguyên vật liệu đến phân xưởng, có tính đến nhu cầu và đóng gói tiêu chuẩn

Giao diện phần mềm (API làm tổ tuyến tính)

Tệp dữ liệu đầu vào, setup.ini, được đặt trong thư mục có tệp thực thi.
Các tệp dữ liệu đầu ra - result.txt, resultproduct.txt và resultstick.txt - được tạo trong cùng một thư mục.
Bạn có thể tải file bằng Oknosoft: cắt dữ liệu demo từ liên kết ở cuối trang. Các tệp sử dụng các thẻ sau:

  • Outputvariant - cấu trúc của tệp đầu ra của tệp. Các giá trị có thể có: tab, oknosoft, oknosoft mặc định
    • Trong tùy chọn "oknosoft", các tệp resultproduct.txt và resultstick.txt được tạo với thông tin về vị trí của các sản phẩm trên khoảng trống và phần cắt kết quả
    • Biến thể "tab" hiển thị năm giá trị được phân tách bằng các ký tự "tab": chiều dài sản phẩm, số roi, chiều dài roi, số cắt và phần còn lại của phôi
  • Thuật toán - thuật toán được sử dụng. Giá trị có thể có: ngẫu nhiên, bảo tồn, di truyền, di truyền mặc định
    • Ngẫu nhiên - lựa chọn ngẫu nhiên các tùy chọn
    • Bảo thủ - các bản sao của lần lặp tiếp theo đến từ cùng một "gốc"
    • Di truyền - từ hai bố mẹ
  • Variation - độ biến thiên, tham số của thuật toán "bảo toàn" và "di truyền". Càng cao, con cái càng ít “giống” bố mẹ. Giá trị mặc định là 1.
  • Số thế hệ - số lần lặp lại thuật toán, mặc định 40000
  • Số người - số lượng "phiên bản" trong "quần thể", số lượng giải pháp được sử dụng trong một lần lặp. Thuật toán "ngẫu nhiên" chỉ đơn giản thực hiện các thế hệ * người lặp lại với một trường hợp (giải pháp)
  • KnifeWidth - chiều rộng cưa
  • StickLength - chiều dài của thanh mới
  • Sản phẩm - chiều dài sản phẩm
  • Phế liệu - chiều dài của mẩu vụn được sử dụng trong tổ
  • Wrongsnipmin - độ dài tối thiểu của mẫu "xấu"
  • Wrongsnipmax - chiều dài tối đa của một vết cắt "xấu"
    Kết quả tối ưu hóa sẽ không có các đoạn có độ dài giữa Wrongsnipmin và Wrongsnipmax

Cắt cặp

Được sử dụng khi chuẩn bị dữ liệu cho các máy hỗ trợ cưa cặp. Trong trường hợp này, hai roi biên dạng được đặt vào máy cùng một lúc và trong một chu kỳ cắt, hai bán thành phẩm giống hệt nhau được hình thành.

Nhiệm vụ cắt cặp được giải quyết bằng cách nhóm dữ liệu trước khi chuyển sang chương trình tối ưu hóa và sau đó nhân bản kết quả cắt thành từng cặp sản phẩm và phôi. Khi lồng vào bên trong UPZP, hệ thống sẽ tính đến các thuộc tính của danh pháp và sử dụng cắt đơn hoặc cắt cặp, tùy thuộc vào khả năng của máy cắt

Cắt một số lượng lớn sản phẩm

Mặt khác, để đạt được chất lượng tối ưu hóa cao, một số lượng đáng kể các sản phẩm có độ dài khác nhau phải được nhận ở đầu vào của chương trình để trình tối ưu hóa có "những gì cần sắp xếp". Mặt khác, với các lô rất lớn, xác suất tìm thấy giá trị lớn nhất tại một số lần lặp cố định của phép liệt kê giảm xuống. Các thí nghiệm đã chỉ ra rằng một lô 60-120 phôi là tối ưu (tương ứng với chu kỳ sản xuất 30-60 sản phẩm có cắt ghép). Nếu bạn cần tối ưu hóa hơn 120 phôi, kết quả tốt nhất có thể đạt được bằng cách chia bài toán thành N phần và thực hiện tối ưu hóa liên tiếp cho từng phần. Xử lý hình thành các lô nguyên công sản xuất có thể phân nhóm các sản phẩm theo loại hồ sơ và chọn các sản phẩm có độ phân tán tối đa thành các nguyên công theo ca, tiết kiệm cho người vận hành khỏi công việc thường xuyên soạn tài liệu sản xuất

Tải xuống các ví dụ và tài liệu về cắt

  • Demo thẻ cắt đơn và thẻ cắt đôi: 60.01 Tờ cắt
  • Tài liệu và các tệp mẫu:

Dòng cắt - Chương trình cắt tuyến tính

Phiên bản: 2.49


Độ sâu bit: 32bit


Tabletka: Đã chữa khỏi


Khi phát triển phần thuật toán của chương trình, nguyên tắc giảm thiểu lãng phí được chọn làm tiêu chí chính, và khi phát triển phần giao diện, tác giả đã tìm cách làm cho chương trình trở nên đơn giản và thuận tiện trong sử dụng hàng ngày.

Chương trình cắt tối ưu các khoảng trống tuyến tính thành các bộ phận

Chương trình có các chức năng và tính năng sau:











Bảng giá của chúng tôi bao gồm ba sản phẩm liên quan đến chủ đề chung là sắp xếp và tối ưu hóa:

  • Chương trình cắt tuyến tính cho các cấu hình và vật liệu dài
  • Chương trình cắt hai chiều thủy tinh, bánh mì sandwich, giấy bìa cứng và các vật liệu tấm khác
  • Chương trình tối ưu hóa lộ trình để giải quyết các vấn đề hậu cần

Các mô-đun lồng có thể được cung cấp như một phần của giải pháp tích hợp Windowsoft: Quản lý Sản xuất Tùy chỉnh và dưới dạng các chương trình riêng biệt. Khi gọi các chương trình cắt từ 1C, không cần nhập - xuất dữ liệu sang các tệp trung gian. Người dùng làm việc trong một giao diện tiêu chuẩn và tất cả sự tinh tế của tương tác 1C với các trình tối ưu hóa bên ngoài thực hiện xử lý việc điền vào các phần dạng bảng. Đối với mục đích kế toán số dư hàng tồn kho, hàng vụn vặt trong kinh doanh và nguyên vật liệu trong sản xuất, các tài liệu tiêu chuẩn và sổ đăng ký của cấu hình 1C điển hình được sử dụng.

Cắt tuyến tính (hồ sơ, đường ống, nhật ký)

Cung cấp tỷ lệ phần trăm cây trồng đã được kiểm kê xác nhận

Bản demo trực tiếp trên trang web

Ví dụ dưới đây không phải là một hình ảnh tĩnh mà là một ứng dụng web đang hoạt động.
Bạn có thể bắt đầu cắt hồ sơ bằng nút Bắt đầu, đặt kích thước sản phẩm và phôi của bạn, thay đổi cài đặt tối ưu hóa và đánh giá giải pháp.
Tất nhiên, trình tối ưu hóa trong trình duyệt chậm hơn chương trình gốc, nhưng nó cho phép bạn nhận được kết quả khả thi miễn phí mà không cần phải tải xuống và cài đặt bất kỳ thứ gì trên máy tính của bạn.

20000 r.

Cắt kính và vật liệu tấm

Tạo biểu đồ cắt với chất lượng cao nhất. Cung cấp phần trăm tiết kiệm vật liệu gần với giới hạn lý thuyết. Vượt trội hơn 10-12% so với các chương trình phổ biến Opty-Way, MaxCut, PerfectCut, Cut, ... ở các chỉ số như diện tích dư lượng không làm việc, tổng diện tích vật liệu được cắt và số lượng toàn bộ tấm đã sử dụng

Tất cả các thuật toán lồng ghép 2D được phát triển bởi OOO Chương trình Cắt, Novosibirsk, nhà phát triển: Shilyaev Vladimir Genrikhovich. Oknosoft là đại lý chính thức của nhà phát triển và theo thỏa thuận cấp phép phụ, có quyền bán chương trình như một sản phẩm riêng biệt và sử dụng nó như một phần trong quá trình phát triển của chúng tôi

40000 r.

Tại sao phải tối ưu hóa lồng ghép trong chương trình?

Nhiều khách hàng nói: "Tôi có một người thợ cưa giỏi. Anh ta cắt hoàn hảo tấm kính và phần đầu. Chỉ có hình tam giác mới chui vào thùng rác".
Thông thường, điều này là đúng. Đồng thời, một trong những nhiệm vụ của người lãnh đạo là tổ chức một quá trình có thể đoán trước được, tính ổn định của nó không phụ thuộc vào thiên tài của người thực hiện. Việc tối ưu hóa phần mềm cắt giảm dựa trên kế hoạch sản xuất là một trong những biện pháp đưa mục tiêu này đến gần hơn.

Nếu chúng ta giả định rằng một người có thể trải qua nhiều sự kết hợp trong đầu hơn so với máy tính trong cùng một khoảng thời gian, hệ số cắt ~ 1% thu được bằng cách cắt tự động sẽ trông hấp dẫn hơn 1% không kiểm soát và không được quản lý mà Genius có thể cung cấp. Việc chuyển các nhiệm vụ tối ưu hóa sang chương trình có thể giải phóng thêm thời gian (1-2 giờ mỗi ngày) mà anh ta sẽ dành cho lợi ích của doanh nghiệp.

Trên thực tế, tình trạng cắt xén ở hầu hết các doanh nghiệp còn tồi tệ hơn. Hệ số của thứ tự 4-7% được đưa ra trong thông số kỹ thuật, và nếu xưởng làm việc với mức cắt 3-5% thì đây được coi là một kết quả tốt. Giảm 3-5% hệ số cây trồng thực tế là tiết kiệm được 30-50 nghìn rúp cho mỗi triệu chi tiêu cho vật liệu. Chưa hết, điều này sẽ làm cho nó có thể không bao gồm thêm rúp trong chi phí kế hoạch và cung cấp cho người mua giá có lợi hơn.

Bài toán tiêu hao nguyên vật liệu tối ưu bao gồm một số phần.

Kế toán kho vật tư đo lường

Tùy thuộc vào đặc điểm của doanh nghiệp, khách hàng sử dụng một số hình thức kế toán nguyên vật liệu:

  • Dựa trên kế hoạch sản xuất, các yêu cầu được hình thành - hóa đơn chỉ ra các sản phẩm. Việc phát hành tài liệu bổ sung (không đủ) được phản ánh trong các tài liệu riêng biệt. Việc chỉ định sản phẩm trong các tài liệu này là mong muốn, nhưng không phải là điều kiện cần. Trong trường hợp này, chỉ những vật liệu có thông số kỹ thuật của sản phẩm được sản xuất ngày nay và chỉ với số lượng theo yêu cầu mới được xuất xưởng. Nhược điểm của phương pháp này là cần phải thu thập nhiều tài liệu hơn và thiếu nguồn tài liệu tại các địa điểm (có thể đây là một lợi thế?)
  • Yêu cầu - hóa đơn được tạo không đồng bộ, không tham chiếu đến kế hoạch sản xuất, dựa trên yêu cầu của chủ. Cách tiếp cận này cho phép bạn có được một "nhà kho trực tiếp" với chi phí vận hành tối thiểu cho thủ kho, nhưng không bảo vệ khỏi việc bội chi nguyên vật liệu. Trong trường hợp này, toàn bộ trách nhiệm đối với việc tuân thủ tiêu thụ với các thông số kỹ thuật thuộc về chủ và công nhân. Phân tích kế hoạch-chi phí thực tế sẽ cho thấy sai lệch, nhưng có thể đã quá muộn

Kế toán chi phí kinh doanh

Nó có thể xảy ra trong một kịch bản mà các yêu cầu - hóa đơn được tạo ra dựa trên kế hoạch sản xuất. Phần còn lại của công việc cắt tỉa kinh doanh khi bắt đầu cắt được lấy từ một sổ đăng ký đặc biệt và có thể được điều chỉnh bởi người điều hành phù hợp với số dư thực tế. Khi tiến hành phân công sản xuất, dữ liệu về lượng nguyên vật liệu cần nhận từ kho được đưa vào yêu cầu - hóa đơn, và dữ liệu về kết quả kinh doanh được thêm trở lại sổ đăng ký.

Tương tác của những người biểu diễn

Khi quyết định có sử dụng trình tối ưu hóa lồng nhau hay không, hãy cân nhắc:

  • Với việc cắt tự động, không thể tổ chức hàn (lắp ráp) sản phẩm "từ dưới cưa", vì các phân đoạn liên quan đến một sản phẩm sẽ được "phân tán" trên toàn bộ bản đồ tối ưu hóa.
  • Chu kỳ sản xuất ngày càng kéo dài, cần phải tổ chức một bể chứa hàng trắng. Một thỏa hiệp là cắt theo lô từ 30 - 50 chiếc. Đồng thời, đạt được tỷ lệ cắt cao và tải đồng đều các khu vực hàn và phụ kiện.
  • Hiệu quả mà cửa hàng có thể đáp ứng với những thay đổi trong kế hoạch bị giảm xuống. Nếu người quản lý cần đưa một sản phẩm mới vào kế hoạch của ngày hôm nay, điều này sẽ làm xấu đi kết quả tối ưu hóa.

Phần mềm cắt tuyến tính

Phiên bản: 2.49
Nhà phát triển: Shibaev Yury Anatolyevich Ukraine, Cherkasy
Trang web của nhà phát triển: http://www.cuttinghome.com/
Độ sâu bit: 32bit
Tương thích với Windows 7: có
Ngôn ngữ giao diện: tiếng Anh + tiếng Nga
Tabletka: Đã chữa khỏi
Yêu cầu hệ thống: Tối thiểu
Mô tả: Chương trình CẮT được thiết kế để cắt tối ưu vật liệu thành các bộ phận tuyến tính. Chương trình có thể được sử dụng trong chế biến gỗ, sản xuất đồ nội thất, cắt kim loại, cắt kính, v.v. Các chương trình dựa trên một thuật toán tốc độ cao, độc đáo cho phép bạn cắt nhanh chóng với mức lãng phí tối thiểu.



Khi phát triển phần thuật toán của chương trình, nguyên tắc giảm thiểu lãng phí được chọn làm tiêu chí chính, và khi phát triển phần giao diện, tác giả đã tìm cách làm cho chương trình trở nên đơn giản và thuận tiện trong sử dụng hàng ngày.
Chương trình có các chức năng và tính năng sau:
. thiết lập số lượng phôi và phân đoạn tùy ý để cắt
. đặt khoảng trống và phân đoạn theo các đặc điểm nhất định, chẳng hạn như tên và màu sắc
. tính toán có tính đến loại vật liệu (tên vật liệu, màu sắc)
. thiết lập chiều rộng của dụng cụ cắt
. tính toán tổng chiều dài của các phân đoạn và phần dư
. thiết lập các chế độ cắt khác nhau
. khôi phục các tổ trước của phiên hiện tại
. lưu các phôi và vết cắt được chỉ định dưới dạng thông số kỹ thuật
. thêm BOM đã lưu vào một tùy chọn phân tích mới
. lưu tổ vào một tệp với khả năng khôi phục sau
. xem và in kết quả cắt, cả ở dạng đồ họa và bảng
. hệ thống thông tin tham khảo đầy đủ.

Bảng giá của chúng tôi bao gồm ba sản phẩm liên quan đến chủ đề chung là sắp xếp và tối ưu hóa:

  • Chương trình cắt tuyến tính cho các cấu hình và vật liệu dài
  • Chương trình cắt hai chiều thủy tinh, bánh mì sandwich, giấy bìa cứng và các vật liệu tấm khác
  • Chương trình tối ưu hóa lộ trình để giải quyết các vấn đề hậu cần

Các mô-đun lồng có thể được cung cấp như một phần của giải pháp tích hợp Windowsoft: Quản lý Sản xuất Tùy chỉnh và dưới dạng các chương trình riêng biệt. Khi gọi các chương trình cắt từ 1C, không cần nhập - xuất dữ liệu sang các tệp trung gian. Người dùng làm việc trong một giao diện tiêu chuẩn và tất cả sự tinh tế của tương tác 1C với các trình tối ưu hóa bên ngoài thực hiện xử lý việc điền vào các phần dạng bảng. Đối với mục đích kế toán số dư hàng tồn kho, hàng vụn vặt trong kinh doanh và nguyên vật liệu trong sản xuất, các tài liệu tiêu chuẩn và sổ đăng ký của cấu hình 1C điển hình được sử dụng.

Cắt tuyến tính (hồ sơ, đường ống, nhật ký)

Cung cấp tỷ lệ phần trăm cây trồng đã được kiểm kê xác nhận<1%. Ряд клиентов приобрели наши алгоритмы для замены программ оптимизации, поставлявшихся производителями отрезных станков. В программе использован алгоритм плотной укладки и генетический алгоритм поиска решения. На вход поступают данные о количестве и размерах изделий и деловых отходов. На выходе формируются карты раскроя с указанием тележек и ячеек. При необходимости, формируются файлы для обрабатывающих центров, станков с ЧПУ и этикетки с подробной информацией об отрезаемой заготовке и примыкающих элементах.

Bản demo trực tiếp trên trang web

Ví dụ dưới đây không phải là một hình ảnh tĩnh mà là một ứng dụng web đang hoạt động.
Bạn có thể bắt đầu cắt hồ sơ bằng nút Bắt đầu, đặt kích thước sản phẩm và phôi của bạn, thay đổi cài đặt tối ưu hóa và đánh giá giải pháp.
Tất nhiên, trình tối ưu hóa trong trình duyệt chậm hơn chương trình gốc, nhưng nó cho phép bạn nhận được kết quả khả thi miễn phí mà không cần phải tải xuống và cài đặt bất kỳ thứ gì trên máy tính của bạn.

20000 r.

Cắt kính và vật liệu tấm

Tạo biểu đồ cắt với chất lượng cao nhất. Cung cấp phần trăm tiết kiệm vật liệu gần với giới hạn lý thuyết. Vượt trội hơn 10-12% so với các chương trình phổ biến Opty-Way, MaxCut, PerfectCut, Cut, ... ở các chỉ số như diện tích dư lượng không làm việc, tổng diện tích vật liệu được cắt và số lượng toàn bộ tấm đã sử dụng

Tất cả các thuật toán lồng ghép 2D được phát triển bởi OOO Chương trình Cắt, Novosibirsk, nhà phát triển: Shilyaev Vladimir Genrikhovich. Oknosoft là đại lý chính thức của nhà phát triển và theo thỏa thuận cấp phép phụ, có quyền bán chương trình như một sản phẩm riêng biệt và sử dụng nó như một phần trong quá trình phát triển của chúng tôi

40000 r.

Tại sao phải tối ưu hóa lồng ghép trong chương trình?

Nhiều khách hàng nói: "Tôi có một người thợ cưa giỏi. Anh ta cắt hoàn hảo tấm kính và phần đầu. Chỉ có hình tam giác mới chui vào thùng rác".
Thông thường, điều này là đúng. Đồng thời, một trong những nhiệm vụ của người lãnh đạo là tổ chức một quá trình có thể đoán trước được, tính ổn định của nó không phụ thuộc vào thiên tài của người thực hiện. Việc tối ưu hóa phần mềm cắt giảm dựa trên kế hoạch sản xuất là một trong những biện pháp đưa mục tiêu này đến gần hơn.

Nếu chúng ta giả định rằng một người có thể trải qua nhiều sự kết hợp trong đầu hơn so với máy tính trong cùng một khoảng thời gian, hệ số cắt ~ 1% thu được bằng cách cắt tự động sẽ trông hấp dẫn hơn 1% không kiểm soát và không được quản lý mà Genius có thể cung cấp. Việc chuyển các nhiệm vụ tối ưu hóa sang chương trình có thể giải phóng thêm thời gian (1-2 giờ mỗi ngày) mà anh ta sẽ dành cho lợi ích của doanh nghiệp.

Trên thực tế, tình trạng cắt xén ở hầu hết các doanh nghiệp còn tồi tệ hơn. Hệ số của thứ tự 4-7% được đưa ra trong thông số kỹ thuật, và nếu xưởng làm việc với mức cắt 3-5% thì đây được coi là một kết quả tốt. Giảm 3-5% hệ số cây trồng thực tế là tiết kiệm được 30-50 nghìn rúp cho mỗi triệu chi tiêu cho vật liệu. Chưa hết, điều này sẽ làm cho nó có thể không bao gồm thêm rúp trong chi phí kế hoạch và cung cấp cho người mua giá có lợi hơn.

Bài toán tiêu hao nguyên vật liệu tối ưu bao gồm một số phần.

Kế toán kho vật tư đo lường

Tùy thuộc vào đặc điểm của doanh nghiệp, khách hàng sử dụng một số hình thức kế toán nguyên vật liệu:

  • Dựa trên kế hoạch sản xuất, các yêu cầu được hình thành - hóa đơn chỉ ra các sản phẩm. Việc phát hành tài liệu bổ sung (không đủ) được phản ánh trong các tài liệu riêng biệt. Việc chỉ định sản phẩm trong các tài liệu này là mong muốn, nhưng không phải là điều kiện cần. Trong trường hợp này, chỉ những vật liệu có thông số kỹ thuật của sản phẩm được sản xuất ngày nay và chỉ với số lượng theo yêu cầu mới được xuất xưởng. Nhược điểm của phương pháp này là cần phải thu thập nhiều tài liệu hơn và thiếu nguồn tài liệu tại các địa điểm (có thể đây là một lợi thế?)
  • Yêu cầu - hóa đơn được tạo không đồng bộ, không tham chiếu đến kế hoạch sản xuất, dựa trên yêu cầu của chủ. Cách tiếp cận này cho phép bạn có được một "nhà kho trực tiếp" với chi phí vận hành tối thiểu cho thủ kho, nhưng không bảo vệ khỏi việc bội chi nguyên vật liệu. Trong trường hợp này, toàn bộ trách nhiệm đối với việc tuân thủ tiêu thụ với các thông số kỹ thuật thuộc về chủ và công nhân. Phân tích kế hoạch-chi phí thực tế sẽ cho thấy sai lệch, nhưng có thể đã quá muộn

Kế toán chi phí kinh doanh

Nó có thể xảy ra trong một kịch bản mà các yêu cầu - hóa đơn được tạo ra dựa trên kế hoạch sản xuất. Phần còn lại của công việc cắt tỉa kinh doanh khi bắt đầu cắt được lấy từ một sổ đăng ký đặc biệt và có thể được điều chỉnh bởi người điều hành phù hợp với số dư thực tế. Khi tiến hành phân công sản xuất, dữ liệu về lượng nguyên vật liệu cần nhận từ kho được đưa vào yêu cầu - hóa đơn, và dữ liệu về kết quả kinh doanh được thêm trở lại sổ đăng ký.

Tương tác của những người biểu diễn

Khi quyết định có sử dụng trình tối ưu hóa lồng nhau hay không, hãy cân nhắc:

  • Với việc cắt tự động, không thể tổ chức hàn (lắp ráp) sản phẩm "từ dưới cưa", vì các phân đoạn liên quan đến một sản phẩm sẽ được "phân tán" trên toàn bộ bản đồ tối ưu hóa.
  • Chu kỳ sản xuất ngày càng kéo dài, cần phải tổ chức một bể chứa hàng trắng. Một thỏa hiệp là cắt theo lô từ 30 - 50 chiếc. Đồng thời, đạt được tỷ lệ cắt cao và tải đồng đều các khu vực hàn và phụ kiện.
  • Hiệu quả mà cửa hàng có thể đáp ứng với những thay đổi trong kế hoạch bị giảm xuống. Nếu người quản lý cần đưa một sản phẩm mới vào kế hoạch của ngày hôm nay, điều này sẽ làm xấu đi kết quả tối ưu hóa.

Các chương trình để tối ưu hóa việc cắt vật liệu

Danh mục này bao gồm các liên kết đến một số chương trình máy tính trong nước để tối ưu hóa quá trình cắt vật liệu.và một số ấn phẩm về chủ đề này.

Phương pháp tối ưu hóa cắt vật liệu dựa trên công trình "Tính toán cắt hợp lý vật liệu công nghiệp", năm 1951, do các nhà khoa học Liên Xô LV Kantorovich và V.A Zalgaller viết, trong đó các thuật toán lập trình tuyến tính được trình bày một cách có hệ thống, và lập trình động cho bài toán là đã mô tả. về việc cắt và kết hợp nó với các thuật toán lập trình tuyến tính.

Một số lượng lớn các chương trình tối ưu hóa cắt đã được phát triển trên thế giới, cả về bản chất chung và các chương trình hoàn toàn đặc biệt. Dưới đây là các liên kết đến các chương trình có sẵn để tải xuống từ trang web của nhà phát triển. Ngoài ra còn có các mô tả về chúng.

cắt
chương trình được thiết kế để tự động biên soạn các bản đồ cắt tối ưu cho vật liệu dạng tấm và cuộn,

ví dụ, ván dăm, MLF (trong sản xuất đồ nội thất), thủy tinh hoặc bất kỳ vật liệu dạng tấm hoặc cuộn nào khác. Cho phép bạn lấy thẻ lồng nhau một cách hiệu quả và nhanh chóng với tỷ lệ phần trăm năng suất lớn. Có trả tiền, có bản demo
trang web của nhà phát triển
http://picaro.ru
Cắt Astra
chương trình được thiết kế để tối ưu hóa việc cắt vật liệu dạng tấm (
ván dăm, kim loại, thủy tinh và nhựa ). Astra Nesting cung cấp thông tin đầu vào nhanh chóng về đơn đặt hàng và nguyên vật liệu; tạo biểu đồ cắt tự động và thủ công; tính toán đầy đủ các kích thước dư lượng và việc cắt giảm của chúng trong các đơn đặt hàng tiếp theo; in các biểu đồ và thông số kỹ thuật cắt. Đã thanh toán
trang web của nhà phát triển http://www.astrapro.ru Cơ sở cắt
một chương trình tự động tạo bản đồ để cắt vật liệu dạng tấm, kết hợp vị trí tối ưu của các đường bao của các bộ phận hình chữ nhật theo các kích thước nhất định của vật liệu nguồn với tốc độ tính toán cao. Nó là một phần không thể thiếu của tổ hợp Cơ sở - Nhà xây dựng - Nhà sản xuất đồ nội thất.
Có trả tiền, có bản demo
trang web của nhà phát triển http://www.bazissoft.ru Cắt
các chương trình thuộc họ CẮT được thiết kế để cắt tối ưu vật liệu thành các bộ phận hình chữ nhật hoặc tuyến tính. Các chương trình có thể được sử dụng trong chế biến gỗ, sản xuất đồ nội thất, cắt kim loại, cắt kính, v.v. Các chương trình dựa trên một thuật toán tốc độ cao, độc đáo cho phép bạn cắt nhanh chóng với mức lãng phí tối thiểu. Có trả tiền, có bản demo
trang web của nhà phát triển http://www.cuttinghome.com
đường cắt
chương trình được thiết kế để cắt tối ưu các khoảng trống tuyến tính thành các đoạn tuyến tính có độ dài khác nhau và có thể được sử dụng trong các ngành công nghiệp chế biến gỗ và bột giấy và giấy, gia công kim loại, sản xuất quần áo, v.v.
Có trả tiền, có bản demo
trang web của nhà phát triển http://www.cuttinghome.com

PaneCut là một chương trình để tối ưu hóa việc cắt vật liệu dạng tấm và dạng thẳng, cho phép bạn giảm đáng kể tỷ lệ vật liệu thải được sử dụng.Có trả tiền, có bản demo
trang web của nhà phát triển http://www.vsgroup.ua
NCL- P Chương trình tự động cắt vật liệu tấm cho các chi tiết của bất kỳ cấu hình nào. Lập trình viên Polevov A.V.Miễn phí
trang web chương trình http://freesoft.ru/ncl_v13
Tối ưu
chương trình để cắt tối ưu vật liệu thành các bộ phận hình chữ nhật.
Phần mềm chia sẻ
trang web của nhà phát triển http://wincad.ru

Nhà sản xuất đồ nội thất Bazis
một tổ hợp các chương trình có liên quan với nhau cho phép bạn tổ chức hiệu quả việc sản xuất riêng lẻ hoặc hàng loạt sản phẩm nội thất tủ tại bất kỳ doanh nghiệp nào: từ những người khổng lồ về nội thất đến các doanh nghiệp cá nhân. Thành phần của hệ thống: Cơ sở-Nhà sản xuất nội thất (cơ bản), Cơ sở-Cắt, Cơ sở-Ước tính, Cơ sở-Nội thất.

Có trả tiền, có bản demo
trang web của nhà phát triển http://www.bazissoft.ru
bCAD-nhà sản xuất đồ nội thất
một gói phần mềm chuyên dụng được thiết kế để thiết kế và chuẩn bị sản xuất đồ nội thất tủ. Gói này bao gồm mô-đun bCAD cơ bản, được bổ sung các công cụ cụ thể. Ứng dụng Nesting cho phép bạn tự động tạo một bản đồ lồng cho các chi tiết của các mô hình đã nhận. Khi bạn chọn một vật liệu, ứng dụng sẽ tự động đưa ra danh sách các bộ phận từ vật liệu đã chọn có trong dự án. Các thông số của các tấm được sử dụng, hướng của lần cưa đầu tiên, số lượng bộ được thiết lập. Ứng dụng này cho phép bạn tính đến các dư lượng cắt, lưu các thông số của chúng và sử dụng chúng trong tương lai.
trang web của nhà phát triển http://bcad-ug.ru

Không khó để tìm thấy các chương trình tương tự khác trên mạng, bao gồm cả. miễn phí

Lý thuyết và thực hành cắt vật liệu tự động trong sản xuất nội thất tủ sắt. Bunakov P.Yu., Kaskevich N.V., Kolomna: GOSGI, 2010. 170 tr.

Tối ưu hóa việc cắt vật liệu trong kỹ thuật cơ khí: SGK / S.I. Vdovin, O.E. Jur. - Đại bàng: OSU được đặt theo tên của I. S. Turgenev, 2016. - 45 tr.

V.A. Skaternoy "Tối ưu hóa vật liệu cắt trong ngành công nghiệp nhẹ" ed. Ngành công nghiệp quần áo. Legprombytizdat, 1989,
- 144 giây

Biên soạn bởi Abushenko Alexander Viktorovich, Oct. 2005, tài liệu tham khảo được kiểm tra vào tháng Giêng. 2017

TỐI ƯU HÓA VẬT LIỆU CẮT TẤM THÀNH CÁC HÌNH THỨC CÓ KÍCH THƯỚC KHÁC NHAU

Giniatullina Regina Airatovna

Học viên cao học năm thứ nhất, Khoa Toán ứng dụng và Tin học, KNRTU. MỘT. Tupolev, Liên bang Nga, Kazan

E-mail:Regina[email được bảo vệ] yandex. en

Galiev Shamil Ibragimovich

cố vấn khoa học, công nghệ Dr. Khoa học, Giáo sư của ITKiI KNRTU im. MỘT. Tupolev, Liên bang Nga, Kazan

Máy cắt thép và các tấm khác được sử dụng rộng rãi trong cơ khí chế tạo và các ngành công nghiệp khác. Việc lồng ghép này thực sự là nhiệm vụ đóng gói các hình vuông có kích thước khác nhau vào một trang tính nhất định bằng cách sử dụng thủ tục máy chém. Điều quan trọng là phải giảm thiểu chất thải tấm. Sự quan tâm đến vấn đề đóng gói được giải thích bởi ý nghĩa thực tế to lớn của chúng. Theo quy luật, những nhiệm vụ như vậy liên quan đến các ngành thâm dụng nguyên liệu, trong đó một trong những yếu tố chính làm giảm giá thành sản phẩm là sử dụng hợp lý các nguồn lực. Nhiệm vụ này có một loạt các ứng dụng thực tế trong các ngành công nghiệp đóng gói (cắt) truyền thống phát sinh trong cơ khí, chế biến gỗ, công nghiệp nhẹ và xây dựng. .

1. Đánh giá theo nhiệm vụ

Trong công nghiệp, trong sản xuất các loại sản phẩm cuối cùng, vấn đề nảy sinh là cắt các tấm có kích thước nhất định thành các ô trống hình chữ nhật một cách tối ưu. Nhiệm vụ này như sau: kích thước của các ô vuông, kích thước của trang tính. Yêu cầu đặt các ô vuông đã cho vào tờ giấy không được chồng lên nhau để có thể cắt tờ giấy bằng máy chém. Cắt theo kiểu Guillotine được hiểu là cắt, được thực hiện bằng một chuỗi các đường cắt song song với các cạnh của vật liệu. Ngoài ra, các ô vuông này phải được đóng gói trực giao mà không có phép quay, nghĩa là, đối với mỗi phần tử được chọn của loại, cạnh có chiều cao phải song song với cạnh có chiều cao H. Chúng ta sẽ xem xét vấn đề đóng gói các hình vuông có kích thước khác nhau thành một hình chữ nhật. Hãy giải quyết vấn đề này bằng cách sử dụng một thuật toán chính xác. Nó dựa trên một thủ tục đệ quy chạy thuật toán rẽ nhánh và ràng buộc (mà chúng ta cũng sẽ xem xét) lặp đi lặp lại với các đầu vào khác nhau để xác định giá trị tối ưu của giải pháp.

2. Mục đích của dự án

Mục đích của công việc này là nghiên cứu và triển khai một thuật toán có khả năng tìm ra lời giải cho việc đóng gói các hình vuông thành một hình chữ nhật. Bài toán đang được xem xét được ứng dụng rộng rãi trong các ngành khác nhau: cơ khí, chế biến gỗ, công nghiệp nhẹ và xây dựng.

Cần thực hiện khả năng hiển thị kết quả thu được dưới dạng các ô vuông có kích thước khác nhau được ghi trong một hình chữ nhật và thông tin bổ sung tương ứng theo yêu cầu của người dùng. Ví dụ, chẳng hạn như: thời gian chạy thuật toán, thông tin lỗi khác nhau, v.v.

3. Yêu cầu chung

1) Đặt thủ công các kích thước của hình chữ nhật (chiều rộng và chiều cao) mà các hình vuông sẽ được đóng gói vào đó;

2) Nhập thủ công các kích thước hình vuông (chúng có thể giống nhau hoặc khác nhau);

3) Xem xét trực quan kết quả thực hiện thuật toán (với đầu ra thông tin liên quan: thời gian thực hiện thuật toán, số ô vuông có kích thước nhất định được ghi trong một hình chữ nhật);

4) Lưu thông tin về các ô vuông đã được nhập vào một tệp.

4. Mức độ phù hợp của vấn đề

Mục tiêu chính của hệ thống được thiết kế là tuân thủ thuật toán đóng gói hình vuông cơ bản và người dùng cuối dễ sử dụng, khả năng chịu lỗi.

Các nhiệm vụ và chức năng của hệ thống được thiết kế phải tuân theo các yêu cầu.

Thuật toán được đề xuất trong bài báo này có thể được sử dụng để giải quyết một cách hiệu quả vấn đề đóng gói các hình vuông thành một vùng hình chữ nhật có kích thước cho trước. Vấn đề này có một loạt các ứng dụng thực tế trong các ngành công nghiệp nơi mà các nhiệm vụ đóng gói thường phát sinh. Thuật toán được xem xét có thể được sử dụng trong các tính toán thực tế và được đưa vào các hệ thống điều khiển và thiết kế tự động. Cũng có thể nói rằng vấn đề là có liên quan ở thời điểm hiện tại, vì nhu cầu gói các hình vuông thành hình chữ nhật và nhu cầu này sẽ không bao giờ kết thúc, điều đó có nghĩa là vấn đề sẽ luôn có liên quan.

Bài toán cắt đóng gói chiếm một vị trí quan trọng trong tối ưu hóa tổ hợp hiện đại và thu hút sự quan tâm của nhiều nhà khoa học, cả ở Nga và nước ngoài.

Đặc biệt, sự quan tâm đến vấn đề cắt đóng gói được giải thích bởi ý nghĩa thực tế to lớn của chúng. Theo quy luật, các ứng dụng cắt bao bì liên quan đến các ngành sử dụng nhiều nguyên liệu, trong đó một trong những yếu tố chính để giảm giá thành sản phẩm sản xuất là sử dụng hợp lý các nguồn lực.

5. Hệ thống cắt hiện có.

Có nhiều sản phẩm phần mềm để cắt vật liệu tấm, chẳng hạn như ORION, ASTRA CUTTING, TEHTRAN. Hãy xem xét một trong số chúng trên ví dụ về TEHTRAN.

Đối với các doanh nghiệp sử dụng máy cắt nhiệt, việc đưa công nghệ thông tin hiện đại vào là một trong những nhiệm vụ cấp thiết. Rõ ràng là việc giảm thời gian chuẩn bị các chương trình cắt, vị trí tối ưu của các bộ phận trên tấm, và tiêu thụ vật liệu thấp hơn sẽ ảnh hưởng quyết định đến giá thành và chất lượng của sản phẩm.

Sản phẩm phần mềm mới Techtran / Cắt bổ sung cho dòng chương trình của gia đình Techtran và dùng để thiết kế các chương trình cắt vật liệu dạng tấm. Các khả năng của hệ thống CAM được kết hợp ở đây với các chức năng tổ chức quá trình sản xuất. Cách tiếp cận giải pháp sử dụng trong chương trình đúc kết kinh nghiệm của một số doanh nghiệp vận hành máy cắt nhiệt. Nhiệm vụ là nhanh chóng sắp xếp các bộ phận trên các tấm theo cách tối ưu và có được các chương trình điều khiển để cắt các bộ phận này theo nguyên công cắt, bao gồm danh pháp của các bộ phận đã chọn và số lượng của chúng cho từng hạng mục. Các phiếu phế liệu kinh doanh còn lại sau giờ làm việc cần được ghi lại trong cơ sở dữ liệu hệ thống để sử dụng tiếp.

6. Hình thức hóa vấn đề và phát triển một mô hình toán học

Chúng tôi trình bày một mô hình toán học của vấn đề, sau công việc.

Thuật toán rẽ nhánh và giới hạn dựa trên mô hình lập trình tuyến tính số nguyên (ILP). Vì mục đích đơn giản trong công thức này, chúng tôi giả định rằng mỗi phần tử là riêng biệt, nghĩa là đối với mỗi loại j hình chữ nhật, chúng tôi xác định các phần tử giống hệt nhau có chiều rộng, chiều cao và độ lợi. Gọi (1) là tổng số phần tử. Đối với mỗi phần tử k chúng tôi giới thiệu một biến nhị phân nhận giá trị 1 nếu và chỉ khi phần tử kđưa vào giải pháp tối ưu. Mô hình ILP cho bài toán cái cặp hai chiều tổng quát như sau:

trong đó: - kích thước của hình vuông nội tiếp,

Các kích thước của chính hình chữ nhật,

U- bất kỳ giới hạn trên nào về giá trị của giải pháp tối ưu, và C biểu thị tập hợp tất cả các tập hợp con của các phần tử không thể được đóng gói trong một trang tính. Đối với giá trị ngưỡng U chúng tôi sử dụng, nghĩa là, giá trị của giải pháp tối ưu cho bài toán ba chiều hai chiều, tương ứng với sự đơn giản hóa mà theo đó các ràng buộc chặt chém được bỏ qua. Lưu ý rằng các hạn chế (3) và (4) là thừa, nhưng được thêm vào công thức để tăng cường sức mạnh. Thuật toán của chúng tôi giải quyết một vấn đề đơn giản trong đó các ràng buộc (5) bị loại bỏ và liệu giải pháp hiện tại có hợp lệ hay không được kiểm tra bằng cách giải bài toán tách sau: tất cả các phần tử sẽ từ phù hợp với trang tính với cách tiếp cận máy chém? Nếu câu trả lời là dương, thì giải pháp tối ưu của bài toán ba chiều tổng quát được tìm thấy. Nếu không, một ràng buộc bị vi phạm mới được tìm thấy và quá trình này được lặp lại.

Cách tiếp cận này tương tự như phương pháp được đề xuất bởi Caprara và Monasi để có lời giải chính xác cho bài toán cái túi 2D và theo Piesinger và Sigard để giải quyết chính bài toán cái túi 2D nói chung. Chính xác hơn, mô hình (2) - (6) được giải bằng một nhánh và phương pháp ràng buộc chuyên biệt, trong đó các phần tử được sắp xếp theo thứ tự. Các giới hạn trên thu được từ sự thư giãn LP của bài toán (2) - (3) bằng cách sử dụng giới hạn trên của Martello và Toth. Việc chuyển ngược xảy ra bất cứ khi nào giới hạn trên không vượt quá giải pháp hiện tại hoặc khi một số ràng buộc (3) - (5) bị vi phạm.

Ở bài toán 2-6, người ta không tính đến chuyện chặt chém. Xét tất cả các điều kiện, chúng tôi coi là một phương pháp giải đệ quy.

7. Phương pháp giải

Trong phần phụ này, chúng tôi xem xét một thủ tục đệ quy để liệt kê các gói máy chém hai chiều. Trong một thủ tục được gọi là đệ quy, chúng tôi biểu thị mỗi sự sắp xếp hợp lệ của một tập hợp con các phần tử trên một lá là một gói hợp lệ. Mỗi gói hợp lệ có thể được biểu diễn dưới dạng một vectơ số nguyên không âm, trong đó mỗi tọa độ đại diện cho số phần tử của kiểu trong gói. Ký hiệu là đóng gói lợi nhuận. Chúng tôi nói rằng quy cách đóng gói cho phép là tối đa nếu không có yếu tố nào khác có thể được đóng gói vào một tờ, tức là đóng gói hóa ra là không khả thi đối với tất cả các loại phần tử, vì vậy. Đối với hai gói hợp lệ và chúng tôi xác định bao bì mới như sau: , .

Thủ tục đệ quy liệt kê ngầm tất cả các gói hợp lệ bằng cách chia một cách đệ quy trang tính thành hai phần bằng một nhát chém (ngang hoặc dọc). Thủ tục này nhận tham số đầu vào, là giới hạn thấp hơn đối với lợi nhuận của bất kỳ việc đóng gói (máy chém) nào có thể chấp nhận được.

Như đã lưu ý bởi Christodes và Whitlog, đối với bất kỳ vấn đề đóng gói hai chiều nào, có một giải pháp tối ưu tương ứng với một mẫu bình thường, nghĩa là, một giải pháp trong đó, đối với bất kỳ phần tử được đóng gói nào, phía bên trái của nó tiếp giáp với phía bên phải của một phần tử khác phần tử hoặc bên phải của trang tính. Điều này có nghĩa là chúng ta chỉ có thể xem xét các đường cắt dọc, theo tọa độ, có thể nhận được dưới dạng kết hợp của chiều rộng phần tử, tức là thuộc tập hợp:

Theo cách tương tự, chúng tôi chỉ xem xét các phần ngang, dọc theo các tọa độ thuộc tập hợp sau:

Chúng tôi giả định rằng các phần tử của cả hai tập hợp và được sắp xếp theo thứ tự tăng dần và tập hợp và.

Đã cho và và một ngưỡng quyết định, giả sử là tập hợp tất cả các gói phần tử đã cho khả thi (được phép) thành một trang có kích thước, có thể tạo ra (cùng với các phần tử dư và trang) lợi nhuận lớn hơn hoặc bằng. Đối với hai đóng gói hài lòng nhất định chúng tôi chính thức biểu thị bằng tổng số từng cặp của các gói trong bộ và:

Một cách trực quan, là tập hợp các bao bì có thể thu được bằng cách kết hợp bất kỳ bao bì nào với bất kỳ bao bì nào, bất kể kích thước của các tập hợp và. Rõ ràng là một khi tập hợp được xác định, chúng ta có thể tìm thấy các tập hợp với điều kiện tất cả (tương ứng) phần tử thuộc một tập có thứ tự (tương ứng). Theo cách tương tự, biết một tập hợp cho phép chúng ta xác định các tập hợp. Thật vậy, cần lưu ý rằng mỗi gói , có thể tạo ra lợi nhuận ít nhất bằng, trong hình chữ nhật, có thể nhận được dưới dạng tổng của hai gói cho phép được xác định cho hình chữ nhật nhỏ hơn. Về mặt hình thức:, ở bất cứ đâu cho một số, hoặc cho một số. Do đó, biết và đối với mỗi và, chúng ta có thể dễ dàng lấy (tạo) theo cách đệ quy.

Thuật toán cơ bản có thể được cải thiện như sau. Đối với mỗi gói trên tờ giấy có chiều rộng và chiều cao, giới hạn trên, chẳng hạn, để có lợi nhuận tối đa, có thể nhận được khi tính diện tích còn lại. Để đạt được điều này, hãy xem xét các ví dụ về ba lô có sức chứa, các loại phần tử có thể có trong các bản sao, mỗi bản có lợi nhuận và trọng lượng. Giải pháp tối ưu cho trường hợp này, hoặc bất kỳ giới hạn trên nào đối với giá trị này, đưa ra giới hạn trên về lợi nhuận tối đa có thể thu được bằng cách đóng gói các phần tử còn lại vào phần còn lại của trang tính. Rõ ràng rằng tất cả các yếu tố như có thể bị xóa khỏi tập hợp vì chúng không thể dẫn đến giải pháp khả thi có lợi nhuận lớn hơn. Trong cách triển khai của chúng tôi, chúng tôi tính toán giá trị của giới hạn trên trên lời giải tối ưu của trường hợp (một chiều) của bài toán cái cặp (xem). Giá trị của các giới hạn trên do Haifi thu được và các giá trị tương tự do Yang-Gun và Kang đề xuất cho bài toán ba lô hai chiều (trực giao) mà không có ràng buộc, chúng tôi sử dụng giá trị tối thiểu của các giá trị này làm giá trị trên ràng buộc.

Ngoài ra, hãy lưu ý rằng chiều rộng và chiều cao của trang tính có thể được giảm xuống và tương ứng, dẫn đến sức mạnh của ba lô thấp hơn khi giải quyết vấn đề giãn ba lô, do đó giới hạn trên chính xác hơn. Cuối cùng, lưu ý rằng chỉ có gói tối đa cho phép phải được lưu trữ cho mỗi bộ và bất kỳ phần tử không tối đa nào có thể bị bỏ qua. Điều này làm giảm số lượng phần tử trong, do đó yêu cầu về bộ nhớ và thời gian tính toán của thuật toán.

8. Dữ liệu đầu vào và đầu ra của hệ thống

Dữ liệu đầu vào:

1. Chiều rộng của tấm hình chữ nhật;

2. Chiều cao của tấm hình chữ nhật;

3. Kích thước của hình vuông;

Đầu ra:

5. Hình chữ nhật nằm trên màn hình điều khiển;

6. Tệp văn bản có thông tin về hình chữ nhật nội tiếp;

7. Thông tin bổ sung về cách lắp các hình chữ nhật dưới dạng các thông báo khác nhau trên màn hình.

8,5. Phát triển giao diện người dùng

Nên tạo giao diện người dùng ở dạng đồ họa vì nó thuận tiện nhất cho việc sử dụng.

Mẫu đầu vào và đầu ra dữ liệu

Hình 1. Giao diện người dùng

Đầu tiên chúng ta nhập chiều rộng của hình chữ nhật, nhấn enter, chiều cao - enter và nhập kích thước của các hình vuông, ví dụ 23 - enter, 45 - enter, v.v., nhấn 0 để dừng nhập các hình vuông và tệp kết quả xuất hiện ở nơi lưu dự án .png, nơi bạn có thể thấy việc đóng gói các ô vuông.

Cửa sổ tương tự hiển thị thông tin về số ô vuông có kích thước nhất định. Nhấn phím 0 và xem thông tin về thời gian lấp đầy diện tích hình chữ nhật bằng các ô vuông.

Sau khi tất cả các hành động được thực hiện, chúng tôi nhận được:

Hình 2. Kết quả của chương trình

và gói chính nó:

Hình 3. Đóng gói các hình vuông thành hình chữ nhật

Bảng 1.

Kết quả số của chương trình

Kích thước hình chữ nhật

Số ô vuông ước tính

Tổng số ô vuông

Kết luận: nhập càng nhiều ô vuông thì thời gian thực hiện thuật toán càng lâu.

9. Kết luận

Phù hợp với mục đích của nghiên cứu, các nhiệm vụ sau đã được đặt ra và thực hiện:

1. Xây dựng các bài toán đóng gói cắt đang được xem xét về mặt lập trình toán học và đánh giá định tính các phương pháp cho giải pháp của chúng;

2. Đã xây dựng và nghiên cứu thuật toán giải bài toán xếp các hình vuông có kích thước khác nhau vào một hình chữ nhật;

3. Hiệu quả của phương pháp đã phát triển được phân tích dựa trên kết quả của các thí nghiệm số.

Thư mục:

1.Tekhtran / Vật liệu tấm cắt [Tài nguyên điện tử] - Chế độ truy cập. - URL: http://9132222.ru/catalog/soft/techtran/textran.html (truy cập 06/12/2014).

2.Caprara A, Monaci M. Về bài toán ba lô hai chiều. Các Thư Nghiên cứu Hoạt động 2004; 32: 5–14.

3. Christofides N, Whitlock C. Một thuật toán cho các bài toán cắt hai chiều. Nghiên cứu hoạt động 1977; 25: 30–44.

4. Hifi M. Một sự cải tiến của thuật toán chính xác của Viswanathan và Bagchi cho vật liệu cắt hai chiều bị hạn chế. Nghiên cứu Máy tính và Vận hành 1997; 24: 727–36.

5. Các vấn đề của Martello S, Toth P. Knapsack: thuật toán và triển khai máy tính. Chichester: John Wiley & Sons; Năm 1990.

6.Pisinger D, Sigurd M. Sử dụng các kỹ thuật phân rã và lập trình ràng buộc để giải quyết vấn đề đóng gói bin hai chiều. INFORMS Journal on Computing 2007; 19: 36–51

7.Young-Gun G, Kang MK. Một giới hạn trên mới cho việc cắt và đóng gói hai dimen-sional không bị giới hạn. Tạp chí của Hiệp hội Nghiên cứu Hoạt động 2002, 53: 587–91.