1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng hệ thống hỗ trợ tư vẫn thiết kế nhà dân dụng dựa trên semantic web

26 155 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 26
Dung lượng 665,23 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tuy nhiên, hiện nay chưa có một hệ thống nhằm cung cấp thông tin và đưa ra các tư vấn cần thiết cho việc xây dựng một ngôi nhà theo nhu cầu riêng mỗi người.. Nhằm mục đích nghiên cứu về

Trang 1

ĐẠI HỌC ĐÀ NẴNG

TRƯỜNG ĐẠI HỌC BÁCH KHOA

TRẦN THỊ HỒNG NHUNG

XÂY DỰNG HỆ THỐNG HỖ TRỢ TƯ VẤN THIẾT KẾ NHÀ DÂN DỤNG DỰA TRÊN

Trang 2

Công trình được hoàn thành tại TRƯỜNG ĐẠI HỌC BÁCH KHOA

Người hướng dẫn khoa học: PGS.TS VÕ TRUNG HÙNG

Phản biện 1: TS HUỲNH HỮU HƯNG

Phản biện 2: TS NGUYỄN THÁI SƠN

Luận văn được bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ kỹ thuật chuyên ngành Khoa học máy tính họp tại

Trường Đại học Trà Vinh vào ngày 16 tháng 09 năm 2017

Có thể tìm hiểu luận văn tại:

- Trung tâm Học liệu, Đại học Đà Nẵng tại Trường Đại học Bách

khoa

- Thư viện Khoa Công nghệ thông tin, Trường Đại học Bách khoa –

Đại học Đà Nẵng

Trang 3

MỞ ĐẦU

1 Lý do chọn đề tài

Cùng với sự phát triển kinh tế - xã hội, nhu cầu về xây dựng các ngôi nhà phù hợp với mỗi gia đình đang đặt ra trong thực tế Tuy nhiên, hiện nay chưa có một hệ thống nhằm cung cấp thông tin và đưa ra các tư vấn cần thiết cho việc xây dựng một ngôi nhà theo nhu cầu riêng mỗi người Nhằm mục đích nghiên cứu về Web ngữ nghĩa

và ứng dụng xây dựng một hệ thống cung cấp thông tin và tư vấn cho người dùng để chọn lựa, thiết kế ngôi nhà phù hợp nhất, tác giả đăng

ký thực hiện đề tài “Xây dựng hệ thống hỗ trợ tư vấn thiết kế nhà dân dụng dựa trên Semantic Web”

2 Mục tiêu và nhiệm vụ

Xây dựng được kho dữ liệu về thông tin tham khảo khi thiết kế nhà dân dụng, xây dựng thành công ứng dụng Semantic Web để cung cấp thông tin về thiết kế nhà dân dụng cho người dân có nhu cầu Nghiên cứu tổng quan về Semantic Web bao gồm các khái niệm liên quan, các công cụ, cách thức xây dựng một Semantic Web và các ứng dụng của Semantic Web Phân tích thiết kế và xây dựng hệ thống tra cứu thông tin về thiết kế nhà dân dụng dựa trên Semantic Web

3 Đối tượng và phạm vi nghiên cứu

Cơ sở ý thuyết và nền tảng để xây dựng một ứng dụng về

Sematic Web, thông tin thiết kế nhà dân dụng, phương pháp xây dựng và lưu trữ dữ liệu trong Semantic Web và các công cụ dùng để xây dựng Semantic Web Xây dựng kho dữ liệu trong lĩnh vực thiết

kế nhà dân dụng, khảo sát ý kiến, thu thập dữ liệu và xây dựng ứng dụng cung cấp thông tin thiết kế nhà dân dụng khu vực đồng bằng sông Cửu Long

Trang 4

4 Giả thiết nghiên cứu

Hệ thống cung cấp thông tin tham khảo về thiết kế nhà dân dụng ra đời sẽ phục vụ tốt hơn cho việc cung cấp thông tin nhà dân dụng, tìm hiểu và nghiên cứu về nhà ở khu vực đồng bằng sông Cửu Long

5 Phương pháp nghiên cứu

Nghiên cứu tài liệu, công cụ và công nghệ liên quan đến

Semantic Web Tiêu chuẩn thiết kế nhà ở, nguyên lý thiết kế nhà ở Tổng hợp các tài liệu liên quan đến nhà ở khu vực đồng bằng sông Cửu Long để thiết kế kho dữ liệu tham khảo về nhà dân dụng Phân tích hệ thống, xây dựng Ontology cho hệ thống, xây dựng ứng dụng thực tế, thực nghiệm trên các công cụ hỗ trợ phát triển Semantic Web, kiểm tra, kiểm thử và đánh giá kết quả

6 Ý nghĩa khoa học và thực tiễn của đề tài

Đề tài nghiên cứu tiếp cận công nghệ mới về xử lý thông tin

của Web ngữ nghĩa Nghiên cứu phát triển một ứng dụng đảm bảo tính chính xác thông tin Ứng dụng Semantic Web về mặt tìm kiếm Xây dựng hệ thống cung cấp thông tin về thiết kế kế nhà dân dụng cho phép người dùng tìm kiếm thông tin về nhà dân dụng của khu vực đồng bằng sông Cửu Long, xây dựng Ontology cho hệ thống Cung cấp cho người dùng một số thông tin thiết kế khi thiết kế nhà dân dụng, tiết kiệm chi phí tư vấn thiết kế nhà ở dân dụng

Trang 5

TỔNG QUAN VỀ SEMANTIC WEB CHƯƠNG 1.

1.1 Tổng quan Web ngữ nghĩa

1.1.1 Sự ra đời của Semantic Web

World Wide Web (WWW) chứa một lượng thông tin khổng

lồ, máy tính chỉ có nhiệm vụ gửi nhận dữ liệu và thể hiện thông tin dưới dạng mà chỉ có con người mới đọc hiểu được Người sử dụng phải làm nhiệm vụ tìm kiếm, suy luận, tổng hợp và trích rút thông tin mình cần Điều đó đã đặt ra thách thức là làm sao để khai thác thông tin trên Web hiệu quả hay nói cách khác là làm thế nào để máy tính

có thể xử lý tự động được chúng Từ đó Web 3.0 - Semantic Web ra đời nhằm đáp ứng những yêu cầu về xử lý và tìm kiếm thông tin, cho phép chúng ta xây dựng những CSDL phục vụ tìm kiếm chính xác

1.1.2 Khái niệm

Semantic Web là một cách nhìn về cách tổ chức dữ liệu: đó

là ý tưởng về việc dữ liệu trên Web được định nghĩa là liên kết theo một cách mà nó có thể được sử dụng bởi máy tính với mục đích không chỉ cho việc hiển thị mà còn tự động hóa, tích hợp và sử dụng lại dữ liệu qua các ứng dụng khác nhau

1.2 Kiến trúc của Semantic Web

1.2.1 Giới thiệu

Semantic Web được xây dựng trên nền hệ thống Web hiện tại Semantic Web được coi là sự mở rộng của Web hiện tại có bổ sung thêm ngữ nghĩa vào dữ liệu trên Web Hình 1.2 chỉ ra sơ đồ kiến trúc của Semantic Web theo đề xuất của Tim Berners Lee

Trang 6

Hình 1.1 Kiến trúc Web ngữ nghĩa

1.2.2 Vai trò của các tầng

1.2.2.1 Tầng Unicode và URI

Unicode: Là một bảng mã chuẩn chung có đủ các ký tự để thống nhất sự giao tiếp trên tất cả các quốc gia, đáp ứng tính nhất quán toàn cầu của Web

URI (Uniform Resource Identifier): Là kí hiệu nhận dạng Web đơn giản giống như các chuỗi bắt đầu bằng “http” hay “ftp” mà chúng ta thường xuyên thấy trên mạng Hệ thống World Wide Web được xây dựng trên chúng và bất kỳ cái gì mà có một URI thì được coi là “trên Web”

1.2.2.2 Tầng XML

XML (eXtensible Markup Language) là ngôn ngữ đánh dấu

mở rộng, cho phép người dùng có thể tùy ý thêm vào những thẻ theo yêu cầu của mình dựa theo chuẩn SGML (Standard Generalized Markup Language): Siêu ngôn ngữ có khả năng sinh ngôn ngữ khác) SGML được phát triển cho việc định cấu trúc và nội dung tài liệu điện tử do tổ chức ISO (International Organization for Standards) chuẩn hoá năm 1986

Trang 7

1.2.2.3 Tầng RDF và RDFS (RDF schema)

RDF (Resource Description Framework): Khung mô tả tài nguyên được W3C giới thiệu để cung cấp một cú pháp chuẩn để tạo, thay đổi và sử dụng các chú thích trong Semantic Web Một mệnh đề RDF là một bộ ba có dạng [chủ đề, thuộc tính, đối tượng] Trong đó, chủ đề là tài nguyên mà được mô tả bằng thuộc tính và đối tượng Thuộc tính thể hiện mối quan hệ giữa chủ đề và đối tượng Còn đối tượng ở đây có thể là một tài nguyên hoặc một giá trị Ba thành phần trong RDF đề là các URI

RDFS (RDF schema): Là một ngôn ngữ ontology đơn giản của Semantic Web, được coi là ngôn ngữ cơ sở của Semantic Web RDFS là ngôn ngữ mô tả bộ từ vựng trên các bộ ba RDF

1.2.2.5 Tầng Logic

Việc biểu diễn các tài nguyên dưới dạng các bộ từ vựng Ontology có mục đích là để máy có thể lập luận được Mà cơ sở lập luận chủ yếu dựa vào logic Chính vì vậy mà các Ontology được ánh

xạ sang logic, cụ thể là logic mô tả để có thể hỗ trợ lập luận Vì logic

mô tả có biểu diễn ngữ nghĩa hình thức (đặc trưng của lý thuyết mô hình), và cung cấp dịch vụ lập luận, là cơ sở để hỗ trợ máy có thể lập luận và hiểu tài nguyên

Trang 8

1.2.2.6 Tầng Proof

Tầng này đưa ra các luật để suy luận Cụ thể từ các thông tin

đã có ta có thể suy ra các thông tin mới Ví dụ: A là cha của B, A là

em trai C thì khí đó ta có thông tin mới là C là bác của B Để có được các suy luận này thì cơ sở là FOL (First-Order-Logic) Và tầng này hiện nay các nhà nghiên cứu đang xây dựng các ngôn ngữ luật cho

nó như: SWRL, RuleML

1.2.2.7 Tầng trust

Đảm bảo tính tin cậy của các ứng dụng trên Semantic Web

Để có được sự chứng minh về độ tin cậy thì các lập luận được áp dụng là không đơn điệu và có các cơ chế kiểm tra chứng minh kết hợp với công nghệ chữ ký điện tử để xác nhận độ tin cậy Các ngôn ngữ chứng minh là ngôn ngữ cho ta chứng minh một mệnh đề là đúng hay sai

1.2.3 Ontology

1.2.3.1 Khái niệm

Ontology là một thuật ngữ mượn từ triết học [4] nhằm mô tả các thực thể trong thế giới thực và cách chúng liên kết với nhau Trong khoa học máy tính một cách khái quát, Ontology là “một biểu diễn của sự khái niệm hóa chung được chia sẻ” của một miền nhất định Chúng giúp con người và máy có thể hợp tác, cùng nhau làm việc, giúp máy có thể “hiểu” và có khả năng xử lý thông tin hiệu quả Các Ontology được phát triển trong lĩnh vực trí tuệ nhân tạo để sử dụng lại và chia sẻ tri thức được thuận tiện hơn

1.2.3.2 Yêu cầu khi sử dụng Ontology

Cấu trúc rõ ràng: Đây là điều kiện cần để cho máy có thể xử

lý thông tin

Tính nhất quán: Giả sử chúng ta khai báo x là thể hiện của lớp A và A là lớp con của B∩C, A là lớp con của lớp D, Lớp B và lớp D không có quan hệ với nhau (disjoint) Thì chúng ta không nhất

Trang 9

quán bởi vì A nên là rỗng nhưng lại có thể hiện là x Đây là một dấu hiệu của một lỗi trong Ontology

1.2.3.3 Vai trò của Ontology

Chia sẻ sự hiểu biết chung giữa các ứng dụng và con người

Cho phép sử dụng lại tri thức

Đưa ra các giả thiết rõ ràng về miền

Phân tách tri thức lĩnh vực với tri thức thao tác

Phân tích tri thức lĩnh vực Phân tích hình thức của các khái niệm, cần thiết cho việc tái sử dụng và mở rộng Ontology

1.2.4 Quy trình xây dựng Semantic Web

Quy trình phát triển Ontology là một quy trình gồm nhiều bước, tuy nhiên vẫn chưa có một phương pháp chuẩn hóa nào để phát triển các Ontology Quy trình phát triển gồm 7 bước do Stanford Center for Biomedical Informatics Research đưa ra - Đây là nhóm phát triển phần mềm Protégé để trình diễn và soạn thảo Ontology

Bước 1: Xác định lĩnh vực và phạm vi của Ontology

Bước 2: Xem xét việc sử dụng lại các Ontology có sẵn

Trang 10

Bước 3: Liệt kê các thuật ngữ quan trọng

Bước 4: Xác định các lớp và phân cấp của các lớp

Bước 5: Xác định các thuộc tính

Bước 6: Xác định ràng buộc của các thuộc tính

Bước 7: Tạo các thực thể

1.2.5 Công cụ phát triển Semantic Web

1.2.5.1 Công cụ phát triển Ontology

Một số công cụ phát triển và hiệu chỉnh có giá trị trong việc làm giảm độ phức tạp và thời gian dùng cho nhiệm vụ xây dựng Ontology Các công cụ như Kaon, OileEd và Protégé cung cấp các giao diện nhằm giúp đỡ người sử dụng thực hiện các hoạt động chính yếu trong quá trình phát triển một Ontology

Trong số các công cụ đó, Protégé là công cụ được sử dụng rộng rãi và hiệu quả nhất hiện nay Nó cho phép người sử dụng định nghĩa và chỉnh sửa các lớp Ontology, các thuộc tính và quan hệ và các thể hiện sử dụng cấu trúc cây

Đặc điểm của Protégé

Đây là phần mềm miễn phí dùng để tạo ra các mô hình và các ứng dụng bằng cách sử dụng các Ontology Protégé được phát triển bởi trường Đại học Stanford và Mark Musen Chức năng nổi bật nhất của phần mềm này là cho phép người dùng sử dụng tạo ra các Ontology để phát triển Web Semantic theo đúng chuẩn của ngôn ngữ W3C OWL

Các đối tượng xây dựng chính của Protégé là:

Classes – Tổ chức các quan hệ tham chiếu và các kiểu thực thi Axioms – Mô hình câu lệnh đúng

Instances – Các thể hiện, các thành phần của đối tượng Domain – Giới hạn của Ontology

Vocabulary – Các lớp và khai báo

Protégé sử dụng giao diện đồ hoạ

Protégé phát triển để tích hợp các công cụ

Trang 11

Mục đích của Protégé là hỗ trợ người phát triển tạo ra được các Ontology một cách dễ dàng nhất Ban đầu đó là vấn đề giao diện

đồ hoạ, tiếp nữa đó là những công cụ thêm vào để tạo ra các chức năng đặc biệt khác

1.2.5.2 Công cụ kết nối và thao tác với Ontology

a SemWeb

SemWeb lần đầu tiên được phát hành vào tháng sáu năm

2005 và đã được thử nghiệm gần đây hơn với những bộ lưu trữ hơn một tỉ bộ ba Các tính năng cốt lõi như đọc/ghi dữ liệu XML với bộ

ba RDF, liên tục lưu trữ dữ liệu với nền tảng SQL và các truy vấn SPARQL cơ bản đã được kiểm nghiệm nhiều lần Các chức năng bên ngoài như hoạt động RDFS hoặc hoạt động của Backware - Chaining

đã làm việc nhưng ít được thử nghiệm và không hoàn chỉnh Thư viện không có công cụ đặc biệt đối với OWL Schema và nó hoạt động ở mức bộ ba của RDF

b OwlDotNetApi

OwlDotNetApi là một OWL API với bộ phân tích cú pháp viết bằng C# theo công nghệ NET dựa trên phân tích cú pháp RDF Drive, hoàn toàn phù hợp với đặc điểm kĩ thuật của W3C

c Jena

Jena là một thư viện được viết trên ngôn ngữ Java để xây dựng các ứng dụng Semantic Web Nó cung cấp một môi trường cho việc thao tác với tập tin định dạng RDF, RDFS và OWL Là một phần mềm nguồn mở và miễn phí, được phát triển từ chương trình Semantic Web của viện nghiên cứu HP

1.2.5.3 Công cụ tách từ

a Công cụ tách từ tiếng Việt JVnTextPro

JVnTextPro là một phần mềm nguồn mở được phát triển trên ngôn ngữ Java Được phát triển bởi nhóm nghiên cứu Nguyễn Cẩm

Tú, Phan Xuân Hiếu, Nguyễn Thu Trang JVnTextPro dựa trên lý thuyết về Các Trường Ngẫu Nhiên (CRFs) và Entropy Cực đại

Trang 12

(Maxent) để xử lý ngôn ngữ tự nhiên trong tiếng Việt Công cụ này

bao gồm một số bước tiền xử lý tiếng Việt và tiến trình xử lý được

thiết kế theo kiểu đường ống trong đó đầu ra của bước này sẽ được

sử dụng như đầu vào cho các bước tiếp theo

Hình 1.2 Mô hình xử lý tiếng Việt của JvnTextPro

b Công cụ tách từ tiếng Việt VnTokenizer

Công cụ VnTokenizer được phát triển trong đề tài VLSP của

nhóm tác giả Lê Hồng Phương, Nguyễn Thị Minh Huyền và Vũ

Lương Xuân Công cụ này được phát triển dựa trên phương pháp so

khớp tối đa (Maximum matching) với tập dữ liệu sử dụng là bảng âm

tiết tiếng Việt và từ điển từ vựng tiếng Việt

Công cụ được xây dựng trên ngôn ngữ Java, mã nguồn mở

Có thể dễ dàng tích hợp vào các hệ thống phân tích tiếng Việt khác

Công cụ này tách từ cho độ chính xác là 96% - 98%

Quy trình thực hiện tách từ theo phương pháp so khớp tối đa:

Hình 1.3 Tách từ theo phương pháp so khớp tối đa

Trang 13

PHÂN TÍCH THIẾT KẾ HỆ THỐNG CHƯƠNG 2.

2.1.2 Đặc điểm thiết kế kiến trúc nhà dân dụng

Phù hợp với đặc thù riêng của từng đối tượng ở (nghề nghiệp, giới tính, độ tuổi)

Tạo điều kiện phát triển nếp sống văn hóa xã hội mới văn minh, tiến bộ

Tôn trọng cơ sở quy hoạch chung

Xây dựng mới phải kết hợp được với hệ thống các không gian mở công cộng

Đẩy mạnh việc công nghiệp hóa

2.1.3 Giải pháp tổ chức liên hệ giao thông trong nhà

Tạo nên các phòng biệt lập bằng liên hệ thông qua tiền phòng và hành lang

Dùng phòng sinh hoạt chung, phòng khách để tập hợp quanh nó các phòng khác

Không gian lưu thông liên hoàn

Trang 14

Nhà siêu cao tầng, chọc trời (lớn hơn 30 tầng)

2.1.4.3 Phân loại dựa theo đối tượng phục vụ và ý nghĩa xã hội

Nhà ở kiểu sang trọng tiêu chuẩn cao (dành cho quý tộc, nhà lãnh đạo, quan chức cao cấp, nhà tư bản lớn)

Nhà ở cho người có thu nhập cao (dành cho các dạng ông chủ doanh nghiệp, quan chức hay các trí thức cao cấp) Nhà ở cho người thu nhập khá, trung bình

Nhà ở cho người thu nhập thấp, nghèo khổ

Trang 15

2.2 Phân tích hệ thống tra cứu thông tin thiết kế nhà dân dụng

2.2.1 Giới thiệu

Từ những quan điểm và kiến thức tìm hiểu được trong phần

lý thuyết về Semantic Web, tác giả đi đến việc sử dụng Semantic Web làm công cụ để xây dựng ứng dụng hỗ trợ thiết kế nhà dân dụng trong khuôn khổ luận văn này Ứng dụng được xây dựng nhằm phục

vụ cho việc tìm kiếm thông tin cho các cá nhân, tổ chức có nhu cầu

Cụ thể hơn là hệ thống có thể hỗ trợ người dùng tìm kiếm thông tin

về các kiểu nhà, một số mẫu nhà theo yêu cầu người dùng

2.2.2 Mô tả ứng dụng

Người dân có nhu cầu xây nhà cần biết một số thông tin về thiết kế nhà dân dụng và cần một số mẫu nhà tham khảo có thể truy cập vào hệ thống nhập thông tin cần tìm về kiểu nhà ở, hay là các bộ phận, khu vực trong nhà như phòng ngủ, phòng khách… kết quả trả

về là thông tin liên quan đến kiểu nhà này, các hình ảnh, mẫu thiết kế gợi ý cho kiểu nhà tương ứng nếu có tồn tại trong hệ thống Hệ thống

có hỗ trợ tìm kiếm có dấu và không dấu tiếng Việt, sau đó người dùng có thể chọn chức năng hiển thị thông tin chi tiết để xem chi tiết

Mô hình tổng thể của ứng dụng được mô tả như trong hình 2.1

Hình 2.1 Mô hình hệ thống

Ngày đăng: 01/04/2018, 12:00

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm