คำถามติดแท็ก constraint-programming

14
การแก้ปัญหา "ใครเป็นเจ้าของ Zebra" โดยใช้โปรแกรม
แก้ไข: ปริศนานี้เรียกอีกอย่างว่า "Einstein's Riddle" ใครเป็นเจ้าของม้าลาย (คุณสามารถลองรุ่นออนไลน์ได้ที่นี่ ) เป็นตัวอย่างของชุดคลาสสิกของปริศนาและฉันเดิมพันที่คนส่วนใหญ่ในกองมากเกินสามารถแก้ได้ด้วยปากกาและกระดาษ แต่โซลูชันแบบเป็นโปรแกรมจะมีลักษณะอย่างไร จากเบาะแสที่ระบุด้านล่าง ... มีบ้านห้าหลัง บ้านแต่ละหลังมีสีที่เป็นเอกลักษณ์ของตัวเอง เจ้าของบ้านทุกคนต่างเชื้อชาติ พวกเขาทั้งหมดมีสัตว์เลี้ยงที่แตกต่างกัน พวกเขาดื่มเครื่องดื่มที่แตกต่างกัน พวกเขาสูบบุหรี่ต่างกัน ชายชาวอังกฤษอาศัยอยู่ในบ้านสีแดง ชาวสวีเดนมีสุนัข ชาวเดนดื่มชา บ้านสีเขียวอยู่ทางซ้ายของบ้านสีขาว พวกเขาดื่มกาแฟในบ้านสีเขียว ผู้ชายที่สูบบุหรี่พอลมอลล์มีนก ในบ้านสีเหลืองพวกเขาสูบบุหรี่ Dunhill ในบ้านหลังกลางพวกเขาดื่มนม ชาวนอร์เวย์อาศัยอยู่ในบ้านหลังแรก ชายที่สูบบุหรี่ Blend อาศัยอยู่ในบ้านข้างบ้านที่มีแมว ในบ้านถัดจากบ้านที่มีม้าพวกเขาสูบบุหรี่ Dunhill ผู้ชายที่สูบบุหรี่ Blue Master ดื่มเบียร์ ชาวเยอรมันสูบบุหรี่ให้เจ้าชาย ชาวนอร์เวย์อาศัยอยู่ติดกับบ้านสีฟ้า พวกเขาดื่มน้ำในบ้านข้างๆบ้านที่สูบเบลนด์ ... ใครเป็นเจ้าของ Zebra?

3
ค้นหาชุดค่าผสมของโพลีโม่ฟรีทั้งหมดภายในพื้นที่เฉพาะด้วยตัวแก้ SAT (Python)
ฉันยังใหม่ต่อโลกของนักแก้ปัญหา SAT และต้องการคำแนะนำเกี่ยวกับปัญหาต่อไปนี้ พิจารณาว่า: ❶ฉันมีเซลล์ที่อยู่ติดกันจำนวน 14 เซลล์ในตาราง 4 * 4 ❷ฉันมี 5 polyominoes (A, B, C, D, E) ขนาด 4, 2, 5, 2 และ 1 poly โพลีโม่โนเหล่านี้ไม่มีค่าเช่นรูปร่างของพวกมันไม่คงที่และสามารถสร้างรูปแบบที่แตกต่างกันได้ ฉันจะคำนวณการรวมกันที่เป็นไปได้ทั้งหมดของ 5 โพลีโม่ฟรีภายในพื้นที่ที่เลือก (เซลล์สีเทา) ด้วยตัวแก้ SAT ได้อย่างไร การยืมทั้งสองจากคำตอบที่ลึกซึ้งของ @ spinkus และเอกสาร OR-tools ฉันสามารถสร้างโค้ดตัวอย่างต่อไปนี้ (ทำงานในสมุดบันทึก Jupyter): from ortools.sat.python import cp_model import numpy as np …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.