โลโก้
ยูเนี่ยนพีเดีย
การสื่อสาร
ดาวน์โหลดได้จาก Google Play
ใหม่! ดาวน์โหลด ยูเนี่ยนพีเดีย บน Android ™ของคุณ!
ติดตั้ง
เร็วกว่าเบราว์เซอร์!
 

ขั้นตอนวิธีของคริสโตไฟด์

ดัชนี ขั้นตอนวิธีของคริสโตไฟด์

ั้นตอนวิธีของคริสโตไฟด์ (Christofides algorithm) ตั้งชื่อตาม นิคอส คริสโตฟิลด์ เป็นขั้นตอนวิธีในการแก้ปัญหาบางกลุ่มของปัญหาการเดินทางของพนักงานขาย ที่มีเส้นเชื่อมถ่วงน้ำหนักเป็นไปตามความไม่เสมอภาคของสามเหลี่ยม ซึ่งได้คำตอบที่มีอัตราส่วนการประมาณ เป็น 1.5 เท่าของคำตอบดีที.

12 ความสัมพันธ์: กราฟ (คณิตศาสตร์)กราฟบริบูรณ์รหัสเทียมระดับขั้นจุดยอดขั้นตอนวิธีขั้นตอนวิธีการประมาณขั้นตอนวิธีของคริสโตไฟด์ต้นไม้แบบทอดข้ามต้นไม้แบบทอดข้ามน้อยสุดเอ็นพีบริบูรณ์เซต (แก้ความกำกวม)

กราฟ (คณิตศาสตร์)

วาดของกราฟระบุชื่อที่มีจุดยอด 6 จุด และเส้นเชื่อม 7 เส้น ในคณิตศาสตร์และวิทยาการคอมพิวเตอร์ กราฟ (Graph) ประกอบไปด้วยเซตของวัตถุที่เรียกว่าจุดยอด (vertex) ซึ่งเชื่อมต่อกันด้วยเส้นเชื่อม (edge) โดยทั่วไปแล้วเรามักวาดรูปแสดงกราฟโดยใช้จุด (แทนจุดยอด) เชื่อมกันด้วยเส้น (แทนเส้นเชื่อม) กราฟเป็นวัตถุพื้นฐานของการศึกษาในวิยุตคณิต หัวข้อทฤษฎีกราฟ เส้นเชื่อมอาจมีทิศทางหรือไม่ก็ได้ ตัวอย่างเช่น สมมุติให้จุดยอดแทนคนและเส้นเชื่อมแทนการจับมือกัน เส้นเชื่อมก็จะเป็นเส้นเชื่อมไม่มีทิศ เพราะการที่ A จับมือ B ก็แปลว่า B จับมือ A อย่างไรก็ตาม สมมุติถ้าจุดยอดแทนคนและเส้นเชื่อมแทนการรู้จัก เส้นเชื่อมก็ต้องเป็นเส้นเชื่อมมีทิศทาง เพราะ A รู้จัก B ไม่จำเป็นว่า B ต้องรู้จัก A หรือนั่นก็คือความสัมพันธ์การรู้จักไม่เป็นความสัมพันธ์สมมาตร จุดยอดอาจจะถูกเรียกว่าโหนด ปม หรือจุด ในขณะที่เส้นเชื่อมอาจถูกเรียกว่าเส้น คำว่า "กราฟ" ถูกใช้ครั้งแรกโดย J.J. Sylvester ในปี..

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และกราฟ (คณิตศาสตร์) · ดูเพิ่มเติม »

กราฟบริบูรณ์

กราฟบริบูรณ์ (complete graph) เป็น กราฟ ที่ทุกคู่ของ จุดยอด ถูกเชื่อมต่อด้วย เส้นเชื่อม เป็น กราฟสม่ำเสมอ ที่มีระดับขั้น n-1 กราฟบริบูรณ์บนจุดยอด n จุด ใช้สัญลักษณ์ K_n, มี n จุดยอด, และ \frac เส้นเชื่อม ไดกราฟบริบูรณ์ (complete digraph) ก็เป็นลักษณะเดียวกับกราฟ ต่างกันที่เส้นเชื่อมแต่ละเส้น จะถูกแทนด้วยเป็นเส้นเชื่อมระบุทิศทาง 2 เส้น ในทิศทางตรงข้ามกัน.

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และกราฟบริบูรณ์ · ดูเพิ่มเติม »

รหัสเทียม

รหัสเทียม (pseudocode) ใช้เป็นภาษากลางในการอธิบายขั้นตอนการทำงานของโปรแกรมและขั้นตอนวิธี การเขียนรหัสเทียมไม่มีหลักเกณฑ์ตายตัว สำคัญเพียงแต่เขียนให้ผู้อ่านเข้าใจ โดยปกติแล้วจะประยุกต์รูปแบบการเขียนและโครงสร้างมาจากภาษาคอมพิวเตอร์ แต่การเขียนรหัสเทียมจะเป็นลักษณะการเขียนคำอธิบายมากกว่าการเขียนเป็นคำสั่งต่างๆ และการเขียนรหัสเทียมนั้นมักจะไม่ใส่ใจในรายละเอียดการเขียนมากนัก เช่น อาจไม่มีขั้นตอนการประกาศตัวแปร เป้าหมายสำคัญของการเขียนรหัสเทียมคือทำลายกำแพงของภาษาลงไป การเขียนรหัสเทียมจึงไม่ใส่ใจในการเขียนไวยากรณ์ให้ถูกต้องตามหลักภาษา แต่จะเป็นไปตามใจของผู้เขียนมากกว่า รหัสเทียมในอีกนัยหนึ่ง ก็คือ ผังงาน (flowchart) ซึ่งนำเสนอการทำงานของโปรแกรม และขั้นตอนวิธีในรูปแบบของแผนภาพ หมวดหมู่:รหัสต้นฉบับ.

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และรหัสเทียม · ดูเพิ่มเติม »

ระดับขั้น

ในคณิตศาสตร์สาขาทฤษฎีกราฟ ระดับขั้น (degree) ของ จุดยอด v ใน กราฟ เป็นจำนวนของ เส้นเชื่อม ซึ่งต่อกับจุดยอด v (สำหรับเส้นเชื่อมที่เป็นห่วง ให้นับ 2 ครั้ง) ดีกรีของจุดยอด v เขียนแทนในทางคณิตศาสตร์ว่า \deg(v).

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และระดับขั้น · ดูเพิ่มเติม »

จุดยอด

อด (vertex) อาจหมายถึง; คณิตศาสตร.

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และจุดยอด · ดูเพิ่มเติม »

ขั้นตอนวิธี

ั้นตอนวิธี หรือ อัลกอริทึม (algorithm) หมายถึงกระบวนการแก้ปัญหาที่สามารถเข้าใจได้ มีลำดับหรือวิธีการในการแก้ไขปัญหาใดปัญหาหนึ่งอย่างเป็นขั้นเป็นตอนและชัดเจน เมื่อนำเข้าอะไร แล้วจะต้องได้ผลลัพธ์เช่นไร ซึ่งแตกต่างจากการแก้ปัญหาแบบสามัญสำนึก หรือฮิวริสติก (heuristic) โดยทั่วไป ขั้นตอนวิธี จะประกอบด้วย วิธีการเป็นขั้นๆ และมีส่วนที่ต้องทำแบบวนซ้ำ (iterate) หรือ เวียนเกิด (recursive) โดยใช้ตรรกะ (logic) และ/หรือ ในการเปรียบเทียบ (comparison) ในขั้นตอนต่างๆ จนกระทั่งเสร็จสิ้นการทำงาน ในการทำงานอย่างเดียวกัน เราอาจจะเลือกขั้นตอนวิธีที่ต่างกันเพื่อแก้ปัญหาได้ โดยที่ผลลัพธ์ที่ได้ในขั้นสุดท้ายจะออกมาเหมือนกันหรือไม่ก็ได้ และจะมีความแตกต่าง ที่จำนวนและชุดคำสั่งที่ใช้ต่างกันซึ่งส่งผลให้ เวลา (time), และขนาดหน่วยความจำ (space) ที่ต้องการต่างกัน หรือเรียกได้อีกอย่างว่ามีความซับซ้อน (complexity) ต่างกัน การนำขั้นตอนวิธีไปใช้ ไม่จำกัดเฉพาะการเขียนโปรแกรมคอมพิวเตอร์ แต่สามารถใช้กับปัญหาอื่น ๆ ได้เช่น การออกแบบวงจรไฟฟ้า, การทำงานเครื่องจักรกล, หรือแม้กระทั่งปัญหาในธรรมชาติ เช่น วิธีของสมองมนุษย์ในการคิดเลข หรือวิธีการขนอาหารของแมลง หนึ่งในขั้นตอนวิธีอย่างง่าย คือ ขั้นตอนวิธีที่ใช้หาจำนวนที่มีค่ามากที่สุดในรายการ (ซึ่งไม่ได้เรียงลำดับไว้) ในการแก้ปัญหานี้ เราจะต้องดูจำนวนทุกจำนวนในรายการ ซึ่งมีขั้นตอนวิธีดังนี้.

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และขั้นตอนวิธี · ดูเพิ่มเติม »

ขั้นตอนวิธีการประมาณ

ั้นตอนวิธีการประมาณ ในศาสตร์ด้านวิทยาการคอมพิวเตอร์นั้น เป็นวิธีการหนึ่งที่ใช้สำหรับจัดการกับปัญหาการหาค่าเหมาะที่สุดประเภทเอ็นพี-ฮาร์ด เนื่องจากเป็นที่เชื่อกันว่าไม่มีขั้นตอนวิธีใดที่มีประสิทธิภาพ (ทำงานได้รวดเร็ว) ที่สามารถแก้ไขปัญหาเอ็นพี-ฮาร์ดได้คำตอบที่เที่ยงตรง จึงได้เกิดความพยายามที่จะหาคำตอบที่อาจจะไม่ถูกต้องที่สุด แต่สามารถหาได้ในเวลาโพลิโนเมียล ข้อแตกต่างของขั้นตอนวิธีประเภทนี้กับฮิวริสติก (ซึ่งมักเป็นการหาคำตอบที่ดีในระดับหนึ่งโดยใช้เวลาไม่มากนัก) ก็คือ ขั้นตอนวิธีประมาณต้องการคำตอบที่สามารถพิสูจน์ได้ว่าดีเพียงใด และพิสูจน์ได้ว่ามีขอบเขตการใช้เวลาไม่เกินเท่าใด ขั้นตอนวิธีในอุดมคติมักจะต้องผิดไปจากคำตอบจริงไม่เกินค่าคงที่ค่าหนึ่ง (เช่น คลาดเคลื่อนไม่เกิน 5%) ปัญหาเอ็นพี-ฮาร์ดมีความหลากหลายอย่างมากในแง่ของการประมาณค่า บางปัญหาสามารถประมาณได้เป็นอัตราส่วนขนาดหนึ่ง (ขั้นตอนวิธีสำหรับประมาณปัญหาเหล่านี้มักเรียกกันว่า แบบแผนการประมาณในเวลาโพลิโนเมียล (polynomial time approximation scheme) หรือ PTAS) ส่วนบางปัญหานั้นก็ไม่สามารถที่จะประมาณได้เลย ตัวอย่างของขั้นตอนวิธีประมาณที่มักกล่าวถึงกัน ได้แก่ ขั้นตอนวิธีสำหรับการคลุมจุดยอดในกราฟ โจทย์คือเลือกจุดยอดจำนวนน้อยที่สุด ให้ทุก ๆ ด้านมีปลายอย่างน้อยข้างหนึ่งถูกเลือก ขั้นตอนวิธีสำหรับประมาณปัญหานี้คือ หาด้านที่ยังไม่ถูกคลุม (ยังไม่มีปลายข้างใดถูกเลือก) มา แล้วเลือกปลายทั้งคู่ของด้านนี้ ขั้นตอนวิธีนี้ให้ผลลัพธ์ที่มีขนาดไม่เกินสองเท่าของคำตอบที่ดีที่สุด วิธีหนึ่งที่ใช้ได้ผลบ่อยในการหาขั้นตอนวิธีประมาณคือ การพิจารณาการผ่อน (relax) กำหนดการเชิงเส้น ใช่ว่าขั้นตอนวิธีประมาณทุกอันจะเหมาะสมกับงานในทางปฏิบัติ ตัวอย่างเช่น คนส่วนใหญ่คงไม่ค่อยประทับใจนัก กับขั้นตอนวิธีที่ช่วยให้พวกเขาจ่ายเงินไม่เกิน 20 เท่าของค่าใช้จ่ายที่ถูกที่สุด และเช่นกัน บางขั้นตอนวิธีอาจมีเวลาในการทำงานที่ไม่ค่อยดีนัก (ถึงแม้จะเป็นเวลาโพลิโนเมียลก็ตาม) เช่น O (n^) ข้อจำกัดอีกอย่างหนึ่งของวิธีการนี้ก็คือ มันใช้ได้กับปัญหาการหาค่าเหมาะที่สุด (optimization problem) เท่านั้น ไม่สามารถใช้กับปัญหาการตัดสินใจ“แท้ ๆ” เช่น ปัญหาความสอดคล้องแบบบูล ได้.

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และขั้นตอนวิธีการประมาณ · ดูเพิ่มเติม »

ขั้นตอนวิธีของคริสโตไฟด์

ั้นตอนวิธีของคริสโตไฟด์ (Christofides algorithm) ตั้งชื่อตาม นิคอส คริสโตฟิลด์ เป็นขั้นตอนวิธีในการแก้ปัญหาบางกลุ่มของปัญหาการเดินทางของพนักงานขาย ที่มีเส้นเชื่อมถ่วงน้ำหนักเป็นไปตามความไม่เสมอภาคของสามเหลี่ยม ซึ่งได้คำตอบที่มีอัตราส่วนการประมาณ เป็น 1.5 เท่าของคำตอบดีที.

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และขั้นตอนวิธีของคริสโตไฟด์ · ดูเพิ่มเติม »

ต้นไม้แบบทอดข้าม

ต้นไม้ทอดข้ามกราฟ ต้นไม้ทอดข้าม หรือ ต้นไม้แผ่ทั่ว หมายถึง กราฟย่อยซึ่งมีลักษณะเป็นต้นไม้และมีทุกจุดยอดของกราฟเป็นจุดยอดทุกจุดของต้นไม้ด้วย การหาต้นไม้ทอดข้ามในกราฟใดๆ โดยเฉพาะต้นไม้ทอดข้ามน้อยสุด เป็นปัญหาที่พบบ่อยในวิทยาการคอมพิวเตอร์รูปแบบหนึ่ง.

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และต้นไม้แบบทอดข้าม · ดูเพิ่มเติม »

ต้นไม้แบบทอดข้ามน้อยสุด

ตัวอย่างการเชื่อมต่อโหนดแต่ละโหนดเข้าหากันด้วยน้ำหนักรวมน้อยที่สุดวิธีหนึ่งจากกราฟถ่วงน้ำหนัก ต้นไม้แผ่ทั่วที่น้อยที่สุด คือ การเชื่อมต่อโหนดทุก ๆ โหนดในกราฟไม่มีทิศทางเข้าหากัน โดยแต่ละแขนของกราฟมีน้ำหนัก และเป้าหมายคือเชื่อมต่อด้วยน้ำหนักรวมน้อยที่สุด หมวดหมู่:ทฤษฎีกราฟ หมวดหมู่:ปัญหาฟังก์ชันพหุนาม หมวดหมู่:ต้นไม้ทอดข้าม.

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และต้นไม้แบบทอดข้ามน้อยสุด · ดูเพิ่มเติม »

เอ็นพีบริบูรณ์

อ็นพี เอ็นพีบริบูรณ์ และเอ็นพีแบบยาก สำหรับทั้งสองกรณีที่พีเท่ากับเอ็นพี และพีไม่เท่ากับเอ็นพี ในทางทฤษฎีความซับซ้อนในการคำนวณ เอ็นพีบริบูรณ์ (NP-complete.) เป็นกลุ่มความซับซ้อนที่ยากที่สุดในเอ็นพี กล่าวคือปัญหาใด ๆ ในกลุ่มปัญหา เอ็นพี สามารถลดรูป (Reduce) มาเป็นปัญหาใน เอ็นพีบริบูรณ์ ได้ แม้ยังไม่ได้รับการพิสูจน์แต่เชื่อกันว่าเป็นกลุ่มปัญหาที่ไม่น่าจะมีขั้นตอนวิธีที่มีประสิทธิภาพใช้แก้ไขได้ ปัญหาในกลุ่มเอ็นพีบริบูรณ์สามารถเปลี่ยนแปลงไปมาเป็นปัญหาอื่นในกลุ่มเดียวกันได้ด้วย polynomial time ดังนั้นการที่มีขั้นตอนวิธีที่มีประสิทธิภาพสำหรับปัญหาใดปัญหาหนึ่งในเอ็นพีบริบูรณ์ ส่งผลให้เราสามารถแก้ปัญหาทั้งหมดในกลุ่มเอ็นพีได้อย่างมีประสิทธิภาพ กลุ่มความซับซ้อนเอ็นพีบริบูรณ์ในบางครั้งถูกเรียกสั้น ๆ ว่า NP-C.

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และเอ็นพีบริบูรณ์ · ดูเพิ่มเติม »

เซต (แก้ความกำกวม)

ซต สามารถหมายถึง.

ใหม่!!: ขั้นตอนวิธีของคริสโตไฟด์และเซต (แก้ความกำกวม) · ดูเพิ่มเติม »

เปลี่ยนเส้นทางที่นี่:

อัลกอริทึมของคริสโตไฟด์

ขาออกขาเข้า
Hey! เราอยู่ใน Facebook ตอนนี้! »