definiera begreppet kombinatoriskt (optimerings- eller satisfierbarhets-) problem
förklara begreppet villkor, såsom det används i ett villkorsbaserat modelleringsspråk
modellera ett kombinatoriskt problem i ett villkorsbaserat lösningsteknik-oberoende modelleringsspråk
jämföra (empiriskt) flera modeller, såsom att introducera redundans eller identifiera och ta bort symmetrier
beskriva och jämföra lösningstekniker som kan användas av backends till ett villkorsbaserat modelleringsspråk, t.ex. villkorsprogrammering, lokal sökning, Boolesk satisfierbarhet (modulo teorier) och heltalsprogrammering
välja lämpliga lösningstekniker för ett kombinatoriskt problem och motivera valet
presentera och diskutera material relaterat till kursens innehåll muntligt och skriftligt med en för utbildningsnivån lämplig färdighet
Kursinnehåll
Användningen av verktyg för att lösa ett kombinatorisk problem, genom att först modellera problemet i ett lösningsteknik-oberoende villkorsbaserat modelleringsspråk och sedan köra modellen i en befintlig lösare.
Förutsättningar
120 hp inklusive Baskurs i matematik, Algebra I samt en fortsättningskurs i programmering eller annan kurskombination innehållande grundläggande koncept i algebra, kombinatorik, logik, graf- och mängdteori samt implementering av enkla sökalgoritmer. Engelska 6. (Med en svensk kandidatexamen uppfylls kravet på engelska.)