Пример #1
0
def first_fit_dec(list_items, max_size):
	""" Returns list of bins with input items inside. """
	# Sort list in decreasing order
	list_items.sort(reverse=True)

	# Apply first-fit algorith
	return(first_fit(list_items, max_size))
Пример #2
0
def first_fit_dec(list_items, max_size):
    """ Returns list of bins with input items inside. """
    # Sort list in decreasing order
    list_items.sort(reverse=True)

    # Apply first-fit algorith
    return (first_fit(list_items, max_size))
Пример #3
0
 state = sim.simxUnpackFloats(data)
 state = np.array(state)
 state = state.reshape((120, -1))
 r, dim = sim.simxGetStringSignal(clientID, 'DIM',
                                  sim.simx_opmode_blocking)
 dim = sim.simxUnpackFloats(dim)
 if (boxes_generated == 0):
     boxes_generated = int(dim[3])
 dim = dim[0:3]
 #print(dim)
 sim.simxSetStringSignal(clientID, 'STATE', '',
                         sim.simx_opmode_oneshot)
 if heuristics == 'walle':
     pos = np.array(walle(state, dim))
 if heuristics == 'first_fit':
     pos = np.array(first_fit(state, dim))
 if heuristics == 'floor_building':
     pos = np.array(floor_building(state, dim))
 # pos=np.array(column_building(state,dim))
 send_pos = sim.simxPackInts(pos)
 #print(send_pos)
 if dim[0] < 10 or dim[1] < 10 or dim[2] < 10:
     sim.simxStopSimulation(clientID, sim.simx_opmode_oneshot)
     # sim.simxpauseSimulation(clientID,sim.simx_opmode_oneshot)
     break
 sim.simxSetStringSignal(clientID, 'POSFOUND', send_pos,
                         sim.simx_opmode_oneshot)
 if (pos[0] > 0):
     boxesVolumesSum += dim[0] * dim[1] * dim[2]
     num += 1
     patience = 0
Пример #4
0
# Examples
from first_fit import first_fit
from first_fit_dec import first_fit_dec

items = [8, 16, 12, 8, 45, 18, 30, 7, 10, 14, 9, 9, 52, 88]
bin_height = 60

# First-fit Algorithm
print(first_fit(items, bin_height))

# First-fit Decreasing Algorithm
print(first_fit_dec(items, bin_height))
Пример #5
0
import csv
import numpy as np
from first_fit import first_fit

inputFile = open("bpp_instances.txt", "r")
for line in inputFile:
    data = np.array(line.split(","), dtype=np.int32)
    print(first_fit(data[1:], data[0]))
inputFile.close()