danahoppe / constraintprocessing Goto Github PK
View Code? Open in Web Editor NEWBasic Constraint Processing System
Basic Constraint Processing System
---------------------- Project ---------------------- Dana Hoppe CSCE 421 ---------------------- Description ---------------------- This program implements A mulititude of consistency algorithms for enforcing CSP constraints. Specifically added for this assignment were tools for MAC3, MAC2001, and dom/wdeg. Files: CSP.java - main class for calling Parser and Solver methods. Solver.java - class with AC1 and AC3 functions in addition to supporting functions such as CHECK, REVISE, and SUPPORTED. BT_Solver.java - Backtrack Search CBJ_Solver.java - conflict directed backjumping FC_Solver - Forward Checking FC_CBJ_Solver - Constraint backjumping with forward check MAC_DOM_WDEG - implements MAC and dom/wdeg ordering FileWriter - writes data to excel file Arc.java - data structure for storing variable pairs for constraint network abscon(folder)- library including all files neccesary for abscon parsing. MyParser.java - using abscon-parsor to parse csp data structures from .xml files and wrap them in .java data structures. Variable.java - class with data structure containing variable name, related constraints, domain, and neighbors. ExtensionConstraint.java - class with data structure including constraint name, related variables, allowable/forbidden tuples, and defintion of relation. IntensionConstraint.java - class with data structure including constrain name, related variables, predicate functions, and function type. csp.jar - .jar file for running the program. makeFile.mf - file for creating csp.jar. runProgram.sh - instructions for webgrader on how to run the program ---------------------- Command-Line ---------------------- -make : generates csp.jar when executed in directory containing makeFile.mf -java -jar csp.jar : executes csp.jar -java -Xmx256m -jar csp.jar -s <SEARCH TYPE> -u <ORDERINGHEURISTIC> -f <FILENAME>.xml : executes program for given .xml file ---------------------- References ---------------------- Utilized ArrayList sorting methods using Comparator found at: https://beginnersbook.com/2013/12/java-arraylist-of-object-sort-example-comparable-and-comparator/
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.