initial problem files

This commit is contained in:
Kaushik Narayan R 2024-11-15 18:45:42 -07:00
parent 86a476f848
commit 261434ced3
8 changed files with 650 additions and 0 deletions

BIN
Problem Description.pdf Normal file

Binary file not shown.

View File

@ -1,2 +1,3 @@
# house-reconfiguration-asp
Project for CSE579 - Knowledge Representation and Reasoning at ASU

View File

@ -0,0 +1,100 @@
legacyConfig(person(1)).
legacyConfig(person(2)).
legacyConfig(person(3)).
legacyConfig(person(4)).
legacyConfig(person(5)).
legacyConfig(thing(12)).
thingShort(12).
legacyConfig(thing(13)).
thingShort(13).
legacyConfig(thing(14)).
thingShort(14).
legacyConfig(thing(15)).
thingShort(15).
legacyConfig(thing(16)).
thingShort(16).
legacyConfig(thing(17)).
thingShort(17).
legacyConfig(thing(18)).
thingShort(18).
legacyConfig(thing(19)).
thingShort(19).
legacyConfig(thing(20)).
thingShort(20).
legacyConfig(thing(21)).
thingShort(21).
legacyConfig(thing(22)).
thingShort(22).
legacyConfig(thing(23)).
thingShort(23).
legacyConfig(thing(24)).
thingShort(24).
legacyConfig(thing(25)).
thingShort(25).
legacyConfig(thing(26)).
thingShort(26).
legacyConfig(thing(27)).
thingShort(27).
legacyConfig(thing(28)).
thingShort(28).
legacyConfig(thing(6)).
thingShort(6).
legacyConfig(thing(29)).
thingShort(29).
legacyConfig(thing(30)).
thingShort(30).
legacyConfig(thing(7)).
thingShort(7).
legacyConfig(thing(8)).
thingShort(8).
legacyConfig(thing(9)).
thingShort(9).
legacyConfig(thing(10)).
thingShort(10).
legacyConfig(thing(11)).
thingShort(11).
legacyConfig(personTOthing(1,6)).
legacyConfig(personTOthing(1,7)).
legacyConfig(personTOthing(1,8)).
legacyConfig(personTOthing(1,9)).
legacyConfig(personTOthing(1,10)).
legacyConfig(personTOthing(2,11)).
legacyConfig(personTOthing(2,12)).
legacyConfig(personTOthing(2,13)).
legacyConfig(personTOthing(2,14)).
legacyConfig(personTOthing(2,15)).
legacyConfig(personTOthing(3,16)).
legacyConfig(personTOthing(3,17)).
legacyConfig(personTOthing(3,18)).
legacyConfig(personTOthing(3,19)).
legacyConfig(personTOthing(3,20)).
legacyConfig(personTOthing(4,21)).
legacyConfig(personTOthing(4,22)).
legacyConfig(personTOthing(4,23)).
legacyConfig(personTOthing(4,24)).
legacyConfig(personTOthing(4,25)).
legacyConfig(personTOthing(5,26)).
legacyConfig(personTOthing(5,27)).
legacyConfig(personTOthing(5,28)).
legacyConfig(personTOthing(5,29)).
legacyConfig(personTOthing(5,30)).
% domains
cabinetDomainNew(500..524).
roomDomainNew(1000..1024).
% reuse costs
reuseCabinetTOthingCost(0).
reuseRoomTOcabinetCost(0).
reusePersonTOroomCost(0).
reuseCabinetAsHighCost(3).
reuseCabinetAsSmallCost(0).
reuseRoomCost(0).
% remove costs
removeCabinetTOthingCost(2).
removeRoomTOcabinetCost(2).
removePersonTOroomCost(2).
removeCabinetCost(2).
removeRoomCost(2).
% create costs
cabinetHighCost(100).
cabinetSmallCost(1).
roomCost(5).

View File

@ -0,0 +1,24 @@
legacyConfig(person(1)).
legacyConfig(person(2)).
legacyConfig(thing(3)).
legacyConfig(thing(4)).
legacyConfig(thing(5)).
legacyConfig(thing(6)).
legacyConfig(thing(7)).
legacyConfig(thing(8)).
legacyConfig(personTOthing(1,3)).
legacyConfig(personTOthing(1,4)).
legacyConfig(personTOthing(1,5)).
legacyConfig(personTOthing(1,6)).
legacyConfig(personTOthing(1,7)).
legacyConfig(personTOthing(2,8)).
cabinetDomainNew(9..14).
roomDomainNew(15..20).
cabinetHighCost(1).
cabinetSmallCost(1).
roomCost(1).
% example solution:
%cabinetTOthing(9,3). cabinetTOthing(9,4). cabinetTOthing(9,5). cabinetTOthing(9,6). cabinetTOthing(9,7). cabinetTOthing(10,8). roomTOcabinet(15,9). roomTOcabinet(16,10).

View File

@ -0,0 +1,60 @@
legacyConfig(person(1)).
legacyConfig(person(2)).
legacyConfig(thing(3)).
legacyConfig(thing(4)).
legacyConfig(thing(5)).
legacyConfig(thing(6)).
legacyConfig(thing(7)).
legacyConfig(thing(8)).
legacyConfig(thing(21)).
legacyConfig(personTOthing(1,3)).
legacyConfig(personTOthing(1,4)).
legacyConfig(personTOthing(1,5)).
legacyConfig(personTOthing(1,6)).
legacyConfig(personTOthing(1,7)).
legacyConfig(personTOthing(1,21)).
legacyConfig(personTOthing(2,8)).
legacyConfig(room(15)).
legacyConfig(roomTOcabinet(15,9)).
legacyConfig(room(16)).
legacyConfig(roomTOcabinet(16,10)).
legacyConfig(cabinet(9)).
legacyConfig(cabinetTOthing(9,3)).
legacyConfig(cabinetTOthing(9,4)).
legacyConfig(cabinetTOthing(9,5)).
legacyConfig(cabinetTOthing(9,6)).
legacyConfig(cabinetTOthing(9,7)).
legacyConfig(cabinet(10)).
legacyConfig(cabinetTOthing(10,8)).
thingLong(3).
thingLong(8).
thingLong(21).
cabinetDomainNew(22..23).
roomDomainNew(17..20).
% reuse costs
reuseCabinetTOthingCost(0).
reuseRoomTOcabinetCost(0).
reusePersonTOroomCost(0).
reuseCabinetAsHighCost(3).
reuseCabinetAsSmallCost(0).
reuseRoomCost(0).
% remove costs
removeCabinetTOthingCost(2).
removeRoomTOcabinetCost(2).
removePersonTOroomCost(2).
removeCabinetCost(2).
removeRoomCost(2).
% create costs
cabinetHighCost(100).
cabinetSmallCost(10).
roomCost(5).
% example solution:
%cabinet(9). cabinet(10). cabinet(22). room(15). room(16). cabinetTOthing(9,3). cabinetTOthing(9,4). cabinetTOthing(9,6). cabinetTOthing(9,7). cabinetTOthing(10,8). cabinetTOthing(9,21). cabinetTOthing(22,5). roomTOcabinet(15,9). roomTOcabinet(16,10). roomTOcabinet(15,22). cabinetHigh(9). cabinetHigh(10). cabinetSmall(22).

View File

@ -0,0 +1,156 @@
legacyConfig(person(1)).
legacyConfig(person(2)).
legacyConfig(room(3)).
legacyConfig(roomTOcabinet(3,5)).
legacyConfig(roomTOcabinet(3,6)).
legacyConfig(roomTOcabinet(3,7)).
legacyConfig(room(4)).
legacyConfig(roomTOcabinet(4,8)).
legacyConfig(roomTOcabinet(4,9)).
legacyConfig(roomTOcabinet(4,10)).
legacyConfig(thing(11)).
thingShort(11).
legacyConfig(thing(12)).
thingShort(12).
legacyConfig(thing(13)).
thingShort(13).
legacyConfig(thing(14)).
thingShort(14).
legacyConfig(thing(15)).
thingLong(15).
legacyConfig(thing(16)).
thingShort(16).
legacyConfig(thing(17)).
thingShort(17).
legacyConfig(thing(18)).
thingShort(18).
legacyConfig(thing(19)).
thingShort(19).
legacyConfig(thing(20)).
thingLong(20).
legacyConfig(thing(21)).
thingShort(21).
legacyConfig(thing(22)).
thingShort(22).
legacyConfig(thing(23)).
thingLong(23).
legacyConfig(thing(24)).
thingLong(24).
legacyConfig(thing(25)).
thingLong(25).
legacyConfig(thing(26)).
thingShort(26).
legacyConfig(thing(27)).
thingShort(27).
legacyConfig(thing(28)).
thingShort(28).
legacyConfig(thing(29)).
thingShort(29).
legacyConfig(thing(30)).
thingLong(30).
legacyConfig(thing(31)).
thingShort(31).
legacyConfig(thing(32)).
thingShort(32).
legacyConfig(thing(33)).
thingShort(33).
legacyConfig(thing(34)).
thingShort(34).
legacyConfig(thing(35)).
thingLong(35).
legacyConfig(thing(36)).
thingShort(36).
legacyConfig(thing(37)).
thingShort(37).
legacyConfig(thing(38)).
thingLong(38).
legacyConfig(thing(39)).
thingLong(39).
legacyConfig(thing(40)).
thingLong(40).
legacyConfig(cabinet(9)).
legacyConfig(cabinetTOthing(9,31)).
legacyConfig(cabinetTOthing(9,32)).
legacyConfig(cabinetTOthing(9,33)).
legacyConfig(cabinetTOthing(9,34)).
legacyConfig(cabinetTOthing(9,35)).
legacyConfig(cabinet(10)).
legacyConfig(cabinetTOthing(10,36)).
legacyConfig(cabinetTOthing(10,37)).
legacyConfig(cabinetTOthing(10,38)).
legacyConfig(cabinetTOthing(10,39)).
legacyConfig(cabinetTOthing(10,40)).
legacyConfig(cabinet(5)).
legacyConfig(cabinetTOthing(5,11)).
legacyConfig(cabinetTOthing(5,12)).
legacyConfig(cabinetTOthing(5,13)).
legacyConfig(cabinetTOthing(5,14)).
legacyConfig(cabinetTOthing(5,15)).
legacyConfig(cabinet(6)).
legacyConfig(cabinetTOthing(6,16)).
legacyConfig(cabinetTOthing(6,17)).
legacyConfig(cabinetTOthing(6,18)).
legacyConfig(cabinetTOthing(6,19)).
legacyConfig(cabinetTOthing(6,20)).
legacyConfig(cabinet(7)).
legacyConfig(cabinetTOthing(7,21)).
legacyConfig(cabinetTOthing(7,22)).
legacyConfig(cabinetTOthing(7,23)).
legacyConfig(cabinetTOthing(7,24)).
legacyConfig(cabinetTOthing(7,25)).
legacyConfig(cabinet(8)).
legacyConfig(cabinetTOthing(8,26)).
legacyConfig(cabinetTOthing(8,27)).
legacyConfig(cabinetTOthing(8,28)).
legacyConfig(cabinetTOthing(8,29)).
legacyConfig(cabinetTOthing(8,30)).
legacyConfig(personTOthing(1,11)).
legacyConfig(personTOthing(1,12)).
legacyConfig(personTOthing(1,13)).
legacyConfig(personTOthing(1,14)).
legacyConfig(personTOthing(1,15)).
legacyConfig(personTOthing(1,16)).
legacyConfig(personTOthing(1,17)).
legacyConfig(personTOthing(1,18)).
legacyConfig(personTOthing(1,19)).
legacyConfig(personTOthing(1,20)).
legacyConfig(personTOthing(1,21)).
legacyConfig(personTOthing(1,22)).
legacyConfig(personTOthing(1,23)).
legacyConfig(personTOthing(1,24)).
legacyConfig(personTOthing(1,25)).
legacyConfig(personTOthing(2,26)).
legacyConfig(personTOthing(2,27)).
legacyConfig(personTOthing(2,28)).
legacyConfig(personTOthing(2,29)).
legacyConfig(personTOthing(2,30)).
legacyConfig(personTOthing(2,31)).
legacyConfig(personTOthing(2,32)).
legacyConfig(personTOthing(2,33)).
legacyConfig(personTOthing(2,34)).
legacyConfig(personTOthing(2,35)).
legacyConfig(personTOthing(2,36)).
legacyConfig(personTOthing(2,37)).
legacyConfig(personTOthing(2,38)).
legacyConfig(personTOthing(2,39)).
legacyConfig(personTOthing(2,40)).
% domains
cabinetDomainNew(500..523).
roomDomainNew(1000..1027).
% reuse costs
reuseCabinetTOthingCost(0).
reuseRoomTOcabinetCost(0).
reusePersonTOroomCost(0).
reuseCabinetAsHighCost(3).
reuseCabinetAsSmallCost(0).
reuseRoomCost(0).
% remove costs
removeCabinetTOthingCost(2).
removeRoomTOcabinetCost(2).
removePersonTOroomCost(2).
removeCabinetCost(2).
removeRoomCost(2).
% create costs
cabinetHighCost(100).
cabinetSmallCost(1).
roomCost(5).

View File

@ -0,0 +1,132 @@
legacyConfig(person(1)).
legacyConfig(person(2)).
legacyConfig(room(3)).
legacyConfig(roomTOcabinet(3,5)).
legacyConfig(roomTOcabinet(3,6)).
legacyConfig(roomTOcabinet(3,7)).
legacyConfig(room(4)).
legacyConfig(roomTOcabinet(4,8)).
legacyConfig(roomTOcabinet(4,9)).
legacyConfig(roomTOcabinet(4,10)).
legacyConfig(thing(11)).
thingShort(11).
legacyConfig(thing(12)).
thingShort(12).
legacyConfig(thing(13)).
thingShort(13).
legacyConfig(thing(14)).
thingLong(14).
legacyConfig(thing(15)).
thingLong(15).
legacyConfig(thing(16)).
thingShort(16).
legacyConfig(thing(17)).
thingShort(17).
legacyConfig(thing(18)).
thingLong(18).
legacyConfig(thing(19)).
thingLong(19).
legacyConfig(thing(20)).
thingShort(20).
legacyConfig(thing(21)).
thingLong(21).
legacyConfig(thing(22)).
thingLong(22).
legacyConfig(thing(23)).
thingShort(23).
legacyConfig(thing(24)).
thingShort(24).
legacyConfig(thing(25)).
thingShort(25).
legacyConfig(thing(26)).
thingLong(26).
legacyConfig(thing(27)).
thingLong(27).
legacyConfig(thing(28)).
thingShort(28).
legacyConfig(thing(29)).
thingShort(29).
legacyConfig(thing(30)).
thingLong(30).
legacyConfig(thing(31)).
thingLong(31).
legacyConfig(thing(32)).
thingShort(32).
legacyConfig(thing(33)).
thingLong(33).
legacyConfig(thing(34)).
thingLong(34).
legacyConfig(cabinet(9)).
legacyConfig(cabinetTOthing(9,28)).
legacyConfig(cabinetTOthing(9,29)).
legacyConfig(cabinetTOthing(9,30)).
legacyConfig(cabinetTOthing(9,31)).
legacyConfig(cabinet(10)).
legacyConfig(cabinetTOthing(10,32)).
legacyConfig(cabinetTOthing(10,33)).
legacyConfig(cabinetTOthing(10,34)).
legacyConfig(cabinet(5)).
legacyConfig(cabinetTOthing(5,11)).
legacyConfig(cabinetTOthing(5,12)).
legacyConfig(cabinetTOthing(5,13)).
legacyConfig(cabinetTOthing(5,14)).
legacyConfig(cabinetTOthing(5,15)).
legacyConfig(cabinet(6)).
legacyConfig(cabinetTOthing(6,16)).
legacyConfig(cabinetTOthing(6,17)).
legacyConfig(cabinetTOthing(6,18)).
legacyConfig(cabinetTOthing(6,19)).
legacyConfig(cabinet(7)).
legacyConfig(cabinetTOthing(7,20)).
legacyConfig(cabinetTOthing(7,21)).
legacyConfig(cabinetTOthing(7,22)).
legacyConfig(cabinet(8)).
legacyConfig(cabinetTOthing(8,23)).
legacyConfig(cabinetTOthing(8,24)).
legacyConfig(cabinetTOthing(8,25)).
legacyConfig(cabinetTOthing(8,26)).
legacyConfig(cabinetTOthing(8,27)).
legacyConfig(personTOthing(1,11)).
legacyConfig(personTOthing(1,12)).
legacyConfig(personTOthing(1,13)).
legacyConfig(personTOthing(1,14)).
legacyConfig(personTOthing(1,15)).
legacyConfig(personTOthing(1,16)).
legacyConfig(personTOthing(1,17)).
legacyConfig(personTOthing(1,18)).
legacyConfig(personTOthing(1,19)).
legacyConfig(personTOthing(1,20)).
legacyConfig(personTOthing(1,21)).
legacyConfig(personTOthing(1,22)).
legacyConfig(personTOthing(2,23)).
legacyConfig(personTOthing(2,24)).
legacyConfig(personTOthing(2,25)).
legacyConfig(personTOthing(2,26)).
legacyConfig(personTOthing(2,27)).
legacyConfig(personTOthing(2,28)).
legacyConfig(personTOthing(2,29)).
legacyConfig(personTOthing(2,30)).
legacyConfig(personTOthing(2,31)).
legacyConfig(personTOthing(2,32)).
legacyConfig(personTOthing(2,33)).
legacyConfig(personTOthing(2,34)).
% domains
cabinetDomainNew(500..517).
roomDomainNew(1000..1021).
% reuse costs
reuseCabinetTOthingCost(0).
reuseRoomTOcabinetCost(0).
reusePersonTOroomCost(0).
reuseCabinetAsHighCost(3).
reuseCabinetAsSmallCost(0).
reuseRoomCost(0).
% remove costs
removeCabinetTOthingCost(2).
removeRoomTOcabinetCost(2).
removePersonTOroomCost(2).
removeCabinetCost(2).
removeRoomCost(2).
% create costs
cabinetHighCost(100).
cabinetSmallCost(1).
roomCost(5).

View File

@ -0,0 +1,177 @@
legacyConfig(person(1)).
legacyConfig(room(2)).
legacyConfig(roomTOcabinet(2,4)).
legacyConfig(roomTOcabinet(2,10)).
legacyConfig(roomTOcabinet(2,16)).
legacyConfig(roomTOcabinet(2,22)).
legacyConfig(room(3)).
legacyConfig(roomTOcabinet(3,28)).
legacyConfig(roomTOcabinet(3,34)).
legacyConfig(roomTOcabinet(3,40)).
legacyConfig(thing(9)).
thingShort(9).
legacyConfig(thing(11)).
thingShort(11).
legacyConfig(thing(12)).
thingShort(12).
legacyConfig(thing(13)).
thingShort(13).
legacyConfig(thing(14)).
thingShort(14).
legacyConfig(thing(15)).
thingShort(15).
legacyConfig(thing(17)).
thingShort(17).
legacyConfig(thing(18)).
thingShort(18).
legacyConfig(thing(19)).
thingShort(19).
legacyConfig(thing(20)).
thingShort(20).
legacyConfig(thing(21)).
thingShort(21).
legacyConfig(thing(23)).
thingLong(23).
legacyConfig(thing(24)).
thingShort(24).
legacyConfig(thing(25)).
thingShort(25).
legacyConfig(thing(26)).
thingShort(26).
legacyConfig(thing(27)).
thingShort(27).
legacyConfig(thing(29)).
thingShort(29).
legacyConfig(thing(30)).
thingShort(30).
legacyConfig(thing(31)).
thingShort(31).
legacyConfig(thing(32)).
thingShort(32).
legacyConfig(thing(33)).
thingShort(33).
legacyConfig(thing(35)).
thingShort(35).
legacyConfig(thing(36)).
thingShort(36).
legacyConfig(thing(37)).
thingShort(37).
legacyConfig(thing(38)).
thingShort(38).
legacyConfig(thing(39)).
thingShort(39).
legacyConfig(thing(41)).
thingShort(41).
legacyConfig(thing(42)).
thingShort(42).
legacyConfig(thing(43)).
thingShort(43).
legacyConfig(thing(44)).
thingShort(44).
legacyConfig(thing(45)).
thingShort(45).
legacyConfig(thing(5)).
thingShort(5).
legacyConfig(thing(6)).
thingShort(6).
legacyConfig(thing(7)).
thingShort(7).
legacyConfig(thing(8)).
thingShort(8).
legacyConfig(cabinet(10)).
legacyConfig(cabinetTOthing(10,11)).
legacyConfig(cabinetTOthing(10,12)).
legacyConfig(cabinetTOthing(10,13)).
legacyConfig(cabinetTOthing(10,14)).
legacyConfig(cabinetTOthing(10,15)).
legacyConfig(cabinet(16)).
legacyConfig(cabinetTOthing(16,17)).
legacyConfig(cabinetTOthing(16,18)).
legacyConfig(cabinetTOthing(16,19)).
legacyConfig(cabinetTOthing(16,20)).
legacyConfig(cabinetTOthing(16,21)).
legacyConfig(cabinet(22)).
legacyConfig(cabinetTOthing(22,23)).
legacyConfig(cabinetTOthing(22,24)).
legacyConfig(cabinetTOthing(22,25)).
legacyConfig(cabinetTOthing(22,26)).
legacyConfig(cabinetTOthing(22,27)).
legacyConfig(cabinet(28)).
legacyConfig(cabinetTOthing(28,29)).
legacyConfig(cabinetTOthing(28,30)).
legacyConfig(cabinetTOthing(28,31)).
legacyConfig(cabinetTOthing(28,32)).
legacyConfig(cabinetTOthing(28,33)).
legacyConfig(cabinet(34)).
legacyConfig(cabinetTOthing(34,35)).
legacyConfig(cabinetTOthing(34,36)).
legacyConfig(cabinetTOthing(34,37)).
legacyConfig(cabinetTOthing(34,38)).
legacyConfig(cabinetTOthing(34,39)).
legacyConfig(cabinet(40)).
legacyConfig(cabinetTOthing(40,41)).
legacyConfig(cabinetTOthing(40,42)).
legacyConfig(cabinetTOthing(40,43)).
legacyConfig(cabinetTOthing(40,44)).
legacyConfig(cabinetTOthing(40,45)).
legacyConfig(cabinet(4)).
legacyConfig(cabinetTOthing(4,5)).
legacyConfig(cabinetTOthing(4,6)).
legacyConfig(cabinetTOthing(4,7)).
legacyConfig(cabinetTOthing(4,8)).
legacyConfig(cabinetTOthing(4,9)).
legacyConfig(personTOthing(1,5)).
legacyConfig(personTOthing(1,6)).
legacyConfig(personTOthing(1,7)).
legacyConfig(personTOthing(1,8)).
legacyConfig(personTOthing(1,9)).
legacyConfig(personTOthing(1,11)).
legacyConfig(personTOthing(1,12)).
legacyConfig(personTOthing(1,13)).
legacyConfig(personTOthing(1,14)).
legacyConfig(personTOthing(1,15)).
legacyConfig(personTOthing(1,17)).
legacyConfig(personTOthing(1,18)).
legacyConfig(personTOthing(1,19)).
legacyConfig(personTOthing(1,20)).
legacyConfig(personTOthing(1,21)).
legacyConfig(personTOthing(1,23)).
legacyConfig(personTOthing(1,24)).
legacyConfig(personTOthing(1,25)).
legacyConfig(personTOthing(1,26)).
legacyConfig(personTOthing(1,27)).
legacyConfig(personTOthing(1,29)).
legacyConfig(personTOthing(1,30)).
legacyConfig(personTOthing(1,31)).
legacyConfig(personTOthing(1,32)).
legacyConfig(personTOthing(1,33)).
legacyConfig(personTOthing(1,35)).
legacyConfig(personTOthing(1,36)).
legacyConfig(personTOthing(1,37)).
legacyConfig(personTOthing(1,38)).
legacyConfig(personTOthing(1,39)).
legacyConfig(personTOthing(1,41)).
legacyConfig(personTOthing(1,42)).
legacyConfig(personTOthing(1,43)).
legacyConfig(personTOthing(1,44)).
legacyConfig(personTOthing(1,45)).
% domains
cabinetDomainNew(500..527).
roomDomainNew(1000..1032).
% reuse costs
reuseCabinetTOthingCost(0).
reuseRoomTOcabinetCost(0).
reusePersonTOroomCost(0).
reuseCabinetAsHighCost(3).
reuseCabinetAsSmallCost(0).
reuseRoomCost(0).
% remove costs
removeCabinetTOthingCost(2).
removeRoomTOcabinetCost(2).
removePersonTOroomCost(2).
removeCabinetCost(2).
removeRoomCost(2).
% create costs
cabinetHighCost(10).
cabinetSmallCost(5).
roomCost(5).