Java Web Service link :
This web service is temporarily unavailable until July 8th 2016, if you need an earlier access you can contact Maxime Chassaing at this address: maxime.chassaing[@]gmail[dot]com
http://orws2.isima.fr:80/WebServiceJobShop/WebServiceJobShop?WSDL
ORWSjobshop.WebServiceJobShopClient ORWS = new ORWSjobshop.WebServiceJobShopClient();
string FileName = "c:\\la03.txt";
byte[] datafile;
FileStream fileStream = new FileStream(FileName, FileMode.Open);
datafile = new byte[(int)fileStream.Length];
fileStream.Read(datafile, 0, (int)fileStream.Length);
int ERROR=0;
string STRERROR="";
ORWSjobshop.data data_instance = ORWS.getData(datafile,ref ERROR,ref STRERROR);
//step4.1 generate a random VB
ORWSjobshop.bierwithVector BV = ORWS.getRandomBierwithVector(data_instance,(long)-1);
//step4.2 evaluate the vector to obtain a solution
ORWSjobshop.solution Solution_instance = ORWS.evaluate(data_instance, BV);
//step4.3 call a localsearch to improve a solution
ORWSjobshop.solution Solution_instance2 = ORWS.localSearch(data_instance, Solution_instance, 10000, ref ERROR);
t.AppendText("Solution makespan : ");
t.AppendText (Solution_instance2.makespan + "\n");
for (int i =0 ; idata_instance.nbJobs;i++ )
{
t.AppendText("Job : "+i+"\n");
for (int j = 0 ; jdata_instance.nbMach;j++){
t.AppendText( " " + Solution_instance2.startDate[i*data_instance.nbMach+j]);
}
t.AppendText("\n");
}
byte[] datafileSVG = ORWS.solutionToSvgFile(data_instance, Solution_instance2);
//step6.2 save on Disk
string nameFileOut = "C:\\out.svg";
FileStream fileStream2 = new FileStream(nameFileOut, FileMode.Create);
fileStream2.Write(datafileSVG, 0, datafileSVG.Length);
private void button1_Click(object sender, EventArgs e)
{
//Step 1 : Connection
ORWSjobshop.WebServiceJobShopClient ORWS = new ORWSjobshop.WebServiceJobShopClient();
//step 2 Read File LaO1.txt and convert it to array of byte
string FileName = "c:\\la03.txt";
byte[] datafile;
FileStream fileStream = new FileStream(FileName, FileMode.Open);
datafile = new byte[(int)fileStream.Length];
fileStream.Read(datafile, 0, (int)fileStream.Length);
//step3 Transform file into data problem
int ERROR=0;
string STRERROR="";
ORWSjobshop.data data_instance = ORWS.getData(datafile,ref ERROR,ref STRERROR);
//step4 Creat a Bierwirth Vector and evaluate it
//step4.1 generate a random VB
ORWSjobshop.bierwithVector BV = ORWS.getRandomBierwithVector(data_instance,(long)-1);
//step4.2 evaluate the vector to obtain a solution
ORWSjobshop.solution Solution_instance = ORWS.evaluate(data_instance, BV);
//step4.3 call a localsearch to improve a solution
ORWSjobshop.solution Solution_instance2 = ORWS.localSearch(data_instance, Solution_instance, 10000, ref ERROR);
//step5 display a solution
t.AppendText("Solution makespan : ");
t.AppendText (Solution_instance2.makespan + "\n");
for (int i =0 ; idata_instance.nbJobs;i++ )
{
t.AppendText("Job : "+i+"\n");
for (int j = 0 ; jdata_instance.nbMach;j++){
t.AppendText( " " + Solution_instance2.startDate[i*data_instance.nbMach+j]);
}
t.AppendText("\n");
}
//step6 save solution on disk
//step6.1 transform solution in SVGfile
byte[] datafileSVG = ORWS.solutionToSvgFile(data_instance, Solution_instance2);
//step6.2 save on Disk
string nameFileOut = "C:\\out.svg";
FileStream fileStream2 = new FileStream(nameFileOut, FileMode.Create);
fileStream2.Write(datafileSVG, 0, datafileSVG.Length);
}
webservice.WebServiceJobShop_Service service = new webservice.WebServiceJobShop_Service();
webservice.WebServiceJobShop port = service.getWebServiceJobShopPort();
File f = new File ("La03.txt");
FileInputStream ips = new FileInputStream(f.getName());
byte[] in = new byte[ips.available()];
ips.read(in);
ips.close();
HolderInteger error = new HolderInteger();
HolderString stringError = new HolderString();
Data data_instance = port.getData(in, error, stringError);
BierwithVector bv = port.getRandomBierwithVector(data_instance, -1);
Solution sol = port.evaluate(data_instance, bv);
Solution betterSol = port.localSearch(data_instance, sol, 200, error);
jTextArea1.append("Makespan : " + betterSol.getMakespan() + "\n");
for (int i = 0 ; i data_instance.getNbOps() ; i++)
{
jTextArea1.append("Start date operation "+ i + " : " + betterSol.getStartDate().get(i) + "\n");
}
byte[] svgFile = port.solutionToSvgFile(data_instance, betterSol);
File imagefile = new File("solution.svg");
FileOutputStream fileStream2 = new FileOutputStream(imagefile,false);
fileStream2.write(svgFile);
fileStream2.close();
