mirror of
https://github.com/ANL-CEEESA/UnitCommitment.jl.git
synced 2025-12-06 16:28:51 -06:00
Implement multiple formulations
This commit is contained in:
@@ -6,6 +6,9 @@ SHELL := /bin/bash
|
||||
JULIA := julia --project=. --sysimage ../build/sysimage.so
|
||||
TIMESTAMP := $(shell date "+%Y-%m-%d %H:%M")
|
||||
SRC_FILES := $(wildcard ../src/*.jl)
|
||||
DEST := .
|
||||
FORMULATION := tight
|
||||
results_dir := results_$(FORMULATION)
|
||||
|
||||
INSTANCES_PGLIB := \
|
||||
pglib-uc/ca/2014-09-01_reserves_0 \
|
||||
@@ -87,11 +90,205 @@ INSTANCES_MATPOWER := \
|
||||
matpower/case6515rte/2017-02-01 \
|
||||
matpower/case6515rte/2017-08-01
|
||||
|
||||
SAMPLES := 1 2 3
|
||||
SOLUTIONS_MATPOWER := $(foreach s,$(SAMPLES),$(addprefix results/,$(addsuffix .$(s).sol.json,$(INSTANCES_MATPOWER))))
|
||||
SOLUTIONS_PGLIB := $(foreach s,$(SAMPLES),$(addprefix results/,$(addsuffix .$(s).sol.json,$(INSTANCES_PGLIB))))
|
||||
INSTANCES_INFORMS1 := \
|
||||
matpower/case1888rte/2017-01-01 \
|
||||
matpower/case1888rte/2017-01-02 \
|
||||
matpower/case1888rte/2017-01-03 \
|
||||
matpower/case1888rte/2017-01-04 \
|
||||
matpower/case1888rte/2017-01-05 \
|
||||
matpower/case1888rte/2017-01-06 \
|
||||
matpower/case1888rte/2017-01-07 \
|
||||
matpower/case1888rte/2017-01-08 \
|
||||
matpower/case1888rte/2017-01-09 \
|
||||
matpower/case1888rte/2017-01-10 \
|
||||
matpower/case1888rte/2017-01-11 \
|
||||
matpower/case1888rte/2017-01-12 \
|
||||
matpower/case1888rte/2017-01-13 \
|
||||
matpower/case1888rte/2017-01-14 \
|
||||
matpower/case1888rte/2017-01-15 \
|
||||
matpower/case1888rte/2017-01-16 \
|
||||
matpower/case1888rte/2017-01-17 \
|
||||
matpower/case1888rte/2017-01-18 \
|
||||
matpower/case1888rte/2017-01-19 \
|
||||
matpower/case1888rte/2017-01-20 \
|
||||
matpower/case1888rte/2017-01-21 \
|
||||
matpower/case1888rte/2017-01-22 \
|
||||
matpower/case1888rte/2017-01-23 \
|
||||
matpower/case1888rte/2017-01-24 \
|
||||
matpower/case1888rte/2017-01-25 \
|
||||
matpower/case1888rte/2017-01-26 \
|
||||
matpower/case1888rte/2017-01-27 \
|
||||
matpower/case1888rte/2017-01-28 \
|
||||
matpower/case1888rte/2017-01-29 \
|
||||
matpower/case1888rte/2017-01-30 \
|
||||
matpower/case1888rte/2017-01-31 \
|
||||
matpower/case1888rte/2017-02-01 \
|
||||
matpower/case1888rte/2017-02-02 \
|
||||
matpower/case1888rte/2017-02-03 \
|
||||
matpower/case1888rte/2017-02-04 \
|
||||
matpower/case1888rte/2017-02-05 \
|
||||
matpower/case1888rte/2017-02-06 \
|
||||
matpower/case1888rte/2017-02-07 \
|
||||
matpower/case1888rte/2017-02-08 \
|
||||
matpower/case1888rte/2017-02-09 \
|
||||
matpower/case1888rte/2017-02-10 \
|
||||
matpower/case1888rte/2017-02-11 \
|
||||
matpower/case1888rte/2017-02-12 \
|
||||
matpower/case1888rte/2017-02-13 \
|
||||
matpower/case1888rte/2017-02-14 \
|
||||
matpower/case1888rte/2017-02-15 \
|
||||
matpower/case1888rte/2017-02-16 \
|
||||
matpower/case1888rte/2017-02-17 \
|
||||
matpower/case1888rte/2017-02-18 \
|
||||
matpower/case1888rte/2017-02-19 \
|
||||
matpower/case1888rte/2017-02-20 \
|
||||
matpower/case1888rte/2017-02-21 \
|
||||
matpower/case1888rte/2017-02-22 \
|
||||
matpower/case1888rte/2017-02-23 \
|
||||
matpower/case1888rte/2017-02-24 \
|
||||
matpower/case1888rte/2017-02-25 \
|
||||
matpower/case1888rte/2017-02-26 \
|
||||
matpower/case1888rte/2017-02-27 \
|
||||
matpower/case1888rte/2017-02-28 \
|
||||
matpower/case1888rte/2017-03-01
|
||||
|
||||
.PHONY: tables save small large clean-mps matpower pglib
|
||||
INSTANCES_INFORMS2 := \
|
||||
matpower/case3375wp/2017-01-01 \
|
||||
matpower/case3375wp/2017-01-02 \
|
||||
matpower/case3375wp/2017-01-03 \
|
||||
matpower/case3375wp/2017-01-04 \
|
||||
matpower/case3375wp/2017-01-05 \
|
||||
matpower/case3375wp/2017-01-06 \
|
||||
matpower/case3375wp/2017-01-07 \
|
||||
matpower/case3375wp/2017-01-08 \
|
||||
matpower/case3375wp/2017-01-09 \
|
||||
matpower/case3375wp/2017-01-10 \
|
||||
matpower/case3375wp/2017-01-11 \
|
||||
matpower/case3375wp/2017-01-12 \
|
||||
matpower/case3375wp/2017-01-13 \
|
||||
matpower/case3375wp/2017-01-14 \
|
||||
matpower/case3375wp/2017-01-15 \
|
||||
matpower/case3375wp/2017-01-16 \
|
||||
matpower/case3375wp/2017-01-17 \
|
||||
matpower/case3375wp/2017-01-18 \
|
||||
matpower/case3375wp/2017-01-19 \
|
||||
matpower/case3375wp/2017-01-20 \
|
||||
matpower/case3375wp/2017-01-21 \
|
||||
matpower/case3375wp/2017-01-22 \
|
||||
matpower/case3375wp/2017-01-23 \
|
||||
matpower/case3375wp/2017-01-24 \
|
||||
matpower/case3375wp/2017-01-25 \
|
||||
matpower/case3375wp/2017-01-26 \
|
||||
matpower/case3375wp/2017-01-27 \
|
||||
matpower/case3375wp/2017-01-28 \
|
||||
matpower/case3375wp/2017-01-29 \
|
||||
matpower/case3375wp/2017-01-30 \
|
||||
matpower/case3375wp/2017-01-31 \
|
||||
matpower/case3375wp/2017-02-01 \
|
||||
matpower/case3375wp/2017-02-02 \
|
||||
matpower/case3375wp/2017-02-03 \
|
||||
matpower/case3375wp/2017-02-04 \
|
||||
matpower/case3375wp/2017-02-05 \
|
||||
matpower/case3375wp/2017-02-06 \
|
||||
matpower/case3375wp/2017-02-07 \
|
||||
matpower/case3375wp/2017-02-08 \
|
||||
matpower/case3375wp/2017-02-09 \
|
||||
matpower/case3375wp/2017-02-10 \
|
||||
matpower/case3375wp/2017-02-11 \
|
||||
matpower/case3375wp/2017-02-12 \
|
||||
matpower/case3375wp/2017-02-13 \
|
||||
matpower/case3375wp/2017-02-14 \
|
||||
matpower/case3375wp/2017-02-15 \
|
||||
matpower/case3375wp/2017-02-16 \
|
||||
matpower/case3375wp/2017-02-17 \
|
||||
matpower/case3375wp/2017-02-18 \
|
||||
matpower/case3375wp/2017-02-19 \
|
||||
matpower/case3375wp/2017-02-20 \
|
||||
matpower/case3375wp/2017-02-21 \
|
||||
matpower/case3375wp/2017-02-22 \
|
||||
matpower/case3375wp/2017-02-23 \
|
||||
matpower/case3375wp/2017-02-24 \
|
||||
matpower/case3375wp/2017-02-25 \
|
||||
matpower/case3375wp/2017-02-26 \
|
||||
matpower/case3375wp/2017-02-27 \
|
||||
matpower/case3375wp/2017-02-28 \
|
||||
matpower/case3375wp/2017-03-01
|
||||
|
||||
INSTANCES_INFORMS3 := \
|
||||
matpower/case6468rte/2017-01-01 \
|
||||
matpower/case6468rte/2017-01-02 \
|
||||
matpower/case6468rte/2017-01-03 \
|
||||
matpower/case6468rte/2017-01-04 \
|
||||
matpower/case6468rte/2017-01-05 \
|
||||
matpower/case6468rte/2017-01-06 \
|
||||
matpower/case6468rte/2017-01-07 \
|
||||
matpower/case6468rte/2017-01-08 \
|
||||
matpower/case6468rte/2017-01-09 \
|
||||
matpower/case6468rte/2017-01-10 \
|
||||
matpower/case6468rte/2017-01-11 \
|
||||
matpower/case6468rte/2017-01-12 \
|
||||
matpower/case6468rte/2017-01-13 \
|
||||
matpower/case6468rte/2017-01-14 \
|
||||
matpower/case6468rte/2017-01-15 \
|
||||
matpower/case6468rte/2017-01-16 \
|
||||
matpower/case6468rte/2017-01-17 \
|
||||
matpower/case6468rte/2017-01-18 \
|
||||
matpower/case6468rte/2017-01-19 \
|
||||
matpower/case6468rte/2017-01-20 \
|
||||
matpower/case6468rte/2017-01-21 \
|
||||
matpower/case6468rte/2017-01-22 \
|
||||
matpower/case6468rte/2017-01-23 \
|
||||
matpower/case6468rte/2017-01-24 \
|
||||
matpower/case6468rte/2017-01-25 \
|
||||
matpower/case6468rte/2017-01-26 \
|
||||
matpower/case6468rte/2017-01-27 \
|
||||
matpower/case6468rte/2017-01-28 \
|
||||
matpower/case6468rte/2017-01-29 \
|
||||
matpower/case6468rte/2017-01-30 \
|
||||
matpower/case6468rte/2017-01-31 \
|
||||
matpower/case6468rte/2017-02-01 \
|
||||
matpower/case6468rte/2017-02-02 \
|
||||
matpower/case6468rte/2017-02-03 \
|
||||
matpower/case6468rte/2017-02-04 \
|
||||
matpower/case6468rte/2017-02-05 \
|
||||
matpower/case6468rte/2017-02-06 \
|
||||
matpower/case6468rte/2017-02-07 \
|
||||
matpower/case6468rte/2017-02-08 \
|
||||
matpower/case6468rte/2017-02-09 \
|
||||
matpower/case6468rte/2017-02-10 \
|
||||
matpower/case6468rte/2017-02-11 \
|
||||
matpower/case6468rte/2017-02-12 \
|
||||
matpower/case6468rte/2017-02-13 \
|
||||
matpower/case6468rte/2017-02-14 \
|
||||
matpower/case6468rte/2017-02-15 \
|
||||
matpower/case6468rte/2017-02-16 \
|
||||
matpower/case6468rte/2017-02-17 \
|
||||
matpower/case6468rte/2017-02-18 \
|
||||
matpower/case6468rte/2017-02-19 \
|
||||
matpower/case6468rte/2017-02-20 \
|
||||
matpower/case6468rte/2017-02-21 \
|
||||
matpower/case6468rte/2017-02-22 \
|
||||
matpower/case6468rte/2017-02-23 \
|
||||
matpower/case6468rte/2017-02-24 \
|
||||
matpower/case6468rte/2017-02-25 \
|
||||
matpower/case6468rte/2017-02-26 \
|
||||
matpower/case6468rte/2017-02-27 \
|
||||
matpower/case6468rte/2017-02-28 \
|
||||
matpower/case6468rte/2017-03-01
|
||||
|
||||
INSTANCES_TEST := \
|
||||
test/case14
|
||||
|
||||
#SAMPLES := 1 2 3
|
||||
SAMPLES := 1
|
||||
SOLUTIONS_MATPOWER := $(foreach s,$(SAMPLES),$(addprefix $(results_dir)/,$(addsuffix .$(s).sol.json,$(INSTANCES_MATPOWER))))
|
||||
SOLUTIONS_PGLIB := $(foreach s,$(SAMPLES),$(addprefix $(results_dir)/,$(addsuffix .$(s).sol.json,$(INSTANCES_PGLIB))))
|
||||
SOLUTIONS_INFORMS1 := $(foreach s,$(SAMPLES),$(addprefix $(results_dir)/,$(addsuffix .$(s).sol.json,$(INSTANCES_INFORMS1))))
|
||||
SOLUTIONS_INFORMS2 := $(foreach s,$(SAMPLES),$(addprefix $(results_dir)/,$(addsuffix .$(s).sol.json,$(INSTANCES_INFORMS2))))
|
||||
SOLUTIONS_INFORMS3 := $(foreach s,$(SAMPLES),$(addprefix $(results_dir)/,$(addsuffix .$(s).sol.json,$(INSTANCES_INFORMS3))))
|
||||
SOLUTIONS_TEST := $(foreach s,$(SAMPLES),$(addprefix $(results_dir)/,$(addsuffix .$(s).sol.json,$(INSTANCES_TEST))))
|
||||
|
||||
.PHONY: tables save small large clean-mps matpower pglib informs1 informs2 informs3 test
|
||||
|
||||
all: matpower pglib
|
||||
|
||||
@@ -99,23 +296,47 @@ matpower: $(SOLUTIONS_MATPOWER)
|
||||
|
||||
pglib: $(SOLUTIONS_PGLIB)
|
||||
|
||||
informs1: $(SOLUTIONS_INFORMS1)
|
||||
informs2: $(SOLUTIONS_INFORMS2)
|
||||
informs3: $(SOLUTIONS_INFORMS3)
|
||||
|
||||
test: $(SOLUTIONS_TEST)
|
||||
|
||||
clean:
|
||||
@rm -rf tables/benchmark* tables/compare* results
|
||||
@rm -rf tables/benchmark* tables/compare* $(results_dir)
|
||||
|
||||
clean-mps:
|
||||
@rm -fv results/*/*/*.mps.gz
|
||||
@rm -fv $(results_dir)/*/*/*.mps.gz
|
||||
|
||||
clean-sol:
|
||||
@rm -rf results/*/*/*.sol.*
|
||||
@rm -rf $(results_dir)/*/*/*.sol.*
|
||||
|
||||
save:
|
||||
mkdir -p "runs/$(TIMESTAMP)"
|
||||
rsync -avP results tables "runs/$(TIMESTAMP)/"
|
||||
rsync -avP $(results_dir) tables "runs/$(TIMESTAMP)/"
|
||||
|
||||
results/%.sol.json: run.jl
|
||||
@echo "run $*"
|
||||
@mkdir -p $(dir results/$*)
|
||||
@$(JULIA) run.jl $* 2>&1 | cat > results/$*.log
|
||||
@mkdir -p $(dir $(DEST)/$(results_dir)/$*)
|
||||
@$(JULIA) run.jl $* default $(DEST)/$(results_dir) 2>&1 | cat > $(DEST)/$(results_dir)/$*.log
|
||||
@echo "run $* [done]"
|
||||
|
||||
results_tight/%.sol.json: run.jl
|
||||
@echo "run $*"
|
||||
@mkdir -p $(dir $(DEST)/$(results_dir)/$*)
|
||||
@$(JULIA) run.jl $* tight $(DEST)/$(results_dir) 2>&1 | cat > $(DEST)/$(results_dir)/$*.log
|
||||
@echo "run $* [done]"
|
||||
|
||||
results_default/%.sol.json: run.jl
|
||||
@echo "run $*"
|
||||
@mkdir -p $(dir $(DEST)/$(results_dir)/$*)
|
||||
@$(JULIA) run.jl $* default $(DEST)/$(results_dir) 2>&1 | cat > $(DEST)/$(results_dir)/$*.log
|
||||
@echo "run $* [done]"
|
||||
|
||||
results_sparse/%.sol.json: run.jl
|
||||
@echo "run $*"
|
||||
@mkdir -p $(dir $(DEST)/$(results_dir)/$*)
|
||||
@$(JULIA) run.jl $* sparse $(DEST)/$(results_dir) 2>&1 | cat > $(DEST)/$(results_dir)/$*.log
|
||||
@echo "run $* [done]"
|
||||
|
||||
tables:
|
||||
|
||||
Reference in New Issue
Block a user