Share to: share facebook share twitter share wa share telegram print page

Giải thuật tìm kiếm

Trong ngành khoa học máy tính, một giải thuật tìm kiếm là một thuật toán lấy đầu vào là một bài toán và trả về kết quả là một lời giải cho bài toán đó, thường là sau khi cân nhắc giữa một loạt các lời giải có thể. Hầu hết các thuật toán được nghiên cứu bởi các nhà khoa học máy tính để giải quyết các bài toán đều là các thuật toán tìm kiếm. Tập hợp tất cả các lời giải có thể đối với một bài toán được gọi là không gian tìm kiếm. Thuật toán thử sai (brute-force search) hay các thuật toán tìm kiếm "sơ đẳng" không có thông tin sử dụng phương pháp đơn giản nhất và trực quan nhất. Trong khi đó, các thuật toán tìm kiếm có thông tin sử dụng heuristics để áp dụng các tri thức về cấu trúc của không gian tìm kiếm nhằm giảm thời gian cần thiết cho việc tìm kiếm.

Tìm kiếm không có thông tin

Một giải thuật tìm kiếm không có thông tin là giải thuật không tính đến bản chất cụ thể của bài toán. Khi đó, các giải thuật dạng này có thể được cài đặt tổng quát, và cùng một cài đặt có thể được sử dụng trong một diện rộng các bài toán (do sử dụng trừu tượng hóa). Nhược điểm của các giải thuật này là phần lớn các không gian tìm kiếm kích thước cực kì lớn, và một quá trình tìm kiếm (đặc biệt tìm kiếm theo cây) sẽ cần một khoảng thời gian đáng kể cho các ví dụ nhỏ. Do đó, để tăng tốc độ quá trình tìm kiếm, đôi khi chỉ có thể dùng giải thuật tìm kiếm có thông tin.

Tìm kiếm trên danh sách

Có lẽ các giải thuật tìm kiếm trên danh sách là loại giải thuật tìm kiếm cơ bản nhất. Mục đích là tìm trong một tập hợp một phần tử chứa một khóa nào đó. Do đây là một bài toán thường gặp trong khoa học máy tính, nên độ phức tạp tính toán của các thuật toán này đã được nghiên cứu kỹ càng. Thuật toán đơn giản nhất là tìm kiếm tuyến tính. Thuật toán này kiểm tra từng phần tử trong danh sách theo thứ tự của danh sách đó. Nó có thời gian chạy khá lớn: O(n), trong đó n là số phần tử trong danh sách, nhưng có thể sử dụng thẳng cho một danh sách bất kỳ mà không cần tiền xử lý. Tìm kiếm nhị phân là một thuật toán cao cấp hơn với thời gian chạy là O(log n). Đối với các danh sách lớn, thuật toán này tốt hơn hẳn tìm kiếm tuyến tính, nhưng nó đòi hỏi danh sách phải được sắp xếp từ trước (xem thuật toán sắp xếp) và đòi hỏi khả năng truy nhập ngẫu nhiên (random access). Tìm kiếm nội suy (Interpolation search) tốt hơn tìm kiếm nhị phân đối với các danh sách rất lớn với phân bố gần đều. Thuật toán Grover là một thuật toán lượng tử cho phép tăng tốc độ gấp 4 lần so với tìm kiếm tuyến tính truyền thống trên các danh sách chưa được sắp xếp.

Bảng băm (hash table) cũng được dùng cho tìm kiếm trên danh sách. Nó đòi hỏi thời gian hằng số trong trường hợp trung bình, nhưng lại cần nhiều phụ phí về không gian bộ nhớ và thời gian chạy O(n) cho trường hợp xấu nhất. Một phương pháp tìm kiếm khác dựa trên các cấu trúc dữ liệu chuyên biệt sử dụng cây tìm kiếm nhị phân cân bằng (self-balancing binary search tree) và đòi hỏi thời gian chạy O(log n); các giải thuật loại này có thể coi là mở rộng của tư tưởng chính về tìm kiếm nhị phân để cho phép chèn và xóa nhanh. Xem mảng liên kết (associative array) để biết thêm về các cấu trúc dữ liệu tìm kiếm trên danh sách.

Đa số các giải thuật tìm kiếm trên danh sách, chẳng hạn tìm kiếm tuyến tính, tìm kiếm nhị phân, và cây tìm kiếm nhị phân cân bằng, có thể được mở rộng với một chút chi phí bổ sung để tìm tất cả các giá trị nhỏ hơn hoặc lớn hơn một khóa cho trước - một phép toán được gọi là tìm kiếm khoảng (range search). Bảng băm là ngoại lệ, các tìm kiếm khoảng không thể được thực hiện một cách hiệu quả trên bảng băm.

Tìm kiếm trên cây

Tìm kiếm trên cây là trung tâm của các kỹ thuật tìm kiếm. Các thuật toán này tìm kiếm trên các cây gồm các nút, cây này có thể là cây tường minh hoặc được xây dựng dần trong quá trình tìm kiếm. Nguyên lý cơ bản là: một nút được lấy ra từ một cấu trúc dữ liệu, các nút con của nó được xem xét và bổ sung vào cấu trúc dữ liệu đó. Bằng cách thao tác trên cấu trúc dữ liệu này, cây tìm kiếm được duyệt theo các thứ tự khác nhau, chẳng hạn theo từng mức (tìm kiếm theo chiều rộng) hoặc đi tới một nút lá trước rồi quay lui (tìm kiếm theo chiều sâu). Các ví dụ khác về tìm kiếm trên cây bao gồm: tìm kiếm lặp sâu dần, tìm kiếm chiều sâu giới hạn, tìm kiếm hai chiềutìm kiếm chi phí đều

Tìm kiếm trên đồ thị

Nhiều bài toán về lý thuyết đồ thị có thể được giải quyết bằng các thuật toán tìm kiếm, chẳng hạn thuật toán Dijkstra, thuật toán Kruskal, giải thuật láng giềng gần nhấtgiải thuật Prim. Các thuật toán này có thể được coi là các mở rộng của các thuật toán tìm kiếm trên cây.

Tìm kiếm có thông tin

Trong tìm kiếm có thông tin, người ta sử dụng một đánh giá heuristic đặc thù cho bài toán cần giải quyết với vai trò hướng dẫn cho quá trình tìm kiếm. Một cách đánh giá heuristic tốt sẽ làm cho quá trình tìm kiếm có thông tin hoạt động hiệu quả hơn hẳn một phương pháp tìm kiếm không có thông tin bất kỳ.

Có một vài thuật toán tìm kiếm có thông tin nổi trội dành cho danh sách. Một trong số đó là một bảng băm với một hàm băm là một heuristic dựa trên bài toán đang được giải. Đa số các thuật toán tìm kiếm có thông tin đều là tìm kiếm trên cây. Trong đó có tìm kiếm theo lựa chọn tốt nhấtA*. Cũng như các thuật toán không có thông tin, các thuật toán này có thể được mở rộng để làm việc trên cả các đồ thị.

Tìm kiếm đối kháng

Trong các trò chơi như cờ vua hay cờ tướng, có một cây trò chơi bao gồm tất cả các nước đi có thể của cả hai đấu thủ và các cấu hình bàn cờ là kết quả của các nước đi đó. Ta có thể tìm kiếm trên cây này để có được một chiến lược chơi hiệu quả. Dạng bài toán này có đặc điểm độc nhất vô nhị là ta phải tính đến mọi nước đi mà đối thủ của ta có thể sử dụng. Để làm điều này, các chương trình máy tính chơi cờ, cũng như các dạng khác của trí tuệ nhân tạo như lập kế hoạch tự động (machine planning), thường sử dụng các thuật toán tìm kiếm như thuật toán minimax, tỉa cây tìm kiếm, và tỉa cây alpha-beta (alpha-beta pruning).

Thỏa mãn ràng buộc

Đây là một loại tìm kiếm để giải quyết các bài toán thỏa mãn ràng buộc mà trong đó, thay vì tìm một đường đi, lời giải chỉ đơn giản là một tập các giá trị được gán cho một tập các biến. Do các biến có thể được xử lý theo thứ tự tùy ý, các thuật toán thông thường dành cho tìm kiếm trên cây rất không hiệu quả. Các phương pháp giải các bài toán ràng buộc bao gồm tìm kiếm tổ hợpquay lui, cả hai đều tận dụng các đặc điểm tự do có liên quan đến các bài toán ràng buộc.

Các loại khác

Tham khảo

Read other articles:

City in Minnesota, United States City in Minnesota, United StatesHendersonCityLocation of Hendersonwithin Sibley County, MinnesotaCoordinates: 44°31′40″N 93°54′33″W / 44.52778°N 93.90917°W / 44.52778; -93.90917CountryUnited StatesStateMinnesotaCountySibleyGovernment • TypeMayor-council • MayorCora KoesterArea[1] • Total1.10 sq mi (2.86 km2) • Land1.07 sq mi (2.78 km2) 

В Википедии есть статьи о других людях с такой фамилией, см. Лысенко; Лысенко, Николай.Николай Лысенкоукр. Микола Лисенко Основная информация Полное имя Николай Витальевич Лысенко Дата рождения 10 (22) марта 1842(1842-03-22) Место рождения село Гриньки,Кременчугский уезд,По

Manny Harris Informações pessoais Nome completo Corperryale L'Adorable Harris Data de nasc. 21 de setembro de 1989 (34 anos) Local de nasc. Detroit, Estados Unidos Altura 6 ft 5 in (1.96 m) Peso 185 lb (84 kg) Informações no clube Clube atual NLEX Road Warriors Posição Ala-Armador Clubes de juventude 2007–2010 Michigan Clubes profissionais Ano Clubes Partidas (pontos) 2010–2012 2011–2012 2012–2013 2013–2014 2014 2014 2015 2015–2016 2016 2016 2017 2017 2017 2017–2...

1966 film by Richard Lester A Funny Thing Happenedon the Way to the ForumTheatrical release posterDirected byRichard LesterScreenplay by Melvin Frank Michael Pertwee Based onA Funny Thing Happened on the Way to the Forumby Burt SheveloveLarry GelbartProduced byMelvin FrankStarring Zero Mostel Jack Gilford Phil Silvers Buster Keaton Michael Crawford Michael Hordern CinematographyNicolas RoegEdited byJohn Victor-SmithMusic byKen ThorneSongs:Stephen SondheimDistributed byUnited ArtistsRelease da...

Pubertad Autor Edvard MunchCreación 1895Ubicación Galería Nacional de Noruega (Noruega) y Museo Nacional de Arte, Arquitectura y Diseño (Noruega)Material Óleo y LienzoDimensiones 151,5 centímetros x 110 centímetros y 110 centímetros[editar datos en Wikidata] Pubertad (en noruego: Pubertet) es una pintura de 1894–95 de Edvard Munch, pintor noruego destacado en el arte expresionista. Pubertad también fue reproducida en litografía y aguafuerte por Munch. Génesis Félicien ...

OpenStreetMap muestra la producción total de energía de una planta en la parte superior de la pila, encima de los valores de los generadores que contribuyen a ese valor. Esto es un poco confuso, pero no se pierde ninguna información. La Industria de la energía es un término genérico para todas las industrias relacionadas con la producción y venta de energía, incluida la extracción de combustible, producción, refinación y distribución. La sociedad moderna consume grandes cantidades...

هذه المقالة يتيمة إذ تصل إليها مقالات أخرى قليلة جدًا. فضلًا، ساعد بإضافة وصلة إليها في مقالات متعلقة بها. (يونيو 2019) ألف يونسن معلومات شخصية تاريخ الميلاد 26 يناير 1919  تاريخ الوفاة 14 يناير 1986 (66 سنة)   مواطنة النرويج  الحياة العملية المهنة عسكري  الجوائز  نيشان ال...

Frontansicht der Basilika Chor der Basilika Die Stiftskirche St. Vitus und Deocar ist eine von Papst Benedikt XVI. am 14. Juli 2010 zur Basilica minor erhobene Kirche in Herrieden, Bezirk Mittelfranken, Bayern. Sie ist neben der Franziskanerbasilika in Ingolstadt und der Wallfahrtsbasilika in Wemding eine von drei Basilicae minores des Bistums Eichstätt und die einzige in Mittelfranken. Inhaltsverzeichnis 1 Baugeschichte 2 Raumwirkung 3 Ausstattung 4 Orgel 5 Geläut 6 Literatur 7 Weblinks 8 ...

  此条目的主題是历史上的阿瑜陀耶及其遗址。关于1767年后于他处重建的新城,請見「阿瑜陀耶」。 坐标:14°20′52.008″N 100°33′38.016″E / 14.34778000°N 100.56056000°E / 14.34778000; 100.56056000 阿瑜陀耶古城世界遗产官方名稱Historic City of Ayutthaya(英文)Ville historique d’Ayutthaya(法文)位置 泰國(亚洲和太平洋地区)標準文 (iii)参考编码576登录年份1991(...

Huracán Manuel Huracán categoría 1  (EHSS) El huracán Manuel aproximándose a Sinaloa el 18 de septiembre de 2013.Duración 13-20 de septiembre de 2013Vientos máximos 120 km/h (durante 1 minuto)Presión mínima 985 hPaDaños totales $4.2 mil millones(2013 USD)Fallecimientos 169Áreas afectadas Sur-suroeste y occidente de México (especialmente la costa de Guerrero)Forma parte de laTemporada de huracanes en el Pacífico de 2013[editar datos en Wikidata] El huracán Manuel f...

The Right HonourableThe Lord SharkeyMember of the House of LordsLord TemporalIncumbentAssumed office 20 December 2010Life Peerage Personal detailsBorn24 September 1947Political partyLiberal Democrats John Kevin Sharkey, Baron Sharkey (born 24 September 1947) is a British Liberal Democrat politician. He was chairman of the Liberal Democrat General Election campaign during the 2010 United Kingdom general election and director of the YES! To Fairer Votes campaign during the 2011 United Kingd...

2016 studio album by MadnessCan't Touch Us NowStudio album by MadnessReleased28 October 2016Recorded2016[1]StudioToe Rag Studios, LondonIguana Studio, LondonGenre Ska pop reggae Length58:59LabelLucky 7Producer Clive Langer Liam Watson Charlie Andrew Madness[2] Madness chronology The Very Best of Madness(2014) Can't Touch Us Now(2016) Theatre of the Absurd Presents C'est la Vie(2023) Singles from Can't Touch Us Now Mr. ApplesReleased: 7 September 2016 HerbertReleased: 1...

Провінція Петорка ісп. Provincia de Petorca Герб Прапор Адм. центр Петорка Країна Чилі Провінція Ла-Лігуа Підрозділи 5 комун Офіційна мова Іспанська Населення  - повне 70 610 (2002) (37)  - густота 15,39 км² (31) Площа  - повна 4 588,9 км² Висота  - максимальна 1161 м  - мінімальна 1161 м Гу...

أحمد بن محمد بن السندي معلومات شخصية الميلاد سنة 859  الفسطاط  الوفاة سنة 960 (100–101 سنة)  الفسطاط  الحياة العملية تعلم لدى محمد بن الفضل بن نظيف  المهنة مُحَدِّث،  وعالم مسلم  اللغات العربية  تعديل مصدري - تعديل   أبو الفوارس أحمد بن محمد بن الحسين بن الس...

Kra–Dai language spoken in Myanmar and India Khamti(တဲး)ၵမ်းတီႈ / (တဲး)ၵံးတီႈ(Tai) KhamtiRegionBurma, IndiaEthnicityKhamti peopleNative speakers13,000 (2000–2007)[1]Language familyKra–Dai TaiSouthwesternNorthwesternKhamtiWriting systemBurmese script(Khamti variation, called Lik-Tai)[2]Language codesISO 639-3khtGlottologkham1290ELPKhamti Diorama and wax figures of Khamti people in Jawaharlal Nehru Museum, Itanagar. The Khamti lan...

Filipino TV series or program PositiveGenreDrama RomanceWritten byBenedict MiqueDirected byEnrico S. QuizonStarringMartin Escudero Helga Krapf Felix RocoCountry of originPhilippinesOriginal languageFilipinoNo. of episodes13ProductionExecutive producerErwin Ragos NietoProduction locationsMetro Manila, PhilippinesRunning time30-45 minutesOriginal releaseNetworkTV5ReleaseOctober 17, 2013 (2013-10-17) –January 9, 2014 (2014-01-09) Positive is a Filipino drama series, which w...

Isotope-ratio mass spectrometryMagnetic sector mass spectrometer used in isotope ratio analysis, through thermal ionization.AcronymIRMSClassificationmass spectrometry Isotope-ratio mass spectrometry (IRMS) is a specialization of mass spectrometry, in which mass spectrometric methods are used to measure the relative abundance of isotopes in a given sample.[1][2] This technique has two different applications in the earth and environmental sciences. The analysis of 'stable isotop...

Position in the Church of England St George's Chapel, Windsor The Dean of Windsor is the spiritual head of the canons of St George's Chapel at Windsor Castle, England. The dean chairs meetings of the Chapter of Canons as primus inter pares. The post of Dean of Wolverhampton was assimilated to the deanery of Windsor, around 1480, until 1846.[1] List of deans Late medieval 1348 John de la Chambre 1349 William Mugge 1381 Walter Almaly 1389 Thomas Butiller 1402 Richard Kingston 1419 John ...

Concepts in Judaism and the Jewish people Part of a series onJewish culture Languages Hebrew Modern Ashkenazi Sephardi Mizrahi Yemenite Tiberian Medieval Mishnaic Biblical Samaritan Babylonian Palestinian Judeo-Aramaic Hulaulá Lishana Deni Lishán Didán Barzani Betanure Lishanid Noshan Targum Biblical Talmudic Palestinian Galilean Judeo-Arabic Yahudic Judeo-Baghdadi Judeo-Moroccan Judeo-Tripolitanian Djerbian Yemenite Other Jewish diaspora languages Yiddish Ladino Haketia Tetuani Yevanic Ca...

Wakil Wali Kota KediriLambang Kota Kediri Republik IndonesiaPetahanamasih lowongsejak 15 Februari 2020Masa jabatan5 tahunDibentuk2004Pejabat pertamaBambang EdiantoSitus webwww.kedirikota.go.id Wakil Wali Kota Kediri adalah posisi kedua yang memerintah Kota Kediri di bawah Wali Kota Kediri. Posisi ini pertama kali dibentuk pada tahun 2004. Daftar No Wakil Wali Kota Mulai Jabatan Akhir Jabatan Prd. Ket. Wali Kota 1 Bambang Edianto 2004 2009 1   Drs. H.Achmad Maschut 2 Abdullah Abu Bak...

Kembali kehalaman sebelumnya