Đề tài Các nguyên lý sáng tạo và phần mềm máy tính

Genrich Altshuller phát triển 40 nguyên tắc cách đây hơn 20 năm. Ông và các cộng sự củ a mình đánh giá hàn g ngàn bằng sáng chế trên toàn thế giới, lựa chọn đặc biệt từ các n gành công nghiệp hàng đầu, đúc kết nên bản chất của những sáng tạo của giải pháp cho mâu thuẫn kỹ thuật. Đặc biệt, Altshuller đã quan tâm đến việc điều tra các mâu thuẫn đã được giải quyết mà không có sự thỏa hiệp. Altshuller nhận thấy rằng việc sử dụng các nguyên tắc trước đây được sử dụng để giải quyết các vấn đề tương tự trong sáng tạo các giải pháp khác có thể giải quy ết các vấn đề kỹ thuật. Altshuller đã xác định 40 nguyên tắc từ sự phân tích những phát minh, s áng chế thành công.

pdf24 trang | Chia sẻ: tuandn | Ngày: 28/05/2014 | Lượt xem: 1596 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Đề tài Các nguyên lý sáng tạo và phần mềm máy tính, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 1 ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN NGÀNH: KHOA HỌC MÁY TÍNH  BÀI THU HOẠCH MÔN HỌC PHƯƠNG PHÁP NGHIÊN CỨU KHOA HỌC TRONG TIN HỌC Đề tài: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẦN MỀM MÁY TÍNH Giảng viên hướng dẫn: GS.TSKH.Hoàng Kiếm Học viên: Nguyễn Khắc Duy Khóa 22 KHMT - Mã số: 12 11 017 TP HCM, năm 2012 TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 2 TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 3 Mở đầu Khoa học và công nghệ đã trở thành yếu tố cốt tử của sự phát triển, ảnh hưởng trực tiếp đến nền kinh tế toàn cầu. Điều này được phản ánh rõ trong việc hoạch định các chính sách và chiến lược phát triển khoa học, công nghệ và k inh tế của nhiều nước trên thế giới. Nghiên cứu khoa học ngày càng được quan tâm hơn cùng với việc đầu tư của các quốc gia. Trong bài thu hoạch này em muốn tóm tắt lại một số kiến thức về phương pháp nghiên cứu khoa học, đồng thời cũng liên hệ với thực tế việc áp dụng “40 nguyên lý sáng tạo” trong phần mềm máy tính. Qua đây, em cũng xin được gửi lời cảm ơn chân thành đến Giáo sư - T iến sỹ Khoa Học Hoàng Kiếm, người không những tận tâm truyền đạt những kiến thức nền tảng cơ bản cho chúng em về môn học “Phương pháp nhiên cứu khoa học trong tin học” mà còn kích thích tư duy, tăng khả năng nghiên cứu tìm tòi trong mỗi cá nhân. Cũng xin gởi lời cảm ơn đến các bạn bè học viên trong lớp, những người bạn luôn sẵng sàng chia sẻ kiến thức thu nhận được với nhau. Học viên: Nguyễn Khắc Duy TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 4 MỤC LỤC Mở đầu ..................................................................................................................................... 3 I. GIỚI THIỆU: ....................................................................................................................... 5 II. LIÊN HỆ 40 NGUYÊN LÝ SÁNG TẠO VÀ PHẦN MỀM MÁY TÍNH : ............................. 5 1. Nguyên tắc phân nhỏ .................................................................................................... 5 2. Nguyên tắc “tách khỏi”................................................................................................. 6 3. Nguyên tắc phẩm chất cục bộ ....................................................................................... 6 4. Nguyên tắc phản đối xứng ............................................................................................ 8 5. Nguyên tắc kết hợp ....................................................................................................... 8 6. Nguyên tắc vạn năng .................................................................................................... 8 7. Nguyên tắc “chứa trong” .............................................................................................. 9 8. Nguyên tắc phản trọng lượng ....................................................................................... 9 9. Nguyên tắc gây ứng suất sơ bộ ................................................................................... 10 10. Nguyên tắc thực hiện sơ bộ ..................................................................................... 10 11. Nguyên tắc dự ph òng .............................................................................................. 10 12. Nguyên tắc đẳng thế................................................................................................ 11 13. Nguyên tắc đảo ngược............................................................................................. 11 14. Nguyên tắc cầu (tròn) hoá ....................................................................................... 11 15. Nguyên tắc l inh động .............................................................................................. 12 16. Nguyên tắc gi ải “thiếu” hoặc “thừa”....................................................................... 12 17. Nguyên tắc chuyển sang chiều khác ....................................................................... 12 18. Nguyên tắc sử dụng các dao động cơ học ............................................................... 13 19. Nguyên tắc tác động theo chu kỳ ............................................................................ 13 20. Nguyên tắc l iên tục tác động có ích ........................................................................ 14 21. Nguyên tắc “vượt nhanh” ........................................................................................ 14 22. Nguyên tắc biến hại thành lợi ................................................................................. 14 23. Nguyên tắc quan hệ phản hồi .................................................................................. 15 24. Nguyên tắc sử dụng trung gian ............................................................................... 15 25. Nguyên tắc tự ph ục vụ ............................................................................................ 15 26. Nguyên tắc sao chép (copy) .................................................................................... 16 27. Nguyên tắc “rẻ” thay cho “đắt”............................................................................... 16 28. Thay thế sơ đồ cơ học ............................................................................................. 16 29. Sử dụng vỏ dẻo và màng mỏng............................................................................... 17 30. Nguyên tắc thay đổi màu sắc .................................................................................. 19 31. Nguyên tắc phân hủy hoặc tái sinh các phần .......................................................... 19 32. Thay đổi các thông số hoá lý của đố i tượng ........................................................... 19 33. Sử dụng các vật liệu hợp thành (composite) ........................................................... 20 Đặc điểm chung: ............................................................................................................... 21 III. KẾT LUẬN: ..................................................................................................................... 23 IV. TÀI LIỆU THAM KHẢO: ................................................................................................. 24 TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 5 I. GIỚI THIỆU: Genrich Altshuller phát triển 40 nguyên tắc cách đây hơn 20 năm. Ông và các cộng sự của mình đánh giá hàng ngàn bằng sáng chế trên toàn thế giới, lựa chọn đặc biệt từ các ngành công nghiệp hàng đầu, đúc kết nên bản chất của những sáng t ạo của giải pháp cho mâu thuẫn kỹ thuật. Đặc biệt, Altshuller đã quan tâm đến việc điều tra các mâu thuẫn đã được giải quyết mà không có sự thỏa hiệp. Altshuller nhận thấy rằng việc sử dụng các nguyên tắc trước đây được sử dụng để giải quyết các vấn đề tương tự trong sáng tạo các giải pháp khác có thể giải quy ết các vấn đề kỹ thuật. Altshuller đã xác định 40 nguyên t ắc từ sự phân tích những phát minh, sáng chế thành công. II. LIÊN HỆ 40 NGUYÊN LÝ SÁNG TẠO VÀ PHẦN MỀM MÁY TÍNH : 1. Nguyên tắc phân nhỏ a) Chia đối tượng thành các phần độc lập. Ví dụ: Intelligent Agents (Các tác tử thông minh) có thể hoạt động độc lập với nhau, đạt được một mục tiêu chung. b) Làm đối tượng trở nên tháo lắp được. Ví dụ: C++ temp lat es: cung cấp một phương tiện chứa mã để tổng quát hóa các trường hợp để xử lý, không cần t hiết phải xử lý các trường hợp có chung đặc điểm (generic programming)  Tối ưu hóa mã nguồn, tránh lặp lại xử lý. c) Tăng mức độ phân nhỏ đối tượng. Ví dụ: TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 6 Tăng mức độ phân nhỏ cho đến khi đạt đến một ngưỡng - atomic threshold (Ngưỡng nguyên tử là đơn vị cấu trúc nhỏ nhất của một đối tượng hoặc một thành phần, ví dụ, các bit có thể được xem như nguy ên tử trong bối cảnh của một chương trình mã hóa). Phần mềm Ví dụ: Fragmentation of Confidential Objects (Tạm gọi là Phân mảnh các đối tượng bí mật). Ý tưởng này, dựa trên sự phân mảnh đối tượng tại thời gian thiết kế, là giảm chế biến trong các đối tượng bí mật, nhiều đối tượng không bảo mật có thể được sản xuất tại thời gian thiết kế, các đối tượng ứng dụng có thể được xử lý trên máy tính dùng chung không đáng tin cậy. 2. Nguyên tắc “tách khỏi” Tách phần gây “phiền phức” (tính chất “phiền phức”) hay ngược lại tách phần duy nhất “cần thiết” (tính chất “cần thiết”) ra khỏi đối tượng. Ví dụ 1: Khai t hác văn bản trong hình ảnh. Kĩ thuật phân tách văn bản rất hữu ích trong việc định vị và giải nén các khối văn bản trong hình ảnh. Thuật toán hoạt động mà không có kiến thức trước khi kích thước văn bản, định hướng hoặc font chữ. Nó được thiết kế để loại bỏ thông tin hình ảnh nền và đánh dấu, hoặc xác định các khu vực của hình ảnh có chứa văn bản. Ví dụ 2: Parser. Dữ liệu phân tích cú pháp đề cập đến quá trình lập trình dữ liệu đầu vào được chia thành từng mảnh nhỏ riêng biệt của thông tin mà có thể được dễ dàng hơn giải thích và hành động. 3. Nguyên tắc phẩm chất cục bộ a) Chuyển đối tượng (hay môi trường bên ngoài, tác động bên ngoài) có cấu trúc đồng nhất thành không đồng nhất. b) Các phần khác nhau của đối tượng phải có các chức năng khác nhau. c) Mỗi phần của đối tượng phải ở trong những điều kiện thích hợp nhất đối với công việc. TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 7 Ví dụ 1: Một phương pháp lấy mẫu thống nhất không cho nhận dạng ký tự. Phương pháp xác định khai thác tính năng như các t ính năng lấy mẫu một chiều trong một hướng vuông góc với một định hướng dòng nhất định. Nó mẫu tính năng ở các khoảng thời gian không thống nhất như vậy là để tránh misidentifying hai dòng trong gần như là một dòng duy nhất. Ví dụ 2: Non-uniform access algorithms (Các thuật toán truy cập không đồng đều). Trong môi trường không dây, thông tin được phát sóng trên các kênh truyền thông cho các khách hàng bằng cách sử dụng mạnh mẽ, hoạt động bằng pin palmtops. Để bảo tồn năng lượng, thông t in được phát sóng phải được tổ chức để khách hàng có chọn lọc có t hể điều chỉnh ở phần mong muốn phát sóng. Hầu hết các công việc hiện t ại t ập trung vào phát sóng t hống nhất. Tuy nhiên, rất thường xuyên, một lượng nhỏ thông tin thường xuyên hơn truy cập bởi số lượng lớn các khách hàng trong khi phần còn lại là ít hơn nhu cầu. Sử dụng chất lượng chủ yếu của địa phương, không thống nhất thuật t oán có thể được phát triển để dự đoán hành vi truy cập thích hợp cho một hoạt động cụ thể. Ví dụ 3: Thúc đẩy một đối tượng dữ liệu đến level cao hơn trong một single index tree. Xét bối cảnh của dữ liệu không gian (spatial data) trong kĩ thuật xử lý và quản lý dữ liệu. Không thống nhất trong dữ liệu mức độ là một đặc tính chung của dữ liệu không gian. Lập chỉ mục dữ liệu không đồng nhất như vậy bằng cách sử dụng cấu trúc chỉ số thông thường không gian như R-cây là không hiệu quả vì hai lý do: (1) sự thống nhất, làm tăng khả năng chồng chéo các mục chỉ mục, và, (2) phân cụm dữ liệu không đồng nhất có thể không gian chỉ số chết hơn phân nhóm dữ liệu thống nhất. Sử dụng cách TRIZ, chúng ta phải nhìn trong môi trường hiện tại của chúng ta để thực hiện các chức năng hữu ích. Để thực hiện các t ác động của những bất thường "hữu ích", chúng ta phát minh ra một kế hoạch mới t húc đẩy các đối tượng dữ liệu TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 8 cấp độ cao hơn trong các cấu trúc chỉ số dựa trên cây, những đối tượng sau đó thực hiện các chức năng khác nhau dựa vào bối cảnh vị trí trong cây chỉ mục. 4. Nguyên tắc phản đối xứng Chuyển đối tượng có hình dạng đối xứng thành không đối xứng (nói chung giảm bậc đối xứng). Ví dụ: Trong việc xây dựng các thuật toán đồ họa máy tính. nguyên lý phản đối xứng được áp dụng. 5. Nguyên tắc kết hợp a) Kết hợp các đối tượng đồng nhất hoặc các đối tượng dùng cho các hoạt động kế cận. b) Kết hợp về mặt thời gian các hoạt động đồng nhất hoặc kế cận. Ví dụ: Các hệ thống giao dịch trực tuyến (internet banking, core banking) của các ngân hàng. Ngày nay đa số các ngân hàng đã liên minh với nhau trong việc xử lý các giao dịch của khách hàng. Vì vậy đòi hỏi ở mỗi ngân hàng phải có các phần mềm xử lý giao dịch cho phép liên thông, kết nối, phối hợp và đồng bộ với các ngân hàng khác. 6. Nguyên tắc vạn năng Đối tượng thực hiện một số chức năng khác nhau, do đó không cần sự tham gia của các đối tượng khác. Ví dụ: Simulink là phần mềm dùng để mô hình hóa, mô phỏng và phân tích một hệ thống động. Simulink cho phép mô t ả một hệ thống tuyến tính, hệ phi tuyến các phương trình trong thời gian liên tục, gián đoạn hay một hệ kết hợp liên tục và gián đoạn. Hệ thống cũng có thể có nhiều tốc độ khác nhau. TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 9 Công cụ mô phỏng Simulink được tích hợp sẵn thư viện mô hình chứa các khối như khối nhận tín hiệu, các nguồn tín hiệu, các phần tử tuyến tính và phi tuy ến ,…mô phỏng trong nhiều lĩnh vực: hàng không, kỹ thuật số, dao động, cơ khí, giao thông, …Việc thiết kế Simulink theo nguyên tắc vạn năng giúp tiết kiệm không gian, không cần thiết phải xây dựng mỗi công cụ cho mỗi chức năng. Đồng thời, người dùng có thể tạo ra những khối chức năng mới, tăng số chức năng của đối tượng. 7. Nguyên tắc “chứa trong” a) Một đối tượng được đặt bên trong đối tượng khác và bản thân nó lại chứa đối tượng thứ ba b) Một đối tượng chuyển động xuyên suốt bên trong đối tượng khác. Ví dụ: Phần mềm Matlab Tính toán kỹ thuật là một lĩnh vực rộng lớn. Do đó, kho công cụ trong Matlab được quản lí theo nguyên tắc chứa trong. Hộp Toolbox chứa đựng nhiều Toolbox cho nhiều lĩnh vực khác nhau. Bên trong mỗi Toolbox chứa: + Các Tool: các phần mềm có cấu trúc khác nhau, sử dụng t hư viện lệnh của Toolbox + Help: Danh mục các hàm và t ham số của hàm dùng trong Toolbox. + Demos: chức các ví dụ đã thực hiện sẵn và giải thích. + Product Page: trang trao đổi thông tin trực tuyến về Tool. “Một đối tượng chuyển động xuyên suốt bên trong đối tượng khác”, khi khởi động một Tool, các chức năng của Tool cũng đuợc khởi động. Các chức năng hoạt động trong suốt thời gian hoạt động của Tool và cũng kết thúc khi đóng Tool. Như vậy, các chức năng của mỗi Tool là hoàn toàn chứa trong Tool đó. 8. Nguyên tắc phản trọng lượng a) Bù trừ trọng lượng của đối tượng bằng cách gắn nó với các đối tượng khác có lực nâng. b) Bù trừ trọng lượng của đối tượng bằng tương tác với môi trường như sử dụng các lực thủy động, khí động... TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 10 Ví dụ: Các phần mềm open source, chất lượng kém, bù trừ cho chi phí bản quy ền phần mềm. 9. Nguyên tắc gây ứng suất sơ bộ Gây ứng suất trước với đối tượng để chống lại ứng suất không cho phép hoặc không mong muốn khi đối tượng làm việc (hoặc gây ứng suất trước để khi làm việc sẽ dùng ứng suất ngược lại ). Ví dụ: Facebook tạo ra các phương án khắc phúc sự cố quá tải (vô hiệu hóa các chức năng ít quan trọng để t ăng hiệu quả trong những chức năng chính) chứng tỏ Facebook đã ứng dụng nguyên tắc ứng suất sơ bộ. 10.Nguyên tắc thực hiện sơ bộ a) Thực hiện trước sự thay đổi cần có, hoàn toàn hoặc từng phần, đối với đối tượng. b) Cần sắp xếp đối tượng trước, sao cho chúng có thể hoạt động từ vị trí thuận lợi nhất, không mất thời gian dịch chuyển. Ví dụ: Java Virtual Machine chuy ển văn bản mã thành một dạng trung gian trước khi thực hiện nó và / hoặc biên dịch nó thành dạng số nhị phân cụ thể của máy. 11.Nguyên tắc dự phòng Bù đắp độ tin cậy không lớn của đối tượng bằng cách chuẩn bị trước các phương tiện báo động, ứng cứu, an toàn. Ví dụ: Trong phần mềm HTML 5 đã loại bỏ đi nhiều thẻ cũ nhưng t hực chất vẫn có một số thẻ còn sử dụng được trong phiên bản thứ năm này như thẻ , . Nhưng theo ý kiến riêng của em, những thẻ nào không được khuyến TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 11 cáo sử dụng thì đừng nên sử dụng quá nhiều. Vì sau này những thẻ đó có thể thực sự bị loại bỏ hoàn toàn trong các phiên bản tương lai. Một số thẻ cũ đã được đề nghị thay thế bởi các thẻ mới có nhiều tính năng hơn như:  Thẻ được thay bởi thẻ .  Thẻ , , v.v… được thay bởi CSS. 12.Nguyên tắc đẳng thế Thay đổi điều kiện làm việc để không phải nâng lên hay hạ xuống các đối tượng. Ví dụ: Lập trình ứng dụng web, có một số trường hợp vì giới hạn băng thông của đường truyền, ta không thể load một trang web với dung lượng lớn, vì vậy để giữ nguyên băng thông của đường truyền ta phải tối ưu mã nguồn của website(image, javascript…) 13.Nguyên tắc đảo ngược a) Thay vì hành động n hư yêu cầu bài toán, hành động ngược lại (ví dụ, không làm nóng mà làm lạ nh đối tượng) b) Làm phần chuyển động của đối tượng (hay môi t rường bên ngoài) thành đứng yên và ngược lại, phần đứng yên thành chuyển động. Ví dụ: Trong một số ngôn ngữ lập trình (C, Visual basic…) thay vì đi xét một số biểu thức logic có giá trị “true” thì ta lại xét có giá trị “false”. 14.Nguyên tắc cầu (tr òn) hoá a) Chuyển những phần thẳng của đối t ượng thành cong, mặt phẳng thành mặt cầu, k ết cấu hình hộp thành kết cấu hình cầu. b) Sử dụng các con lăn, viên bi, vòng xoắn. c) Chuyển sang chuyển động quay, sử dụ ng lực l y tâm. TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 12 Ví dụ: Phần mềm phân tích và xử lý các tín hiệu được thu nhận từ các vệ tinh, sử dụng các mặt cầu để xác định các điểm giao nhau thay vì sử dụng các đường tròn. 15.Nguyên tắc linh động a) Cần thay đổi các đặt trưng của đối tượng hay môi trường bên ngoài s ao cho chúng tối ưu trong từng giai đoạn làm việc. b) Phân chia đối tượng thành từng phần, có khả năng dịch chuyển với nhau. Ví dụ: Ngôn ngữ lập trình visual basic.net ta có kiểu dữ liệu “object” có thể chứa bất kỳ giá trị nào thuộc kiểu int, string, double… 16.Nguyên tắc giải “thiếu” hoặc “thừa” Nếu như khó nhận được 100% hiệu quả cần thiế t, nên nhận ít hơn hoặc nhiều hơn “một chút”. Lúc đó bài to án có thể tr ở nên đơn giản hơn và dễ giải hơn. Ví dụ: Một trong những ứng dụng phổ biến nhất trên Facebook là ứng dụng Hình ảnh (Photos), nơi thành viên có thể upload album và hình ảnh. Facebook cho phép người dùng tải lên không giới hạn số hình ảnh, so với các dịch vụ lưu trữ hình ảnh kh́c như Photobucket và Flickr, trong đó ́p dụng giới hạn số lượng các bức ảnh mà người dùng được phép tải lên. Điều này đã đóng góp phần nào đó trong thành công của Facebook ngày nay. 17.Nguyên tắc chuyển sang chiều khác a) Những khó khăn do chuyển động (hay sắp xếp) đối tượng theo đường (một chiều) sẽ được khắc phục nếu cho đối tượng khả năng di chuyển trên mặt phẳng (hai chiều). Tương tự, những bài toán liên quan đến chuyển động (hay sắp xếp) các đối tượng trê n mặt phẳng sẽ được đơn giản hoá khi chuyển sang không gian (ba chiều). b) Chuyển các đối tượng có kết cấu một tầng thành nhiều tầng. TIỂU LUẬN: CÁC NGUYÊN LÝ SÁNG TẠO VÀ PHẨN MỀM MÁY TÍNH NGUYỄN KHẮC DUY – K22 – 12 11 017 13 c) Đặt đối tượng nằm nghi êng. d) Sử dụng mặt sau của diện tích cho trướ c. e) Sử dụng các luồng ánh sáng tới diện tích bên cạnh hoặ c tới mặt sau của diện tích cho trước. Ví dụ: Áp dụng mô hình thác nước trong công nghệ phần mềm, khi ch